]> Cypherpunks repositories - gostls13.git/commitdiff
[dev.ssa] cmd/compile: MOVBconst might also clobber flags
authorKeith Randall <khr@golang.org>
Mon, 29 Feb 2016 19:10:08 +0000 (11:10 -0800)
committerKeith Randall <khr@golang.org>
Mon, 29 Feb 2016 19:39:15 +0000 (19:39 +0000)
It gets rewritten to an xor by the linker also.

Change-Id: Iae35130325d41bd1a09b7e971190cae6f4e17fac
Reviewed-on: https://go-review.googlesource.com/20058
Reviewed-by: David Chase <drchase@google.com>
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/cmd/compile/internal/gc/ssa.go

index b46016f1f2ffd99abe5d3ca6edbb5767e1245a21..e81ca14571cf6df4569cda048c7f08f1435ea376 100644 (file)
@@ -4649,7 +4649,7 @@ func (s *genState) markMoves(b *ssa.Block) {
        }
        for i := len(b.Values) - 1; i >= 0; i-- {
                v := b.Values[i]
-               if flive && (v.Op == ssa.OpAMD64MOVWconst || v.Op == ssa.OpAMD64MOVLconst || v.Op == ssa.OpAMD64MOVQconst) {
+               if flive && (v.Op == ssa.OpAMD64MOVBconst || v.Op == ssa.OpAMD64MOVWconst || v.Op == ssa.OpAMD64MOVLconst || v.Op == ssa.OpAMD64MOVQconst) {
                        // The "mark" is any non-nil Aux value.
                        v.Aux = v
                }