[dev.ssa] cmd/compile/internal/ssa/gen: move variable reset code into a function

Shaves about 3 lines per generated rule.

Change-Id: I94adc94ab79f90ac5fd033f896ece3b1eddf0f3d
Reviewed-on: https://go-review.googlesource.com/19197
Reviewed-by: Keith Randall <khr@golang.org>
diff --git a/src/cmd/compile/internal/ssa/decompose.go b/src/cmd/compile/internal/ssa/decompose.go
index 6dc1125..fd8d6b8 100644
--- a/src/cmd/compile/internal/ssa/decompose.go
+++ b/src/cmd/compile/internal/ssa/decompose.go
@@ -122,10 +122,7 @@
 		ptr.AddArg(a.Block.NewValue1(v.Line, OpStringPtr, ptrType, a))
 		len.AddArg(a.Block.NewValue1(v.Line, OpStringLen, lenType, a))
 	}
-	v.Op = OpStringMake
-	v.AuxInt = 0
-	v.Aux = nil
-	v.resetArgs()
+	v.reset(OpStringMake)
 	v.AddArg(ptr)
 	v.AddArg(len)
 }
@@ -143,10 +140,7 @@
 		len.AddArg(a.Block.NewValue1(v.Line, OpSliceLen, lenType, a))
 		cap.AddArg(a.Block.NewValue1(v.Line, OpSliceCap, lenType, a))
 	}
-	v.Op = OpSliceMake
-	v.AuxInt = 0
-	v.Aux = nil
-	v.resetArgs()
+	v.reset(OpSliceMake)
 	v.AddArg(ptr)
 	v.AddArg(len)
 	v.AddArg(cap)
@@ -170,10 +164,7 @@
 		real.AddArg(a.Block.NewValue1(v.Line, OpComplexReal, partType, a))
 		imag.AddArg(a.Block.NewValue1(v.Line, OpComplexImag, partType, a))
 	}
-	v.Op = OpComplexMake
-	v.AuxInt = 0
-	v.Aux = nil
-	v.resetArgs()
+	v.reset(OpComplexMake)
 	v.AddArg(real)
 	v.AddArg(imag)
 }
@@ -187,10 +178,7 @@
 		itab.AddArg(a.Block.NewValue1(v.Line, OpITab, ptrType, a))
 		data.AddArg(a.Block.NewValue1(v.Line, OpIData, ptrType, a))
 	}
-	v.Op = OpIMake
-	v.AuxInt = 0
-	v.Aux = nil
-	v.resetArgs()
+	v.reset(OpIMake)
 	v.AddArg(itab)
 	v.AddArg(data)
 }
@@ -206,10 +194,7 @@
 			fields[i].AddArg(a.Block.NewValue1I(v.Line, OpStructSelect, t.FieldType(i), i, a))
 		}
 	}
-	v.Op = StructMakeOp(n)
-	v.AuxInt = 0
-	v.Aux = nil
-	v.resetArgs()
+	v.reset(StructMakeOp(n))
 	v.AddArgs(fields[:n]...)
 
 	// Recursively decompose phis for each field.
diff --git a/src/cmd/compile/internal/ssa/gen/rulegen.go b/src/cmd/compile/internal/ssa/gen/rulegen.go
index 8d6d008..c39271e 100644
--- a/src/cmd/compile/internal/ssa/gen/rulegen.go
+++ b/src/cmd/compile/internal/ssa/gen/rulegen.go
@@ -435,10 +435,7 @@
 			// It in not safe in general to move a variable between blocks
 			// (and particularly not a phi node).
 			// Introduce a copy.
-			fmt.Fprintf(w, "v.Op = OpCopy\n")
-			fmt.Fprintf(w, "v.AuxInt = 0\n")
-			fmt.Fprintf(w, "v.Aux = nil\n")
-			fmt.Fprintf(w, "v.resetArgs()\n")
+			fmt.Fprintf(w, "v.reset(OpCopy)\n")
 			fmt.Fprintf(w, "v.Type = %s.Type\n", result)
 			fmt.Fprintf(w, "v.AddArg(%s)\n", result)
 		}
@@ -478,13 +475,10 @@
 	var v string
 	if top && loc == "b" {
 		v = "v"
+		fmt.Fprintf(w, "v.reset(%s)\n", opName(s[0], arch))
 		if typeOverride {
 			fmt.Fprintf(w, "v.Type = %s\n", opType)
 		}
-		fmt.Fprintf(w, "v.Op = %s\n", opName(s[0], arch))
-		fmt.Fprintf(w, "v.AuxInt = 0\n")
-		fmt.Fprintf(w, "v.Aux = nil\n")
-		fmt.Fprintf(w, "v.resetArgs()\n")
 	} else {
 		if opType == "" {
 			log.Fatalf("sub-expression %s (op=%s) must have a type", result, s[0])
@@ -494,10 +488,7 @@
 		fmt.Fprintf(w, "%s := %s.NewValue0(v.Line, %s, %s)\n", v, loc, opName(s[0], arch), opType)
 		if top {
 			// Rewrite original into a copy
-			fmt.Fprintf(w, "v.Op = OpCopy\n")
-			fmt.Fprintf(w, "v.AuxInt = 0\n")
-			fmt.Fprintf(w, "v.Aux = nil\n")
-			fmt.Fprintf(w, "v.resetArgs()\n")
+			fmt.Fprintf(w, "v.reset(OpCopy)\n")
 			fmt.Fprintf(w, "v.AddArg(%s)\n", v)
 		}
 	}
diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64.go b/src/cmd/compile/internal/ssa/rewriteAMD64.go
index ed62d3f..965e9a5 100644
--- a/src/cmd/compile/internal/ssa/rewriteAMD64.go
+++ b/src/cmd/compile/internal/ssa/rewriteAMD64.go
@@ -740,10 +740,7 @@
 			goto endab690db69bfd8192eea57a2f9f76bf84
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ADDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -760,10 +757,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ADDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -780,10 +774,7 @@
 			goto end9464509b8874ffb00b43b843da01f0bc
 		}
 		y := v.Args[1].Args[0]
-		v.Op = OpAMD64SUBB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -805,10 +796,7 @@
 		if !(int8(c) == 0) {
 			goto end3fbe38dfc1de8f48c755862c4c8b6bac
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -825,10 +813,7 @@
 			goto enda9b1e9e31ccdf0af5f4fe57bf4b1343f
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = c + d
 		return true
 	}
@@ -845,10 +830,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDBconst)
 		v.AuxInt = c + d
 		v.AddArg(x)
 		return true
@@ -870,10 +852,7 @@
 			goto end8d6d3b99a7be8da6b7a254b7e709cc95
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ADDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -890,10 +869,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ADDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -910,10 +886,7 @@
 			goto end9596df31f2685a49df67c6fb912a521d
 		}
 		y := v.Args[1].Args[0]
-		v.Op = OpAMD64SUBL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -935,10 +908,7 @@
 		if !(int32(c) == 0) {
 			goto endf04fb6232fbd3b460bb0d1bdcdc57d65
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -955,10 +925,7 @@
 			goto ende04850e987890abf1d66199042a19c23
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = c + d
 		return true
 	}
@@ -975,10 +942,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDLconst)
 		v.AuxInt = c + d
 		v.AddArg(x)
 		return true
@@ -1003,10 +967,7 @@
 		if !(is32Bit(c)) {
 			goto end1de8aeb1d043e0dadcffd169a99ce5c0
 		}
-		v.Op = OpAMD64ADDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1026,10 +987,7 @@
 		if !(is32Bit(c)) {
 			goto endca635e3bdecd9e3aeb892f841021dfaa
 		}
-		v.Op = OpAMD64ADDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1049,10 +1007,7 @@
 			goto endc02313d35a0525d1d680cd58992e820d
 		}
 		y := v.Args[1].Args[0]
-		v.Op = OpAMD64LEAQ8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ8)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1069,10 +1024,7 @@
 			goto endec8f899c6e175a0147a90750f9bfe0a2
 		}
 		y := v.Args[1].Args[0]
-		v.Op = OpAMD64SUBQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1096,10 +1048,7 @@
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
 		y := v.Args[0].Args[1]
-		v.Op = OpAMD64LEAQ8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ8)
 		v.AuxInt = addOff(c, d)
 		v.AddArg(x)
 		v.AddArg(y)
@@ -1116,10 +1065,7 @@
 			goto end03d9f5a3e153048b0afa781401e2a849
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1136,10 +1082,7 @@
 			goto end09dc54395b4e96e8332cf8e4e7481c52
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = c + d
 		return true
 	}
@@ -1156,10 +1099,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQconst)
 		v.AuxInt = c + d
 		v.AddArg(x)
 		return true
@@ -1181,10 +1121,7 @@
 			goto end1aabd2317de77c7dfc4876fd7e4c5011
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ADDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1201,10 +1138,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ADDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1221,10 +1155,7 @@
 			goto end55cf2af0d75f3ec413528eeb799e94d5
 		}
 		y := v.Args[1].Args[0]
-		v.Op = OpAMD64SUBW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1246,10 +1177,7 @@
 		if !(int16(c) == 0) {
 			goto end8564670ff18b2a91eb92d5e5775464cd
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1266,10 +1194,7 @@
 			goto end32541920f2f5a920dfae41d8ebbef00f
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = c + d
 		return true
 	}
@@ -1286,10 +1211,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDWconst)
 		v.AuxInt = c + d
 		v.AddArg(x)
 		return true
@@ -1311,10 +1233,7 @@
 			goto end01100cd255396e29bfdb130f4fbc9bbc
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ANDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1331,10 +1250,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ANDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1351,10 +1267,7 @@
 			goto endd275ec2e73768cb3d201478fc934e06c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ANDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1371,10 +1284,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ANDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1390,10 +1300,7 @@
 		if v.Args[1] != x {
 			goto endb8ff272a1456513da708603abe37541c
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1414,10 +1321,7 @@
 		if !(int8(c) == 0) {
 			goto end2106d410c949da14d7c00041f40eca76
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -1433,10 +1337,7 @@
 		if !(int8(c) == -1) {
 			goto enda0b78503c204c8225de1433949a71fe4
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1453,10 +1354,7 @@
 			goto end946312b1f216933da86febe293eb956f
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = c & d
 		return true
 	}
@@ -1477,10 +1375,7 @@
 			goto end0a4c49d9a26759c0fd21369dafcd7abb
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ANDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1497,10 +1392,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ANDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1516,10 +1408,7 @@
 		if v.Args[1] != x {
 			goto enddfb08a0d0c262854db3905cb323388c7
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1540,10 +1429,7 @@
 		if !(int32(c) == 0) {
 			goto end5efb241208aef28c950b7bcf8d85d5de
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -1559,10 +1445,7 @@
 		if !(int32(c) == -1) {
 			goto end0e852ae30bb8289d6ffee0c9267e3e0c
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1579,10 +1462,7 @@
 			goto end7bfd24059369753eadd235f07e2dd7b8
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = c & d
 		return true
 	}
@@ -1606,10 +1486,7 @@
 		if !(is32Bit(c)) {
 			goto end048fadc69e81103480015b84b9cafff7
 		}
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1629,10 +1506,7 @@
 		if !(is32Bit(c)) {
 			goto end3035a3bf650b708705fd27dd857ab0a4
 		}
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1648,10 +1522,7 @@
 		if v.Args[1] != x {
 			goto end06b5ec19efdd4e79f03a5e4a2c3c3427
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1671,10 +1542,7 @@
 		if v.AuxInt != 0 {
 			goto end57018c1d0f54fd721521095b4832bab2
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -1689,10 +1557,7 @@
 			goto endb542c4b42ab94a7bedb32dec8f610d67
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1709,10 +1574,7 @@
 			goto end67ca66494705b0345a5f22c710225292
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = c & d
 		return true
 	}
@@ -1733,10 +1595,7 @@
 			goto endce6f557823ee2fdd7a8f47b6f925fc7c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ANDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1753,10 +1612,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ANDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1773,10 +1629,7 @@
 			goto enda77a39f65a5eb3436a5842eab69a3103
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ANDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1793,10 +1646,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ANDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -1812,10 +1662,7 @@
 		if v.Args[1] != x {
 			goto end3a26cf52dd1b77f07cc9e005760dbb11
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1836,10 +1683,7 @@
 		if !(int16(c) == 0) {
 			goto end336ece33b4f0fb44dfe1f24981df7b74
 		}
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -1855,10 +1699,7 @@
 		if !(int16(c) == -1) {
 			goto endfb111c3afa8c5c4040fa6000fadee810
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1875,10 +1716,7 @@
 			goto end250eb27fcac10bf6c0d96ce66a21726e
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = c & d
 		return true
 	}
@@ -1896,10 +1734,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1918,10 +1753,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1940,10 +1772,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDSS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDSS)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1962,10 +1791,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -1984,10 +1810,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDSD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDSD)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2006,10 +1829,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2028,10 +1848,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ADDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2050,10 +1867,7 @@
 	{
 		sym := v.Aux
 		base := v.Args[0]
-		v.Op = OpAMD64LEAQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ)
 		v.Aux = sym
 		v.AddArg(base)
 		return true
@@ -2072,10 +1886,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2094,10 +1905,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2116,10 +1924,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2138,10 +1943,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2163,10 +1965,7 @@
 			goto end52190c0b8759133aa6c540944965c4c0
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64CMPBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CMPBconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -2183,10 +1982,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64InvertFlags
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64InvertFlags)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -2213,10 +2009,7 @@
 		if !(int8(x) == int8(y)) {
 			goto end1be300bd80b7d8cd0fa37e1907c75a77
 		}
-		v.Op = OpAMD64FlagEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagEQ)
 		return true
 	}
 	goto end1be300bd80b7d8cd0fa37e1907c75a77
@@ -2234,10 +2027,7 @@
 		if !(int8(x) < int8(y) && uint8(x) < uint8(y)) {
 			goto endbe76e73088c59765dd0132e2ac15fc6e
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto endbe76e73088c59765dd0132e2ac15fc6e
@@ -2255,10 +2045,7 @@
 		if !(int8(x) < int8(y) && uint8(x) > uint8(y)) {
 			goto endbfa2ca974f69ec9ceb8a24ad6db45efb
 		}
-		v.Op = OpAMD64FlagLT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_UGT)
 		return true
 	}
 	goto endbfa2ca974f69ec9ceb8a24ad6db45efb
@@ -2276,10 +2063,7 @@
 		if !(int8(x) > int8(y) && uint8(x) < uint8(y)) {
 			goto end68ac2e7dcb3704e235e1c292669320ed
 		}
-		v.Op = OpAMD64FlagGT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_ULT)
 		return true
 	}
 	goto end68ac2e7dcb3704e235e1c292669320ed
@@ -2297,10 +2081,7 @@
 		if !(int8(x) > int8(y) && uint8(x) > uint8(y)) {
 			goto endac1c49c82fb6b76dd324042c4588973c
 		}
-		v.Op = OpAMD64FlagGT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_UGT)
 		return true
 	}
 	goto endac1c49c82fb6b76dd324042c4588973c
@@ -2318,10 +2099,7 @@
 		if !(int8(m)+1 == int8(n) && isPowerOfTwo(int64(int8(n)))) {
 			goto end82aa9d89330cb5dc58592048bfc16ebc
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto end82aa9d89330cb5dc58592048bfc16ebc
@@ -2339,10 +2117,7 @@
 		if v.AuxInt != 0 {
 			goto endc1dd0adee6d97d0f2644600fa5247db5
 		}
-		v.Op = OpAMD64TESTB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2362,10 +2137,7 @@
 		if v.AuxInt != 0 {
 			goto end575fd7ac1086d0c37e6946db5bbc7e94
 		}
-		v.Op = OpAMD64TESTBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -2387,10 +2159,7 @@
 			goto end49ff4559c4bdecb2aef0c905e2d9a6cf
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64CMPLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CMPLconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -2407,10 +2176,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64InvertFlags
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64InvertFlags)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -2437,10 +2203,7 @@
 		if !(int32(x) == int32(y)) {
 			goto end7c53f3fc20f710e60f327bf63b4c8d4e
 		}
-		v.Op = OpAMD64FlagEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagEQ)
 		return true
 	}
 	goto end7c53f3fc20f710e60f327bf63b4c8d4e
@@ -2458,10 +2221,7 @@
 		if !(int32(x) < int32(y) && uint32(x) < uint32(y)) {
 			goto enda12309892d1f4166bfffc9aa62b37111
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto enda12309892d1f4166bfffc9aa62b37111
@@ -2479,10 +2239,7 @@
 		if !(int32(x) < int32(y) && uint32(x) > uint32(y)) {
 			goto end66603988bfeb71e410328b40425c3418
 		}
-		v.Op = OpAMD64FlagLT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_UGT)
 		return true
 	}
 	goto end66603988bfeb71e410328b40425c3418
@@ -2500,10 +2257,7 @@
 		if !(int32(x) > int32(y) && uint32(x) < uint32(y)) {
 			goto endb1b0b14302e765637328dade12e1ce87
 		}
