Commit 2df4b9c2 authored by Alexandru Moșoi's avatar Alexandru Moșoi Committed by Keith Randall

[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/19197Reviewed-by: default avatarKeith Randall <khr@golang.org>
parent 93a0b0f3
......@@ -122,10 +122,7 @@ func decomposeStringPhi(v *Value) {
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 @@ func decomposeSlicePhi(v *Value) {
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 @@ func decomposeComplexPhi(v *Value) {
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 @@ func decomposeInterfacePhi(v *Value) {
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 @@ func decomposeStructPhi(v *Value) {
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.
......
......@@ -435,10 +435,7 @@ func genResult0(w io.Writer, arch arch, result string, alloc *int, top bool, loc
// 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 @@ func genResult0(w io.Writer, arch arch, result string, alloc *int, top bool, loc
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 @@ func genResult0(w io.Writer, arch arch, result string, alloc *int, top bool, loc
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)
}
}
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -311,10 +311,7 @@ func rewriteValuegeneric_OpAdd16(v *Value, config *Config) bool {
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 @@ end359c546ef662b7990116329cb30d6892:
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 @@ func rewriteValuegeneric_OpAdd32(v *Value, config *Config) bool {
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 @@ enda3edaa9a512bd1d7a95f002c890bfb88:
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 @@ func rewriteValuegeneric_OpAdd64(v *Value, config *Config) bool {
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 @@ end8c46df6f85a11cb1d594076b0e467908:
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 @@ func rewriteValuegeneric_OpAdd8(v *Value, config *Config) bool {
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 @@ end60c66721511a442aade8e4da2fb326bd:
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 @@ func rewriteValuegeneric_OpAnd16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpAnd32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpAnd64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpAnd8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpArg(v *Value, config *Config) bool {
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 @@ end939d3f946bf61eb85b46b374e7afa9e9:
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 @@ endab4b93ad3b1cf55e5bf25d1fd9cd498e:
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 @@ end851de8e588a39e81b4e2aef06566bf3e:
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 @@ end0988fc6a62c810b2f4976cb6cf44387f:
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 @@ enda348e93e0036873dd7089a2939c22e3e:
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 @@ ende233eeefa826638b0e541bcca531d701:
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 @@ ende953e77a0617051dd3f7ad4d58c9ab37:
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 @@ end9a008048978aabad9de0723212e60631:
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 @@ end0196e61dbeebc6402f3aa1e9a182210b:
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 @@ func rewriteValuegeneric_OpArrayIndex(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpCom16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpCom32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpCom64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpCom8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpComplexImag(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpComplexReal(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpConstInterface(v *Value, config *Config) bool {
// 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 @@ func rewriteValuegeneric_OpConstSlice(v *Value, config *Config) bool {
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 @@ end9ba6baf9c7247b1f5ba4099c0c3910ce:
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 @@ func rewriteValuegeneric_OpConstString(v *Value, config *Config) bool {
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 @@ end85d5f388ba947643af63cdc68c1155a5:
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 @@ endc807259a5ed2760fbbd3dc7386641343:
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 @@ end107a700a4519d18f418602421444ddb6:
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 @@ func rewriteValuegeneric_OpConvert(v *Value, config *Config) bool {
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 @@ endbbc9f1666b4d39a130e1b86f109e7c1b:
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 @@ func rewriteValuegeneric_OpEq16(v *Value, config *Config) bool {
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 @@ end0c0fe5fdfba3821add3448fd3f1fc6b7:
}
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 @@ end79c830afa265161fc0f0532c4c4e7f50:
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 @@ end5d89fe1eeb145f14e11578f41282c904:
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 @@ func rewriteValuegeneric_OpEq32(v *Value, config *Config) bool {
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 @@ end6da547ec4ee93d787434f3bda873e4a0:
}
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 @@ end1a69730a32c6e432784dcdf643320ecd:
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 @@ end0ca4ef4cf416ec3083d38667e263cf45:
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 @@ func rewriteValuegeneric_OpEq64(v *Value, config *Config) bool {
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 @@ endb1d471cc503ba8bb05440f01dbf33d81:
}
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 @@ endffd67f3b83f6972cd459153d318f714d:
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 @@ endc2ecf8254dc736e97c5815362d0b477d:
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 @@ func rewriteValuegeneric_OpEq8(v *Value, config *Config) bool {
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 @@ enda66da0d3e7e51624ee46527727c48a9a:
}
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 @@ end6912961350bb485f56ef176522aa683b:
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 @@ end70d0b569427b24e7a912a1aa8fab3b20:
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 @@ func rewriteValuegeneric_OpEqInter(v *Value, config *Config) bool {
{
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 @@ func rewriteValuegeneric_OpEqPtr(v *Value, config *Config) bool {
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 @@ ende701cdb6a2c1fff4d4b283b7f8f6178b:
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 @@ func rewriteValuegeneric_OpEqSlice(v *Value, config *Config) bool {
{
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 @@ func rewriteValuegeneric_OpGeq16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq16U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq32U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq64U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGeq8U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater16U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater32U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater64U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpGreater8U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpIData(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpITab(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpIsInBounds(v *Value, config *Config) bool {
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 @@ endf0a2ecfe84b293de6ff0919e45d19d9d:
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 @@ func rewriteValuegeneric_OpIsSliceInBounds(v *Value, config *Config) bool {
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 @@ end5e84a230c28cac987437cfed8f432cc3:
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 @@ func rewriteValuegeneric_OpLeq16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq16U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq32U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq64U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLeq8U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess16U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess32U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess64U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLess8U(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLoad(v *Value, config *Config) bool {
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 @@ end8d25f5c949948132921b6be29ede6bde:
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 @@ endfe908e5a8617dd39df2f9b2b92e93ae5:
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 @@ end20e20e64004b765012cfb80c575ef27b:
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 @@ ende612bf71067ed67541735cdc8b5a3288:
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 @@ end46c66c64d9030f2cc9a7a767f67953d1:
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 @@ end665854b31b828893d90b36bb462ff381:
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 @@ end1b106f89e0e3e26c613b957a7c98d8ad:
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 @@ enddd15a6f3d53a6ce7a19d4e181dd1c13a:
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 @@ end65e8b0055aa7491b9b6066d9fe1b2c13:
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 @@ func rewriteValuegeneric_OpLsh16x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh16x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh16x64(v *Value, config *Config) bool {
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 @@ endc9f0d91f3da4bdd46a634a62549810e0:
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 @@ end7ecc343739fab9b50a0bdff6e9d121e6:
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 @@ end1d2c74d359df9d89b16c4f658a231dfe:
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 @@ func rewriteValuegeneric_OpLsh16x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh32x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh32x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh32x64(v *Value, config *Config) bool {
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 @@ end5896bd9a3fe78f1e1712563642d33254:
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 @@ endd9ce9639a91b11e601823be3d4d6c209:
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 @@ end81247a2423f489be15859d3930738fdf:
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 @@ func rewriteValuegeneric_OpLsh32x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh64x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh64x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh64x64(v *Value, config *Config) bool {
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 @@ end9c157a23e021f659f1568566435ed57b:
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 @@ end9f18ca0556dbb4b50fe888273fab20ca:
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 @@ end33da2e0ce5ca3e0554564477ef422402:
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 @@ func rewriteValuegeneric_OpLsh64x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh8x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh8x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpLsh8x64(v *Value, config *Config) bool {
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 @@ endbc3297ea9642b97eb71f0a9735048d7b:
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 @@ end715f3db41cccf963e25a20c33f618a04:
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 @@ endb6749df4d0cdc0cd9acc627187d73488:
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 @@ func rewriteValuegeneric_OpLsh8x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpMul16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpMul32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpMul64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpMul8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpNeq16(v *Value, config *Config) bool {
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 @@ ende76a50b524aeb16c7aeccf5f5cc60c06:
}
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 @@ end552011bd97e6f92ebc2672aa1843eadd:
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 @@ end0e45958f29e87997f632248aa9ee97e0:
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 @@ func rewriteValuegeneric_OpNeq32(v *Value, config *Config) bool {
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 @@ end3713a608cffd29b40ff7c3b3f2585cbb:
}
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 @@ end93fc3b4a3639b965b414891111b16245:
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 @@ end5376f9ab90e282450f49011d0e0ce236:
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 @@ func rewriteValuegeneric_OpNeq64(v *Value, config *Config) bool {
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 @@ end3601ad382705ea12b79d2008c1e5725c:
}
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 @@ enda3d39cad13a557a2aa6d086f43596c1b:
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 @@ end0936a57de20373ca6cacb9506ddde708:
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 @@ func rewriteValuegeneric_OpNeq8(v *Value, config *Config) bool {
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 @@ end09a0deaf3c42627d0d2d3efa96e30745:
}
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 @@ endc8f853c610c460c887cbfdca958e3691:
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 @@ end04dc0ae2b08cf0447b50e5b8ef469252:
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 @@ func rewriteValuegeneric_OpNeqInter(v *Value, config *Config) bool {
{
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 @@ func rewriteValuegeneric_OpNeqPtr(v *Value, config *Config) bool {
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 @@ endba798520b4d41172b110347158c44791:
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 @@ func rewriteValuegeneric_OpNeqSlice(v *Value, config *Config) bool {
{
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 @@ func rewriteValuegeneric_OpOr16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpOr32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpOr64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpOr8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpPtrIndex(v *Value, config *Config) bool {
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 @@ endd902622aaa1e7545b5a2a0c08b47d287:
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 @@ func rewriteValuegeneric_OpRsh16Ux16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh16Ux32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh16Ux64(v *Value, config *Config) bool {
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 @@ ended17f40375fb44bcbaf2d87161c5ed3c:
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 @@ end752d1b5a60f87afa7e40febbf1bce309:
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 @@ endca5c7ae2e51f2ae32486c2b1a3033b77:
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 @@ func rewriteValuegeneric_OpRsh16Ux8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh16x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh16x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh16x64(v *Value, config *Config) bool {
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 @@ end8f05fede35a3d2f687fcd4a5829a25ad:
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 @@ end750fafe01fcc689d953101d53efc19ab:
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 @@ func rewriteValuegeneric_OpRsh16x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32Ux16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32Ux32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32Ux64(v *Value, config *Config) bool {
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 @@ enda101e6b765d7ecffd9b7410c9dc3be82:
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 @@ end162e4e182a665d4e6f0d85fe131e7288:
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 @@ endca322c370839b4264b219ee042a6ab33:
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 @@ func rewriteValuegeneric_OpRsh32Ux8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh32x64(v *Value, config *Config) bool {
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 @@ end7e4b8c499cffe1fef73a16e6be54d4d2:
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 @@ end72da2611eaaffe407efa1cc45c23ade3:
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 @@ func rewriteValuegeneric_OpRsh32x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64Ux16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64Ux32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64Ux64(v *Value, config *Config) bool {
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 @@ end102f4cfd7979a2aa222d52c34ac6802d:
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 @@ end5ad037b910698f2847df90177c23a6ac:
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 @@ end16ea16aa61862207ea64e514369d608b:
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 @@ func rewriteValuegeneric_OpRsh64Ux8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh64x64(v *Value, config *Config) bool {
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 @@ endfa4609d6bea8a3e3d3a777b1968c97d9:
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 @@ ende62e0c67d3f04eb221646371a2a91d05:
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 @@ func rewriteValuegeneric_OpRsh64x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8Ux16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8Ux32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8Ux64(v *Value, config *Config) bool {
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 @@ enddd166e450d81ba7b466d61d2fbec178c:
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 @@ end570cb1d9db3c7bebd85e485eeb2c0969:
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 @@ endb63e1a7d1d91716ca0d9d74215361323:
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 @@ func rewriteValuegeneric_OpRsh8Ux8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8x16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8x32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpRsh8x64(v *Value, config *Config) bool {
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 @@ end3b90206d75365466dfd1368e5b69db35:
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 @@ end1e664cc720a11d1c769de8081cfa1de4:
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 @@ func rewriteValuegeneric_OpRsh8x8(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpSliceCap(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpSliceLen(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpSlicePtr(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpStore(v *Value, config *Config) bool {
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 @@ endd4f364b0adfc229d8c200af183d4c808:
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 @@ end2cff6d06f4440132f48ca374b6b1e9d8:
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 @@ end4e8ede6cc575a287795971da6b637973:
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 @@ end6ad675267724a87c8f852dd1e185e911:
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 @@ end7ea91abd44794f7653374502a5a405ea:
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 @@ endced898cb0a165662afe48ea44ad3318a:
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 @@ end3851a482d7bd37a93c4d81581e85b3ab:
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 @@ endd3a6ecebdad5899570a79fe5c62f34f1:
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 @@ endd5cc8c3dad7d24c845b0b88fc51487ae:
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 @@ endaa801a871178ae3256b3f6f5d9f13514:
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 @@ end45295326269ba18413dceb7b608a0b9d:
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 @@ func rewriteValuegeneric_OpStringLen(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpStringPtr(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpStructSelect(v *Value, config *Config) bool {
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 @@ end17af582e7eba5216b4a51fe6c9206d3c:
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 @@ end355cfff99c8e9af975c3ae450d49b7f9:
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 @@ end69baa65e494ef9ae154e0943b53734f9:
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 @@ endb0d98e2c46bb51c9abd4c3543392e0ec:
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 @@ end2e40457286d26c2f14ad4fd127946773:
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 @@ end3e3b96ad431206175d002ece87aa1409:
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 @@ end09f8a1ffa3d8c3124bc6d4083b941108:
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 @@ endd3ef25e605a927e9251be6d9221f4acf:
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 @@ end0438e22cc8f41123fa42009a81ee723a:
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 @@ end56a7c7781fee35eeff0a3652dc206012:
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 @@ func rewriteValuegeneric_OpSub16(v *Value, config *Config) bool {
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 @@ end5c6fab95c9dbeff5973119096bfd4e78:
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 @@ end493545258a8e7e79d005b34c712ddd0c:
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 @@ end83da541391be564f2a08464e674a49e7:
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 @@ end0dd8f250c457b9c005ecbed59fc2e758:
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 @@ func rewriteValuegeneric_OpSub32(v *Value, config *Config) bool {
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 @@ end7623799db780e1bcc42c6ea0df9c49d3:
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 @@ end391e2f2ba8c7502b62c0153ec69c4fbd:
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 @@ enda747581e798f199e07f4ad69747cd069:
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 @@ end70c1e60e58a6c106d060f10cd3f179ea:
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 @@ func rewriteValuegeneric_OpSub64(v *Value, config *Config) bool {
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 @@ end5a84a285ff0ff48b8ad3c64b15e3459f:
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 @@ enda80d30f6794bcf02cd4442b238f68333:
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 @@ end0387dc2b7bbe57d4aa54eab5d959da4b:
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 @@ end7d177451cf8959cb781f52d5ded46fff:
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 @@ func rewriteValuegeneric_OpSub8(v *Value, config *Config) bool {
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 @@ endc00ea11c7535529e211710574f5cff24:
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 @@ end0bfab5b6f1037e55dc049b79e2636678:
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 @@ end4e2ee15ef17611919a1a6b5f80bbfe18:
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 @@ endd79d561e14dc3d11da4c3bb20270b541:
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 @@ func rewriteValuegeneric_OpXor16(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpXor32(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpXor64(v *Value, config *Config) bool {
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 @@ func rewriteValuegeneric_OpXor8(v *Value, config *Config) bool {
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
}
......
......@@ -170,6 +170,13 @@ func (v *Value) resetArgs() {
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)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment