diff options
author | Josh Bleecher Snyder <josharian@gmail.com> | 2020-04-23 22:27:23 -0700 |
---|---|---|
committer | Josh Bleecher Snyder <josharian@gmail.com> | 2020-04-24 23:06:48 +0000 |
commit | 47b5efad5dba1c275128cb74b18a3f059fafd2e2 (patch) | |
tree | a30456c0b340b89970698a2a04950972b92754f9 /src/cmd/compile/internal/ssa/rewritegeneric.go | |
parent | b6f6259f2d46afaaffe62f6e42b3577cb03a44f4 (diff) | |
download | go-47b5efad5dba1c275128cb74b18a3f059fafd2e2.tar.gz go-47b5efad5dba1c275128cb74b18a3f059fafd2e2.zip |
cmd/compile: convert nilcheck elim rules to typed aux
Passes toolstash-check.
Change-Id: Ic7efb0e4778844366f581c6310a1a2f3bfc1868a
Reviewed-on: https://go-review.googlesource.com/c/go/+/229686
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/ssa/rewritegeneric.go')
-rw-r--r-- | src/cmd/compile/internal/ssa/rewritegeneric.go | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/cmd/compile/internal/ssa/rewritegeneric.go b/src/cmd/compile/internal/ssa/rewritegeneric.go index cbfb17d9d2..8afb743549 100644 --- a/src/cmd/compile/internal/ssa/rewritegeneric.go +++ b/src/cmd/compile/internal/ssa/rewritegeneric.go @@ -16009,7 +16009,7 @@ func rewriteValuegeneric_OpNilCheck(v *Value) bool { return true } // match: (NilCheck (Load (OffPtr [c] (SP)) (StaticCall {sym} _)) _) - // cond: isSameSym(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize() + config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check") + // cond: symNamed(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize() + config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check") // result: (Invalid) for { if v_0.Op != OpLoad { @@ -16020,7 +16020,7 @@ func rewriteValuegeneric_OpNilCheck(v *Value) bool { if v_0_0.Op != OpOffPtr { break } - c := v_0_0.AuxInt + c := auxIntToInt64(v_0_0.AuxInt) v_0_0_0 := v_0_0.Args[0] if v_0_0_0.Op != OpSP { break @@ -16029,15 +16029,15 @@ func rewriteValuegeneric_OpNilCheck(v *Value) bool { if v_0_1.Op != OpStaticCall { break } - sym := v_0_1.Aux - if !(isSameSym(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check")) { + sym := auxToSym(v_0_1.Aux) + if !(symNamed(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check")) { break } v.reset(OpInvalid) return true } // match: (NilCheck (OffPtr (Load (OffPtr [c] (SP)) (StaticCall {sym} _))) _) - // cond: isSameSym(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize() + config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check") + // cond: symNamed(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize() + config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check") // result: (Invalid) for { if v_0.Op != OpOffPtr { @@ -16052,7 +16052,7 @@ func rewriteValuegeneric_OpNilCheck(v *Value) bool { if v_0_0_0.Op != OpOffPtr { break } - c := v_0_0_0.AuxInt + c := auxIntToInt64(v_0_0_0.AuxInt) v_0_0_0_0 := v_0_0_0.Args[0] if v_0_0_0_0.Op != OpSP { break @@ -16061,8 +16061,8 @@ func rewriteValuegeneric_OpNilCheck(v *Value) bool { if v_0_0_1.Op != OpStaticCall { break } - sym := v_0_0_1.Aux - if !(isSameSym(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check")) { + sym := auxToSym(v_0_0_1.Aux) + if !(symNamed(sym, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize && warnRule(fe.Debug_checknil(), v, "removed nil check")) { break } v.reset(OpInvalid) @@ -21606,7 +21606,7 @@ func rewriteValuegeneric_OpStore(v *Value) bool { if v_0_0.Op != OpOffPtr { break } - c := v_0_0.AuxInt + c := auxIntToInt64(v_0_0.AuxInt) v_0_0_0 := v_0_0.Args[0] if v_0_0_0.Op != OpSP { break @@ -21634,7 +21634,7 @@ func rewriteValuegeneric_OpStore(v *Value) bool { if v_0_0_0.Op != OpOffPtr { break } - c := v_0_0_0.AuxInt + c := auxIntToInt64(v_0_0_0.AuxInt) v_0_0_0_0 := v_0_0_0.Args[0] if v_0_0_0_0.Op != OpSP { break @@ -24091,7 +24091,7 @@ func rewriteValuegeneric_OpZero(v *Value) bool { if v_0_0.Op != OpOffPtr { break } - c := v_0_0.AuxInt + c := auxIntToInt64(v_0_0.AuxInt) v_0_0_0 := v_0_0.Args[0] if v_0_0_0.Op != OpSP || mem != v_1 || !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize) { break |