-		v.Op = OpAMD64FlagGT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_ULT)
 		return true
 	}
 	goto endb1b0b14302e765637328dade12e1ce87
@@ -2521,10 +2275,7 @@
 		if !(int32(x) > int32(y) && uint32(x) > uint32(y)) {
 			goto endc7b8e86e537d6e106e237023dc2c9a7b
 		}
-		v.Op = OpAMD64FlagGT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_UGT)
 		return true
 	}
 	goto endc7b8e86e537d6e106e237023dc2c9a7b
@@ -2542,10 +2293,7 @@
 		if !(int32(m)+1 == int32(n) && isPowerOfTwo(int64(int32(n)))) {
 			goto endf202b9830a1e45f3888f2598c762c702
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto endf202b9830a1e45f3888f2598c762c702
@@ -2563,10 +2311,7 @@
 		if v.AuxInt != 0 {
 			goto endc99c55b2fd4bbe4f6eba9675087f215d
 		}
-		v.Op = OpAMD64TESTL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2586,10 +2331,7 @@
 		if v.AuxInt != 0 {
 			goto end218077662043c7cfb0b92334ec8d691f
 		}
-		v.Op = OpAMD64TESTLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -2614,10 +2356,7 @@
 		if !(is32Bit(c)) {
 			goto end3bbb2c6caa57853a7561738ce3c0c630
 		}
-		v.Op = OpAMD64CMPQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CMPQconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -2637,10 +2376,7 @@
 		if !(is32Bit(c)) {
 			goto end153e951c4d9890ee40bf6f189ff6280e
 		}
-		v.Op = OpAMD64InvertFlags
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64InvertFlags)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -2667,10 +2403,7 @@
 		if !(x == y) {
 			goto enda7a434ec055a51246d67ff14b48e455d
 		}
-		v.Op = OpAMD64FlagEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagEQ)
 		return true
 	}
 	goto enda7a434ec055a51246d67ff14b48e455d
@@ -2688,10 +2421,7 @@
 		if !(x < y && uint64(x) < uint64(y)) {
 			goto end88f2277949392f2b8d03934fd812d3ee
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto end88f2277949392f2b8d03934fd812d3ee
@@ -2709,10 +2439,7 @@
 		if !(x < y && uint64(x) > uint64(y)) {
 			goto end38a2207ac4547f3f0cfb2bc48748e033
 		}
-		v.Op = OpAMD64FlagLT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_UGT)
 		return true
 	}
 	goto end38a2207ac4547f3f0cfb2bc48748e033
@@ -2730,10 +2457,7 @@
 		if !(x > y && uint64(x) < uint64(y)) {
 			goto end0adaa13f82a881b97095d7a210b96f3c
 		}
-		v.Op = OpAMD64FlagGT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_ULT)
 		return true
 	}
 	goto end0adaa13f82a881b97095d7a210b96f3c
@@ -2751,10 +2475,7 @@
 		if !(x > y && uint64(x) > uint64(y)) {
 			goto end1248b87e4a141c78bc8eff05d3fac70e
 		}
-		v.Op = OpAMD64FlagGT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_UGT)
 		return true
 	}
 	goto end1248b87e4a141c78bc8eff05d3fac70e
@@ -2772,10 +2493,7 @@
 		if !(m+1 == n && isPowerOfTwo(n)) {
 			goto end934098fb12e383829b654938269abc12
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto end934098fb12e383829b654938269abc12
@@ -2793,10 +2511,7 @@
 		if v.AuxInt != 0 {
 			goto endd253b271c624b83def50b061d8a945a1
 		}
-		v.Op = OpAMD64TESTQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -2816,10 +2531,7 @@
 		if v.AuxInt != 0 {
 			goto endcf00c5ad714d2152d72184b163c8d57c
 		}
-		v.Op = OpAMD64TESTQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -2841,10 +2553,7 @@
 			goto end310a9ba58ac35c97587e08c63fe8a46c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64CMPWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CMPWconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -2861,10 +2570,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64InvertFlags
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64InvertFlags)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -2891,10 +2597,7 @@
 		if !(int16(x) == int16(y)) {
 			goto endff7e81d2095a9997513cae77cd245b43
 		}
-		v.Op = OpAMD64FlagEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagEQ)
 		return true
 	}
 	goto endff7e81d2095a9997513cae77cd245b43
@@ -2912,10 +2615,7 @@
 		if !(int16(x) < int16(y) && uint16(x) < uint16(y)) {
 			goto end13137b0dee5a1ef5d508b312e4fa947c
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto end13137b0dee5a1ef5d508b312e4fa947c
@@ -2933,10 +2633,7 @@
 		if !(int16(x) < int16(y) && uint16(x) > uint16(y)) {
 			goto ended901a2a49e592c431e45ffc17ca213d
 		}
-		v.Op = OpAMD64FlagLT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_UGT)
 		return true
 	}
 	goto ended901a2a49e592c431e45ffc17ca213d
@@ -2954,10 +2651,7 @@
 		if !(int16(x) > int16(y) && uint16(x) < uint16(y)) {
 			goto end66b1d55596a00cdc04ad83bfdeb6be8b
 		}
-		v.Op = OpAMD64FlagGT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_ULT)
 		return true
 	}
 	goto end66b1d55596a00cdc04ad83bfdeb6be8b
@@ -2975,10 +2669,7 @@
 		if !(int16(x) > int16(y) && uint16(x) > uint16(y)) {
 			goto end4493f5af38d242ebb4bc2f64055a0854
 		}
-		v.Op = OpAMD64FlagGT_UGT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagGT_UGT)
 		return true
 	}
 	goto end4493f5af38d242ebb4bc2f64055a0854
@@ -2996,10 +2687,7 @@
 		if !(int16(m)+1 == int16(n) && isPowerOfTwo(int64(int16(n)))) {
 			goto endfcea07d93ded49b0e02d5fa0059309a4
 		}
-		v.Op = OpAMD64FlagLT_ULT
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64FlagLT_ULT)
 		return true
 	}
 	goto endfcea07d93ded49b0e02d5fa0059309a4
@@ -3017,10 +2705,7 @@
 		if v.AuxInt != 0 {
 			goto end390cbc150fec59cbf63a209c485ef8b2
 		}
-		v.Op = OpAMD64TESTW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3040,10 +2725,7 @@
 		if v.AuxInt != 0 {
 			goto end1bde0fea3dcffeb66b314bc6b4c9aae5
 		}
-		v.Op = OpAMD64TESTWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64TESTWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -3064,10 +2746,7 @@
 		entry := v.Args[0]
 		closure := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64CALLclosure
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CALLclosure)
 		v.AuxInt = argwid
 		v.AddArg(entry)
 		v.AddArg(closure)
@@ -3087,10 +2766,7 @@
 	// result: (NOTW x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NOTW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NOTW)
 		v.AddArg(x)
 		return true
 	}
@@ -3107,10 +2783,7 @@
 	// result: (NOTL x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NOTL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NOTL)
 		v.AddArg(x)
 		return true
 	}
@@ -3127,10 +2800,7 @@
 	// result: (NOTQ x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NOTQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NOTQ)
 		v.AddArg(x)
 		return true
 	}
@@ -3147,10 +2817,7 @@
 	// result: (NOTB x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NOTB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NOTB)
 		v.AddArg(x)
 		return true
 	}
@@ -3167,10 +2834,7 @@
 	// result: (MOVWconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3187,10 +2851,7 @@
 	// result: (MOVLconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3207,10 +2868,7 @@
 	// result: (MOVSSconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVSSconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3227,10 +2885,7 @@
 	// result: (MOVQconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3247,10 +2902,7 @@
 	// result: (MOVSDconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVSDconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3267,10 +2919,7 @@
 	// result: (MOVBconst [val])
 	{
 		val := v.AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = val
 		return true
 	}
@@ -3287,10 +2936,7 @@
 	// result: (MOVBconst [b])
 	{
 		b := v.AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = b
 		return true
 	}
@@ -3306,10 +2952,7 @@
 	// cond:
 	// result: (MOVQconst [0])
 	{
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -3328,11 +2971,8 @@
 		t := v.Type
 		x := v.Args[0]
 		mem := v.Args[1]
+		v.reset(OpAMD64MOVQconvert)
 		v.Type = t
-		v.Op = OpAMD64MOVQconvert
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v.AddArg(mem)
 		return true
@@ -3350,10 +2990,7 @@
 	// result: (CVTTSS2SL x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTTSS2SL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTTSS2SL)
 		v.AddArg(x)
 		return true
 	}
@@ -3370,10 +3007,7 @@
 	// result: (CVTTSS2SQ x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTTSS2SQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTTSS2SQ)
 		v.AddArg(x)
 		return true
 	}
@@ -3390,10 +3024,7 @@
 	// result: (CVTSS2SD x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSS2SD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSS2SD)
 		v.AddArg(x)
 		return true
 	}
@@ -3410,10 +3041,7 @@
 	// result: (CVTSL2SS x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSL2SS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSL2SS)
 		v.AddArg(x)
 		return true
 	}
@@ -3430,10 +3058,7 @@
 	// result: (CVTSL2SD x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSL2SD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSL2SD)
 		v.AddArg(x)
 		return true
 	}
@@ -3450,10 +3075,7 @@
 	// result: (CVTTSD2SL x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTTSD2SL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTTSD2SL)
 		v.AddArg(x)
 		return true
 	}
@@ -3470,10 +3092,7 @@
 	// result: (CVTSD2SS x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSD2SS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSD2SS)
 		v.AddArg(x)
 		return true
 	}
@@ -3490,10 +3109,7 @@
 	// result: (CVTTSD2SQ x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTTSD2SQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTTSD2SQ)
 		v.AddArg(x)
 		return true
 	}
@@ -3510,10 +3126,7 @@
 	// result: (CVTSQ2SS x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSQ2SS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSQ2SS)
 		v.AddArg(x)
 		return true
 	}
@@ -3530,10 +3143,7 @@
 	// result: (CVTSQ2SD x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64CVTSQ2SD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CVTSQ2SD)
 		v.AddArg(x)
 		return true
 	}
@@ -3551,10 +3161,7 @@
 	{
 		argwid := v.AuxInt
 		mem := v.Args[0]
-		v.Op = OpAMD64CALLdefer
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CALLdefer)
 		v.AuxInt = argwid
 		v.AddArg(mem)
 		return true
@@ -3573,10 +3180,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3595,10 +3199,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVWU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVWU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3617,10 +3218,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3639,10 +3237,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVSS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVSS)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3661,10 +3256,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVLU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVLU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3683,10 +3275,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3705,10 +3294,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVSD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVSD)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3727,10 +3313,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVQU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVQU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -3749,10 +3332,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVW)
 		v0 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -3775,10 +3355,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64DIVWU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DIVWU)
 		v0 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -3801,10 +3378,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3825,10 +3399,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3849,10 +3420,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3873,10 +3441,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3897,10 +3462,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3921,10 +3483,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3945,10 +3504,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3969,10 +3525,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -3993,10 +3546,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETAE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETAE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4017,10 +3567,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4041,10 +3588,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4065,10 +3609,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETAE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETAE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4089,10 +3630,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4113,10 +3651,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4137,10 +3672,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETAE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETAE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4161,10 +3693,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4185,10 +3714,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETAE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETAE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4207,10 +3733,7 @@
 	// cond:
 	// result: (LoweredGetClosurePtr)
 	{
-		v.Op = OpAMD64LoweredGetClosurePtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LoweredGetClosurePtr)
 		return true
 	}
 	goto end6fd0b53f0acb4d35e7d7fa78d2ca1392
@@ -4226,10 +3749,7 @@
 	// result: (LoweredGetG mem)
 	{
 		mem := v.Args[0]
-		v.Op = OpAMD64LoweredGetG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LoweredGetG)
 		v.AddArg(mem)
 		return true
 	}
@@ -4247,10 +3767,7 @@
 	{
 		argwid := v.AuxInt
 		mem := v.Args[0]
-		v.Op = OpAMD64CALLgo
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CALLgo)
 		v.AuxInt = argwid
 		v.AddArg(mem)
 		return true
@@ -4269,10 +3786,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETG)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4293,10 +3807,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETA
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETA)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4317,10 +3828,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETG)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4341,10 +3849,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4365,10 +3870,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETA
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETA)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4389,10 +3891,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETG)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4413,10 +3912,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4437,10 +3933,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETA
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETA)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4461,10 +3954,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETG)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4485,10 +3975,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETA
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETA)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -4509,10 +3996,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4531,10 +4015,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULWU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULWU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4553,10 +4034,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4575,10 +4053,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULLU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULLU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4597,10 +4072,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4619,10 +4091,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64HMULBU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64HMULBU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -4644,10 +4113,7 @@
 		}
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
-		v.Op = OpAMD64MOVQload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -4667,10 +4133,7 @@
 		argwid := v.AuxInt
 		entry := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64CALLinter
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CALLinter)
 		v.AuxInt = argwid
 		v.AddArg(entry)
 		v.AddArg(mem)
@@ -4690,10 +4153,7 @@
 	{
 		idx := v.Args[0]
 		len := v.Args[1]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(idx)
 		v0.AddArg(len)
@@ -4713,10 +4173,7 @@
 	// result: (SETNE (TESTQ p p))
 	{
 		p := v.Args[0]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64TESTQ, TypeFlags)
 		v0.AddArg(p)
 		v0.AddArg(p)
@@ -4737,10 +4194,7 @@
 	{
 		idx := v.Args[0]
 		len := v.Args[1]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(idx)
 		v0.AddArg(len)
@@ -4770,10 +4224,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end2e2249051d6776a92bcb0d83107e0d82
 		}
-		v.Op = OpAMD64LEAQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4798,10 +4249,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end4e2502574680cc8e02dcc07561e96ef9
 		}
-		v.Op = OpAMD64LEAQ1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ1)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4827,10 +4275,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end92e54b1fbb5ba0b17a6006fe56b4d57b
 		}
-		v.Op = OpAMD64LEAQ2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ2)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4856,10 +4301,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end5da4c89d542d34d0d7f8848c3ea0fead
 		}
-		v.Op = OpAMD64LEAQ4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4885,10 +4327,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endc051937df5f12598e76c0923b5a60a39
 		}
-		v.Op = OpAMD64LEAQ8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4919,10 +4358,7 @@
 		if !(canMergeSym(sym1, sym2) && x.Op != OpSB) {
 			goto end3b837b0ce1bd6a79804a28ee529fc65b
 		}
-		v.Op = OpAMD64LEAQ1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ1)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4948,10 +4384,7 @@
 		if !(canMergeSym(sym1, sym2) && y.Op != OpSB) {
 			goto endfd9dd9448d726fc7d82274b404cddb67
 		}
-		v.Op = OpAMD64LEAQ1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ1)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -4982,10 +4415,7 @@
 		if !(canMergeSym(sym1, sym2) && x.Op != OpSB) {
 			goto end2bf3cb6e212c3f62ab83ce10059e672e
 		}
-		v.Op = OpAMD64LEAQ2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ2)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -5016,10 +4446,7 @@
 		if !(canMergeSym(sym1, sym2) && x.Op != OpSB) {
 			goto end066907f169f09e56139e801397316c95
 		}
-		v.Op = OpAMD64LEAQ4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -5050,10 +4477,7 @@
 		if !(canMergeSym(sym1, sym2) && x.Op != OpSB) {
 			goto end6bde9448027690b01bbf30dee061ce23
 		}
-		v.Op = OpAMD64LEAQ8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(x)
@@ -5074,10 +4498,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETLE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETLE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5098,10 +4519,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5122,10 +4540,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETLE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETLE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5146,10 +4561,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(y)
 		v0.AddArg(x)
@@ -5170,10 +4582,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5194,10 +4603,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETLE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETLE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5218,10 +4624,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(y)
 		v0.AddArg(x)
@@ -5242,10 +4645,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5266,10 +4666,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETLE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETLE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5290,10 +4687,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5314,10 +4708,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETL)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5338,10 +4729,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5362,10 +4750,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETL)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5386,10 +4771,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(y)
 		v0.AddArg(x)
@@ -5410,10 +4792,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5434,10 +4813,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETL)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5458,10 +4834,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETGF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(y)
 		v0.AddArg(x)
@@ -5482,10 +4855,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5506,10 +4876,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETL)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5530,10 +4897,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5558,10 +4922,7 @@
 		if !(is64BitInt(t) || isPtr(t)) {
 			goto end7c4c53acf57ebc5f03273652ba1d5934
 		}
-		v.Op = OpAMD64MOVQload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5579,10 +4940,7 @@
 		if !(is32BitInt(t)) {
 			goto ende1cfcb15bfbcfd448ce303d0882a4057
 		}
-		v.Op = OpAMD64MOVLload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5600,10 +4958,7 @@
 		if !(is16BitInt(t)) {
 			goto end2d0a1304501ed9f4e9e2d288505a9c7c
 		}
