aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/rewrite386.go
diff options
context:
space:
mode:
authorJosh Bleecher Snyder <josharian@gmail.com>2020-02-26 11:29:34 -0800
committerJosh Bleecher Snyder <josharian@gmail.com>2020-03-01 15:27:58 +0000
commit7913f7dfcf2c281b99c6ddd278aa851de47ada9d (patch)
tree8a34c42a6e16c5c7864d49030ed474dddff2ff82 /src/cmd/compile/internal/ssa/rewrite386.go
parenta908e09a34fff3c47efab69857d27bf6965b948a (diff)
downloadgo-7913f7dfcf2c281b99c6ddd278aa851de47ada9d.tar.gz
go-7913f7dfcf2c281b99c6ddd278aa851de47ada9d.zip
cmd/compile: add specialized AddArgN functions for rewrite rules
This shrinks the compiler without impacting performance. (The performance-sensitive part of rewrite rules is the non-match case.) Passes toolstash-check -all. Executable size: file before after Δ % compile 20356168 20163960 -192208 -0.944% total 115599376 115407168 -192208 -0.166% Text size: file before after Δ % cmd/compile/internal/ssa.s 3928309 3778774 -149535 -3.807% total 18862943 18713408 -149535 -0.793% Memory allocated compiling package SSA: SSA 12.7M ± 0% 12.5M ± 0% -1.74% (p=0.008 n=5+5) Compiler speed impact: name old time/op new time/op delta Template 211ms ± 1% 211ms ± 2% ~ (p=0.832 n=49+49) Unicode 82.8ms ± 2% 83.2ms ± 2% +0.44% (p=0.022 n=46+49) GoTypes 726ms ± 1% 728ms ± 2% ~ (p=0.076 n=46+48) Compiler 3.39s ± 2% 3.40s ± 2% ~ (p=0.633 n=48+49) SSA 7.71s ± 1% 7.65s ± 1% -0.78% (p=0.000 n=45+44) Flate 134ms ± 1% 134ms ± 1% ~ (p=0.195 n=50+49) GoParser 167ms ± 1% 167ms ± 1% ~ (p=0.390 n=47+47) Reflect 453ms ± 3% 452ms ± 2% ~ (p=0.492 n=48+49) Tar 184ms ± 3% 184ms ± 2% ~ (p=0.862 n=50+48) XML 248ms ± 2% 248ms ± 2% ~ (p=0.096 n=49+47) [Geo mean] 415ms 415ms -0.03% name old user-time/op new user-time/op delta Template 273ms ± 1% 273ms ± 2% ~ (p=0.711 n=48+48) Unicode 117ms ± 6% 117ms ± 5% ~ (p=0.633 n=50+50) GoTypes 972ms ± 2% 974ms ± 1% +0.29% (p=0.016 n=47+49) Compiler 4.46s ± 6% 4.51s ± 6% ~ (p=0.093 n=50+50) SSA 10.4s ± 1% 10.3s ± 2% -0.94% (p=0.000 n=45+50) Flate 166ms ± 2% 167ms ± 2% ~ (p=0.148 n=49+48) GoParser 202ms ± 1% 202ms ± 2% -0.28% (p=0.014 n=47+49) Reflect 594ms ± 2% 594ms ± 2% ~ (p=0.717 n=48+49) Tar 224ms ± 2% 224ms ± 2% ~ (p=0.805 n=50+49) XML 311ms ± 1% 310ms ± 1% ~ (p=0.177 n=49+48) [Geo mean] 537ms 537ms +0.01% Change-Id: I562b9f349b34ddcff01771769e6dbbc80604da7a Reviewed-on: https://go-review.googlesource.com/c/go/+/221237 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/ssa/rewrite386.go')
-rw-r--r--src/cmd/compile/internal/ssa/rewrite386.go2215
1 files changed, 605 insertions, 1610 deletions
diff --git a/src/cmd/compile/internal/ssa/rewrite386.go b/src/cmd/compile/internal/ssa/rewrite386.go
index 4efb2d4f74..7a75b7121f 100644
--- a/src/cmd/compile/internal/ssa/rewrite386.go
+++ b/src/cmd/compile/internal/ssa/rewrite386.go
@@ -791,8 +791,7 @@ func rewriteValue386_Op386ADCL(v *Value) bool {
f := v_2
v.reset(Op386ADCLconst)
v.AuxInt = c
- v.AddArg(x)
- v.AddArg(f)
+ v.AddArg2(x, f)
return true
}
break
@@ -902,8 +901,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386LEAL8)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -918,8 +916,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386LEAL4)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -934,8 +931,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386LEAL2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -953,8 +949,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
continue
}
v.reset(Op386LEAL2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -976,8 +971,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
}
y := v_1_1
v.reset(Op386LEAL2)
- v.AddArg(y)
- v.AddArg(x)
+ v.AddArg2(y, x)
return true
}
}
@@ -995,8 +989,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
y := v_1
v.reset(Op386LEAL1)
v.AuxInt = c
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1019,8 +1012,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1045,9 +1037,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
v.reset(Op386ADDLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -1073,10 +1063,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
v.reset(Op386ADDLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
break
@@ -1091,8 +1078,7 @@ func rewriteValue386_Op386ADDL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386SUBL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -1133,8 +1119,7 @@ func rewriteValue386_Op386ADDLconst(v *Value) bool {
x := v_0.Args[0]
v.reset(Op386LEAL1)
v.AuxInt = c
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ADDLconst [c] (LEAL [d] {s} x))
@@ -1175,8 +1160,7 @@ func rewriteValue386_Op386ADDLconst(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ADDLconst [c] (LEAL2 [d] {s} x y))
@@ -1197,8 +1181,7 @@ func rewriteValue386_Op386ADDLconst(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ADDLconst [c] (LEAL4 [d] {s} x y))
@@ -1219,8 +1202,7 @@ func rewriteValue386_Op386ADDLconst(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ADDLconst [c] (LEAL8 [d] {s} x y))
@@ -1241,8 +1223,7 @@ func rewriteValue386_Op386ADDLconst(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (ADDLconst [c] x)
@@ -1310,8 +1291,7 @@ func rewriteValue386_Op386ADDLconstmodify(v *Value) bool {
v.reset(Op386ADDLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (ADDLconstmodify [valoff1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -1333,8 +1313,7 @@ func rewriteValue386_Op386ADDLconstmodify(v *Value) bool {
v.reset(Op386ADDLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -1364,9 +1343,7 @@ func rewriteValue386_Op386ADDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ADDLconstmodifyidx4 [valoff1] {sym} base (ADDLconst [off2] idx) mem)
@@ -1388,9 +1365,7 @@ func rewriteValue386_Op386ADDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2 * 4)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ADDLconstmodifyidx4 [valoff1] {sym1} (LEAL [off2] {sym2} base) idx mem)
@@ -1413,9 +1388,7 @@ func rewriteValue386_Op386ADDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
return false
@@ -1445,9 +1418,7 @@ func rewriteValue386_Op386ADDLload(v *Value) bool {
v.reset(Op386ADDLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ADDLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -1470,9 +1441,7 @@ func rewriteValue386_Op386ADDLload(v *Value) bool {
v.reset(Op386ADDLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ADDLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -1496,10 +1465,7 @@ func rewriteValue386_Op386ADDLload(v *Value) bool {
v.reset(Op386ADDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -1531,10 +1497,7 @@ func rewriteValue386_Op386ADDLloadidx4(v *Value) bool {
v.reset(Op386ADDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ADDLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -1557,10 +1520,7 @@ func rewriteValue386_Op386ADDLloadidx4(v *Value) bool {
v.reset(Op386ADDLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ADDLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -1584,10 +1544,7 @@ func rewriteValue386_Op386ADDLloadidx4(v *Value) bool {
v.reset(Op386ADDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -1617,9 +1574,7 @@ func rewriteValue386_Op386ADDLmodify(v *Value) bool {
v.reset(Op386ADDLmodify)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (ADDLmodify [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -1642,9 +1597,7 @@ func rewriteValue386_Op386ADDLmodify(v *Value) bool {
v.reset(Op386ADDLmodify)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
return false
@@ -1676,10 +1629,7 @@ func rewriteValue386_Op386ADDLmodifyidx4(v *Value) bool {
v.reset(Op386ADDLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ADDLmodifyidx4 [off1] {sym} base (ADDLconst [off2] idx) val mem)
@@ -1702,10 +1652,7 @@ func rewriteValue386_Op386ADDLmodifyidx4(v *Value) bool {
v.reset(Op386ADDLmodifyidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ADDLmodifyidx4 [off1] {sym1} (LEAL [off2] {sym2} base) idx val mem)
@@ -1729,10 +1676,7 @@ func rewriteValue386_Op386ADDLmodifyidx4(v *Value) bool {
v.reset(Op386ADDLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ADDLmodifyidx4 [off] {sym} ptr idx (MOVLconst [c]) mem)
@@ -1754,9 +1698,7 @@ func rewriteValue386_Op386ADDLmodifyidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -1786,9 +1728,7 @@ func rewriteValue386_Op386ADDSD(v *Value) bool {
v.reset(Op386ADDSDload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -1820,9 +1760,7 @@ func rewriteValue386_Op386ADDSDload(v *Value) bool {
v.reset(Op386ADDSDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ADDSDload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -1845,9 +1783,7 @@ func rewriteValue386_Op386ADDSDload(v *Value) bool {
v.reset(Op386ADDSDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -1877,9 +1813,7 @@ func rewriteValue386_Op386ADDSS(v *Value) bool {
v.reset(Op386ADDSSload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -1911,9 +1845,7 @@ func rewriteValue386_Op386ADDSSload(v *Value) bool {
v.reset(Op386ADDSSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ADDSSload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -1936,9 +1868,7 @@ func rewriteValue386_Op386ADDSSload(v *Value) bool {
v.reset(Op386ADDSSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -1982,9 +1912,7 @@ func rewriteValue386_Op386ANDL(v *Value) bool {
v.reset(Op386ANDLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -2010,10 +1938,7 @@ func rewriteValue386_Op386ANDL(v *Value) bool {
v.reset(Op386ANDLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
break
@@ -2111,8 +2036,7 @@ func rewriteValue386_Op386ANDLconstmodify(v *Value) bool {
v.reset(Op386ANDLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (ANDLconstmodify [valoff1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -2134,8 +2058,7 @@ func rewriteValue386_Op386ANDLconstmodify(v *Value) bool {
v.reset(Op386ANDLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -2165,9 +2088,7 @@ func rewriteValue386_Op386ANDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ANDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ANDLconstmodifyidx4 [valoff1] {sym} base (ADDLconst [off2] idx) mem)
@@ -2189,9 +2110,7 @@ func rewriteValue386_Op386ANDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ANDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2 * 4)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ANDLconstmodifyidx4 [valoff1] {sym1} (LEAL [off2] {sym2} base) idx mem)
@@ -2214,9 +2133,7 @@ func rewriteValue386_Op386ANDLconstmodifyidx4(v *Value) bool {
v.reset(Op386ANDLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
return false
@@ -2246,9 +2163,7 @@ func rewriteValue386_Op386ANDLload(v *Value) bool {
v.reset(Op386ANDLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ANDLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -2271,9 +2186,7 @@ func rewriteValue386_Op386ANDLload(v *Value) bool {
v.reset(Op386ANDLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ANDLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -2297,10 +2210,7 @@ func rewriteValue386_Op386ANDLload(v *Value) bool {
v.reset(Op386ANDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -2332,10 +2242,7 @@ func rewriteValue386_Op386ANDLloadidx4(v *Value) bool {
v.reset(Op386ANDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ANDLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -2358,10 +2265,7 @@ func rewriteValue386_Op386ANDLloadidx4(v *Value) bool {
v.reset(Op386ANDLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ANDLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -2385,10 +2289,7 @@ func rewriteValue386_Op386ANDLloadidx4(v *Value) bool {
v.reset(Op386ANDLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -2418,9 +2319,7 @@ func rewriteValue386_Op386ANDLmodify(v *Value) bool {
v.reset(Op386ANDLmodify)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (ANDLmodify [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -2443,9 +2342,7 @@ func rewriteValue386_Op386ANDLmodify(v *Value) bool {
v.reset(Op386ANDLmodify)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
return false
@@ -2477,10 +2374,7 @@ func rewriteValue386_Op386ANDLmodifyidx4(v *Value) bool {
v.reset(Op386ANDLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ANDLmodifyidx4 [off1] {sym} base (ADDLconst [off2] idx) val mem)
@@ -2503,10 +2397,7 @@ func rewriteValue386_Op386ANDLmodifyidx4(v *Value) bool {
v.reset(Op386ANDLmodifyidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ANDLmodifyidx4 [off1] {sym1} (LEAL [off2] {sym2} base) idx val mem)
@@ -2530,10 +2421,7 @@ func rewriteValue386_Op386ANDLmodifyidx4(v *Value) bool {
v.reset(Op386ANDLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ANDLmodifyidx4 [off] {sym} ptr idx (MOVLconst [c]) mem)
@@ -2555,9 +2443,7 @@ func rewriteValue386_Op386ANDLmodifyidx4(v *Value) bool {
v.reset(Op386ANDLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -2605,8 +2491,7 @@ func rewriteValue386_Op386CMPB(v *Value) bool {
}
v.reset(Op386InvertFlags)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -2629,9 +2514,7 @@ func rewriteValue386_Op386CMPB(v *Value) bool {
v.reset(Op386CMPBload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (CMPB x l:(MOVBload {sym} [off] ptr mem))
@@ -2654,9 +2537,7 @@ func rewriteValue386_Op386CMPB(v *Value) bool {
v0 := b.NewValue0(l.Pos, Op386CMPBload, types.TypeFlags)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(x)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, x, mem)
v.AddArg(v0)
return true
}
@@ -2772,8 +2653,7 @@ func rewriteValue386_Op386CMPBconst(v *Value) bool {
break
}
v.reset(Op386TESTB)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (CMPBconst l:(ANDLconst [c] x) [0])
@@ -2805,8 +2685,7 @@ func rewriteValue386_Op386CMPBconst(v *Value) bool {
}
x := v_0
v.reset(Op386TESTB)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (CMPBconst l:(MOVBload {sym} [off] ptr mem) [c])
@@ -2831,8 +2710,7 @@ func rewriteValue386_Op386CMPBconst(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = makeValAndOff(c, off)
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
return false
@@ -2859,8 +2737,7 @@ func rewriteValue386_Op386CMPBload(v *Value) bool {
v.reset(Op386CMPBconstload)
v.AuxInt = makeValAndOff(int64(int8(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -2908,8 +2785,7 @@ func rewriteValue386_Op386CMPL(v *Value) bool {
}
v.reset(Op386InvertFlags)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -2932,9 +2808,7 @@ func rewriteValue386_Op386CMPL(v *Value) bool {
v.reset(Op386CMPLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (CMPL x l:(MOVLload {sym} [off] ptr mem))
@@ -2957,9 +2831,7 @@ func rewriteValue386_Op386CMPL(v *Value) bool {
v0 := b.NewValue0(l.Pos, Op386CMPLload, types.TypeFlags)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(x)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, x, mem)
v.AddArg(v0)
return true
}
@@ -3090,8 +2962,7 @@ func rewriteValue386_Op386CMPLconst(v *Value) bool {
break
}
v.reset(Op386TESTL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (CMPLconst l:(ANDLconst [c] x) [0])
@@ -3123,8 +2994,7 @@ func rewriteValue386_Op386CMPLconst(v *Value) bool {
}
x := v_0
v.reset(Op386TESTL)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (CMPLconst l:(MOVLload {sym} [off] ptr mem) [c])
@@ -3149,8 +3019,7 @@ func rewriteValue386_Op386CMPLconst(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = makeValAndOff(c, off)
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
return false
@@ -3177,8 +3046,7 @@ func rewriteValue386_Op386CMPLload(v *Value) bool {
v.reset(Op386CMPLconstload)
v.AuxInt = makeValAndOff(int64(int32(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -3226,8 +3094,7 @@ func rewriteValue386_Op386CMPW(v *Value) bool {
}
v.reset(Op386InvertFlags)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -3250,9 +3117,7 @@ func rewriteValue386_Op386CMPW(v *Value) bool {
v.reset(Op386CMPWload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (CMPW x l:(MOVWload {sym} [off] ptr mem))
@@ -3275,9 +3140,7 @@ func rewriteValue386_Op386CMPW(v *Value) bool {
v0 := b.NewValue0(l.Pos, Op386CMPWload, types.TypeFlags)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(x)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, x, mem)
v.AddArg(v0)
return true
}
@@ -3393,8 +3256,7 @@ func rewriteValue386_Op386CMPWconst(v *Value) bool {
break
}
v.reset(Op386TESTW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (CMPWconst l:(ANDLconst [c] x) [0])
@@ -3426,8 +3288,7 @@ func rewriteValue386_Op386CMPWconst(v *Value) bool {
}
x := v_0
v.reset(Op386TESTW)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (CMPWconst l:(MOVWload {sym} [off] ptr mem) [c])
@@ -3452,8 +3313,7 @@ func rewriteValue386_Op386CMPWconst(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = makeValAndOff(c, off)
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
return false
@@ -3480,8 +3340,7 @@ func rewriteValue386_Op386CMPWload(v *Value) bool {
v.reset(Op386CMPWconstload)
v.AuxInt = makeValAndOff(int64(int16(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -3510,9 +3369,7 @@ func rewriteValue386_Op386DIVSD(v *Value) bool {
v.reset(Op386DIVSDload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
return false
@@ -3542,9 +3399,7 @@ func rewriteValue386_Op386DIVSDload(v *Value) bool {
v.reset(Op386DIVSDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (DIVSDload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -3567,9 +3422,7 @@ func rewriteValue386_Op386DIVSDload(v *Value) bool {
v.reset(Op386DIVSDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -3598,9 +3451,7 @@ func rewriteValue386_Op386DIVSS(v *Value) bool {
v.reset(Op386DIVSSload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
return false
@@ -3630,9 +3481,7 @@ func rewriteValue386_Op386DIVSSload(v *Value) bool {
v.reset(Op386DIVSSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (DIVSSload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -3655,9 +3504,7 @@ func rewriteValue386_Op386DIVSSload(v *Value) bool {
v.reset(Op386DIVSSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -3705,8 +3552,7 @@ func rewriteValue386_Op386LEAL(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3751,8 +3597,7 @@ func rewriteValue386_Op386LEAL(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL [off1] {sym1} (LEAL2 [off2] {sym2} x y))
@@ -3774,8 +3619,7 @@ func rewriteValue386_Op386LEAL(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL [off1] {sym1} (LEAL4 [off2] {sym2} x y))
@@ -3797,8 +3641,7 @@ func rewriteValue386_Op386LEAL(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL [off1] {sym1} (LEAL8 [off2] {sym2} x y))
@@ -3820,8 +3663,7 @@ func rewriteValue386_Op386LEAL(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -3848,8 +3690,7 @@ func rewriteValue386_Op386LEAL1(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3868,8 +3709,7 @@ func rewriteValue386_Op386LEAL1(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3888,8 +3728,7 @@ func rewriteValue386_Op386LEAL1(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3908,8 +3747,7 @@ func rewriteValue386_Op386LEAL1(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3934,8 +3772,7 @@ func rewriteValue386_Op386LEAL1(v *Value) bool {
v.reset(Op386LEAL1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
break
@@ -3963,8 +3800,7 @@ func rewriteValue386_Op386LEAL2(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL2 [c] {s} x (ADDLconst [d] y))
@@ -3985,8 +3821,7 @@ func rewriteValue386_Op386LEAL2(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = c + 2*d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL2 [c] {s} x (SHLLconst [1] y))
@@ -4002,8 +3837,7 @@ func rewriteValue386_Op386LEAL2(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL2 [c] {s} x (SHLLconst [2] y))
@@ -4019,8 +3853,7 @@ func rewriteValue386_Op386LEAL2(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL2 [off1] {sym1} (LEAL [off2] {sym2} x) y)
@@ -4042,8 +3875,7 @@ func rewriteValue386_Op386LEAL2(v *Value) bool {
v.reset(Op386LEAL2)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -4069,8 +3901,7 @@ func rewriteValue386_Op386LEAL4(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL4 [c] {s} x (ADDLconst [d] y))
@@ -4091,8 +3922,7 @@ func rewriteValue386_Op386LEAL4(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = c + 4*d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL4 [c] {s} x (SHLLconst [1] y))
@@ -4108,8 +3938,7 @@ func rewriteValue386_Op386LEAL4(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL4 [off1] {sym1} (LEAL [off2] {sym2} x) y)
@@ -4131,8 +3960,7 @@ func rewriteValue386_Op386LEAL4(v *Value) bool {
v.reset(Op386LEAL4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -4158,8 +3986,7 @@ func rewriteValue386_Op386LEAL8(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c + d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL8 [c] {s} x (ADDLconst [d] y))
@@ -4180,8 +4007,7 @@ func rewriteValue386_Op386LEAL8(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = c + 8*d
v.Aux = s
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
// match: (LEAL8 [off1] {sym1} (LEAL [off2] {sym2} x) y)
@@ -4203,8 +4029,7 @@ func rewriteValue386_Op386LEAL8(v *Value) bool {
v.reset(Op386LEAL8)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -4233,8 +4058,7 @@ func rewriteValue386_Op386MOVBLSX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
// match: (MOVBLSX (ANDLconst [c] x))
@@ -4302,8 +4126,7 @@ func rewriteValue386_Op386MOVBLSXload(v *Value) bool {
v.reset(Op386MOVBLSXload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -4332,8 +4155,7 @@ func rewriteValue386_Op386MOVBLZX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
// match: (MOVBLZX x:(MOVBloadidx1 [off] {sym} ptr idx mem))
@@ -4358,9 +4180,7 @@ func rewriteValue386_Op386MOVBLZX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBLZX (ANDLconst [c] x))
@@ -4423,8 +4243,7 @@ func rewriteValue386_Op386MOVBload(v *Value) bool {
v.reset(Op386MOVBload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBload [off1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -4446,8 +4265,7 @@ func rewriteValue386_Op386MOVBload(v *Value) bool {
v.reset(Op386MOVBload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (MOVBload [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) mem)
@@ -4470,9 +4288,7 @@ func rewriteValue386_Op386MOVBload(v *Value) bool {
v.reset(Op386MOVBloadidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBload [off] {sym} (ADDL ptr idx) mem)
@@ -4497,9 +4313,7 @@ func rewriteValue386_Op386MOVBload(v *Value) bool {
v.reset(Op386MOVBloadidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -4539,9 +4353,7 @@ func rewriteValue386_Op386MOVBloadidx1(v *Value) bool {
v.reset(Op386MOVBloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -4562,9 +4374,7 @@ func rewriteValue386_Op386MOVBloadidx1(v *Value) bool {
v.reset(Op386MOVBloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -4591,9 +4401,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstore)
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 (MOVBLZX x) mem)
@@ -4610,9 +4418,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVBstore [off1] {sym} (ADDLconst [off2] ptr) val mem)
@@ -4634,9 +4440,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVBstore [off] {sym} ptr (MOVLconst [c]) mem)
@@ -4657,8 +4461,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstoreconst)
v.AuxInt = makeValAndOff(int64(int8(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstore [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -4681,9 +4484,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (MOVBstore [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) val mem)
@@ -4707,10 +4508,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstoreidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVBstore [off] {sym} (ADDL ptr idx) val mem)
@@ -4736,10 +4534,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVBstoreidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -4766,9 +4561,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(p, w, mem)
return true
}
// match: (MOVBstore [i] {s} p (SHRLconst [8] w) x:(MOVBstore [i-1] {s} p w mem))
@@ -4793,9 +4586,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(p, w, mem)
return true
}
// match: (MOVBstore [i] {s} p w x:(MOVBstore {s} [i+1] p (SHRWconst [8] w) mem))
@@ -4821,9 +4612,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = i
v.Aux = s
- v.AddArg(p)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(p, w, mem)
return true
}
// match: (MOVBstore [i] {s} p w x:(MOVBstore {s} [i+1] p (SHRLconst [8] w) mem))
@@ -4849,9 +4638,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = i
v.Aux = s
- v.AddArg(p)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(p, w, mem)
return true
}
// match: (MOVBstore [i] {s} p (SHRLconst [j] w) x:(MOVBstore [i-1] {s} p w0:(SHRLconst [j-8] w) mem))
@@ -4881,9 +4668,7 @@ func rewriteValue386_Op386MOVBstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(p, w0, mem)
return true
}
return false
@@ -4911,8 +4696,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVBstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = s
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstoreconst [sc] {sym1} (LEAL [off] {sym2} ptr) mem)
@@ -4934,8 +4718,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVBstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVBstoreconst [x] {sym1} (LEAL1 [off] {sym2} ptr idx) mem)
@@ -4958,9 +4741,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVBstoreconstidx1)
v.AuxInt = ValAndOff(x).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstoreconst [x] {sym} (ADDL ptr idx) mem)
@@ -4977,9 +4758,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVBstoreconstidx1)
v.AuxInt = x
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstoreconst [c] {s} p x:(MOVBstoreconst [a] {s} p mem))
@@ -5004,8 +4783,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconst)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xff|ValAndOff(c).Val()<<8, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(mem)
+ v.AddArg2(p, mem)
return true
}
// match: (MOVBstoreconst [a] {s} p x:(MOVBstoreconst [c] {s} p mem))
@@ -5030,8 +4808,7 @@ func rewriteValue386_Op386MOVBstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconst)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xff|ValAndOff(c).Val()<<8, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(mem)
+ v.AddArg2(p, mem)
return true
}
return false
@@ -5055,9 +4832,7 @@ func rewriteValue386_Op386MOVBstoreconstidx1(v *Value) bool {
v.reset(Op386MOVBstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem)
@@ -5075,9 +4850,7 @@ func rewriteValue386_Op386MOVBstoreconstidx1(v *Value) bool {
v.reset(Op386MOVBstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVBstoreconstidx1 [c] {s} p i x:(MOVBstoreconstidx1 [a] {s} p i mem))
@@ -5103,9 +4876,7 @@ func rewriteValue386_Op386MOVBstoreconstidx1(v *Value) bool {
v.reset(Op386MOVWstoreconstidx1)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xff|ValAndOff(c).Val()<<8, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(i)
- v.AddArg(mem)
+ v.AddArg3(p, i, mem)
return true
}
return false
@@ -5132,10 +4903,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVBstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -5157,10 +4925,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVBstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -5192,10 +4957,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w, mem)
return true
}
}
@@ -5228,10 +4990,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w, mem)
return true
}
}
@@ -5265,10 +5024,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = i
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w, mem)
return true
}
}
@@ -5302,10 +5058,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = i
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w, mem)
return true
}
}
@@ -5343,10 +5096,7 @@ func rewriteValue386_Op386MOVBstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = i - 1
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w0, mem)
return true
}
}
@@ -5400,8 +5150,7 @@ func rewriteValue386_Op386MOVLload(v *Value) bool {
v.reset(Op386MOVLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLload [off1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -5423,8 +5172,7 @@ func rewriteValue386_Op386MOVLload(v *Value) bool {
v.reset(Op386MOVLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (MOVLload [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) mem)
@@ -5447,9 +5195,7 @@ func rewriteValue386_Op386MOVLload(v *Value) bool {
v.reset(Op386MOVLloadidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLload [off1] {sym1} (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -5472,9 +5218,7 @@ func rewriteValue386_Op386MOVLload(v *Value) bool {
v.reset(Op386MOVLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLload [off] {sym} (ADDL ptr idx) mem)
@@ -5499,9 +5243,7 @@ func rewriteValue386_Op386MOVLload(v *Value) bool {
v.reset(Op386MOVLloadidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -5540,9 +5282,7 @@ func rewriteValue386_Op386MOVLloadidx1(v *Value) bool {
v.reset(Op386MOVLloadidx4)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -5563,9 +5303,7 @@ func rewriteValue386_Op386MOVLloadidx1(v *Value) bool {
v.reset(Op386MOVLloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -5586,9 +5324,7 @@ func rewriteValue386_Op386MOVLloadidx1(v *Value) bool {
v.reset(Op386MOVLloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -5614,9 +5350,7 @@ func rewriteValue386_Op386MOVLloadidx4(v *Value) bool {
v.reset(Op386MOVLloadidx4)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLloadidx4 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -5634,9 +5368,7 @@ func rewriteValue386_Op386MOVLloadidx4(v *Value) bool {
v.reset(Op386MOVLloadidx4)
v.AuxInt = int64(int32(c + 4*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -5666,9 +5398,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVLstore [off] {sym} ptr (MOVLconst [c]) mem)
@@ -5689,8 +5419,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(int64(int32(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstore [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -5713,9 +5442,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (MOVLstore [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) val mem)
@@ -5739,10 +5466,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVLstore [off1] {sym1} (LEAL4 [off2] {sym2} ptr idx) val mem)
@@ -5766,10 +5490,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstoreidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVLstore [off] {sym} (ADDL ptr idx) val mem)
@@ -5795,10 +5516,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -5822,9 +5540,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ADDLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ANDLload x [off] {sym} ptr mem) mem)
@@ -5846,9 +5562,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ANDLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ORLload x [off] {sym} ptr mem) mem)
@@ -5870,9 +5584,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ORLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(XORLload x [off] {sym} ptr mem) mem)
@@ -5894,9 +5606,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386XORLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ADDL l:(MOVLload [off] {sym} ptr mem) x) mem)
@@ -5929,9 +5639,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ADDLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
break
@@ -5959,9 +5667,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386SUBLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ANDL l:(MOVLload [off] {sym} ptr mem) x) mem)
@@ -5994,9 +5700,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ANDLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
break
@@ -6031,9 +5735,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ORLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
break
@@ -6068,9 +5770,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386XORLmodify)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
break
@@ -6098,8 +5798,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ADDLconstmodify)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ANDLconst [c] l:(MOVLload [off] {sym} ptr mem)) mem)
@@ -6125,8 +5824,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ANDLconstmodify)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(ORLconst [c] l:(MOVLload [off] {sym} ptr mem)) mem)
@@ -6152,8 +5850,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386ORLconstmodify)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstore {sym} [off] ptr y:(XORLconst [c] l:(MOVLload [off] {sym} ptr mem)) mem)
@@ -6179,8 +5876,7 @@ func rewriteValue386_Op386MOVLstore(v *Value) bool {
v.reset(Op386XORLconstmodify)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -6208,8 +5904,7 @@ func rewriteValue386_Op386MOVLstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = s
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstoreconst [sc] {sym1} (LEAL [off] {sym2} ptr) mem)
@@ -6231,8 +5926,7 @@ func rewriteValue386_Op386MOVLstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVLstoreconst [x] {sym1} (LEAL1 [off] {sym2} ptr idx) mem)
@@ -6255,9 +5949,7 @@ func rewriteValue386_Op386MOVLstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = ValAndOff(x).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreconst [x] {sym1} (LEAL4 [off] {sym2} ptr idx) mem)
@@ -6280,9 +5972,7 @@ func rewriteValue386_Op386MOVLstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconstidx4)
v.AuxInt = ValAndOff(x).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreconst [x] {sym} (ADDL ptr idx) mem)
@@ -6299,9 +5989,7 @@ func rewriteValue386_Op386MOVLstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = x
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -6324,9 +6012,7 @@ func rewriteValue386_Op386MOVLstoreconstidx1(v *Value) bool {
v.reset(Op386MOVLstoreconstidx4)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreconstidx1 [x] {sym} (ADDLconst [c] ptr) idx mem)
@@ -6344,9 +6030,7 @@ func rewriteValue386_Op386MOVLstoreconstidx1(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem)
@@ -6364,9 +6048,7 @@ func rewriteValue386_Op386MOVLstoreconstidx1(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -6390,9 +6072,7 @@ func rewriteValue386_Op386MOVLstoreconstidx4(v *Value) bool {
v.reset(Op386MOVLstoreconstidx4)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreconstidx4 [x] {sym} ptr (ADDLconst [c] idx) mem)
@@ -6410,9 +6090,7 @@ func rewriteValue386_Op386MOVLstoreconstidx4(v *Value) bool {
v.reset(Op386MOVLstoreconstidx4)
v.AuxInt = ValAndOff(x).add(4 * c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -6438,10 +6116,7 @@ func rewriteValue386_Op386MOVLstoreidx1(v *Value) bool {
v.reset(Op386MOVLstoreidx4)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -6463,10 +6138,7 @@ func rewriteValue386_Op386MOVLstoreidx1(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -6488,10 +6160,7 @@ func rewriteValue386_Op386MOVLstoreidx1(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -6519,10 +6188,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386MOVLstoreidx4)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVLstoreidx4 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -6541,10 +6207,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386MOVLstoreidx4)
v.AuxInt = int64(int32(c + 4*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ADDLloadidx4 x [off] {sym} ptr idx mem) mem)
@@ -6567,10 +6230,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ADDLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ANDLloadidx4 x [off] {sym} ptr idx mem) mem)
@@ -6593,10 +6253,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ANDLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ORLloadidx4 x [off] {sym} ptr idx mem) mem)
@@ -6619,10 +6276,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ORLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(XORLloadidx4 x [off] {sym} ptr idx mem) mem)
@@ -6645,10 +6299,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386XORLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ADDL l:(MOVLloadidx4 [off] {sym} ptr idx mem) x) mem)
@@ -6682,10 +6333,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ADDLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
break
@@ -6714,10 +6362,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386SUBLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ANDL l:(MOVLloadidx4 [off] {sym} ptr idx mem) x) mem)
@@ -6751,10 +6396,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ANDLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
break
@@ -6790,10 +6432,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ORLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
break
@@ -6829,10 +6468,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386XORLmodifyidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, x, mem)
return true
}
break
@@ -6861,9 +6497,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ANDLconst [c] l:(MOVLloadidx4 [off] {sym} ptr idx mem)) mem)
@@ -6890,9 +6524,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ANDLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(ORLconst [c] l:(MOVLloadidx4 [off] {sym} ptr idx mem)) mem)
@@ -6919,9 +6551,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386ORLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVLstoreidx4 {sym} [off] ptr idx y:(XORLconst [c] l:(MOVLloadidx4 [off] {sym} ptr idx mem)) mem)
@@ -6948,9 +6578,7 @@ func rewriteValue386_Op386MOVLstoreidx4(v *Value) bool {
v.reset(Op386XORLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -6998,8 +6626,7 @@ func rewriteValue386_Op386MOVSDload(v *Value) bool {
v.reset(Op386MOVSDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVSDload [off1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -7021,8 +6648,7 @@ func rewriteValue386_Op386MOVSDload(v *Value) bool {
v.reset(Op386MOVSDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (MOVSDload [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) mem)
@@ -7045,9 +6671,7 @@ func rewriteValue386_Op386MOVSDload(v *Value) bool {
v.reset(Op386MOVSDloadidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSDload [off1] {sym1} (LEAL8 [off2] {sym2} ptr idx) mem)
@@ -7070,9 +6694,7 @@ func rewriteValue386_Op386MOVSDload(v *Value) bool {
v.reset(Op386MOVSDloadidx8)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSDload [off] {sym} (ADDL ptr idx) mem)
@@ -7097,9 +6719,7 @@ func rewriteValue386_Op386MOVSDload(v *Value) bool {
v.reset(Op386MOVSDloadidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -7125,9 +6745,7 @@ func rewriteValue386_Op386MOVSDloadidx1(v *Value) bool {
v.reset(Op386MOVSDloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSDloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -7145,9 +6763,7 @@ func rewriteValue386_Op386MOVSDloadidx1(v *Value) bool {
v.reset(Op386MOVSDloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -7171,9 +6787,7 @@ func rewriteValue386_Op386MOVSDloadidx8(v *Value) bool {
v.reset(Op386MOVSDloadidx8)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSDloadidx8 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -7191,9 +6805,7 @@ func rewriteValue386_Op386MOVSDloadidx8(v *Value) bool {
v.reset(Op386MOVSDloadidx8)
v.AuxInt = int64(int32(c + 8*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -7223,9 +6835,7 @@ func rewriteValue386_Op386MOVSDstore(v *Value) bool {
v.reset(Op386MOVSDstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVSDstore [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -7248,9 +6858,7 @@ func rewriteValue386_Op386MOVSDstore(v *Value) bool {
v.reset(Op386MOVSDstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (MOVSDstore [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) val mem)
@@ -7274,10 +6882,7 @@ func rewriteValue386_Op386MOVSDstore(v *Value) bool {
v.reset(Op386MOVSDstoreidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSDstore [off1] {sym1} (LEAL8 [off2] {sym2} ptr idx) val mem)
@@ -7301,10 +6906,7 @@ func rewriteValue386_Op386MOVSDstore(v *Value) bool {
v.reset(Op386MOVSDstoreidx8)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSDstore [off] {sym} (ADDL ptr idx) val mem)
@@ -7330,10 +6932,7 @@ func rewriteValue386_Op386MOVSDstore(v *Value) bool {
v.reset(Op386MOVSDstoreidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -7361,10 +6960,7 @@ func rewriteValue386_Op386MOVSDstoreidx1(v *Value) bool {
v.reset(Op386MOVSDstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSDstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -7383,10 +6979,7 @@ func rewriteValue386_Op386MOVSDstoreidx1(v *Value) bool {
v.reset(Op386MOVSDstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
return false
@@ -7412,10 +7005,7 @@ func rewriteValue386_Op386MOVSDstoreidx8(v *Value) bool {
v.reset(Op386MOVSDstoreidx8)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSDstoreidx8 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -7434,10 +7024,7 @@ func rewriteValue386_Op386MOVSDstoreidx8(v *Value) bool {
v.reset(Op386MOVSDstoreidx8)
v.AuxInt = int64(int32(c + 8*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
return false
@@ -7485,8 +7072,7 @@ func rewriteValue386_Op386MOVSSload(v *Value) bool {
v.reset(Op386MOVSSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVSSload [off1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -7508,8 +7094,7 @@ func rewriteValue386_Op386MOVSSload(v *Value) bool {
v.reset(Op386MOVSSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (MOVSSload [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) mem)
@@ -7532,9 +7117,7 @@ func rewriteValue386_Op386MOVSSload(v *Value) bool {
v.reset(Op386MOVSSloadidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSSload [off1] {sym1} (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -7557,9 +7140,7 @@ func rewriteValue386_Op386MOVSSload(v *Value) bool {
v.reset(Op386MOVSSloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSSload [off] {sym} (ADDL ptr idx) mem)
@@ -7584,9 +7165,7 @@ func rewriteValue386_Op386MOVSSload(v *Value) bool {
v.reset(Op386MOVSSloadidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -7612,9 +7191,7 @@ func rewriteValue386_Op386MOVSSloadidx1(v *Value) bool {
v.reset(Op386MOVSSloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSSloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -7632,9 +7209,7 @@ func rewriteValue386_Op386MOVSSloadidx1(v *Value) bool {
v.reset(Op386MOVSSloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -7658,9 +7233,7 @@ func rewriteValue386_Op386MOVSSloadidx4(v *Value) bool {
v.reset(Op386MOVSSloadidx4)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVSSloadidx4 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -7678,9 +7251,7 @@ func rewriteValue386_Op386MOVSSloadidx4(v *Value) bool {
v.reset(Op386MOVSSloadidx4)
v.AuxInt = int64(int32(c + 4*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -7710,9 +7281,7 @@ func rewriteValue386_Op386MOVSSstore(v *Value) bool {
v.reset(Op386MOVSSstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVSSstore [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -7735,9 +7304,7 @@ func rewriteValue386_Op386MOVSSstore(v *Value) bool {
v.reset(Op386MOVSSstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (MOVSSstore [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) val mem)
@@ -7761,10 +7328,7 @@ func rewriteValue386_Op386MOVSSstore(v *Value) bool {
v.reset(Op386MOVSSstoreidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSSstore [off1] {sym1} (LEAL4 [off2] {sym2} ptr idx) val mem)
@@ -7788,10 +7352,7 @@ func rewriteValue386_Op386MOVSSstore(v *Value) bool {
v.reset(Op386MOVSSstoreidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSSstore [off] {sym} (ADDL ptr idx) val mem)
@@ -7817,10 +7378,7 @@ func rewriteValue386_Op386MOVSSstore(v *Value) bool {
v.reset(Op386MOVSSstoreidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -7848,10 +7406,7 @@ func rewriteValue386_Op386MOVSSstoreidx1(v *Value) bool {
v.reset(Op386MOVSSstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSSstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -7870,10 +7425,7 @@ func rewriteValue386_Op386MOVSSstoreidx1(v *Value) bool {
v.reset(Op386MOVSSstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
return false
@@ -7899,10 +7451,7 @@ func rewriteValue386_Op386MOVSSstoreidx4(v *Value) bool {
v.reset(Op386MOVSSstoreidx4)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVSSstoreidx4 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -7921,10 +7470,7 @@ func rewriteValue386_Op386MOVSSstoreidx4(v *Value) bool {
v.reset(Op386MOVSSstoreidx4)
v.AuxInt = int64(int32(c + 4*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
return false
@@ -7953,8 +7499,7 @@ func rewriteValue386_Op386MOVWLSX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
// match: (MOVWLSX (ANDLconst [c] x))
@@ -8022,8 +7567,7 @@ func rewriteValue386_Op386MOVWLSXload(v *Value) bool {
v.reset(Op386MOVWLSXload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -8052,8 +7596,7 @@ func rewriteValue386_Op386MOVWLZX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(mem)
+ v0.AddArg2(ptr, mem)
return true
}
// match: (MOVWLZX x:(MOVWloadidx1 [off] {sym} ptr idx mem))
@@ -8078,9 +7621,7 @@ func rewriteValue386_Op386MOVWLZX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWLZX x:(MOVWloadidx2 [off] {sym} ptr idx mem))
@@ -8105,9 +7646,7 @@ func rewriteValue386_Op386MOVWLZX(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = off
v0.Aux = sym
- v0.AddArg(ptr)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWLZX (ANDLconst [c] x))
@@ -8170,8 +7709,7 @@ func rewriteValue386_Op386MOVWload(v *Value) bool {
v.reset(Op386MOVWload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWload [off1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -8193,8 +7731,7 @@ func rewriteValue386_Op386MOVWload(v *Value) bool {
v.reset(Op386MOVWload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (MOVWload [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) mem)
@@ -8217,9 +7754,7 @@ func rewriteValue386_Op386MOVWload(v *Value) bool {
v.reset(Op386MOVWloadidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWload [off1] {sym1} (LEAL2 [off2] {sym2} ptr idx) mem)
@@ -8242,9 +7777,7 @@ func rewriteValue386_Op386MOVWload(v *Value) bool {
v.reset(Op386MOVWloadidx2)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWload [off] {sym} (ADDL ptr idx) mem)
@@ -8269,9 +7802,7 @@ func rewriteValue386_Op386MOVWload(v *Value) bool {
v.reset(Op386MOVWloadidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -8310,9 +7841,7 @@ func rewriteValue386_Op386MOVWloadidx1(v *Value) bool {
v.reset(Op386MOVWloadidx2)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -8333,9 +7862,7 @@ func rewriteValue386_Op386MOVWloadidx1(v *Value) bool {
v.reset(Op386MOVWloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -8356,9 +7883,7 @@ func rewriteValue386_Op386MOVWloadidx1(v *Value) bool {
v.reset(Op386MOVWloadidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
break
@@ -8384,9 +7909,7 @@ func rewriteValue386_Op386MOVWloadidx2(v *Value) bool {
v.reset(Op386MOVWloadidx2)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWloadidx2 [c] {sym} ptr (ADDLconst [d] idx) mem)
@@ -8404,9 +7927,7 @@ func rewriteValue386_Op386MOVWloadidx2(v *Value) bool {
v.reset(Op386MOVWloadidx2)
v.AuxInt = int64(int32(c + 2*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -8431,9 +7952,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVWstore [off] {sym} ptr (MOVWLZX x) mem)
@@ -8450,9 +7969,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(x)
- v.AddArg(mem)
+ v.AddArg3(ptr, x, mem)
return true
}
// match: (MOVWstore [off1] {sym} (ADDLconst [off2] ptr) val mem)
@@ -8474,9 +7991,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (MOVWstore [off] {sym} ptr (MOVLconst [c]) mem)
@@ -8497,8 +8012,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstoreconst)
v.AuxInt = makeValAndOff(int64(int16(c)), off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstore [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -8521,9 +8035,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstore)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (MOVWstore [off1] {sym1} (LEAL1 [off2] {sym2} ptr idx) val mem)
@@ -8547,10 +8059,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstore [off1] {sym1} (LEAL2 [off2] {sym2} ptr idx) val mem)
@@ -8574,10 +8083,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstoreidx2)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstore [off] {sym} (ADDL ptr idx) val mem)
@@ -8603,10 +8109,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = off
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -8633,9 +8136,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVLstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg3(p, w, mem)
return true
}
// match: (MOVWstore [i] {s} p (SHRLconst [j] w) x:(MOVWstore [i-2] {s} p w0:(SHRLconst [j-16] w) mem))
@@ -8665,9 +8166,7 @@ func rewriteValue386_Op386MOVWstore(v *Value) bool {
v.reset(Op386MOVLstore)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg3(p, w0, mem)
return true
}
return false
@@ -8695,8 +8194,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = s
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstoreconst [sc] {sym1} (LEAL [off] {sym2} ptr) mem)
@@ -8718,8 +8216,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconst)
v.AuxInt = ValAndOff(sc).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (MOVWstoreconst [x] {sym1} (LEAL1 [off] {sym2} ptr idx) mem)
@@ -8742,9 +8239,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconstidx1)
v.AuxInt = ValAndOff(x).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconst [x] {sym1} (LEAL2 [off] {sym2} ptr idx) mem)
@@ -8767,9 +8262,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconstidx2)
v.AuxInt = ValAndOff(x).add(off)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconst [x] {sym} (ADDL ptr idx) mem)
@@ -8786,9 +8279,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVWstoreconstidx1)
v.AuxInt = x
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconst [c] {s} p x:(MOVWstoreconst [a] {s} p mem))
@@ -8813,8 +8304,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xffff|ValAndOff(c).Val()<<16, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(mem)
+ v.AddArg2(p, mem)
return true
}
// match: (MOVWstoreconst [a] {s} p x:(MOVWstoreconst [c] {s} p mem))
@@ -8839,8 +8329,7 @@ func rewriteValue386_Op386MOVWstoreconst(v *Value) bool {
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xffff|ValAndOff(c).Val()<<16, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(mem)
+ v.AddArg2(p, mem)
return true
}
return false
@@ -8863,9 +8352,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1(v *Value) bool {
v.reset(Op386MOVWstoreconstidx2)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconstidx1 [x] {sym} (ADDLconst [c] ptr) idx mem)
@@ -8883,9 +8370,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1(v *Value) bool {
v.reset(Op386MOVWstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem)
@@ -8903,9 +8388,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1(v *Value) bool {
v.reset(Op386MOVWstoreconstidx1)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconstidx1 [c] {s} p i x:(MOVWstoreconstidx1 [a] {s} p i mem))
@@ -8931,9 +8414,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xffff|ValAndOff(c).Val()<<16, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
- v.AddArg(i)
- v.AddArg(mem)
+ v.AddArg3(p, i, mem)
return true
}
return false
@@ -8958,9 +8439,7 @@ func rewriteValue386_Op386MOVWstoreconstidx2(v *Value) bool {
v.reset(Op386MOVWstoreconstidx2)
v.AuxInt = ValAndOff(x).add(c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconstidx2 [x] {sym} ptr (ADDLconst [c] idx) mem)
@@ -8978,9 +8457,7 @@ func rewriteValue386_Op386MOVWstoreconstidx2(v *Value) bool {
v.reset(Op386MOVWstoreconstidx2)
v.AuxInt = ValAndOff(x).add(2 * c)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
// match: (MOVWstoreconstidx2 [c] {s} p i x:(MOVWstoreconstidx2 [a] {s} p i mem))
@@ -9006,12 +8483,10 @@ func rewriteValue386_Op386MOVWstoreconstidx2(v *Value) bool {
v.reset(Op386MOVLstoreconstidx1)
v.AuxInt = makeValAndOff(ValAndOff(a).Val()&0xffff|ValAndOff(c).Val()<<16, ValAndOff(a).Off())
v.Aux = s
- v.AddArg(p)
v0 := b.NewValue0(v.Pos, Op386SHLLconst, i.Type)
v0.AuxInt = 1
v0.AddArg(i)
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(p, v0, mem)
return true
}
return false
@@ -9037,10 +8512,7 @@ func rewriteValue386_Op386MOVWstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx2)
v.AuxInt = c
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -9062,10 +8534,7 @@ func rewriteValue386_Op386MOVWstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -9087,10 +8556,7 @@ func rewriteValue386_Op386MOVWstoreidx1(v *Value) bool {
v.reset(Op386MOVWstoreidx1)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
break
@@ -9122,10 +8588,7 @@ func rewriteValue386_Op386MOVWstoreidx1(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w, mem)
return true
}
}
@@ -9163,10 +8626,7 @@ func rewriteValue386_Op386MOVWstoreidx1(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
- v.AddArg(idx)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(p, idx, w0, mem)
return true
}
}
@@ -9196,10 +8656,7 @@ func rewriteValue386_Op386MOVWstoreidx2(v *Value) bool {
v.reset(Op386MOVWstoreidx2)
v.AuxInt = int64(int32(c + d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstoreidx2 [c] {sym} ptr (ADDLconst [d] idx) val mem)
@@ -9218,10 +8675,7 @@ func rewriteValue386_Op386MOVWstoreidx2(v *Value) bool {
v.reset(Op386MOVWstoreidx2)
v.AuxInt = int64(int32(c + 2*d))
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(ptr, idx, val, mem)
return true
}
// match: (MOVWstoreidx2 [i] {s} p idx (SHRLconst [16] w) x:(MOVWstoreidx2 [i-2] {s} p idx w mem))
@@ -9247,13 +8701,10 @@ func rewriteValue386_Op386MOVWstoreidx2(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
v0 := b.NewValue0(v.Pos, Op386SHLLconst, idx.Type)
v0.AuxInt = 1
v0.AddArg(idx)
- v.AddArg(v0)
- v.AddArg(w)
- v.AddArg(mem)
+ v.AddArg4(p, v0, w, mem)
return true
}
// match: (MOVWstoreidx2 [i] {s} p idx (SHRLconst [j] w) x:(MOVWstoreidx2 [i-2] {s} p idx w0:(SHRLconst [j-16] w) mem))
@@ -9284,13 +8735,10 @@ func rewriteValue386_Op386MOVWstoreidx2(v *Value) bool {
v.reset(Op386MOVLstoreidx1)
v.AuxInt = i - 2
v.Aux = s
- v.AddArg(p)
v0 := b.NewValue0(v.Pos, Op386SHLLconst, idx.Type)
v0.AuxInt = 1
v0.AddArg(idx)
- v.AddArg(v0)
- v.AddArg(w0)
- v.AddArg(mem)
+ v.AddArg4(p, v0, w0, mem)
return true
}
return false
@@ -9334,9 +8782,7 @@ func rewriteValue386_Op386MULL(v *Value) bool {
v.reset(Op386MULLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -9362,10 +8808,7 @@ func rewriteValue386_Op386MULL(v *Value) bool {
v.reset(Op386MULLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
break
@@ -9398,8 +8841,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386NEGL)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9412,8 +8854,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386NEGL)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9426,8 +8867,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386NEGL)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9472,8 +8912,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL2)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (MULLconst [5] x)
@@ -9484,8 +8923,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL4)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (MULLconst [7] x)
@@ -9496,11 +8934,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL2)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [9] x)
@@ -9511,8 +8947,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL8)
- v.AddArg(x)
- v.AddArg(x)
+ v.AddArg2(x, x)
return true
}
// match: (MULLconst [11] x)
@@ -9523,11 +8958,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL2)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [13] x)
@@ -9538,11 +8971,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL4)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [19] x)
@@ -9553,11 +8984,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL2)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [21] x)
@@ -9568,11 +8997,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL4)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [25] x)
@@ -9583,11 +9010,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL8)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [27] x)
@@ -9599,13 +9024,10 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386LEAL8)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
v1 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v1.AddArg(x)
- v1.AddArg(x)
- v.AddArg(v1)
+ v1.AddArg2(x, x)
+ v.AddArg2(v0, v1)
return true
}
// match: (MULLconst [37] x)
@@ -9616,11 +9038,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL4)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [41] x)
@@ -9631,11 +9051,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL8)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [45] x)
@@ -9647,13 +9065,10 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386LEAL8)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
v1 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v1.AddArg(x)
- v1.AddArg(x)
- v.AddArg(v1)
+ v1.AddArg2(x, x)
+ v.AddArg2(v0, v1)
return true
}
// match: (MULLconst [73] x)
@@ -9664,11 +9079,9 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
}
x := v_0
v.reset(Op386LEAL8)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
+ v.AddArg2(x, v0)
return true
}
// match: (MULLconst [81] x)
@@ -9680,13 +9093,10 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
x := v_0
v.reset(Op386LEAL8)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
- v.AddArg(v0)
+ v0.AddArg2(x, x)
v1 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v1.AddArg(x)
- v1.AddArg(x)
- v.AddArg(v1)
+ v1.AddArg2(x, x)
+ v.AddArg2(v0, v1)
return true
}
// match: (MULLconst [c] x)
@@ -9702,8 +9112,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386SHLLconst, v.Type)
v0.AuxInt = log2(c + 1)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
// match: (MULLconst [c] x)
@@ -9719,8 +9128,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386SHLLconst, v.Type)
v0.AuxInt = log2(c - 1)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
// match: (MULLconst [c] x)
@@ -9736,8 +9144,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386SHLLconst, v.Type)
v0.AuxInt = log2(c - 2)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
// match: (MULLconst [c] x)
@@ -9753,8 +9160,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386SHLLconst, v.Type)
v0.AuxInt = log2(c - 4)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
// match: (MULLconst [c] x)
@@ -9770,8 +9176,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386SHLLconst, v.Type)
v0.AuxInt = log2(c - 8)
v0.AddArg(x)
- v.AddArg(v0)
- v.AddArg(x)
+ v.AddArg2(v0, x)
return true
}
// match: (MULLconst [c] x)
@@ -9786,8 +9191,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v.reset(Op386SHLLconst)
v.AuxInt = log2(c / 3)
v0 := b.NewValue0(v.Pos, Op386LEAL2, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9803,8 +9207,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v.reset(Op386SHLLconst)
v.AuxInt = log2(c / 5)
v0 := b.NewValue0(v.Pos, Op386LEAL4, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9820,8 +9223,7 @@ func rewriteValue386_Op386MULLconst(v *Value) bool {
v.reset(Op386SHLLconst)
v.AuxInt = log2(c / 9)
v0 := b.NewValue0(v.Pos, Op386LEAL8, v.Type)
- v0.AddArg(x)
- v0.AddArg(x)
+ v0.AddArg2(x, x)
v.AddArg(v0)
return true
}
@@ -9864,9 +9266,7 @@ func rewriteValue386_Op386MULLload(v *Value) bool {
v.reset(Op386MULLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (MULLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -9889,9 +9289,7 @@ func rewriteValue386_Op386MULLload(v *Value) bool {
v.reset(Op386MULLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (MULLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -9915,10 +9313,7 @@ func rewriteValue386_Op386MULLload(v *Value) bool {
v.reset(Op386MULLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -9950,10 +9345,7 @@ func rewriteValue386_Op386MULLloadidx4(v *Value) bool {
v.reset(Op386MULLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (MULLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -9976,10 +9368,7 @@ func rewriteValue386_Op386MULLloadidx4(v *Value) bool {
v.reset(Op386MULLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (MULLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -10003,10 +9392,7 @@ func rewriteValue386_Op386MULLloadidx4(v *Value) bool {
v.reset(Op386MULLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -10036,9 +9422,7 @@ func rewriteValue386_Op386MULSD(v *Value) bool {
v.reset(Op386MULSDload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -10070,9 +9454,7 @@ func rewriteValue386_Op386MULSDload(v *Value) bool {
v.reset(Op386MULSDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (MULSDload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -10095,9 +9477,7 @@ func rewriteValue386_Op386MULSDload(v *Value) bool {
v.reset(Op386MULSDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -10127,9 +9507,7 @@ func rewriteValue386_Op386MULSS(v *Value) bool {
v.reset(Op386MULSSload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -10161,9 +9539,7 @@ func rewriteValue386_Op386MULSSload(v *Value) bool {
v.reset(Op386MULSSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (MULSSload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -10186,9 +9562,7 @@ func rewriteValue386_Op386MULSSload(v *Value) bool {
v.reset(Op386MULSSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -10338,9 +9712,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.reset(Op386ORLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -10366,10 +9738,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.reset(Op386ORLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
break
@@ -10421,8 +9790,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = i0
v0.Aux = s
- v0.AddArg(p)
- v0.AddArg(mem)
+ v0.AddArg2(p, mem)
return true
}
break
@@ -10486,8 +9854,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = i0
v0.Aux = s
- v0.AddArg(p)
- v0.AddArg(mem)
+ v0.AddArg2(p, mem)
return true
}
}
@@ -10535,9 +9902,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = i0
v0.Aux = s
- v0.AddArg(p)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(p, idx, mem)
return true
}
}
@@ -10613,9 +9978,7 @@ func rewriteValue386_Op386ORL(v *Value) bool {
v.AddArg(v0)
v0.AuxInt = i0
v0.Aux = s
- v0.AddArg(p)
- v0.AddArg(idx)
- v0.AddArg(mem)
+ v0.AddArg3(p, idx, mem)
return true
}
}
@@ -10691,8 +10054,7 @@ func rewriteValue386_Op386ORLconstmodify(v *Value) bool {
v.reset(Op386ORLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (ORLconstmodify [valoff1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -10714,8 +10076,7 @@ func rewriteValue386_Op386ORLconstmodify(v *Value) bool {
v.reset(Op386ORLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -10745,9 +10106,7 @@ func rewriteValue386_Op386ORLconstmodifyidx4(v *Value) bool {
v.reset(Op386ORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ORLconstmodifyidx4 [valoff1] {sym} base (ADDLconst [off2] idx) mem)
@@ -10769,9 +10128,7 @@ func rewriteValue386_Op386ORLconstmodifyidx4(v *Value) bool {
v.reset(Op386ORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2 * 4)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (ORLconstmodifyidx4 [valoff1] {sym1} (LEAL [off2] {sym2} base) idx mem)
@@ -10794,9 +10151,7 @@ func rewriteValue386_Op386ORLconstmodifyidx4(v *Value) bool {
v.reset(Op386ORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
return false
@@ -10826,9 +10181,7 @@ func rewriteValue386_Op386ORLload(v *Value) bool {
v.reset(Op386ORLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ORLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -10851,9 +10204,7 @@ func rewriteValue386_Op386ORLload(v *Value) bool {
v.reset(Op386ORLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (ORLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -10877,10 +10228,7 @@ func rewriteValue386_Op386ORLload(v *Value) bool {
v.reset(Op386ORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -10912,10 +10260,7 @@ func rewriteValue386_Op386ORLloadidx4(v *Value) bool {
v.reset(Op386ORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ORLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -10938,10 +10283,7 @@ func rewriteValue386_Op386ORLloadidx4(v *Value) bool {
v.reset(Op386ORLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (ORLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -10965,10 +10307,7 @@ func rewriteValue386_Op386ORLloadidx4(v *Value) bool {
v.reset(Op386ORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -10998,9 +10337,7 @@ func rewriteValue386_Op386ORLmodify(v *Value) bool {
v.reset(Op386ORLmodify)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (ORLmodify [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -11023,9 +10360,7 @@ func rewriteValue386_Op386ORLmodify(v *Value) bool {
v.reset(Op386ORLmodify)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
return false
@@ -11057,10 +10392,7 @@ func rewriteValue386_Op386ORLmodifyidx4(v *Value) bool {
v.reset(Op386ORLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ORLmodifyidx4 [off1] {sym} base (ADDLconst [off2] idx) val mem)
@@ -11083,10 +10415,7 @@ func rewriteValue386_Op386ORLmodifyidx4(v *Value) bool {
v.reset(Op386ORLmodifyidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ORLmodifyidx4 [off1] {sym1} (LEAL [off2] {sym2} base) idx val mem)
@@ -11110,10 +10439,7 @@ func rewriteValue386_Op386ORLmodifyidx4(v *Value) bool {
v.reset(Op386ORLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (ORLmodifyidx4 [off] {sym} ptr idx (MOVLconst [c]) mem)
@@ -11135,9 +10461,7 @@ func rewriteValue386_Op386ORLmodifyidx4(v *Value) bool {
v.reset(Op386ORLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -11303,8 +10627,7 @@ func rewriteValue386_Op386SARL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386SARL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -11398,8 +10721,7 @@ func rewriteValue386_Op386SBBL(v *Value) bool {
f := v_2
v.reset(Op386SBBLconst)
v.AuxInt = c
- v.AddArg(x)
- v.AddArg(f)
+ v.AddArg2(x, f)
return true
}
return false
@@ -12133,8 +11455,7 @@ func rewriteValue386_Op386SHLL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386SHLL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -12233,8 +11554,7 @@ func rewriteValue386_Op386SHRL(v *Value) bool {
}
y := v_1.Args[0]
v.reset(Op386SHRL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -12359,9 +11679,7 @@ func rewriteValue386_Op386SUBL(v *Value) bool {
v.reset(Op386SUBLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
// match: (SUBL x l:(MOVLloadidx4 [off] {sym} ptr idx mem))
@@ -12384,10 +11702,7 @@ func rewriteValue386_Op386SUBL(v *Value) bool {
v.reset(Op386SUBLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
// match: (SUBL x x)
@@ -12473,9 +11788,7 @@ func rewriteValue386_Op386SUBLload(v *Value) bool {
v.reset(Op386SUBLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (SUBLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -12498,9 +11811,7 @@ func rewriteValue386_Op386SUBLload(v *Value) bool {
v.reset(Op386SUBLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (SUBLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -12524,10 +11835,7 @@ func rewriteValue386_Op386SUBLload(v *Value) bool {
v.reset(Op386SUBLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -12559,10 +11867,7 @@ func rewriteValue386_Op386SUBLloadidx4(v *Value) bool {
v.reset(Op386SUBLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (SUBLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -12585,10 +11890,7 @@ func rewriteValue386_Op386SUBLloadidx4(v *Value) bool {
v.reset(Op386SUBLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (SUBLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -12612,10 +11914,7 @@ func rewriteValue386_Op386SUBLloadidx4(v *Value) bool {
v.reset(Op386SUBLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -12645,9 +11944,7 @@ func rewriteValue386_Op386SUBLmodify(v *Value) bool {
v.reset(Op386SUBLmodify)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (SUBLmodify [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -12670,9 +11967,7 @@ func rewriteValue386_Op386SUBLmodify(v *Value) bool {
v.reset(Op386SUBLmodify)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
return false
@@ -12704,10 +11999,7 @@ func rewriteValue386_Op386SUBLmodifyidx4(v *Value) bool {
v.reset(Op386SUBLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (SUBLmodifyidx4 [off1] {sym} base (ADDLconst [off2] idx) val mem)
@@ -12730,10 +12022,7 @@ func rewriteValue386_Op386SUBLmodifyidx4(v *Value) bool {
v.reset(Op386SUBLmodifyidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (SUBLmodifyidx4 [off1] {sym1} (LEAL [off2] {sym2} base) idx val mem)
@@ -12757,10 +12046,7 @@ func rewriteValue386_Op386SUBLmodifyidx4(v *Value) bool {
v.reset(Op386SUBLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (SUBLmodifyidx4 [off] {sym} ptr idx (MOVLconst [c]) mem)
@@ -12782,9 +12068,7 @@ func rewriteValue386_Op386SUBLmodifyidx4(v *Value) bool {
v.reset(Op386ADDLconstmodifyidx4)
v.AuxInt = makeValAndOff(-c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -12813,9 +12097,7 @@ func rewriteValue386_Op386SUBSD(v *Value) bool {
v.reset(Op386SUBSDload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
return false
@@ -12845,9 +12127,7 @@ func rewriteValue386_Op386SUBSDload(v *Value) bool {
v.reset(Op386SUBSDload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (SUBSDload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -12870,9 +12150,7 @@ func rewriteValue386_Op386SUBSDload(v *Value) bool {
v.reset(Op386SUBSDload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -12901,9 +12179,7 @@ func rewriteValue386_Op386SUBSS(v *Value) bool {
v.reset(Op386SUBSSload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
return false
@@ -12933,9 +12209,7 @@ func rewriteValue386_Op386SUBSSload(v *Value) bool {
v.reset(Op386SUBSSload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (SUBSSload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -12958,9 +12232,7 @@ func rewriteValue386_Op386SUBSSload(v *Value) bool {
v.reset(Op386SUBSSload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
return false
@@ -13078,9 +12350,7 @@ func rewriteValue386_Op386XORL(v *Value) bool {
v.reset(Op386XORLload)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg3(x, ptr, mem)
return true
}
break
@@ -13106,10 +12376,7 @@ func rewriteValue386_Op386XORL(v *Value) bool {
v.reset(Op386XORLloadidx4)
v.AuxInt = off
v.Aux = sym
- v.AddArg(x)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(x, ptr, idx, mem)
return true
}
break
@@ -13194,8 +12461,7 @@ func rewriteValue386_Op386XORLconstmodify(v *Value) bool {
v.reset(Op386XORLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
// match: (XORLconstmodify [valoff1] {sym1} (LEAL [off2] {sym2} base) mem)
@@ -13217,8 +12483,7 @@ func rewriteValue386_Op386XORLconstmodify(v *Value) bool {
v.reset(Op386XORLconstmodify)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg2(base, mem)
return true
}
return false
@@ -13248,9 +12513,7 @@ func rewriteValue386_Op386XORLconstmodifyidx4(v *Value) bool {
v.reset(Op386XORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (XORLconstmodifyidx4 [valoff1] {sym} base (ADDLconst [off2] idx) mem)
@@ -13272,9 +12535,7 @@ func rewriteValue386_Op386XORLconstmodifyidx4(v *Value) bool {
v.reset(Op386XORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2 * 4)
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
// match: (XORLconstmodifyidx4 [valoff1] {sym1} (LEAL [off2] {sym2} base) idx mem)
@@ -13297,9 +12558,7 @@ func rewriteValue386_Op386XORLconstmodifyidx4(v *Value) bool {
v.reset(Op386XORLconstmodifyidx4)
v.AuxInt = ValAndOff(valoff1).add(off2)
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(base, idx, mem)
return true
}
return false
@@ -13329,9 +12588,7 @@ func rewriteValue386_Op386XORLload(v *Value) bool {
v.reset(Op386XORLload)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (XORLload [off1] {sym1} val (LEAL [off2] {sym2} base) mem)
@@ -13354,9 +12611,7 @@ func rewriteValue386_Op386XORLload(v *Value) bool {
v.reset(Op386XORLload)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(mem)
+ v.AddArg3(val, base, mem)
return true
}
// match: (XORLload [off1] {sym1} val (LEAL4 [off2] {sym2} ptr idx) mem)
@@ -13380,10 +12635,7 @@ func rewriteValue386_Op386XORLload(v *Value) bool {
v.reset(Op386XORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, ptr, idx, mem)
return true
}
return false
@@ -13415,10 +12667,7 @@ func rewriteValue386_Op386XORLloadidx4(v *Value) bool {
v.reset(Op386XORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (XORLloadidx4 [off1] {sym} val base (ADDLconst [off2] idx) mem)
@@ -13441,10 +12690,7 @@ func rewriteValue386_Op386XORLloadidx4(v *Value) bool {
v.reset(Op386XORLloadidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
// match: (XORLloadidx4 [off1] {sym1} val (LEAL [off2] {sym2} base) idx mem)
@@ -13468,10 +12714,7 @@ func rewriteValue386_Op386XORLloadidx4(v *Value) bool {
v.reset(Op386XORLloadidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(val)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg4(val, base, idx, mem)
return true
}
return false
@@ -13501,9 +12744,7 @@ func rewriteValue386_Op386XORLmodify(v *Value) bool {
v.reset(Op386XORLmodify)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
// match: (XORLmodify [off1] {sym1} (LEAL [off2] {sym2} base) val mem)
@@ -13526,9 +12767,7 @@ func rewriteValue386_Op386XORLmodify(v *Value) bool {
v.reset(Op386XORLmodify)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(base, val, mem)
return true
}
return false
@@ -13560,10 +12799,7 @@ func rewriteValue386_Op386XORLmodifyidx4(v *Value) bool {
v.reset(Op386XORLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (XORLmodifyidx4 [off1] {sym} base (ADDLconst [off2] idx) val mem)
@@ -13586,10 +12822,7 @@ func rewriteValue386_Op386XORLmodifyidx4(v *Value) bool {
v.reset(Op386XORLmodifyidx4)
v.AuxInt = off1 + off2*4
v.Aux = sym
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (XORLmodifyidx4 [off1] {sym1} (LEAL [off2] {sym2} base) idx val mem)
@@ -13613,10 +12846,7 @@ func rewriteValue386_Op386XORLmodifyidx4(v *Value) bool {
v.reset(Op386XORLmodifyidx4)
v.AuxInt = off1 + off2
v.Aux = mergeSym(sym1, sym2)
- v.AddArg(base)
- v.AddArg(idx)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg4(base, idx, val, mem)
return true
}
// match: (XORLmodifyidx4 [off] {sym} ptr idx (MOVLconst [c]) mem)
@@ -13638,9 +12868,7 @@ func rewriteValue386_Op386XORLmodifyidx4(v *Value) bool {
v.reset(Op386XORLconstmodifyidx4)
v.AuxInt = makeValAndOff(c, off)
v.Aux = sym
- v.AddArg(ptr)
- v.AddArg(idx)
- v.AddArg(mem)
+ v.AddArg3(ptr, idx, mem)
return true
}
return false
@@ -13683,10 +12911,9 @@ func rewriteValue386_OpDiv8(v *Value) bool {
v.reset(Op386DIVW)
v0 := b.NewValue0(v.Pos, OpSignExt8to16, typ.Int16)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt8to16, typ.Int16)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -13703,10 +12930,9 @@ func rewriteValue386_OpDiv8u(v *Value) bool {
v.reset(Op386DIVWU)
v0 := b.NewValue0(v.Pos, OpZeroExt8to16, typ.UInt16)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt8to16, typ.UInt16)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -13721,8 +12947,7 @@ func rewriteValue386_OpEq16(v *Value) bool {
y := v_1
v.reset(Op386SETEQ)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13738,8 +12963,7 @@ func rewriteValue386_OpEq32(v *Value) bool {
y := v_1
v.reset(Op386SETEQ)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13755,8 +12979,7 @@ func rewriteValue386_OpEq32F(v *Value) bool {
y := v_1
v.reset(Op386SETEQF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13772,8 +12995,7 @@ func rewriteValue386_OpEq64F(v *Value) bool {
y := v_1
v.reset(Op386SETEQF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13789,8 +13011,7 @@ func rewriteValue386_OpEq8(v *Value) bool {
y := v_1
v.reset(Op386SETEQ)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13806,8 +13027,7 @@ func rewriteValue386_OpEqB(v *Value) bool {
y := v_1
v.reset(Op386SETEQ)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13823,8 +13043,7 @@ func rewriteValue386_OpEqPtr(v *Value) bool {
y := v_1
v.reset(Op386SETEQ)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13840,8 +13059,7 @@ func rewriteValue386_OpGeq32F(v *Value) bool {
y := v_1
v.reset(Op386SETGEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13857,8 +13075,7 @@ func rewriteValue386_OpGeq64F(v *Value) bool {
y := v_1
v.reset(Op386SETGEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13874,8 +13091,7 @@ func rewriteValue386_OpGreater32F(v *Value) bool {
y := v_1
v.reset(Op386SETGF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13891,8 +13107,7 @@ func rewriteValue386_OpGreater64F(v *Value) bool {
y := v_1
v.reset(Op386SETGF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13908,8 +13123,7 @@ func rewriteValue386_OpIsInBounds(v *Value) bool {
len := v_1
v.reset(Op386SETB)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(idx)
- v0.AddArg(len)
+ v0.AddArg2(idx, len)
v.AddArg(v0)
return true
}
@@ -13923,8 +13137,7 @@ func rewriteValue386_OpIsNonNil(v *Value) bool {
p := v_0
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386TESTL, types.TypeFlags)
- v0.AddArg(p)
- v0.AddArg(p)
+ v0.AddArg2(p, p)
v.AddArg(v0)
return true
}
@@ -13940,8 +13153,7 @@ func rewriteValue386_OpIsSliceInBounds(v *Value) bool {
len := v_1
v.reset(Op386SETBE)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(idx)
- v0.AddArg(len)
+ v0.AddArg2(idx, len)
v.AddArg(v0)
return true
}
@@ -13957,8 +13169,7 @@ func rewriteValue386_OpLeq16(v *Value) bool {
y := v_1
v.reset(Op386SETLE)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13974,8 +13185,7 @@ func rewriteValue386_OpLeq16U(v *Value) bool {
y := v_1
v.reset(Op386SETBE)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -13991,8 +13201,7 @@ func rewriteValue386_OpLeq32(v *Value) bool {
y := v_1
v.reset(Op386SETLE)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14008,8 +13217,7 @@ func rewriteValue386_OpLeq32F(v *Value) bool {
y := v_1
v.reset(Op386SETGEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -14025,8 +13233,7 @@ func rewriteValue386_OpLeq32U(v *Value) bool {
y := v_1
v.reset(Op386SETBE)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14042,8 +13249,7 @@ func rewriteValue386_OpLeq64F(v *Value) bool {
y := v_1
v.reset(Op386SETGEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -14059,8 +13265,7 @@ func rewriteValue386_OpLeq8(v *Value) bool {
y := v_1
v.reset(Op386SETLE)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14076,8 +13281,7 @@ func rewriteValue386_OpLeq8U(v *Value) bool {
y := v_1
v.reset(Op386SETBE)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14093,8 +13297,7 @@ func rewriteValue386_OpLess16(v *Value) bool {
y := v_1
v.reset(Op386SETL)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14110,8 +13313,7 @@ func rewriteValue386_OpLess16U(v *Value) bool {
y := v_1
v.reset(Op386SETB)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14127,8 +13329,7 @@ func rewriteValue386_OpLess32(v *Value) bool {
y := v_1
v.reset(Op386SETL)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14144,8 +13345,7 @@ func rewriteValue386_OpLess32F(v *Value) bool {
y := v_1
v.reset(Op386SETGF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -14161,8 +13361,7 @@ func rewriteValue386_OpLess32U(v *Value) bool {
y := v_1
v.reset(Op386SETB)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14178,8 +13377,7 @@ func rewriteValue386_OpLess64F(v *Value) bool {
y := v_1
v.reset(Op386SETGF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(y)
- v0.AddArg(x)
+ v0.AddArg2(y, x)
v.AddArg(v0)
return true
}
@@ -14195,8 +13393,7 @@ func rewriteValue386_OpLess8(v *Value) bool {
y := v_1
v.reset(Op386SETL)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14212,8 +13409,7 @@ func rewriteValue386_OpLess8U(v *Value) bool {
y := v_1
v.reset(Op386SETB)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -14232,8 +13428,7 @@ func rewriteValue386_OpLoad(v *Value) bool {
break
}
v.reset(Op386MOVLload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -14247,8 +13442,7 @@ func rewriteValue386_OpLoad(v *Value) bool {
break
}
v.reset(Op386MOVWload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -14262,8 +13456,7 @@ func rewriteValue386_OpLoad(v *Value) bool {
break
}
v.reset(Op386MOVBload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -14277,8 +13470,7 @@ func rewriteValue386_OpLoad(v *Value) bool {
break
}
v.reset(Op386MOVSSload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
// match: (Load <t> ptr mem)
@@ -14292,8 +13484,7 @@ func rewriteValue386_OpLoad(v *Value) bool {
break
}
v.reset(Op386MOVSDload)
- v.AddArg(ptr)
- v.AddArg(mem)
+ v.AddArg2(ptr, mem)
return true
}
return false
@@ -14327,15 +13518,13 @@ func rewriteValue386_OpLsh16x16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh16x16 <t> x y)
@@ -14350,8 +13539,7 @@ func rewriteValue386_OpLsh16x16(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14372,15 +13560,13 @@ func rewriteValue386_OpLsh16x32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh16x32 <t> x y)
@@ -14395,8 +13581,7 @@ func rewriteValue386_OpLsh16x32(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14454,15 +13639,13 @@ func rewriteValue386_OpLsh16x8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh16x8 <t> x y)
@@ -14477,8 +13660,7 @@ func rewriteValue386_OpLsh16x8(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14499,15 +13681,13 @@ func rewriteValue386_OpLsh32x16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh32x16 <t> x y)
@@ -14522,8 +13702,7 @@ func rewriteValue386_OpLsh32x16(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14544,15 +13723,13 @@ func rewriteValue386_OpLsh32x32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh32x32 <t> x y)
@@ -14567,8 +13744,7 @@ func rewriteValue386_OpLsh32x32(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14626,15 +13802,13 @@ func rewriteValue386_OpLsh32x8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh32x8 <t> x y)
@@ -14649,8 +13823,7 @@ func rewriteValue386_OpLsh32x8(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14671,15 +13844,13 @@ func rewriteValue386_OpLsh8x16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh8x16 <t> x y)
@@ -14694,8 +13865,7 @@ func rewriteValue386_OpLsh8x16(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14716,15 +13886,13 @@ func rewriteValue386_OpLsh8x32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh8x32 <t> x y)
@@ -14739,8 +13907,7 @@ func rewriteValue386_OpLsh8x32(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14798,15 +13965,13 @@ func rewriteValue386_OpLsh8x8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHLL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Lsh8x8 <t> x y)
@@ -14821,8 +13986,7 @@ func rewriteValue386_OpLsh8x8(v *Value) bool {
}
v.reset(Op386SHLL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -14840,10 +14004,9 @@ func rewriteValue386_OpMod8(v *Value) bool {
v.reset(Op386MODW)
v0 := b.NewValue0(v.Pos, OpSignExt8to16, typ.Int16)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpSignExt8to16, typ.Int16)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -14860,10 +14023,9 @@ func rewriteValue386_OpMod8u(v *Value) bool {
v.reset(Op386MODWU)
v0 := b.NewValue0(v.Pos, OpZeroExt8to16, typ.UInt16)
v0.AddArg(x)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, OpZeroExt8to16, typ.UInt16)
v1.AddArg(y)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
}
@@ -14896,12 +14058,9 @@ func rewriteValue386_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(Op386MOVBstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVBload, typ.UInt8)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [2] dst src mem)
@@ -14914,12 +14073,9 @@ func rewriteValue386_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(Op386MOVWstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVWload, typ.UInt16)
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
- v.AddArg(mem)
+ v0.AddArg2(src, mem)
+ v.AddArg3(dst, v0, mem)
return true
}
// match: (Move [4] dst src mem)
@@ -14932,12 +14088,9 @@ func rewriteValue386_OpMove(v *Value) bool {
src := v_1
mem := v_2
v.reset(Op386MOVLstore)
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVLload, 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 [3] dst src mem)
@@ -14951,20 +14104,14 @@ func rewriteValue386_OpMove(v *Value) bool {
mem := v_2
v.reset(Op386MOVBstore)
v.AuxInt = 2
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVBload, typ.UInt8)
v0.AuxInt = 2
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, Op386MOVWstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, Op386MOVWload, typ.UInt16)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [5] dst src mem)
@@ -14978,20 +14125,14 @@ func rewriteValue386_OpMove(v *Value) bool {
mem := v_2
v.reset(Op386MOVBstore)
v.AuxInt = 4
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVBload, typ.UInt8)
v0.AuxInt = 4
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, Op386MOVLstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [6] dst src mem)
@@ -15005,20 +14146,14 @@ func rewriteValue386_OpMove(v *Value) bool {
mem := v_2
v.reset(Op386MOVWstore)
v.AuxInt = 4
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVWload, typ.UInt16)
v0.AuxInt = 4
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, Op386MOVLstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [7] dst src mem)
@@ -15032,20 +14167,14 @@ func rewriteValue386_OpMove(v *Value) bool {
mem := v_2
v.reset(Op386MOVLstore)
v.AuxInt = 3
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
v0.AuxInt = 3
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, Op386MOVLstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [8] dst src mem)
@@ -15059,20 +14188,14 @@ func rewriteValue386_OpMove(v *Value) bool {
mem := v_2
v.reset(Op386MOVLstore)
v.AuxInt = 4
- v.AddArg(dst)
v0 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
v0.AuxInt = 4
- v0.AddArg(src)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(src, mem)
v1 := b.NewValue0(v.Pos, Op386MOVLstore, types.TypeMem)
- v1.AddArg(dst)
v2 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
- v2.AddArg(src)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v2.AddArg2(src, mem)
+ v1.AddArg3(dst, v2, mem)
+ v.AddArg3(dst, v0, v1)
return true
}
// match: (Move [s] dst src mem)
@@ -15091,19 +14214,14 @@ func rewriteValue386_OpMove(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386ADDLconst, dst.Type)
v0.AuxInt = s % 4
v0.AddArg(dst)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, Op386ADDLconst, src.Type)
v1.AuxInt = s % 4
v1.AddArg(src)
- v.AddArg(v1)
v2 := b.NewValue0(v.Pos, Op386MOVLstore, types.TypeMem)
- v2.AddArg(dst)
v3 := b.NewValue0(v.Pos, Op386MOVLload, typ.UInt32)
- v3.AddArg(src)
- v3.AddArg(mem)
- v2.AddArg(v3)
- v2.AddArg(mem)
- v.AddArg(v2)
+ v3.AddArg2(src, mem)
+ v2.AddArg3(dst, v3, mem)
+ v.AddArg3(v0, v1, v2)
return true
}
// match: (Move [s] dst src mem)
@@ -15119,9 +14237,7 @@ func rewriteValue386_OpMove(v *Value) bool {
}
v.reset(Op386DUFFCOPY)
v.AuxInt = 10 * (128 - s/4)
- v.AddArg(dst)
- v.AddArg(src)
- v.AddArg(mem)
+ v.AddArg3(dst, src, mem)
return true
}
// match: (Move [s] dst src mem)
@@ -15136,12 +14252,9 @@ func rewriteValue386_OpMove(v *Value) bool {
break
}
v.reset(Op386REPMOVSL)
- v.AddArg(dst)
- v.AddArg(src)
v0 := b.NewValue0(v.Pos, Op386MOVLconst, typ.UInt32)
v0.AuxInt = s / 4
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg4(dst, src, v0, mem)
return true
}
return false
@@ -15160,10 +14273,9 @@ func rewriteValue386_OpNeg32F(v *Value) bool {
break
}
v.reset(Op386PXOR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386MOVSSconst, typ.Float32)
v0.AuxInt = auxFrom32F(float32(math.Copysign(0, -1)))
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
// match: (Neg32F x)
@@ -15194,10 +14306,9 @@ func rewriteValue386_OpNeg64F(v *Value) bool {
break
}
v.reset(Op386PXOR)
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386MOVSDconst, typ.Float64)
v0.AuxInt = auxFrom64F(math.Copysign(0, -1))
- v.AddArg(v0)
+ v.AddArg2(x, v0)
return true
}
// match: (Neg64F x)
@@ -15225,8 +14336,7 @@ func rewriteValue386_OpNeq16(v *Value) bool {
y := v_1
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386CMPW, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15242,8 +14352,7 @@ func rewriteValue386_OpNeq32(v *Value) bool {
y := v_1
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15259,8 +14368,7 @@ func rewriteValue386_OpNeq32F(v *Value) bool {
y := v_1
v.reset(Op386SETNEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISS, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15276,8 +14384,7 @@ func rewriteValue386_OpNeq64F(v *Value) bool {
y := v_1
v.reset(Op386SETNEF)
v0 := b.NewValue0(v.Pos, Op386UCOMISD, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15293,8 +14400,7 @@ func rewriteValue386_OpNeq8(v *Value) bool {
y := v_1
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15310,8 +14416,7 @@ func rewriteValue386_OpNeqB(v *Value) bool {
y := v_1
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386CMPB, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15327,8 +14432,7 @@ func rewriteValue386_OpNeqPtr(v *Value) bool {
y := v_1
v.reset(Op386SETNE)
v0 := b.NewValue0(v.Pos, Op386CMPL, types.TypeFlags)
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -15362,9 +14466,7 @@ func rewriteValue386_OpPanicBounds(v *Value) bool {
}
v.reset(Op386LoweredPanicBoundsA)
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)
@@ -15380,9 +14482,7 @@ func rewriteValue386_OpPanicBounds(v *Value) bool {
}
v.reset(Op386LoweredPanicBoundsB)
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)
@@ -15398,9 +14498,7 @@ func rewriteValue386_OpPanicBounds(v *Value) bool {
}
v.reset(Op386LoweredPanicBoundsC)
v.AuxInt = kind
- v.AddArg(x)
- v.AddArg(y)
- v.AddArg(mem)
+ v.AddArg3(x, y, mem)
return true
}
return false
@@ -15424,10 +14522,7 @@ func rewriteValue386_OpPanicExtend(v *Value) bool {
}
v.reset(Op386LoweredPanicExtendA)
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)
@@ -15444,10 +14539,7 @@ func rewriteValue386_OpPanicExtend(v *Value) bool {
}
v.reset(Op386LoweredPanicExtendB)
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)
@@ -15464,10 +14556,7 @@ func rewriteValue386_OpPanicExtend(v *Value) bool {
}
v.reset(Op386LoweredPanicExtendC)
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
@@ -15542,15 +14631,13 @@ func rewriteValue386_OpRsh16Ux16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRW, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 16
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh16Ux16 <t> x y)
@@ -15565,8 +14652,7 @@ func rewriteValue386_OpRsh16Ux16(v *Value) bool {
}
v.reset(Op386SHRW)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15587,15 +14673,13 @@ func rewriteValue386_OpRsh16Ux32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRW, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 16
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh16Ux32 <t> x y)
@@ -15610,8 +14694,7 @@ func rewriteValue386_OpRsh16Ux32(v *Value) bool {
}
v.reset(Op386SHRW)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15669,15 +14752,13 @@ func rewriteValue386_OpRsh16Ux8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRW, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 16
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh16Ux8 <t> x y)
@@ -15692,8 +14773,7 @@ func rewriteValue386_OpRsh16Ux8(v *Value) bool {
}
v.reset(Op386SHRW)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15714,9 +14794,7 @@ func rewriteValue386_OpRsh16x16(v *Value) bool {
}
v.reset(Op386SARW)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
@@ -15724,8 +14802,8 @@ func rewriteValue386_OpRsh16x16(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh16x16 <t> x y)
@@ -15738,8 +14816,7 @@ func rewriteValue386_OpRsh16x16(v *Value) bool {
break
}
v.reset(Op386SARW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15760,9 +14837,7 @@ func rewriteValue386_OpRsh16x32(v *Value) bool {
}
v.reset(Op386SARW)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
@@ -15770,8 +14845,8 @@ func rewriteValue386_OpRsh16x32(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh16x32 <t> x y)
@@ -15784,8 +14859,7 @@ func rewriteValue386_OpRsh16x32(v *Value) bool {
break
}
v.reset(Op386SARW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15845,9 +14919,7 @@ func rewriteValue386_OpRsh16x8(v *Value) bool {
}
v.reset(Op386SARW)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
@@ -15855,8 +14927,8 @@ func rewriteValue386_OpRsh16x8(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh16x8 <t> x y)
@@ -15869,8 +14941,7 @@ func rewriteValue386_OpRsh16x8(v *Value) bool {
break
}
v.reset(Op386SARW)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15891,15 +14962,13 @@ func rewriteValue386_OpRsh32Ux16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh32Ux16 <t> x y)
@@ -15914,8 +14983,7 @@ func rewriteValue386_OpRsh32Ux16(v *Value) bool {
}
v.reset(Op386SHRL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -15936,15 +15004,13 @@ func rewriteValue386_OpRsh32Ux32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh32Ux32 <t> x y)
@@ -15959,8 +15025,7 @@ func rewriteValue386_OpRsh32Ux32(v *Value) bool {
}
v.reset(Op386SHRL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16018,15 +15083,13 @@ func rewriteValue386_OpRsh32Ux8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRL, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 32
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh32Ux8 <t> x y)
@@ -16041,8 +15104,7 @@ func rewriteValue386_OpRsh32Ux8(v *Value) bool {
}
v.reset(Op386SHRL)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16063,9 +15125,7 @@ func rewriteValue386_OpRsh32x16(v *Value) bool {
}
v.reset(Op386SARL)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
@@ -16073,8 +15133,8 @@ func rewriteValue386_OpRsh32x16(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh32x16 <t> x y)
@@ -16087,8 +15147,7 @@ func rewriteValue386_OpRsh32x16(v *Value) bool {
break
}
v.reset(Op386SARL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16109,9 +15168,7 @@ func rewriteValue386_OpRsh32x32(v *Value) bool {
}
v.reset(Op386SARL)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
@@ -16119,8 +15176,8 @@ func rewriteValue386_OpRsh32x32(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh32x32 <t> x y)
@@ -16133,8 +15190,7 @@ func rewriteValue386_OpRsh32x32(v *Value) bool {
break
}
v.reset(Op386SARL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16194,9 +15250,7 @@ func rewriteValue386_OpRsh32x8(v *Value) bool {
}
v.reset(Op386SARL)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
@@ -16204,8 +15258,8 @@ func rewriteValue386_OpRsh32x8(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh32x8 <t> x y)
@@ -16218,8 +15272,7 @@ func rewriteValue386_OpRsh32x8(v *Value) bool {
break
}
v.reset(Op386SARL)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16240,15 +15293,13 @@ func rewriteValue386_OpRsh8Ux16(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRB, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
v2.AuxInt = 8
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh8Ux16 <t> x y)
@@ -16263,8 +15314,7 @@ func rewriteValue386_OpRsh8Ux16(v *Value) bool {
}
v.reset(Op386SHRB)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16285,15 +15335,13 @@ func rewriteValue386_OpRsh8Ux32(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRB, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
v2.AuxInt = 8
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh8Ux32 <t> x y)
@@ -16308,8 +15356,7 @@ func rewriteValue386_OpRsh8Ux32(v *Value) bool {
}
v.reset(Op386SHRB)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16367,15 +15414,13 @@ func rewriteValue386_OpRsh8Ux8(v *Value) bool {
}
v.reset(Op386ANDL)
v0 := b.NewValue0(v.Pos, Op386SHRB, t)
- v0.AddArg(x)
- v0.AddArg(y)
- v.AddArg(v0)
+ v0.AddArg2(x, y)
v1 := b.NewValue0(v.Pos, Op386SBBLcarrymask, t)
v2 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
v2.AuxInt = 8
v2.AddArg(y)
v1.AddArg(v2)
- v.AddArg(v1)
+ v.AddArg2(v0, v1)
return true
}
// match: (Rsh8Ux8 <t> x y)
@@ -16390,8 +15435,7 @@ func rewriteValue386_OpRsh8Ux8(v *Value) bool {
}
v.reset(Op386SHRB)
v.Type = t
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16412,9 +15456,7 @@ func rewriteValue386_OpRsh8x16(v *Value) bool {
}
v.reset(Op386SARB)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPWconst, types.TypeFlags)
@@ -16422,8 +15464,8 @@ func rewriteValue386_OpRsh8x16(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh8x16 <t> x y)
@@ -16436,8 +15478,7 @@ func rewriteValue386_OpRsh8x16(v *Value) bool {
break
}
v.reset(Op386SARB)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16458,9 +15499,7 @@ func rewriteValue386_OpRsh8x32(v *Value) bool {
}
v.reset(Op386SARB)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPLconst, types.TypeFlags)
@@ -16468,8 +15507,8 @@ func rewriteValue386_OpRsh8x32(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh8x32 <t> x y)
@@ -16482,8 +15521,7 @@ func rewriteValue386_OpRsh8x32(v *Value) bool {
break
}
v.reset(Op386SARB)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16543,9 +15581,7 @@ func rewriteValue386_OpRsh8x8(v *Value) bool {
}
v.reset(Op386SARB)
v.Type = t
- v.AddArg(x)
v0 := b.NewValue0(v.Pos, Op386ORL, y.Type)
- v0.AddArg(y)
v1 := b.NewValue0(v.Pos, Op386NOTL, y.Type)
v2 := b.NewValue0(v.Pos, Op386SBBLcarrymask, y.Type)
v3 := b.NewValue0(v.Pos, Op386CMPBconst, types.TypeFlags)
@@ -16553,8 +15589,8 @@ func rewriteValue386_OpRsh8x8(v *Value) bool {
v3.AddArg(y)
v2.AddArg(v3)
v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v0.AddArg2(y, v1)
+ v.AddArg2(x, v0)
return true
}
// match: (Rsh8x8 <t> x y)
@@ -16567,8 +15603,7 @@ func rewriteValue386_OpRsh8x8(v *Value) bool {
break
}
v.reset(Op386SARB)
- v.AddArg(x)
- v.AddArg(y)
+ v.AddArg2(x, y)
return true
}
return false
@@ -16588,8 +15623,7 @@ func rewriteValue386_OpSelect0(v *Value) bool {
v.reset(OpSelect0)
v.Type = typ.UInt32
v0 := b.NewValue0(v.Pos, Op386MULLU, types.NewTuple(typ.UInt32, types.TypeFlags))
- v0.AddArg(x)
- v0.AddArg(y)
+ v0.AddArg2(x, y)
v.AddArg(v0)
return true
}
@@ -16610,8 +15644,7 @@ func rewriteValue386_OpSelect1(v *Value) bool {
v.reset(Op386SETO)
v0 := b.NewValue0(v.Pos, OpSelect1, types.TypeFlags)
v1 := b.NewValue0(v.Pos, Op386MULLU, types.NewTuple(typ.UInt32, types.TypeFlags))
- v1.AddArg(x)
- v1.AddArg(y)
+ v1.AddArg2(x, y)
v0.AddArg(v1)
v.AddArg(v0)
return true
@@ -16662,9 +15695,7 @@ func rewriteValue386_OpStore(v *Value) bool {
break
}
v.reset(Op386MOVSDstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -16679,9 +15710,7 @@ func rewriteValue386_OpStore(v *Value) bool {
break
}
v.reset(Op386MOVSSstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -16696,9 +15725,7 @@ func rewriteValue386_OpStore(v *Value) bool {
break
}
v.reset(Op386MOVLstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -16713,9 +15740,7 @@ func rewriteValue386_OpStore(v *Value) bool {
break
}
v.reset(Op386MOVWstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
// match: (Store {t} ptr val mem)
@@ -16730,9 +15755,7 @@ func rewriteValue386_OpStore(v *Value) bool {
break
}
v.reset(Op386MOVBstore)
- v.AddArg(ptr)
- v.AddArg(val)
- v.AddArg(mem)
+ v.AddArg3(ptr, val, mem)
return true
}
return false
@@ -16765,8 +15788,7 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVBstoreconst)
v.AuxInt = 0
- v.AddArg(destptr)
- v.AddArg(mem)
+ v.AddArg2(destptr, mem)
return true
}
// match: (Zero [2] destptr mem)
@@ -16779,8 +15801,7 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVWstoreconst)
v.AuxInt = 0
- v.AddArg(destptr)
- v.AddArg(mem)
+ v.AddArg2(destptr, mem)
return true
}
// match: (Zero [4] destptr mem)
@@ -16793,8 +15814,7 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVLstoreconst)
v.AuxInt = 0
- v.AddArg(destptr)
- v.AddArg(mem)
+ v.AddArg2(destptr, mem)
return true
}
// match: (Zero [3] destptr mem)
@@ -16807,12 +15827,10 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVBstoreconst)
v.AuxInt = makeValAndOff(0, 2)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVWstoreconst, types.TypeMem)
v0.AuxInt = 0
- v0.AddArg(destptr)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(destptr, mem)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [5] destptr mem)
@@ -16825,12 +15843,10 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVBstoreconst)
v.AuxInt = makeValAndOff(0, 4)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = 0
- v0.AddArg(destptr)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(destptr, mem)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [6] destptr mem)
@@ -16843,12 +15859,10 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVWstoreconst)
v.AuxInt = makeValAndOff(0, 4)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = 0
- v0.AddArg(destptr)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(destptr, mem)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [7] destptr mem)
@@ -16861,12 +15875,10 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(0, 3)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = 0
- v0.AddArg(destptr)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(destptr, mem)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [s] destptr mem)
@@ -16884,12 +15896,10 @@ func rewriteValue386_OpZero(v *Value) bool {
v0 := b.NewValue0(v.Pos, Op386ADDLconst, typ.UInt32)
v0.AuxInt = s % 4
v0.AddArg(destptr)
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v1.AuxInt = 0
- v1.AddArg(destptr)
- v1.AddArg(mem)
- v.AddArg(v1)
+ v1.AddArg2(destptr, mem)
+ v.AddArg2(v0, v1)
return true
}
// match: (Zero [8] destptr mem)
@@ -16902,12 +15912,10 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(0, 4)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = 0
- v0.AddArg(destptr)
- v0.AddArg(mem)
- v.AddArg(v0)
+ v0.AddArg2(destptr, mem)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [12] destptr mem)
@@ -16920,16 +15928,13 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(0, 8)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = makeValAndOff(0, 4)
- v0.AddArg(destptr)
v1 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v1.AuxInt = 0
- v1.AddArg(destptr)
- v1.AddArg(mem)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v1.AddArg2(destptr, mem)
+ v0.AddArg2(destptr, v1)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [16] destptr mem)
@@ -16942,20 +15947,16 @@ func rewriteValue386_OpZero(v *Value) bool {
mem := v_1
v.reset(Op386MOVLstoreconst)
v.AuxInt = makeValAndOff(0, 12)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v0.AuxInt = makeValAndOff(0, 8)
- v0.AddArg(destptr)
v1 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v1.AuxInt = makeValAndOff(0, 4)
- v1.AddArg(destptr)
v2 := b.NewValue0(v.Pos, Op386MOVLstoreconst, types.TypeMem)
v2.AuxInt = 0
- v2.AddArg(destptr)
- v2.AddArg(mem)
- v1.AddArg(v2)
- v0.AddArg(v1)
- v.AddArg(v0)
+ v2.AddArg2(destptr, mem)
+ v1.AddArg2(destptr, v2)
+ v0.AddArg2(destptr, v1)
+ v.AddArg2(destptr, v0)
return true
}
// match: (Zero [s] destptr mem)
@@ -16970,11 +15971,9 @@ func rewriteValue386_OpZero(v *Value) bool {
}
v.reset(Op386DUFFZERO)
v.AuxInt = 1 * (128 - s/4)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLconst, typ.UInt32)
v0.AuxInt = 0
- v.AddArg(v0)
- v.AddArg(mem)
+ v.AddArg3(destptr, v0, mem)
return true
}
// match: (Zero [s] destptr mem)
@@ -16988,14 +15987,11 @@ func rewriteValue386_OpZero(v *Value) bool {
break
}
v.reset(Op386REPSTOSL)
- v.AddArg(destptr)
v0 := b.NewValue0(v.Pos, Op386MOVLconst, typ.UInt32)
v0.AuxInt = s / 4
- v.AddArg(v0)
v1 := b.NewValue0(v.Pos, Op386MOVLconst, typ.UInt32)
v1.AuxInt = 0
- v.AddArg(v1)
- v.AddArg(mem)
+ v.AddArg4(destptr, v0, v1, mem)
return true
}
return false
@@ -17292,8 +16288,7 @@ func rewriteBlock386(b *Block) bool {
cond := b.Controls[0]
b.Reset(Block386NE)
v0 := b.NewValue0(cond.Pos, Op386TESTB, types.TypeFlags)
- v0.AddArg(cond)
- v0.AddArg(cond)
+ v0.AddArg2(cond, cond)
b.AddControl(v0)
return true
}