Skip to content

cmd/compile/internal/ssa: rewritegeneric.go out of sync with generic.rules #18885

@mundaym

Description

@mundaym

cfd17f5 modified rewritegeneric.go but did not fully update generic.rules. Running go run *.go in src/cmd/compile/internal/ssa/gen now gives the following diff:

diff --git a/src/cmd/compile/internal/ssa/rewritegeneric.go b/src/cmd/compile/internal/ssa/rewritegeneric.go
index 0fde363..98c221c 100644
--- a/src/cmd/compile/internal/ssa/rewritegeneric.go
+++ b/src/cmd/compile/internal/ssa/rewritegeneric.go
@@ -6526,7 +6526,7 @@ func rewriteValuegeneric_OpNilCheck(v *Value, config *Config) bool {
                return true
        }
        // match: (NilCheck (Load (OffPtr [c] (SP)) mem) mem)
-       // cond: mem.Op == OpStaticCall         && isSameSym(mem.Aux, "runtime.newobject")      && c == config.ctxt.FixedFrameSize() + config.RegSize   && warnRule(config.Debug_checknil() && v.Pos.Line() > 1, v, "removed nil check")
+       // cond: mem.Op == OpStaticCall         && isSameSym(mem.Aux, "runtime.newobject")      && c == config.ctxt.FixedFrameSize() + config.RegSize   && warnRule(config.Debug_checknil() && int(v.Pos) > 1, v, "removed nil check")
        // result: (Invalid)
        for {
                v_0 := v.Args[0]
@@ -6546,14 +6546,14 @@ func rewriteValuegeneric_OpNilCheck(v *Value, config *Config) bool {
                if mem != v.Args[1] {
                        break
                }
-               if !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(config.Debug_checknil() && v.Pos.Line() > 1, v, "removed nil check")) {
+               if !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(config.Debug_checknil() && int(v.Pos) > 1, v, "removed nil check")) {
                        break
                }
                v.reset(OpInvalid)
                return true
        }
        // match: (NilCheck (OffPtr (Load (OffPtr [c] (SP)) mem)) mem)
-       // cond: mem.Op == OpStaticCall         && isSameSym(mem.Aux, "runtime.newobject")      && c == config.ctxt.FixedFrameSize() + config.RegSize   && warnRule(config.Debug_checknil() && v.Pos.Line() > 1, v, "removed nil check")
+       // cond: mem.Op == OpStaticCall         && isSameSym(mem.Aux, "runtime.newobject")      && c == config.ctxt.FixedFrameSize() + config.RegSize   && warnRule(config.Debug_checknil() && int(v.Pos) > 1, v, "removed nil check")
        // result: (Invalid)
        for {
                v_0 := v.Args[0]
@@ -6577,7 +6577,7 @@ func rewriteValuegeneric_OpNilCheck(v *Value, config *Config) bool {
                if mem != v.Args[1] {
                        break
                }
-               if !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(config.Debug_checknil() && v.Pos.Line() > 1, v, "removed nil check")) {
+               if !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(config.Debug_checknil() && int(v.Pos) > 1, v, "removed nil check")) {
                        break
                }
                v.reset(OpInvalid)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions