aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/rewriteARM64.go
diff options
context:
space:
mode:
authorCherry Mui <cherryyz@google.com>2022-02-11 14:58:56 +0000
committerCherry Mui <cherryyz@google.com>2022-02-11 14:58:56 +0000
commite90b835f3071f1eb71810a3631b792f23df59f24 (patch)
treedc5a1c1620f14dbc051402095af9c024bc12a202 /src/cmd/compile/internal/ssa/rewriteARM64.go
parentbb93480d009322886df6f5185c988d6d21fdc2c8 (diff)
parent0a6cf8706fdd0fe1bd26e4d1ecbcd41650bf5e6c (diff)
downloadgo-e90b835f3071f1eb71810a3631b792f23df59f24.tar.gz
go-e90b835f3071f1eb71810a3631b792f23df59f24.zip
[dev.boringcrypto.go1.16] all: merge go1.16.14 into dev.boringcrypto.go1.16
Change-Id: I186a567b3e76df7ecf1842634a3851eab7c9dfce
Diffstat (limited to 'src/cmd/compile/internal/ssa/rewriteARM64.go')
-rw-r--r--src/cmd/compile/internal/ssa/rewriteARM64.go160
1 files changed, 0 insertions, 160 deletions
diff --git a/src/cmd/compile/internal/ssa/rewriteARM64.go b/src/cmd/compile/internal/ssa/rewriteARM64.go
index e61d89992d..5afccf163d 100644
--- a/src/cmd/compile/internal/ssa/rewriteARM64.go
+++ b/src/cmd/compile/internal/ssa/rewriteARM64.go
@@ -26214,46 +26214,6 @@ func rewriteBlockARM64(b *Block) bool {
}
break
}
- // match: (GE (CMP x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (GE (CMN x y) yes no)
- for b.Controls[0].Op == OpARM64CMP {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64GE, v0)
- return true
- }
- // match: (GE (CMPW x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (GE (CMNW x y) yes no)
- for b.Controls[0].Op == OpARM64CMPW {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64GE, v0)
- return true
- }
// match: (GE (CMPconst [0] z:(MADD a x y)) yes no)
// cond: z.Uses==1
// result: (GEnoov (CMN a (MUL <x.Type> x y)) yes no)
@@ -26650,46 +26610,6 @@ func rewriteBlockARM64(b *Block) bool {
}
break
}
- // match: (GT (CMP x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (GT (CMN x y) yes no)
- for b.Controls[0].Op == OpARM64CMP {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64GT, v0)
- return true
- }
- // match: (GT (CMPW x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (GT (CMNW x y) yes no)
- for b.Controls[0].Op == OpARM64CMPW {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64GT, v0)
- return true
- }
// match: (GT (CMPconst [0] z:(MADD a x y)) yes no)
// cond: z.Uses==1
// result: (GTnoov (CMN a (MUL <x.Type> x y)) yes no)
@@ -27182,46 +27102,6 @@ func rewriteBlockARM64(b *Block) bool {
}
break
}
- // match: (LE (CMP x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (LE (CMN x y) yes no)
- for b.Controls[0].Op == OpARM64CMP {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64LE, v0)
- return true
- }
- // match: (LE (CMPW x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (LE (CMNW x y) yes no)
- for b.Controls[0].Op == OpARM64CMPW {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64LE, v0)
- return true
- }
// match: (LE (CMPconst [0] z:(MADD a x y)) yes no)
// cond: z.Uses==1
// result: (LEnoov (CMN a (MUL <x.Type> x y)) yes no)
@@ -27594,46 +27474,6 @@ func rewriteBlockARM64(b *Block) bool {
}
break
}
- // match: (LT (CMP x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (LT (CMN x y) yes no)
- for b.Controls[0].Op == OpARM64CMP {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64LT, v0)
- return true
- }
- // match: (LT (CMPW x z:(NEG y)) yes no)
- // cond: z.Uses == 1
- // result: (LT (CMNW x y) yes no)
- for b.Controls[0].Op == OpARM64CMPW {
- v_0 := b.Controls[0]
- _ = v_0.Args[1]
- x := v_0.Args[0]
- z := v_0.Args[1]
- if z.Op != OpARM64NEG {
- break
- }
- y := z.Args[0]
- if !(z.Uses == 1) {
- break
- }
- v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg2(x, y)
- b.resetWithControl(BlockARM64LT, v0)
- return true
- }
// match: (LT (CMPconst [0] z:(MADD a x y)) yes no)
// cond: z.Uses==1
// result: (LTnoov (CMN a (MUL <x.Type> x y)) yes no)