-		v.Op = OpAMD64MOVWload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5621,10 +4976,7 @@
 		if !(t.IsBoolean() || is8BitInt(t)) {
 			goto end8f83bf72293670e75b22d6627bd13f0b
 		}
-		v.Op = OpAMD64MOVBload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5642,10 +4994,7 @@
 		if !(is32BitFloat(t)) {
 			goto end63383c4895805881aabceebea3c4c533
 		}
-		v.Op = OpAMD64MOVSSload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5663,10 +5012,7 @@
 		if !(is64BitFloat(t)) {
 			goto end99d0858c0a5bb72f0fe4decc748da812
 		}
-		v.Op = OpAMD64MOVSDload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDload)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -5686,11 +5032,8 @@
 		t := v.Type
 		x := v.Args[0]
 		c := v.AuxInt
+		v.reset(OpAMD64ROLWconst)
 		v.Type = t
-		v.Op = OpAMD64ROLWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AuxInt = c & 15
 		v.AddArg(x)
 		return true
@@ -5710,11 +5053,8 @@
 		t := v.Type
 		x := v.Args[0]
 		c := v.AuxInt
+		v.reset(OpAMD64ROLLconst)
 		v.Type = t
-		v.Op = OpAMD64ROLLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -5734,11 +5074,8 @@
 		t := v.Type
 		x := v.Args[0]
 		c := v.AuxInt
+		v.reset(OpAMD64ROLQconst)
 		v.Type = t
-		v.Op = OpAMD64ROLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -5758,11 +5095,8 @@
 		t := v.Type
 		x := v.Args[0]
 		c := v.AuxInt
+		v.reset(OpAMD64ROLBconst)
 		v.Type = t
-		v.Op = OpAMD64ROLBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AuxInt = c & 7
 		v.AddArg(x)
 		return true
@@ -5782,10 +5116,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5813,10 +5144,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5844,10 +5172,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5875,10 +5200,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5906,10 +5228,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5937,10 +5256,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5968,10 +5284,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -5999,10 +5312,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6030,10 +5340,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6061,10 +5368,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6092,10 +5396,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6123,10 +5424,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6154,10 +5452,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6185,10 +5480,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6216,10 +5508,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6247,10 +5536,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -6283,10 +5569,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQSXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -6309,10 +5592,7 @@
 		if !(c&0x80 == 0) {
 			goto endf998318725c3cc6c701ebb69a2473650
 		}
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0x7f
 		v.AddArg(x)
 		return true
@@ -6337,10 +5617,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQZXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -6360,10 +5637,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0xff
 		v.AddArg(x)
 		return true
@@ -6388,10 +5662,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVBload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6417,10 +5688,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end3771a59cf66b0df99120d76f4c358fab
 		}
-		v.Op = OpAMD64MOVBload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -6447,10 +5715,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6473,10 +5738,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6500,10 +5762,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6529,10 +5788,7 @@
 		if !(validOff(off)) {
 			goto endfdf24c49923451a076f1868988b8c9d9
 		}
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = makeValAndOff(int64(int8(c)), off)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6559,10 +5815,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto enda7086cf7f6b8cf81972e2c3d4b12f3fc
 		}
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -6591,10 +5844,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto ende386ced77f1acdae2e8bbc379803b7cf
 		}
-		v.Op = OpAMD64MOVBstoreidx1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreidx1)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -6619,10 +5869,7 @@
 		idx := v.Args[0].Args[1]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstoreidx1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreidx1)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6654,10 +5901,7 @@
 		if !(ValAndOff(sc).canAdd(off)) {
 			goto end8d35ca650b7c40bc43984d3f5925a052
 		}
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = s
 		v.AddArg(ptr)
@@ -6683,10 +5927,7 @@
 		if !(canMergeSym(sym1, sym2) && ValAndOff(sc).canAdd(off)) {
 			goto end8deb839acf84818dd8fc827c0338f42c
 		}
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -6715,10 +5956,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVBstoreidx1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreidx1)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6747,10 +5985,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQSXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -6773,10 +6008,7 @@
 		if !(c&0x80000000 == 0) {
 			goto end286a5aa0d10b04039cbe6e09307b4cbe
 		}
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0x7fffffff
 		v.AddArg(x)
 		return true
@@ -6801,10 +6033,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQZXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -6824,10 +6053,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0xffffffff
 		v.AddArg(x)
 		return true
@@ -6852,10 +6078,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVLload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6881,10 +6104,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto enddb9e59335876d8a565c425731438a1b3
 		}
-		v.Op = OpAMD64MOVLload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -6911,10 +6131,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6937,10 +6154,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6964,10 +6178,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -6993,10 +6204,7 @@
 		if !(validOff(off)) {
 			goto enda62a54c45bf42db801af4095d27faccd
 		}
-		v.Op = OpAMD64MOVLstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreconst)
 		v.AuxInt = makeValAndOff(int64(int32(c)), off)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7023,10 +6231,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endd57b1e4313fc7a3331340a9af00ba116
 		}
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7055,10 +6260,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end6d2bbe089d6de8d261fcdeef263d2f7c
 		}
-		v.Op = OpAMD64MOVLstoreidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7090,10 +6292,7 @@
 		if !(ValAndOff(sc).canAdd(off)) {
 			goto end4981598152dd0763f1d735810a7d34e8
 		}
-		v.Op = OpAMD64MOVLstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = s
 		v.AddArg(ptr)
@@ -7119,10 +6318,7 @@
 		if !(canMergeSym(sym1, sym2) && ValAndOff(sc).canAdd(off)) {
 			goto endd579250954b5df84a77518b36f739e12
 		}
-		v.Op = OpAMD64MOVLstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7151,10 +6347,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVLstoreidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7183,10 +6376,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVOload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVOload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7212,10 +6402,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endd36cf9b00af7a8f44fb8c60067a8efb2
 		}
-		v.Op = OpAMD64MOVOload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVOload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7243,10 +6430,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVOstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVOstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7274,10 +6458,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endc28b9b3efe9eb235e1586c4555280c20
 		}
-		v.Op = OpAMD64MOVOstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVOstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7305,10 +6486,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVQload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7334,10 +6512,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endd0c093adc4f05f2037005734c77d3cc4
 		}
-		v.Op = OpAMD64MOVQload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7364,10 +6539,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end74a50d810fb3945e809f608cd094a59c
 		}
-		v.Op = OpAMD64MOVQloadidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQloadidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7396,10 +6568,7 @@
 		ptr := v.Args[0].Args[0]
 		idx := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVQloadidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQloadidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7428,10 +6597,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVQstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7457,10 +6623,7 @@
 		if !(validValAndOff(c, off)) {
 			goto endda0f4b36e19753762dbd1c6ee05e4c81
 		}
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = makeValAndOff(c, off)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7487,10 +6650,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end9a0cfe20b3b0f587e252760907c1b5c0
 		}
-		v.Op = OpAMD64MOVQstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7519,10 +6679,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end442c322e6719e280b6be1c12858e49d7
 		}
-		v.Op = OpAMD64MOVQstoreidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7554,10 +6711,7 @@
 		if !(ValAndOff(sc).canAdd(off)) {
 			goto end3694207cd20e8e1cc719e179bdfe0c74
 		}
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = s
 		v.AddArg(ptr)
@@ -7583,10 +6737,7 @@
 		if !(canMergeSym(sym1, sym2) && ValAndOff(sc).canAdd(off)) {
 			goto endf405b27b22dbf76f83abd1b5ad5e53d9
 		}
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7615,10 +6766,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVQstoreidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7647,10 +6795,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVSDload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7676,10 +6821,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end96fa9c439e31050aa91582bc2a9f2c20
 		}
-		v.Op = OpAMD64MOVSDload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7706,10 +6848,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endbcb2ce441824d0e3a4b501018cfa7f60
 		}
-		v.Op = OpAMD64MOVSDloadidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDloadidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7741,10 +6880,7 @@
 		ptr := v.Args[0].Args[0]
 		idx := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVSDloadidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDloadidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7773,10 +6909,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVSDstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7804,10 +6937,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end415dde14f3400bec1b2756174a5d7179
 		}
-		v.Op = OpAMD64MOVSDstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7836,10 +6966,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end1ad6fc0c5b59610dabf7f9595a48a230
 		}
-		v.Op = OpAMD64MOVSDstoreidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDstoreidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7873,10 +7000,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVSDstoreidx8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDstoreidx8)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7905,10 +7029,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVSSload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -7934,10 +7055,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end15f2583bd72ad7fc077b3952634a1c85
 		}
-		v.Op = OpAMD64MOVSSload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -7964,10 +7082,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end49722f4a0adba31bb143601ce1d2aae0
 		}
-		v.Op = OpAMD64MOVSSloadidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSloadidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -7999,10 +7114,7 @@
 		ptr := v.Args[0].Args[0]
 		idx := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVSSloadidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSloadidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8031,10 +7143,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVSSstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8062,10 +7171,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end70ebc170131920e515e3f416a6b952c5
 		}
-		v.Op = OpAMD64MOVSSstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -8094,10 +7200,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end1622dc435e45833eda4d29d44df7cc34
 		}
-		v.Op = OpAMD64MOVSSstoreidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSstoreidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -8131,10 +7234,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVSSstoreidx4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSstoreidx4)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8163,10 +7263,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQSXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -8189,10 +7286,7 @@
 		if !(c&0x8000 == 0) {
 			goto end8581b4c4dfd1278e97aa536308519e68
 		}
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0x7fff
 		v.AddArg(x)
 		return true
@@ -8217,10 +7311,7 @@
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[0].Args[1]
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQZXload, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v0.AuxInt = off
 		v0.Aux = sym
@@ -8240,10 +7331,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ANDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQconst)
 		v.AuxInt = c & 0xffff
 		v.AddArg(x)
 		return true
@@ -8268,10 +7356,7 @@
 		off2 := v.Args[0].AuxInt
 		ptr := v.Args[0].Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVWload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8297,10 +7382,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end7a79314cb49bf53d79c38c3077d87457
 		}
-		v.Op = OpAMD64MOVWload
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWload)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -8327,10 +7409,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8353,10 +7432,7 @@
 		}
 		x := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AuxInt = off
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8380,10 +7456,7 @@
 		ptr := v.Args[0].Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8409,10 +7482,7 @@
 		if !(validOff(off)) {
 			goto end60327daf9965d73a8c1971d098e1e31d
 		}
-		v.Op = OpAMD64MOVWstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreconst)
 		v.AuxInt = makeValAndOff(int64(int16(c)), off)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8439,10 +7509,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto end4cc466ede8e64e415c899ccac81c0f27
 		}
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(base)
@@ -8471,10 +7538,7 @@
 		if !(canMergeSym(sym1, sym2)) {
 			goto endecfc76d1ba8fcce5d4110a452cd39752
 		}
-		v.Op = OpAMD64MOVWstoreidx2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreidx2)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -8506,10 +7570,7 @@
 		if !(ValAndOff(sc).canAdd(off)) {
 			goto end8825edac065f0e1c615ca5e6ba40e2de
 		}
-		v.Op = OpAMD64MOVWstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = s
 		v.AddArg(ptr)
@@ -8535,10 +7596,7 @@
 		if !(canMergeSym(sym1, sym2) && ValAndOff(sc).canAdd(off)) {
 			goto endba47397e07b40a64fa4cad36ac2e32ad
 		}
-		v.Op = OpAMD64MOVWstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreconst)
 		v.AuxInt = ValAndOff(sc).add(off)
 		v.Aux = mergeSym(sym1, sym2)
 		v.AddArg(ptr)
@@ -8567,10 +7625,7 @@
 		idx := v.Args[1]
 		val := v.Args[2]
 		mem := v.Args[3]
-		v.Op = OpAMD64MOVWstoreidx2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreidx2)
 		v.AuxInt = addOff(off1, off2)
 		v.Aux = sym
 		v.AddArg(ptr)
@@ -8596,10 +7651,7 @@
 			goto end66c6419213ddeb52b1c53fb589a70e5f
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64MULBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8616,10 +7668,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64MULBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8641,10 +7690,7 @@
 			goto endf2db9f96016085f8cb4082b4af01b2aa
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = c * d
 		return true
 	}
@@ -8665,10 +7711,7 @@
 			goto end893477a261bcad6c2821b77c83075c6c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64MULLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8685,10 +7728,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64MULLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8710,10 +7750,7 @@
 			goto endd5732835ed1276ef8b728bcfc1289f73
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = c * d
 		return true
 	}
@@ -8737,10 +7774,7 @@
 		if !(is32Bit(c)) {
 			goto endb38c6e3e0ddfa25ba0ef9684ac1528c0
 		}
-		v.Op = OpAMD64MULQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8760,10 +7794,7 @@
 		if !(is32Bit(c)) {
 			goto end9cb4f29b0bd7141639416735dcbb3b87
 		}
-		v.Op = OpAMD64MULQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8784,10 +7815,7 @@
 			goto end82501cca6b5fb121a7f8b197e55f2fec
 		}
 		x := v.Args[0]
-		v.Op = OpAMD64NEGQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGQ)
 		v.AddArg(x)
 		return true
 	}
@@ -8801,10 +7829,7 @@
 		if v.AuxInt != 0 {
 			goto endcb9faa068e3558ff44daaf1d47d091b5
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -8819,10 +7844,7 @@
 			goto end0b527e71db2b288b2841a1f757aa580d
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -8838,10 +7860,7 @@
 			goto end34a86f261671b5852bec6c57155fe0da
 		}
 		x := v.Args[0]
-		v.Op = OpAMD64LEAQ2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ2)
 		v.AddArg(x)
 		v.AddArg(x)
 		return true
@@ -8857,10 +7876,7 @@
 			goto end534601906c45a9171a9fec3e4b82b189
 		}
 		x := v.Args[0]
-		v.Op = OpAMD64LEAQ4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ4)
 		v.AddArg(x)
 		v.AddArg(x)
 		return true
@@ -8876,10 +7892,7 @@
 			goto end48a2280b6459821289c56073b8354997
 		}
 		x := v.Args[0]
-		v.Op = OpAMD64LEAQ8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LEAQ8)
 		v.AddArg(x)
 		v.AddArg(x)
 		return true
@@ -8896,10 +7909,7 @@
 		if !(isPowerOfTwo(c)) {
 			goto end75076953dbfe022526a153eda99b39b2
 		}
-		v.Op = OpAMD64SHLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLQconst)
 		v.AuxInt = log2(c)
 		v.AddArg(x)
 		return true
@@ -8916,10 +7926,7 @@
 			goto end55c38c5c405101e610d7ba7fc702ddc0
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = c * d
 		return true
 	}
@@ -8940,10 +7947,7 @@
 			goto end542112cc08217d4bdffc1a645d290ffb
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64MULWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8960,10 +7964,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64MULWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -8985,10 +7986,7 @@
 			goto end61dbc9d9e93dd6946a20a1f475b3f74b
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = c * d
 		return true
 	}
@@ -9006,10 +8004,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9028,10 +8023,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODWU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODWU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9050,10 +8042,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9072,10 +8061,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODLU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODLU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9094,10 +8080,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9116,10 +8099,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODQU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODQU)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9138,10 +8118,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODW)
 		v0 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -9164,10 +8141,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MODWU
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MODWU)
 		v0 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -9192,10 +8166,7 @@
 			goto end0961cbfe144a616cba75190d07d65e41
 		}
 		mem := v.Args[2]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = mem.Type
 		v.AddArg(mem)
 		return true
@@ -9213,10 +8184,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
 		v0.AddArg(src)
@@ -9238,10 +8206,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVWload, config.fe.TypeUInt16())
 		v0.AddArg(src)
@@ -9263,10 +8228,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
 		v0.AddArg(src)
@@ -9288,10 +8250,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVQstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstore)
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
 		v0.AddArg(src)
@@ -9313,10 +8272,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVOstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVOstore)
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVOload, TypeInt128)
 		v0.AddArg(src)
@@ -9338,10 +8294,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = 2
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
@@ -9372,10 +8325,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AuxInt = 4
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
@@ -9406,10 +8356,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AuxInt = 4
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVWload, config.fe.TypeUInt16())
@@ -9440,10 +8387,7 @@
 		dst := v.Args[0]
 		src := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AuxInt = 3
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
@@ -9475,10 +8419,7 @@
 		if !(size > 8 && size < 16) {
 			goto endc90f121709d5411d389649dea89a2251
 		}
-		v.Op = OpAMD64MOVQstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstore)
 		v.AuxInt = size - 8
 		v.AddArg(dst)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
@@ -9510,10 +8451,7 @@
 		if !(size > 16 && size%16 != 0 && size%16 <= 8) {
 			goto end376c57db23b866866f23677c6cde43ba
 		}
-		v.Op = OpMove
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpMove)
 		v.AuxInt = size - size%16
 		v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, dst.Type)
 		v0.AddArg(dst)
@@ -9547,10 +8485,7 @@
 		if !(size > 16 && size%16 != 0 && size%16 > 8) {
 			goto end2f82f76766a21f8802768380cf10a497
 		}
