Skip to content

Commit

Permalink
cmd/compile: add a flag to print the source line for generated rules
Browse files Browse the repository at this point in the history
When working on rulegen, I often find myself
searching the rules files to find the source of
generated code. Add a flag to make that easier.

The flag needs to be off by default,
so that adding a single rule doesn't cause a massive diff.

Change-Id: I5a6f09129dc6fceef7c9cd1ad7eee24f3880ba91
Reviewed-on: https://go-review.googlesource.com/c/go/+/213700
Run-TryBot: Josh Bleecher Snyder <[email protected]>
Reviewed-by: Keith Randall <[email protected]>
  • Loading branch information
josharian committed Feb 20, 2020
1 parent 49f8d45 commit 24fa159
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion src/cmd/compile/internal/ssa/gen/rulegen.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,10 @@ import (

// If multiple rules match, the first one in file order is selected.

var genLog = flag.Bool("log", false, "generate code that logs; for debugging only")
var (
genLog = flag.Bool("log", false, "generate code that logs; for debugging only")
addLine = flag.Bool("line", false, "add line number comment to generated rules; for debugging only")
)

type Rule struct {
rule string
Expand Down Expand Up @@ -598,6 +601,9 @@ func fprint(w io.Writer, n Node) {
fprint(w, n)
}
case *RuleRewrite:
if *addLine {
fmt.Fprintf(w, "// %s\n", n.loc)
}
fmt.Fprintf(w, "// match: %s\n", n.match)
if n.cond != "" {
fmt.Fprintf(w, "// cond: %s\n", n.cond)
Expand Down

0 comments on commit 24fa159

Please sign in to comment.