diff options
author | Alberto Donizetti <alb.donizetti@gmail.com> | 2020-04-30 11:04:02 +0200 |
---|---|---|
committer | Alberto Donizetti <alb.donizetti@gmail.com> | 2020-04-30 17:30:54 +0000 |
commit | 666c9aedd40853e2fc84bbd743b13cb267007ac2 (patch) | |
tree | 43bc80fcf6ac0fa490a69c770ec58996f45032de /src/cmd/compile/internal/ssa/gen/ARM64Ops.go | |
parent | 9ed0fb42e34ff64dd6447572d8bc9dbb05ddb552 (diff) | |
download | go-666c9aedd40853e2fc84bbd743b13cb267007ac2.tar.gz go-666c9aedd40853e2fc84bbd743b13cb267007ac2.zip |
cmd/compile: switch to typed auxint for arm64 TBZ/TBNZ block
This CL changes the arm64 TBZ/TBNZ block from using Aux to using
a (typed) AuxInt. The corresponding rules have also been changed
to be typed.
Passes
GOARCH=arm64 gotip build -toolexec 'toolstash -cmp' -a std
Change-Id: I98d0cd2a791948f1db13259c17fb1b9b2807a043
Reviewed-on: https://go-review.googlesource.com/c/go/+/230839
Run-TryBot: Alberto Donizetti <alb.donizetti@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/ssa/gen/ARM64Ops.go')
-rw-r--r-- | src/cmd/compile/internal/ssa/gen/ARM64Ops.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/cmd/compile/internal/ssa/gen/ARM64Ops.go b/src/cmd/compile/internal/ssa/gen/ARM64Ops.go index c74d5590e7..964a25b052 100644 --- a/src/cmd/compile/internal/ssa/gen/ARM64Ops.go +++ b/src/cmd/compile/internal/ssa/gen/ARM64Ops.go @@ -691,12 +691,12 @@ func init() { {name: "ULE", controls: 1}, {name: "UGT", controls: 1}, {name: "UGE", controls: 1}, - {name: "Z", controls: 1}, // Control == 0 (take a register instead of flags) - {name: "NZ", controls: 1}, // Control != 0 - {name: "ZW", controls: 1}, // Control == 0, 32-bit - {name: "NZW", controls: 1}, // Control != 0, 32-bit - {name: "TBZ", controls: 1}, // Control & (1 << Aux.(int64)) == 0 - {name: "TBNZ", controls: 1}, // Control & (1 << Aux.(int64)) != 0 + {name: "Z", controls: 1}, // Control == 0 (take a register instead of flags) + {name: "NZ", controls: 1}, // Control != 0 + {name: "ZW", controls: 1}, // Control == 0, 32-bit + {name: "NZW", controls: 1}, // Control != 0, 32-bit + {name: "TBZ", controls: 1, aux: "Int64"}, // Control & (1 << AuxInt) == 0 + {name: "TBNZ", controls: 1, aux: "Int64"}, // Control & (1 << AuxInt) != 0 {name: "FLT", controls: 1}, {name: "FLE", controls: 1}, {name: "FGT", controls: 1}, |