-		v.Op = OpMove
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpMove)
 		v.AuxInt = size - size%16
 		v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, dst.Type)
 		v0.AddArg(dst)
@@ -9584,10 +8519,7 @@
 		if !(size >= 32 && size <= 16*64 && size%16 == 0) {
 			goto endcb66da6685f0079ee1f84d10fa561f22
 		}
-		v.Op = OpAMD64DUFFCOPY
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DUFFCOPY)
 		v.AuxInt = 14 * (64 - size/16)
 		v.AddArg(dst)
 		v.AddArg(src)
@@ -9608,10 +8540,7 @@
 		if !(size > 16*64 && size%8 == 0) {
 			goto end7ae25ff1bbdcf34efef09613745e9d6e
 		}
-		v.Op = OpAMD64REPMOVSQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64REPMOVSQ)
 		v.AddArg(dst)
 		v.AddArg(src)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
@@ -9634,10 +8563,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9656,10 +8582,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9678,10 +8601,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULSS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULSS)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9700,10 +8620,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9722,10 +8639,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULSD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULSD)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9744,10 +8658,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64MULB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MULB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -9768,10 +8679,7 @@
 			goto end36d0300ba9eab8c9da86246ff653ca96
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = -c
 		return true
 	}
@@ -9791,10 +8699,7 @@
 			goto end7a245ec67e56bd51911e5ba2d0aa0a16
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = -c
 		return true
 	}
@@ -9814,10 +8719,7 @@
 			goto end04ddd98bc6724ecb85c80c2a4e2bca5a
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = -c
 		return true
 	}
@@ -9837,10 +8739,7 @@
 			goto end1db6636f0a51848d8a34f6561ecfe7ae
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = -c
 		return true
 	}
@@ -9860,10 +8759,7 @@
 			goto end9e383a9ceb29a9e2bf890ec6a67212a8
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = ^c
 		return true
 	}
@@ -9883,10 +8779,7 @@
 			goto endcc73972c088d5e652a1370a96e56502d
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = ^c
 		return true
 	}
@@ -9906,10 +8799,7 @@
 			goto endb39ddb6bf7339d46f74114baad4333b6
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = ^c
 		return true
 	}
@@ -9929,10 +8819,7 @@
 			goto end35848095ebcf894c6957ad3be5f82c43
 		}
 		c := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = ^c
 		return true
 	}
@@ -9949,10 +8836,7 @@
 	// result: (NEGW x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NEGW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGW)
 		v.AddArg(x)
 		return true
 	}
@@ -9969,10 +8853,7 @@
 	// result: (NEGL x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NEGL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGL)
 		v.AddArg(x)
 		return true
 	}
@@ -9989,10 +8870,7 @@
 	// result: (PXOR x (MOVSSconst <config.Frontend().TypeFloat32()> [f2i(math.Copysign(0, -1))]))
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64PXOR
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64PXOR)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVSSconst, config.Frontend().TypeFloat32())
 		v0.AuxInt = f2i(math.Copysign(0, -1))
@@ -10012,10 +8890,7 @@
 	// result: (NEGQ x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NEGQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGQ)
 		v.AddArg(x)
 		return true
 	}
@@ -10032,10 +8907,7 @@
 	// result: (PXOR x (MOVSDconst <config.Frontend().TypeFloat64()> [f2i(math.Copysign(0, -1))]))
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64PXOR
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64PXOR)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVSDconst, config.Frontend().TypeFloat64())
 		v0.AuxInt = f2i(math.Copysign(0, -1))
@@ -10055,10 +8927,7 @@
 	// result: (NEGB x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64NEGB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGB)
 		v.AddArg(x)
 		return true
 	}
@@ -10076,10 +8945,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10100,10 +8966,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10124,10 +8987,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10148,10 +9008,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10172,10 +9029,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNEF
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNEF)
 		v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10196,10 +9050,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10220,10 +9071,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10244,10 +9092,7 @@
 	{
 		ptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64LoweredNilCheck
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64LoweredNilCheck)
 		v.AddArg(ptr)
 		v.AddArg(mem)
 		return true
@@ -10265,10 +9110,7 @@
 	// result: (XORBconst [1] x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64XORBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORBconst)
 		v.AuxInt = 1
 		v.AddArg(x)
 		return true
@@ -10290,10 +9132,7 @@
 			goto end7b63870decde2515cb77ec4f8f76817c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ORBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10310,10 +9149,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ORBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10329,10 +9165,7 @@
 		if v.Args[1] != x {
 			goto enddca5ce800a9eca157f243cb2fdb1408a
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10354,10 +9187,7 @@
 		if !(int8(c) == 0) {
 			goto end565f78e3a843dc73943b59227b39a1b3
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10373,10 +9203,7 @@
 		if !(int8(c) == -1) {
 			goto end6033c7910d8cd536b31446e179e4610d
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -10392,10 +9219,7 @@
 			goto endbe5263f022dc10a5cf53c118937d79dd
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = c | d
 		return true
 	}
@@ -10416,10 +9240,7 @@
 			goto end1b883e30d860b6fac14ae98462c4f61a
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ORLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10436,10 +9257,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ORLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10455,10 +9273,7 @@
 		if v.Args[1] != x {
 			goto end2dd719b68f4938777ef0d820aab93659
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10480,10 +9295,7 @@
 		if !(int32(c) == 0) {
 			goto end5b52623a724e8a7167c71289fb7192f1
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10499,10 +9311,7 @@
 		if !(int32(c) == -1) {
 			goto end345a8ea439ef2ef54bd84fc8a0f73e97
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -10518,10 +9327,7 @@
 			goto ende9ca05024248f782c88084715f81d727
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = c | d
 		return true
 	}
@@ -10545,10 +9351,7 @@
 		if !(is32Bit(c)) {
 			goto end601f2bb3ccda102e484ff60adeaf6d26
 		}
-		v.Op = OpAMD64ORQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10568,10 +9371,7 @@
 		if !(is32Bit(c)) {
 			goto end010afbebcd314e288509d79a16a6d5cc
 		}
-		v.Op = OpAMD64ORQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10587,10 +9387,7 @@
 		if v.Args[1] != x {
 			goto end47a27d30b82db576978c5a3a57b520fb
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10611,10 +9408,7 @@
 			goto end44534da6b9ce98d33fad7e20f0be1fbd
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10629,10 +9423,7 @@
 		if v.AuxInt != -1 {
 			goto endcde9b9d7c4527eaa5d50b252f50b43c1
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -10648,10 +9439,7 @@
 			goto enda2488509b71db9abcb06a5115c4ddc2c
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = c | d
 		return true
 	}
@@ -10672,10 +9460,7 @@
 			goto end9f98df10892dbf170b49aace86ee0d7f
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64ORWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10692,10 +9477,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64ORWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -10711,10 +9493,7 @@
 		if v.Args[1] != x {
 			goto endc6a23b64e541dc9cfc6a90fd7028e8c1
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10736,10 +9515,7 @@
 		if !(int16(c) == 0) {
 			goto endbbbdec9091c8b4c58e587eac8a43402d
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -10755,10 +9531,7 @@
 		if !(int16(c) == -1) {
 			goto ended87a5775f5e04b2d2a117a63d82dd9b
 		}
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -10774,10 +9547,7 @@
 			goto endba9221a8462b5c62e8d7c686f64c2778
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = c | d
 		return true
 	}
@@ -10795,10 +9565,7 @@
 	{
 		off := v.AuxInt
 		ptr := v.Args[0]
-		v.Op = OpAMD64ADDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQconst)
 		v.AuxInt = off
 		v.AddArg(ptr)
 		return true
@@ -10817,10 +9584,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ORW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -10839,10 +9603,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ORL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -10861,10 +9622,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ORQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -10883,10 +9641,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ORB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ORB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -10906,10 +9661,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10937,10 +9689,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10968,10 +9717,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -10999,10 +9745,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDW)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11030,11 +9773,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARW)
 		v.Type = t
-		v.Op = OpAMD64SARW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
 		v0.AddArg(y)
@@ -11064,11 +9804,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARW)
 		v.Type = t
-		v.Op = OpAMD64SARW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
 		v0.AddArg(y)
@@ -11098,11 +9835,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARW)
 		v.Type = t
-		v.Op = OpAMD64SARW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
 		v0.AddArg(y)
@@ -11132,11 +9866,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARW)
 		v.Type = t
-		v.Op = OpAMD64SARW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
 		v0.AddArg(y)
@@ -11166,10 +9897,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11197,10 +9925,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11228,10 +9953,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11259,10 +9981,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDL)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11290,11 +10009,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARL)
 		v.Type = t
-		v.Op = OpAMD64SARL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
 		v0.AddArg(y)
@@ -11324,11 +10040,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARL)
 		v.Type = t
-		v.Op = OpAMD64SARL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
 		v0.AddArg(y)
@@ -11358,11 +10071,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARL)
 		v.Type = t
-		v.Op = OpAMD64SARL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
 		v0.AddArg(y)
@@ -11392,11 +10102,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARL)
 		v.Type = t
-		v.Op = OpAMD64SARL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
 		v0.AddArg(y)
@@ -11426,10 +10133,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11457,10 +10161,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11488,10 +10189,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11519,10 +10217,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11550,11 +10245,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARQ)
 		v.Type = t
-		v.Op = OpAMD64SARQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
 		v0.AddArg(y)
@@ -11584,11 +10276,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARQ)
 		v.Type = t
-		v.Op = OpAMD64SARQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
 		v0.AddArg(y)
@@ -11618,11 +10307,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARQ)
 		v.Type = t
-		v.Op = OpAMD64SARQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
 		v0.AddArg(y)
@@ -11652,11 +10338,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARQ)
 		v.Type = t
-		v.Op = OpAMD64SARQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
 		v0.AddArg(y)
@@ -11686,10 +10369,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11717,10 +10397,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11748,10 +10425,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11779,10 +10453,7 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64ANDB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ANDB)
 		v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
 		v0.AddArg(x)
 		v0.AddArg(y)
@@ -11810,11 +10481,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARB)
 		v.Type = t
-		v.Op = OpAMD64SARB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
 		v0.AddArg(y)
@@ -11844,11 +10512,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARB)
 		v.Type = t
-		v.Op = OpAMD64SARB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
 		v0.AddArg(y)
@@ -11878,11 +10543,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARB)
 		v.Type = t
-		v.Op = OpAMD64SARB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
 		v0.AddArg(y)
@@ -11912,11 +10574,8 @@
 		t := v.Type
 		x := v.Args[0]
 		y := v.Args[1]
+		v.reset(OpAMD64SARB)
 		v.Type = t
-		v.Op = OpAMD64SARB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
 		v0.AddArg(y)
@@ -11948,10 +10607,7 @@
 			goto end03194336f801b91c1423aed6f39247f0
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -11968,10 +10624,7 @@
 			goto end3f623e78dd789403b299106625e0d6df
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -11988,10 +10641,7 @@
 			goto end4393e26c64e39342a0634d9a5706cb10
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12008,10 +10658,7 @@
 			goto end3bf3d17717aa6c04462e56d1c87902ce
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12033,10 +10680,7 @@
 			goto end06e0e38775f0650ed672427d19cd8fff
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = d >> uint64(c)
 		return true
 	}
@@ -12057,10 +10701,7 @@
 			goto end8fb4e77be1f4d21d0f2a0facf9a60add
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12077,10 +10718,7 @@
 			goto ende586a72c1b232ee0b63e37c71eeb8470
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12097,10 +10735,7 @@
 			goto end37389c13b9fb94c44bd10b1143809afb
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12117,10 +10752,7 @@
 			goto end72550eb8c44c45e76e40888bce753160
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12142,10 +10774,7 @@
 			goto end8f34dc94323303e75b7bcc8e731cf1db
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = d >> uint64(c)
 		return true
 	}
@@ -12166,10 +10795,7 @@
 			goto end25e720ab203be2745dded5550e6d8a7c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -12186,10 +10812,7 @@
 			goto endd04cf826c5db444107cf4e0bf789bcda
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -12206,10 +10829,7 @@
 			goto end6266051b3a126922286c298594535622
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -12226,10 +10846,7 @@
 			goto endcf2a1bdfeda535fc96ae1e7f5c54d531
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -12251,10 +10868,7 @@
 			goto endd949ba69a1ff71ba62c49b39c68f269e
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = d >> uint64(c)
 		return true
 	}
@@ -12275,10 +10889,7 @@
 			goto endec8cafea5ff91b2a1b5cf5a169be924f
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12295,10 +10906,7 @@
 			goto end9303d0edeebdc8a2a7e93fecf0fff61c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12315,10 +10923,7 @@
 			goto endc46e3f211f94238f9a0aec3c498af490
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12335,10 +10940,7 @@
 			goto end0bf07ce9cd2c536c07768f8dfbe13c62
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SARWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SARWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -12360,10 +10962,7 @@
 			goto endca23e80dba22ab574f843c7a4cef24ab
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = d >> uint64(c)
 		return true
 	}
@@ -12382,10 +10981,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end49bb4f49864044e2cd06c9c8e2c05f12
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12399,10 +10995,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto ende534d42c655e8b95b051e7ec44d4fdf9
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -12416,10 +11009,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end212628069f217f165eaf49dcfd9e8c76
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12433,10 +11023,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end4df0bf7db9772a6011ed89bd3ce95f1d
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -12450,10 +11037,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end4d9d1509d6d260332f0a345332ce89e2
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12472,10 +11056,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end6b4a6f105b53df8063846a528bab0abb
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12489,10 +11070,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto endbfed0a1a93d6d8570f304898550d9558
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -12506,10 +11084,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end8edf88458891c571a6ea6e52e0267b40
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12523,10 +11098,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end4663340439f2fa7a666e81f0ebc68436
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = -1
 		return true
 	}
@@ -12540,10 +11112,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end7262400b0380a163bd65b88e0c3db985
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12563,10 +11132,7 @@
 			goto enda4ac36e94fc279d762b5a6c7c6cc665d
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETB)
 		v.AddArg(x)
 		return true
 	}
@@ -12580,10 +11146,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end1521942d06b7f0caba92883aee0bb90e
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12597,10 +11160,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto endf79d69b18a140d5c6669216ad65f60f0
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12614,10 +11174,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end272c1e5fca714e319fb1c335023826db
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12631,10 +11188,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto ende0cf0104de1315266d93ded9a092302c
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12648,10 +11202,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end85507f7549319577f9994826ee379f3b
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12671,10 +11222,7 @@
 			goto end0468f5be6caf682fdea6b91d6648991e
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETBE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETBE)
 		v.AddArg(x)
 		return true
 	}
@@ -12688,10 +11236,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto endc6396df3825db703a99be0e624c6396f
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12705,10 +11250,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto end2392c77d6746969c65a422c68ad193bc
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12722,10 +11264,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end081f3b2b98d3a990739d2a5562d4f254
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12739,10 +11278,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end47a6cc5efdd00e349c5e23be3624d719
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12756,10 +11292,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto endd47bb51035b00c560b5347b3be19e20e
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12779,10 +11312,7 @@
 			goto endc9eba7aa1e54a228570d2f5cc96f3565
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETA
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETA)
 		v.AddArg(x)
 		return true
 	}
@@ -12796,10 +11326,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto endaf8a2c61689b00c8ad90dd090e634c81
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12813,10 +11340,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto endab96387d5f049ab9c87863473a5d6510
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12830,10 +11354,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto endbf7af56278add8851974cd1a538b3b7f
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12847,10 +11368,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end2d07a10db28e5160fccf66ee44c4823e
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12864,10 +11382,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end87ec5187683c0ee498c0a2c4de59f4c0
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12887,10 +11402,7 @@
 			goto end9d9031643469798b14b8cad1f5a7a1ba
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETAE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETAE)
 		v.AddArg(x)
 		return true
 	}
@@ -12904,10 +11416,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto ende6a02d3ce0e1584e806c7861de97eb5b
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12921,10 +11430,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto end7ea0208cd10e6311655d09e8aa354169
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12938,10 +11444,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto enddbfa0595802c67348d3a3bd22b198231
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12955,10 +11458,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end5b26e1d28d6a517ed004b0f9b80df27b
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -12972,10 +11472,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end679e2e0ccd0dd526ea781fc64102cb88
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -12995,10 +11492,7 @@
 			goto end5d2039c9368d8c0cfba23b5a85b459e1
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETEQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETEQ)
 		v.AddArg(x)
 		return true
 	}
@@ -13012,10 +11506,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end74e09087ca9d4bdf7740f4f052d2b9d3
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13029,10 +11520,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto ende5d3756d09e616648de68d364b2c308f
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13046,10 +11534,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end1a86a603a5c6e0f328f63b9279137bcc
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13063,10 +11548,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto endbf907332cd6004c73b88f43b5e20275f
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13080,10 +11562,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end707540a9904307c186884f60e425ca62
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13103,10 +11582,7 @@
 			goto endf7586738694c9cd0b74ae28bbadb649f
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETL)
 		v.AddArg(x)
 		return true
 	}
