aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/rewriteARM64.go
diff options
context:
space:
mode:
authorJosh Bleecher Snyder <josharian@gmail.com>2020-02-26 11:29:34 -0800
committerJosh Bleecher Snyder <josharian@gmail.com>2020-03-01 15:27:58 +0000
commit7913f7dfcf2c281b99c6ddd278aa851de47ada9d (patch)
tree8a34c42a6e16c5c7864d49030ed474dddff2ff82 /src/cmd/compile/internal/ssa/rewriteARM64.go
parenta908e09a34fff3c47efab69857d27bf6965b948a (diff)
downloadgo-7913f7dfcf2c281b99c6ddd278aa851de47ada9d.tar.gz
go-7913f7dfcf2c281b99c6ddd278aa851de47ada9d.zip
cmd/compile: add specialized AddArgN functions for rewrite rules
This shrinks the compiler without impacting performance. (The performance-sensitive part of rewrite rules is the non-match case.) Passes toolstash-check -all. Executable size: file before after Δ % compile 20356168 20163960 -192208 -0.944% total 115599376 115407168 -192208 -0.166% Text size: file before after Δ % cmd/compile/internal/ssa.s 3928309 3778774 -149535 -3.807% total 18862943 18713408 -149535 -0.793% Memory allocated compiling package SSA: SSA 12.7M ± 0% 12.5M ± 0% -1.74% (p=0.008 n=5+5) Compiler speed impact: name old time/op new time/op delta Template 211ms ± 1% 211ms ± 2% ~ (p=0.832 n=49+49) Unicode 82.8ms ± 2% 83.2ms ± 2% +0.44% (p=0.022 n=46+49) GoTypes 726ms ± 1% 728ms ± 2% ~ (p=0.076 n=46+48) Compiler 3.39s ± 2% 3.40s ± 2% ~ (p=0.633 n=48+49) SSA 7.71s ± 1% 7.65s ± 1% -0.78% (p=0.000 n=45+44) Flate 134ms ± 1% 134ms ± 1% ~ (p=0.195 n=50+49) GoParser 167ms ± 1% 167ms ± 1% ~ (p=0.390 n=47+47) Reflect 453ms ± 3% 452ms ± 2% ~ (p=0.492 n=48+49) Tar 184ms ± 3% 184ms ± 2% ~ (p=0.862 n=50+48) XML 248ms ± 2% 248ms ± 2% ~ (p=0.096 n=49+47) [Geo mean] 415ms 415ms -0.03% name old user-time/op new user-time/op delta Template 273ms ± 1% 273ms ± 2% ~ (p=0.711 n=48+48) Unicode 117ms ± 6% 117ms ± 5% ~ (p=0.633 n=50+50) GoTypes 972ms ± 2% 974ms ± 1% +0.29% (p=0.016 n=47+49) Compiler 4.46s ± 6% 4.51s ± 6% ~ (p=0.093 n=50+50) SSA 10.4s ± 1% 10.3s ± 2% -0.94% (p=0.000 n=45+50) Flate 166ms ± 2% 167ms ± 2% ~ (p=0.148 n=49+48) GoParser 202ms ± 1% 202ms ± 2% -0.28% (p=0.014 n=47+49) Reflect 594ms ± 2% 594ms ± 2% ~ (p=0.717 n=48+49) Tar 224ms ± 2% 224ms ± 2% ~ (p=0.805 n=50+49) XML 311ms ± 1% 310ms ± 1% ~ (p=0.177 n=49+48) [Geo mean] 537ms 537ms +0.01% Change-Id: I562b9f349b34ddcff01771769e6dbbc80604da7a Reviewed-on: https://go-review.googlesource.com/c/go/+/221237 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/rewriteARM64.go')
-rw-r--r--src/cmd/compile/internal/ssa/rewriteARM64.go3244
1 files changed, 929 insertions, 2315 deletions
diff --git a/src/cmd/compile/internal/ssa/rewriteARM64.go b/src/cmd/compile/internal/ssa/rewriteARM64.go
index 51051b93b7..dd3a8b922b 100644
--- a/src/cmd/compile/internal/ssa/rewriteARM64.go
+++ b/src/cmd/compile/internal/ssa/rewriteARM64.go
@@ -1094,9 +1094,7 @@ func rewriteValueARM64_OpARM64ADCSflags(v *Value) bool {
}
c := v_2_0_0.Args[0]
v.reset(OpARM64ADCSflags)
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(c)
+ v.AddArg3(x, y, c)
return true
}
// match: (ADCSflags x y (Select1 <types.TypeFlags> (ADDSconstflags [-1] (MOVDconst [0]))))
@@ -1116,8 +1114,7 @@ func rewriteValueARM64_OpARM64ADCSflags(v *Value) bool {
break
}
v.reset(OpARM64ADDSflags)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -1159,9 +1156,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64MADD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -1182,9 +1177,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64MSUB)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -1205,9 +1198,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64MADDW)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -1228,9 +1219,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64MSUBW)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -1245,8 +1234,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
}
y := v_1.Args[0]
v.reset(OpARM64SUB)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1268,8 +1256,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -1291,8 +1278,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -1314,8 +1300,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -1383,10 +1368,9 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -1454,8 +1438,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1524,10 +1507,9 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -1599,8 +1581,7 @@ func rewriteValueARM64_OpARM64ADD(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1775,8 +1756,7 @@ func rewriteValueARM64_OpARM64ADDshiftLL(v *Value) bool {
x2 := v_1
v.reset(OpARM64EXTRconst)
v.AuxInt = 64 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
// match: (ADDshiftLL <t> [c] (UBFX [bfc] x) x2)
@@ -1796,8 +1776,7 @@ func rewriteValueARM64_OpARM64ADDshiftLL(v *Value) bool {
}
v.reset(OpARM64EXTRWconst)
v.AuxInt = 32 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
return false
@@ -1951,8 +1930,7 @@ func rewriteValueARM64_OpARM64AND(v *Value) bool {
}
y := v_1.Args[0]
v.reset(OpARM64BIC)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1974,8 +1952,7 @@ func rewriteValueARM64_OpARM64AND(v *Value) bool {
}
v.reset(OpARM64ANDshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -1997,8 +1974,7 @@ func rewriteValueARM64_OpARM64AND(v *Value) bool {
}
v.reset(OpARM64ANDshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -2020,8 +1996,7 @@ func rewriteValueARM64_OpARM64AND(v *Value) bool {
}
v.reset(OpARM64ANDshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -2366,8 +2341,7 @@ func rewriteValueARM64_OpARM64BIC(v *Value) bool {
}
v.reset(OpARM64BICshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (BIC x0 x1:(SRLconst [c] y))
@@ -2386,8 +2360,7 @@ func rewriteValueARM64_OpARM64BIC(v *Value) bool {
}
v.reset(OpARM64BICshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (BIC x0 x1:(SRAconst [c] y))
@@ -2406,8 +2379,7 @@ func rewriteValueARM64_OpARM64BIC(v *Value) bool {
}
v.reset(OpARM64BICshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
return false
@@ -2556,8 +2528,7 @@ func rewriteValueARM64_OpARM64CMN(v *Value) bool {
}
v.reset(OpARM64CMNshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -2579,8 +2550,7 @@ func rewriteValueARM64_OpARM64CMN(v *Value) bool {
}
v.reset(OpARM64CMNshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -2602,8 +2572,7 @@ func rewriteValueARM64_OpARM64CMN(v *Value) bool {
}
v.reset(OpARM64CMNshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -2943,8 +2912,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
}
v.reset(OpARM64InvertFlags)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -2964,8 +2932,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
}
v.reset(OpARM64CMPshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (CMP x0:(SLLconst [c] y) x1)
@@ -2985,8 +2952,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
v.reset(OpARM64InvertFlags)
v0 := b.NewValue0(v.Pos, OpARM64CMPshiftLL, types.TypeFlags)
v0.AuxInt = c
- v0.AddArg(x1)
- v0.AddArg(y)
+ v0.AddArg2(x1, y)
v.AddArg(v0)
return true
}
@@ -3006,8 +2972,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
}
v.reset(OpARM64CMPshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (CMP x0:(SRLconst [c] y) x1)
@@ -3027,8 +2992,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
v.reset(OpARM64InvertFlags)
v0 := b.NewValue0(v.Pos, OpARM64CMPshiftRL, types.TypeFlags)
v0.AuxInt = c
- v0.AddArg(x1)
- v0.AddArg(y)
+ v0.AddArg2(x1, y)
v.AddArg(v0)
return true
}
@@ -3048,8 +3012,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
}
v.reset(OpARM64CMPshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (CMP x0:(SRAconst [c] y) x1)
@@ -3069,8 +3032,7 @@ func rewriteValueARM64_OpARM64CMP(v *Value) bool {
v.reset(OpARM64InvertFlags)
v0 := b.NewValue0(v.Pos, OpARM64CMPshiftRA, types.TypeFlags)
v0.AuxInt = c
- v0.AddArg(x1)
- v0.AddArg(y)
+ v0.AddArg2(x1, y)
v.AddArg(v0)
return true
}
@@ -3119,8 +3081,7 @@ func rewriteValueARM64_OpARM64CMPW(v *Value) bool {
}
v.reset(OpARM64InvertFlags)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -3501,8 +3462,7 @@ func rewriteValueARM64_OpARM64CSEL(v *Value) bool {
flag := v_2
v.reset(OpARM64CSEL0)
v.Aux = cc
- v.AddArg(x)
- v.AddArg(flag)
+ v.AddArg2(x, flag)
return true
}
// match: (CSEL {cc} (MOVDconst [0]) y flag)
@@ -3516,8 +3476,7 @@ func rewriteValueARM64_OpARM64CSEL(v *Value) bool {
flag := v_2
v.reset(OpARM64CSEL0)
v.Aux = arm64Negate(cc.(Op))
- v.AddArg(y)
- v.AddArg(flag)
+ v.AddArg2(y, flag)
return true
}
// match: (CSEL {cc} x y (InvertFlags cmp))
@@ -3532,9 +3491,7 @@ func rewriteValueARM64_OpARM64CSEL(v *Value) bool {
cmp := v_2.Args[0]
v.reset(OpARM64CSEL)
v.Aux = arm64Invert(cc.(Op))
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(cmp)
+ v.AddArg3(x, y, cmp)
return true
}
// match: (CSEL {cc} x _ flag)
@@ -3583,9 +3540,7 @@ func rewriteValueARM64_OpARM64CSEL(v *Value) bool {
}
v.reset(OpARM64CSEL)
v.Aux = boolval.Op
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(flagArg(boolval))
+ v.AddArg3(x, y, flagArg(boolval))
return true
}
// match: (CSEL {cc} x y (CMPWconst [0] boolval))
@@ -3604,9 +3559,7 @@ func rewriteValueARM64_OpARM64CSEL(v *Value) bool {
}
v.reset(OpARM64CSEL)
v.Aux = arm64Negate(boolval.Op)
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(flagArg(boolval))
+ v.AddArg3(x, y, flagArg(boolval))
return true
}
return false
@@ -3625,8 +3578,7 @@ func rewriteValueARM64_OpARM64CSEL0(v *Value) bool {
cmp := v_1.Args[0]
v.reset(OpARM64CSEL0)
v.Aux = arm64Invert(cc.(Op))
- v.AddArg(x)
- v.AddArg(cmp)
+ v.AddArg2(x, cmp)
return true
}
// match: (CSEL0 {cc} x flag)
@@ -3672,8 +3624,7 @@ func rewriteValueARM64_OpARM64CSEL0(v *Value) bool {
}
v.reset(OpARM64CSEL0)
v.Aux = boolval.Op
- v.AddArg(x)
- v.AddArg(flagArg(boolval))
+ v.AddArg2(x, flagArg(boolval))
return true
}
// match: (CSEL0 {cc} x (CMPWconst [0] boolval))
@@ -3691,8 +3642,7 @@ func rewriteValueARM64_OpARM64CSEL0(v *Value) bool {
}
v.reset(OpARM64CSEL0)
v.Aux = arm64Negate(boolval.Op)
- v.AddArg(x)
- v.AddArg(flagArg(boolval))
+ v.AddArg2(x, flagArg(boolval))
return true
}
return false
@@ -3780,8 +3730,7 @@ func rewriteValueARM64_OpARM64EON(v *Value) bool {
}
v.reset(OpARM64EONshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (EON x0 x1:(SRLconst [c] y))
@@ -3800,8 +3749,7 @@ func rewriteValueARM64_OpARM64EON(v *Value) bool {
}
v.reset(OpARM64EONshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (EON x0 x1:(SRAconst [c] y))
@@ -3820,8 +3768,7 @@ func rewriteValueARM64_OpARM64EON(v *Value) bool {
}
v.reset(OpARM64EONshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
return false
@@ -4013,9 +3960,7 @@ func rewriteValueARM64_OpARM64FADDD(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMADDD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -4031,9 +3976,7 @@ func rewriteValueARM64_OpARM64FADDD(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMSUBD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -4054,9 +3997,7 @@ func rewriteValueARM64_OpARM64FADDS(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMADDS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -4072,9 +4013,7 @@ func rewriteValueARM64_OpARM64FADDS(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMSUBS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
break
@@ -4226,8 +4165,7 @@ func rewriteValueARM64_OpARM64FMOVDload(v *Value) bool {
v.reset(OpARM64FMOVDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (FMOVDload [off] {sym} (ADD ptr idx) mem)
@@ -4246,9 +4184,7 @@ func rewriteValueARM64_OpARM64FMOVDload(v *Value) bool {
break
}
v.reset(OpARM64FMOVDloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (FMOVDload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -4270,8 +4206,7 @@ func rewriteValueARM64_OpARM64FMOVDload(v *Value) bool {
v.reset(OpARM64FMOVDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -4291,8 +4226,7 @@ func rewriteValueARM64_OpARM64FMOVDloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64FMOVDload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (FMOVDloadidx (MOVDconst [c]) ptr mem)
@@ -4306,8 +4240,7 @@ func rewriteValueARM64_OpARM64FMOVDloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64FMOVDload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -4332,9 +4265,7 @@ func rewriteValueARM64_OpARM64FMOVDstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVDstore [off1] {sym} (ADDconst [off2] ptr) val mem)
@@ -4356,9 +4287,7 @@ func rewriteValueARM64_OpARM64FMOVDstore(v *Value) bool {
v.reset(OpARM64FMOVDstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVDstore [off] {sym} (ADD ptr idx) val mem)
@@ -4378,10 +4307,7 @@ func rewriteValueARM64_OpARM64FMOVDstore(v *Value) bool {
break
}
v.reset(OpARM64FMOVDstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (FMOVDstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -4404,9 +4330,7 @@ func rewriteValueARM64_OpARM64FMOVDstore(v *Value) bool {
v.reset(OpARM64FMOVDstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
return false
@@ -4428,9 +4352,7 @@ func rewriteValueARM64_OpARM64FMOVDstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64FMOVDstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVDstoreidx (MOVDconst [c]) idx val mem)
@@ -4445,9 +4367,7 @@ func rewriteValueARM64_OpARM64FMOVDstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64FMOVDstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
return false
@@ -4493,8 +4413,7 @@ func rewriteValueARM64_OpARM64FMOVSload(v *Value) bool {
v.reset(OpARM64FMOVSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (FMOVSload [off] {sym} (ADD ptr idx) mem)
@@ -4513,9 +4432,7 @@ func rewriteValueARM64_OpARM64FMOVSload(v *Value) bool {
break
}
v.reset(OpARM64FMOVSloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (FMOVSload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -4537,8 +4454,7 @@ func rewriteValueARM64_OpARM64FMOVSload(v *Value) bool {
v.reset(OpARM64FMOVSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -4558,8 +4474,7 @@ func rewriteValueARM64_OpARM64FMOVSloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64FMOVSload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (FMOVSloadidx (MOVDconst [c]) ptr mem)
@@ -4573,8 +4488,7 @@ func rewriteValueARM64_OpARM64FMOVSloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64FMOVSload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -4599,9 +4513,7 @@ func rewriteValueARM64_OpARM64FMOVSstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVSstore [off1] {sym} (ADDconst [off2] ptr) val mem)
@@ -4623,9 +4535,7 @@ func rewriteValueARM64_OpARM64FMOVSstore(v *Value) bool {
v.reset(OpARM64FMOVSstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVSstore [off] {sym} (ADD ptr idx) val mem)
@@ -4645,10 +4555,7 @@ func rewriteValueARM64_OpARM64FMOVSstore(v *Value) bool {
break
}
v.reset(OpARM64FMOVSstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (FMOVSstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -4671,9 +4578,7 @@ func rewriteValueARM64_OpARM64FMOVSstore(v *Value) bool {
v.reset(OpARM64FMOVSstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
return false
@@ -4695,9 +4600,7 @@ func rewriteValueARM64_OpARM64FMOVSstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64FMOVSstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (FMOVSstoreidx (MOVDconst [c]) idx val mem)
@@ -4712,9 +4615,7 @@ func rewriteValueARM64_OpARM64FMOVSstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64FMOVSstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
return false
@@ -4732,8 +4633,7 @@ func rewriteValueARM64_OpARM64FMULD(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64FNMULD)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -4753,8 +4653,7 @@ func rewriteValueARM64_OpARM64FMULS(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64FNMULS)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -4772,8 +4671,7 @@ func rewriteValueARM64_OpARM64FNEGD(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64FNMULD)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (FNEGD (FNMULD x y))
@@ -4785,8 +4683,7 @@ func rewriteValueARM64_OpARM64FNEGD(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64FMULD)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -4802,8 +4699,7 @@ func rewriteValueARM64_OpARM64FNEGS(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64FNMULS)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (FNEGS (FNMULS x y))
@@ -4815,8 +4711,7 @@ func rewriteValueARM64_OpARM64FNEGS(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64FMULS)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -4834,8 +4729,7 @@ func rewriteValueARM64_OpARM64FNMULD(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64FMULD)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -4855,8 +4749,7 @@ func rewriteValueARM64_OpARM64FNMULS(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64FMULS)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -4876,9 +4769,7 @@ func rewriteValueARM64_OpARM64FSUBD(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMSUBD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBD (FMULD x y) a)
@@ -4891,9 +4782,7 @@ func rewriteValueARM64_OpARM64FSUBD(v *Value) bool {
x := v_0.Args[0]
a := v_1
v.reset(OpARM64FNMSUBD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBD a (FNMULD x y))
@@ -4906,9 +4795,7 @@ func rewriteValueARM64_OpARM64FSUBD(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMADDD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBD (FNMULD x y) a)
@@ -4921,9 +4808,7 @@ func rewriteValueARM64_OpARM64FSUBD(v *Value) bool {
x := v_0.Args[0]
a := v_1
v.reset(OpARM64FNMADDD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
return false
@@ -4941,9 +4826,7 @@ func rewriteValueARM64_OpARM64FSUBS(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMSUBS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBS (FMULS x y) a)
@@ -4956,9 +4839,7 @@ func rewriteValueARM64_OpARM64FSUBS(v *Value) bool {
x := v_0.Args[0]
a := v_1
v.reset(OpARM64FNMSUBS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBS a (FNMULS x y))
@@ -4971,9 +4852,7 @@ func rewriteValueARM64_OpARM64FSUBS(v *Value) bool {
y := v_1.Args[1]
x := v_1.Args[0]
v.reset(OpARM64FMADDS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (FSUBS (FNMULS x y) a)
@@ -4986,9 +4865,7 @@ func rewriteValueARM64_OpARM64FSUBS(v *Value) bool {
x := v_0.Args[0]
a := v_1
v.reset(OpARM64FNMADDS)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
return false
@@ -5587,8 +5464,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a _ (MOVDconst [0]))
@@ -5612,8 +5488,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5631,8 +5506,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5649,12 +5523,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5671,12 +5543,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5694,12 +5564,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5717,12 +5585,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5740,12 +5606,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a x (MOVDconst [c]))
@@ -5763,12 +5627,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [-1]) x)
@@ -5780,8 +5642,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
x := v_2
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a (MOVDconst [0]) _)
@@ -5805,8 +5666,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
x := v_2
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5824,8 +5684,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5842,12 +5701,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5864,12 +5721,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5887,12 +5742,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5910,12 +5763,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5933,12 +5784,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD a (MOVDconst [c]) x)
@@ -5956,12 +5805,10 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADD (MOVDconst [c]) x y)
@@ -5976,8 +5823,7 @@ func rewriteValueARM64_OpARM64MADD(v *Value) bool {
v.reset(OpARM64ADDconst)
v.AuxInt = c
v0 := b.NewValue0(v.Pos, OpARM64MUL, x.Type)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -6019,8 +5865,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a _ (MOVDconst [c]))
@@ -6054,8 +5899,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6073,8 +5917,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6091,12 +5934,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6113,12 +5954,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6136,12 +5975,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6159,12 +5996,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6182,12 +6017,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a x (MOVDconst [c]))
@@ -6205,12 +6038,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6227,8 +6058,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a (MOVDconst [c]) _)
@@ -6262,8 +6092,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6281,8 +6110,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6299,12 +6127,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6321,12 +6147,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6344,12 +6168,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6367,12 +6189,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6390,12 +6210,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW a (MOVDconst [c]) x)
@@ -6413,12 +6231,10 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MADDW (MOVDconst [c]) x y)
@@ -6433,8 +6249,7 @@ func rewriteValueARM64_OpARM64MADDW(v *Value) bool {
v.reset(OpARM64ADDconst)
v.AuxInt = c
v0 := b.NewValue0(v.Pos, OpARM64MULW, x.Type)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -6541,8 +6356,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v.reset(OpARM64NEG)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6566,8 +6380,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v0.AuxInt = log2(c + 1)
v1 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(x)
+ v0.AddArg2(v1, x)
v.AddArg(v0)
return true
}
@@ -6591,8 +6404,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v.AuxInt = log2(c / 3)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6616,8 +6428,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v0.AuxInt = log2(c / 5)
v1 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v1.AuxInt = 2
- v1.AddArg(x)
- v1.AddArg(x)
+ v1.AddArg2(x, x)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -6642,8 +6453,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v.AuxInt = log2(c / 7)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6667,8 +6477,7 @@ func rewriteValueARM64_OpARM64MNEG(v *Value) bool {
v0.AuxInt = log2(c / 9)
v1 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v1.AuxInt = 3
- v1.AddArg(x)
- v1.AddArg(x)
+ v1.AddArg2(x, x)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -6794,8 +6603,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v.reset(OpARM64NEG)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6819,8 +6627,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v0.AuxInt = log2(c + 1)
v1 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(x)
+ v0.AddArg2(v1, x)
v.AddArg(v0)
return true
}
@@ -6844,8 +6651,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v.AuxInt = log2(c / 3)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6869,8 +6675,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v0.AuxInt = log2(c / 5)
v1 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v1.AuxInt = 2
- v1.AddArg(x)
- v1.AddArg(x)
+ v1.AddArg2(x, x)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -6895,8 +6700,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v.AuxInt = log2(c / 7)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -6920,8 +6724,7 @@ func rewriteValueARM64_OpARM64MNEGW(v *Value) bool {
v0.AuxInt = log2(c / 9)
v1 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v1.AuxInt = 3
- v1.AddArg(x)
- v1.AddArg(x)
+ v1.AddArg2(x, x)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -7011,8 +6814,7 @@ func rewriteValueARM64_OpARM64MOVBUload(v *Value) bool {
v.reset(OpARM64MOVBUload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBUload [off] {sym} (ADD ptr idx) mem)
@@ -7031,9 +6833,7 @@ func rewriteValueARM64_OpARM64MOVBUload(v *Value) bool {
break
}
v.reset(OpARM64MOVBUloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBUload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -7055,8 +6855,7 @@ func rewriteValueARM64_OpARM64MOVBUload(v *Value) bool {
v.reset(OpARM64MOVBUload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBUload [off] {sym} ptr (MOVBstorezero [off2] {sym2} ptr2 _))
@@ -7110,8 +6909,7 @@ func rewriteValueARM64_OpARM64MOVBUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBUloadidx (MOVDconst [c]) ptr mem)
@@ -7125,8 +6923,7 @@ func rewriteValueARM64_OpARM64MOVBUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBUloadidx ptr idx (MOVBstorezeroidx ptr2 idx2 _))
@@ -7282,8 +7079,7 @@ func rewriteValueARM64_OpARM64MOVBload(v *Value) bool {
v.reset(OpARM64MOVBload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBload [off] {sym} (ADD ptr idx) mem)
@@ -7302,9 +7098,7 @@ func rewriteValueARM64_OpARM64MOVBload(v *Value) bool {
break
}
v.reset(OpARM64MOVBloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -7326,8 +7120,7 @@ func rewriteValueARM64_OpARM64MOVBload(v *Value) bool {
v.reset(OpARM64MOVBload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBload [off] {sym} ptr (MOVBstorezero [off2] {sym2} ptr2 _))
@@ -7368,8 +7161,7 @@ func rewriteValueARM64_OpARM64MOVBloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBloadidx (MOVDconst [c]) ptr mem)
@@ -7383,8 +7175,7 @@ func rewriteValueARM64_OpARM64MOVBloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBloadidx ptr idx (MOVBstorezeroidx ptr2 idx2 _))
@@ -7500,9 +7291,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVBstore [off] {sym} (ADD ptr idx) val mem)
@@ -7522,10 +7311,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
break
}
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVBstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -7548,9 +7334,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVDconst [0]) mem)
@@ -7566,8 +7350,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstorezero)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem)
@@ -7584,9 +7367,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVBUreg x) mem)
@@ -7603,9 +7384,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem)
@@ -7622,9 +7401,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVHUreg x) mem)
@@ -7641,9 +7418,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVWreg x) mem)
@@ -7660,9 +7435,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVWUreg x) mem)
@@ -7679,9 +7452,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [i] {s} ptr0 (SRLconst [8] w) x:(MOVBstore [i-1] {s} ptr1 w mem))
@@ -7707,9 +7478,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (SRLconst [8] w) x:(MOVBstoreidx ptr1 idx1 w mem))
@@ -7744,10 +7513,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -7775,9 +7541,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (UBFX [armBFAuxInt(8, 8)] w) x:(MOVBstoreidx ptr1 idx1 w mem))
@@ -7812,10 +7576,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -7843,9 +7604,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (UBFX [armBFAuxInt(8, 24)] w) x:(MOVBstoreidx ptr1 idx1 w mem))
@@ -7880,10 +7639,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -7915,9 +7671,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (SRLconst [8] (MOVDreg w)) x:(MOVBstoreidx ptr1 idx1 w mem))
@@ -7956,10 +7710,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -7989,9 +7740,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (SRLconst [j] w) x:(MOVBstoreidx ptr1 idx1 w0:(SRLconst [j-8] w) mem))
@@ -8028,10 +7777,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w0, mem)
return true
}
break
@@ -8065,9 +7811,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (UBFX [bfc] w) x:(MOVBstoreidx ptr1 idx1 w0:(UBFX [bfc2] w) mem))
@@ -8108,10 +7852,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w0, mem)
return true
}
break
@@ -8149,9 +7890,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr0 idx0) (SRLconst [j] (MOVDreg w)) x:(MOVBstoreidx ptr1 idx1 w0:(SRLconst [j-8] (MOVDreg w)) mem))
@@ -8196,10 +7935,7 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w0, mem)
return true
}
break
@@ -8299,11 +8035,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = i - 7
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x6.Pos, OpARM64REV, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [7] {s} p w x0:(MOVBstore [6] {s} p (SRLconst [8] w) x1:(MOVBstore [5] {s} p (SRLconst [16] w) x2:(MOVBstore [4] {s} p (SRLconst [24] w) x3:(MOVBstore [3] {s} p (SRLconst [32] w) x4:(MOVBstore [2] {s} p (SRLconst [40] w) x5:(MOVBstore [1] {s} p1:(ADD ptr1 idx1) (SRLconst [48] w) x6:(MOVBstoreidx ptr0 idx0 (SRLconst [56] w) mem))))))))
@@ -8407,12 +8141,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(x5.Pos, OpARM64REV, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8464,11 +8195,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 3
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x2.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [3] {s} p w x0:(MOVBstore [2] {s} p (UBFX [armBFAuxInt(8, 24)] w) x1:(MOVBstore [1] {s} p1:(ADD ptr1 idx1) (UBFX [armBFAuxInt(16, 16)] w) x2:(MOVBstoreidx ptr0 idx0 (UBFX [armBFAuxInt(24, 8)] w) mem))))
@@ -8524,12 +8253,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(x1.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8593,11 +8319,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 3
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x2.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [3] {s} p w x0:(MOVBstore [2] {s} p (SRLconst [8] (MOVDreg w)) x1:(MOVBstore [1] {s} p1:(ADD ptr1 idx1) (SRLconst [16] (MOVDreg w)) x2:(MOVBstoreidx ptr0 idx0 (SRLconst [24] (MOVDreg w)) mem))))
@@ -8665,12 +8389,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(x1.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8722,11 +8443,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 3
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x2.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [3] {s} p w x0:(MOVBstore [2] {s} p (SRLconst [8] w) x1:(MOVBstore [1] {s} p1:(ADD ptr1 idx1) (SRLconst [16] w) x2:(MOVBstoreidx ptr0 idx0 (SRLconst [24] w) mem))))
@@ -8782,12 +8501,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(x1.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8815,11 +8531,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr1 idx1) w x:(MOVBstoreidx ptr0 idx0 (SRLconst [8] w) mem))
@@ -8852,12 +8566,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(v.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8885,11 +8596,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr1 idx1) w x:(MOVBstoreidx ptr0 idx0 (UBFX [armBFAuxInt(8, 8)] w) mem))
@@ -8922,12 +8631,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(v.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -8959,11 +8665,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr1 idx1) w x:(MOVBstoreidx ptr0 idx0 (SRLconst [8] (MOVDreg w)) mem))
@@ -9000,12 +8704,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(v.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -9033,11 +8734,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(ptr)
v0 := b.NewValue0(x.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (MOVBstore [1] {s} (ADD ptr1 idx1) w x:(MOVBstoreidx ptr0 idx0 (UBFX [armBFAuxInt(8, 24)] w) mem))
@@ -9070,12 +8769,9 @@ func rewriteValueARM64_OpARM64MOVBstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr0)
- v.AddArg(idx0)
v0 := b.NewValue0(v.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr0, idx0, v0, mem)
return true
}
break
@@ -9100,9 +8796,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVBstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVBstoreidx (MOVDconst [c]) idx val mem)
@@ -9117,9 +8811,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVBstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVDconst [0]) mem)
@@ -9132,9 +8824,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVBstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVBreg x) mem)
@@ -9148,10 +8838,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVBUreg x) mem)
@@ -9165,10 +8852,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVHreg x) mem)
@@ -9182,10 +8866,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVHUreg x) mem)
@@ -9199,10 +8880,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVWreg x) mem)
@@ -9216,10 +8894,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr idx (MOVWUreg x) mem)
@@ -9233,10 +8908,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVBstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVBstoreidx ptr (ADDconst [1] idx) (SRLconst [8] w) x:(MOVBstoreidx ptr idx w mem))
@@ -9261,10 +8933,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, w, mem)
return true
}
// match: (MOVBstoreidx ptr (ADDconst [3] idx) w x0:(MOVBstoreidx ptr (ADDconst [2] idx) (UBFX [armBFAuxInt(8, 24)] w) x1:(MOVBstoreidx ptr (ADDconst [1] idx) (UBFX [armBFAuxInt(16, 16)] w) x2:(MOVBstoreidx ptr idx (UBFX [armBFAuxInt(24, 8)] w) mem))))
@@ -9322,12 +8991,9 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
v0 := b.NewValue0(v.Pos, OpARM64REVW, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, v0, mem)
return true
}
// match: (MOVBstoreidx ptr idx w x0:(MOVBstoreidx ptr (ADDconst [1] idx) (UBFX [armBFAuxInt(8, 24)] w) x1:(MOVBstoreidx ptr (ADDconst [2] idx) (UBFX [armBFAuxInt(16, 16)] w) x2:(MOVBstoreidx ptr (ADDconst [3] idx) (UBFX [armBFAuxInt(24, 8)] w) mem))))
@@ -9386,10 +9052,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, w, mem)
return true
}
// match: (MOVBstoreidx ptr (ADDconst [1] idx) w x:(MOVBstoreidx ptr idx (UBFX [armBFAuxInt(8, 8)] w) mem))
@@ -9415,12 +9078,9 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
v0 := b.NewValue0(v.Pos, OpARM64REV16W, w.Type)
v0.AddArg(w)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, v0, mem)
return true
}
// match: (MOVBstoreidx ptr idx w x:(MOVBstoreidx ptr (ADDconst [1] idx) (UBFX [armBFAuxInt(8, 8)] w) mem))
@@ -9447,10 +9107,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, w, mem)
return true
}
return false
@@ -9478,8 +9135,7 @@ func rewriteValueARM64_OpARM64MOVBstorezero(v *Value) bool {
v.reset(OpARM64MOVBstorezero)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstorezero [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -9501,8 +9157,7 @@ func rewriteValueARM64_OpARM64MOVBstorezero(v *Value) bool {
v.reset(OpARM64MOVBstorezero)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstorezero [off] {sym} (ADD ptr idx) mem)
@@ -9521,9 +9176,7 @@ func rewriteValueARM64_OpARM64MOVBstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVBstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstorezero [i] {s} ptr0 x:(MOVBstorezero [j] {s} ptr1 mem))
@@ -9549,8 +9202,7 @@ func rewriteValueARM64_OpARM64MOVBstorezero(v *Value) bool {
v.reset(OpARM64MOVHstorezero)
v.AuxInt = min(i, j)
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(mem)
+ v.AddArg2(ptr0, mem)
return true
}
// match: (MOVBstorezero [1] {s} (ADD ptr0 idx0) x:(MOVBstorezeroidx ptr1 idx1 mem))
@@ -9581,9 +9233,7 @@ func rewriteValueARM64_OpARM64MOVBstorezero(v *Value) bool {
continue
}
v.reset(OpARM64MOVHstorezeroidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(mem)
+ v.AddArg3(ptr1, idx1, mem)
return true
}
break
@@ -9605,8 +9255,7 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBstorezero)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstorezeroidx (MOVDconst [c]) idx mem)
@@ -9620,8 +9269,7 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBstorezero)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg2(idx, mem)
return true
}
// match: (MOVBstorezeroidx ptr (ADDconst [1] idx) x:(MOVBstorezeroidx ptr idx mem))
@@ -9642,9 +9290,7 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx(v *Value) bool {
break
}
v.reset(OpARM64MOVHstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -9690,8 +9336,7 @@ func rewriteValueARM64_OpARM64MOVDload(v *Value) bool {
v.reset(OpARM64MOVDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDload [off] {sym} (ADD ptr idx) mem)
@@ -9710,9 +9355,7 @@ func rewriteValueARM64_OpARM64MOVDload(v *Value) bool {
break
}
v.reset(OpARM64MOVDloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDload [off] {sym} (ADDshiftLL [3] ptr idx) mem)
@@ -9731,9 +9374,7 @@ func rewriteValueARM64_OpARM64MOVDload(v *Value) bool {
break
}
v.reset(OpARM64MOVDloadidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -9755,8 +9396,7 @@ func rewriteValueARM64_OpARM64MOVDload(v *Value) bool {
v.reset(OpARM64MOVDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDload [off] {sym} ptr (MOVDstorezero [off2] {sym2} ptr2 _))
@@ -9810,8 +9450,7 @@ func rewriteValueARM64_OpARM64MOVDloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDloadidx (MOVDconst [c]) ptr mem)
@@ -9825,8 +9464,7 @@ func rewriteValueARM64_OpARM64MOVDloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDloadidx ptr (SLLconst [3] idx) mem)
@@ -9839,9 +9477,7 @@ func rewriteValueARM64_OpARM64MOVDloadidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVDloadidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDloadidx (SLLconst [3] idx) ptr mem)
@@ -9854,9 +9490,7 @@ func rewriteValueARM64_OpARM64MOVDloadidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVDloadidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDloadidx ptr idx (MOVDstorezeroidx ptr2 idx2 _))
@@ -9895,8 +9529,7 @@ func rewriteValueARM64_OpARM64MOVDloadidx8(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDload)
v.AuxInt = c << 3
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDloadidx8 ptr idx (MOVDstorezeroidx8 ptr2 idx2 _))
@@ -9967,9 +9600,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
v.reset(OpARM64FMOVDstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVDstore [off1] {sym} (ADDconst [off2] ptr) val mem)
@@ -9991,9 +9622,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVDstore [off] {sym} (ADD ptr idx) val mem)
@@ -10013,10 +9642,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
break
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVDstore [off] {sym} (ADDshiftLL [3] ptr idx) val mem)
@@ -10036,10 +9662,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
break
}
v.reset(OpARM64MOVDstoreidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVDstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -10062,9 +9685,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVDstore [off] {sym} ptr (MOVDconst [0]) mem)
@@ -10080,8 +9701,7 @@ func rewriteValueARM64_OpARM64MOVDstore(v *Value) bool {
v.reset(OpARM64MOVDstorezero)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -10103,9 +9723,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVDstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVDstoreidx (MOVDconst [c]) idx val mem)
@@ -10120,9 +9738,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVDstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
// match: (MOVDstoreidx ptr (SLLconst [3] idx) val mem)
@@ -10136,10 +9752,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVDstoreidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVDstoreidx (SLLconst [3] idx) ptr val mem)
@@ -10153,10 +9766,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVDstoreidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVDstoreidx ptr idx (MOVDconst [0]) mem)
@@ -10169,9 +9779,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVDstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -10193,9 +9801,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx8(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVDstore)
v.AuxInt = c << 3
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVDstoreidx8 ptr idx (MOVDconst [0]) mem)
@@ -10208,9 +9814,7 @@ func rewriteValueARM64_OpARM64MOVDstoreidx8(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVDstorezeroidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -10238,8 +9842,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
v.reset(OpARM64MOVDstorezero)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDstorezero [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -10261,8 +9864,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
v.reset(OpARM64MOVDstorezero)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDstorezero [off] {sym} (ADD ptr idx) mem)
@@ -10281,9 +9883,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVDstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDstorezero [off] {sym} (ADDshiftLL [3] ptr idx) mem)
@@ -10302,9 +9902,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVDstorezeroidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDstorezero [i] {s} ptr0 x:(MOVDstorezero [j] {s} ptr1 mem))
@@ -10330,8 +9928,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = min(i, j)
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(mem)
+ v.AddArg2(ptr0, mem)
return true
}
// match: (MOVDstorezero [8] {s} p0:(ADD ptr0 idx0) x:(MOVDstorezeroidx ptr1 idx1 mem))
@@ -10365,8 +9962,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = 0
v.Aux = s
- v.AddArg(p0)
- v.AddArg(mem)
+ v.AddArg2(p0, mem)
return true
}
break
@@ -10398,8 +9994,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = 0
v.Aux = s
- v.AddArg(p0)
- v.AddArg(mem)
+ v.AddArg2(p0, mem)
return true
}
return false
@@ -10419,8 +10014,7 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDstorezero)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVDstorezeroidx (MOVDconst [c]) idx mem)
@@ -10434,8 +10028,7 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDstorezero)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg2(idx, mem)
return true
}
// match: (MOVDstorezeroidx ptr (SLLconst [3] idx) mem)
@@ -10448,9 +10041,7 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVDstorezeroidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVDstorezeroidx (SLLconst [3] idx) ptr mem)
@@ -10463,9 +10054,7 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVDstorezeroidx8)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -10485,8 +10074,7 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx8(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDstorezero)
v.AuxInt = c << 3
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -10514,8 +10102,7 @@ func rewriteValueARM64_OpARM64MOVHUload(v *Value) bool {
v.reset(OpARM64MOVHUload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHUload [off] {sym} (ADD ptr idx) mem)
@@ -10534,9 +10121,7 @@ func rewriteValueARM64_OpARM64MOVHUload(v *Value) bool {
break
}
v.reset(OpARM64MOVHUloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHUload [off] {sym} (ADDshiftLL [1] ptr idx) mem)
@@ -10555,9 +10140,7 @@ func rewriteValueARM64_OpARM64MOVHUload(v *Value) bool {
break
}
v.reset(OpARM64MOVHUloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHUload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -10579,8 +10162,7 @@ func rewriteValueARM64_OpARM64MOVHUload(v *Value) bool {
v.reset(OpARM64MOVHUload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHUload [off] {sym} ptr (MOVHstorezero [off2] {sym2} ptr2 _))
@@ -10634,8 +10216,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHUloadidx (MOVDconst [c]) ptr mem)
@@ -10649,8 +10230,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHUloadidx ptr (SLLconst [1] idx) mem)
@@ -10663,9 +10243,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVHUloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHUloadidx ptr (ADD idx idx) mem)
@@ -10681,9 +10259,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx(v *Value) bool {
}
mem := v_2
v.reset(OpARM64MOVHUloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHUloadidx (ADD idx idx) ptr mem)
@@ -10699,9 +10275,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVHUloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHUloadidx ptr idx (MOVHstorezeroidx ptr2 idx2 _))
@@ -10740,8 +10314,7 @@ func rewriteValueARM64_OpARM64MOVHUloadidx2(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHUload)
v.AuxInt = c << 1
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHUloadidx2 ptr idx (MOVHstorezeroidx2 ptr2 idx2 _))
@@ -10932,8 +10505,7 @@ func rewriteValueARM64_OpARM64MOVHload(v *Value) bool {
v.reset(OpARM64MOVHload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHload [off] {sym} (ADD ptr idx) mem)
@@ -10952,9 +10524,7 @@ func rewriteValueARM64_OpARM64MOVHload(v *Value) bool {
break
}
v.reset(OpARM64MOVHloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHload [off] {sym} (ADDshiftLL [1] ptr idx) mem)
@@ -10973,9 +10543,7 @@ func rewriteValueARM64_OpARM64MOVHload(v *Value) bool {
break
}
v.reset(OpARM64MOVHloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -10997,8 +10565,7 @@ func rewriteValueARM64_OpARM64MOVHload(v *Value) bool {
v.reset(OpARM64MOVHload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHload [off] {sym} ptr (MOVHstorezero [off2] {sym2} ptr2 _))
@@ -11039,8 +10606,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHloadidx (MOVDconst [c]) ptr mem)
@@ -11054,8 +10620,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHloadidx ptr (SLLconst [1] idx) mem)
@@ -11068,9 +10633,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVHloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHloadidx ptr (ADD idx idx) mem)
@@ -11086,9 +10649,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx(v *Value) bool {
}
mem := v_2
v.reset(OpARM64MOVHloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHloadidx (ADD idx idx) ptr mem)
@@ -11104,9 +10665,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVHloadidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHloadidx ptr idx (MOVHstorezeroidx ptr2 idx2 _))
@@ -11145,8 +10704,7 @@ func rewriteValueARM64_OpARM64MOVHloadidx2(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHload)
v.AuxInt = c << 1
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHloadidx2 ptr idx (MOVHstorezeroidx2 ptr2 idx2 _))
@@ -11344,9 +10902,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVHstore [off] {sym} (ADD ptr idx) val mem)
@@ -11366,10 +10922,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstore [off] {sym} (ADDshiftLL [1] ptr idx) val mem)
@@ -11389,10 +10942,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -11415,9 +10965,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVHstore [off] {sym} ptr (MOVDconst [0]) mem)
@@ -11433,8 +10981,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstorezero)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem)
@@ -11451,9 +10998,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVHstore [off] {sym} ptr (MOVHUreg x) mem)
@@ -11470,9 +11015,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVHstore [off] {sym} ptr (MOVWreg x) mem)
@@ -11489,9 +11032,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVHstore [off] {sym} ptr (MOVWUreg x) mem)
@@ -11508,9 +11049,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVHstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVHstore [i] {s} ptr0 (SRLconst [16] w) x:(MOVHstore [i-2] {s} ptr1 w mem))
@@ -11536,9 +11075,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVHstore [2] {s} (ADD ptr0 idx0) (SRLconst [16] w) x:(MOVHstoreidx ptr1 idx1 w mem))
@@ -11573,10 +11110,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -11609,13 +11143,10 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 1
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w, mem)
return true
}
// match: (MOVHstore [i] {s} ptr0 (UBFX [armBFAuxInt(16, 16)] w) x:(MOVHstore [i-2] {s} ptr1 w mem))
@@ -11641,9 +11172,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVHstore [2] {s} (ADD ptr0 idx0) (UBFX [armBFAuxInt(16, 16)] w) x:(MOVHstoreidx ptr1 idx1 w mem))
@@ -11678,10 +11207,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -11714,13 +11240,10 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 1
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w, mem)
return true
}
// match: (MOVHstore [i] {s} ptr0 (SRLconst [16] (MOVDreg w)) x:(MOVHstore [i-2] {s} ptr1 w mem))
@@ -11750,9 +11273,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVHstore [2] {s} (ADD ptr0 idx0) (SRLconst [16] (MOVDreg w)) x:(MOVHstoreidx ptr1 idx1 w mem))
@@ -11791,10 +11312,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -11831,13 +11349,10 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 1
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w, mem)
return true
}
// match: (MOVHstore [i] {s} ptr0 (SRLconst [j] w) x:(MOVHstore [i-2] {s} ptr1 w0:(SRLconst [j-16] w) mem))
@@ -11865,9 +11380,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w0, mem)
return true
}
// match: (MOVHstore [2] {s} (ADD ptr0 idx0) (SRLconst [j] w) x:(MOVHstoreidx ptr1 idx1 w0:(SRLconst [j-16] w) mem))
@@ -11904,10 +11417,7 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w0, mem)
return true
}
break
@@ -11942,13 +11452,10 @@ func rewriteValueARM64_OpARM64MOVHstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 1
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w0, mem)
return true
}
return false
@@ -11970,9 +11477,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVHstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVHstoreidx (MOVDconst [c]) idx val mem)
@@ -11987,9 +11492,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVHstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
// match: (MOVHstoreidx ptr (SLLconst [1] idx) val mem)
@@ -12003,10 +11506,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstoreidx ptr (ADD idx idx) val mem)
@@ -12023,10 +11523,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstoreidx (SLLconst [1] idx) ptr val mem)
@@ -12040,10 +11537,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstoreidx (ADD idx idx) ptr val mem)
@@ -12060,10 +11554,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVHstoreidx ptr idx (MOVDconst [0]) mem)
@@ -12076,9 +11567,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVHstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstoreidx ptr idx (MOVHreg x) mem)
@@ -12092,10 +11581,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx ptr idx (MOVHUreg x) mem)
@@ -12109,10 +11595,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx ptr idx (MOVWreg x) mem)
@@ -12126,10 +11609,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx ptr idx (MOVWUreg x) mem)
@@ -12143,10 +11623,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx ptr (ADDconst [2] idx) (SRLconst [16] w) x:(MOVHstoreidx ptr idx w mem))
@@ -12171,10 +11648,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, w, mem)
return true
}
return false
@@ -12196,9 +11670,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVHstore)
v.AuxInt = c << 1
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVHstoreidx2 ptr idx (MOVDconst [0]) mem)
@@ -12211,9 +11683,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstoreidx2 ptr idx (MOVHreg x) mem)
@@ -12227,10 +11697,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx2 ptr idx (MOVHUreg x) mem)
@@ -12244,10 +11711,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx2 ptr idx (MOVWreg x) mem)
@@ -12261,10 +11725,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVHstoreidx2 ptr idx (MOVWUreg x) mem)
@@ -12278,10 +11739,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVHstoreidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
return false
@@ -12309,8 +11767,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
v.reset(OpARM64MOVHstorezero)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHstorezero [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -12332,8 +11789,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
v.reset(OpARM64MOVHstorezero)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHstorezero [off] {sym} (ADD ptr idx) mem)
@@ -12352,9 +11808,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVHstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezero [off] {sym} (ADDshiftLL [1] ptr idx) mem)
@@ -12373,9 +11827,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezero [i] {s} ptr0 x:(MOVHstorezero [j] {s} ptr1 mem))
@@ -12401,8 +11853,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
v.reset(OpARM64MOVWstorezero)
v.AuxInt = min(i, j)
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(mem)
+ v.AddArg2(ptr0, mem)
return true
}
// match: (MOVHstorezero [2] {s} (ADD ptr0 idx0) x:(MOVHstorezeroidx ptr1 idx1 mem))
@@ -12433,9 +11884,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
continue
}
v.reset(OpARM64MOVWstorezeroidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(mem)
+ v.AddArg3(ptr1, idx1, mem)
return true
}
break
@@ -12464,12 +11913,10 @@ func rewriteValueARM64_OpARM64MOVHstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVWstorezeroidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 1
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr1, v0, mem)
return true
}
return false
@@ -12489,8 +11936,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHstorezero)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVHstorezeroidx (MOVDconst [c]) idx mem)
@@ -12504,8 +11950,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHstorezero)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg2(idx, mem)
return true
}
// match: (MOVHstorezeroidx ptr (SLLconst [1] idx) mem)
@@ -12518,9 +11963,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezeroidx ptr (ADD idx idx) mem)
@@ -12536,9 +11979,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
}
mem := v_2
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezeroidx (SLLconst [1] idx) ptr mem)
@@ -12551,9 +11992,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezeroidx (ADD idx idx) ptr mem)
@@ -12569,9 +12008,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVHstorezeroidx2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVHstorezeroidx ptr (ADDconst [2] idx) x:(MOVHstorezeroidx ptr idx mem))
@@ -12592,9 +12029,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx(v *Value) bool {
break
}
v.reset(OpARM64MOVWstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -12614,8 +12049,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx2(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHstorezero)
v.AuxInt = c << 1
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -12643,8 +12077,7 @@ func rewriteValueARM64_OpARM64MOVQstorezero(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVQstorezero [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -12666,8 +12099,7 @@ func rewriteValueARM64_OpARM64MOVQstorezero(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -12713,8 +12145,7 @@ func rewriteValueARM64_OpARM64MOVWUload(v *Value) bool {
v.reset(OpARM64MOVWUload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWUload [off] {sym} (ADD ptr idx) mem)
@@ -12733,9 +12164,7 @@ func rewriteValueARM64_OpARM64MOVWUload(v *Value) bool {
break
}
v.reset(OpARM64MOVWUloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWUload [off] {sym} (ADDshiftLL [2] ptr idx) mem)
@@ -12754,9 +12183,7 @@ func rewriteValueARM64_OpARM64MOVWUload(v *Value) bool {
break
}
v.reset(OpARM64MOVWUloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWUload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -12778,8 +12205,7 @@ func rewriteValueARM64_OpARM64MOVWUload(v *Value) bool {
v.reset(OpARM64MOVWUload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWUload [off] {sym} ptr (MOVWstorezero [off2] {sym2} ptr2 _))
@@ -12833,8 +12259,7 @@ func rewriteValueARM64_OpARM64MOVWUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWUloadidx (MOVDconst [c]) ptr mem)
@@ -12848,8 +12273,7 @@ func rewriteValueARM64_OpARM64MOVWUloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWUload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWUloadidx ptr (SLLconst [2] idx) mem)
@@ -12862,9 +12286,7 @@ func rewriteValueARM64_OpARM64MOVWUloadidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVWUloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWUloadidx (SLLconst [2] idx) ptr mem)
@@ -12877,9 +12299,7 @@ func rewriteValueARM64_OpARM64MOVWUloadidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVWUloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWUloadidx ptr idx (MOVWstorezeroidx ptr2 idx2 _))
@@ -12918,8 +12338,7 @@ func rewriteValueARM64_OpARM64MOVWUloadidx4(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWUload)
v.AuxInt = c << 2
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWUloadidx4 ptr idx (MOVWstorezeroidx4 ptr2 idx2 _))
@@ -13157,8 +12576,7 @@ func rewriteValueARM64_OpARM64MOVWload(v *Value) bool {
v.reset(OpARM64MOVWload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWload [off] {sym} (ADD ptr idx) mem)
@@ -13177,9 +12595,7 @@ func rewriteValueARM64_OpARM64MOVWload(v *Value) bool {
break
}
v.reset(OpARM64MOVWloadidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWload [off] {sym} (ADDshiftLL [2] ptr idx) mem)
@@ -13198,9 +12614,7 @@ func rewriteValueARM64_OpARM64MOVWload(v *Value) bool {
break
}
v.reset(OpARM64MOVWloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWload [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -13222,8 +12636,7 @@ func rewriteValueARM64_OpARM64MOVWload(v *Value) bool {
v.reset(OpARM64MOVWload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWload [off] {sym} ptr (MOVWstorezero [off2] {sym2} ptr2 _))
@@ -13264,8 +12677,7 @@ func rewriteValueARM64_OpARM64MOVWloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWloadidx (MOVDconst [c]) ptr mem)
@@ -13279,8 +12691,7 @@ func rewriteValueARM64_OpARM64MOVWloadidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWload)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWloadidx ptr (SLLconst [2] idx) mem)
@@ -13293,9 +12704,7 @@ func rewriteValueARM64_OpARM64MOVWloadidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVWloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWloadidx (SLLconst [2] idx) ptr mem)
@@ -13308,9 +12717,7 @@ func rewriteValueARM64_OpARM64MOVWloadidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVWloadidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWloadidx ptr idx (MOVWstorezeroidx ptr2 idx2 _))
@@ -13349,8 +12756,7 @@ func rewriteValueARM64_OpARM64MOVWloadidx4(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWload)
v.AuxInt = c << 2
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWloadidx4 ptr idx (MOVWstorezeroidx4 ptr2 idx2 _))
@@ -13626,9 +13032,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64FMOVSstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstore [off1] {sym} (ADDconst [off2] ptr) val mem)
@@ -13650,9 +13054,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstore [off] {sym} (ADD ptr idx) val mem)
@@ -13672,10 +13074,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstore [off] {sym} (ADDshiftLL [2] ptr idx) val mem)
@@ -13695,10 +13094,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstoreidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstore [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val mem)
@@ -13721,9 +13117,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstore [off] {sym} ptr (MOVDconst [0]) mem)
@@ -13739,8 +13133,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVWstorezero)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem)
@@ -13757,9 +13150,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVWstore [off] {sym} ptr (MOVWUreg x) mem)
@@ -13776,9 +13167,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVWstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVWstore [i] {s} ptr0 (SRLconst [32] w) x:(MOVWstore [i-4] {s} ptr1 w mem))
@@ -13804,9 +13193,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = i - 4
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w, mem)
return true
}
// match: (MOVWstore [4] {s} (ADD ptr0 idx0) (SRLconst [32] w) x:(MOVWstoreidx ptr1 idx1 w mem))
@@ -13841,10 +13228,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w, mem)
return true
}
break
@@ -13877,13 +13261,10 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
break
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 2
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w, mem)
return true
}
// match: (MOVWstore [i] {s} ptr0 (SRLconst [j] w) x:(MOVWstore [i-4] {s} ptr1 w0:(SRLconst [j-32] w) mem))
@@ -13911,9 +13292,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
v.reset(OpARM64MOVDstore)
v.AuxInt = i - 4
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(ptr0, w0, mem)
return true
}
// match: (MOVWstore [4] {s} (ADD ptr0 idx0) (SRLconst [j] w) x:(MOVWstoreidx ptr1 idx1 w0:(SRLconst [j-32] w) mem))
@@ -13950,10 +13329,7 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
continue
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, idx1, w0, mem)
return true
}
break
@@ -13988,13 +13364,10 @@ func rewriteValueARM64_OpARM64MOVWstore(v *Value) bool {
break
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 2
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(ptr1, v0, w0, mem)
return true
}
return false
@@ -14016,9 +13389,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVWstore)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstoreidx (MOVDconst [c]) idx val mem)
@@ -14033,9 +13404,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVWstore)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(idx, val, mem)
return true
}
// match: (MOVWstoreidx ptr (SLLconst [2] idx) val mem)
@@ -14049,10 +13418,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVWstoreidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstoreidx (SLLconst [2] idx) ptr val mem)
@@ -14066,10 +13432,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
val := v_2
mem := v_3
v.reset(OpARM64MOVWstoreidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstoreidx ptr idx (MOVDconst [0]) mem)
@@ -14082,9 +13445,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVWstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreidx ptr idx (MOVWreg x) mem)
@@ -14098,10 +13459,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVWstoreidx ptr idx (MOVWUreg x) mem)
@@ -14115,10 +13473,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVWstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVWstoreidx ptr (ADDconst [4] idx) (SRLconst [32] w) x:(MOVWstoreidx ptr idx w mem))
@@ -14143,10 +13498,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx(v *Value) bool {
break
}
v.reset(OpARM64MOVDstoreidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, w, mem)
return true
}
return false
@@ -14168,9 +13520,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4(v *Value) bool {
mem := v_3
v.reset(OpARM64MOVWstore)
v.AuxInt = c << 2
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstoreidx4 ptr idx (MOVDconst [0]) mem)
@@ -14183,9 +13533,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4(v *Value) bool {
}
mem := v_3
v.reset(OpARM64MOVWstorezeroidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreidx4 ptr idx (MOVWreg x) mem)
@@ -14199,10 +13547,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVWstoreidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVWstoreidx4 ptr idx (MOVWUreg x) mem)
@@ -14216,10 +13561,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4(v *Value) bool {
x := v_2.Args[0]
mem := v_3
v.reset(OpARM64MOVWstoreidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
return false
@@ -14247,8 +13589,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
v.reset(OpARM64MOVWstorezero)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstorezero [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) mem)
@@ -14270,8 +13611,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
v.reset(OpARM64MOVWstorezero)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstorezero [off] {sym} (ADD ptr idx) mem)
@@ -14290,9 +13630,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVWstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstorezero [off] {sym} (ADDshiftLL [2] ptr idx) mem)
@@ -14311,9 +13649,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVWstorezeroidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstorezero [i] {s} ptr0 x:(MOVWstorezero [j] {s} ptr1 mem))
@@ -14339,8 +13675,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
v.reset(OpARM64MOVDstorezero)
v.AuxInt = min(i, j)
v.Aux = s
- v.AddArg(ptr0)
- v.AddArg(mem)
+ v.AddArg2(ptr0, mem)
return true
}
// match: (MOVWstorezero [4] {s} (ADD ptr0 idx0) x:(MOVWstorezeroidx ptr1 idx1 mem))
@@ -14371,9 +13706,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
continue
}
v.reset(OpARM64MOVDstorezeroidx)
- v.AddArg(ptr1)
- v.AddArg(idx1)
- v.AddArg(mem)
+ v.AddArg3(ptr1, idx1, mem)
return true
}
break
@@ -14402,12 +13735,10 @@ func rewriteValueARM64_OpARM64MOVWstorezero(v *Value) bool {
break
}
v.reset(OpARM64MOVDstorezeroidx)
- v.AddArg(ptr1)
v0 := b.NewValue0(v.Pos, OpARM64SLLconst, idx1.Type)
v0.AuxInt = 2
v0.AddArg(idx1)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr1, v0, mem)
return true
}
return false
@@ -14427,8 +13758,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWstorezero)
v.AuxInt = c
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstorezeroidx (MOVDconst [c]) idx mem)
@@ -14442,8 +13772,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWstorezero)
v.AuxInt = c
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg2(idx, mem)
return true
}
// match: (MOVWstorezeroidx ptr (SLLconst [2] idx) mem)
@@ -14456,9 +13785,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx(v *Value) bool {
idx := v_1.Args[0]
mem := v_2
v.reset(OpARM64MOVWstorezeroidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstorezeroidx (SLLconst [2] idx) ptr mem)
@@ -14471,9 +13798,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx(v *Value) bool {
ptr := v_1
mem := v_2
v.reset(OpARM64MOVWstorezeroidx4)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstorezeroidx ptr (ADDconst [4] idx) x:(MOVWstorezeroidx ptr idx mem))
@@ -14494,9 +13819,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx(v *Value) bool {
break
}
v.reset(OpARM64MOVDstorezeroidx)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -14516,8 +13839,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx4(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWstorezero)
v.AuxInt = c << 2
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -14536,8 +13858,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a _ (MOVDconst [0]))
@@ -14561,8 +13882,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14580,8 +13900,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14598,12 +13917,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14620,12 +13937,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14643,12 +13958,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14666,12 +13979,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14689,12 +14000,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a x (MOVDconst [c]))
@@ -14712,12 +14021,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [-1]) x)
@@ -14729,8 +14036,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
x := v_2
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a (MOVDconst [0]) _)
@@ -14754,8 +14060,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
x := v_2
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14773,8 +14078,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14791,12 +14095,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14813,12 +14115,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14836,12 +14136,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14859,12 +14157,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14882,12 +14178,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB a (MOVDconst [c]) x)
@@ -14905,12 +14199,10 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUB (MOVDconst [c]) x y)
@@ -14925,8 +14217,7 @@ func rewriteValueARM64_OpARM64MSUB(v *Value) bool {
v.reset(OpARM64ADDconst)
v.AuxInt = c
v0 := b.NewValue0(v.Pos, OpARM64MNEG, x.Type)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14968,8 +14259,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a _ (MOVDconst [c]))
@@ -15003,8 +14293,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15022,8 +14311,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15040,12 +14328,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15062,12 +14348,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15085,12 +14369,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15108,12 +14390,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15131,12 +14411,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a x (MOVDconst [c]))
@@ -15154,12 +14432,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15176,8 +14452,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a (MOVDconst [c]) _)
@@ -15211,8 +14486,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15230,8 +14504,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c)
- v.AddArg(a)
- v.AddArg(x)
+ v.AddArg2(a, x)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15248,12 +14521,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64SUB)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = log2(c - 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15270,12 +14541,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
break
}
v.reset(OpARM64ADD)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = log2(c + 1)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15293,12 +14562,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 3)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15316,12 +14583,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 5)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15339,12 +14604,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c / 7)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64SUBshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW a (MOVDconst [c]) x)
@@ -15362,12 +14625,10 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = log2(c / 9)
- v.AddArg(a)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(a, v0)
return true
}
// match: (MSUBW (MOVDconst [c]) x y)
@@ -15382,8 +14643,7 @@ func rewriteValueARM64_OpARM64MSUBW(v *Value) bool {
v.reset(OpARM64ADDconst)
v.AuxInt = c
v0 := b.NewValue0(v.Pos, OpARM64MNEGW, x.Type)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15420,8 +14680,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64MNEG)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -15503,8 +14762,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c - 1)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
break
@@ -15526,8 +14784,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
v.AuxInt = log2(c + 1)
v0 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
break
@@ -15549,8 +14806,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
v.AuxInt = log2(c / 3)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 1
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -15573,8 +14829,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
v.AuxInt = log2(c / 5)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -15599,8 +14854,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
v0.AuxInt = 3
v1 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(x)
+ v0.AddArg2(v1, x)
v.AddArg(v0)
return true
}
@@ -15623,8 +14877,7 @@ func rewriteValueARM64_OpARM64MUL(v *Value) bool {
v.AuxInt = log2(c / 9)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -15664,8 +14917,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
x := v_0.Args[0]
y := v_1
v.reset(OpARM64MNEGW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -15762,8 +15014,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
}
v.reset(OpARM64ADDshiftLL)
v.AuxInt = log2(c - 1)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
break
@@ -15785,8 +15036,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
v.AuxInt = log2(c + 1)
v0 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
break
@@ -15808,8 +15058,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
v.AuxInt = log2(c / 3)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 1
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -15832,8 +15081,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
v.AuxInt = log2(c / 5)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 2
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -15858,8 +15106,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
v0.AuxInt = 3
v1 := b.NewValue0(v.Pos, OpARM64NEG, x.Type)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(x)
+ v0.AddArg2(v1, x)
v.AddArg(v0)
return true
}
@@ -15882,8 +15129,7 @@ func rewriteValueARM64_OpARM64MULW(v *Value) bool {
v.AuxInt = log2(c / 9)
v0 := b.NewValue0(v.Pos, OpARM64ADDshiftLL, x.Type)
v0.AuxInt = 3
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -16037,8 +15283,7 @@ func rewriteValueARM64_OpARM64NEG(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64MNEG)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (NEG (MULW x y))
@@ -16050,8 +15295,7 @@ func rewriteValueARM64_OpARM64NEG(v *Value) bool {
y := v_0.Args[1]
x := v_0.Args[0]
v.reset(OpARM64MNEGW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (NEG (MOVDconst [c]))
@@ -16277,8 +15521,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
y := v_1.Args[0]
v.reset(OpARM64ORN)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -16300,8 +15543,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
v.reset(OpARM64ORshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -16323,8 +15565,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
v.reset(OpARM64ORshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -16346,8 +15587,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
v.reset(OpARM64ORshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -16415,10 +15655,9 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -16486,8 +15725,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -16556,10 +15794,9 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -16631,8 +15868,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -16657,8 +15893,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
v.reset(OpARM64BFI)
v.AuxInt = bfc
- v.AddArg(y)
- v.AddArg(x)
+ v.AddArg2(y, x)
return true
}
break
@@ -16683,8 +15918,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
}
v.reset(OpARM64BFXIL)
v.AuxInt = bfc
- v.AddArg(y)
- v.AddArg(x)
+ v.AddArg2(y, x)
return true
}
break
@@ -16777,8 +16011,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v1 := b.NewValue0(x3.Pos, OpOffPtr, p.Type)
v1.AuxInt = i0
v1.AddArg(p)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg2(v1, mem)
return true
}
break
@@ -16866,9 +16099,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v0 := b.NewValue0(x2.Pos, OpARM64MOVWUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
- v0.AddArg(idx0)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, idx0, mem)
return true
}
}
@@ -16957,9 +16188,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64MOVWUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
break
@@ -17136,8 +16365,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v1 := b.NewValue0(x7.Pos, OpOffPtr, p.Type)
v1.AuxInt = i0
v1.AddArg(p)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg2(v1, mem)
return true
}
break
@@ -17293,9 +16521,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v0 := b.NewValue0(x6.Pos, OpARM64MOVDloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
- v0.AddArg(idx0)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, idx0, mem)
return true
}
}
@@ -17468,9 +16694,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64MOVDloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
break
@@ -17564,8 +16788,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v2 := b.NewValue0(x3.Pos, OpOffPtr, p.Type)
v2.AuxInt = i0
v2.AddArg(p)
- v1.AddArg(v2)
- v1.AddArg(mem)
+ v1.AddArg2(v2, mem)
v0.AddArg(v1)
return true
}
@@ -17655,9 +16878,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(x3.Pos, OpARM64MOVWUloadidx, t)
- v1.AddArg(ptr0)
- v1.AddArg(idx0)
- v1.AddArg(mem)
+ v1.AddArg3(ptr0, idx0, mem)
v0.AddArg(v1)
return true
}
@@ -17748,9 +16969,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWUloadidx, t)
- v1.AddArg(ptr)
- v1.AddArg(idx)
- v1.AddArg(mem)
+ v1.AddArg3(ptr, idx, mem)
v0.AddArg(v1)
return true
}
@@ -17929,8 +17148,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v2 := b.NewValue0(x7.Pos, OpOffPtr, p.Type)
v2.AuxInt = i0
v2.AddArg(p)
- v1.AddArg(v2)
- v1.AddArg(mem)
+ v1.AddArg2(v2, mem)
v0.AddArg(v1)
return true
}
@@ -18088,9 +17306,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(x7.Pos, OpARM64MOVDloadidx, t)
- v1.AddArg(ptr0)
- v1.AddArg(idx0)
- v1.AddArg(mem)
+ v1.AddArg3(ptr0, idx0, mem)
v0.AddArg(v1)
return true
}
@@ -18265,9 +17481,7 @@ func rewriteValueARM64_OpARM64OR(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDloadidx, t)
- v1.AddArg(ptr)
- v1.AddArg(idx)
- v1.AddArg(mem)
+ v1.AddArg3(ptr, idx, mem)
v0.AddArg(v1)
return true
}
@@ -18318,8 +17532,7 @@ func rewriteValueARM64_OpARM64ORN(v *Value) bool {
}
v.reset(OpARM64ORNshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (ORN x0 x1:(SRLconst [c] y))
@@ -18338,8 +17551,7 @@ func rewriteValueARM64_OpARM64ORN(v *Value) bool {
}
v.reset(OpARM64ORNshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (ORN x0 x1:(SRAconst [c] y))
@@ -18358,8 +17570,7 @@ func rewriteValueARM64_OpARM64ORN(v *Value) bool {
}
v.reset(OpARM64ORNshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
return false
@@ -18657,8 +17868,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
x2 := v_1
v.reset(OpARM64EXTRconst)
v.AuxInt = 64 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
// match: ( ORshiftLL <t> [c] (UBFX [bfc] x) x2)
@@ -18678,8 +17888,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
}
v.reset(OpARM64EXTRWconst)
v.AuxInt = 32 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
// match: (ORshiftLL [sc] (UBFX [bfc] x) (SRLconst [sc] y))
@@ -18701,8 +17910,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
}
v.reset(OpARM64BFXIL)
v.AuxInt = bfc
- v.AddArg(y)
- v.AddArg(x)
+ v.AddArg2(y, x)
return true
}
// match: (ORshiftLL <t> [8] y0:(MOVDnop x0:(MOVBUload [i0] {s} p mem)) y1:(MOVDnop x1:(MOVBUload [i1] {s} p mem)))
@@ -18749,8 +17957,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v1 := b.NewValue0(x1.Pos, OpOffPtr, p.Type)
v1.AuxInt = i0
v1.AddArg(p)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg2(v1, mem)
return true
}
// match: (ORshiftLL <t> [8] y0:(MOVDnop x0:(MOVBUloadidx ptr0 idx0 mem)) y1:(MOVDnop x1:(MOVBUload [1] {s} p1:(ADD ptr1 idx1) mem)))
@@ -18799,9 +18006,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(x1.Pos, OpARM64MOVHUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
- v0.AddArg(idx0)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, idx0, mem)
return true
}
break
@@ -18845,9 +18050,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64MOVHUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (ORshiftLL <t> [24] o0:(ORshiftLL [16] x0:(MOVHUload [i0] {s} p mem) y1:(MOVDnop x1:(MOVBUload [i2] {s} p mem))) y2:(MOVDnop x2:(MOVBUload [i3] {s} p mem)))
@@ -18911,8 +18114,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v1 := b.NewValue0(x2.Pos, OpOffPtr, p.Type)
v1.AuxInt = i0
v1.AddArg(p)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg2(v1, mem)
return true
}
// match: (ORshiftLL <t> [24] o0:(ORshiftLL [16] x0:(MOVHUloadidx ptr0 idx0 mem) y1:(MOVDnop x1:(MOVBUload [2] {s} p1:(ADD ptr1 idx1) mem))) y2:(MOVDnop x2:(MOVBUload [3] {s} p mem)))
@@ -18975,9 +18177,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(x2.Pos, OpARM64MOVWUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
- v0.AddArg(idx0)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, idx0, mem)
return true
}
break
@@ -19038,9 +18238,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64MOVWUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (ORshiftLL <t> [24] o0:(ORshiftLL [16] x0:(MOVHUloadidx2 ptr0 idx0 mem) y1:(MOVDnop x1:(MOVBUload [2] {s} p1:(ADDshiftLL [1] ptr1 idx1) mem))) y2:(MOVDnop x2:(MOVBUload [3] {s} p mem)))
@@ -19099,12 +18297,10 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(x2.Pos, OpARM64MOVWUloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
v1 := b.NewValue0(x2.Pos, OpARM64SLLconst, idx0.Type)
v1.AuxInt = 1
v1.AddArg(idx0)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, v1, mem)
return true
}
// match: (ORshiftLL <t> [56] o0:(ORshiftLL [48] o1:(ORshiftLL [40] o2:(ORshiftLL [32] x0:(MOVWUload [i0] {s} p mem) y1:(MOVDnop x1:(MOVBUload [i4] {s} p mem))) y2:(MOVDnop x2:(MOVBUload [i5] {s} p mem))) y3:(MOVDnop x3:(MOVBUload [i6] {s} p mem))) y4:(MOVDnop x4:(MOVBUload [i7] {s} p mem)))
@@ -19210,8 +18406,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v1 := b.NewValue0(x4.Pos, OpOffPtr, p.Type)
v1.AuxInt = i0
v1.AddArg(p)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg2(v1, mem)
return true
}
// match: (ORshiftLL <t> [56] o0:(ORshiftLL [48] o1:(ORshiftLL [40] o2:(ORshiftLL [32] x0:(MOVWUloadidx ptr0 idx0 mem) y1:(MOVDnop x1:(MOVBUload [4] {s} p1:(ADD ptr1 idx1) mem))) y2:(MOVDnop x2:(MOVBUload [5] {s} p mem))) y3:(MOVDnop x3:(MOVBUload [6] {s} p mem))) y4:(MOVDnop x4:(MOVBUload [7] {s} p mem)))
@@ -19308,9 +18503,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(x4.Pos, OpARM64MOVDloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
- v0.AddArg(idx0)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, idx0, mem)
return true
}
break
@@ -19405,12 +18598,10 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(x4.Pos, OpARM64MOVDloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr0)
v1 := b.NewValue0(x4.Pos, OpARM64SLLconst, idx0.Type)
v1.AuxInt = 2
v1.AddArg(idx0)
- v0.AddArg(v1)
- v0.AddArg(mem)
+ v0.AddArg3(ptr0, v1, mem)
return true
}
// match: (ORshiftLL <t> [56] o0:(ORshiftLL [48] o1:(ORshiftLL [40] o2:(ORshiftLL [32] x0:(MOVWUloadidx ptr idx mem) y1:(MOVDnop x1:(MOVBUloadidx ptr (ADDconst [4] idx) mem))) y2:(MOVDnop x2:(MOVBUloadidx ptr (ADDconst [5] idx) mem))) y3:(MOVDnop x3:(MOVBUloadidx ptr (ADDconst [6] idx) mem))) y4:(MOVDnop x4:(MOVBUloadidx ptr (ADDconst [7] idx) mem)))
@@ -19511,9 +18702,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64MOVDloadidx, t)
v.reset(OpCopy)
v.AddArg(v0)
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (ORshiftLL <t> [8] y0:(MOVDnop x0:(MOVBUload [i1] {s} p mem)) y1:(MOVDnop x1:(MOVBUload [i0] {s} p mem)))
@@ -19559,8 +18748,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v1 := b.NewValue0(x1.Pos, OpARM64MOVHUload, t)
v1.AuxInt = i0
v1.Aux = s
- v1.AddArg(p)
- v1.AddArg(mem)
+ v1.AddArg2(p, mem)
v0.AddArg(v1)
return true
}
@@ -19611,9 +18799,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(x0.Pos, OpARM64MOVHUloadidx, t)
- v1.AddArg(ptr0)
- v1.AddArg(idx0)
- v1.AddArg(mem)
+ v1.AddArg3(ptr0, idx0, mem)
v0.AddArg(v1)
return true
}
@@ -19659,9 +18845,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVHUloadidx, t)
- v1.AddArg(ptr)
- v1.AddArg(idx)
- v1.AddArg(mem)
+ v1.AddArg3(ptr, idx, mem)
v0.AddArg(v1)
return true
}
@@ -19731,8 +18915,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v2 := b.NewValue0(x2.Pos, OpOffPtr, p.Type)
v2.AuxInt = i0
v2.AddArg(p)
- v1.AddArg(v2)
- v1.AddArg(mem)
+ v1.AddArg2(v2, mem)
v0.AddArg(v1)
return true
}
@@ -19801,9 +18984,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(x1.Pos, OpARM64MOVWUloadidx, t)
- v1.AddArg(ptr0)
- v1.AddArg(idx0)
- v1.AddArg(mem)
+ v1.AddArg3(ptr0, idx0, mem)
v0.AddArg(v1)
return true
}
@@ -19870,9 +19051,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWUloadidx, t)
- v1.AddArg(ptr)
- v1.AddArg(idx)
- v1.AddArg(mem)
+ v1.AddArg3(ptr, idx, mem)
v0.AddArg(v1)
return true
}
@@ -19984,8 +19163,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v2 := b.NewValue0(x4.Pos, OpOffPtr, p.Type)
v2.AuxInt = i0
v2.AddArg(p)
- v1.AddArg(v2)
- v1.AddArg(mem)
+ v1.AddArg2(v2, mem)
v0.AddArg(v1)
return true
}
@@ -20088,9 +19266,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(x3.Pos, OpARM64MOVDloadidx, t)
- v1.AddArg(ptr0)
- v1.AddArg(idx0)
- v1.AddArg(mem)
+ v1.AddArg3(ptr0, idx0, mem)
v0.AddArg(v1)
return true
}
@@ -20199,9 +19375,7 @@ func rewriteValueARM64_OpARM64ORshiftLL(v *Value) bool {
v.reset(OpCopy)
v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDloadidx, t)
- v1.AddArg(ptr)
- v1.AddArg(idx)
- v1.AddArg(mem)
+ v1.AddArg3(ptr, idx, mem)
v0.AddArg(v1)
return true
}
@@ -20371,8 +19545,7 @@ func rewriteValueARM64_OpARM64ORshiftRL(v *Value) bool {
}
v.reset(OpARM64BFI)
v.AuxInt = armBFAuxInt(lc-rc, 64-lc)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ORshiftRL [rc] (ANDconst [ac] y) (SLLconst [lc] x))
@@ -20395,8 +19568,7 @@ func rewriteValueARM64_OpARM64ORshiftRL(v *Value) bool {
}
v.reset(OpARM64BFXIL)
v.AuxInt = armBFAuxInt(rc-lc, 64-rc)
- v.AddArg(y)
- v.AddArg(x)
+ v.AddArg2(y, x)
return true
}
return false
@@ -20465,9 +19637,7 @@ func rewriteValueARM64_OpARM64SBCSflags(v *Value) bool {
}
bo := v_2_0_0_0.Args[0]
v.reset(OpARM64SBCSflags)
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(bo)
+ v.AddArg3(x, y, bo)
return true
}
// match: (SBCSflags x y (Select1 <types.TypeFlags> (NEGSflags (MOVDconst [0]))))
@@ -20487,8 +19657,7 @@ func rewriteValueARM64_OpARM64SBCSflags(v *Value) bool {
break
}
v.reset(OpARM64SUBSflags)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -21043,10 +20212,7 @@ func rewriteValueARM64_OpARM64STP(v *Value) bool {
v.reset(OpARM64STP)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val1)
- v.AddArg(val2)
- v.AddArg(mem)
+ v.AddArg4(ptr, val1, val2, mem)
return true
}
// match: (STP [off1] {sym1} (MOVDaddr [off2] {sym2} ptr) val1 val2 mem)
@@ -21070,10 +20236,7 @@ func rewriteValueARM64_OpARM64STP(v *Value) bool {
v.reset(OpARM64STP)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(val1)
- v.AddArg(val2)
- v.AddArg(mem)
+ v.AddArg4(ptr, val1, val2, mem)
return true
}
// match: (STP [off] {sym} ptr (MOVDconst [0]) (MOVDconst [0]) mem)
@@ -21089,8 +20252,7 @@ func rewriteValueARM64_OpARM64STP(v *Value) bool {
v.reset(OpARM64MOVQstorezero)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -21127,9 +20289,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
break
}
v.reset(OpARM64MSUB)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (SUB a l:(MNEG x y))
@@ -21147,9 +20307,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
break
}
v.reset(OpARM64MADD)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (SUB a l:(MULW x y))
@@ -21167,9 +20325,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
break
}
v.reset(OpARM64MSUBW)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (SUB a l:(MNEGW x y))
@@ -21187,9 +20343,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
break
}
v.reset(OpARM64MADDW)
- v.AddArg(a)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(a, x, y)
return true
}
// match: (SUB x x)
@@ -21214,10 +20368,8 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
y := v_1.Args[0]
v.reset(OpARM64SUB)
v0 := b.NewValue0(v.Pos, OpARM64ADD, v.Type)
- v0.AddArg(x)
- v0.AddArg(z)
- v.AddArg(v0)
- v.AddArg(y)
+ v0.AddArg2(x, z)
+ v.AddArg2(v0, y)
return true
}
// match: (SUB (SUB x y) z)
@@ -21230,11 +20382,9 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
x := v_0.Args[0]
z := v_1
v.reset(OpARM64SUB)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64ADD, y.Type)
- v0.AddArg(y)
- v0.AddArg(z)
- v.AddArg(v0)
+ v0.AddArg2(y, z)
+ v.AddArg2(x, v0)
return true
}
// match: (SUB x0 x1:(SLLconst [c] y))
@@ -21253,8 +20403,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (SUB x0 x1:(SRLconst [c] y))
@@ -21273,8 +20422,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
// match: (SUB x0 x1:(SRAconst [c] y))
@@ -21293,8 +20441,7 @@ func rewriteValueARM64_OpARM64SUB(v *Value) bool {
}
v.reset(OpARM64SUBshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
return false
@@ -21499,8 +20646,7 @@ func rewriteValueARM64_OpARM64TST(v *Value) bool {
}
v.reset(OpARM64TSTshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -21522,8 +20668,7 @@ func rewriteValueARM64_OpARM64TST(v *Value) bool {
}
v.reset(OpARM64TSTshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -21545,8 +20690,7 @@ func rewriteValueARM64_OpARM64TST(v *Value) bool {
}
v.reset(OpARM64TSTshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -21999,12 +21143,9 @@ func rewriteValueARM64_OpARM64UMOD(v *Value) bool {
y := v_1
v.reset(OpARM64MSUB)
v.Type = typ.UInt64
- v.AddArg(x)
- v.AddArg(y)
v0 := b.NewValue0(v.Pos, OpARM64UDIV, typ.UInt64)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
+ v.AddArg3(x, y, v0)
return true
}
// match: (UMOD _ (MOVDconst [1]))
@@ -22066,12 +21207,9 @@ func rewriteValueARM64_OpARM64UMODW(v *Value) bool {
y := v_1
v.reset(OpARM64MSUBW)
v.Type = typ.UInt32
- v.AddArg(x)
- v.AddArg(y)
v0 := b.NewValue0(v.Pos, OpARM64UDIVW, typ.UInt32)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
+ v.AddArg3(x, y, v0)
return true
}
// match: (UMODW _ (MOVDconst [c]))
@@ -22165,8 +21303,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
}
y := v_1.Args[0]
v.reset(OpARM64EON)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -22188,8 +21325,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
}
v.reset(OpARM64XORshiftLL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -22211,8 +21347,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
}
v.reset(OpARM64XORshiftRL)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -22234,8 +21369,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
}
v.reset(OpARM64XORshiftRA)
v.AuxInt = c
- v.AddArg(x0)
- v.AddArg(y)
+ v.AddArg2(x0, y)
return true
}
break
@@ -22303,10 +21437,9 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -22374,8 +21507,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
continue
}
v.reset(OpARM64ROR)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -22444,10 +21576,9 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, t)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
break
@@ -22519,8 +21650,7 @@ func rewriteValueARM64_OpARM64XOR(v *Value) bool {
continue
}
v.reset(OpARM64RORW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -22693,8 +21823,7 @@ func rewriteValueARM64_OpARM64XORshiftLL(v *Value) bool {
x2 := v_1
v.reset(OpARM64EXTRconst)
v.AuxInt = 64 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
// match: (XORshiftLL <t> [c] (UBFX [bfc] x) x2)
@@ -22714,8 +21843,7 @@ func rewriteValueARM64_OpARM64XORshiftLL(v *Value) bool {
}
v.reset(OpARM64EXTRWconst)
v.AuxInt = 32 - c
- v.AddArg(x2)
- v.AddArg(x)
+ v.AddArg2(x2, x)
return true
}
return false
@@ -22876,9 +22004,7 @@ func rewriteValueARM64_OpAtomicAnd8(v *Value) bool {
mem := v_2
v.reset(OpSelect1)
v0 := b.NewValue0(v.Pos, OpARM64LoweredAtomicAnd8, types.NewTuple(typ.UInt8, types.TypeMem))
- v0.AddArg(ptr)
- v0.AddArg(val)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, val, mem)
v.AddArg(v0)
return true
}
@@ -22897,9 +22023,7 @@ func rewriteValueARM64_OpAtomicOr8(v *Value) bool {
mem := v_2
v.reset(OpSelect1)
v0 := b.NewValue0(v.Pos, OpARM64LoweredAtomicOr8, types.NewTuple(typ.UInt8, types.TypeMem))
- v0.AddArg(ptr)
- v0.AddArg(val)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, val, mem)
v.AddArg(v0)
return true
}
@@ -22918,11 +22042,9 @@ func rewriteValueARM64_OpAvg64u(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRLconst, t)
v0.AuxInt = 1
v1 := b.NewValue0(v.Pos, OpARM64SUB, t)
- v1.AddArg(x)
- v1.AddArg(y)
+ v1.AddArg2(x, y)
v0.AddArg(v1)
- v.AddArg(v0)
- v.AddArg(y)
+ v.AddArg2(v0, y)
return true
}
}
@@ -22937,10 +22059,9 @@ func rewriteValueARM64_OpBitLen32(v *Value) bool {
v.reset(OpARM64SUB)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 32
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CLZW, typ.Int)
v1.AddArg(x)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -22955,10 +22076,9 @@ func rewriteValueARM64_OpBitLen64(v *Value) bool {
v.reset(OpARM64SUB)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 64
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CLZ, typ.Int)
v1.AddArg(x)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23011,9 +22131,7 @@ func rewriteValueARM64_OpCondSelect(v *Value) bool {
}
v.reset(OpARM64CSEL)
v.Aux = boolval.Op
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(flagArg(boolval))
+ v.AddArg3(x, y, flagArg(boolval))
return true
}
// match: (CondSelect x y boolval)
@@ -23028,12 +22146,10 @@ func rewriteValueARM64_OpCondSelect(v *Value) bool {
}
v.reset(OpARM64CSEL)
v.Aux = OpARM64NotEqual
- v.AddArg(x)
- v.AddArg(y)
v0 := b.NewValue0(v.Pos, OpARM64CMPWconst, types.TypeFlags)
v0.AuxInt = 0
v0.AddArg(boolval)
- v.AddArg(v0)
+ v.AddArg3(x, y, v0)
return true
}
return false
@@ -23130,10 +22246,9 @@ func rewriteValueARM64_OpDiv16(v *Value) bool {
v.reset(OpARM64DIVW)
v0 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23150,10 +22265,9 @@ func rewriteValueARM64_OpDiv16u(v *Value) bool {
v.reset(OpARM64UDIVW)
v0 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23170,10 +22284,9 @@ func rewriteValueARM64_OpDiv8(v *Value) bool {
v.reset(OpARM64DIVW)
v0 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23190,10 +22303,9 @@ func rewriteValueARM64_OpDiv8u(v *Value) bool {
v.reset(OpARM64UDIVW)
v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23211,10 +22323,9 @@ func rewriteValueARM64_OpEq16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23230,8 +22341,7 @@ func rewriteValueARM64_OpEq32(v *Value) bool {
y := v_1
v.reset(OpARM64Equal)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23247,8 +22357,7 @@ func rewriteValueARM64_OpEq32F(v *Value) bool {
y := v_1
v.reset(OpARM64Equal)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23264,8 +22373,7 @@ func rewriteValueARM64_OpEq64(v *Value) bool {
y := v_1
v.reset(OpARM64Equal)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23281,8 +22389,7 @@ func rewriteValueARM64_OpEq64F(v *Value) bool {
y := v_1
v.reset(OpARM64Equal)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23301,10 +22408,9 @@ func rewriteValueARM64_OpEq8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23322,11 +22428,9 @@ func rewriteValueARM64_OpEqB(v *Value) bool {
v.reset(OpARM64XOR)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 1
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64XOR, typ.Bool)
- v1.AddArg(x)
- v1.AddArg(y)
- v.AddArg(v1)
+ v1.AddArg2(x, y)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -23341,8 +22445,7 @@ func rewriteValueARM64_OpEqPtr(v *Value) bool {
y := v_1
v.reset(OpARM64Equal)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23358,9 +22461,7 @@ func rewriteValueARM64_OpFMA(v *Value) bool {
y := v_1
z := v_2
v.reset(OpARM64FMADDD)
- v.AddArg(z)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg3(z, x, y)
return true
}
}
@@ -23375,8 +22476,7 @@ func rewriteValueARM64_OpGeq32F(v *Value) bool {
y := v_1
v.reset(OpARM64GreaterEqualF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23392,8 +22492,7 @@ func rewriteValueARM64_OpGeq64F(v *Value) bool {
y := v_1
v.reset(OpARM64GreaterEqualF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23409,8 +22508,7 @@ func rewriteValueARM64_OpGreater32F(v *Value) bool {
y := v_1
v.reset(OpARM64GreaterThanF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23426,8 +22524,7 @@ func rewriteValueARM64_OpGreater64F(v *Value) bool {
y := v_1
v.reset(OpARM64GreaterThanF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23445,8 +22542,7 @@ func rewriteValueARM64_OpHmul32(v *Value) bool {
v.reset(OpARM64SRAconst)
v.AuxInt = 32
v0 := b.NewValue0(v.Pos, OpARM64MULL, typ.Int64)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23464,8 +22560,7 @@ func rewriteValueARM64_OpHmul32u(v *Value) bool {
v.reset(OpARM64SRAconst)
v.AuxInt = 32
v0 := b.NewValue0(v.Pos, OpARM64UMULL, typ.UInt64)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23481,8 +22576,7 @@ func rewriteValueARM64_OpIsInBounds(v *Value) bool {
len := v_1
v.reset(OpARM64LessThanU)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(idx)
- v0.AddArg(len)
+ v0.AddArg2(idx, len)
v.AddArg(v0)
return true
}
@@ -23513,8 +22607,7 @@ func rewriteValueARM64_OpIsSliceInBounds(v *Value) bool {
len := v_1
v.reset(OpARM64LessEqualU)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(idx)
- v0.AddArg(len)
+ v0.AddArg2(idx, len)
v.AddArg(v0)
return true
}
@@ -23533,10 +22626,9 @@ func rewriteValueARM64_OpLeq16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23555,10 +22647,9 @@ func rewriteValueARM64_OpLeq16U(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23574,8 +22665,7 @@ func rewriteValueARM64_OpLeq32(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqual)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23591,8 +22681,7 @@ func rewriteValueARM64_OpLeq32F(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqualF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23608,8 +22697,7 @@ func rewriteValueARM64_OpLeq32U(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqualU)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23625,8 +22713,7 @@ func rewriteValueARM64_OpLeq64(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqual)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23642,8 +22729,7 @@ func rewriteValueARM64_OpLeq64F(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqualF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23659,8 +22745,7 @@ func rewriteValueARM64_OpLeq64U(v *Value) bool {
y := v_1
v.reset(OpARM64LessEqualU)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23679,10 +22764,9 @@ func rewriteValueARM64_OpLeq8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23701,10 +22785,9 @@ func rewriteValueARM64_OpLeq8U(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23723,10 +22806,9 @@ func rewriteValueARM64_OpLess16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23745,10 +22827,9 @@ func rewriteValueARM64_OpLess16U(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23764,8 +22845,7 @@ func rewriteValueARM64_OpLess32(v *Value) bool {
y := v_1
v.reset(OpARM64LessThan)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23781,8 +22861,7 @@ func rewriteValueARM64_OpLess32F(v *Value) bool {
y := v_1
v.reset(OpARM64LessThanF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23798,8 +22877,7 @@ func rewriteValueARM64_OpLess32U(v *Value) bool {
y := v_1
v.reset(OpARM64LessThanU)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23815,8 +22893,7 @@ func rewriteValueARM64_OpLess64(v *Value) bool {
y := v_1
v.reset(OpARM64LessThan)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23832,8 +22909,7 @@ func rewriteValueARM64_OpLess64F(v *Value) bool {
y := v_1
v.reset(OpARM64LessThanF)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23849,8 +22925,7 @@ func rewriteValueARM64_OpLess64U(v *Value) bool {
y := v_1
v.reset(OpARM64LessThanU)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -23869,10 +22944,9 @@ func rewriteValueARM64_OpLess8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23891,10 +22965,9 @@ func rewriteValueARM64_OpLess8U(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -23913,8 +22986,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVBUload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -23928,8 +23000,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVBload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -23943,8 +23014,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVBUload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -23958,8 +23028,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVHload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -23973,8 +23042,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVHUload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -23988,8 +23056,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVWload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -24003,8 +23070,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVWUload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -24018,8 +23084,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64MOVDload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -24033,8 +23098,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64FMOVSload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -24048,8 +23112,7 @@ func rewriteValueARM64_OpLoad(v *Value) bool {
break
}
v.reset(OpARM64FMOVDload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -24081,20 +23144,17 @@ func rewriteValueARM64_OpLsh16x16(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24112,20 +23172,17 @@ func rewriteValueARM64_OpLsh16x32(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24142,16 +23199,13 @@ func rewriteValueARM64_OpLsh16x64(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, OpConst64, t)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v.AddArg(v2)
+ v.AddArg3(v0, v1, v2)
return true
}
}
@@ -24169,20 +23223,17 @@ func rewriteValueARM64_OpLsh16x8(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24200,20 +23251,17 @@ func rewriteValueARM64_OpLsh32x16(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24231,20 +23279,17 @@ func rewriteValueARM64_OpLsh32x32(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24261,16 +23306,13 @@ func rewriteValueARM64_OpLsh32x64(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, OpConst64, t)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v.AddArg(v2)
+ v.AddArg3(v0, v1, v2)
return true
}
}
@@ -24288,20 +23330,17 @@ func rewriteValueARM64_OpLsh32x8(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24319,20 +23358,17 @@ func rewriteValueARM64_OpLsh64x16(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24350,20 +23386,17 @@ func rewriteValueARM64_OpLsh64x32(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24380,16 +23413,13 @@ func rewriteValueARM64_OpLsh64x64(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, OpConst64, t)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v.AddArg(v2)
+ v.AddArg3(v0, v1, v2)
return true
}
}
@@ -24407,20 +23437,17 @@ func rewriteValueARM64_OpLsh64x8(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24438,20 +23465,17 @@ func rewriteValueARM64_OpLsh8x16(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24469,20 +23493,17 @@ func rewriteValueARM64_OpLsh8x32(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24499,16 +23520,13 @@ func rewriteValueARM64_OpLsh8x64(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, OpConst64, t)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v.AddArg(v2)
+ v.AddArg3(v0, v1, v2)
return true
}
}
@@ -24526,20 +23544,17 @@ func rewriteValueARM64_OpLsh8x8(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SLL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -24556,10 +23571,9 @@ func rewriteValueARM64_OpMod16(v *Value) bool {
v.reset(OpARM64MODW)
v0 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -24576,10 +23590,9 @@ func rewriteValueARM64_OpMod16u(v *Value) bool {
v.reset(OpARM64UMODW)
v0 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -24596,10 +23609,9 @@ func rewriteValueARM64_OpMod8(v *Value) bool {
v.reset(OpARM64MODW)
v0 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -24616,10 +23628,9 @@ func rewriteValueARM64_OpMod8u(v *Value) bool {
v.reset(OpARM64UMODW)
v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -24652,12 +23663,9 @@ func rewriteValueARM64_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(OpARM64MOVBstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVBUload, typ.UInt8)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [2] dst src mem)
@@ -24670,12 +23678,9 @@ func rewriteValueARM64_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(OpARM64MOVHstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVHUload, typ.UInt16)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [4] dst src mem)
@@ -24688,12 +23693,9 @@ func rewriteValueARM64_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(OpARM64MOVWstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVWUload, typ.UInt32)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [8] dst src mem)
@@ -24706,12 +23708,9 @@ func rewriteValueARM64_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(OpARM64MOVDstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [3] dst src mem)
@@ -24725,20 +23724,14 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBstore)
v.AuxInt = 2
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVBUload, typ.UInt8)
v0.AuxInt = 2
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVHUload, typ.UInt16)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [5] dst src mem)
@@ -24752,20 +23745,14 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBstore)
v.AuxInt = 4
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVBUload, typ.UInt8)
v0.AuxInt = 4
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVWUload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [6] dst src mem)
@@ -24779,20 +23766,14 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVHstore)
v.AuxInt = 4
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVHUload, typ.UInt16)
v0.AuxInt = 4
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVWUload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [7] dst src mem)
@@ -24806,29 +23787,20 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVBstore)
v.AuxInt = 6
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVBUload, typ.UInt8)
v0.AuxInt = 6
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
v1.AuxInt = 4
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVHUload, typ.UInt16)
v2.AuxInt = 4
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
+ v2.AddArg2(src, mem)
v3 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v3.AddArg(dst)
v4 := b.NewValue0(v.Pos, OpARM64MOVWUload, typ.UInt32)
- v4.AddArg(src)
- v4.AddArg(mem)
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v4.AddArg2(src, mem)
+ v3.AddArg3(dst, v4, mem)
+ v1.AddArg3(dst, v2, v3)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [12] dst src mem)
@@ -24842,20 +23814,14 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVWstore)
v.AuxInt = 8
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVWUload, typ.UInt32)
v0.AuxInt = 8
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [16] dst src mem)
@@ -24869,20 +23835,14 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDstore)
v.AuxInt = 8
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
v0.AuxInt = 8
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [24] dst src mem)
@@ -24896,29 +23856,20 @@ func rewriteValueARM64_OpMove(v *Value) bool {
mem := v_2
v.reset(OpARM64MOVDstore)
v.AuxInt = 16
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
v0.AuxInt = 16
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
v1.AuxInt = 8
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
v2.AuxInt = 8
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
+ v2.AddArg2(src, mem)
v3 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v3.AddArg(dst)
v4 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
- v4.AddArg(src)
- v4.AddArg(mem)
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v4.AddArg2(src, mem)
+ v3.AddArg3(dst, v4, mem)
+ v1.AddArg3(dst, v2, v3)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [s] dst src mem)
@@ -24937,17 +23888,13 @@ func rewriteValueARM64_OpMove(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpOffPtr, dst.Type)
v0.AuxInt = s - s%8
v0.AddArg(dst)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpOffPtr, src.Type)
v1.AuxInt = s - s%8
v1.AddArg(src)
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpMove, types.TypeMem)
v2.AuxInt = s - s%8
- v2.AddArg(dst)
- v2.AddArg(src)
- v2.AddArg(mem)
- v.AddArg(v2)
+ v2.AddArg3(dst, src, mem)
+ v.AddArg3(v0, v1, v2)
return true
}
// match: (Move [s] dst src mem)
@@ -24963,18 +23910,13 @@ func rewriteValueARM64_OpMove(v *Value) bool {
}
v.reset(OpARM64MOVDstore)
v.AuxInt = s - 8
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, OpARM64MOVDload, typ.UInt64)
v0.AuxInt = s - 8
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, OpARM64DUFFCOPY, types.TypeMem)
v1.AuxInt = 8 * (64 - (s-8)/16)
- v1.AddArg(dst)
- v1.AddArg(src)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(dst, src, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [s] dst src mem)
@@ -24990,9 +23932,7 @@ func rewriteValueARM64_OpMove(v *Value) bool {
}
v.reset(OpARM64DUFFCOPY)
v.AuxInt = 8 * (64 - s/16)
- v.AddArg(dst)
- v.AddArg(src)
- v.AddArg(mem)
+ v.AddArg3(dst, src, mem)
return true
}
// match: (Move [s] dst src mem)
@@ -25007,13 +23947,10 @@ func rewriteValueARM64_OpMove(v *Value) bool {
break
}
v.reset(OpARM64LoweredMove)
- v.AddArg(dst)
- v.AddArg(src)
v0 := b.NewValue0(v.Pos, OpARM64ADDconst, src.Type)
v0.AuxInt = s - 8
v0.AddArg(src)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(dst, src, v0, mem)
return true
}
return false
@@ -25032,10 +23969,9 @@ func rewriteValueARM64_OpNeq16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -25051,8 +23987,7 @@ func rewriteValueARM64_OpNeq32(v *Value) bool {
y := v_1
v.reset(OpARM64NotEqual)
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -25068,8 +24003,7 @@ func rewriteValueARM64_OpNeq32F(v *Value) bool {
y := v_1
v.reset(OpARM64NotEqual)
v0 := b.NewValue0(v.Pos, OpARM64FCMPS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -25085,8 +24019,7 @@ func rewriteValueARM64_OpNeq64(v *Value) bool {
y := v_1
v.reset(OpARM64NotEqual)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -25102,8 +24035,7 @@ func rewriteValueARM64_OpNeq64F(v *Value) bool {
y := v_1
v.reset(OpARM64NotEqual)
v0 := b.NewValue0(v.Pos, OpARM64FCMPD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -25122,10 +24054,9 @@ func rewriteValueARM64_OpNeq8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64CMPW, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32)
v2.AddArg(y)
- v0.AddArg(v2)
+ v0.AddArg2(v1, v2)
v.AddArg(v0)
return true
}
@@ -25141,8 +24072,7 @@ func rewriteValueARM64_OpNeqPtr(v *Value) bool {
y := v_1
v.reset(OpARM64NotEqual)
v0 := b.NewValue0(v.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -25158,8 +24088,7 @@ func rewriteValueARM64_OpNot(v *Value) bool {
v.reset(OpARM64XOR)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 1
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
}
@@ -25206,9 +24135,7 @@ func rewriteValueARM64_OpPanicBounds(v *Value) bool {
}
v.reset(OpARM64LoweredPanicBoundsA)
v.AuxInt = kind
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(mem)
+ v.AddArg3(x, y, mem)
return true
}
// match: (PanicBounds [kind] x y mem)
@@ -25224,9 +24151,7 @@ func rewriteValueARM64_OpPanicBounds(v *Value) bool {
}
v.reset(OpARM64LoweredPanicBoundsB)
v.AuxInt = kind
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(mem)
+ v.AddArg3(x, y, mem)
return true
}
// match: (PanicBounds [kind] x y mem)
@@ -25242,9 +24167,7 @@ func rewriteValueARM64_OpPanicBounds(v *Value) bool {
}
v.reset(OpARM64LoweredPanicBoundsC)
v.AuxInt = kind
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(mem)
+ v.AddArg3(x, y, mem)
return true
}
return false
@@ -25332,17 +24255,14 @@ func rewriteValueARM64_OpRotateLeft16(v *Value) bool {
c := v_1.AuxInt
v.reset(OpOr16)
v0 := b.NewValue0(v.Pos, OpLsh16x64, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = c & 15
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpRsh16Ux64, t)
- v2.AddArg(x)
v3 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v3.AuxInt = -c & 15
- v2.AddArg(v3)
- v.AddArg(v2)
+ v2.AddArg2(x, v3)
+ v.AddArg2(v0, v2)
return true
}
return false
@@ -25357,10 +24277,9 @@ func rewriteValueARM64_OpRotateLeft32(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64RORW)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, y.Type)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
}
@@ -25374,10 +24293,9 @@ func rewriteValueARM64_OpRotateLeft64(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64ROR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64NEG, y.Type)
v0.AddArg(y)
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
}
@@ -25397,17 +24315,14 @@ func rewriteValueARM64_OpRotateLeft8(v *Value) bool {
c := v_1.AuxInt
v.reset(OpOr8)
v0 := b.NewValue0(v.Pos, OpLsh8x64, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = c & 7
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpRsh8Ux64, t)
- v2.AddArg(x)
v3 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v3.AuxInt = -c & 7
- v2.AddArg(v3)
- v.AddArg(v2)
+ v2.AddArg2(x, v3)
+ v.AddArg2(v0, v2)
return true
}
return false
@@ -25428,20 +24343,17 @@ func rewriteValueARM64_OpRsh16Ux16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25461,20 +24373,17 @@ func rewriteValueARM64_OpRsh16Ux32(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25494,16 +24403,13 @@ func rewriteValueARM64_OpRsh16Ux64(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(v1, y)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -25523,20 +24429,17 @@ func rewriteValueARM64_OpRsh16Ux8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25553,22 +24456,19 @@ func rewriteValueARM64_OpRsh16x16(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt16to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25585,22 +24485,19 @@ func rewriteValueARM64_OpRsh16x32(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt16to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25617,18 +24514,15 @@ func rewriteValueARM64_OpRsh16x64(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt16to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
- v1.AddArg(y)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v1.AddArg3(y, v2, v3)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25645,22 +24539,19 @@ func rewriteValueARM64_OpRsh16x8(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt16to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25680,20 +24571,17 @@ func rewriteValueARM64_OpRsh32Ux16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25713,20 +24601,17 @@ func rewriteValueARM64_OpRsh32Ux32(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25746,16 +24631,13 @@ func rewriteValueARM64_OpRsh32Ux64(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(v1, y)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -25775,20 +24657,17 @@ func rewriteValueARM64_OpRsh32Ux8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -25805,22 +24684,19 @@ func rewriteValueARM64_OpRsh32x16(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt32to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25837,22 +24713,19 @@ func rewriteValueARM64_OpRsh32x32(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt32to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25869,18 +24742,15 @@ func rewriteValueARM64_OpRsh32x64(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt32to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
- v1.AddArg(y)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v1.AddArg3(y, v2, v3)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25897,22 +24767,19 @@ func rewriteValueARM64_OpRsh32x8(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt32to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -25930,20 +24797,17 @@ func rewriteValueARM64_OpRsh64Ux16(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -25961,20 +24825,17 @@ func rewriteValueARM64_OpRsh64Ux32(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -25991,16 +24852,13 @@ func rewriteValueARM64_OpRsh64Ux64(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, OpConst64, t)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v.AddArg(v2)
+ v.AddArg3(v0, v1, v2)
return true
}
}
@@ -26018,20 +24876,17 @@ func rewriteValueARM64_OpRsh64Ux8(v *Value) bool {
v.reset(OpARM64CSEL)
v.Aux = OpARM64LessThanU
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
- v0.AddArg(x)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(x, v1)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -26046,22 +24901,19 @@ func rewriteValueARM64_OpRsh64x16(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64SRA)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v0.Aux = OpARM64LessThanU
v1 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v0.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v0.AddArg(v3)
- v.AddArg(v0)
+ v0.AddArg3(v1, v2, v3)
+ v.AddArg2(x, v0)
return true
}
}
@@ -26076,22 +24928,19 @@ func rewriteValueARM64_OpRsh64x32(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64SRA)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v0.Aux = OpARM64LessThanU
v1 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v0.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v0.AddArg(v3)
- v.AddArg(v0)
+ v0.AddArg3(v1, v2, v3)
+ v.AddArg2(x, v0)
return true
}
}
@@ -26105,18 +24954,15 @@ func rewriteValueARM64_OpRsh64x64(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64SRA)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v0.Aux = OpARM64LessThanU
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, OpConst64, y.Type)
v1.AuxInt = 63
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v2.AuxInt = 64
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg3(y, v1, v2)
+ v.AddArg2(x, v0)
return true
}
}
@@ -26131,22 +24977,19 @@ func rewriteValueARM64_OpRsh64x8(v *Value) bool {
x := v_0
y := v_1
v.reset(OpARM64SRA)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v0.Aux = OpARM64LessThanU
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(y)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v0.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v4 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v4.AddArg(y)
v3.AddArg(v4)
- v0.AddArg(v3)
- v.AddArg(v0)
+ v0.AddArg3(v1, v2, v3)
+ v.AddArg2(x, v0)
return true
}
}
@@ -26166,20 +25009,17 @@ func rewriteValueARM64_OpRsh8Ux16(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -26199,20 +25039,17 @@ func rewriteValueARM64_OpRsh8Ux32(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -26232,16 +25069,13 @@ func rewriteValueARM64_OpRsh8Ux64(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(v1, y)
v2 := b.NewValue0(v.Pos, OpConst64, t)
v2.AuxInt = 0
- v.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v.AddArg(v3)
+ v.AddArg3(v0, v2, v3)
return true
}
}
@@ -26261,20 +25095,17 @@ func rewriteValueARM64_OpRsh8Ux8(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64SRL, t)
v1 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v1.AddArg(x)
- v0.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v0.AddArg(v2)
- v.AddArg(v0)
+ v0.AddArg2(v1, v2)
v3 := b.NewValue0(v.Pos, OpConst64, t)
v3.AuxInt = 0
- v.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v.AddArg(v4)
+ v.AddArg3(v0, v3, v4)
return true
}
}
@@ -26291,22 +25122,19 @@ func rewriteValueARM64_OpRsh8x16(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt8to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt16to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -26323,22 +25151,19 @@ func rewriteValueARM64_OpRsh8x32(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt8to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt32to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -26355,18 +25180,15 @@ func rewriteValueARM64_OpRsh8x64(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt8to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
- v1.AddArg(y)
v2 := b.NewValue0(v.Pos, OpConst64, y.Type)
v2.AuxInt = 63
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v3.AuxInt = 64
v3.AddArg(y)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v1.AddArg3(y, v2, v3)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -26383,22 +25205,19 @@ func rewriteValueARM64_OpRsh8x8(v *Value) bool {
v.reset(OpARM64SRA)
v0 := b.NewValue0(v.Pos, OpSignExt8to64, typ.Int64)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64CSEL, y.Type)
v1.Aux = OpARM64LessThanU
v2 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v2.AddArg(y)
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpConst64, y.Type)
v3.AuxInt = 63
- v1.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64CMPconst, types.TypeFlags)
v4.AuxInt = 64
v5 := b.NewValue0(v.Pos, OpZeroExt8to64, typ.UInt64)
v5.AddArg(y)
v4.AddArg(v5)
- v1.AddArg(v4)
- v.AddArg(v1)
+ v1.AddArg3(v2, v3, v4)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -26418,14 +25237,12 @@ func rewriteValueARM64_OpSelect0(v *Value) bool {
v.reset(OpSelect0)
v.Type = typ.UInt64
v0 := b.NewValue0(v.Pos, OpARM64ADCSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
- v0.AddArg(x)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v2 := b.NewValue0(v.Pos, OpARM64ADDSconstflags, types.NewTuple(typ.UInt64, types.TypeFlags))
v2.AuxInt = -1
v2.AddArg(c)
v1.AddArg(v2)
- v0.AddArg(v1)
+ v0.AddArg3(x, y, v1)
v.AddArg(v0)
return true
}
@@ -26441,13 +25258,11 @@ func rewriteValueARM64_OpSelect0(v *Value) bool {
v.reset(OpSelect0)
v.Type = typ.UInt64
v0 := b.NewValue0(v.Pos, OpARM64SBCSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
- v0.AddArg(x)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v2 := b.NewValue0(v.Pos, OpARM64NEGSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
v2.AddArg(bo)
v1.AddArg(v2)
- v0.AddArg(v1)
+ v0.AddArg3(x, y, v1)
v.AddArg(v0)
return true
}
@@ -26470,14 +25285,12 @@ func rewriteValueARM64_OpSelect1(v *Value) bool {
v.Type = typ.UInt64
v0 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v1 := b.NewValue0(v.Pos, OpARM64ADCSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
- v1.AddArg(x)
- v1.AddArg(y)
v2 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v3 := b.NewValue0(v.Pos, OpARM64ADDSconstflags, types.NewTuple(typ.UInt64, types.TypeFlags))
v3.AuxInt = -1
v3.AddArg(c)
v2.AddArg(v3)
- v1.AddArg(v2)
+ v1.AddArg3(x, y, v2)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -26496,13 +25309,11 @@ func rewriteValueARM64_OpSelect1(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpARM64NGCzerocarry, typ.UInt64)
v1 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v2 := b.NewValue0(v.Pos, OpARM64SBCSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
- v2.AddArg(x)
- v2.AddArg(y)
v3 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v4 := b.NewValue0(v.Pos, OpARM64NEGSflags, types.NewTuple(typ.UInt64, types.TypeFlags))
v4.AddArg(bo)
v3.AddArg(v4)
- v2.AddArg(v3)
+ v2.AddArg3(x, y, v3)
v1.AddArg(v2)
v0.AddArg(v1)
v.AddArg(v0)
@@ -26542,9 +25353,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64MOVBstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -26559,9 +25368,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64MOVHstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -26576,9 +25383,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64MOVWstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -26593,9 +25398,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64MOVDstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -26610,9 +25413,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64FMOVSstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -26627,9 +25428,7 @@ func rewriteValueARM64_OpStore(v *Value) bool {
break
}
v.reset(OpARM64FMOVDstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
return false
@@ -26661,11 +25460,9 @@ func rewriteValueARM64_OpZero(v *Value) bool {
ptr := v_0
mem := v_1
v.reset(OpARM64MOVBstore)
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (Zero [2] ptr mem)
@@ -26677,11 +25474,9 @@ func rewriteValueARM64_OpZero(v *Value) bool {
ptr := v_0
mem := v_1
v.reset(OpARM64MOVHstore)
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (Zero [4] ptr mem)
@@ -26693,11 +25488,9 @@ func rewriteValueARM64_OpZero(v *Value) bool {
ptr := v_0
mem := v_1
v.reset(OpARM64MOVWstore)
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (Zero [8] ptr mem)
@@ -26709,11 +25502,9 @@ func rewriteValueARM64_OpZero(v *Value) bool {
ptr := v_0
mem := v_1
v.reset(OpARM64MOVDstore)
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
// match: (Zero [3] ptr mem)
@@ -26726,17 +25517,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 2
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [5] ptr mem)
@@ -26749,17 +25536,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 4
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [6] ptr mem)
@@ -26772,17 +25555,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVHstore)
v.AuxInt = 4
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [7] ptr mem)
@@ -26795,24 +25574,18 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 6
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
v1.AuxInt = 4
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
- v3.AddArg(ptr)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v3.AddArg3(ptr, v4, mem)
+ v1.AddArg3(ptr, v2, v3)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [9] ptr mem)
@@ -26825,17 +25598,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 8
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [10] ptr mem)
@@ -26848,17 +25617,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVHstore)
v.AuxInt = 8
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [11] ptr mem)
@@ -26871,24 +25636,18 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 10
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
v1.AuxInt = 8
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v3.AddArg(ptr)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v3.AddArg3(ptr, v4, mem)
+ v1.AddArg3(ptr, v2, v3)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [12] ptr mem)
@@ -26901,17 +25660,13 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVWstore)
v.AuxInt = 8
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg3(ptr, v2, mem)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [13] ptr mem)
@@ -26924,24 +25679,18 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 12
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
v1.AuxInt = 8
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v3.AddArg(ptr)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v3.AddArg3(ptr, v4, mem)
+ v1.AddArg3(ptr, v2, v3)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [14] ptr mem)
@@ -26954,24 +25703,18 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVHstore)
v.AuxInt = 12
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
v1.AuxInt = 8
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v3.AddArg(ptr)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v3.AddArg(v4)
- v3.AddArg(mem)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v3.AddArg3(ptr, v4, mem)
+ v1.AddArg3(ptr, v2, v3)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [15] ptr mem)
@@ -26984,31 +25727,23 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64MOVBstore)
v.AuxInt = 14
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVHstore, types.TypeMem)
v1.AuxInt = 12
- v1.AddArg(ptr)
v2 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v2.AuxInt = 0
- v1.AddArg(v2)
v3 := b.NewValue0(v.Pos, OpARM64MOVWstore, types.TypeMem)
v3.AuxInt = 8
- v3.AddArg(ptr)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v3.AddArg(v4)
v5 := b.NewValue0(v.Pos, OpARM64MOVDstore, types.TypeMem)
- v5.AddArg(ptr)
v6 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v6.AuxInt = 0
- v5.AddArg(v6)
- v5.AddArg(mem)
- v3.AddArg(v5)
- v1.AddArg(v3)
- v.AddArg(v1)
+ v5.AddArg3(ptr, v6, mem)
+ v3.AddArg3(ptr, v4, v5)
+ v1.AddArg3(ptr, v2, v3)
+ v.AddArg3(ptr, v0, v1)
return true
}
// match: (Zero [16] ptr mem)
@@ -27021,14 +25756,11 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64STP)
v.AuxInt = 0
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = 0
- v.AddArg(v1)
- v.AddArg(mem)
+ v.AddArg4(ptr, v0, v1, mem)
return true
}
// match: (Zero [32] ptr mem)
@@ -27041,24 +25773,18 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64STP)
v.AuxInt = 16
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v2.AuxInt = 0
- v2.AddArg(ptr)
v3 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v3.AuxInt = 0
- v2.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v2.AddArg(v4)
- v2.AddArg(mem)
- v.AddArg(v2)
+ v2.AddArg4(ptr, v3, v4, mem)
+ v.AddArg4(ptr, v0, v1, v2)
return true
}
// match: (Zero [48] ptr mem)
@@ -27071,34 +25797,25 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64STP)
v.AuxInt = 32
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v2.AuxInt = 16
- v2.AddArg(ptr)
v3 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v3.AuxInt = 0
- v2.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v2.AddArg(v4)
v5 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v5.AuxInt = 0
- v5.AddArg(ptr)
v6 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v6.AuxInt = 0
- v5.AddArg(v6)
v7 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v7.AuxInt = 0
- v5.AddArg(v7)
- v5.AddArg(mem)
- v2.AddArg(v5)
- v.AddArg(v2)
+ v5.AddArg4(ptr, v6, v7, mem)
+ v2.AddArg4(ptr, v3, v4, v5)
+ v.AddArg4(ptr, v0, v1, v2)
return true
}
// match: (Zero [64] ptr mem)
@@ -27111,44 +25828,32 @@ func rewriteValueARM64_OpZero(v *Value) bool {
mem := v_1
v.reset(OpARM64STP)
v.AuxInt = 48
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v0.AuxInt = 0
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v1.AuxInt = 0
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v2.AuxInt = 32
- v2.AddArg(ptr)
v3 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v3.AuxInt = 0
- v2.AddArg(v3)
v4 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v4.AuxInt = 0
- v2.AddArg(v4)
v5 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v5.AuxInt = 16
- v5.AddArg(ptr)
v6 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v6.AuxInt = 0
- v5.AddArg(v6)
v7 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v7.AuxInt = 0
- v5.AddArg(v7)
v8 := b.NewValue0(v.Pos, OpARM64STP, types.TypeMem)
v8.AuxInt = 0
- v8.AddArg(ptr)
v9 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v9.AuxInt = 0
- v8.AddArg(v9)
v10 := b.NewValue0(v.Pos, OpARM64MOVDconst, typ.UInt64)
v10.AuxInt = 0
- v8.AddArg(v10)
- v8.AddArg(mem)
- v5.AddArg(v8)
- v2.AddArg(v5)
- v.AddArg(v2)
+ v8.AddArg4(ptr, v9, v10, mem)
+ v5.AddArg4(ptr, v6, v7, v8)
+ v2.AddArg4(ptr, v3, v4, v5)
+ v.AddArg4(ptr, v0, v1, v2)
return true
}
// match: (Zero [s] ptr mem)
@@ -27166,12 +25871,10 @@ func rewriteValueARM64_OpZero(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpOffPtr, ptr.Type)
v0.AuxInt = s - 8
v0.AddArg(ptr)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZero, types.TypeMem)
v1.AuxInt = s - s%16
- v1.AddArg(ptr)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg2(ptr, mem)
+ v.AddArg2(v0, v1)
return true
}
// match: (Zero [s] ptr mem)
@@ -27189,12 +25892,10 @@ func rewriteValueARM64_OpZero(v *Value) bool {
v0 := b.NewValue0(v.Pos, OpOffPtr, ptr.Type)
v0.AuxInt = s - 16
v0.AddArg(ptr)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZero, types.TypeMem)
v1.AuxInt = s - s%16
- v1.AddArg(ptr)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg2(ptr, mem)
+ v.AddArg2(v0, v1)
return true
}
// match: (Zero [s] ptr mem)
@@ -27209,8 +25910,7 @@ func rewriteValueARM64_OpZero(v *Value) bool {
}
v.reset(OpARM64DUFFZERO)
v.AuxInt = 4 * (64 - s/16)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Zero [s] ptr mem)
@@ -27224,12 +25924,10 @@ func rewriteValueARM64_OpZero(v *Value) bool {
break
}
v.reset(OpARM64LoweredZero)
- v.AddArg(ptr)
v0 := b.NewValue0(v.Pos, OpARM64ADDconst, ptr.Type)
v0.AuxInt = s - 16
v0.AddArg(ptr)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(ptr, v0, mem)
return true
}
return false
@@ -27284,8 +25982,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27314,8 +26011,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27416,8 +26112,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27446,8 +26141,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27470,8 +26164,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27492,8 +26185,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27541,11 +26233,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -27569,11 +26259,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -27597,11 +26285,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -27625,11 +26311,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64EQ)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -27794,8 +26478,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27824,8 +26507,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27926,8 +26608,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27956,8 +26637,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -27980,8 +26660,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28002,8 +26681,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28027,11 +26705,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28055,11 +26731,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28083,11 +26757,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28111,11 +26783,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28234,8 +26904,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28264,8 +26933,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28366,8 +27034,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28396,8 +27063,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28420,8 +27086,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28442,8 +27107,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28467,11 +27131,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28495,11 +27157,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28523,11 +27183,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28551,11 +27209,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64GT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -28784,8 +27440,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28814,8 +27469,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28916,8 +27570,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28946,8 +27599,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28970,8 +27622,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -28992,8 +27643,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29017,11 +27667,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29045,11 +27693,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29073,11 +27719,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29101,11 +27745,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29198,8 +27840,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29228,8 +27869,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29330,8 +27970,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29360,8 +27999,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29384,8 +28022,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29406,8 +28043,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29431,11 +28067,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29459,11 +28093,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29487,11 +28119,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29515,11 +28145,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64LT)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29639,8 +28267,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64TST, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29669,8 +28296,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64TSTW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29771,8 +28397,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29801,8 +28426,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29825,8 +28449,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29847,8 +28470,7 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
b.AddControl(v0)
return true
}
@@ -29896,11 +28518,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMN, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29924,11 +28544,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMP, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MUL, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29952,11 +28570,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMNW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}
@@ -29980,11 +28596,9 @@ func rewriteBlockARM64(b *Block) bool {
}
b.Reset(BlockARM64NE)
v0 := b.NewValue0(v_0.Pos, OpARM64CMPW, types.TypeFlags)
- v0.AddArg(a)
v1 := b.NewValue0(v_0.Pos, OpARM64MULW, x.Type)
- v1.AddArg(x)
- v1.AddArg(y)
- v0.AddArg(v1)
+ v1.AddArg2(x, y)
+ v0.AddArg2(a, v1)
b.AddControl(v0)
return true
}