diff options
author | Josh Bleecher Snyder <josharian@gmail.com> | 2020-02-26 11:29:34 -0800 |
---|---|---|
committer | Josh Bleecher Snyder <josharian@gmail.com> | 2020-03-01 15:27:58 +0000 |
commit | 7913f7dfcf2c281b99c6ddd278aa851de47ada9d (patch) | |
tree | 8a34c42a6e16c5c7864d49030ed474dddff2ff82 /src/cmd/compile/internal/ssa/rewriteARM.go | |
parent | a908e09a34fff3c47efab69857d27bf6965b948a (diff) | |
download | go-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/rewriteARM.go')
-rw-r--r-- | src/cmd/compile/internal/ssa/rewriteARM.go | 2747 |
1 files changed, 818 insertions, 1929 deletions
diff --git a/src/cmd/compile/internal/ssa/rewriteARM.go b/src/cmd/compile/internal/ssa/rewriteARM.go index 6849fecc2a..5be3e34dcb 100644 --- a/src/cmd/compile/internal/ssa/rewriteARM.go +++ b/src/cmd/compile/internal/ssa/rewriteARM.go @@ -918,8 +918,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { flags := v_2 v.reset(OpARMADCconst) v.AuxInt = c - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } break @@ -937,9 +936,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { flags := v_2 v.reset(OpARMADCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } break @@ -957,9 +954,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { flags := v_2 v.reset(OpARMADCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } break @@ -977,9 +972,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { flags := v_2 v.reset(OpARMADCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } break @@ -996,10 +989,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMADCshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } break @@ -1016,10 +1006,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMADCshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } break @@ -1036,10 +1023,7 @@ func rewriteValueARM_OpARMADC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMADCshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } break @@ -1061,8 +1045,7 @@ func rewriteValueARM_OpARMADCconst(v *Value) bool { flags := v_1 v.reset(OpARMADCconst) v.AuxInt = int64(int32(c + d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } // match: (ADCconst [c] (SUBconst [d] x) flags) @@ -1077,8 +1060,7 @@ func rewriteValueARM_OpARMADCconst(v *Value) bool { flags := v_1 v.reset(OpARMADCconst) v.AuxInt = int64(int32(c - d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -1103,8 +1085,7 @@ func rewriteValueARM_OpARMADCshiftLL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (ADCshiftLL x (MOVWconst [c]) [d] flags) @@ -1119,8 +1100,7 @@ func rewriteValueARM_OpARMADCshiftLL(v *Value) bool { flags := v_2 v.reset(OpARMADCconst) v.AuxInt = int64(int32(uint32(c) << uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -1144,10 +1124,8 @@ func rewriteValueARM_OpARMADCshiftLLreg(v *Value) bool { v.reset(OpARMADCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (ADCshiftLLreg x y (MOVWconst [c]) flags) @@ -1162,9 +1140,7 @@ func rewriteValueARM_OpARMADCshiftLLreg(v *Value) bool { flags := v_3 v.reset(OpARMADCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -1189,8 +1165,7 @@ func rewriteValueARM_OpARMADCshiftRA(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRAconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (ADCshiftRA x (MOVWconst [c]) [d] flags) @@ -1205,8 +1180,7 @@ func rewriteValueARM_OpARMADCshiftRA(v *Value) bool { flags := v_2 v.reset(OpARMADCconst) v.AuxInt = int64(int32(c) >> uint64(d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -1230,10 +1204,8 @@ func rewriteValueARM_OpARMADCshiftRAreg(v *Value) bool { v.reset(OpARMADCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (ADCshiftRAreg x y (MOVWconst [c]) flags) @@ -1248,9 +1220,7 @@ func rewriteValueARM_OpARMADCshiftRAreg(v *Value) bool { flags := v_3 v.reset(OpARMADCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -1275,8 +1245,7 @@ func rewriteValueARM_OpARMADCshiftRL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (ADCshiftRL x (MOVWconst [c]) [d] flags) @@ -1291,8 +1260,7 @@ func rewriteValueARM_OpARMADCshiftRL(v *Value) bool { flags := v_2 v.reset(OpARMADCconst) v.AuxInt = int64(int32(uint32(c) >> uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -1316,10 +1284,8 @@ func rewriteValueARM_OpARMADCshiftRLreg(v *Value) bool { v.reset(OpARMADCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (ADCshiftRLreg x y (MOVWconst [c]) flags) @@ -1334,9 +1300,7 @@ func rewriteValueARM_OpARMADCshiftRLreg(v *Value) bool { flags := v_3 v.reset(OpARMADCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -1373,8 +1337,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1391,8 +1354,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1409,8 +1371,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1426,9 +1387,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1444,9 +1403,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1462,9 +1419,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1479,8 +1434,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { } y := v_1.Args[0] v.reset(OpARMSUB) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1503,8 +1457,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { v.reset(OpARMRSBconst) v.AuxInt = c + d v0 := b.NewValue0(v.Pos, OpARMADD, t) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -1521,9 +1474,7 @@ func rewriteValueARM_OpARMADD(v *Value) bool { x := v_0.Args[0] a := v_1 v.reset(OpARMMULA) - v.AddArg(x) - v.AddArg(y) - v.AddArg(a) + v.AddArg3(x, y, a) return true } break @@ -1548,9 +1499,7 @@ func rewriteValueARM_OpARMADDD(v *Value) bool { continue } v.reset(OpARMMULAD) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } break @@ -1570,9 +1519,7 @@ func rewriteValueARM_OpARMADDD(v *Value) bool { continue } v.reset(OpARMMULSD) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } break @@ -1597,9 +1544,7 @@ func rewriteValueARM_OpARMADDF(v *Value) bool { continue } v.reset(OpARMMULAF) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } break @@ -1619,9 +1564,7 @@ func rewriteValueARM_OpARMADDF(v *Value) bool { continue } v.reset(OpARMMULSF) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } break @@ -1659,8 +1602,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1677,8 +1619,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1695,8 +1636,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMADDSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -1712,9 +1652,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDSshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1730,9 +1668,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDSshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1748,9 +1684,7 @@ func rewriteValueARM_OpARMADDS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMADDSshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -1811,8 +1745,7 @@ func rewriteValueARM_OpARMADDSshiftLLreg(v *Value) bool { v.reset(OpARMADDSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -1827,8 +1760,7 @@ func rewriteValueARM_OpARMADDSshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -1887,8 +1819,7 @@ func rewriteValueARM_OpARMADDSshiftRAreg(v *Value) bool { v.reset(OpARMADDSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -1903,8 +1834,7 @@ func rewriteValueARM_OpARMADDSshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -1963,8 +1893,7 @@ func rewriteValueARM_OpARMADDSshiftRLreg(v *Value) bool { v.reset(OpARMADDSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -1979,8 +1908,7 @@ func rewriteValueARM_OpARMADDSshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2203,8 +2131,7 @@ func rewriteValueARM_OpARMADDshiftLLreg(v *Value) bool { v.reset(OpARMADDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2219,8 +2146,7 @@ func rewriteValueARM_OpARMADDshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2279,8 +2205,7 @@ func rewriteValueARM_OpARMADDshiftRAreg(v *Value) bool { v.reset(OpARMADDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2295,8 +2220,7 @@ func rewriteValueARM_OpARMADDshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2371,8 +2295,7 @@ func rewriteValueARM_OpARMADDshiftRLreg(v *Value) bool { v.reset(OpARMADDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2387,8 +2310,7 @@ func rewriteValueARM_OpARMADDshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMADDshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2424,8 +2346,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMANDshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2442,8 +2363,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMANDshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2460,8 +2380,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMANDshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2477,9 +2396,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMANDshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -2495,9 +2412,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMANDshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -2513,9 +2428,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMANDshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -2542,8 +2455,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { } y := v_1.Args[0] v.reset(OpARMBIC) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2560,8 +2472,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2578,8 +2489,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2596,8 +2506,7 @@ func rewriteValueARM_OpARMAND(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -2759,8 +2668,7 @@ func rewriteValueARM_OpARMANDshiftLLreg(v *Value) bool { v.reset(OpARMANDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2775,8 +2683,7 @@ func rewriteValueARM_OpARMANDshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMANDshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2854,8 +2761,7 @@ func rewriteValueARM_OpARMANDshiftRAreg(v *Value) bool { v.reset(OpARMANDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2870,8 +2776,7 @@ func rewriteValueARM_OpARMANDshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMANDshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -2949,8 +2854,7 @@ func rewriteValueARM_OpARMANDshiftRLreg(v *Value) bool { v.reset(OpARMANDconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -2965,8 +2869,7 @@ func rewriteValueARM_OpARMANDshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMANDshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3030,8 +2933,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (BIC x (SRLconst [c] y)) @@ -3045,8 +2947,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (BIC x (SRAconst [c] y)) @@ -3060,8 +2961,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { y := v_1.Args[0] v.reset(OpARMBICshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (BIC x (SLL y z)) @@ -3074,9 +2974,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMBICshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (BIC x (SRL y z)) @@ -3089,9 +2987,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMBICshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (BIC x (SRA y z)) @@ -3104,9 +3000,7 @@ func rewriteValueARM_OpARMBIC(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMBICshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (BIC x x) @@ -3255,8 +3149,7 @@ func rewriteValueARM_OpARMBICshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMBICshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3312,8 +3205,7 @@ func rewriteValueARM_OpARMBICshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMBICshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3369,8 +3261,7 @@ func rewriteValueARM_OpARMBICshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMBICshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3406,8 +3297,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMNshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -3424,8 +3314,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMNshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -3442,8 +3331,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMNshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -3459,9 +3347,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMNshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -3477,9 +3363,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMNshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -3495,9 +3379,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMNshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -3512,8 +3394,7 @@ func rewriteValueARM_OpARMCMN(v *Value) bool { } y := v_1.Args[0] v.reset(OpARMCMP) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -3653,8 +3534,7 @@ func rewriteValueARM_OpARMCMNshiftLLreg(v *Value) bool { v.reset(OpARMCMNconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -3669,8 +3549,7 @@ func rewriteValueARM_OpARMCMNshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMNshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3729,8 +3608,7 @@ func rewriteValueARM_OpARMCMNshiftRAreg(v *Value) bool { v.reset(OpARMCMNconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -3745,8 +3623,7 @@ func rewriteValueARM_OpARMCMNshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMNshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3805,8 +3682,7 @@ func rewriteValueARM_OpARMCMNshiftRLreg(v *Value) bool { v.reset(OpARMCMNconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -3821,8 +3697,7 @@ func rewriteValueARM_OpARMCMNshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMNshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -3898,8 +3773,7 @@ func rewriteValueARM_OpARMCMOVWHSconst(v *Value) bool { flags := v_1.Args[0] v.reset(OpARMCMOVWLSconst) v.AuxInt = c - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -3975,8 +3849,7 @@ func rewriteValueARM_OpARMCMOVWLSconst(v *Value) bool { flags := v_1.Args[0] v.reset(OpARMCMOVWHSconst) v.AuxInt = c - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -4024,8 +3897,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { } v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(y) - v0.AddArg(x) + v0.AddArg2(y, x) v.AddArg(v0) return true } @@ -4040,8 +3912,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMPshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (CMP (SLLconst [c] y) x) @@ -4056,8 +3927,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -4072,8 +3942,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMPshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (CMP (SRLconst [c] y) x) @@ -4088,8 +3957,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -4104,8 +3972,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { y := v_1.Args[0] v.reset(OpARMCMPshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (CMP (SRAconst [c] y) x) @@ -4120,8 +3987,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -4135,9 +4001,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMPshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (CMP (SLL y z) x) @@ -4151,9 +4015,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { x := v_1 v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) v.AddArg(v0) return true } @@ -4167,9 +4029,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMPshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (CMP (SRL y z) x) @@ -4183,9 +4043,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { x := v_1 v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) v.AddArg(v0) return true } @@ -4199,9 +4057,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMCMPshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (CMP (SRA y z) x) @@ -4215,9 +4071,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { x := v_1 v.reset(OpARMInvertFlags) v0 := b.NewValue0(v.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) v.AddArg(v0) return true } @@ -4230,8 +4084,7 @@ func rewriteValueARM_OpARMCMP(v *Value) bool { } y := v_1.Args[0] v.reset(OpARMCMN) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -4456,8 +4309,7 @@ func rewriteValueARM_OpARMCMPshiftLLreg(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v0.AuxInt = c v1 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v1.AddArg(x) - v1.AddArg(y) + v1.AddArg2(x, y) v0.AddArg(v1) v.AddArg(v0) return true @@ -4473,8 +4325,7 @@ func rewriteValueARM_OpARMCMPshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMPshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -4536,8 +4387,7 @@ func rewriteValueARM_OpARMCMPshiftRAreg(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v0.AuxInt = c v1 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v1.AddArg(x) - v1.AddArg(y) + v1.AddArg2(x, y) v0.AddArg(v1) v.AddArg(v0) return true @@ -4553,8 +4403,7 @@ func rewriteValueARM_OpARMCMPshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMPshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -4616,8 +4465,7 @@ func rewriteValueARM_OpARMCMPshiftRLreg(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v0.AuxInt = c v1 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v1.AddArg(x) - v1.AddArg(y) + v1.AddArg2(x, y) v0.AddArg(v1) v.AddArg(v0) return true @@ -4633,8 +4481,7 @@ func rewriteValueARM_OpARMCMPshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMCMPshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -5241,8 +5088,7 @@ func rewriteValueARM_OpARMMOVBUload(v *Value) bool { v.reset(OpARMMOVBUload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBUload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -5259,8 +5105,7 @@ func rewriteValueARM_OpARMMOVBUload(v *Value) bool { v.reset(OpARMMOVBUload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBUload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -5282,8 +5127,7 @@ func rewriteValueARM_OpARMMOVBUload(v *Value) bool { v.reset(OpARMMOVBUload) 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 (MOVBstore [off2] {sym2} ptr2 x _)) @@ -5326,9 +5170,7 @@ func rewriteValueARM_OpARMMOVBUload(v *Value) bool { break } v.reset(OpARMMOVBUloadidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVBUload [off] {sym} (SB) _) @@ -5383,8 +5225,7 @@ func rewriteValueARM_OpARMMOVBUloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVBUload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBUloadidx (MOVWconst [c]) ptr mem) @@ -5398,8 +5239,7 @@ func rewriteValueARM_OpARMMOVBUloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVBUload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -5472,8 +5312,7 @@ func rewriteValueARM_OpARMMOVBload(v *Value) bool { v.reset(OpARMMOVBload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -5490,8 +5329,7 @@ func rewriteValueARM_OpARMMOVBload(v *Value) bool { v.reset(OpARMMOVBload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -5513,8 +5351,7 @@ func rewriteValueARM_OpARMMOVBload(v *Value) bool { v.reset(OpARMMOVBload) 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 (MOVBstore [off2] {sym2} ptr2 x _)) @@ -5557,9 +5394,7 @@ func rewriteValueARM_OpARMMOVBload(v *Value) bool { break } v.reset(OpARMMOVBloadidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } return false @@ -5601,8 +5436,7 @@ func rewriteValueARM_OpARMMOVBloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVBload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVBloadidx (MOVWconst [c]) ptr mem) @@ -5616,8 +5450,7 @@ func rewriteValueARM_OpARMMOVBloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVBload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -5696,9 +5529,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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 [off1] {sym} (SUBconst [off2] ptr) val mem) @@ -5716,9 +5547,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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 [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) val mem) @@ -5741,9 +5570,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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 (MOVBreg x) mem) @@ -5760,9 +5587,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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) @@ -5779,9 +5604,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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) @@ -5798,9 +5621,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) 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) @@ -5817,9 +5638,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { v.reset(OpARMMOVBstore) v.AuxInt = off v.Aux = sym - v.AddArg(ptr) - v.AddArg(x) - v.AddArg(mem) + v.AddArg3(ptr, x, mem) return true } // match: (MOVBstore [0] {sym} (ADD ptr idx) val mem) @@ -5841,10 +5660,7 @@ func rewriteValueARM_OpARMMOVBstore(v *Value) bool { break } v.reset(OpARMMOVBstoreidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } return false @@ -5866,9 +5682,7 @@ func rewriteValueARM_OpARMMOVBstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVBstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVBstoreidx (MOVWconst [c]) ptr val mem) @@ -5883,9 +5697,7 @@ func rewriteValueARM_OpARMMOVBstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVBstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -5907,8 +5719,7 @@ func rewriteValueARM_OpARMMOVDload(v *Value) bool { v.reset(OpARMMOVDload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVDload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -5925,8 +5736,7 @@ func rewriteValueARM_OpARMMOVDload(v *Value) bool { v.reset(OpARMMOVDload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVDload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -5948,8 +5758,7 @@ func rewriteValueARM_OpARMMOVDload(v *Value) bool { v.reset(OpARMMOVDload) 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 (MOVDstore [off2] {sym2} ptr2 x _)) @@ -5996,9 +5805,7 @@ func rewriteValueARM_OpARMMOVDstore(v *Value) bool { v.reset(OpARMMOVDstore) 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 [off1] {sym} (SUBconst [off2] ptr) val mem) @@ -6016,9 +5823,7 @@ func rewriteValueARM_OpARMMOVDstore(v *Value) bool { v.reset(OpARMMOVDstore) 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 [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) val mem) @@ -6041,9 +5846,7 @@ func rewriteValueARM_OpARMMOVDstore(v *Value) bool { v.reset(OpARMMOVDstore) 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 @@ -6065,8 +5868,7 @@ func rewriteValueARM_OpARMMOVFload(v *Value) bool { v.reset(OpARMMOVFload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVFload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -6083,8 +5885,7 @@ func rewriteValueARM_OpARMMOVFload(v *Value) bool { v.reset(OpARMMOVFload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVFload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -6106,8 +5907,7 @@ func rewriteValueARM_OpARMMOVFload(v *Value) bool { v.reset(OpARMMOVFload) v.AuxInt = off1 + off2 v.Aux = mergeSym(sym1, sym2) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVFload [off] {sym} ptr (MOVFstore [off2] {sym2} ptr2 x _)) @@ -6154,9 +5954,7 @@ func rewriteValueARM_OpARMMOVFstore(v *Value) bool { v.reset(OpARMMOVFstore) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVFstore [off1] {sym} (SUBconst [off2] ptr) val mem) @@ -6174,9 +5972,7 @@ func rewriteValueARM_OpARMMOVFstore(v *Value) bool { v.reset(OpARMMOVFstore) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVFstore [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) val mem) @@ -6199,9 +5995,7 @@ func rewriteValueARM_OpARMMOVFstore(v *Value) bool { v.reset(OpARMMOVFstore) 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 @@ -6225,8 +6019,7 @@ func rewriteValueARM_OpARMMOVHUload(v *Value) bool { v.reset(OpARMMOVHUload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHUload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -6243,8 +6036,7 @@ func rewriteValueARM_OpARMMOVHUload(v *Value) bool { v.reset(OpARMMOVHUload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHUload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -6266,8 +6058,7 @@ func rewriteValueARM_OpARMMOVHUload(v *Value) bool { v.reset(OpARMMOVHUload) 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 (MOVHstore [off2] {sym2} ptr2 x _)) @@ -6310,9 +6101,7 @@ func rewriteValueARM_OpARMMOVHUload(v *Value) bool { break } v.reset(OpARMMOVHUloadidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVHUload [off] {sym} (SB) _) @@ -6367,8 +6156,7 @@ func rewriteValueARM_OpARMMOVHUloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVHUload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHUloadidx (MOVWconst [c]) ptr mem) @@ -6382,8 +6170,7 @@ func rewriteValueARM_OpARMMOVHUloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVHUload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -6479,8 +6266,7 @@ func rewriteValueARM_OpARMMOVHload(v *Value) bool { v.reset(OpARMMOVHload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -6497,8 +6283,7 @@ func rewriteValueARM_OpARMMOVHload(v *Value) bool { v.reset(OpARMMOVHload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -6520,8 +6305,7 @@ func rewriteValueARM_OpARMMOVHload(v *Value) bool { v.reset(OpARMMOVHload) 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 (MOVHstore [off2] {sym2} ptr2 x _)) @@ -6564,9 +6348,7 @@ func rewriteValueARM_OpARMMOVHload(v *Value) bool { break } v.reset(OpARMMOVHloadidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } return false @@ -6608,8 +6390,7 @@ func rewriteValueARM_OpARMMOVHloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVHload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVHloadidx (MOVWconst [c]) ptr mem) @@ -6623,8 +6404,7 @@ func rewriteValueARM_OpARMMOVHloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVHload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -6749,9 +6529,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { v.reset(OpARMMOVHstore) 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 [off1] {sym} (SUBconst [off2] ptr) val mem) @@ -6769,9 +6547,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { v.reset(OpARMMOVHstore) 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 [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) val mem) @@ -6794,9 +6570,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { v.reset(OpARMMOVHstore) 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 (MOVHreg x) mem) @@ -6813,9 +6587,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { v.reset(OpARMMOVHstore) 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) @@ -6832,9 +6604,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { v.reset(OpARMMOVHstore) v.AuxInt = off v.Aux = sym - v.AddArg(ptr) - v.AddArg(x) - v.AddArg(mem) + v.AddArg3(ptr, x, mem) return true } // match: (MOVHstore [0] {sym} (ADD ptr idx) val mem) @@ -6856,10 +6626,7 @@ func rewriteValueARM_OpARMMOVHstore(v *Value) bool { break } v.reset(OpARMMOVHstoreidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } return false @@ -6881,9 +6648,7 @@ func rewriteValueARM_OpARMMOVHstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVHstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVHstoreidx (MOVWconst [c]) ptr val mem) @@ -6898,9 +6663,7 @@ func rewriteValueARM_OpARMMOVHstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVHstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -6924,8 +6687,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { v.reset(OpARMMOVWload) v.AuxInt = off1 + off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVWload [off1] {sym} (SUBconst [off2] ptr) mem) @@ -6942,8 +6704,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { v.reset(OpARMMOVWload) v.AuxInt = off1 - off2 v.Aux = sym - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVWload [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) mem) @@ -6965,8 +6726,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { v.reset(OpARMMOVWload) 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 (MOVWstore [off2] {sym2} ptr2 x _)) @@ -7010,9 +6770,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { break } v.reset(OpARMMOVWloadidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWload [0] {sym} (ADDshiftLL ptr idx [c]) mem) @@ -7035,9 +6793,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { } v.reset(OpARMMOVWloadshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWload [0] {sym} (ADDshiftRL ptr idx [c]) mem) @@ -7060,9 +6816,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { } v.reset(OpARMMOVWloadshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWload [0] {sym} (ADDshiftRA ptr idx [c]) mem) @@ -7085,9 +6839,7 @@ func rewriteValueARM_OpARMMOVWload(v *Value) bool { } v.reset(OpARMMOVWloadshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWload [off] {sym} (SB) _) @@ -7143,8 +6895,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVWloadidx (MOVWconst [c]) ptr mem) @@ -7158,8 +6909,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWload) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (MOVWloadidx ptr (SLLconst idx [c]) mem) @@ -7174,9 +6924,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWloadidx (SLLconst idx [c]) ptr mem) @@ -7191,9 +6939,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWloadidx ptr (SRLconst idx [c]) mem) @@ -7208,9 +6954,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWloadidx (SRLconst idx [c]) ptr mem) @@ -7225,9 +6969,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWloadidx ptr (SRAconst idx [c]) mem) @@ -7242,9 +6984,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } // match: (MOVWloadidx (SRAconst idx [c]) ptr mem) @@ -7259,9 +6999,7 @@ func rewriteValueARM_OpARMMOVWloadidx(v *Value) bool { mem := v_2 v.reset(OpARMMOVWloadshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(mem) + v.AddArg3(ptr, idx, mem) return true } return false @@ -7307,8 +7045,7 @@ func rewriteValueARM_OpARMMOVWloadshiftLL(v *Value) bool { mem := v_2 v.reset(OpARMMOVWload) v.AuxInt = int64(uint32(c) << uint64(d)) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -7354,8 +7091,7 @@ func rewriteValueARM_OpARMMOVWloadshiftRA(v *Value) bool { mem := v_2 v.reset(OpARMMOVWload) v.AuxInt = int64(int32(c) >> uint64(d)) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -7401,8 +7137,7 @@ func rewriteValueARM_OpARMMOVWloadshiftRL(v *Value) bool { mem := v_2 v.reset(OpARMMOVWload) v.AuxInt = int64(uint32(c) >> uint64(d)) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -7453,9 +7188,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { v.reset(OpARMMOVWstore) 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 [off1] {sym} (SUBconst [off2] ptr) val mem) @@ -7473,9 +7206,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { v.reset(OpARMMOVWstore) 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 [off1] {sym1} (MOVWaddr [off2] {sym2} ptr) val mem) @@ -7498,9 +7229,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { v.reset(OpARMMOVWstore) 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 [0] {sym} (ADD ptr idx) val mem) @@ -7522,10 +7251,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { break } v.reset(OpARMMOVWstoreidx) - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstore [0] {sym} (ADDshiftLL ptr idx [c]) val mem) @@ -7549,10 +7275,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { } v.reset(OpARMMOVWstoreshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstore [0] {sym} (ADDshiftRL ptr idx [c]) val mem) @@ -7576,10 +7299,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { } v.reset(OpARMMOVWstoreshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstore [0] {sym} (ADDshiftRA ptr idx [c]) val mem) @@ -7603,10 +7323,7 @@ func rewriteValueARM_OpARMMOVWstore(v *Value) bool { } v.reset(OpARMMOVWstoreshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } return false @@ -7628,9 +7345,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVWstoreidx (MOVWconst [c]) ptr val mem) @@ -7645,9 +7360,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstore) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (MOVWstoreidx ptr (SLLconst idx [c]) val mem) @@ -7663,10 +7376,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstoreidx (SLLconst idx [c]) ptr val mem) @@ -7682,10 +7392,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftLL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstoreidx ptr (SRLconst idx [c]) val mem) @@ -7701,10 +7408,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstoreidx (SRLconst idx [c]) ptr val mem) @@ -7720,10 +7424,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftRL) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstoreidx ptr (SRAconst idx [c]) val mem) @@ -7739,10 +7440,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } // match: (MOVWstoreidx (SRAconst idx [c]) ptr val mem) @@ -7758,10 +7456,7 @@ func rewriteValueARM_OpARMMOVWstoreidx(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstoreshiftRA) v.AuxInt = c - v.AddArg(ptr) - v.AddArg(idx) - v.AddArg(val) - v.AddArg(mem) + v.AddArg4(ptr, idx, val, mem) return true } return false @@ -7784,9 +7479,7 @@ func rewriteValueARM_OpARMMOVWstoreshiftLL(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstore) v.AuxInt = int64(uint32(c) << uint64(d)) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -7809,9 +7502,7 @@ func rewriteValueARM_OpARMMOVWstoreshiftRA(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstore) v.AuxInt = int64(int32(c) >> uint64(d)) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -7834,9 +7525,7 @@ func rewriteValueARM_OpARMMOVWstoreshiftRL(v *Value) bool { mem := v_3 v.reset(OpARMMOVWstore) v.AuxInt = int64(uint32(c) >> uint64(d)) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -7928,8 +7617,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { } v.reset(OpARMADDshiftLL) v.AuxInt = log2(c - 1) - v.AddArg(x) - v.AddArg(x) + v.AddArg2(x, x) return true } break @@ -7949,8 +7637,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { } v.reset(OpARMRSBshiftLL) v.AuxInt = log2(c + 1) - v.AddArg(x) - v.AddArg(x) + v.AddArg2(x, x) return true } break @@ -7972,8 +7659,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { v.AuxInt = log2(c / 3) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = 1 - v0.AddArg(x) - v0.AddArg(x) + v0.AddArg2(x, x) v.AddArg(v0) return true } @@ -7996,8 +7682,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { v.AuxInt = log2(c / 5) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = 2 - v0.AddArg(x) - v0.AddArg(x) + v0.AddArg2(x, x) v.AddArg(v0) return true } @@ -8020,8 +7705,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { v.AuxInt = log2(c / 7) v0 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v0.AuxInt = 3 - v0.AddArg(x) - v0.AddArg(x) + v0.AddArg2(x, x) v.AddArg(v0) return true } @@ -8044,8 +7728,7 @@ func rewriteValueARM_OpARMMUL(v *Value) bool { v.AuxInt = log2(c / 9) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = 3 - v0.AddArg(x) - v0.AddArg(x) + v0.AddArg2(x, x) v.AddArg(v0) return true } @@ -8090,8 +7773,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { break } v.reset(OpARMSUB) - v.AddArg(a) - v.AddArg(x) + v.AddArg2(a, x) return true } // match: (MULA _ (MOVWconst [0]) a) @@ -8115,8 +7797,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { } a := v_2 v.reset(OpARMADD) - v.AddArg(x) - v.AddArg(a) + v.AddArg2(x, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8136,8 +7817,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = log2(c) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8156,10 +7836,8 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v.reset(OpARMADD) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = log2(c - 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8178,10 +7856,8 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v.reset(OpARMADD) v0 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v0.AuxInt = log2(c + 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8202,11 +7878,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 3) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 1 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8227,11 +7901,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 5) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 2 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8252,11 +7924,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 7) v1 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA x (MOVWconst [c]) a) @@ -8277,11 +7947,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 9) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8298,8 +7966,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { break } v.reset(OpARMSUB) - v.AddArg(a) - v.AddArg(x) + v.AddArg2(a, x) return true } // match: (MULA (MOVWconst [0]) _ a) @@ -8323,8 +7990,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { x := v_1 a := v_2 v.reset(OpARMADD) - v.AddArg(x) - v.AddArg(a) + v.AddArg2(x, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8344,8 +8010,7 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = log2(c) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8364,10 +8029,8 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v.reset(OpARMADD) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = log2(c - 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8386,10 +8049,8 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v.reset(OpARMADD) v0 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v0.AuxInt = log2(c + 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8410,11 +8071,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 3) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 1 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8435,11 +8094,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 5) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 2 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8460,11 +8117,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 7) v1 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) x a) @@ -8485,11 +8140,9 @@ func rewriteValueARM_OpARMMULA(v *Value) bool { v0.AuxInt = log2(c / 9) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULA (MOVWconst [c]) (MOVWconst [d]) a) @@ -8528,8 +8181,7 @@ func rewriteValueARM_OpARMMULD(v *Value) bool { continue } v.reset(OpARMNMULD) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -8553,8 +8205,7 @@ func rewriteValueARM_OpARMMULF(v *Value) bool { continue } v.reset(OpARMNMULF) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -8580,8 +8231,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { break } v.reset(OpARMADD) - v.AddArg(a) - v.AddArg(x) + v.AddArg2(a, x) return true } // match: (MULS _ (MOVWconst [0]) a) @@ -8605,8 +8255,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { } a := v_2 v.reset(OpARMRSB) - v.AddArg(x) - v.AddArg(a) + v.AddArg2(x, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8626,8 +8275,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = log2(c) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8646,10 +8294,8 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v.reset(OpARMRSB) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = log2(c - 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8668,10 +8314,8 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v.reset(OpARMRSB) v0 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v0.AuxInt = log2(c + 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8692,11 +8336,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 3) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 1 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8717,11 +8359,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 5) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 2 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8742,11 +8382,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 7) v1 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS x (MOVWconst [c]) a) @@ -8767,11 +8405,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 9) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8788,8 +8424,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { break } v.reset(OpARMADD) - v.AddArg(a) - v.AddArg(x) + v.AddArg2(a, x) return true } // match: (MULS (MOVWconst [0]) _ a) @@ -8813,8 +8448,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { x := v_1 a := v_2 v.reset(OpARMRSB) - v.AddArg(x) - v.AddArg(a) + v.AddArg2(x, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8834,8 +8468,7 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = log2(c) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8854,10 +8487,8 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v.reset(OpARMRSB) v0 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v0.AuxInt = log2(c - 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8876,10 +8507,8 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v.reset(OpARMRSB) v0 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v0.AuxInt = log2(c + 1) - v0.AddArg(x) - v0.AddArg(x) - v.AddArg(v0) - v.AddArg(a) + v0.AddArg2(x, x) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8900,11 +8529,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 3) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 1 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8925,11 +8552,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 5) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 2 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8950,11 +8575,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 7) v1 := b.NewValue0(v.Pos, OpARMRSBshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) x a) @@ -8975,11 +8598,9 @@ func rewriteValueARM_OpARMMULS(v *Value) bool { v0.AuxInt = log2(c / 9) v1 := b.NewValue0(v.Pos, OpARMADDshiftLL, x.Type) v1.AuxInt = 3 - v1.AddArg(x) - v1.AddArg(x) + v1.AddArg2(x, x) v0.AddArg(v1) - v.AddArg(v0) - v.AddArg(a) + v.AddArg2(v0, a) return true } // match: (MULS (MOVWconst [c]) (MOVWconst [d]) a) @@ -9062,8 +8683,7 @@ func rewriteValueARM_OpARMMVN(v *Value) bool { y := v_0.Args[1] x := v_0.Args[0] v.reset(OpARMMVNshiftLLreg) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (MVN (SRL x y)) @@ -9075,8 +8695,7 @@ func rewriteValueARM_OpARMMVN(v *Value) bool { y := v_0.Args[1] x := v_0.Args[0] v.reset(OpARMMVNshiftRLreg) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (MVN (SRA x y)) @@ -9088,8 +8707,7 @@ func rewriteValueARM_OpARMMVN(v *Value) bool { y := v_0.Args[1] x := v_0.Args[0] v.reset(OpARMMVNshiftRAreg) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9211,8 +8829,7 @@ func rewriteValueARM_OpARMNEGD(v *Value) bool { break } v.reset(OpARMNMULD) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9232,8 +8849,7 @@ func rewriteValueARM_OpARMNEGF(v *Value) bool { break } v.reset(OpARMNMULF) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9251,8 +8867,7 @@ func rewriteValueARM_OpARMNMULD(v *Value) bool { x := v_0.Args[0] y := v_1 v.reset(OpARMMULD) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -9272,8 +8887,7 @@ func rewriteValueARM_OpARMNMULF(v *Value) bool { x := v_0.Args[0] y := v_1 v.reset(OpARMMULF) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -9376,8 +8990,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMORshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -9394,8 +9007,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMORshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -9412,8 +9024,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMORshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -9429,9 +9040,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMORshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -9447,9 +9056,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMORshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -9465,9 +9072,7 @@ func rewriteValueARM_OpARMOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMORshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -9663,8 +9268,7 @@ func rewriteValueARM_OpARMORshiftLLreg(v *Value) bool { v.reset(OpARMORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -9679,8 +9283,7 @@ func rewriteValueARM_OpARMORshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMORshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9758,8 +9361,7 @@ func rewriteValueARM_OpARMORshiftRAreg(v *Value) bool { v.reset(OpARMORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -9774,8 +9376,7 @@ func rewriteValueARM_OpARMORshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMORshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9869,8 +9470,7 @@ func rewriteValueARM_OpARMORshiftRLreg(v *Value) bool { v.reset(OpARMORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -9885,8 +9485,7 @@ func rewriteValueARM_OpARMORshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMORshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -9931,8 +9530,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMRSBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB (SLLconst [c] y) x) @@ -9946,8 +9544,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { x := v_1 v.reset(OpARMSUBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB x (SRLconst [c] y)) @@ -9961,8 +9558,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMRSBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB (SRLconst [c] y) x) @@ -9976,8 +9572,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { x := v_1 v.reset(OpARMSUBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB x (SRAconst [c] y)) @@ -9991,8 +9586,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMRSBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB (SRAconst [c] y) x) @@ -10006,8 +9600,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { x := v_1 v.reset(OpARMSUBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (RSB x (SLL y z)) @@ -10020,9 +9613,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMRSBshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB (SLL y z) x) @@ -10035,9 +9626,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMSUBshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB x (SRL y z)) @@ -10050,9 +9639,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMRSBshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB (SRL y z) x) @@ -10065,9 +9652,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMSUBshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB x (SRA y z)) @@ -10080,9 +9665,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMRSBshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB (SRA y z) x) @@ -10095,9 +9678,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMSUBshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (RSB x x) @@ -10125,9 +9706,7 @@ func rewriteValueARM_OpARMRSB(v *Value) bool { break } v.reset(OpARMMULS) - v.AddArg(x) - v.AddArg(y) - v.AddArg(a) + v.AddArg3(x, y, a) return true } return false @@ -10186,8 +9765,7 @@ func rewriteValueARM_OpARMRSBSshiftLLreg(v *Value) bool { v.reset(OpARMSUBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10202,8 +9780,7 @@ func rewriteValueARM_OpARMRSBSshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10262,8 +9839,7 @@ func rewriteValueARM_OpARMRSBSshiftRAreg(v *Value) bool { v.reset(OpARMSUBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10278,8 +9854,7 @@ func rewriteValueARM_OpARMRSBSshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10338,8 +9913,7 @@ func rewriteValueARM_OpARMRSBSshiftRLreg(v *Value) bool { v.reset(OpARMSUBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10354,8 +9928,7 @@ func rewriteValueARM_OpARMRSBSshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10489,8 +10062,7 @@ func rewriteValueARM_OpARMRSBshiftLLreg(v *Value) bool { v.reset(OpARMSUBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10505,8 +10077,7 @@ func rewriteValueARM_OpARMRSBshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10582,8 +10153,7 @@ func rewriteValueARM_OpARMRSBshiftRAreg(v *Value) bool { v.reset(OpARMSUBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10598,8 +10168,7 @@ func rewriteValueARM_OpARMRSBshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10675,8 +10244,7 @@ func rewriteValueARM_OpARMRSBshiftRLreg(v *Value) bool { v.reset(OpARMSUBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -10691,8 +10259,7 @@ func rewriteValueARM_OpARMRSBshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMRSBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -10712,8 +10279,7 @@ func rewriteValueARM_OpARMRSCconst(v *Value) bool { flags := v_1 v.reset(OpARMRSCconst) v.AuxInt = int64(int32(c - d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } // match: (RSCconst [c] (SUBconst [d] x) flags) @@ -10728,8 +10294,7 @@ func rewriteValueARM_OpARMRSCconst(v *Value) bool { flags := v_1 v.reset(OpARMRSCconst) v.AuxInt = int64(int32(c + d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -10754,8 +10319,7 @@ func rewriteValueARM_OpARMRSCshiftLL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (RSCshiftLL x (MOVWconst [c]) [d] flags) @@ -10770,8 +10334,7 @@ func rewriteValueARM_OpARMRSCshiftLL(v *Value) bool { flags := v_2 v.reset(OpARMRSCconst) v.AuxInt = int64(int32(uint32(c) << uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -10795,10 +10358,8 @@ func rewriteValueARM_OpARMRSCshiftLLreg(v *Value) bool { v.reset(OpARMSBCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (RSCshiftLLreg x y (MOVWconst [c]) flags) @@ -10813,9 +10374,7 @@ func rewriteValueARM_OpARMRSCshiftLLreg(v *Value) bool { flags := v_3 v.reset(OpARMRSCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -10840,8 +10399,7 @@ func rewriteValueARM_OpARMRSCshiftRA(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRAconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (RSCshiftRA x (MOVWconst [c]) [d] flags) @@ -10856,8 +10414,7 @@ func rewriteValueARM_OpARMRSCshiftRA(v *Value) bool { flags := v_2 v.reset(OpARMRSCconst) v.AuxInt = int64(int32(c) >> uint64(d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -10881,10 +10438,8 @@ func rewriteValueARM_OpARMRSCshiftRAreg(v *Value) bool { v.reset(OpARMSBCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (RSCshiftRAreg x y (MOVWconst [c]) flags) @@ -10899,9 +10454,7 @@ func rewriteValueARM_OpARMRSCshiftRAreg(v *Value) bool { flags := v_3 v.reset(OpARMRSCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -10926,8 +10479,7 @@ func rewriteValueARM_OpARMRSCshiftRL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (RSCshiftRL x (MOVWconst [c]) [d] flags) @@ -10942,8 +10494,7 @@ func rewriteValueARM_OpARMRSCshiftRL(v *Value) bool { flags := v_2 v.reset(OpARMRSCconst) v.AuxInt = int64(int32(uint32(c) >> uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -10967,10 +10518,8 @@ func rewriteValueARM_OpARMRSCshiftRLreg(v *Value) bool { v.reset(OpARMSBCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (RSCshiftRLreg x y (MOVWconst [c]) flags) @@ -10985,9 +10534,7 @@ func rewriteValueARM_OpARMRSCshiftRLreg(v *Value) bool { flags := v_3 v.reset(OpARMRSCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -11007,8 +10554,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMRSCconst) v.AuxInt = c - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } // match: (SBC x (MOVWconst [c]) flags) @@ -11022,8 +10568,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMSBCconst) v.AuxInt = c - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } // match: (SBC x (SLLconst [c] y) flags) @@ -11038,9 +10583,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMSBCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC (SLLconst [c] y) x flags) @@ -11055,9 +10598,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMRSCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC x (SRLconst [c] y) flags) @@ -11072,9 +10613,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMSBCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC (SRLconst [c] y) x flags) @@ -11089,9 +10628,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMRSCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC x (SRAconst [c] y) flags) @@ -11106,9 +10643,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMSBCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC (SRAconst [c] y) x flags) @@ -11123,9 +10658,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { flags := v_2 v.reset(OpARMRSCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } // match: (SBC x (SLL y z) flags) @@ -11139,10 +10672,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMSBCshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } // match: (SBC (SLL y z) x flags) @@ -11156,10 +10686,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { x := v_1 flags := v_2 v.reset(OpARMRSCshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } // match: (SBC x (SRL y z) flags) @@ -11173,10 +10700,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMSBCshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } // match: (SBC (SRL y z) x flags) @@ -11190,10 +10714,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { x := v_1 flags := v_2 v.reset(OpARMRSCshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } // match: (SBC x (SRA y z) flags) @@ -11207,10 +10728,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { y := v_1.Args[0] flags := v_2 v.reset(OpARMSBCshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } // match: (SBC (SRA y z) x flags) @@ -11224,10 +10742,7 @@ func rewriteValueARM_OpARMSBC(v *Value) bool { x := v_1 flags := v_2 v.reset(OpARMRSCshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) - v.AddArg(flags) + v.AddArg4(x, y, z, flags) return true } return false @@ -11247,8 +10762,7 @@ func rewriteValueARM_OpARMSBCconst(v *Value) bool { flags := v_1 v.reset(OpARMSBCconst) v.AuxInt = int64(int32(c - d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } // match: (SBCconst [c] (SUBconst [d] x) flags) @@ -11263,8 +10777,7 @@ func rewriteValueARM_OpARMSBCconst(v *Value) bool { flags := v_1 v.reset(OpARMSBCconst) v.AuxInt = int64(int32(c + d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -11289,8 +10802,7 @@ func rewriteValueARM_OpARMSBCshiftLL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSLLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (SBCshiftLL x (MOVWconst [c]) [d] flags) @@ -11305,8 +10817,7 @@ func rewriteValueARM_OpARMSBCshiftLL(v *Value) bool { flags := v_2 v.reset(OpARMSBCconst) v.AuxInt = int64(int32(uint32(c) << uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -11330,10 +10841,8 @@ func rewriteValueARM_OpARMSBCshiftLLreg(v *Value) bool { v.reset(OpARMRSCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (SBCshiftLLreg x y (MOVWconst [c]) flags) @@ -11348,9 +10857,7 @@ func rewriteValueARM_OpARMSBCshiftLLreg(v *Value) bool { flags := v_3 v.reset(OpARMSBCshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -11375,8 +10882,7 @@ func rewriteValueARM_OpARMSBCshiftRA(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRAconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (SBCshiftRA x (MOVWconst [c]) [d] flags) @@ -11391,8 +10897,7 @@ func rewriteValueARM_OpARMSBCshiftRA(v *Value) bool { flags := v_2 v.reset(OpARMSBCconst) v.AuxInt = int64(int32(c) >> uint64(d)) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -11416,10 +10921,8 @@ func rewriteValueARM_OpARMSBCshiftRAreg(v *Value) bool { v.reset(OpARMRSCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (SBCshiftRAreg x y (MOVWconst [c]) flags) @@ -11434,9 +10937,7 @@ func rewriteValueARM_OpARMSBCshiftRAreg(v *Value) bool { flags := v_3 v.reset(OpARMSBCshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -11461,8 +10962,7 @@ func rewriteValueARM_OpARMSBCshiftRL(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRLconst, x.Type) v0.AuxInt = d v0.AddArg(x) - v.AddArg(v0) - v.AddArg(flags) + v.AddArg2(v0, flags) return true } // match: (SBCshiftRL x (MOVWconst [c]) [d] flags) @@ -11477,8 +10977,7 @@ func rewriteValueARM_OpARMSBCshiftRL(v *Value) bool { flags := v_2 v.reset(OpARMSBCconst) v.AuxInt = int64(int32(uint32(c) >> uint64(d))) - v.AddArg(x) - v.AddArg(flags) + v.AddArg2(x, flags) return true } return false @@ -11502,10 +11001,8 @@ func rewriteValueARM_OpARMSBCshiftRLreg(v *Value) bool { v.reset(OpARMRSCconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) - v.AddArg(flags) + v0.AddArg2(x, y) + v.AddArg2(v0, flags) return true } // match: (SBCshiftRLreg x y (MOVWconst [c]) flags) @@ -11520,9 +11017,7 @@ func rewriteValueARM_OpARMSBCshiftRLreg(v *Value) bool { flags := v_3 v.reset(OpARMSBCshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) - v.AddArg(flags) + v.AddArg3(x, y, flags) return true } return false @@ -11604,8 +11099,7 @@ func rewriteValueARM_OpARMSRAcond(v *Value) bool { break } v.reset(OpARMSRA) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SRAcond x _ (FlagLT_UGT)) @@ -11629,8 +11123,7 @@ func rewriteValueARM_OpARMSRAcond(v *Value) bool { break } v.reset(OpARMSRA) - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SRAcond x _ (FlagGT_UGT)) @@ -11773,8 +11266,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB (SLLconst [c] y) x) @@ -11788,8 +11280,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { x := v_1 v.reset(OpARMRSBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB x (SRLconst [c] y)) @@ -11803,8 +11294,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB (SRLconst [c] y) x) @@ -11818,8 +11308,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { x := v_1 v.reset(OpARMRSBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB x (SRAconst [c] y)) @@ -11833,8 +11322,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB (SRAconst [c] y) x) @@ -11848,8 +11336,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { x := v_1 v.reset(OpARMRSBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUB x (SLL y z)) @@ -11862,9 +11349,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB (SLL y z) x) @@ -11877,9 +11362,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB x (SRL y z)) @@ -11892,9 +11375,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB (SRL y z) x) @@ -11907,9 +11388,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB x (SRA y z)) @@ -11922,9 +11401,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB (SRA y z) x) @@ -11937,9 +11414,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUB x x) @@ -11967,9 +11442,7 @@ func rewriteValueARM_OpARMSUB(v *Value) bool { break } v.reset(OpARMMULS) - v.AddArg(x) - v.AddArg(y) - v.AddArg(a) + v.AddArg3(x, y, a) return true } return false @@ -11991,9 +11464,7 @@ func rewriteValueARM_OpARMSUBD(v *Value) bool { break } v.reset(OpARMMULSD) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } // match: (SUBD a (NMULD x y)) @@ -12010,9 +11481,7 @@ func rewriteValueARM_OpARMSUBD(v *Value) bool { break } v.reset(OpARMMULAD) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } return false @@ -12034,9 +11503,7 @@ func rewriteValueARM_OpARMSUBF(v *Value) bool { break } v.reset(OpARMMULSF) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } // match: (SUBF a (NMULF x y)) @@ -12053,9 +11520,7 @@ func rewriteValueARM_OpARMSUBF(v *Value) bool { break } v.reset(OpARMMULAF) - v.AddArg(a) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(a, x, y) return true } return false @@ -12087,8 +11552,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS (SLLconst [c] y) x) @@ -12102,8 +11566,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { x := v_1 v.reset(OpARMRSBSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS x (SRLconst [c] y)) @@ -12117,8 +11580,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS (SRLconst [c] y) x) @@ -12132,8 +11594,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { x := v_1 v.reset(OpARMRSBSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS x (SRAconst [c] y)) @@ -12147,8 +11608,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_1.Args[0] v.reset(OpARMSUBSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS (SRAconst [c] y) x) @@ -12162,8 +11622,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { x := v_1 v.reset(OpARMRSBSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } // match: (SUBS x (SLL y z)) @@ -12176,9 +11635,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBSshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUBS (SLL y z) x) @@ -12191,9 +11648,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBSshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUBS x (SRL y z)) @@ -12206,9 +11661,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBSshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUBS (SRL y z) x) @@ -12221,9 +11674,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBSshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUBS x (SRA y z)) @@ -12236,9 +11687,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMSUBSshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } // match: (SUBS (SRA y z) x) @@ -12251,9 +11700,7 @@ func rewriteValueARM_OpARMSUBS(v *Value) bool { y := v_0.Args[0] x := v_1 v.reset(OpARMRSBSshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } return false @@ -12312,8 +11759,7 @@ func rewriteValueARM_OpARMSUBSshiftLLreg(v *Value) bool { v.reset(OpARMRSBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12328,8 +11774,7 @@ func rewriteValueARM_OpARMSUBSshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBSshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12388,8 +11833,7 @@ func rewriteValueARM_OpARMSUBSshiftRAreg(v *Value) bool { v.reset(OpARMRSBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12404,8 +11848,7 @@ func rewriteValueARM_OpARMSUBSshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBSshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12464,8 +11907,7 @@ func rewriteValueARM_OpARMSUBSshiftRLreg(v *Value) bool { v.reset(OpARMRSBSconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12480,8 +11922,7 @@ func rewriteValueARM_OpARMSUBSshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBSshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12671,8 +12112,7 @@ func rewriteValueARM_OpARMSUBshiftLLreg(v *Value) bool { v.reset(OpARMRSBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12687,8 +12127,7 @@ func rewriteValueARM_OpARMSUBshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12764,8 +12203,7 @@ func rewriteValueARM_OpARMSUBshiftRAreg(v *Value) bool { v.reset(OpARMRSBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12780,8 +12218,7 @@ func rewriteValueARM_OpARMSUBshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12857,8 +12294,7 @@ func rewriteValueARM_OpARMSUBshiftRLreg(v *Value) bool { v.reset(OpARMRSBconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -12873,8 +12309,7 @@ func rewriteValueARM_OpARMSUBshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMSUBshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -12910,8 +12345,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTEQshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -12928,8 +12362,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTEQshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -12946,8 +12379,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTEQshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -12963,9 +12395,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTEQshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -12981,9 +12411,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTEQshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -12999,9 +12427,7 @@ func rewriteValueARM_OpARMTEQ(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTEQshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13111,8 +12537,7 @@ func rewriteValueARM_OpARMTEQshiftLLreg(v *Value) bool { v.reset(OpARMTEQconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13127,8 +12552,7 @@ func rewriteValueARM_OpARMTEQshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTEQshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13187,8 +12611,7 @@ func rewriteValueARM_OpARMTEQshiftRAreg(v *Value) bool { v.reset(OpARMTEQconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13203,8 +12626,7 @@ func rewriteValueARM_OpARMTEQshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTEQshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13263,8 +12685,7 @@ func rewriteValueARM_OpARMTEQshiftRLreg(v *Value) bool { v.reset(OpARMTEQconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13279,8 +12700,7 @@ func rewriteValueARM_OpARMTEQshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTEQshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13316,8 +12736,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTSTshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13334,8 +12753,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTSTshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13352,8 +12770,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { y := v_1.Args[0] v.reset(OpARMTSTshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13369,9 +12786,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTSTshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13387,9 +12802,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTSTshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13405,9 +12818,7 @@ func rewriteValueARM_OpARMTST(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMTSTshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13517,8 +12928,7 @@ func rewriteValueARM_OpARMTSTshiftLLreg(v *Value) bool { v.reset(OpARMTSTconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13533,8 +12943,7 @@ func rewriteValueARM_OpARMTSTshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTSTshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13593,8 +13002,7 @@ func rewriteValueARM_OpARMTSTshiftRAreg(v *Value) bool { v.reset(OpARMTSTconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13609,8 +13017,7 @@ func rewriteValueARM_OpARMTSTshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTSTshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13669,8 +13076,7 @@ func rewriteValueARM_OpARMTSTshiftRLreg(v *Value) bool { v.reset(OpARMTSTconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -13685,8 +13091,7 @@ func rewriteValueARM_OpARMTSTshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMTSTshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -13722,8 +13127,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMXORshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13740,8 +13144,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMXORshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13758,8 +13161,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMXORshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13776,8 +13178,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { y := v_1.Args[0] v.reset(OpARMXORshiftRR) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } break @@ -13793,9 +13194,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMXORshiftLLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13811,9 +13210,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMXORshiftRLreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -13829,9 +13226,7 @@ func rewriteValueARM_OpARMXOR(v *Value) bool { z := v_1.Args[1] y := v_1.Args[0] v.reset(OpARMXORshiftRAreg) - v.AddArg(x) - v.AddArg(y) - v.AddArg(z) + v.AddArg3(x, y, z) return true } break @@ -14012,8 +13407,7 @@ func rewriteValueARM_OpARMXORshiftLLreg(v *Value) bool { v.reset(OpARMXORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14028,8 +13422,7 @@ func rewriteValueARM_OpARMXORshiftLLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMXORshiftLL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -14105,8 +13498,7 @@ func rewriteValueARM_OpARMXORshiftRAreg(v *Value) bool { v.reset(OpARMXORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRA, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14121,8 +13513,7 @@ func rewriteValueARM_OpARMXORshiftRAreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMXORshiftRA) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -14214,8 +13605,7 @@ func rewriteValueARM_OpARMXORshiftRLreg(v *Value) bool { v.reset(OpARMXORconst) v.AuxInt = c v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14230,8 +13620,7 @@ func rewriteValueARM_OpARMXORshiftRLreg(v *Value) bool { c := v_2.AuxInt v.reset(OpARMXORshiftRL) v.AuxInt = c - v.AddArg(x) - v.AddArg(y) + v.AddArg2(x, y) return true } return false @@ -14287,11 +13676,9 @@ func rewriteValueARM_OpAvg32u(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRLconst, t) v0.AuxInt = 1 v1 := b.NewValue0(v.Pos, OpARMSUB, 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 } } @@ -14330,18 +13717,16 @@ func rewriteValueARM_OpBswap32(v *Value) bool { v1 := b.NewValue0(v.Pos, OpARMBICconst, t) v1.AuxInt = 0xff0000 v2 := b.NewValue0(v.Pos, OpARMXOR, t) - v2.AddArg(x) v3 := b.NewValue0(v.Pos, OpARMSRRconst, t) v3.AuxInt = 16 v3.AddArg(x) - v2.AddArg(v3) + v2.AddArg2(x, v3) v1.AddArg(v2) v0.AddArg(v1) - v.AddArg(v0) v4 := b.NewValue0(v.Pos, OpARMSRRconst, t) v4.AuxInt = 8 v4.AddArg(x) - v.AddArg(v4) + v.AddArg2(v0, v4) return true } // match: (Bswap32 x) @@ -14389,14 +13774,13 @@ func rewriteValueARM_OpCtz16(v *Value) bool { v3 := b.NewValue0(v.Pos, OpARMORconst, typ.UInt32) v3.AuxInt = 0x10000 v3.AddArg(x) - v2.AddArg(v3) v4 := b.NewValue0(v.Pos, OpARMRSBconst, typ.UInt32) v4.AuxInt = 0 v5 := b.NewValue0(v.Pos, OpARMORconst, typ.UInt32) v5.AuxInt = 0x10000 v5.AddArg(x) v4.AddArg(v5) - v2.AddArg(v4) + v2.AddArg2(v3, v4) v1.AddArg(v2) v0.AddArg(v1) v.AddArg(v0) @@ -14441,11 +13825,10 @@ func rewriteValueARM_OpCtz32(v *Value) bool { v1 := b.NewValue0(v.Pos, OpARMSUBconst, t) v1.AuxInt = 1 v2 := b.NewValue0(v.Pos, OpARMAND, t) - v2.AddArg(x) v3 := b.NewValue0(v.Pos, OpARMRSBconst, t) v3.AuxInt = 0 v3.AddArg(x) - v2.AddArg(v3) + v2.AddArg2(x, v3) v1.AddArg(v2) v0.AddArg(v1) v.AddArg(v0) @@ -14491,14 +13874,13 @@ func rewriteValueARM_OpCtz8(v *Value) bool { v3 := b.NewValue0(v.Pos, OpARMORconst, typ.UInt32) v3.AuxInt = 0x100 v3.AddArg(x) - v2.AddArg(v3) v4 := b.NewValue0(v.Pos, OpARMRSBconst, typ.UInt32) v4.AuxInt = 0 v5 := b.NewValue0(v.Pos, OpARMORconst, typ.UInt32) v5.AuxInt = 0x100 v5.AddArg(x) v4.AddArg(v5) - v2.AddArg(v4) + v2.AddArg2(v3, v4) v1.AddArg(v2) v0.AddArg(v1) v.AddArg(v0) @@ -14538,10 +13920,9 @@ func rewriteValueARM_OpDiv16(v *Value) bool { v.reset(OpDiv32) 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 } } @@ -14558,10 +13939,9 @@ func rewriteValueARM_OpDiv16u(v *Value) bool { v.reset(OpDiv32u) 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 } } @@ -14581,41 +13961,32 @@ func rewriteValueARM_OpDiv32(v *Value) bool { v2 := b.NewValue0(v.Pos, OpARMCALLudiv, types.NewTuple(typ.UInt32, typ.UInt32)) v3 := b.NewValue0(v.Pos, OpARMSUB, typ.UInt32) v4 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v4.AddArg(x) v5 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v5.AddArg(x) - v4.AddArg(v5) - v3.AddArg(v4) + v4.AddArg2(x, v5) v6 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v6.AddArg(x) - v3.AddArg(v6) - v2.AddArg(v3) + v3.AddArg2(v4, v6) v7 := b.NewValue0(v.Pos, OpARMSUB, typ.UInt32) v8 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v8.AddArg(y) v9 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v9.AddArg(y) - v8.AddArg(v9) - v7.AddArg(v8) + v8.AddArg2(y, v9) v10 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v10.AddArg(y) - v7.AddArg(v10) - v2.AddArg(v7) + v7.AddArg2(v8, v10) + v2.AddArg2(v3, v7) v1.AddArg(v2) - v0.AddArg(v1) v11 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v12 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v12.AddArg(x) - v12.AddArg(y) + v12.AddArg2(x, y) v11.AddArg(v12) - v0.AddArg(v11) - v.AddArg(v0) + v0.AddArg2(v1, v11) v13 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v14 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v14.AddArg(x) - v14.AddArg(y) + v14.AddArg2(x, y) v13.AddArg(v14) - v.AddArg(v13) + v.AddArg2(v0, v13) return true } } @@ -14632,8 +14003,7 @@ func rewriteValueARM_OpDiv32u(v *Value) bool { v.reset(OpSelect0) v.Type = typ.UInt32 v0 := b.NewValue0(v.Pos, OpARMCALLudiv, types.NewTuple(typ.UInt32, typ.UInt32)) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14651,10 +14021,9 @@ func rewriteValueARM_OpDiv8(v *Value) bool { v.reset(OpDiv32) 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 } } @@ -14671,10 +14040,9 @@ func rewriteValueARM_OpDiv8u(v *Value) bool { v.reset(OpDiv32u) 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 } } @@ -14692,10 +14060,9 @@ func rewriteValueARM_OpEq16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -14711,8 +14078,7 @@ func rewriteValueARM_OpEq32(v *Value) bool { y := v_1 v.reset(OpARMEqual) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14728,8 +14094,7 @@ func rewriteValueARM_OpEq32F(v *Value) bool { y := v_1 v.reset(OpARMEqual) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14745,8 +14110,7 @@ func rewriteValueARM_OpEq64F(v *Value) bool { y := v_1 v.reset(OpARMEqual) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14765,10 +14129,9 @@ func rewriteValueARM_OpEq8(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -14786,8 +14149,7 @@ func rewriteValueARM_OpEqB(v *Value) bool { v.reset(OpARMXORconst) v.AuxInt = 1 v0 := b.NewValue0(v.Pos, OpARMXOR, typ.Bool) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14803,8 +14165,7 @@ func rewriteValueARM_OpEqPtr(v *Value) bool { y := v_1 v.reset(OpARMEqual) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14820,9 +14181,7 @@ func rewriteValueARM_OpFMA(v *Value) bool { y := v_1 z := v_2 v.reset(OpARMFMULAD) - v.AddArg(z) - v.AddArg(x) - v.AddArg(y) + v.AddArg3(z, x, y) return true } } @@ -14837,8 +14196,7 @@ func rewriteValueARM_OpGeq32F(v *Value) bool { y := v_1 v.reset(OpARMGreaterEqual) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14854,8 +14212,7 @@ func rewriteValueARM_OpGeq64F(v *Value) bool { y := v_1 v.reset(OpARMGreaterEqual) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14871,8 +14228,7 @@ func rewriteValueARM_OpGreater32F(v *Value) bool { y := v_1 v.reset(OpARMGreaterThan) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14888,8 +14244,7 @@ func rewriteValueARM_OpGreater64F(v *Value) bool { y := v_1 v.reset(OpARMGreaterThan) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -14905,8 +14260,7 @@ func rewriteValueARM_OpIsInBounds(v *Value) bool { len := v_1 v.reset(OpARMLessThanU) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(idx) - v0.AddArg(len) + v0.AddArg2(idx, len) v.AddArg(v0) return true } @@ -14937,8 +14291,7 @@ func rewriteValueARM_OpIsSliceInBounds(v *Value) bool { len := v_1 v.reset(OpARMLessEqualU) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(idx) - v0.AddArg(len) + v0.AddArg2(idx, len) v.AddArg(v0) return true } @@ -14957,10 +14310,9 @@ func rewriteValueARM_OpLeq16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -14979,10 +14331,9 @@ func rewriteValueARM_OpLeq16U(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -14998,8 +14349,7 @@ func rewriteValueARM_OpLeq32(v *Value) bool { y := v_1 v.reset(OpARMLessEqual) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -15015,8 +14365,7 @@ func rewriteValueARM_OpLeq32F(v *Value) bool { y := v_1 v.reset(OpARMGreaterEqual) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(y) - v0.AddArg(x) + v0.AddArg2(y, x) v.AddArg(v0) return true } @@ -15032,8 +14381,7 @@ func rewriteValueARM_OpLeq32U(v *Value) bool { y := v_1 v.reset(OpARMLessEqualU) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -15049,8 +14397,7 @@ func rewriteValueARM_OpLeq64F(v *Value) bool { y := v_1 v.reset(OpARMGreaterEqual) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(y) - v0.AddArg(x) + v0.AddArg2(y, x) v.AddArg(v0) return true } @@ -15069,10 +14416,9 @@ func rewriteValueARM_OpLeq8(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15091,10 +14437,9 @@ func rewriteValueARM_OpLeq8U(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15113,10 +14458,9 @@ func rewriteValueARM_OpLess16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15135,10 +14479,9 @@ func rewriteValueARM_OpLess16U(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15154,8 +14497,7 @@ func rewriteValueARM_OpLess32(v *Value) bool { y := v_1 v.reset(OpARMLessThan) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -15171,8 +14513,7 @@ func rewriteValueARM_OpLess32F(v *Value) bool { y := v_1 v.reset(OpARMGreaterThan) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(y) - v0.AddArg(x) + v0.AddArg2(y, x) v.AddArg(v0) return true } @@ -15188,8 +14529,7 @@ func rewriteValueARM_OpLess32U(v *Value) bool { y := v_1 v.reset(OpARMLessThanU) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -15205,8 +14545,7 @@ func rewriteValueARM_OpLess64F(v *Value) bool { y := v_1 v.reset(OpARMGreaterThan) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(y) - v0.AddArg(x) + v0.AddArg2(y, x) v.AddArg(v0) return true } @@ -15225,10 +14564,9 @@ func rewriteValueARM_OpLess8(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15247,10 +14585,9 @@ func rewriteValueARM_OpLess8U(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -15269,8 +14606,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVBUload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15284,8 +14620,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVBload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15299,8 +14634,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVBUload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15314,8 +14648,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVHload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15329,8 +14662,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVHUload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15344,8 +14676,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVWload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15359,8 +14690,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVFload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } // match: (Load <t> ptr mem) @@ -15374,8 +14704,7 @@ func rewriteValueARM_OpLoad(v *Value) bool { break } v.reset(OpARMMOVDload) - v.AddArg(ptr) - v.AddArg(mem) + v.AddArg2(ptr, mem) return true } return false @@ -15406,17 +14735,15 @@ func rewriteValueARM_OpLsh16x16(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -15432,13 +14759,11 @@ func rewriteValueARM_OpLsh16x32(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(x, y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg2(v0, v1) return true } } @@ -15490,10 +14815,9 @@ func rewriteValueARM_OpLsh16x8(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSLL) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -15510,17 +14834,15 @@ func rewriteValueARM_OpLsh32x16(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -15536,13 +14858,11 @@ func rewriteValueARM_OpLsh32x32(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(x, y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg2(v0, v1) return true } } @@ -15594,10 +14914,9 @@ func rewriteValueARM_OpLsh32x8(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSLL) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -15614,17 +14933,15 @@ func rewriteValueARM_OpLsh8x16(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -15640,13 +14957,11 @@ func rewriteValueARM_OpLsh8x32(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSLL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(x, y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg2(v0, v1) return true } } @@ -15698,10 +15013,9 @@ func rewriteValueARM_OpLsh8x8(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSLL) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -15718,10 +15032,9 @@ func rewriteValueARM_OpMod16(v *Value) bool { v.reset(OpMod32) 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 } } @@ -15738,10 +15051,9 @@ func rewriteValueARM_OpMod16u(v *Value) bool { v.reset(OpMod32u) 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 } } @@ -15761,35 +15073,28 @@ func rewriteValueARM_OpMod32(v *Value) bool { v2 := b.NewValue0(v.Pos, OpARMCALLudiv, types.NewTuple(typ.UInt32, typ.UInt32)) v3 := b.NewValue0(v.Pos, OpARMSUB, typ.UInt32) v4 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v4.AddArg(x) v5 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v5.AddArg(x) - v4.AddArg(v5) - v3.AddArg(v4) + v4.AddArg2(x, v5) v6 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v6.AddArg(x) - v3.AddArg(v6) - v2.AddArg(v3) + v3.AddArg2(v4, v6) v7 := b.NewValue0(v.Pos, OpARMSUB, typ.UInt32) v8 := b.NewValue0(v.Pos, OpARMXOR, typ.UInt32) - v8.AddArg(y) v9 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v9.AddArg(y) - v8.AddArg(v9) - v7.AddArg(v8) + v8.AddArg2(y, v9) v10 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v10.AddArg(y) - v7.AddArg(v10) - v2.AddArg(v7) + v7.AddArg2(v8, v10) + v2.AddArg2(v3, v7) v1.AddArg(v2) - v0.AddArg(v1) v11 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v11.AddArg(x) - v0.AddArg(v11) - v.AddArg(v0) + v0.AddArg2(v1, v11) v12 := b.NewValue0(v.Pos, OpSignmask, typ.Int32) v12.AddArg(x) - v.AddArg(v12) + v.AddArg2(v0, v12) return true } } @@ -15806,8 +15111,7 @@ func rewriteValueARM_OpMod32u(v *Value) bool { v.reset(OpSelect1) v.Type = typ.UInt32 v0 := b.NewValue0(v.Pos, OpARMCALLudiv, types.NewTuple(typ.UInt32, typ.UInt32)) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -15825,10 +15129,9 @@ func rewriteValueARM_OpMod8(v *Value) bool { v.reset(OpMod32) 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 } } @@ -15845,10 +15148,9 @@ func rewriteValueARM_OpMod8u(v *Value) bool { v.reset(OpMod32u) 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 } } @@ -15881,12 +15183,9 @@ func rewriteValueARM_OpMove(v *Value) bool { src := v_1 mem := v_2 v.reset(OpARMMOVBstore) - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVBUload, 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] {t} dst src mem) @@ -15904,12 +15203,9 @@ func rewriteValueARM_OpMove(v *Value) bool { break } v.reset(OpARMMOVHstore) - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVHUload, 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 [2] dst src mem) @@ -15923,20 +15219,14 @@ func rewriteValueARM_OpMove(v *Value) bool { mem := v_2 v.reset(OpARMMOVBstore) v.AuxInt = 1 - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v0.AuxInt = 1 - v0.AddArg(src) - v0.AddArg(mem) - v.AddArg(v0) + v0.AddArg2(src, mem) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) - v1.AddArg(dst) v2 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) - 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 [4] {t} dst src mem) @@ -15954,12 +15244,9 @@ func rewriteValueARM_OpMove(v *Value) bool { break } v.reset(OpARMMOVWstore) - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVWload, 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 [4] {t} dst src mem) @@ -15978,20 +15265,14 @@ func rewriteValueARM_OpMove(v *Value) bool { } v.reset(OpARMMOVHstore) v.AuxInt = 2 - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVHUload, typ.UInt16) v0.AuxInt = 2 - v0.AddArg(src) - v0.AddArg(mem) - v.AddArg(v0) + v0.AddArg2(src, mem) v1 := b.NewValue0(v.Pos, OpARMMOVHstore, types.TypeMem) - v1.AddArg(dst) v2 := b.NewValue0(v.Pos, OpARMMOVHUload, 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 [4] dst src mem) @@ -16005,38 +15286,26 @@ func rewriteValueARM_OpMove(v *Value) bool { mem := v_2 v.reset(OpARMMOVBstore) v.AuxInt = 3 - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v0.AuxInt = 3 - v0.AddArg(src) - v0.AddArg(mem) - v.AddArg(v0) + v0.AddArg2(src, mem) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v1.AuxInt = 2 - v1.AddArg(dst) v2 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v2.AuxInt = 2 - v2.AddArg(src) - v2.AddArg(mem) - v1.AddArg(v2) + v2.AddArg2(src, mem) v3 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v3.AuxInt = 1 - v3.AddArg(dst) v4 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v4.AuxInt = 1 - v4.AddArg(src) - v4.AddArg(mem) - v3.AddArg(v4) + v4.AddArg2(src, mem) v5 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) - v5.AddArg(dst) v6 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) - v6.AddArg(src) - v6.AddArg(mem) - v5.AddArg(v6) - v5.AddArg(mem) - v3.AddArg(v5) - v1.AddArg(v3) - v.AddArg(v1) + v6.AddArg2(src, mem) + v5.AddArg3(dst, v6, mem) + v3.AddArg3(dst, v4, v5) + v1.AddArg3(dst, v2, v3) + v.AddArg3(dst, v0, v1) return true } // match: (Move [3] dst src mem) @@ -16050,29 +15319,20 @@ func rewriteValueARM_OpMove(v *Value) bool { mem := v_2 v.reset(OpARMMOVBstore) v.AuxInt = 2 - v.AddArg(dst) v0 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v0.AuxInt = 2 - v0.AddArg(src) - v0.AddArg(mem) - v.AddArg(v0) + v0.AddArg2(src, mem) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v1.AuxInt = 1 - v1.AddArg(dst) v2 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) v2.AuxInt = 1 - v2.AddArg(src) - v2.AddArg(mem) - v1.AddArg(v2) + v2.AddArg2(src, mem) v3 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) - v3.AddArg(dst) v4 := b.NewValue0(v.Pos, OpARMMOVBUload, typ.UInt8) - 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] {t} dst src mem) @@ -16089,9 +15349,7 @@ func rewriteValueARM_OpMove(v *Value) bool { } v.reset(OpARMDUFFCOPY) v.AuxInt = 8 * (128 - s/4) - v.AddArg(dst) - v.AddArg(src) - v.AddArg(mem) + v.AddArg3(dst, src, mem) return true } // match: (Move [s] {t} dst src mem) @@ -16108,13 +15366,10 @@ func rewriteValueARM_OpMove(v *Value) bool { } v.reset(OpARMLoweredMove) v.AuxInt = t.(*types.Type).Alignment() - v.AddArg(dst) - v.AddArg(src) v0 := b.NewValue0(v.Pos, OpARMADDconst, src.Type) v0.AuxInt = s - moveSize(t.(*types.Type).Alignment(), config) v0.AddArg(src) - v.AddArg(v0) - v.AddArg(mem) + v.AddArg4(dst, src, v0, mem) return true } return false @@ -16169,10 +15424,9 @@ func rewriteValueARM_OpNeq16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -16188,8 +15442,7 @@ func rewriteValueARM_OpNeq32(v *Value) bool { y := v_1 v.reset(OpARMNotEqual) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -16205,8 +15458,7 @@ func rewriteValueARM_OpNeq32F(v *Value) bool { y := v_1 v.reset(OpARMNotEqual) v0 := b.NewValue0(v.Pos, OpARMCMPF, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -16222,8 +15474,7 @@ func rewriteValueARM_OpNeq64F(v *Value) bool { y := v_1 v.reset(OpARMNotEqual) v0 := b.NewValue0(v.Pos, OpARMCMPD, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -16242,10 +15493,9 @@ func rewriteValueARM_OpNeq8(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMCMP, 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 } @@ -16261,8 +15511,7 @@ func rewriteValueARM_OpNeqPtr(v *Value) bool { y := v_1 v.reset(OpARMNotEqual) v0 := b.NewValue0(v.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) v.AddArg(v0) return true } @@ -16322,9 +15571,7 @@ func rewriteValueARM_OpPanicBounds(v *Value) bool { } v.reset(OpARMLoweredPanicBoundsA) 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) @@ -16340,9 +15587,7 @@ func rewriteValueARM_OpPanicBounds(v *Value) bool { } v.reset(OpARMLoweredPanicBoundsB) 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) @@ -16358,9 +15603,7 @@ func rewriteValueARM_OpPanicBounds(v *Value) bool { } v.reset(OpARMLoweredPanicBoundsC) v.AuxInt = kind - v.AddArg(x) - v.AddArg(y) - v.AddArg(mem) + v.AddArg3(x, y, mem) return true } return false @@ -16384,10 +15627,7 @@ func rewriteValueARM_OpPanicExtend(v *Value) bool { } v.reset(OpARMLoweredPanicExtendA) v.AuxInt = kind - v.AddArg(hi) - v.AddArg(lo) - v.AddArg(y) - v.AddArg(mem) + v.AddArg4(hi, lo, y, mem) return true } // match: (PanicExtend [kind] hi lo y mem) @@ -16404,10 +15644,7 @@ func rewriteValueARM_OpPanicExtend(v *Value) bool { } v.reset(OpARMLoweredPanicExtendB) v.AuxInt = kind - v.AddArg(hi) - v.AddArg(lo) - v.AddArg(y) - v.AddArg(mem) + v.AddArg4(hi, lo, y, mem) return true } // match: (PanicExtend [kind] hi lo y mem) @@ -16424,10 +15661,7 @@ func rewriteValueARM_OpPanicExtend(v *Value) bool { } v.reset(OpARMLoweredPanicExtendC) v.AuxInt = kind - v.AddArg(hi) - v.AddArg(lo) - v.AddArg(y) - v.AddArg(mem) + v.AddArg4(hi, lo, y, mem) return true } return false @@ -16448,17 +15682,14 @@ func rewriteValueARM_OpRotateLeft16(v *Value) bool { c := v_1.AuxInt v.reset(OpOr16) v0 := b.NewValue0(v.Pos, OpLsh16x32, t) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v1.AuxInt = c & 15 - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpRsh16Ux32, t) - v2.AddArg(x) v3 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v3.AuxInt = -c & 15 - v2.AddArg(v3) - v.AddArg(v2) + v2.AddArg2(x, v3) + v.AddArg2(v0, v2) return true } return false @@ -16486,11 +15717,10 @@ func rewriteValueARM_OpRotateLeft32(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSRR) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpARMRSBconst, y.Type) v0.AuxInt = 0 v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -16510,17 +15740,14 @@ func rewriteValueARM_OpRotateLeft8(v *Value) bool { c := v_1.AuxInt v.reset(OpOr8) v0 := b.NewValue0(v.Pos, OpLsh8x32, t) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v1.AuxInt = c & 7 - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpRsh8Ux32, t) - v2.AddArg(x) v3 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v3.AuxInt = -c & 7 - v2.AddArg(v3) - v.AddArg(v2) + v2.AddArg2(x, v3) + v.AddArg2(v0, v2) return true } return false @@ -16540,17 +15767,15 @@ func rewriteValueARM_OpRsh16Ux16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) 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) - v.AddArg(v0) + v0.AddArg2(v1, v2) v3 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v3.AuxInt = 256 v4 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v4.AddArg(y) v3.AddArg(v4) - v.AddArg(v3) + v.AddArg2(v0, v3) return true } } @@ -16569,13 +15794,11 @@ func rewriteValueARM_OpRsh16Ux32(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(x) - v0.AddArg(v1) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(v1, y) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v2.AddArg(y) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -16634,10 +15857,9 @@ func rewriteValueARM_OpRsh16Ux8(v *Value) bool { v.reset(OpARMSRL) v0 := b.NewValue0(v.Pos, OpZeroExt16to32, 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 } } @@ -16654,16 +15876,14 @@ func rewriteValueARM_OpRsh16x16(v *Value) bool { v.reset(OpARMSRAcond) v0 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32) v0.AddArg(x) - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v.AddArg(v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg3(v0, v1, v2) return true } } @@ -16680,12 +15900,10 @@ func rewriteValueARM_OpRsh16x32(v *Value) bool { v.reset(OpARMSRAcond) v0 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg3(v0, y, v1) return true } } @@ -16749,10 +15967,9 @@ func rewriteValueARM_OpRsh16x8(v *Value) bool { v.reset(OpARMSRA) v0 := b.NewValue0(v.Pos, OpSignExt16to32, typ.Int32) 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 } } @@ -16769,17 +15986,15 @@ func rewriteValueARM_OpRsh32Ux16(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v0.AddArg(v1) - v.AddArg(v0) + v0.AddArg2(x, v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -16795,13 +16010,11 @@ func rewriteValueARM_OpRsh32Ux32(v *Value) bool { v.reset(OpARMCMOVWHSconst) v.AuxInt = 0 v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) - v0.AddArg(x) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(x, y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg2(v0, v1) return true } } @@ -16853,10 +16066,9 @@ func rewriteValueARM_OpRsh32Ux8(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSRL) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -16871,16 +16083,14 @@ func rewriteValueARM_OpRsh32x16(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSRAcond) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v2.AddArg(y) v1.AddArg(v2) - v.AddArg(v1) + v.AddArg3(x, v0, v1) return true } } @@ -16894,12 +16104,10 @@ func rewriteValueARM_OpRsh32x32(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSRAcond) - v.AddArg(x) - v.AddArg(y) v0 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v0.AuxInt = 256 v0.AddArg(y) - v.AddArg(v0) + v.AddArg3(x, y, v0) return true } } @@ -16953,10 +16161,9 @@ func rewriteValueARM_OpRsh32x8(v *Value) bool { x := v_0 y := v_1 v.reset(OpARMSRA) - v.AddArg(x) v0 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v0.AddArg(y) - v.AddArg(v0) + v.AddArg2(x, v0) return true } } @@ -16975,17 +16182,15 @@ func rewriteValueARM_OpRsh8Ux16(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v1.AddArg(x) - v0.AddArg(v1) v2 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v2.AddArg(y) - v0.AddArg(v2) - v.AddArg(v0) + v0.AddArg2(v1, v2) v3 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v3.AuxInt = 256 v4 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v4.AddArg(y) v3.AddArg(v4) - v.AddArg(v3) + v.AddArg2(v0, v3) return true } } @@ -17004,13 +16209,11 @@ func rewriteValueARM_OpRsh8Ux32(v *Value) bool { v0 := b.NewValue0(v.Pos, OpARMSRL, x.Type) v1 := b.NewValue0(v.Pos, OpZeroExt8to32, typ.UInt32) v1.AddArg(x) - v0.AddArg(v1) - v0.AddArg(y) - v.AddArg(v0) + v0.AddArg2(v1, y) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v2.AddArg(y) - v.AddArg(v2) + v.AddArg2(v0, v2) return true } } @@ -17069,10 +16272,9 @@ func rewriteValueARM_OpRsh8Ux8(v *Value) bool { v.reset(OpARMSRL) 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 } } @@ -17089,16 +16291,14 @@ func rewriteValueARM_OpRsh8x16(v *Value) bool { v.reset(OpARMSRAcond) v0 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32) v0.AddArg(x) - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v1.AddArg(y) - v.AddArg(v1) v2 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v2.AuxInt = 256 v3 := b.NewValue0(v.Pos, OpZeroExt16to32, typ.UInt32) v3.AddArg(y) v2.AddArg(v3) - v.AddArg(v2) + v.AddArg3(v0, v1, v2) return true } } @@ -17115,12 +16315,10 @@ func rewriteValueARM_OpRsh8x32(v *Value) bool { v.reset(OpARMSRAcond) v0 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32) v0.AddArg(x) - v.AddArg(v0) - v.AddArg(y) v1 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) v1.AuxInt = 256 v1.AddArg(y) - v.AddArg(v1) + v.AddArg3(v0, y, v1) return true } } @@ -17184,10 +16382,9 @@ func rewriteValueARM_OpRsh8x8(v *Value) bool { v.reset(OpARMSRA) v0 := b.NewValue0(v.Pos, OpSignExt8to32, typ.Int32) 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 } } @@ -17362,9 +16559,7 @@ func rewriteValueARM_OpStore(v *Value) bool { break } v.reset(OpARMMOVBstore) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (Store {t} ptr val mem) @@ -17379,9 +16574,7 @@ func rewriteValueARM_OpStore(v *Value) bool { break } v.reset(OpARMMOVHstore) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (Store {t} ptr val mem) @@ -17396,9 +16589,7 @@ func rewriteValueARM_OpStore(v *Value) bool { break } v.reset(OpARMMOVWstore) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (Store {t} ptr val mem) @@ -17413,9 +16604,7 @@ func rewriteValueARM_OpStore(v *Value) bool { break } v.reset(OpARMMOVFstore) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } // match: (Store {t} ptr val mem) @@ -17430,9 +16619,7 @@ func rewriteValueARM_OpStore(v *Value) bool { break } v.reset(OpARMMOVDstore) - v.AddArg(ptr) - v.AddArg(val) - v.AddArg(mem) + v.AddArg3(ptr, val, mem) return true } return false @@ -17464,11 +16651,9 @@ func rewriteValueARM_OpZero(v *Value) bool { ptr := v_0 mem := v_1 v.reset(OpARMMOVBstore) - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) - v.AddArg(mem) + v.AddArg3(ptr, v0, mem) return true } // match: (Zero [2] {t} ptr mem) @@ -17485,11 +16670,9 @@ func rewriteValueARM_OpZero(v *Value) bool { break } v.reset(OpARMMOVHstore) - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) - v.AddArg(mem) + v.AddArg3(ptr, v0, mem) return true } // match: (Zero [2] ptr mem) @@ -17502,18 +16685,14 @@ func rewriteValueARM_OpZero(v *Value) bool { mem := v_1 v.reset(OpARMMOVBstore) v.AuxInt = 1 - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v1.AuxInt = 0 - v1.AddArg(ptr) v2 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) 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 [4] {t} ptr mem) @@ -17530,11 +16709,9 @@ func rewriteValueARM_OpZero(v *Value) bool { break } v.reset(OpARMMOVWstore) - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) - v.AddArg(mem) + v.AddArg3(ptr, v0, mem) return true } // match: (Zero [4] {t} ptr mem) @@ -17552,18 +16729,14 @@ func rewriteValueARM_OpZero(v *Value) bool { } v.reset(OpARMMOVHstore) v.AuxInt = 2 - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMMOVHstore, types.TypeMem) v1.AuxInt = 0 - v1.AddArg(ptr) v2 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) 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 [4] ptr mem) @@ -17576,32 +16749,24 @@ func rewriteValueARM_OpZero(v *Value) bool { mem := v_1 v.reset(OpARMMOVBstore) v.AuxInt = 3 - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v1.AuxInt = 2 - v1.AddArg(ptr) v2 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v2.AuxInt = 0 - v1.AddArg(v2) v3 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v3.AuxInt = 1 - v3.AddArg(ptr) v4 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v4.AuxInt = 0 - v3.AddArg(v4) v5 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v5.AuxInt = 0 - v5.AddArg(ptr) v6 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) 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 [3] ptr mem) @@ -17614,25 +16779,19 @@ func rewriteValueARM_OpZero(v *Value) bool { mem := v_1 v.reset(OpARMMOVBstore) v.AuxInt = 2 - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v1.AuxInt = 1 - v1.AddArg(ptr) v2 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v2.AuxInt = 0 - v1.AddArg(v2) v3 := b.NewValue0(v.Pos, OpARMMOVBstore, types.TypeMem) v3.AuxInt = 0 - v3.AddArg(ptr) v4 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) 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 [s] {t} ptr mem) @@ -17648,11 +16807,9 @@ func rewriteValueARM_OpZero(v *Value) bool { } v.reset(OpARMDUFFZERO) v.AuxInt = 4 * (128 - s/4) - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v0.AuxInt = 0 - v.AddArg(v0) - v.AddArg(mem) + v.AddArg3(ptr, v0, mem) return true } // match: (Zero [s] {t} ptr mem) @@ -17668,15 +16825,12 @@ func rewriteValueARM_OpZero(v *Value) bool { } v.reset(OpARMLoweredZero) v.AuxInt = t.(*types.Type).Alignment() - v.AddArg(ptr) v0 := b.NewValue0(v.Pos, OpARMADDconst, ptr.Type) v0.AuxInt = s - moveSize(t.(*types.Type).Alignment(), config) v0.AddArg(ptr) - v.AddArg(v0) v1 := b.NewValue0(v.Pos, OpARMMOVWconst, typ.UInt32) v1.AuxInt = 0 - v.AddArg(v1) - v.AddArg(mem) + v.AddArg4(ptr, v0, v1, mem) return true } return false @@ -17693,8 +16847,7 @@ func rewriteValueARM_OpZeromask(v *Value) bool { v.AuxInt = 31 v0 := b.NewValue0(v.Pos, OpARMRSBshiftRL, typ.Int32) v0.AuxInt = 1 - v0.AddArg(x) - v0.AddArg(x) + v0.AddArg2(x, x) v.AddArg(v0) return true } @@ -17764,8 +16917,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -17789,11 +16941,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -17842,8 +16992,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -17868,8 +17017,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -17894,8 +17042,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -17919,9 +17066,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -17945,9 +17090,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -17971,9 +17114,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18000,8 +17141,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18027,11 +17167,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -18080,8 +17218,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18106,8 +17243,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18132,8 +17268,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18157,9 +17292,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18183,9 +17316,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18209,9 +17340,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18238,8 +17367,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18290,8 +17418,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18316,8 +17443,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18342,8 +17468,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18367,9 +17492,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18393,9 +17516,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18419,9 +17540,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18448,8 +17567,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18500,8 +17618,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18526,8 +17643,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18552,8 +17668,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18577,9 +17692,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18603,9 +17716,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18629,9 +17740,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMEQ) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18696,8 +17805,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18721,11 +17829,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -18774,8 +17880,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18800,8 +17905,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18826,8 +17930,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18851,9 +17954,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18877,9 +17978,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18903,9 +18002,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -18932,8 +18029,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -18959,11 +18055,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -19012,8 +18106,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19038,8 +18131,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19064,8 +18156,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19089,9 +18180,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19115,9 +18204,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19141,9 +18228,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19170,8 +18255,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19222,8 +18306,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19248,8 +18331,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19274,8 +18356,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19299,9 +18380,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19325,9 +18404,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19351,9 +18428,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19380,8 +18455,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19432,8 +18506,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19458,8 +18531,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19484,8 +18556,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19509,9 +18580,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19535,9 +18604,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19561,9 +18628,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19629,8 +18694,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19654,11 +18718,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -19707,8 +18769,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19733,8 +18794,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19759,8 +18819,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19784,9 +18843,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19810,9 +18867,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19836,9 +18891,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -19865,8 +18918,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19917,8 +18969,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19943,8 +18994,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19969,8 +19019,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -19994,9 +19043,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20020,9 +19067,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20046,9 +19091,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20075,8 +19118,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20102,11 +19144,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -20155,8 +19195,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20181,8 +19220,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20207,8 +19245,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20232,9 +19269,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20258,9 +19293,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20284,9 +19317,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20313,8 +19344,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20365,8 +19395,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20391,8 +19420,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20417,8 +19445,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20442,9 +19469,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20468,9 +19493,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20494,9 +19517,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMGT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20663,8 +19684,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20688,11 +19708,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -20741,8 +19759,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20767,8 +19784,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20793,8 +19809,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20818,9 +19833,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20844,9 +19857,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20870,9 +19881,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -20899,8 +19908,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -20926,11 +19934,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -20979,8 +19985,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21005,8 +20010,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21031,8 +20035,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21056,9 +20059,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21082,9 +20083,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21108,9 +20107,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21137,8 +20134,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21189,8 +20185,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21215,8 +20210,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21241,8 +20235,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21266,9 +20259,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21292,9 +20283,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21318,9 +20307,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21347,8 +20334,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21399,8 +20385,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21425,8 +20410,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21451,8 +20435,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21476,9 +20459,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21502,9 +20483,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21528,9 +20507,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21596,8 +20573,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21621,11 +20597,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -21674,8 +20648,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21700,8 +20673,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21726,8 +20698,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21751,9 +20722,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21777,9 +20746,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21803,9 +20770,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -21832,8 +20797,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21859,11 +20823,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -21912,8 +20874,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21938,8 +20899,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21964,8 +20924,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -21989,9 +20948,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22015,9 +20972,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22041,9 +20996,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22070,8 +21023,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22122,8 +21074,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22148,8 +21099,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22174,8 +21124,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22199,9 +21148,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22225,9 +21172,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22251,9 +21196,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22280,8 +21223,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22332,8 +21274,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22358,8 +21299,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22384,8 +21324,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22409,9 +21348,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22435,9 +21372,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22461,9 +21396,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMLT) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22687,8 +21620,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22712,11 +21644,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMP, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -22765,8 +21695,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22791,8 +21720,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22817,8 +21745,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22842,9 +21769,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22868,9 +21793,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22894,9 +21817,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMPshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -22923,8 +21844,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -22950,11 +21870,9 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMN, types.TypeFlags) - v0.AddArg(a) v1 := b.NewValue0(v_0.Pos, OpARMMUL, x.Type) - v1.AddArg(x) - v1.AddArg(y) - v0.AddArg(v1) + v1.AddArg2(x, y) + v0.AddArg2(a, v1) b.AddControl(v0) return true } @@ -23003,8 +21921,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23029,8 +21946,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23055,8 +21971,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23080,9 +21995,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23106,9 +22019,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23132,9 +22043,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMCMNshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23161,8 +22070,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTST, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23213,8 +22121,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23239,8 +22146,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23265,8 +22171,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23290,9 +22195,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23316,9 +22219,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23342,9 +22243,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTSTshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23371,8 +22270,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQ, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23423,8 +22321,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23449,8 +22346,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRL, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23475,8 +22371,7 @@ func rewriteBlockARM(b *Block) bool { b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRA, types.TypeFlags) v0.AuxInt = c - v0.AddArg(x) - v0.AddArg(y) + v0.AddArg2(x, y) b.AddControl(v0) return true } @@ -23500,9 +22395,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftLLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23526,9 +22419,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRLreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } @@ -23552,9 +22443,7 @@ func rewriteBlockARM(b *Block) bool { } b.Reset(BlockARMNE) v0 := b.NewValue0(v_0.Pos, OpARMTEQshiftRAreg, types.TypeFlags) - v0.AddArg(x) - v0.AddArg(y) - v0.AddArg(z) + v0.AddArg3(x, y, z) b.AddControl(v0) return true } |