@@ -13120,10 +11596,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto endc952db8883f26126822bac29276b0690
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13137,10 +11610,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto end3b6d659c9285d30eba022a85c6c6f1c9
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13154,10 +11624,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end2eabfc908ca06e7d5d217142dd48af33
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13171,10 +11638,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end7c059e63a98776c77bb8e43759d2d864
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13188,10 +11652,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto enddcb3196491c82060bcb90da722ffa8bd
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13211,10 +11672,7 @@
 			goto end82c11eff6f842159f564f2dad3d2eedc
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETLE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETLE)
 		v.AddArg(x)
 		return true
 	}
@@ -13228,10 +11686,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end1152b03b15fb4ea1822b2cc1c6815887
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13245,10 +11700,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto endd55763184b306cc32397b421df6fc994
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13262,10 +11714,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end209fbc531c4d6696b0b226c1ac016add
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13279,10 +11728,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end41600cc6b5af1497fc534af49eaf60a2
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13296,10 +11742,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto endaa33fb1204dba90a141a9a945a9643a2
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13319,10 +11762,7 @@
 			goto ende33160cd86b9d4d3b77e02fb4658d5d3
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETG
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETG)
 		v.AddArg(x)
 		return true
 	}
@@ -13336,10 +11776,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end52e421ca76fa5dfba6b9bc35b220c0bf
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13353,10 +11790,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto end4d9781536010887bcf6f6ffd563e6aac
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13370,10 +11804,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto end9d0dd525ca800cb3ec73e94d60c3cbf1
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13387,10 +11818,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end6d77da1539ee0ebebee0e162c55e8f6e
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13404,10 +11832,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end6c129bef0cc197325a338d17720516d1
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13427,10 +11852,7 @@
 			goto end9307d96753efbeb888d1c98a6aba7a29
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETGE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETGE)
 		v.AddArg(x)
 		return true
 	}
@@ -13444,10 +11866,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end43f998d2f9524fcdf45bab9fe672aa7c
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13461,10 +11880,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto end80212f1ca6a01bccdf4bbd5aa15d5aab
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13478,10 +11894,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto endd5ab2a8df7344cd7c8e1092d78bfd871
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13495,10 +11908,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto enda74997e85c6f82ff1c530e6051d01e21
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13512,10 +11922,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end7694b41632545d10fcc6339063c53f07
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13535,10 +11942,7 @@
 			goto endbc71811b789475308014550f638026eb
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64SETNE
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SETNE)
 		v.AddArg(x)
 		return true
 	}
@@ -13552,10 +11956,7 @@
 		if v.Args[0].Op != OpAMD64FlagEQ {
 			goto end6b66ea2ed518a926a071fe0d3dce46d8
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -13569,10 +11970,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_ULT {
 			goto ende4d3b99f9dff014be3067a577ba0b016
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13586,10 +11984,7 @@
 		if v.Args[0].Op != OpAMD64FlagLT_UGT {
 			goto endb98d73ed6e5d3d21c2ea33840ab2a21c
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13603,10 +11998,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_ULT {
 			goto end3bceb5cece8d0112cc8cd53435d64ef4
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13620,10 +12012,7 @@
 		if v.Args[0].Op != OpAMD64FlagGT_UGT {
 			goto end9249b3ed3e1e582dd5435fb73cbc13ac
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 1
 		return true
 	}
@@ -13644,10 +12033,7 @@
 			goto endb1f377b81b6f4c1864893934230ecbd1
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13664,10 +12050,7 @@
 			goto end434bc4ee26d93bf1c734be760d7a1aa6
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13684,10 +12067,7 @@
 			goto end2c4fe4cce2ae24e0bc5c7d209d22e9d9
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13704,10 +12084,7 @@
 			goto end2d0d0111d831d8a575b5627284a6337a
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13729,10 +12106,7 @@
 			goto end1b4f8b8d62445fdcb3cf9cd5036b559b
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13749,10 +12123,7 @@
 			goto end633f9ddcfbb63374c895a5f78da75d25
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13769,10 +12140,7 @@
 			goto enda4f59495061db6cfe796b6dba8d3cad8
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13789,10 +12157,7 @@
 			goto endd6f39b5f3174ca738ae1c48a96d837a6
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13814,10 +12179,7 @@
 			goto end4d7e3a945cacdd6b6c8c0de6f465d4ae
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -13834,10 +12196,7 @@
 			goto end394bae2652a3e4bc4b70a6fc193949f8
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -13854,10 +12213,7 @@
 			goto end358be4078efa15ceb443ccda7ce592a0
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -13874,10 +12230,7 @@
 			goto end032e0efd085f37a12322dbc63795a1b2
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -13899,10 +12252,7 @@
 			goto enda29aa85ce58b1fdb63d71e2632efd6db
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13919,10 +12269,7 @@
 			goto end59ce264ffde0ef9af8ea1a25db7173b6
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13939,10 +12286,7 @@
 			goto endba96a52aa58d28b3357828051e0e695c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13959,10 +12303,7 @@
 			goto endf9c2165ea24ac7bbdd46cdf0e084104f
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHLWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHLWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -13984,10 +12325,7 @@
 			goto end2e7fb7a5406cbf51c69a0d04dc73d16a
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14004,10 +12342,7 @@
 			goto end69603cc51e4f244388f368dd188a526a
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14024,10 +12359,7 @@
 			goto endd96421647299a1bb1b68ad0a90fa0be3
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14044,10 +12376,7 @@
 			goto enddb1cd5aaa826d43fa4f6d1b2b8795e58
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRBconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14069,10 +12398,7 @@
 			goto end893880cdc59697295c1849a250163e59
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14089,10 +12415,7 @@
 			goto end344b8b9202e1925e8d0561f1c21412fc
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14109,10 +12432,7 @@
 			goto end561280f746f9983f4a4b4a5119b53028
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14129,10 +12449,7 @@
 			goto enda339271c59d274b73c04ba1f2c44c2b9
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRLconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14154,10 +12471,7 @@
 			goto end699d35e2d5cfa08b8a3b1c8a183ddcf3
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -14174,10 +12488,7 @@
 			goto end3189f4abaac8028d9191c9ba64124999
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -14194,10 +12505,7 @@
 			goto end0cbc86ae04a355c0e2a96400242f4633
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -14214,10 +12522,7 @@
 			goto endb9c003612674e7a1ea7c13e463c229d2
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRQconst)
 		v.AuxInt = c & 63
 		v.AddArg(x)
 		return true
@@ -14239,10 +12544,7 @@
 			goto endc5c82eea9a6b51b1d6b76e57f21f46ff
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14259,10 +12561,7 @@
 			goto end773e94c857256ae9a31eb5b3d667e64b
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14279,10 +12578,7 @@
 			goto endd75ff1f9b3e9ec9c942a39b6179da1b3
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14299,10 +12595,7 @@
 			goto end6761530cd742ad00057c19a6a3c38ada
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SHRWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SHRWconst)
 		v.AuxInt = c & 31
 		v.AddArg(x)
 		return true
@@ -14324,10 +12617,7 @@
 			goto end9ca5d2a70e2df1a5a3ed6786bce1f7b2
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SUBBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBBconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -14344,10 +12634,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64NEGB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGB)
 		v0 := b.NewValue0(v.Line, OpAMD64SUBBconst, v.Type)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -14365,10 +12652,7 @@
 		if v.Args[1] != x {
 			goto ende8904403d937d95b0d6133d3ec92bb45
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -14389,10 +12673,7 @@
 		if !(int8(c) == 0) {
 			goto end974a26e947badc62fc104581f49138e6
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -14409,10 +12690,7 @@
 			goto enddc5383558e2f3eae507afcb94eada964
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = d - c
 		return true
 	}
@@ -14429,10 +12707,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDBconst)
 		v.AuxInt = -c - d
 		v.AddArg(x)
 		return true
@@ -14454,10 +12729,7 @@
 			goto end178c1d6c86f9c16f6497586c2f7d8625
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SUBLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBLconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -14474,10 +12746,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64NEGL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGL)
 		v0 := b.NewValue0(v.Line, OpAMD64SUBLconst, v.Type)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -14495,10 +12764,7 @@
 		if v.Args[1] != x {
 			goto end332f1f641f875c69bea7289191e69133
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -14519,10 +12785,7 @@
 		if !(int32(c) == 0) {
 			goto end3fa10eaa42f9e283cf1757e1b2d3cac2
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -14539,10 +12802,7 @@
 			goto end6c5c6d58d4bdd0a5c2f7bf10b343b41e
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = d - c
 		return true
 	}
@@ -14559,10 +12819,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDLconst)
 		v.AuxInt = -c - d
 		v.AddArg(x)
 		return true
@@ -14587,10 +12844,7 @@
 		if !(is32Bit(c)) {
 			goto end9bbb7b20824a498752c605942fad89c2
 		}
-		v.Op = OpAMD64SUBQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBQconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -14610,10 +12864,7 @@
 		if !(is32Bit(c)) {
 			goto end8beb96de3efee9206d1bd4b7d777d2cb
 		}
-		v.Op = OpAMD64NEGQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGQ)
 		v0 := b.NewValue0(v.Line, OpAMD64SUBQconst, v.Type)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -14631,10 +12882,7 @@
 		if v.Args[1] != x {
 			goto endd87d1d839d2dc54d9c90fa4f73383480
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -14654,10 +12902,7 @@
 			goto endfce1d3cec7c543c9dd80a27d944eb09e
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -14674,10 +12919,7 @@
 			goto endb0daebe6831cf381377c3e4248070f25
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = d - c
 		return true
 	}
@@ -14694,10 +12936,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDQconst)
 		v.AuxInt = -c - d
 		v.AddArg(x)
 		return true
@@ -14719,10 +12958,7 @@
 			goto end135aa9100b2f61d58b37cede37b63731
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64SUBWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBWconst)
 		v.AddArg(x)
 		v.AuxInt = c
 		return true
@@ -14739,10 +12975,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64NEGW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64NEGW)
 		v0 := b.NewValue0(v.Line, OpAMD64SUBWconst, v.Type)
 		v0.AddArg(x)
 		v0.AuxInt = c
@@ -14760,10 +12993,7 @@
 		if v.Args[1] != x {
 			goto endb970e7c318d04a1afe1dfe08a7ca0d9c
 		}
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -14784,10 +13014,7 @@
 		if !(int16(c) == 0) {
 			goto end1e7a493992465c9cc8314e3256ed6394
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -14804,10 +13031,7 @@
 			goto endae629a229c399eaed7dbb95b1b0e6f8a
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = d - c
 		return true
 	}
@@ -14824,10 +13048,7 @@
 		}
 		d := v.Args[0].AuxInt
 		x := v.Args[0].Args[0]
-		v.Op = OpAMD64ADDWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64ADDWconst)
 		v.AuxInt = -c - d
 		v.AddArg(x)
 		return true
@@ -14845,10 +13066,7 @@
 	// result: (MOVWQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVWQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14865,10 +13083,7 @@
 	// result: (MOVWQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVWQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14885,10 +13100,7 @@
 	// result: (MOVLQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVLQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14905,10 +13117,7 @@
 	// result: (MOVBQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14925,10 +13134,7 @@
 	// result: (MOVBQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14945,10 +13151,7 @@
 	// result: (MOVBQSX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQSX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQSX)
 		v.AddArg(x)
 		return true
 	}
@@ -14965,10 +13168,7 @@
 	// result: (SQRTSD x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64SQRTSD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SQRTSD)
 		v.AddArg(x)
 		return true
 	}
@@ -14987,10 +13187,7 @@
 		argwid := v.AuxInt
 		target := v.Aux
 		mem := v.Args[0]
-		v.Op = OpAMD64CALLstatic
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64CALLstatic)
 		v.AuxInt = argwid
 		v.Aux = target
 		v.AddArg(mem)
@@ -15017,10 +13214,7 @@
 		if !(is64BitFloat(val.Type)) {
 			goto endaeec4f61bc8e67dbf3fa2f79fe4c2b9e
 		}
-		v.Op = OpAMD64MOVSDstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSDstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15042,10 +13236,7 @@
 		if !(is32BitFloat(val.Type)) {
 			goto endf638ca0a75871b5062da15324d0e0384
 		}
-		v.Op = OpAMD64MOVSSstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVSSstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15064,10 +13255,7 @@
 		ptr := v.Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVQstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15086,10 +13274,7 @@
 		ptr := v.Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVLstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15108,10 +13293,7 @@
 		ptr := v.Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVWstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15130,10 +13312,7 @@
 		ptr := v.Args[0]
 		val := v.Args[1]
 		mem := v.Args[2]
-		v.Op = OpAMD64MOVBstore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstore)
 		v.AddArg(ptr)
 		v.AddArg(val)
 		v.AddArg(mem)
@@ -15153,10 +13332,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15175,10 +13351,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15197,10 +13370,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBSS
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBSS)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15219,10 +13389,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15241,10 +13408,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBSD
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBSD)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15263,10 +13427,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15285,10 +13446,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64SUBQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64SUBQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15306,10 +13464,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15327,10 +13482,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15348,10 +13500,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15369,10 +13518,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15390,10 +13536,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15411,10 +13554,7 @@
 	// result: x
 	{
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15436,10 +13576,7 @@
 			goto enda9ed9fdd115ffdffa8127c007c34d7b7
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64XORBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15456,10 +13593,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64XORBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORBconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15475,10 +13609,7 @@
 		if v.Args[1] != x {
 			goto end2afddc39503d04d572a3a07878f6c9c9
 		}
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -15499,10 +13630,7 @@
 		if !(int8(c) == 0) {
 			goto end14b03b70e5579dfe3f9b243e02a887c3
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15519,10 +13647,7 @@
 			goto end6d8d1b612af9d253605c8bc69b822903
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVBconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBconst)
 		v.AuxInt = c ^ d
 		return true
 	}
@@ -15543,10 +13668,7 @@
 			goto enda9459d509d3416da67d13a22dd074a9c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64XORLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15563,10 +13685,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64XORLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORLconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15582,10 +13701,7 @@
 		if v.Args[1] != x {
 			goto end7bcf9cfeb69a0d7647389124eb53ce2a
 		}
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -15606,10 +13722,7 @@
 		if !(int32(c) == 0) {
 			goto end99808ca9fb8e3220e42f5678e1042a08
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15626,10 +13739,7 @@
 			goto end71238075b10b68a226903cc453c4715c
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVLconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLconst)
 		v.AuxInt = c ^ d
 		return true
 	}
@@ -15653,10 +13763,7 @@
 		if !(is32Bit(c)) {
 			goto end452341f950062e0483f16438fb9ec500
 		}
-		v.Op = OpAMD64XORQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15676,10 +13783,7 @@
 		if !(is32Bit(c)) {
 			goto endd221a7e3daaaaa29ee385ad36e061b57
 		}
-		v.Op = OpAMD64XORQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORQconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15695,10 +13799,7 @@
 		if v.Args[1] != x {
 			goto end10575a5d711cf14e6d4dffbb0e8dfaeb
 		}
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -15718,10 +13819,7 @@
 			goto end0ee8d195a97eff476cf1f69a4dc0ec75
 		}
 		x := v.Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15738,10 +13836,7 @@
 			goto end3f404d4f07362319fbad2e1ba0827a9f
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVQconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQconst)
 		v.AuxInt = c ^ d
 		return true
 	}
@@ -15762,10 +13857,7 @@
 			goto end2ca109efd66c221a5691a4da95ec6c67
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpAMD64XORWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15782,10 +13874,7 @@
 		}
 		c := v.Args[0].AuxInt
 		x := v.Args[1]
-		v.Op = OpAMD64XORWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORWconst)
 		v.AuxInt = c
 		v.AddArg(x)
 		return true
@@ -15801,10 +13890,7 @@
 		if v.Args[1] != x {
 			goto end07f332e857be0c2707797ed480a2faf4
 		}
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = 0
 		return true
 	}
@@ -15825,10 +13911,7 @@
 		if !(int16(c) == 0) {
 			goto enda371132353dee83828836da851240f0a
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -15845,10 +13928,7 @@
 			goto ende24881ccdfa8486c4593fd9aa5df1ed6
 		}
 		d := v.Args[0].AuxInt
-		v.Op = OpAMD64MOVWconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWconst)
 		v.AuxInt = c ^ d
 		return true
 	}
@@ -15866,10 +13946,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64XORW
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORW)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15888,10 +13965,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64XORL
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORL)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15910,10 +13984,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64XORQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORQ)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15932,10 +14003,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpAMD64XORB
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64XORB)
 		v.AddArg(x)
 		v.AddArg(y)
 		return true
@@ -15956,10 +14024,7 @@
 			goto endc9a38a60f0322f93682daa824611272c
 		}
 		mem := v.Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = mem.Type
 		v.AddArg(mem)
 		return true
@@ -15976,10 +14041,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = 0
 		v.AddArg(destptr)
 		v.AddArg(mem)
@@ -15997,10 +14059,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVWstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreconst)
 		v.AuxInt = 0
 		v.AddArg(destptr)
 		v.AddArg(mem)
@@ -16018,10 +14077,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVLstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreconst)
 		v.AuxInt = 0
 		v.AddArg(destptr)
 		v.AddArg(mem)
@@ -16039,10 +14095,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = 0
 		v.AddArg(destptr)
 		v.AddArg(mem)
@@ -16060,10 +14113,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = makeValAndOff(0, 2)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVWstoreconst, TypeMem)
@@ -16085,10 +14135,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVBstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBstoreconst)
 		v.AuxInt = makeValAndOff(0, 4)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
@@ -16110,10 +14157,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVWstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWstoreconst)
 		v.AuxInt = makeValAndOff(0, 4)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
@@ -16135,10 +14179,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVLstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLstoreconst)
 		v.AuxInt = makeValAndOff(0, 3)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
@@ -16161,10 +14202,7 @@
 		if !(size%8 != 0 && size > 8) {
 			goto endc8760f86b83b1372fce0042ab5200fc1
 		}
-		v.Op = OpZero
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpZero)
 		v.AuxInt = size - size%8
 		v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
 		v0.AddArg(destptr)
@@ -16189,10 +14227,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = makeValAndOff(0, 8)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
@@ -16214,10 +14249,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = makeValAndOff(0, 16)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
@@ -16243,10 +14275,7 @@
 		}
 		destptr := v.Args[0]
 		mem := v.Args[1]
-		v.Op = OpAMD64MOVQstoreconst
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVQstoreconst)
 		v.AuxInt = makeValAndOff(0, 24)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
@@ -16277,10 +14306,7 @@
 		if !(size <= 1024 && size%8 == 0 && size%16 != 0) {
 			goto end240266449c3e493db1c3b38a78682ff0
 		}
-		v.Op = OpZero
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpZero)
 		v.AuxInt = size - 8
 		v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
 		v0.AuxInt = 8
@@ -16308,10 +14334,7 @@
 		if !(size <= 1024 && size%16 == 0) {
 			goto endf508bb887eee9119069b22c23dbca138
 		}
-		v.Op = OpAMD64DUFFZERO
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64DUFFZERO)
 		v.AuxInt = duffStart(size)
 		v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
 		v0.AuxInt = duffAdj(size)
@@ -16336,10 +14359,7 @@
 		if !(size > 1024 && size%8 == 0) {
 			goto endb9d55d4ba0e70ed918e3ac757727441b
 		}
-		v.Op = OpAMD64REPSTOSQ
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64REPSTOSQ)
 		v.AddArg(destptr)
 		v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
 		v0.AuxInt = size / 8
@@ -16363,10 +14383,7 @@
 	// result: (MOVWQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVWQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWQZX)
 		v.AddArg(x)
 		return true
 	}
@@ -16383,10 +14400,7 @@
 	// result: (MOVWQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVWQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVWQZX)
 		v.AddArg(x)
 		return true
 	}
@@ -16403,10 +14417,7 @@
 	// result: (MOVLQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVLQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVLQZX)
 		v.AddArg(x)
 		return true
 	}
@@ -16423,10 +14434,7 @@
 	// result: (MOVBQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQZX)
 		v.AddArg(x)
 		return true
 	}
@@ -16443,10 +14451,7 @@
 	// result: (MOVBQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQZX)
 		v.AddArg(x)
 		return true
 	}
@@ -16463,10 +14468,7 @@
 	// result: (MOVBQZX x)
 	{
 		x := v.Args[0]
-		v.Op = OpAMD64MOVBQZX
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAMD64MOVBQZX)
 		v.AddArg(x)
 		return true
 	}
diff --git a/src/cmd/compile/internal/ssa/rewritegeneric.go b/src/cmd/compile/internal/ssa/rewritegeneric.go
index 67f07e6..505ea77 100644
--- a/src/cmd/compile/internal/ssa/rewritegeneric.go
+++ b/src/cmd/compile/internal/ssa/rewritegeneric.go
@@ -311,10 +311,7 @@
 			goto end359c546ef662b7990116329cb30d6892
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = c + d
 		return true
 	}
@@ -334,10 +331,7 @@
 		if !(x.Op != OpConst16) {
 			goto end89b69a89778f375b0ebbc683b0c63176
 		}
-		v.Op = OpAdd16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -364,10 +358,7 @@
 			goto enda3edaa9a512bd1d7a95f002c890bfb88
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = c + d
 		return true
 	}
@@ -387,10 +378,7 @@
 		if !(x.Op != OpConst32) {
 			goto end28a8c474bfa6968950dce0ed73b14a0b
 		}
-		v.Op = OpAdd32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -417,10 +405,7 @@
 			goto end8c46df6f85a11cb1d594076b0e467908
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = c + d
 		return true
 	}
@@ -440,10 +425,7 @@
 		if !(x.Op != OpConst64) {
 			goto end39caa6cf1044f5c47ddbeb062d1a13bd
 		}
-		v.Op = OpAdd64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -470,10 +452,7 @@
 			goto end60c66721511a442aade8e4da2fb326bd
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = c + d
 		return true
 	}
@@ -493,10 +472,7 @@
 		if !(x.Op != OpConst8) {
 			goto end8c2901b8d12fa5c37f190783b4db8df5
 		}
-		v.Op = OpAdd8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -519,10 +495,7 @@
 		if v.Args[1] != x {
 			goto end69ed6ee2a4fb0491b56c17f3c1926b10
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -543,10 +516,7 @@
 		if v.Args[1] != x {
 			goto endbbe8c3c5b2ca8f013aa178d856f3a99c
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -567,10 +537,7 @@
 		if v.Args[1] != x {
 			goto endc9736bf24d2e5cd8d662e1bcf3164640
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -591,10 +558,7 @@
 		if v.Args[1] != x {
 			goto endeaf127389bd0d4b0e0e297830f8f463b
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -616,10 +580,7 @@
 		if !(v.Type.IsString()) {
 			goto end939d3f946bf61eb85b46b374e7afa9e9
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
 		v0.Aux = n
 		v0.AuxInt = off
@@ -642,10 +603,7 @@
 		if !(v.Type.IsSlice()) {
 			goto endab4b93ad3b1cf55e5bf25d1fd9cd498e
 		}
-		v.Op = OpSliceMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpSliceMake)
 		v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
 		v0.Aux = n
 		v0.AuxInt = off
@@ -672,10 +630,7 @@
 		if !(v.Type.IsInterface()) {
 			goto end851de8e588a39e81b4e2aef06566bf3e
 		}
-		v.Op = OpIMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpIMake)
 		v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
 		v0.Aux = n
 		v0.AuxInt = off
@@ -698,10 +653,7 @@
 		if !(v.Type.IsComplex() && v.Type.Size() == 16) {
 			goto end0988fc6a62c810b2f4976cb6cf44387f
 		}
-		v.Op = OpComplexMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpComplexMake)
 		v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat64())
 		v0.Aux = n
 		v0.AuxInt = off
@@ -724,10 +676,7 @@
 		if !(v.Type.IsComplex() && v.Type.Size() == 8) {
 			goto enda348e93e0036873dd7089a2939c22e3e
 		}
-		v.Op = OpComplexMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpComplexMake)
 		v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat32())
 		v0.Aux = n
 		v0.AuxInt = off
@@ -749,10 +698,7 @@
 		if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) {
 			goto ende233eeefa826638b0e541bcca531d701
 		}
-		v.Op = OpStructMake0
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake0)
 		return true
 	}
 	goto ende233eeefa826638b0e541bcca531d701
@@ -768,10 +714,7 @@
 		if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) {
 			goto ende953e77a0617051dd3f7ad4d58c9ab37
 		}
-		v.Op = OpStructMake1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake1)
 		v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
 		v0.Aux = n
 		v0.AuxInt = off + t.FieldOff(0)
@@ -791,10 +734,7 @@
 		if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) {
 			goto end9a008048978aabad9de0723212e60631
 		}
-		v.Op = OpStructMake2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake2)
 		v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
 		v0.Aux = n
 		v0.AuxInt = off + t.FieldOff(0)
@@ -818,10 +758,7 @@
 		if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) {
 			goto end0196e61dbeebc6402f3aa1e9a182210b
 		}
-		v.Op = OpStructMake3
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake3)
 		v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
 		v0.Aux = n
 		v0.AuxInt = off + t.FieldOff(0)
@@ -849,10 +786,7 @@
 		if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) {
 			goto end6bc133c93e50cb14c2e6cc9401850738
 		}
-		v.Op = OpStructMake4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake4)
 		v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
 		v0.Aux = n
 		v0.AuxInt = off + t.FieldOff(0)
@@ -892,10 +826,7 @@
 		if !(b == v.Args[0].Block) {
 			goto end68b373270d9d605c420497edefaa71df
 		}
-		v.Op = OpLoad
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLoad)
 		v0 := b.NewValue0(v.Line, OpPtrIndex, v.Type.PtrTo())
 		v0.AddArg(ptr)
 		v0.AddArg(idx)
@@ -919,10 +850,7 @@
 			goto end1ea17710dd4dd7ba4e710e0e4c7b5a56
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -943,10 +871,7 @@
 			goto end9a04ed536496e292c27bef4414128cbf
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -967,10 +892,7 @@
 			goto ended44e29d5968f0f7b86972b7bf417ab3
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -991,10 +913,7 @@
 			goto end4d92ff3ba567d9afd38fc9ca113602ad
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -1015,10 +934,7 @@
 			goto endec3009fd8727d03002021997936e091f
 		}
 		imag := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = imag.Type
 		v.AddArg(imag)
 		return true
@@ -1039,10 +955,7 @@
 			goto end8db3e16bd59af1adaa4b734c8adcc71d
 		}
 		real := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = real.Type
 		v.AddArg(real)
 		return true
@@ -1059,10 +972,7 @@
 	// cond:
 	// result: (IMake     (ConstNil <config.fe.TypeBytePtr()>)     (ConstNil <config.fe.TypeBytePtr()>))
 	{
-		v.Op = OpIMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpIMake)
 		v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
 		v.AddArg(v0)
 		v1 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
@@ -1084,10 +994,7 @@
 		if !(config.PtrSize == 4) {
 			goto end9ba6baf9c7247b1f5ba4099c0c3910ce
 		}
-		v.Op = OpSliceMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpSliceMake)
 		v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
 		v.AddArg(v0)
 		v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
@@ -1108,10 +1015,7 @@
 		if !(config.PtrSize == 8) {
 			goto endabee2aa6bd3e3261628f677221ad2640
 		}
-		v.Op = OpSliceMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpSliceMake)
 		v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
 		v.AddArg(v0)
 		v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
@@ -1138,10 +1042,7 @@
 		if !(config.PtrSize == 4 && s.(string) == "") {
 			goto end85d5f388ba947643af63cdc68c1155a5
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
 		v.AddArg(v0)
 		v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
@@ -1160,10 +1061,7 @@
 		if !(config.PtrSize == 8 && s.(string) == "") {
 			goto endc807259a5ed2760fbbd3dc7386641343
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
 		v.AddArg(v0)
 		v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
@@ -1182,10 +1080,7 @@
 		if !(config.PtrSize == 4 && s.(string) != "") {
 			goto end107a700a4519d18f418602421444ddb6
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
 		v0.Aux = config.fe.StringData(s.(string))
 		v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
@@ -1207,10 +1102,7 @@
 		if !(config.PtrSize == 8 && s.(string) != "") {
 			goto end7ce9db29d17866f26d21e6e12f442e54
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
 		v0.Aux = config.fe.StringData(s.(string))
 		v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
@@ -1245,10 +1137,7 @@
 		if v.Args[1] != mem {
 			goto endbbc9f1666b4d39a130e1b86f109e7c1b
 		}
-		v.Op = OpAdd64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd64)
 		v.AddArg(ptr)
 		v.AddArg(off)
 		return true
@@ -1268,10 +1157,7 @@
 		if v.Args[1] != mem {
 			goto end98c5e0ca257eb216989171786f91b42d
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = ptr.Type
 		v.AddArg(ptr)
 		return true
@@ -1292,10 +1178,7 @@
 		if v.Args[1] != x {
 			goto end0c0fe5fdfba3821add3448fd3f1fc6b7
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 1
 		return true
 	}
@@ -1322,10 +1205,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpEq16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -1348,10 +1228,7 @@
 		if !(x.Op != OpConst16) {
 			goto end5d89fe1eeb145f14e11578f41282c904
 		}
-		v.Op = OpEq16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -1373,10 +1250,7 @@
 			goto end4532e1d01c10d8906fe1da14f9dfaa88
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) == int16(d))
 		return true
 	}
@@ -1396,10 +1270,7 @@
 		if v.Args[1] != x {
 			goto end6da547ec4ee93d787434f3bda873e4a0
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 1
 		return true
 	}
@@ -1426,10 +1297,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpEq32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -1452,10 +1320,7 @@
 		if !(x.Op != OpConst32) {
 			goto end0ca4ef4cf416ec3083d38667e263cf45
 		}
-		v.Op = OpEq32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -1477,10 +1342,7 @@
 			goto end00a2464e02c9ca00e8d0077acacbb5ad
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) == int32(d))
 		return true
 	}
@@ -1500,10 +1362,7 @@
 		if v.Args[1] != x {
 			goto endb1d471cc503ba8bb05440f01dbf33d81
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 1
 		return true
 	}
@@ -1530,10 +1389,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpEq64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -1556,10 +1412,7 @@
 		if !(x.Op != OpConst64) {
 			goto endc2ecf8254dc736e97c5815362d0b477d
 		}
-		v.Op = OpEq64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -1581,10 +1434,7 @@
 			goto end405568a707dbbc86432e91f4ce7d97d7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) == int64(d))
 		return true
 	}
@@ -1604,10 +1454,7 @@
 		if v.Args[1] != x {
 			goto enda66da0d3e7e51624ee46527727c48a9a
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 1
 		return true
 	}
@@ -1634,10 +1481,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpEq8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -1660,10 +1504,7 @@
 		if !(x.Op != OpConst8) {
 			goto end70d0b569427b24e7a912a1aa8fab3b20
 		}
-		v.Op = OpEq8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEq8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -1685,10 +1526,7 @@
 			goto endd49f3700ba2d1e500d3ab4fa34fd090d
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) == int8(d))
 		return true
 	}
@@ -1706,10 +1544,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpEqPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEqPtr)
 		v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -1734,10 +1569,7 @@
 		if v.Args[1].Op != OpConstNil {
 			goto ende701cdb6a2c1fff4d4b283b7f8f6178b
 		}
-		v.Op = OpNot
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNot)
 		v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
 		v0.AddArg(p)
 		v.AddArg(v0)
@@ -1754,10 +1586,7 @@
 			goto end7cdc0d5c38fbffe6287c8928803b038e
 		}
 		p := v.Args[1]
-		v.Op = OpNot
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNot)
 		v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
 		v0.AddArg(p)
 		v.AddArg(v0)
@@ -1777,10 +1606,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpEqPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpEqPtr)
 		v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -1809,10 +1635,7 @@
 			goto endbac100e9f1065e7d2ff863951f686f4b
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) >= int16(d))
 		return true
 	}
@@ -1836,10 +1659,7 @@
 			goto end11c6acbc5827fc9508424b0ffcf98b34
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint16(c) >= uint16(d))
 		return true
 	}
@@ -1863,10 +1683,7 @@
 			goto end89ced97524ac75045911ca7cf6d44b28
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) >= int32(d))
 		return true
 	}
@@ -1890,10 +1707,7 @@
 			goto end92fbe85c7bbbf0db287932822bdde991
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint32(c) >= uint32(d))
 		return true
 	}
@@ -1917,10 +1731,7 @@
 			goto end08a5a4bff12a346befe05ad561b080ac
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) >= int64(d))
 		return true
 	}
@@ -1944,10 +1755,7 @@
 			goto endd72c497b6cc2b01d43a39ec12d5010b3
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint64(c) >= uint64(d))
 		return true
 	}
@@ -1971,10 +1779,7 @@
 			goto endea141068e84038c63cbdd87a8cb227d7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) >= int8(d))
 		return true
 	}
@@ -1998,10 +1803,7 @@
 			goto end47c128ccdc54151a243c5856b0c52ef1
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint8(c) >= uint8(d))
 		return true
 	}
@@ -2025,10 +1827,7 @@
 			goto end390bae49463ace4d703dd24e18920f66
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) > int16(d))
 		return true
 	}
@@ -2052,10 +1851,7 @@
 			goto end89ba3caf5c156fa6d908ac04c058187b
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint16(c) > uint16(d))
 		return true
 	}
@@ -2079,10 +1875,7 @@
 			goto end86482a9dc6439e8470da5352dd74d68d
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) > int32(d))
 		return true
 	}
@@ -2106,10 +1899,7 @@
 			goto end1bf3f05c1e3599a969b8be1f5f6949e4
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint32(c) > uint32(d))
 		return true
 	}
@@ -2133,10 +1923,7 @@
 			goto end96a82e893fda4882f23b6bab5f7fbff7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) > int64(d))
 		return true
 	}
@@ -2160,10 +1947,7 @@
 			goto end2d8f5ad85fbffeb92af985a888f6fa69
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint64(c) > uint64(d))
 		return true
 	}
@@ -2187,10 +1971,7 @@
 			goto ende221967c7516b7749109cf8343fe9c83
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) > int8(d))
 		return true
 	}
@@ -2214,10 +1995,7 @@
 			goto enda9398c8188156dd46689fa2939147525
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint8(c) > uint8(d))
 		return true
 	}
@@ -2237,10 +2015,7 @@
 			goto endbfa1bb944cdc07933effb16a35152e12
 		}
 		data := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = data.Type
 		v.AddArg(data)
 		return true
@@ -2261,10 +2036,7 @@
 			goto endfcbb9414a776ff9c8512da3e0f4d8fbd
 		}
 		itab := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = itab.Type
 		v.AddArg(itab)
 		return true
@@ -2289,10 +2061,7 @@
 			goto endf0a2ecfe84b293de6ff0919e45d19d9d
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(inBounds32(c, d))
 		return true
 	}
@@ -2311,10 +2080,7 @@
 			goto end4b406f402c135f50f71effcc904ecb2b
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(inBounds64(c, d))
 		return true
 	}
@@ -2338,10 +2104,7 @@
 			goto end5e84a230c28cac987437cfed8f432cc3
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(sliceInBounds32(c, d))
 		return true
 	}
@@ -2360,10 +2123,7 @@
 			goto end3880a6fe20ad4152e98f76d84da233a7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(sliceInBounds64(c, d))
 		return true
 	}
@@ -2387,10 +2147,7 @@
 			goto end76b1c51f9b7cd7ee2f75b9f7057569de
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) <= int16(d))
 		return true
 	}
@@ -2414,10 +2171,7 @@
 			goto endf010fdf7f2c438ec18c33f493dd062aa
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint16(c) <= uint16(d))
 		return true
 	}
@@ -2441,10 +2195,7 @@
 			goto end6c7d61cfd188680bea8a5e23f08ca1de
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) <= int32(d))
 		return true
 	}
@@ -2468,10 +2219,7 @@
 			goto end4363555333511ee9b649b36f1a0ba34e
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint32(c) <= uint32(d))
 		return true
 	}
@@ -2495,10 +2243,7 @@
 			goto enddc865cd7ac2093abc7617bedbf371c22
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) <= int64(d))
 		return true
 	}
@@ -2522,10 +2267,7 @@
 			goto end412eadb168738ba92f3f0705d4495305
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint64(c) <= uint64(d))
 		return true
 	}
@@ -2549,10 +2291,7 @@
 			goto endb5a459da8e18c40abc0c7a20e71d0187
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) <= int8(d))
 		return true
 	}
@@ -2576,10 +2315,7 @@
 			goto endd6622d55fcdf3fa7b08e7511cd3b7d85
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint8(c) <= uint8(d))
 		return true
 	}
@@ -2603,10 +2339,7 @@
 			goto end0dc915d089f05e79589ebb5c498cc360
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) < int16(d))
 		return true
 	}
@@ -2630,10 +2363,7 @@
 			goto endd2bb8249443788690946fc184631a00a
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint16(c) < uint16(d))
 		return true
 	}
@@ -2657,10 +2387,7 @@
 			goto endc86f65e499688809d414f03539bec5bf
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) < int32(d))
 		return true
 	}
@@ -2684,10 +2411,7 @@
 			goto end2cc68b5247b1afb90a9d3923b28ff247
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint32(c) < uint32(d))
 		return true
 	}
@@ -2711,10 +2435,7 @@
 			goto end505de73cd15125dbb59b05d8975d3128
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) < int64(d))
 		return true
 	}
@@ -2738,10 +2459,7 @@
 			goto endeb249ef36416cd1abf4f807026c059cd
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint64(c) < uint64(d))
 		return true
 	}
@@ -2765,10 +2483,7 @@
 			goto endef134de03bc8537ac1f38d5eccff7673
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) < int8(d))
 		return true
 	}
@@ -2792,10 +2507,7 @@
 			goto end263ecdc279924bff8771dd1ac3f42222
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(uint8(c) < uint8(d))
 		return true
 	}
@@ -2815,10 +2527,7 @@
 		if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) {
 			goto end8d25f5c949948132921b6be29ede6bde
 		}
-		v.Op = OpStructMake0
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake0)
 		return true
 	}
 	goto end8d25f5c949948132921b6be29ede6bde
@@ -2834,10 +2543,7 @@
 		if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) {
 			goto endfe908e5a8617dd39df2f9b2b92e93ae5
 		}
-		v.Op = OpStructMake1
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake1)
 		v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -2857,10 +2563,7 @@
 		if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) {
 			goto end20e20e64004b765012cfb80c575ef27b
 		}
-		v.Op = OpStructMake2
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake2)
 		v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -2887,10 +2590,7 @@
 		if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) {
 			goto ende612bf71067ed67541735cdc8b5a3288
 		}
-		v.Op = OpStructMake3
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake3)
 		v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -2924,10 +2624,7 @@
 		if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) {
 			goto end46c66c64d9030f2cc9a7a767f67953d1
 		}
-		v.Op = OpStructMake4
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStructMake4)
 		v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -2968,10 +2665,7 @@
 		if !(t.IsComplex() && t.Size() == 8) {
 			goto end665854b31b828893d90b36bb462ff381
 		}
-		v.Op = OpComplexMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpComplexMake)
 		v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat32())
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -2998,10 +2692,7 @@
 		if !(t.IsComplex() && t.Size() == 16) {
 			goto end1b106f89e0e3e26c613b957a7c98d8ad
 		}
-		v.Op = OpComplexMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpComplexMake)
 		v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat64())
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -3028,10 +2719,7 @@
 		if !(t.IsString()) {
 			goto enddd15a6f3d53a6ce7a19d4e181dd1c13a
 		}
-		v.Op = OpStringMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStringMake)
 		v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -3058,10 +2746,7 @@
 		if !(t.IsSlice()) {
 			goto end65e8b0055aa7491b9b6066d9fe1b2c13
 		}
-		v.Op = OpSliceMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpSliceMake)
 		v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -3095,10 +2780,7 @@
 		if !(t.IsInterface()) {
 			goto end12671c83ebe3ccbc8e53383765ee7675
 		}
-		v.Op = OpIMake
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpIMake)
 		v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
 		v0.AddArg(ptr)
 		v0.AddArg(mem)
@@ -3130,10 +2812,7 @@
 			goto end2f5aa78b30ebd2471e8d03a307923b06
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -3158,10 +2837,7 @@
 			goto endedeb000c8c97090261a47f08a2ff17e4
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -3188,10 +2864,7 @@
 			goto endc9f0d91f3da4bdd46a634a62549810e0
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = int64(int16(c) << uint64(d))
 		return true
 	}
@@ -3209,10 +2882,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end7ecc343739fab9b50a0bdff6e9d121e6
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -3231,10 +2901,7 @@
 		if !(uint64(c) >= 16) {
 			goto end1d2c74d359df9d89b16c4f658a231dfe
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -3261,10 +2928,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end26a91e42735a02a30e94a998f54372dd
 		}
-		v.Op = OpLsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -3289,10 +2953,7 @@
 			goto endce2401b8a6c6190fe81d77e2d562a10c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -3317,10 +2978,7 @@
 			goto end7205eb3e315971143ac5584d07045570
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -3345,10 +3003,7 @@
 			goto endc1a330b287199c80228e665a53881298
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -3375,10 +3030,7 @@
 			goto end5896bd9a3fe78f1e1712563642d33254
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = int64(int32(c) << uint64(d))
 		return true
 	}
@@ -3396,10 +3048,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto endd9ce9639a91b11e601823be3d4d6c209
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -3418,10 +3067,7 @@
 		if !(uint64(c) >= 32) {
 			goto end81247a2423f489be15859d3930738fdf
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -3448,10 +3094,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto endf96a7c9571797fe61a5b63a4923d7e6e
 		}
-		v.Op = OpLsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -3476,10 +3119,7 @@
 			goto end1759d7c25a5bcda288e34d1d197c0b8f
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -3504,10 +3144,7 @@
 			goto enda649fbb5e14490c9eea9616550a76b5c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -3532,10 +3169,7 @@
 			goto end40069675cde851a63cce81b1b02751f9
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -3562,10 +3196,7 @@
 			goto end9c157a23e021f659f1568566435ed57b
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = c << uint64(d)
 		return true
 	}
@@ -3583,10 +3214,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end9f18ca0556dbb4b50fe888273fab20ca
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -3605,10 +3233,7 @@
 		if !(uint64(c) >= 64) {
 			goto end33da2e0ce5ca3e0554564477ef422402
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -3635,10 +3260,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end001c62ee580a700ec7b07ccaa3740ac2
 		}
-		v.Op = OpLsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -3663,10 +3285,7 @@
 			goto end4d9224069abdade8e405df343938d932
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -3691,10 +3310,7 @@
 			goto end0ad4a82e2eb4c7ca7407d79ec3aa5142
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -3719,10 +3335,7 @@
 			goto enddaacda113ecc79fe0621fd22ebc548dd
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -3749,10 +3362,7 @@
 			goto endbc3297ea9642b97eb71f0a9735048d7b
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = int64(int8(c) << uint64(d))
 		return true
 	}
@@ -3770,10 +3380,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end715f3db41cccf963e25a20c33f618a04
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -3792,10 +3399,7 @@
 		if !(uint64(c) >= 8) {
 			goto endb6749df4d0cdc0cd9acc627187d73488
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -3822,10 +3426,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end73a4878b6bbd21c9e22fb99226ef947e
 		}
-		v.Op = OpLsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -3850,10 +3451,7 @@
 			goto end8b770597435467b0c96014624d522b33
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpLsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpLsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -3880,10 +3478,7 @@
 			goto ende8dd468add3015aea24531cf3c89ccb7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = c * d
 		return true
 	}
@@ -3907,10 +3502,7 @@
 			goto end60b4523099fa7b55e2e872e05bd497a7
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = c * d
 		return true
 	}
@@ -3934,10 +3526,7 @@
 			goto end7aea1048b5d1230974b97f17238380ae
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = c * d
 		return true
 	}
@@ -3961,10 +3550,7 @@
 			goto end2f1952fd654c4a62ff00511041728809
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = c * d
 		return true
 	}
@@ -3984,10 +3570,7 @@
 		if v.Args[1] != x {
 			goto ende76a50b524aeb16c7aeccf5f5cc60c06
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 0
 		return true
 	}
@@ -4014,10 +3597,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpNeq16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -4040,10 +3620,7 @@
 		if !(x.Op != OpConst16) {
 			goto end0e45958f29e87997f632248aa9ee97e0
 		}
-		v.Op = OpNeq16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -4065,10 +3642,7 @@
 			goto end6302c9b645bb191982d28c2f846904d6
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int16(c) != int16(d))
 		return true
 	}
@@ -4088,10 +3662,7 @@
 		if v.Args[1] != x {
 			goto end3713a608cffd29b40ff7c3b3f2585cbb
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 0
 		return true
 	}
@@ -4118,10 +3689,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpNeq32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -4144,10 +3712,7 @@
 		if !(x.Op != OpConst32) {
 			goto end5376f9ab90e282450f49011d0e0ce236
 		}
-		v.Op = OpNeq32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -4169,10 +3734,7 @@
 			goto endf9f3d0814854d2d0879d331e9bdfcae2
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int32(c) != int32(d))
 		return true
 	}
@@ -4192,10 +3754,7 @@
 		if v.Args[1] != x {
 			goto end3601ad382705ea12b79d2008c1e5725c
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 0
 		return true
 	}
@@ -4222,10 +3781,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpNeq64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -4248,10 +3804,7 @@
 		if !(x.Op != OpConst64) {
 			goto end0936a57de20373ca6cacb9506ddde708
 		}
-		v.Op = OpNeq64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -4273,10 +3826,7 @@
 			goto endf07433ecd3c150b1b75e943aa44a7203
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int64(c) != int64(d))
 		return true
 	}
@@ -4296,10 +3846,7 @@
 		if v.Args[1] != x {
 			goto end09a0deaf3c42627d0d2d3efa96e30745
 		}
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = 0
 		return true
 	}
@@ -4326,10 +3873,7 @@
 		}
 		d := v.Args[1].Args[0].AuxInt
 		x := v.Args[1].Args[1]
-		v.Op = OpNeq8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = c - d
 		v.AddArg(v0)
@@ -4352,10 +3896,7 @@
 		if !(x.Op != OpConst8) {
 			goto end04dc0ae2b08cf0447b50e5b8ef469252
 		}
-		v.Op = OpNeq8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeq8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = c
 		v.AddArg(v0)
@@ -4377,10 +3918,7 @@
 			goto end72ebdaf2de9b3aa57cf0cb8e068b5f9c
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConstBool
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConstBool)
 		v.AuxInt = b2i(int8(c) != int8(d))
 		return true
 	}
@@ -4398,10 +3936,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpNeqPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeqPtr)
 		v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -4426,10 +3961,7 @@
 		if v.Args[1].Op != OpConstNil {
 			goto endba798520b4d41172b110347158c44791
 		}
-		v.Op = OpIsNonNil
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpIsNonNil)
 		v.AddArg(p)
 		return true
 	}
@@ -4444,10 +3976,7 @@
 			goto enddd95e9c3606d9fd48034f1a703561e45
 		}
 		p := v.Args[1]
-		v.Op = OpIsNonNil
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpIsNonNil)
 		v.AddArg(p)
 		return true
 	}
@@ -4465,10 +3994,7 @@
 	{
 		x := v.Args[0]
 		y := v.Args[1]
-		v.Op = OpNeqPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpNeqPtr)
 		v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
 		v0.AddArg(x)
 		v.AddArg(v0)
@@ -4493,10 +4019,7 @@
 		if v.Args[1] != x {
 			goto end47a2f25fd31a76807aced3e2b126acdc
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4517,10 +4040,7 @@
 		if v.Args[1] != x {
 			goto end231e283e568e90bd9a3e6a4fa328c8a4
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4541,10 +4061,7 @@
 		if v.Args[1] != x {
 			goto end6b0efc212016dc97d0e3939db04c81d9
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4565,10 +4082,7 @@
 		if v.Args[1] != x {
 			goto end05295dbfafd6869af79b4daee9fda000
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4591,10 +4105,7 @@
 		if !(config.PtrSize == 4) {
 			goto endd902622aaa1e7545b5a2a0c08b47d287
 		}
-		v.Op = OpAddPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAddPtr)
 		v.AddArg(ptr)
 		v0 := b.NewValue0(v.Line, OpMul32, config.fe.TypeInt())
 		v0.AddArg(idx)
@@ -4617,10 +4128,7 @@
 		if !(config.PtrSize == 8) {
 			goto end47a5f1d1b158914fa383de024bbe3b08
 		}
-		v.Op = OpAddPtr
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAddPtr)
 		v.AddArg(ptr)
 		v0 := b.NewValue0(v.Line, OpMul64, config.fe.TypeInt())
 		v0.AddArg(idx)
@@ -4648,10 +4156,7 @@
 			goto endd981df40f353104ef828d13ad4ccdf02
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -4676,10 +4181,7 @@
 			goto ende0be9ee562725206dcf96d3e5750b5ea
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -4706,10 +4208,7 @@
 			goto ended17f40375fb44bcbaf2d87161c5ed3c
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = int64(uint16(c) >> uint64(d))
 		return true
 	}
@@ -4727,10 +4226,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end752d1b5a60f87afa7e40febbf1bce309
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4749,10 +4245,7 @@
 		if !(uint64(c) >= 16) {
 			goto endca5c7ae2e51f2ae32486c2b1a3033b77
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -4779,10 +4272,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end56f2c0034c9fbe651abb36fb640af465
 		}
-		v.Op = OpRsh16Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -4807,10 +4297,7 @@
 			goto end20d4667094c32c71bac4e0805dab85c9
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -4835,10 +4322,7 @@
 			goto end1b501c7ae2fe58ad3a88b467f2d95389
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -4863,10 +4347,7 @@
 			goto end4d3a41113d2d0b09924bf5759ca49cab
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -4893,10 +4374,7 @@
 			goto end8f05fede35a3d2f687fcd4a5829a25ad
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = int64(int16(c) >> uint64(d))
 		return true
 	}
@@ -4914,10 +4392,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end750fafe01fcc689d953101d53efc19ab
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -4945,10 +4420,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto endf425eff9e05aad27194af957e3383c76
 		}
-		v.Op = OpRsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -4973,10 +4445,7 @@
 			goto end0b5e274d62a3ae8df9f4089756c6a9d4
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh16x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh16x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5001,10 +4470,7 @@
 			goto end8d8f9f3e2e1f7a5e9a186fb792fc40a8
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5029,10 +4495,7 @@
 			goto endd23d060f74e00f34cc967b6fb9a4d320
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5059,10 +4522,7 @@
 			goto enda101e6b765d7ecffd9b7410c9dc3be82
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = int64(uint32(c) >> uint64(d))
 		return true
 	}
@@ -5080,10 +4540,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end162e4e182a665d4e6f0d85fe131e7288
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -5102,10 +4559,7 @@
 		if !(uint64(c) >= 32) {
 			goto endca322c370839b4264b219ee042a6ab33
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -5132,10 +4586,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end2e502d68a32663142684194adbe6c297
 		}
-		v.Op = OpRsh32Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -5160,10 +4611,7 @@
 			goto end967cea80158afaffb783f6da7aa898ca
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5188,10 +4636,7 @@
 			goto end6a62ebdcc98ea2e3214559214708d26a
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5216,10 +4661,7 @@
 			goto end6e3b467acdca74f58e9177fb42a1968b
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5246,10 +4688,7 @@
 			goto end7e4b8c499cffe1fef73a16e6be54d4d2
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = int64(int32(c) >> uint64(d))
 		return true
 	}
@@ -5267,10 +4706,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end72da2611eaaffe407efa1cc45c23ade3
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -5298,10 +4734,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto endadb415be78ee46a8a4135ec50df772b0
 		}
-		v.Op = OpRsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -5326,10 +4759,7 @@
 			goto end7b59b42c5c68a2d55be469a0c086dd8b
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh32x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh32x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5354,10 +4784,7 @@
 			goto end733d85a7b599bcba969ca1cb4bdb9e48
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5382,10 +4809,7 @@
 			goto endeac7b34169de1fb0393b833e65b9bb19
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5412,10 +4836,7 @@
 			goto end102f4cfd7979a2aa222d52c34ac6802d
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = int64(uint64(c) >> uint64(d))
 		return true
 	}
@@ -5433,10 +4854,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end5ad037b910698f2847df90177c23a6ac
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -5455,10 +4873,7 @@
 		if !(uint64(c) >= 64) {
 			goto end16ea16aa61862207ea64e514369d608b
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -5485,10 +4900,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end32bfdb1b4ccc23a5cd62fc0348ebd877
 		}
-		v.Op = OpRsh64Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -5513,10 +4925,7 @@
 			goto ende3d8090a67a52dbcd24b52ee32c9d7f0
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5541,10 +4950,7 @@
 			goto endd5151d0bfc38c55ae6ae6836014df3bc
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5569,10 +4975,7 @@
 			goto end0f2dbca5c7d6b100890c94a97bf0de7c
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5599,10 +5002,7 @@
 			goto endfa4609d6bea8a3e3d3a777b1968c97d9
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = c >> uint64(d)
 		return true
 	}
@@ -5620,10 +5020,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto ende62e0c67d3f04eb221646371a2a91d05
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -5651,10 +5048,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto endd3e8ea66dc3ad0bc393001d6babb7160
 		}
-		v.Op = OpRsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -5679,10 +5073,7 @@
 			goto end1a9e5a89849344396210da7c7ec810be
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh64x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh64x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5707,10 +5098,7 @@
 			goto end7acc015610273092e9efcce2949ee0f9
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5735,10 +5123,7 @@
 			goto end27e9b4472e085b653a105b1d67554ce8
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5765,10 +5150,7 @@
 			goto enddd166e450d81ba7b466d61d2fbec178c
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = int64(uint8(c) >> uint64(d))
 		return true
 	}
@@ -5786,10 +5168,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end570cb1d9db3c7bebd85e485eeb2c0969
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -5808,10 +5187,7 @@
 		if !(uint64(c) >= 8) {
 			goto endb63e1a7d1d91716ca0d9d74215361323
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -5838,10 +5214,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto endee8824b7071ed1a6dba4fcbaab98229e
 		}
-		v.Op = OpRsh8Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -5866,10 +5239,7 @@
 			goto ended7e4f4d9ab89dc26e6649d466577930
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8Ux64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8Ux64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -5894,10 +5264,7 @@
 			goto end136bef6f60180bc8b4befbfc370af7ef
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint16(c))
@@ -5922,10 +5289,7 @@
 			goto end2ef95c222a7c552fa9cc86e36196644e
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint32(c))
@@ -5952,10 +5316,7 @@
 			goto end3b90206d75365466dfd1368e5b69db35
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = int64(int8(c) >> uint64(d))
 		return true
 	}
@@ -5973,10 +5334,7 @@
 		if v.Args[1].AuxInt != 0 {
 			goto end1e664cc720a11d1c769de8081cfa1de4
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6004,10 +5362,7 @@
 		if !(!uaddOvf(c, d)) {
 			goto end6408685a7276af7e76ec086f359c942c
 		}
-		v.Op = OpRsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = c + d
@@ -6032,10 +5387,7 @@
 			goto endae44f60f364cddd8903763dd921a007e
 		}
 		c := v.Args[1].AuxInt
-		v.Op = OpRsh8x64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpRsh8x64)
 		v.AddArg(x)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = int64(uint8(c))
@@ -6058,10 +5410,7 @@
 			goto end1bd11616743632b33b410964667fb3c6
 		}
 		cap := v.Args[0].Args[2]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = cap.Type
 		v.AddArg(cap)
 		return true
@@ -6082,10 +5431,7 @@
 			goto endebb2090199d13e4c2ae52fb3e778f7fd
 		}
 		len := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = len.Type
 		v.AddArg(len)
 		return true
@@ -6106,10 +5452,7 @@
 			goto end526acc0a705137a5d25577499206720b
 		}
 		ptr := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = ptr.Type
 		v.AddArg(ptr)
 		return true
@@ -6130,10 +5473,7 @@
 			goto endd4f364b0adfc229d8c200af183d4c808
 		}
 		mem := v.Args[2]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = mem.Type
 		v.AddArg(mem)
 		return true
@@ -6152,10 +5492,7 @@
 		t := v.Args[1].Type
 		f0 := v.Args[1].Args[0]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = t.FieldType(0).Size()
 		v.AddArg(dst)
 		v.AddArg(f0)
@@ -6177,10 +5514,7 @@
 		f0 := v.Args[1].Args[0]
 		f1 := v.Args[1].Args[1]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = t.FieldType(1).Size()
 		v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
 		v0.AuxInt = t.FieldOff(1)
@@ -6211,10 +5545,7 @@
 		f1 := v.Args[1].Args[1]
 		f2 := v.Args[1].Args[2]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = t.FieldType(2).Size()
 		v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
 		v0.AuxInt = t.FieldOff(2)
@@ -6254,10 +5585,7 @@
 		f2 := v.Args[1].Args[2]
 		f3 := v.Args[1].Args[3]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = t.FieldType(3).Size()
 		v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(3).PtrTo())
 		v0.AuxInt = t.FieldOff(3)
@@ -6305,10 +5633,7 @@
 		real := v.Args[1].Args[0]
 		imag := v.Args[1].Args[1]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = 4
 		v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat32().PtrTo())
 		v0.AuxInt = 4
@@ -6340,10 +5665,7 @@
 		real := v.Args[1].Args[0]
 		imag := v.Args[1].Args[1]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = 8
 		v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat64().PtrTo())
 		v0.AuxInt = 8
@@ -6375,10 +5697,7 @@
 		ptr := v.Args[1].Args[0]
 		len := v.Args[1].Args[1]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = config.PtrSize
 		v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
 		v0.AuxInt = config.PtrSize
@@ -6411,10 +5730,7 @@
 		len := v.Args[1].Args[1]
 		cap := v.Args[1].Args[2]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = config.PtrSize
 		v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
 		v0.AuxInt = 2 * config.PtrSize
@@ -6454,10 +5770,7 @@
 		itab := v.Args[1].Args[0]
 		data := v.Args[1].Args[1]
 		mem := v.Args[2]
-		v.Op = OpStore
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpStore)
 		v.AuxInt = config.PtrSize
 		v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeBytePtr().PtrTo())
 		v0.AuxInt = config.PtrSize
@@ -6493,10 +5806,7 @@
 		if !(!config.fe.CanSSA(t)) {
 			goto end45295326269ba18413dceb7b608a0b9d
 		}
-		v.Op = OpMove
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpMove)
 		v.AuxInt = size
 		v.AddArg(dst)
 		v.AddArg(src)
@@ -6528,10 +5838,7 @@
 		if !(!config.fe.CanSSA(t)) {
 			goto end7f3cc0baffb82ba3ee879599b189a512
 		}
-		v.Op = OpMove
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpMove)
 		v.AuxInt = size
 		v.AddArg(dst)
 		v.AddArg(src)
@@ -6557,10 +5864,7 @@
 			goto end0d922460b7e5ca88324034f4bd6c027c
 		}
 		len := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = len.Type
 		v.AddArg(len)
 		return true
@@ -6581,10 +5885,7 @@
 			goto end061edc5d85c73ad909089af2556d9380
 		}
 		ptr := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = ptr.Type
 		v.AddArg(ptr)
 		return true
@@ -6605,10 +5906,7 @@
 			goto end17af582e7eba5216b4a51fe6c9206d3c
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6627,10 +5925,7 @@
 			goto end355cfff99c8e9af975c3ae450d49b7f9
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6649,10 +5944,7 @@
 			goto end69baa65e494ef9ae154e0943b53734f9
 		}
 		x := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6671,10 +5963,7 @@
 			goto endb0d98e2c46bb51c9abd4c3543392e0ec
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6693,10 +5982,7 @@
 			goto end2e40457286d26c2f14ad4fd127946773
 		}
 		x := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6715,10 +6001,7 @@
 			goto end3e3b96ad431206175d002ece87aa1409
 		}
 		x := v.Args[0].Args[2]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6737,10 +6020,7 @@
 			goto end09f8a1ffa3d8c3124bc6d4083b941108
 		}
 		x := v.Args[0].Args[0]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6759,10 +6039,7 @@
 			goto endd3ef25e605a927e9251be6d9221f4acf
 		}
 		x := v.Args[0].Args[1]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6781,10 +6058,7 @@
 			goto end0438e22cc8f41123fa42009a81ee723a
 		}
 		x := v.Args[0].Args[2]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6803,10 +6077,7 @@
 			goto end56a7c7781fee35eeff0a3652dc206012
 		}
 		x := v.Args[0].Args[3]
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6829,10 +6100,7 @@
 			goto end2afd47b4fcaaab7a73325bd8a75e3e8e
 		}
 		v0 := v.Args[0].Block.NewValue0(v.Line, OpLoad, v.Type)
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.AddArg(v0)
 		v1 := v.Args[0].Block.NewValue0(v.Line, OpOffPtr, v.Type.PtrTo())
 		v1.AuxInt = t.FieldOff(i)
@@ -6861,10 +6129,7 @@
 			goto end5c6fab95c9dbeff5973119096bfd4e78
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = c - d
 		return true
 	}
@@ -6884,10 +6149,7 @@
 		if !(x.Op != OpConst16) {
 			goto end493545258a8e7e79d005b34c712ddd0c
 		}
-		v.Op = OpAdd16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd16)
 		v0 := b.NewValue0(v.Line, OpConst16, t)
 		v0.AuxInt = -c
 		v.AddArg(v0)
@@ -6905,10 +6167,7 @@
 		if v.Args[1] != x {
 			goto end83da541391be564f2a08464e674a49e7
 		}
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = 0
 		return true
 	}
@@ -6927,10 +6186,7 @@
 		if v.Args[1] != x {
 			goto end0dd8f250c457b9c005ecbed59fc2e758
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = y.Type
 		v.AddArg(y)
 		return true
@@ -6950,10 +6206,7 @@
 		if v.Args[1] != y {
 			goto end01c8db2e0bce69e048cf79f3bdc82b9b
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -6978,10 +6231,7 @@
 			goto end7623799db780e1bcc42c6ea0df9c49d3
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = c - d
 		return true
 	}
@@ -7001,10 +6251,7 @@
 		if !(x.Op != OpConst32) {
 			goto end391e2f2ba8c7502b62c0153ec69c4fbd
 		}
-		v.Op = OpAdd32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd32)
 		v0 := b.NewValue0(v.Line, OpConst32, t)
 		v0.AuxInt = -c
 		v.AddArg(v0)
@@ -7022,10 +6269,7 @@
 		if v.Args[1] != x {
 			goto enda747581e798f199e07f4ad69747cd069
 		}
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = 0
 		return true
 	}
@@ -7044,10 +6288,7 @@
 		if v.Args[1] != x {
 			goto end70c1e60e58a6c106d060f10cd3f179ea
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = y.Type
 		v.AddArg(y)
 		return true
@@ -7067,10 +6308,7 @@
 		if v.Args[1] != y {
 			goto end20e42db178ec4f423cc56a991863a4a2
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -7095,10 +6333,7 @@
 			goto end5a84a285ff0ff48b8ad3c64b15e3459f
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = c - d
 		return true
 	}
@@ -7118,10 +6353,7 @@
 		if !(x.Op != OpConst64) {
 			goto enda80d30f6794bcf02cd4442b238f68333
 		}
-		v.Op = OpAdd64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd64)
 		v0 := b.NewValue0(v.Line, OpConst64, t)
 		v0.AuxInt = -c
 		v.AddArg(v0)
@@ -7139,10 +6371,7 @@
 		if v.Args[1] != x {
 			goto end0387dc2b7bbe57d4aa54eab5d959da4b
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -7161,10 +6390,7 @@
 		if v.Args[1] != x {
 			goto end7d177451cf8959cb781f52d5ded46fff
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = y.Type
 		v.AddArg(y)
 		return true
@@ -7184,10 +6410,7 @@
 		if v.Args[1] != y {
 			goto end6ea8172b21100cfe3dc86b7a850fbe97
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -7212,10 +6435,7 @@
 			goto endc00ea11c7535529e211710574f5cff24
 		}
 		d := v.Args[1].AuxInt
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = c - d
 		return true
 	}
@@ -7235,10 +6455,7 @@
 		if !(x.Op != OpConst8) {
 			goto end0bfab5b6f1037e55dc049b79e2636678
 		}
-		v.Op = OpAdd8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpAdd8)
 		v0 := b.NewValue0(v.Line, OpConst8, t)
 		v0.AuxInt = -c
 		v.AddArg(v0)
@@ -7256,10 +6473,7 @@
 		if v.Args[1] != x {
 			goto end4e2ee15ef17611919a1a6b5f80bbfe18
 		}
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = 0
 		return true
 	}
@@ -7278,10 +6492,7 @@
 		if v.Args[1] != x {
 			goto endd79d561e14dc3d11da4c3bb20270b541
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = y.Type
 		v.AddArg(y)
 		return true
@@ -7301,10 +6512,7 @@
 		if v.Args[1] != y {
 			goto endcb7111b11d6d068c97026a97ecff8248
 		}
-		v.Op = OpCopy
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpCopy)
 		v.Type = x.Type
 		v.AddArg(x)
 		return true
@@ -7325,10 +6533,7 @@
 		if v.Args[1] != x {
 			goto end5733ceb1903b8140248d8e2cac02fefe
 		}
-		v.Op = OpConst16
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst16)
 		v.AuxInt = 0
 		return true
 	}
@@ -7348,10 +6553,7 @@
 		if v.Args[1] != x {
 			goto end268ca02df6515d648e0bfb4e90981d25
 		}
-		v.Op = OpConst32
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst32)
 		v.AuxInt = 0
 		return true
 	}
@@ -7371,10 +6573,7 @@
 		if v.Args[1] != x {
 			goto endaf44e7f9fc58af30df69070953fb45ce
 		}
-		v.Op = OpConst64
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst64)
 		v.AuxInt = 0
 		return true
 	}
@@ -7394,10 +6593,7 @@
 		if v.Args[1] != x {
 			goto end949b3a60b7d181688e6f79f93c782fc8
 		}
-		v.Op = OpConst8
-		v.AuxInt = 0
-		v.Aux = nil
-		v.resetArgs()
+		v.reset(OpConst8)
 		v.AuxInt = 0
 		return true
 	}
diff --git a/src/cmd/compile/internal/ssa/value.go b/src/cmd/compile/internal/ssa/value.go
index af6bb3b..d71fd8f 100644
--- a/src/cmd/compile/internal/ssa/value.go
+++ b/src/cmd/compile/internal/ssa/value.go
@@ -170,6 +170,13 @@
 	v.Args = v.argstorage[:0]
 }
 
+func (v *Value) reset(op Op) {
+	v.Op = op
+	v.resetArgs()
+	v.AuxInt = 0
+	v.Aux = nil
+}
+
 // copyInto makes a new value identical to v and adds it to the end of b.
 func (v *Value) copyInto(b *Block) *Value {
 	c := b.NewValue0(v.Line, v.Op, v.Type)