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) { ...@@ -122,10 +122,7 @@ func decomposeStringPhi(v *Value) {
ptr.AddArg(a.Block.NewValue1(v.Line, OpStringPtr, ptrType, a)) ptr.AddArg(a.Block.NewValue1(v.Line, OpStringPtr, ptrType, a))
len.AddArg(a.Block.NewValue1(v.Line, OpStringLen, lenType, a)) len.AddArg(a.Block.NewValue1(v.Line, OpStringLen, lenType, a))
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(ptr) v.AddArg(ptr)
v.AddArg(len) v.AddArg(len)
} }
...@@ -143,10 +140,7 @@ func decomposeSlicePhi(v *Value) { ...@@ -143,10 +140,7 @@ func decomposeSlicePhi(v *Value) {
len.AddArg(a.Block.NewValue1(v.Line, OpSliceLen, lenType, a)) len.AddArg(a.Block.NewValue1(v.Line, OpSliceLen, lenType, a))
cap.AddArg(a.Block.NewValue1(v.Line, OpSliceCap, lenType, a)) cap.AddArg(a.Block.NewValue1(v.Line, OpSliceCap, lenType, a))
} }
v.Op = OpSliceMake v.reset(OpSliceMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(ptr) v.AddArg(ptr)
v.AddArg(len) v.AddArg(len)
v.AddArg(cap) v.AddArg(cap)
...@@ -170,10 +164,7 @@ func decomposeComplexPhi(v *Value) { ...@@ -170,10 +164,7 @@ func decomposeComplexPhi(v *Value) {
real.AddArg(a.Block.NewValue1(v.Line, OpComplexReal, partType, a)) real.AddArg(a.Block.NewValue1(v.Line, OpComplexReal, partType, a))
imag.AddArg(a.Block.NewValue1(v.Line, OpComplexImag, partType, a)) imag.AddArg(a.Block.NewValue1(v.Line, OpComplexImag, partType, a))
} }
v.Op = OpComplexMake v.reset(OpComplexMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(real) v.AddArg(real)
v.AddArg(imag) v.AddArg(imag)
} }
...@@ -187,10 +178,7 @@ func decomposeInterfacePhi(v *Value) { ...@@ -187,10 +178,7 @@ func decomposeInterfacePhi(v *Value) {
itab.AddArg(a.Block.NewValue1(v.Line, OpITab, ptrType, a)) itab.AddArg(a.Block.NewValue1(v.Line, OpITab, ptrType, a))
data.AddArg(a.Block.NewValue1(v.Line, OpIData, ptrType, a)) data.AddArg(a.Block.NewValue1(v.Line, OpIData, ptrType, a))
} }
v.Op = OpIMake v.reset(OpIMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(itab) v.AddArg(itab)
v.AddArg(data) v.AddArg(data)
} }
...@@ -206,10 +194,7 @@ func decomposeStructPhi(v *Value) { ...@@ -206,10 +194,7 @@ func decomposeStructPhi(v *Value) {
fields[i].AddArg(a.Block.NewValue1I(v.Line, OpStructSelect, t.FieldType(i), i, a)) fields[i].AddArg(a.Block.NewValue1I(v.Line, OpStructSelect, t.FieldType(i), i, a))
} }
} }
v.Op = StructMakeOp(n) v.reset(StructMakeOp(n))
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArgs(fields[:n]...) v.AddArgs(fields[:n]...)
// Recursively decompose phis for each field. // Recursively decompose phis for each field.
......
...@@ -435,10 +435,7 @@ func genResult0(w io.Writer, arch arch, result string, alloc *int, top bool, loc ...@@ -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 // It in not safe in general to move a variable between blocks
// (and particularly not a phi node). // (and particularly not a phi node).
// Introduce a copy. // Introduce a copy.
fmt.Fprintf(w, "v.Op = OpCopy\n") fmt.Fprintf(w, "v.reset(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.Type = %s.Type\n", result) fmt.Fprintf(w, "v.Type = %s.Type\n", result)
fmt.Fprintf(w, "v.AddArg(%s)\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 ...@@ -478,13 +475,10 @@ func genResult0(w io.Writer, arch arch, result string, alloc *int, top bool, loc
var v string var v string
if top && loc == "b" { if top && loc == "b" {
v = "v" v = "v"
fmt.Fprintf(w, "v.reset(%s)\n", opName(s[0], arch))
if typeOverride { if typeOverride {
fmt.Fprintf(w, "v.Type = %s\n", opType) 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 { } else {
if opType == "" { if opType == "" {
log.Fatalf("sub-expression %s (op=%s) must have a type", result, s[0]) 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 ...@@ -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) fmt.Fprintf(w, "%s := %s.NewValue0(v.Line, %s, %s)\n", v, loc, opName(s[0], arch), opType)
if top { if top {
// Rewrite original into a copy // Rewrite original into a copy
fmt.Fprintf(w, "v.Op = OpCopy\n") fmt.Fprintf(w, "v.reset(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.AddArg(%s)\n", v) 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 { ...@@ -311,10 +311,7 @@ func rewriteValuegeneric_OpAdd16(v *Value, config *Config) bool {
goto end359c546ef662b7990116329cb30d6892 goto end359c546ef662b7990116329cb30d6892
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c + d v.AuxInt = c + d
return true return true
} }
...@@ -334,10 +331,7 @@ end359c546ef662b7990116329cb30d6892: ...@@ -334,10 +331,7 @@ end359c546ef662b7990116329cb30d6892:
if !(x.Op != OpConst16) { if !(x.Op != OpConst16) {
goto end89b69a89778f375b0ebbc683b0c63176 goto end89b69a89778f375b0ebbc683b0c63176
} }
v.Op = OpAdd16 v.reset(OpAdd16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -364,10 +358,7 @@ func rewriteValuegeneric_OpAdd32(v *Value, config *Config) bool { ...@@ -364,10 +358,7 @@ func rewriteValuegeneric_OpAdd32(v *Value, config *Config) bool {
goto enda3edaa9a512bd1d7a95f002c890bfb88 goto enda3edaa9a512bd1d7a95f002c890bfb88
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c + d v.AuxInt = c + d
return true return true
} }
...@@ -387,10 +378,7 @@ enda3edaa9a512bd1d7a95f002c890bfb88: ...@@ -387,10 +378,7 @@ enda3edaa9a512bd1d7a95f002c890bfb88:
if !(x.Op != OpConst32) { if !(x.Op != OpConst32) {
goto end28a8c474bfa6968950dce0ed73b14a0b goto end28a8c474bfa6968950dce0ed73b14a0b
} }
v.Op = OpAdd32 v.reset(OpAdd32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -417,10 +405,7 @@ func rewriteValuegeneric_OpAdd64(v *Value, config *Config) bool { ...@@ -417,10 +405,7 @@ func rewriteValuegeneric_OpAdd64(v *Value, config *Config) bool {
goto end8c46df6f85a11cb1d594076b0e467908 goto end8c46df6f85a11cb1d594076b0e467908
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c + d v.AuxInt = c + d
return true return true
} }
...@@ -440,10 +425,7 @@ end8c46df6f85a11cb1d594076b0e467908: ...@@ -440,10 +425,7 @@ end8c46df6f85a11cb1d594076b0e467908:
if !(x.Op != OpConst64) { if !(x.Op != OpConst64) {
goto end39caa6cf1044f5c47ddbeb062d1a13bd goto end39caa6cf1044f5c47ddbeb062d1a13bd
} }
v.Op = OpAdd64 v.reset(OpAdd64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -470,10 +452,7 @@ func rewriteValuegeneric_OpAdd8(v *Value, config *Config) bool { ...@@ -470,10 +452,7 @@ func rewriteValuegeneric_OpAdd8(v *Value, config *Config) bool {
goto end60c66721511a442aade8e4da2fb326bd goto end60c66721511a442aade8e4da2fb326bd
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c + d v.AuxInt = c + d
return true return true
} }
...@@ -493,10 +472,7 @@ end60c66721511a442aade8e4da2fb326bd: ...@@ -493,10 +472,7 @@ end60c66721511a442aade8e4da2fb326bd:
if !(x.Op != OpConst8) { if !(x.Op != OpConst8) {
goto end8c2901b8d12fa5c37f190783b4db8df5 goto end8c2901b8d12fa5c37f190783b4db8df5
} }
v.Op = OpAdd8 v.reset(OpAdd8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -519,10 +495,7 @@ func rewriteValuegeneric_OpAnd16(v *Value, config *Config) bool { ...@@ -519,10 +495,7 @@ func rewriteValuegeneric_OpAnd16(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end69ed6ee2a4fb0491b56c17f3c1926b10 goto end69ed6ee2a4fb0491b56c17f3c1926b10
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -543,10 +516,7 @@ func rewriteValuegeneric_OpAnd32(v *Value, config *Config) bool { ...@@ -543,10 +516,7 @@ func rewriteValuegeneric_OpAnd32(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto endbbe8c3c5b2ca8f013aa178d856f3a99c goto endbbe8c3c5b2ca8f013aa178d856f3a99c
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -567,10 +537,7 @@ func rewriteValuegeneric_OpAnd64(v *Value, config *Config) bool { ...@@ -567,10 +537,7 @@ func rewriteValuegeneric_OpAnd64(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto endc9736bf24d2e5cd8d662e1bcf3164640 goto endc9736bf24d2e5cd8d662e1bcf3164640
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -591,10 +558,7 @@ func rewriteValuegeneric_OpAnd8(v *Value, config *Config) bool { ...@@ -591,10 +558,7 @@ func rewriteValuegeneric_OpAnd8(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto endeaf127389bd0d4b0e0e297830f8f463b goto endeaf127389bd0d4b0e0e297830f8f463b
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -616,10 +580,7 @@ func rewriteValuegeneric_OpArg(v *Value, config *Config) bool { ...@@ -616,10 +580,7 @@ func rewriteValuegeneric_OpArg(v *Value, config *Config) bool {
if !(v.Type.IsString()) { if !(v.Type.IsString()) {
goto end939d3f946bf61eb85b46b374e7afa9e9 goto end939d3f946bf61eb85b46b374e7afa9e9
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n v0.Aux = n
v0.AuxInt = off v0.AuxInt = off
...@@ -642,10 +603,7 @@ end939d3f946bf61eb85b46b374e7afa9e9: ...@@ -642,10 +603,7 @@ end939d3f946bf61eb85b46b374e7afa9e9:
if !(v.Type.IsSlice()) { if !(v.Type.IsSlice()) {
goto endab4b93ad3b1cf55e5bf25d1fd9cd498e goto endab4b93ad3b1cf55e5bf25d1fd9cd498e
} }
v.Op = OpSliceMake v.reset(OpSliceMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n v0.Aux = n
v0.AuxInt = off v0.AuxInt = off
...@@ -672,10 +630,7 @@ endab4b93ad3b1cf55e5bf25d1fd9cd498e: ...@@ -672,10 +630,7 @@ endab4b93ad3b1cf55e5bf25d1fd9cd498e:
if !(v.Type.IsInterface()) { if !(v.Type.IsInterface()) {
goto end851de8e588a39e81b4e2aef06566bf3e goto end851de8e588a39e81b4e2aef06566bf3e
} }
v.Op = OpIMake v.reset(OpIMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n v0.Aux = n
v0.AuxInt = off v0.AuxInt = off
...@@ -698,10 +653,7 @@ end851de8e588a39e81b4e2aef06566bf3e: ...@@ -698,10 +653,7 @@ end851de8e588a39e81b4e2aef06566bf3e:
if !(v.Type.IsComplex() && v.Type.Size() == 16) { if !(v.Type.IsComplex() && v.Type.Size() == 16) {
goto end0988fc6a62c810b2f4976cb6cf44387f goto end0988fc6a62c810b2f4976cb6cf44387f
} }
v.Op = OpComplexMake v.reset(OpComplexMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat64()) v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat64())
v0.Aux = n v0.Aux = n
v0.AuxInt = off v0.AuxInt = off
...@@ -724,10 +676,7 @@ end0988fc6a62c810b2f4976cb6cf44387f: ...@@ -724,10 +676,7 @@ end0988fc6a62c810b2f4976cb6cf44387f:
if !(v.Type.IsComplex() && v.Type.Size() == 8) { if !(v.Type.IsComplex() && v.Type.Size() == 8) {
goto enda348e93e0036873dd7089a2939c22e3e goto enda348e93e0036873dd7089a2939c22e3e
} }
v.Op = OpComplexMake v.reset(OpComplexMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat32()) v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat32())
v0.Aux = n v0.Aux = n
v0.AuxInt = off v0.AuxInt = off
...@@ -749,10 +698,7 @@ enda348e93e0036873dd7089a2939c22e3e: ...@@ -749,10 +698,7 @@ enda348e93e0036873dd7089a2939c22e3e:
if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) {
goto ende233eeefa826638b0e541bcca531d701 goto ende233eeefa826638b0e541bcca531d701
} }
v.Op = OpStructMake0 v.reset(OpStructMake0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
return true return true
} }
goto ende233eeefa826638b0e541bcca531d701 goto ende233eeefa826638b0e541bcca531d701
...@@ -768,10 +714,7 @@ ende233eeefa826638b0e541bcca531d701: ...@@ -768,10 +714,7 @@ ende233eeefa826638b0e541bcca531d701:
if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) {
goto ende953e77a0617051dd3f7ad4d58c9ab37 goto ende953e77a0617051dd3f7ad4d58c9ab37
} }
v.Op = OpStructMake1 v.reset(OpStructMake1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n v0.Aux = n
v0.AuxInt = off + t.FieldOff(0) v0.AuxInt = off + t.FieldOff(0)
...@@ -791,10 +734,7 @@ ende953e77a0617051dd3f7ad4d58c9ab37: ...@@ -791,10 +734,7 @@ ende953e77a0617051dd3f7ad4d58c9ab37:
if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) {
goto end9a008048978aabad9de0723212e60631 goto end9a008048978aabad9de0723212e60631
} }
v.Op = OpStructMake2 v.reset(OpStructMake2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n v0.Aux = n
v0.AuxInt = off + t.FieldOff(0) v0.AuxInt = off + t.FieldOff(0)
...@@ -818,10 +758,7 @@ end9a008048978aabad9de0723212e60631: ...@@ -818,10 +758,7 @@ end9a008048978aabad9de0723212e60631:
if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) {
goto end0196e61dbeebc6402f3aa1e9a182210b goto end0196e61dbeebc6402f3aa1e9a182210b
} }
v.Op = OpStructMake3 v.reset(OpStructMake3)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n v0.Aux = n
v0.AuxInt = off + t.FieldOff(0) v0.AuxInt = off + t.FieldOff(0)
...@@ -849,10 +786,7 @@ end0196e61dbeebc6402f3aa1e9a182210b: ...@@ -849,10 +786,7 @@ end0196e61dbeebc6402f3aa1e9a182210b:
if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) {
goto end6bc133c93e50cb14c2e6cc9401850738 goto end6bc133c93e50cb14c2e6cc9401850738
} }
v.Op = OpStructMake4 v.reset(OpStructMake4)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n v0.Aux = n
v0.AuxInt = off + t.FieldOff(0) v0.AuxInt = off + t.FieldOff(0)
...@@ -892,10 +826,7 @@ func rewriteValuegeneric_OpArrayIndex(v *Value, config *Config) bool { ...@@ -892,10 +826,7 @@ func rewriteValuegeneric_OpArrayIndex(v *Value, config *Config) bool {
if !(b == v.Args[0].Block) { if !(b == v.Args[0].Block) {
goto end68b373270d9d605c420497edefaa71df goto end68b373270d9d605c420497edefaa71df
} }
v.Op = OpLoad v.reset(OpLoad)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpPtrIndex, v.Type.PtrTo()) v0 := b.NewValue0(v.Line, OpPtrIndex, v.Type.PtrTo())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(idx) v0.AddArg(idx)
...@@ -919,10 +850,7 @@ func rewriteValuegeneric_OpCom16(v *Value, config *Config) bool { ...@@ -919,10 +850,7 @@ func rewriteValuegeneric_OpCom16(v *Value, config *Config) bool {
goto end1ea17710dd4dd7ba4e710e0e4c7b5a56 goto end1ea17710dd4dd7ba4e710e0e4c7b5a56
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -943,10 +871,7 @@ func rewriteValuegeneric_OpCom32(v *Value, config *Config) bool { ...@@ -943,10 +871,7 @@ func rewriteValuegeneric_OpCom32(v *Value, config *Config) bool {
goto end9a04ed536496e292c27bef4414128cbf goto end9a04ed536496e292c27bef4414128cbf
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -967,10 +892,7 @@ func rewriteValuegeneric_OpCom64(v *Value, config *Config) bool { ...@@ -967,10 +892,7 @@ func rewriteValuegeneric_OpCom64(v *Value, config *Config) bool {
goto ended44e29d5968f0f7b86972b7bf417ab3 goto ended44e29d5968f0f7b86972b7bf417ab3
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -991,10 +913,7 @@ func rewriteValuegeneric_OpCom8(v *Value, config *Config) bool { ...@@ -991,10 +913,7 @@ func rewriteValuegeneric_OpCom8(v *Value, config *Config) bool {
goto end4d92ff3ba567d9afd38fc9ca113602ad goto end4d92ff3ba567d9afd38fc9ca113602ad
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -1015,10 +934,7 @@ func rewriteValuegeneric_OpComplexImag(v *Value, config *Config) bool { ...@@ -1015,10 +934,7 @@ func rewriteValuegeneric_OpComplexImag(v *Value, config *Config) bool {
goto endec3009fd8727d03002021997936e091f goto endec3009fd8727d03002021997936e091f
} }
imag := v.Args[0].Args[1] imag := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = imag.Type v.Type = imag.Type
v.AddArg(imag) v.AddArg(imag)
return true return true
...@@ -1039,10 +955,7 @@ func rewriteValuegeneric_OpComplexReal(v *Value, config *Config) bool { ...@@ -1039,10 +955,7 @@ func rewriteValuegeneric_OpComplexReal(v *Value, config *Config) bool {
goto end8db3e16bd59af1adaa4b734c8adcc71d goto end8db3e16bd59af1adaa4b734c8adcc71d
} }
real := v.Args[0].Args[0] real := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = real.Type v.Type = real.Type
v.AddArg(real) v.AddArg(real)
return true return true
...@@ -1059,10 +972,7 @@ func rewriteValuegeneric_OpConstInterface(v *Value, config *Config) bool { ...@@ -1059,10 +972,7 @@ func rewriteValuegeneric_OpConstInterface(v *Value, config *Config) bool {
// cond: // cond:
// result: (IMake (ConstNil <config.fe.TypeBytePtr()>) (ConstNil <config.fe.TypeBytePtr()>)) // result: (IMake (ConstNil <config.fe.TypeBytePtr()>) (ConstNil <config.fe.TypeBytePtr()>))
{ {
v.Op = OpIMake v.reset(OpIMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0) v.AddArg(v0)
v1 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v1 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
...@@ -1084,10 +994,7 @@ func rewriteValuegeneric_OpConstSlice(v *Value, config *Config) bool { ...@@ -1084,10 +994,7 @@ func rewriteValuegeneric_OpConstSlice(v *Value, config *Config) bool {
if !(config.PtrSize == 4) { if !(config.PtrSize == 4) {
goto end9ba6baf9c7247b1f5ba4099c0c3910ce goto end9ba6baf9c7247b1f5ba4099c0c3910ce
} }
v.Op = OpSliceMake v.reset(OpSliceMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0) v.AddArg(v0)
v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt()) v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
...@@ -1108,10 +1015,7 @@ end9ba6baf9c7247b1f5ba4099c0c3910ce: ...@@ -1108,10 +1015,7 @@ end9ba6baf9c7247b1f5ba4099c0c3910ce:
if !(config.PtrSize == 8) { if !(config.PtrSize == 8) {
goto endabee2aa6bd3e3261628f677221ad2640 goto endabee2aa6bd3e3261628f677221ad2640
} }
v.Op = OpSliceMake v.reset(OpSliceMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0) v.AddArg(v0)
v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt()) v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
...@@ -1138,10 +1042,7 @@ func rewriteValuegeneric_OpConstString(v *Value, config *Config) bool { ...@@ -1138,10 +1042,7 @@ func rewriteValuegeneric_OpConstString(v *Value, config *Config) bool {
if !(config.PtrSize == 4 && s.(string) == "") { if !(config.PtrSize == 4 && s.(string) == "") {
goto end85d5f388ba947643af63cdc68c1155a5 goto end85d5f388ba947643af63cdc68c1155a5
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0) v.AddArg(v0)
v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt()) v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
...@@ -1160,10 +1061,7 @@ end85d5f388ba947643af63cdc68c1155a5: ...@@ -1160,10 +1061,7 @@ end85d5f388ba947643af63cdc68c1155a5:
if !(config.PtrSize == 8 && s.(string) == "") { if !(config.PtrSize == 8 && s.(string) == "") {
goto endc807259a5ed2760fbbd3dc7386641343 goto endc807259a5ed2760fbbd3dc7386641343
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0) v.AddArg(v0)
v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt()) v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
...@@ -1182,10 +1080,7 @@ endc807259a5ed2760fbbd3dc7386641343: ...@@ -1182,10 +1080,7 @@ endc807259a5ed2760fbbd3dc7386641343:
if !(config.PtrSize == 4 && s.(string) != "") { if !(config.PtrSize == 4 && s.(string) != "") {
goto end107a700a4519d18f418602421444ddb6 goto end107a700a4519d18f418602421444ddb6
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
v0.Aux = config.fe.StringData(s.(string)) v0.Aux = config.fe.StringData(s.(string))
v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr()) v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
...@@ -1207,10 +1102,7 @@ end107a700a4519d18f418602421444ddb6: ...@@ -1207,10 +1102,7 @@ end107a700a4519d18f418602421444ddb6:
if !(config.PtrSize == 8 && s.(string) != "") { if !(config.PtrSize == 8 && s.(string) != "") {
goto end7ce9db29d17866f26d21e6e12f442e54 goto end7ce9db29d17866f26d21e6e12f442e54
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
v0.Aux = config.fe.StringData(s.(string)) v0.Aux = config.fe.StringData(s.(string))
v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr()) v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
...@@ -1245,10 +1137,7 @@ func rewriteValuegeneric_OpConvert(v *Value, config *Config) bool { ...@@ -1245,10 +1137,7 @@ func rewriteValuegeneric_OpConvert(v *Value, config *Config) bool {
if v.Args[1] != mem { if v.Args[1] != mem {
goto endbbc9f1666b4d39a130e1b86f109e7c1b goto endbbc9f1666b4d39a130e1b86f109e7c1b
} }
v.Op = OpAdd64 v.reset(OpAdd64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(ptr) v.AddArg(ptr)
v.AddArg(off) v.AddArg(off)
return true return true
...@@ -1268,10 +1157,7 @@ endbbc9f1666b4d39a130e1b86f109e7c1b: ...@@ -1268,10 +1157,7 @@ endbbc9f1666b4d39a130e1b86f109e7c1b:
if v.Args[1] != mem { if v.Args[1] != mem {
goto end98c5e0ca257eb216989171786f91b42d goto end98c5e0ca257eb216989171786f91b42d
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = ptr.Type v.Type = ptr.Type
v.AddArg(ptr) v.AddArg(ptr)
return true return true
...@@ -1292,10 +1178,7 @@ func rewriteValuegeneric_OpEq16(v *Value, config *Config) bool { ...@@ -1292,10 +1178,7 @@ func rewriteValuegeneric_OpEq16(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end0c0fe5fdfba3821add3448fd3f1fc6b7 goto end0c0fe5fdfba3821add3448fd3f1fc6b7
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 1 v.AuxInt = 1
return true return true
} }
...@@ -1322,10 +1205,7 @@ end0c0fe5fdfba3821add3448fd3f1fc6b7: ...@@ -1322,10 +1205,7 @@ end0c0fe5fdfba3821add3448fd3f1fc6b7:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpEq16 v.reset(OpEq16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -1348,10 +1228,7 @@ end79c830afa265161fc0f0532c4c4e7f50: ...@@ -1348,10 +1228,7 @@ end79c830afa265161fc0f0532c4c4e7f50:
if !(x.Op != OpConst16) { if !(x.Op != OpConst16) {
goto end5d89fe1eeb145f14e11578f41282c904 goto end5d89fe1eeb145f14e11578f41282c904
} }
v.Op = OpEq16 v.reset(OpEq16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -1373,10 +1250,7 @@ end5d89fe1eeb145f14e11578f41282c904: ...@@ -1373,10 +1250,7 @@ end5d89fe1eeb145f14e11578f41282c904:
goto end4532e1d01c10d8906fe1da14f9dfaa88 goto end4532e1d01c10d8906fe1da14f9dfaa88
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) == int16(d)) v.AuxInt = b2i(int16(c) == int16(d))
return true return true
} }
...@@ -1396,10 +1270,7 @@ func rewriteValuegeneric_OpEq32(v *Value, config *Config) bool { ...@@ -1396,10 +1270,7 @@ func rewriteValuegeneric_OpEq32(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end6da547ec4ee93d787434f3bda873e4a0 goto end6da547ec4ee93d787434f3bda873e4a0
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 1 v.AuxInt = 1
return true return true
} }
...@@ -1426,10 +1297,7 @@ end6da547ec4ee93d787434f3bda873e4a0: ...@@ -1426,10 +1297,7 @@ end6da547ec4ee93d787434f3bda873e4a0:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpEq32 v.reset(OpEq32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -1452,10 +1320,7 @@ end1a69730a32c6e432784dcdf643320ecd: ...@@ -1452,10 +1320,7 @@ end1a69730a32c6e432784dcdf643320ecd:
if !(x.Op != OpConst32) { if !(x.Op != OpConst32) {
goto end0ca4ef4cf416ec3083d38667e263cf45 goto end0ca4ef4cf416ec3083d38667e263cf45
} }
v.Op = OpEq32 v.reset(OpEq32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -1477,10 +1342,7 @@ end0ca4ef4cf416ec3083d38667e263cf45: ...@@ -1477,10 +1342,7 @@ end0ca4ef4cf416ec3083d38667e263cf45:
goto end00a2464e02c9ca00e8d0077acacbb5ad goto end00a2464e02c9ca00e8d0077acacbb5ad
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) == int32(d)) v.AuxInt = b2i(int32(c) == int32(d))
return true return true
} }
...@@ -1500,10 +1362,7 @@ func rewriteValuegeneric_OpEq64(v *Value, config *Config) bool { ...@@ -1500,10 +1362,7 @@ func rewriteValuegeneric_OpEq64(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto endb1d471cc503ba8bb05440f01dbf33d81 goto endb1d471cc503ba8bb05440f01dbf33d81
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 1 v.AuxInt = 1
return true return true
} }
...@@ -1530,10 +1389,7 @@ endb1d471cc503ba8bb05440f01dbf33d81: ...@@ -1530,10 +1389,7 @@ endb1d471cc503ba8bb05440f01dbf33d81:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpEq64 v.reset(OpEq64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -1556,10 +1412,7 @@ endffd67f3b83f6972cd459153d318f714d: ...@@ -1556,10 +1412,7 @@ endffd67f3b83f6972cd459153d318f714d:
if !(x.Op != OpConst64) { if !(x.Op != OpConst64) {
goto endc2ecf8254dc736e97c5815362d0b477d goto endc2ecf8254dc736e97c5815362d0b477d
} }
v.Op = OpEq64 v.reset(OpEq64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -1581,10 +1434,7 @@ endc2ecf8254dc736e97c5815362d0b477d: ...@@ -1581,10 +1434,7 @@ endc2ecf8254dc736e97c5815362d0b477d:
goto end405568a707dbbc86432e91f4ce7d97d7 goto end405568a707dbbc86432e91f4ce7d97d7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) == int64(d)) v.AuxInt = b2i(int64(c) == int64(d))
return true return true
} }
...@@ -1604,10 +1454,7 @@ func rewriteValuegeneric_OpEq8(v *Value, config *Config) bool { ...@@ -1604,10 +1454,7 @@ func rewriteValuegeneric_OpEq8(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto enda66da0d3e7e51624ee46527727c48a9a goto enda66da0d3e7e51624ee46527727c48a9a
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 1 v.AuxInt = 1
return true return true
} }
...@@ -1634,10 +1481,7 @@ enda66da0d3e7e51624ee46527727c48a9a: ...@@ -1634,10 +1481,7 @@ enda66da0d3e7e51624ee46527727c48a9a:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpEq8 v.reset(OpEq8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -1660,10 +1504,7 @@ end6912961350bb485f56ef176522aa683b: ...@@ -1660,10 +1504,7 @@ end6912961350bb485f56ef176522aa683b:
if !(x.Op != OpConst8) { if !(x.Op != OpConst8) {
goto end70d0b569427b24e7a912a1aa8fab3b20 goto end70d0b569427b24e7a912a1aa8fab3b20
} }
v.Op = OpEq8 v.reset(OpEq8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -1685,10 +1526,7 @@ end70d0b569427b24e7a912a1aa8fab3b20: ...@@ -1685,10 +1526,7 @@ end70d0b569427b24e7a912a1aa8fab3b20:
goto endd49f3700ba2d1e500d3ab4fa34fd090d goto endd49f3700ba2d1e500d3ab4fa34fd090d
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) == int8(d)) v.AuxInt = b2i(int8(c) == int8(d))
return true return true
} }
...@@ -1706,10 +1544,7 @@ func rewriteValuegeneric_OpEqInter(v *Value, config *Config) bool { ...@@ -1706,10 +1544,7 @@ func rewriteValuegeneric_OpEqInter(v *Value, config *Config) bool {
{ {
x := v.Args[0] x := v.Args[0]
y := v.Args[1] y := v.Args[1]
v.Op = OpEqPtr v.reset(OpEqPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v0.AddArg(x) v0.AddArg(x)
v.AddArg(v0) v.AddArg(v0)
...@@ -1734,10 +1569,7 @@ func rewriteValuegeneric_OpEqPtr(v *Value, config *Config) bool { ...@@ -1734,10 +1569,7 @@ func rewriteValuegeneric_OpEqPtr(v *Value, config *Config) bool {
if v.Args[1].Op != OpConstNil { if v.Args[1].Op != OpConstNil {
goto ende701cdb6a2c1fff4d4b283b7f8f6178b goto ende701cdb6a2c1fff4d4b283b7f8f6178b
} }
v.Op = OpNot v.reset(OpNot)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool()) v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
v0.AddArg(p) v0.AddArg(p)
v.AddArg(v0) v.AddArg(v0)
...@@ -1754,10 +1586,7 @@ ende701cdb6a2c1fff4d4b283b7f8f6178b: ...@@ -1754,10 +1586,7 @@ ende701cdb6a2c1fff4d4b283b7f8f6178b:
goto end7cdc0d5c38fbffe6287c8928803b038e goto end7cdc0d5c38fbffe6287c8928803b038e
} }
p := v.Args[1] p := v.Args[1]
v.Op = OpNot v.reset(OpNot)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool()) v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
v0.AddArg(p) v0.AddArg(p)
v.AddArg(v0) v.AddArg(v0)
...@@ -1777,10 +1606,7 @@ func rewriteValuegeneric_OpEqSlice(v *Value, config *Config) bool { ...@@ -1777,10 +1606,7 @@ func rewriteValuegeneric_OpEqSlice(v *Value, config *Config) bool {
{ {
x := v.Args[0] x := v.Args[0]
y := v.Args[1] y := v.Args[1]
v.Op = OpEqPtr v.reset(OpEqPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v0.AddArg(x) v0.AddArg(x)
v.AddArg(v0) v.AddArg(v0)
...@@ -1809,10 +1635,7 @@ func rewriteValuegeneric_OpGeq16(v *Value, config *Config) bool { ...@@ -1809,10 +1635,7 @@ func rewriteValuegeneric_OpGeq16(v *Value, config *Config) bool {
goto endbac100e9f1065e7d2ff863951f686f4b goto endbac100e9f1065e7d2ff863951f686f4b
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) >= int16(d)) v.AuxInt = b2i(int16(c) >= int16(d))
return true return true
} }
...@@ -1836,10 +1659,7 @@ func rewriteValuegeneric_OpGeq16U(v *Value, config *Config) bool { ...@@ -1836,10 +1659,7 @@ func rewriteValuegeneric_OpGeq16U(v *Value, config *Config) bool {
goto end11c6acbc5827fc9508424b0ffcf98b34 goto end11c6acbc5827fc9508424b0ffcf98b34
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint16(c) >= uint16(d)) v.AuxInt = b2i(uint16(c) >= uint16(d))
return true return true
} }
...@@ -1863,10 +1683,7 @@ func rewriteValuegeneric_OpGeq32(v *Value, config *Config) bool { ...@@ -1863,10 +1683,7 @@ func rewriteValuegeneric_OpGeq32(v *Value, config *Config) bool {
goto end89ced97524ac75045911ca7cf6d44b28 goto end89ced97524ac75045911ca7cf6d44b28
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) >= int32(d)) v.AuxInt = b2i(int32(c) >= int32(d))
return true return true
} }
...@@ -1890,10 +1707,7 @@ func rewriteValuegeneric_OpGeq32U(v *Value, config *Config) bool { ...@@ -1890,10 +1707,7 @@ func rewriteValuegeneric_OpGeq32U(v *Value, config *Config) bool {
goto end92fbe85c7bbbf0db287932822bdde991 goto end92fbe85c7bbbf0db287932822bdde991
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint32(c) >= uint32(d)) v.AuxInt = b2i(uint32(c) >= uint32(d))
return true return true
} }
...@@ -1917,10 +1731,7 @@ func rewriteValuegeneric_OpGeq64(v *Value, config *Config) bool { ...@@ -1917,10 +1731,7 @@ func rewriteValuegeneric_OpGeq64(v *Value, config *Config) bool {
goto end08a5a4bff12a346befe05ad561b080ac goto end08a5a4bff12a346befe05ad561b080ac
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) >= int64(d)) v.AuxInt = b2i(int64(c) >= int64(d))
return true return true
} }
...@@ -1944,10 +1755,7 @@ func rewriteValuegeneric_OpGeq64U(v *Value, config *Config) bool { ...@@ -1944,10 +1755,7 @@ func rewriteValuegeneric_OpGeq64U(v *Value, config *Config) bool {
goto endd72c497b6cc2b01d43a39ec12d5010b3 goto endd72c497b6cc2b01d43a39ec12d5010b3
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint64(c) >= uint64(d)) v.AuxInt = b2i(uint64(c) >= uint64(d))
return true return true
} }
...@@ -1971,10 +1779,7 @@ func rewriteValuegeneric_OpGeq8(v *Value, config *Config) bool { ...@@ -1971,10 +1779,7 @@ func rewriteValuegeneric_OpGeq8(v *Value, config *Config) bool {
goto endea141068e84038c63cbdd87a8cb227d7 goto endea141068e84038c63cbdd87a8cb227d7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) >= int8(d)) v.AuxInt = b2i(int8(c) >= int8(d))
return true return true
} }
...@@ -1998,10 +1803,7 @@ func rewriteValuegeneric_OpGeq8U(v *Value, config *Config) bool { ...@@ -1998,10 +1803,7 @@ func rewriteValuegeneric_OpGeq8U(v *Value, config *Config) bool {
goto end47c128ccdc54151a243c5856b0c52ef1 goto end47c128ccdc54151a243c5856b0c52ef1
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint8(c) >= uint8(d)) v.AuxInt = b2i(uint8(c) >= uint8(d))
return true return true
} }
...@@ -2025,10 +1827,7 @@ func rewriteValuegeneric_OpGreater16(v *Value, config *Config) bool { ...@@ -2025,10 +1827,7 @@ func rewriteValuegeneric_OpGreater16(v *Value, config *Config) bool {
goto end390bae49463ace4d703dd24e18920f66 goto end390bae49463ace4d703dd24e18920f66
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) > int16(d)) v.AuxInt = b2i(int16(c) > int16(d))
return true return true
} }
...@@ -2052,10 +1851,7 @@ func rewriteValuegeneric_OpGreater16U(v *Value, config *Config) bool { ...@@ -2052,10 +1851,7 @@ func rewriteValuegeneric_OpGreater16U(v *Value, config *Config) bool {
goto end89ba3caf5c156fa6d908ac04c058187b goto end89ba3caf5c156fa6d908ac04c058187b
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint16(c) > uint16(d)) v.AuxInt = b2i(uint16(c) > uint16(d))
return true return true
} }
...@@ -2079,10 +1875,7 @@ func rewriteValuegeneric_OpGreater32(v *Value, config *Config) bool { ...@@ -2079,10 +1875,7 @@ func rewriteValuegeneric_OpGreater32(v *Value, config *Config) bool {
goto end86482a9dc6439e8470da5352dd74d68d goto end86482a9dc6439e8470da5352dd74d68d
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) > int32(d)) v.AuxInt = b2i(int32(c) > int32(d))
return true return true
} }
...@@ -2106,10 +1899,7 @@ func rewriteValuegeneric_OpGreater32U(v *Value, config *Config) bool { ...@@ -2106,10 +1899,7 @@ func rewriteValuegeneric_OpGreater32U(v *Value, config *Config) bool {
goto end1bf3f05c1e3599a969b8be1f5f6949e4 goto end1bf3f05c1e3599a969b8be1f5f6949e4
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint32(c) > uint32(d)) v.AuxInt = b2i(uint32(c) > uint32(d))
return true return true
} }
...@@ -2133,10 +1923,7 @@ func rewriteValuegeneric_OpGreater64(v *Value, config *Config) bool { ...@@ -2133,10 +1923,7 @@ func rewriteValuegeneric_OpGreater64(v *Value, config *Config) bool {
goto end96a82e893fda4882f23b6bab5f7fbff7 goto end96a82e893fda4882f23b6bab5f7fbff7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) > int64(d)) v.AuxInt = b2i(int64(c) > int64(d))
return true return true
} }
...@@ -2160,10 +1947,7 @@ func rewriteValuegeneric_OpGreater64U(v *Value, config *Config) bool { ...@@ -2160,10 +1947,7 @@ func rewriteValuegeneric_OpGreater64U(v *Value, config *Config) bool {
goto end2d8f5ad85fbffeb92af985a888f6fa69 goto end2d8f5ad85fbffeb92af985a888f6fa69
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint64(c) > uint64(d)) v.AuxInt = b2i(uint64(c) > uint64(d))
return true return true
} }
...@@ -2187,10 +1971,7 @@ func rewriteValuegeneric_OpGreater8(v *Value, config *Config) bool { ...@@ -2187,10 +1971,7 @@ func rewriteValuegeneric_OpGreater8(v *Value, config *Config) bool {
goto ende221967c7516b7749109cf8343fe9c83 goto ende221967c7516b7749109cf8343fe9c83
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) > int8(d)) v.AuxInt = b2i(int8(c) > int8(d))
return true return true
} }
...@@ -2214,10 +1995,7 @@ func rewriteValuegeneric_OpGreater8U(v *Value, config *Config) bool { ...@@ -2214,10 +1995,7 @@ func rewriteValuegeneric_OpGreater8U(v *Value, config *Config) bool {
goto enda9398c8188156dd46689fa2939147525 goto enda9398c8188156dd46689fa2939147525
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint8(c) > uint8(d)) v.AuxInt = b2i(uint8(c) > uint8(d))
return true return true
} }
...@@ -2237,10 +2015,7 @@ func rewriteValuegeneric_OpIData(v *Value, config *Config) bool { ...@@ -2237,10 +2015,7 @@ func rewriteValuegeneric_OpIData(v *Value, config *Config) bool {
goto endbfa1bb944cdc07933effb16a35152e12 goto endbfa1bb944cdc07933effb16a35152e12
} }
data := v.Args[0].Args[1] data := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = data.Type v.Type = data.Type
v.AddArg(data) v.AddArg(data)
return true return true
...@@ -2261,10 +2036,7 @@ func rewriteValuegeneric_OpITab(v *Value, config *Config) bool { ...@@ -2261,10 +2036,7 @@ func rewriteValuegeneric_OpITab(v *Value, config *Config) bool {
goto endfcbb9414a776ff9c8512da3e0f4d8fbd goto endfcbb9414a776ff9c8512da3e0f4d8fbd
} }
itab := v.Args[0].Args[0] itab := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = itab.Type v.Type = itab.Type
v.AddArg(itab) v.AddArg(itab)
return true return true
...@@ -2289,10 +2061,7 @@ func rewriteValuegeneric_OpIsInBounds(v *Value, config *Config) bool { ...@@ -2289,10 +2061,7 @@ func rewriteValuegeneric_OpIsInBounds(v *Value, config *Config) bool {
goto endf0a2ecfe84b293de6ff0919e45d19d9d goto endf0a2ecfe84b293de6ff0919e45d19d9d
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(inBounds32(c, d)) v.AuxInt = b2i(inBounds32(c, d))
return true return true
} }
...@@ -2311,10 +2080,7 @@ endf0a2ecfe84b293de6ff0919e45d19d9d: ...@@ -2311,10 +2080,7 @@ endf0a2ecfe84b293de6ff0919e45d19d9d:
goto end4b406f402c135f50f71effcc904ecb2b goto end4b406f402c135f50f71effcc904ecb2b
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(inBounds64(c, d)) v.AuxInt = b2i(inBounds64(c, d))
return true return true
} }
...@@ -2338,10 +2104,7 @@ func rewriteValuegeneric_OpIsSliceInBounds(v *Value, config *Config) bool { ...@@ -2338,10 +2104,7 @@ func rewriteValuegeneric_OpIsSliceInBounds(v *Value, config *Config) bool {
goto end5e84a230c28cac987437cfed8f432cc3 goto end5e84a230c28cac987437cfed8f432cc3
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(sliceInBounds32(c, d)) v.AuxInt = b2i(sliceInBounds32(c, d))
return true return true
} }
...@@ -2360,10 +2123,7 @@ end5e84a230c28cac987437cfed8f432cc3: ...@@ -2360,10 +2123,7 @@ end5e84a230c28cac987437cfed8f432cc3:
goto end3880a6fe20ad4152e98f76d84da233a7 goto end3880a6fe20ad4152e98f76d84da233a7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(sliceInBounds64(c, d)) v.AuxInt = b2i(sliceInBounds64(c, d))
return true return true
} }
...@@ -2387,10 +2147,7 @@ func rewriteValuegeneric_OpLeq16(v *Value, config *Config) bool { ...@@ -2387,10 +2147,7 @@ func rewriteValuegeneric_OpLeq16(v *Value, config *Config) bool {
goto end76b1c51f9b7cd7ee2f75b9f7057569de goto end76b1c51f9b7cd7ee2f75b9f7057569de
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) <= int16(d)) v.AuxInt = b2i(int16(c) <= int16(d))
return true return true
} }
...@@ -2414,10 +2171,7 @@ func rewriteValuegeneric_OpLeq16U(v *Value, config *Config) bool { ...@@ -2414,10 +2171,7 @@ func rewriteValuegeneric_OpLeq16U(v *Value, config *Config) bool {
goto endf010fdf7f2c438ec18c33f493dd062aa goto endf010fdf7f2c438ec18c33f493dd062aa
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint16(c) <= uint16(d)) v.AuxInt = b2i(uint16(c) <= uint16(d))
return true return true
} }
...@@ -2441,10 +2195,7 @@ func rewriteValuegeneric_OpLeq32(v *Value, config *Config) bool { ...@@ -2441,10 +2195,7 @@ func rewriteValuegeneric_OpLeq32(v *Value, config *Config) bool {
goto end6c7d61cfd188680bea8a5e23f08ca1de goto end6c7d61cfd188680bea8a5e23f08ca1de
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) <= int32(d)) v.AuxInt = b2i(int32(c) <= int32(d))
return true return true
} }
...@@ -2468,10 +2219,7 @@ func rewriteValuegeneric_OpLeq32U(v *Value, config *Config) bool { ...@@ -2468,10 +2219,7 @@ func rewriteValuegeneric_OpLeq32U(v *Value, config *Config) bool {
goto end4363555333511ee9b649b36f1a0ba34e goto end4363555333511ee9b649b36f1a0ba34e
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint32(c) <= uint32(d)) v.AuxInt = b2i(uint32(c) <= uint32(d))
return true return true
} }
...@@ -2495,10 +2243,7 @@ func rewriteValuegeneric_OpLeq64(v *Value, config *Config) bool { ...@@ -2495,10 +2243,7 @@ func rewriteValuegeneric_OpLeq64(v *Value, config *Config) bool {
goto enddc865cd7ac2093abc7617bedbf371c22 goto enddc865cd7ac2093abc7617bedbf371c22
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) <= int64(d)) v.AuxInt = b2i(int64(c) <= int64(d))
return true return true
} }
...@@ -2522,10 +2267,7 @@ func rewriteValuegeneric_OpLeq64U(v *Value, config *Config) bool { ...@@ -2522,10 +2267,7 @@ func rewriteValuegeneric_OpLeq64U(v *Value, config *Config) bool {
goto end412eadb168738ba92f3f0705d4495305 goto end412eadb168738ba92f3f0705d4495305
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint64(c) <= uint64(d)) v.AuxInt = b2i(uint64(c) <= uint64(d))
return true return true
} }
...@@ -2549,10 +2291,7 @@ func rewriteValuegeneric_OpLeq8(v *Value, config *Config) bool { ...@@ -2549,10 +2291,7 @@ func rewriteValuegeneric_OpLeq8(v *Value, config *Config) bool {
goto endb5a459da8e18c40abc0c7a20e71d0187 goto endb5a459da8e18c40abc0c7a20e71d0187
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) <= int8(d)) v.AuxInt = b2i(int8(c) <= int8(d))
return true return true
} }
...@@ -2576,10 +2315,7 @@ func rewriteValuegeneric_OpLeq8U(v *Value, config *Config) bool { ...@@ -2576,10 +2315,7 @@ func rewriteValuegeneric_OpLeq8U(v *Value, config *Config) bool {
goto endd6622d55fcdf3fa7b08e7511cd3b7d85 goto endd6622d55fcdf3fa7b08e7511cd3b7d85
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint8(c) <= uint8(d)) v.AuxInt = b2i(uint8(c) <= uint8(d))
return true return true
} }
...@@ -2603,10 +2339,7 @@ func rewriteValuegeneric_OpLess16(v *Value, config *Config) bool { ...@@ -2603,10 +2339,7 @@ func rewriteValuegeneric_OpLess16(v *Value, config *Config) bool {
goto end0dc915d089f05e79589ebb5c498cc360 goto end0dc915d089f05e79589ebb5c498cc360
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) < int16(d)) v.AuxInt = b2i(int16(c) < int16(d))
return true return true
} }
...@@ -2630,10 +2363,7 @@ func rewriteValuegeneric_OpLess16U(v *Value, config *Config) bool { ...@@ -2630,10 +2363,7 @@ func rewriteValuegeneric_OpLess16U(v *Value, config *Config) bool {
goto endd2bb8249443788690946fc184631a00a goto endd2bb8249443788690946fc184631a00a
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint16(c) < uint16(d)) v.AuxInt = b2i(uint16(c) < uint16(d))
return true return true
} }
...@@ -2657,10 +2387,7 @@ func rewriteValuegeneric_OpLess32(v *Value, config *Config) bool { ...@@ -2657,10 +2387,7 @@ func rewriteValuegeneric_OpLess32(v *Value, config *Config) bool {
goto endc86f65e499688809d414f03539bec5bf goto endc86f65e499688809d414f03539bec5bf
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) < int32(d)) v.AuxInt = b2i(int32(c) < int32(d))
return true return true
} }
...@@ -2684,10 +2411,7 @@ func rewriteValuegeneric_OpLess32U(v *Value, config *Config) bool { ...@@ -2684,10 +2411,7 @@ func rewriteValuegeneric_OpLess32U(v *Value, config *Config) bool {
goto end2cc68b5247b1afb90a9d3923b28ff247 goto end2cc68b5247b1afb90a9d3923b28ff247
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint32(c) < uint32(d)) v.AuxInt = b2i(uint32(c) < uint32(d))
return true return true
} }
...@@ -2711,10 +2435,7 @@ func rewriteValuegeneric_OpLess64(v *Value, config *Config) bool { ...@@ -2711,10 +2435,7 @@ func rewriteValuegeneric_OpLess64(v *Value, config *Config) bool {
goto end505de73cd15125dbb59b05d8975d3128 goto end505de73cd15125dbb59b05d8975d3128
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) < int64(d)) v.AuxInt = b2i(int64(c) < int64(d))
return true return true
} }
...@@ -2738,10 +2459,7 @@ func rewriteValuegeneric_OpLess64U(v *Value, config *Config) bool { ...@@ -2738,10 +2459,7 @@ func rewriteValuegeneric_OpLess64U(v *Value, config *Config) bool {
goto endeb249ef36416cd1abf4f807026c059cd goto endeb249ef36416cd1abf4f807026c059cd
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint64(c) < uint64(d)) v.AuxInt = b2i(uint64(c) < uint64(d))
return true return true
} }
...@@ -2765,10 +2483,7 @@ func rewriteValuegeneric_OpLess8(v *Value, config *Config) bool { ...@@ -2765,10 +2483,7 @@ func rewriteValuegeneric_OpLess8(v *Value, config *Config) bool {
goto endef134de03bc8537ac1f38d5eccff7673 goto endef134de03bc8537ac1f38d5eccff7673
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) < int8(d)) v.AuxInt = b2i(int8(c) < int8(d))
return true return true
} }
...@@ -2792,10 +2507,7 @@ func rewriteValuegeneric_OpLess8U(v *Value, config *Config) bool { ...@@ -2792,10 +2507,7 @@ func rewriteValuegeneric_OpLess8U(v *Value, config *Config) bool {
goto end263ecdc279924bff8771dd1ac3f42222 goto end263ecdc279924bff8771dd1ac3f42222
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(uint8(c) < uint8(d)) v.AuxInt = b2i(uint8(c) < uint8(d))
return true return true
} }
...@@ -2815,10 +2527,7 @@ func rewriteValuegeneric_OpLoad(v *Value, config *Config) bool { ...@@ -2815,10 +2527,7 @@ func rewriteValuegeneric_OpLoad(v *Value, config *Config) bool {
if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 0 && config.fe.CanSSA(t)) {
goto end8d25f5c949948132921b6be29ede6bde goto end8d25f5c949948132921b6be29ede6bde
} }
v.Op = OpStructMake0 v.reset(OpStructMake0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
return true return true
} }
goto end8d25f5c949948132921b6be29ede6bde goto end8d25f5c949948132921b6be29ede6bde
...@@ -2834,10 +2543,7 @@ end8d25f5c949948132921b6be29ede6bde: ...@@ -2834,10 +2543,7 @@ end8d25f5c949948132921b6be29ede6bde:
if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 1 && config.fe.CanSSA(t)) {
goto endfe908e5a8617dd39df2f9b2b92e93ae5 goto endfe908e5a8617dd39df2f9b2b92e93ae5
} }
v.Op = OpStructMake1 v.reset(OpStructMake1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -2857,10 +2563,7 @@ endfe908e5a8617dd39df2f9b2b92e93ae5: ...@@ -2857,10 +2563,7 @@ endfe908e5a8617dd39df2f9b2b92e93ae5:
if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 2 && config.fe.CanSSA(t)) {
goto end20e20e64004b765012cfb80c575ef27b goto end20e20e64004b765012cfb80c575ef27b
} }
v.Op = OpStructMake2 v.reset(OpStructMake2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -2887,10 +2590,7 @@ end20e20e64004b765012cfb80c575ef27b: ...@@ -2887,10 +2590,7 @@ end20e20e64004b765012cfb80c575ef27b:
if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 3 && config.fe.CanSSA(t)) {
goto ende612bf71067ed67541735cdc8b5a3288 goto ende612bf71067ed67541735cdc8b5a3288
} }
v.Op = OpStructMake3 v.reset(OpStructMake3)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -2924,10 +2624,7 @@ ende612bf71067ed67541735cdc8b5a3288: ...@@ -2924,10 +2624,7 @@ ende612bf71067ed67541735cdc8b5a3288:
if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) { if !(t.IsStruct() && t.NumFields() == 4 && config.fe.CanSSA(t)) {
goto end46c66c64d9030f2cc9a7a767f67953d1 goto end46c66c64d9030f2cc9a7a767f67953d1
} }
v.Op = OpStructMake4 v.reset(OpStructMake4)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0)) v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -2968,10 +2665,7 @@ end46c66c64d9030f2cc9a7a767f67953d1: ...@@ -2968,10 +2665,7 @@ end46c66c64d9030f2cc9a7a767f67953d1:
if !(t.IsComplex() && t.Size() == 8) { if !(t.IsComplex() && t.Size() == 8) {
goto end665854b31b828893d90b36bb462ff381 goto end665854b31b828893d90b36bb462ff381
} }
v.Op = OpComplexMake v.reset(OpComplexMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat32()) v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat32())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -2998,10 +2692,7 @@ end665854b31b828893d90b36bb462ff381: ...@@ -2998,10 +2692,7 @@ end665854b31b828893d90b36bb462ff381:
if !(t.IsComplex() && t.Size() == 16) { if !(t.IsComplex() && t.Size() == 16) {
goto end1b106f89e0e3e26c613b957a7c98d8ad goto end1b106f89e0e3e26c613b957a7c98d8ad
} }
v.Op = OpComplexMake v.reset(OpComplexMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat64()) v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat64())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -3028,10 +2719,7 @@ end1b106f89e0e3e26c613b957a7c98d8ad: ...@@ -3028,10 +2719,7 @@ end1b106f89e0e3e26c613b957a7c98d8ad:
if !(t.IsString()) { if !(t.IsString()) {
goto enddd15a6f3d53a6ce7a19d4e181dd1c13a goto enddd15a6f3d53a6ce7a19d4e181dd1c13a
} }
v.Op = OpStringMake v.reset(OpStringMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -3058,10 +2746,7 @@ enddd15a6f3d53a6ce7a19d4e181dd1c13a: ...@@ -3058,10 +2746,7 @@ enddd15a6f3d53a6ce7a19d4e181dd1c13a:
if !(t.IsSlice()) { if !(t.IsSlice()) {
goto end65e8b0055aa7491b9b6066d9fe1b2c13 goto end65e8b0055aa7491b9b6066d9fe1b2c13
} }
v.Op = OpSliceMake v.reset(OpSliceMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -3095,10 +2780,7 @@ end65e8b0055aa7491b9b6066d9fe1b2c13: ...@@ -3095,10 +2780,7 @@ end65e8b0055aa7491b9b6066d9fe1b2c13:
if !(t.IsInterface()) { if !(t.IsInterface()) {
goto end12671c83ebe3ccbc8e53383765ee7675 goto end12671c83ebe3ccbc8e53383765ee7675
} }
v.Op = OpIMake v.reset(OpIMake)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr) v0.AddArg(ptr)
v0.AddArg(mem) v0.AddArg(mem)
...@@ -3130,10 +2812,7 @@ func rewriteValuegeneric_OpLsh16x16(v *Value, config *Config) bool { ...@@ -3130,10 +2812,7 @@ func rewriteValuegeneric_OpLsh16x16(v *Value, config *Config) bool {
goto end2f5aa78b30ebd2471e8d03a307923b06 goto end2f5aa78b30ebd2471e8d03a307923b06
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh16x64 v.reset(OpLsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -3158,10 +2837,7 @@ func rewriteValuegeneric_OpLsh16x32(v *Value, config *Config) bool { ...@@ -3158,10 +2837,7 @@ func rewriteValuegeneric_OpLsh16x32(v *Value, config *Config) bool {
goto endedeb000c8c97090261a47f08a2ff17e4 goto endedeb000c8c97090261a47f08a2ff17e4
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh16x64 v.reset(OpLsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -3188,10 +2864,7 @@ func rewriteValuegeneric_OpLsh16x64(v *Value, config *Config) bool { ...@@ -3188,10 +2864,7 @@ func rewriteValuegeneric_OpLsh16x64(v *Value, config *Config) bool {
goto endc9f0d91f3da4bdd46a634a62549810e0 goto endc9f0d91f3da4bdd46a634a62549810e0
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int16(c) << uint64(d)) v.AuxInt = int64(int16(c) << uint64(d))
return true return true
} }
...@@ -3209,10 +2882,7 @@ endc9f0d91f3da4bdd46a634a62549810e0: ...@@ -3209,10 +2882,7 @@ endc9f0d91f3da4bdd46a634a62549810e0:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end7ecc343739fab9b50a0bdff6e9d121e6 goto end7ecc343739fab9b50a0bdff6e9d121e6
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -3231,10 +2901,7 @@ end7ecc343739fab9b50a0bdff6e9d121e6: ...@@ -3231,10 +2901,7 @@ end7ecc343739fab9b50a0bdff6e9d121e6:
if !(uint64(c) >= 16) { if !(uint64(c) >= 16) {
goto end1d2c74d359df9d89b16c4f658a231dfe goto end1d2c74d359df9d89b16c4f658a231dfe
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -3261,10 +2928,7 @@ end1d2c74d359df9d89b16c4f658a231dfe: ...@@ -3261,10 +2928,7 @@ end1d2c74d359df9d89b16c4f658a231dfe:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end26a91e42735a02a30e94a998f54372dd goto end26a91e42735a02a30e94a998f54372dd
} }
v.Op = OpLsh16x64 v.reset(OpLsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -3289,10 +2953,7 @@ func rewriteValuegeneric_OpLsh16x8(v *Value, config *Config) bool { ...@@ -3289,10 +2953,7 @@ func rewriteValuegeneric_OpLsh16x8(v *Value, config *Config) bool {
goto endce2401b8a6c6190fe81d77e2d562a10c goto endce2401b8a6c6190fe81d77e2d562a10c
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh16x64 v.reset(OpLsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -3317,10 +2978,7 @@ func rewriteValuegeneric_OpLsh32x16(v *Value, config *Config) bool { ...@@ -3317,10 +2978,7 @@ func rewriteValuegeneric_OpLsh32x16(v *Value, config *Config) bool {
goto end7205eb3e315971143ac5584d07045570 goto end7205eb3e315971143ac5584d07045570
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh32x64 v.reset(OpLsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -3345,10 +3003,7 @@ func rewriteValuegeneric_OpLsh32x32(v *Value, config *Config) bool { ...@@ -3345,10 +3003,7 @@ func rewriteValuegeneric_OpLsh32x32(v *Value, config *Config) bool {
goto endc1a330b287199c80228e665a53881298 goto endc1a330b287199c80228e665a53881298
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh32x64 v.reset(OpLsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -3375,10 +3030,7 @@ func rewriteValuegeneric_OpLsh32x64(v *Value, config *Config) bool { ...@@ -3375,10 +3030,7 @@ func rewriteValuegeneric_OpLsh32x64(v *Value, config *Config) bool {
goto end5896bd9a3fe78f1e1712563642d33254 goto end5896bd9a3fe78f1e1712563642d33254
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int32(c) << uint64(d)) v.AuxInt = int64(int32(c) << uint64(d))
return true return true
} }
...@@ -3396,10 +3048,7 @@ end5896bd9a3fe78f1e1712563642d33254: ...@@ -3396,10 +3048,7 @@ end5896bd9a3fe78f1e1712563642d33254:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto endd9ce9639a91b11e601823be3d4d6c209 goto endd9ce9639a91b11e601823be3d4d6c209
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -3418,10 +3067,7 @@ endd9ce9639a91b11e601823be3d4d6c209: ...@@ -3418,10 +3067,7 @@ endd9ce9639a91b11e601823be3d4d6c209:
if !(uint64(c) >= 32) { if !(uint64(c) >= 32) {
goto end81247a2423f489be15859d3930738fdf goto end81247a2423f489be15859d3930738fdf
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -3448,10 +3094,7 @@ end81247a2423f489be15859d3930738fdf: ...@@ -3448,10 +3094,7 @@ end81247a2423f489be15859d3930738fdf:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto endf96a7c9571797fe61a5b63a4923d7e6e goto endf96a7c9571797fe61a5b63a4923d7e6e
} }
v.Op = OpLsh32x64 v.reset(OpLsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -3476,10 +3119,7 @@ func rewriteValuegeneric_OpLsh32x8(v *Value, config *Config) bool { ...@@ -3476,10 +3119,7 @@ func rewriteValuegeneric_OpLsh32x8(v *Value, config *Config) bool {
goto end1759d7c25a5bcda288e34d1d197c0b8f goto end1759d7c25a5bcda288e34d1d197c0b8f
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh32x64 v.reset(OpLsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -3504,10 +3144,7 @@ func rewriteValuegeneric_OpLsh64x16(v *Value, config *Config) bool { ...@@ -3504,10 +3144,7 @@ func rewriteValuegeneric_OpLsh64x16(v *Value, config *Config) bool {
goto enda649fbb5e14490c9eea9616550a76b5c goto enda649fbb5e14490c9eea9616550a76b5c
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh64x64 v.reset(OpLsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -3532,10 +3169,7 @@ func rewriteValuegeneric_OpLsh64x32(v *Value, config *Config) bool { ...@@ -3532,10 +3169,7 @@ func rewriteValuegeneric_OpLsh64x32(v *Value, config *Config) bool {
goto end40069675cde851a63cce81b1b02751f9 goto end40069675cde851a63cce81b1b02751f9
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh64x64 v.reset(OpLsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -3562,10 +3196,7 @@ func rewriteValuegeneric_OpLsh64x64(v *Value, config *Config) bool { ...@@ -3562,10 +3196,7 @@ func rewriteValuegeneric_OpLsh64x64(v *Value, config *Config) bool {
goto end9c157a23e021f659f1568566435ed57b goto end9c157a23e021f659f1568566435ed57b
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c << uint64(d) v.AuxInt = c << uint64(d)
return true return true
} }
...@@ -3583,10 +3214,7 @@ end9c157a23e021f659f1568566435ed57b: ...@@ -3583,10 +3214,7 @@ end9c157a23e021f659f1568566435ed57b:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end9f18ca0556dbb4b50fe888273fab20ca goto end9f18ca0556dbb4b50fe888273fab20ca
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -3605,10 +3233,7 @@ end9f18ca0556dbb4b50fe888273fab20ca: ...@@ -3605,10 +3233,7 @@ end9f18ca0556dbb4b50fe888273fab20ca:
if !(uint64(c) >= 64) { if !(uint64(c) >= 64) {
goto end33da2e0ce5ca3e0554564477ef422402 goto end33da2e0ce5ca3e0554564477ef422402
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -3635,10 +3260,7 @@ end33da2e0ce5ca3e0554564477ef422402: ...@@ -3635,10 +3260,7 @@ end33da2e0ce5ca3e0554564477ef422402:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end001c62ee580a700ec7b07ccaa3740ac2 goto end001c62ee580a700ec7b07ccaa3740ac2
} }
v.Op = OpLsh64x64 v.reset(OpLsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -3663,10 +3285,7 @@ func rewriteValuegeneric_OpLsh64x8(v *Value, config *Config) bool { ...@@ -3663,10 +3285,7 @@ func rewriteValuegeneric_OpLsh64x8(v *Value, config *Config) bool {
goto end4d9224069abdade8e405df343938d932 goto end4d9224069abdade8e405df343938d932
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh64x64 v.reset(OpLsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -3691,10 +3310,7 @@ func rewriteValuegeneric_OpLsh8x16(v *Value, config *Config) bool { ...@@ -3691,10 +3310,7 @@ func rewriteValuegeneric_OpLsh8x16(v *Value, config *Config) bool {
goto end0ad4a82e2eb4c7ca7407d79ec3aa5142 goto end0ad4a82e2eb4c7ca7407d79ec3aa5142
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh8x64 v.reset(OpLsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -3719,10 +3335,7 @@ func rewriteValuegeneric_OpLsh8x32(v *Value, config *Config) bool { ...@@ -3719,10 +3335,7 @@ func rewriteValuegeneric_OpLsh8x32(v *Value, config *Config) bool {
goto enddaacda113ecc79fe0621fd22ebc548dd goto enddaacda113ecc79fe0621fd22ebc548dd
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh8x64 v.reset(OpLsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -3749,10 +3362,7 @@ func rewriteValuegeneric_OpLsh8x64(v *Value, config *Config) bool { ...@@ -3749,10 +3362,7 @@ func rewriteValuegeneric_OpLsh8x64(v *Value, config *Config) bool {
goto endbc3297ea9642b97eb71f0a9735048d7b goto endbc3297ea9642b97eb71f0a9735048d7b
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int8(c) << uint64(d)) v.AuxInt = int64(int8(c) << uint64(d))
return true return true
} }
...@@ -3770,10 +3380,7 @@ endbc3297ea9642b97eb71f0a9735048d7b: ...@@ -3770,10 +3380,7 @@ endbc3297ea9642b97eb71f0a9735048d7b:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end715f3db41cccf963e25a20c33f618a04 goto end715f3db41cccf963e25a20c33f618a04
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -3792,10 +3399,7 @@ end715f3db41cccf963e25a20c33f618a04: ...@@ -3792,10 +3399,7 @@ end715f3db41cccf963e25a20c33f618a04:
if !(uint64(c) >= 8) { if !(uint64(c) >= 8) {
goto endb6749df4d0cdc0cd9acc627187d73488 goto endb6749df4d0cdc0cd9acc627187d73488
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -3822,10 +3426,7 @@ endb6749df4d0cdc0cd9acc627187d73488: ...@@ -3822,10 +3426,7 @@ endb6749df4d0cdc0cd9acc627187d73488:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end73a4878b6bbd21c9e22fb99226ef947e goto end73a4878b6bbd21c9e22fb99226ef947e
} }
v.Op = OpLsh8x64 v.reset(OpLsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -3850,10 +3451,7 @@ func rewriteValuegeneric_OpLsh8x8(v *Value, config *Config) bool { ...@@ -3850,10 +3451,7 @@ func rewriteValuegeneric_OpLsh8x8(v *Value, config *Config) bool {
goto end8b770597435467b0c96014624d522b33 goto end8b770597435467b0c96014624d522b33
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpLsh8x64 v.reset(OpLsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -3880,10 +3478,7 @@ func rewriteValuegeneric_OpMul16(v *Value, config *Config) bool { ...@@ -3880,10 +3478,7 @@ func rewriteValuegeneric_OpMul16(v *Value, config *Config) bool {
goto ende8dd468add3015aea24531cf3c89ccb7 goto ende8dd468add3015aea24531cf3c89ccb7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c * d v.AuxInt = c * d
return true return true
} }
...@@ -3907,10 +3502,7 @@ func rewriteValuegeneric_OpMul32(v *Value, config *Config) bool { ...@@ -3907,10 +3502,7 @@ func rewriteValuegeneric_OpMul32(v *Value, config *Config) bool {
goto end60b4523099fa7b55e2e872e05bd497a7 goto end60b4523099fa7b55e2e872e05bd497a7
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c * d v.AuxInt = c * d
return true return true
} }
...@@ -3934,10 +3526,7 @@ func rewriteValuegeneric_OpMul64(v *Value, config *Config) bool { ...@@ -3934,10 +3526,7 @@ func rewriteValuegeneric_OpMul64(v *Value, config *Config) bool {
goto end7aea1048b5d1230974b97f17238380ae goto end7aea1048b5d1230974b97f17238380ae
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c * d v.AuxInt = c * d
return true return true
} }
...@@ -3961,10 +3550,7 @@ func rewriteValuegeneric_OpMul8(v *Value, config *Config) bool { ...@@ -3961,10 +3550,7 @@ func rewriteValuegeneric_OpMul8(v *Value, config *Config) bool {
goto end2f1952fd654c4a62ff00511041728809 goto end2f1952fd654c4a62ff00511041728809
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c * d v.AuxInt = c * d
return true return true
} }
...@@ -3984,10 +3570,7 @@ func rewriteValuegeneric_OpNeq16(v *Value, config *Config) bool { ...@@ -3984,10 +3570,7 @@ func rewriteValuegeneric_OpNeq16(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto ende76a50b524aeb16c7aeccf5f5cc60c06 goto ende76a50b524aeb16c7aeccf5f5cc60c06
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -4014,10 +3597,7 @@ ende76a50b524aeb16c7aeccf5f5cc60c06: ...@@ -4014,10 +3597,7 @@ ende76a50b524aeb16c7aeccf5f5cc60c06:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpNeq16 v.reset(OpNeq16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -4040,10 +3620,7 @@ end552011bd97e6f92ebc2672aa1843eadd: ...@@ -4040,10 +3620,7 @@ end552011bd97e6f92ebc2672aa1843eadd:
if !(x.Op != OpConst16) { if !(x.Op != OpConst16) {
goto end0e45958f29e87997f632248aa9ee97e0 goto end0e45958f29e87997f632248aa9ee97e0
} }
v.Op = OpNeq16 v.reset(OpNeq16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -4065,10 +3642,7 @@ end0e45958f29e87997f632248aa9ee97e0: ...@@ -4065,10 +3642,7 @@ end0e45958f29e87997f632248aa9ee97e0:
goto end6302c9b645bb191982d28c2f846904d6 goto end6302c9b645bb191982d28c2f846904d6
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int16(c) != int16(d)) v.AuxInt = b2i(int16(c) != int16(d))
return true return true
} }
...@@ -4088,10 +3662,7 @@ func rewriteValuegeneric_OpNeq32(v *Value, config *Config) bool { ...@@ -4088,10 +3662,7 @@ func rewriteValuegeneric_OpNeq32(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end3713a608cffd29b40ff7c3b3f2585cbb goto end3713a608cffd29b40ff7c3b3f2585cbb
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -4118,10 +3689,7 @@ end3713a608cffd29b40ff7c3b3f2585cbb: ...@@ -4118,10 +3689,7 @@ end3713a608cffd29b40ff7c3b3f2585cbb:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpNeq32 v.reset(OpNeq32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -4144,10 +3712,7 @@ end93fc3b4a3639b965b414891111b16245: ...@@ -4144,10 +3712,7 @@ end93fc3b4a3639b965b414891111b16245:
if !(x.Op != OpConst32) { if !(x.Op != OpConst32) {
goto end5376f9ab90e282450f49011d0e0ce236 goto end5376f9ab90e282450f49011d0e0ce236
} }
v.Op = OpNeq32 v.reset(OpNeq32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -4169,10 +3734,7 @@ end5376f9ab90e282450f49011d0e0ce236: ...@@ -4169,10 +3734,7 @@ end5376f9ab90e282450f49011d0e0ce236:
goto endf9f3d0814854d2d0879d331e9bdfcae2 goto endf9f3d0814854d2d0879d331e9bdfcae2
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int32(c) != int32(d)) v.AuxInt = b2i(int32(c) != int32(d))
return true return true
} }
...@@ -4192,10 +3754,7 @@ func rewriteValuegeneric_OpNeq64(v *Value, config *Config) bool { ...@@ -4192,10 +3754,7 @@ func rewriteValuegeneric_OpNeq64(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end3601ad382705ea12b79d2008c1e5725c goto end3601ad382705ea12b79d2008c1e5725c
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -4222,10 +3781,7 @@ end3601ad382705ea12b79d2008c1e5725c: ...@@ -4222,10 +3781,7 @@ end3601ad382705ea12b79d2008c1e5725c:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpNeq64 v.reset(OpNeq64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -4248,10 +3804,7 @@ enda3d39cad13a557a2aa6d086f43596c1b: ...@@ -4248,10 +3804,7 @@ enda3d39cad13a557a2aa6d086f43596c1b:
if !(x.Op != OpConst64) { if !(x.Op != OpConst64) {
goto end0936a57de20373ca6cacb9506ddde708 goto end0936a57de20373ca6cacb9506ddde708
} }
v.Op = OpNeq64 v.reset(OpNeq64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -4273,10 +3826,7 @@ end0936a57de20373ca6cacb9506ddde708: ...@@ -4273,10 +3826,7 @@ end0936a57de20373ca6cacb9506ddde708:
goto endf07433ecd3c150b1b75e943aa44a7203 goto endf07433ecd3c150b1b75e943aa44a7203
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int64(c) != int64(d)) v.AuxInt = b2i(int64(c) != int64(d))
return true return true
} }
...@@ -4296,10 +3846,7 @@ func rewriteValuegeneric_OpNeq8(v *Value, config *Config) bool { ...@@ -4296,10 +3846,7 @@ func rewriteValuegeneric_OpNeq8(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end09a0deaf3c42627d0d2d3efa96e30745 goto end09a0deaf3c42627d0d2d3efa96e30745
} }
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -4326,10 +3873,7 @@ end09a0deaf3c42627d0d2d3efa96e30745: ...@@ -4326,10 +3873,7 @@ end09a0deaf3c42627d0d2d3efa96e30745:
} }
d := v.Args[1].Args[0].AuxInt d := v.Args[1].Args[0].AuxInt
x := v.Args[1].Args[1] x := v.Args[1].Args[1]
v.Op = OpNeq8 v.reset(OpNeq8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = c - d v0.AuxInt = c - d
v.AddArg(v0) v.AddArg(v0)
...@@ -4352,10 +3896,7 @@ endc8f853c610c460c887cbfdca958e3691: ...@@ -4352,10 +3896,7 @@ endc8f853c610c460c887cbfdca958e3691:
if !(x.Op != OpConst8) { if !(x.Op != OpConst8) {
goto end04dc0ae2b08cf0447b50e5b8ef469252 goto end04dc0ae2b08cf0447b50e5b8ef469252
} }
v.Op = OpNeq8 v.reset(OpNeq8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = c v0.AuxInt = c
v.AddArg(v0) v.AddArg(v0)
...@@ -4377,10 +3918,7 @@ end04dc0ae2b08cf0447b50e5b8ef469252: ...@@ -4377,10 +3918,7 @@ end04dc0ae2b08cf0447b50e5b8ef469252:
goto end72ebdaf2de9b3aa57cf0cb8e068b5f9c goto end72ebdaf2de9b3aa57cf0cb8e068b5f9c
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConstBool v.reset(OpConstBool)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = b2i(int8(c) != int8(d)) v.AuxInt = b2i(int8(c) != int8(d))
return true return true
} }
...@@ -4398,10 +3936,7 @@ func rewriteValuegeneric_OpNeqInter(v *Value, config *Config) bool { ...@@ -4398,10 +3936,7 @@ func rewriteValuegeneric_OpNeqInter(v *Value, config *Config) bool {
{ {
x := v.Args[0] x := v.Args[0]
y := v.Args[1] y := v.Args[1]
v.Op = OpNeqPtr v.reset(OpNeqPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v0.AddArg(x) v0.AddArg(x)
v.AddArg(v0) v.AddArg(v0)
...@@ -4426,10 +3961,7 @@ func rewriteValuegeneric_OpNeqPtr(v *Value, config *Config) bool { ...@@ -4426,10 +3961,7 @@ func rewriteValuegeneric_OpNeqPtr(v *Value, config *Config) bool {
if v.Args[1].Op != OpConstNil { if v.Args[1].Op != OpConstNil {
goto endba798520b4d41172b110347158c44791 goto endba798520b4d41172b110347158c44791
} }
v.Op = OpIsNonNil v.reset(OpIsNonNil)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(p) v.AddArg(p)
return true return true
} }
...@@ -4444,10 +3976,7 @@ endba798520b4d41172b110347158c44791: ...@@ -4444,10 +3976,7 @@ endba798520b4d41172b110347158c44791:
goto enddd95e9c3606d9fd48034f1a703561e45 goto enddd95e9c3606d9fd48034f1a703561e45
} }
p := v.Args[1] p := v.Args[1]
v.Op = OpIsNonNil v.reset(OpIsNonNil)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(p) v.AddArg(p)
return true return true
} }
...@@ -4465,10 +3994,7 @@ func rewriteValuegeneric_OpNeqSlice(v *Value, config *Config) bool { ...@@ -4465,10 +3994,7 @@ func rewriteValuegeneric_OpNeqSlice(v *Value, config *Config) bool {
{ {
x := v.Args[0] x := v.Args[0]
y := v.Args[1] y := v.Args[1]
v.Op = OpNeqPtr v.reset(OpNeqPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr()) v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v0.AddArg(x) v0.AddArg(x)
v.AddArg(v0) v.AddArg(v0)
...@@ -4493,10 +4019,7 @@ func rewriteValuegeneric_OpOr16(v *Value, config *Config) bool { ...@@ -4493,10 +4019,7 @@ func rewriteValuegeneric_OpOr16(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end47a2f25fd31a76807aced3e2b126acdc goto end47a2f25fd31a76807aced3e2b126acdc
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4517,10 +4040,7 @@ func rewriteValuegeneric_OpOr32(v *Value, config *Config) bool { ...@@ -4517,10 +4040,7 @@ func rewriteValuegeneric_OpOr32(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end231e283e568e90bd9a3e6a4fa328c8a4 goto end231e283e568e90bd9a3e6a4fa328c8a4
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4541,10 +4061,7 @@ func rewriteValuegeneric_OpOr64(v *Value, config *Config) bool { ...@@ -4541,10 +4061,7 @@ func rewriteValuegeneric_OpOr64(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end6b0efc212016dc97d0e3939db04c81d9 goto end6b0efc212016dc97d0e3939db04c81d9
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4565,10 +4082,7 @@ func rewriteValuegeneric_OpOr8(v *Value, config *Config) bool { ...@@ -4565,10 +4082,7 @@ func rewriteValuegeneric_OpOr8(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end05295dbfafd6869af79b4daee9fda000 goto end05295dbfafd6869af79b4daee9fda000
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4591,10 +4105,7 @@ func rewriteValuegeneric_OpPtrIndex(v *Value, config *Config) bool { ...@@ -4591,10 +4105,7 @@ func rewriteValuegeneric_OpPtrIndex(v *Value, config *Config) bool {
if !(config.PtrSize == 4) { if !(config.PtrSize == 4) {
goto endd902622aaa1e7545b5a2a0c08b47d287 goto endd902622aaa1e7545b5a2a0c08b47d287
} }
v.Op = OpAddPtr v.reset(OpAddPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(ptr) v.AddArg(ptr)
v0 := b.NewValue0(v.Line, OpMul32, config.fe.TypeInt()) v0 := b.NewValue0(v.Line, OpMul32, config.fe.TypeInt())
v0.AddArg(idx) v0.AddArg(idx)
...@@ -4617,10 +4128,7 @@ endd902622aaa1e7545b5a2a0c08b47d287: ...@@ -4617,10 +4128,7 @@ endd902622aaa1e7545b5a2a0c08b47d287:
if !(config.PtrSize == 8) { if !(config.PtrSize == 8) {
goto end47a5f1d1b158914fa383de024bbe3b08 goto end47a5f1d1b158914fa383de024bbe3b08
} }
v.Op = OpAddPtr v.reset(OpAddPtr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(ptr) v.AddArg(ptr)
v0 := b.NewValue0(v.Line, OpMul64, config.fe.TypeInt()) v0 := b.NewValue0(v.Line, OpMul64, config.fe.TypeInt())
v0.AddArg(idx) v0.AddArg(idx)
...@@ -4648,10 +4156,7 @@ func rewriteValuegeneric_OpRsh16Ux16(v *Value, config *Config) bool { ...@@ -4648,10 +4156,7 @@ func rewriteValuegeneric_OpRsh16Ux16(v *Value, config *Config) bool {
goto endd981df40f353104ef828d13ad4ccdf02 goto endd981df40f353104ef828d13ad4ccdf02
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16Ux64 v.reset(OpRsh16Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -4676,10 +4181,7 @@ func rewriteValuegeneric_OpRsh16Ux32(v *Value, config *Config) bool { ...@@ -4676,10 +4181,7 @@ func rewriteValuegeneric_OpRsh16Ux32(v *Value, config *Config) bool {
goto ende0be9ee562725206dcf96d3e5750b5ea goto ende0be9ee562725206dcf96d3e5750b5ea
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16Ux64 v.reset(OpRsh16Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -4706,10 +4208,7 @@ func rewriteValuegeneric_OpRsh16Ux64(v *Value, config *Config) bool { ...@@ -4706,10 +4208,7 @@ func rewriteValuegeneric_OpRsh16Ux64(v *Value, config *Config) bool {
goto ended17f40375fb44bcbaf2d87161c5ed3c goto ended17f40375fb44bcbaf2d87161c5ed3c
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(uint16(c) >> uint64(d)) v.AuxInt = int64(uint16(c) >> uint64(d))
return true return true
} }
...@@ -4727,10 +4226,7 @@ ended17f40375fb44bcbaf2d87161c5ed3c: ...@@ -4727,10 +4226,7 @@ ended17f40375fb44bcbaf2d87161c5ed3c:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end752d1b5a60f87afa7e40febbf1bce309 goto end752d1b5a60f87afa7e40febbf1bce309
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4749,10 +4245,7 @@ end752d1b5a60f87afa7e40febbf1bce309: ...@@ -4749,10 +4245,7 @@ end752d1b5a60f87afa7e40febbf1bce309:
if !(uint64(c) >= 16) { if !(uint64(c) >= 16) {
goto endca5c7ae2e51f2ae32486c2b1a3033b77 goto endca5c7ae2e51f2ae32486c2b1a3033b77
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -4779,10 +4272,7 @@ endca5c7ae2e51f2ae32486c2b1a3033b77: ...@@ -4779,10 +4272,7 @@ endca5c7ae2e51f2ae32486c2b1a3033b77:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end56f2c0034c9fbe651abb36fb640af465 goto end56f2c0034c9fbe651abb36fb640af465
} }
v.Op = OpRsh16Ux64 v.reset(OpRsh16Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -4807,10 +4297,7 @@ func rewriteValuegeneric_OpRsh16Ux8(v *Value, config *Config) bool { ...@@ -4807,10 +4297,7 @@ func rewriteValuegeneric_OpRsh16Ux8(v *Value, config *Config) bool {
goto end20d4667094c32c71bac4e0805dab85c9 goto end20d4667094c32c71bac4e0805dab85c9
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16Ux64 v.reset(OpRsh16Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -4835,10 +4322,7 @@ func rewriteValuegeneric_OpRsh16x16(v *Value, config *Config) bool { ...@@ -4835,10 +4322,7 @@ func rewriteValuegeneric_OpRsh16x16(v *Value, config *Config) bool {
goto end1b501c7ae2fe58ad3a88b467f2d95389 goto end1b501c7ae2fe58ad3a88b467f2d95389
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16x64 v.reset(OpRsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -4863,10 +4347,7 @@ func rewriteValuegeneric_OpRsh16x32(v *Value, config *Config) bool { ...@@ -4863,10 +4347,7 @@ func rewriteValuegeneric_OpRsh16x32(v *Value, config *Config) bool {
goto end4d3a41113d2d0b09924bf5759ca49cab goto end4d3a41113d2d0b09924bf5759ca49cab
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16x64 v.reset(OpRsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -4893,10 +4374,7 @@ func rewriteValuegeneric_OpRsh16x64(v *Value, config *Config) bool { ...@@ -4893,10 +4374,7 @@ func rewriteValuegeneric_OpRsh16x64(v *Value, config *Config) bool {
goto end8f05fede35a3d2f687fcd4a5829a25ad goto end8f05fede35a3d2f687fcd4a5829a25ad
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int16(c) >> uint64(d)) v.AuxInt = int64(int16(c) >> uint64(d))
return true return true
} }
...@@ -4914,10 +4392,7 @@ end8f05fede35a3d2f687fcd4a5829a25ad: ...@@ -4914,10 +4392,7 @@ end8f05fede35a3d2f687fcd4a5829a25ad:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end750fafe01fcc689d953101d53efc19ab goto end750fafe01fcc689d953101d53efc19ab
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -4945,10 +4420,7 @@ end750fafe01fcc689d953101d53efc19ab: ...@@ -4945,10 +4420,7 @@ end750fafe01fcc689d953101d53efc19ab:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto endf425eff9e05aad27194af957e3383c76 goto endf425eff9e05aad27194af957e3383c76
} }
v.Op = OpRsh16x64 v.reset(OpRsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -4973,10 +4445,7 @@ func rewriteValuegeneric_OpRsh16x8(v *Value, config *Config) bool { ...@@ -4973,10 +4445,7 @@ func rewriteValuegeneric_OpRsh16x8(v *Value, config *Config) bool {
goto end0b5e274d62a3ae8df9f4089756c6a9d4 goto end0b5e274d62a3ae8df9f4089756c6a9d4
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh16x64 v.reset(OpRsh16x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5001,10 +4470,7 @@ func rewriteValuegeneric_OpRsh32Ux16(v *Value, config *Config) bool { ...@@ -5001,10 +4470,7 @@ func rewriteValuegeneric_OpRsh32Ux16(v *Value, config *Config) bool {
goto end8d8f9f3e2e1f7a5e9a186fb792fc40a8 goto end8d8f9f3e2e1f7a5e9a186fb792fc40a8
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32Ux64 v.reset(OpRsh32Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5029,10 +4495,7 @@ func rewriteValuegeneric_OpRsh32Ux32(v *Value, config *Config) bool { ...@@ -5029,10 +4495,7 @@ func rewriteValuegeneric_OpRsh32Ux32(v *Value, config *Config) bool {
goto endd23d060f74e00f34cc967b6fb9a4d320 goto endd23d060f74e00f34cc967b6fb9a4d320
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32Ux64 v.reset(OpRsh32Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5059,10 +4522,7 @@ func rewriteValuegeneric_OpRsh32Ux64(v *Value, config *Config) bool { ...@@ -5059,10 +4522,7 @@ func rewriteValuegeneric_OpRsh32Ux64(v *Value, config *Config) bool {
goto enda101e6b765d7ecffd9b7410c9dc3be82 goto enda101e6b765d7ecffd9b7410c9dc3be82
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(uint32(c) >> uint64(d)) v.AuxInt = int64(uint32(c) >> uint64(d))
return true return true
} }
...@@ -5080,10 +4540,7 @@ enda101e6b765d7ecffd9b7410c9dc3be82: ...@@ -5080,10 +4540,7 @@ enda101e6b765d7ecffd9b7410c9dc3be82:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end162e4e182a665d4e6f0d85fe131e7288 goto end162e4e182a665d4e6f0d85fe131e7288
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -5102,10 +4559,7 @@ end162e4e182a665d4e6f0d85fe131e7288: ...@@ -5102,10 +4559,7 @@ end162e4e182a665d4e6f0d85fe131e7288:
if !(uint64(c) >= 32) { if !(uint64(c) >= 32) {
goto endca322c370839b4264b219ee042a6ab33 goto endca322c370839b4264b219ee042a6ab33
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -5132,10 +4586,7 @@ endca322c370839b4264b219ee042a6ab33: ...@@ -5132,10 +4586,7 @@ endca322c370839b4264b219ee042a6ab33:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end2e502d68a32663142684194adbe6c297 goto end2e502d68a32663142684194adbe6c297
} }
v.Op = OpRsh32Ux64 v.reset(OpRsh32Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -5160,10 +4611,7 @@ func rewriteValuegeneric_OpRsh32Ux8(v *Value, config *Config) bool { ...@@ -5160,10 +4611,7 @@ func rewriteValuegeneric_OpRsh32Ux8(v *Value, config *Config) bool {
goto end967cea80158afaffb783f6da7aa898ca goto end967cea80158afaffb783f6da7aa898ca
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32Ux64 v.reset(OpRsh32Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5188,10 +4636,7 @@ func rewriteValuegeneric_OpRsh32x16(v *Value, config *Config) bool { ...@@ -5188,10 +4636,7 @@ func rewriteValuegeneric_OpRsh32x16(v *Value, config *Config) bool {
goto end6a62ebdcc98ea2e3214559214708d26a goto end6a62ebdcc98ea2e3214559214708d26a
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32x64 v.reset(OpRsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5216,10 +4661,7 @@ func rewriteValuegeneric_OpRsh32x32(v *Value, config *Config) bool { ...@@ -5216,10 +4661,7 @@ func rewriteValuegeneric_OpRsh32x32(v *Value, config *Config) bool {
goto end6e3b467acdca74f58e9177fb42a1968b goto end6e3b467acdca74f58e9177fb42a1968b
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32x64 v.reset(OpRsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5246,10 +4688,7 @@ func rewriteValuegeneric_OpRsh32x64(v *Value, config *Config) bool { ...@@ -5246,10 +4688,7 @@ func rewriteValuegeneric_OpRsh32x64(v *Value, config *Config) bool {
goto end7e4b8c499cffe1fef73a16e6be54d4d2 goto end7e4b8c499cffe1fef73a16e6be54d4d2
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int32(c) >> uint64(d)) v.AuxInt = int64(int32(c) >> uint64(d))
return true return true
} }
...@@ -5267,10 +4706,7 @@ end7e4b8c499cffe1fef73a16e6be54d4d2: ...@@ -5267,10 +4706,7 @@ end7e4b8c499cffe1fef73a16e6be54d4d2:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end72da2611eaaffe407efa1cc45c23ade3 goto end72da2611eaaffe407efa1cc45c23ade3
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -5298,10 +4734,7 @@ end72da2611eaaffe407efa1cc45c23ade3: ...@@ -5298,10 +4734,7 @@ end72da2611eaaffe407efa1cc45c23ade3:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto endadb415be78ee46a8a4135ec50df772b0 goto endadb415be78ee46a8a4135ec50df772b0
} }
v.Op = OpRsh32x64 v.reset(OpRsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -5326,10 +4759,7 @@ func rewriteValuegeneric_OpRsh32x8(v *Value, config *Config) bool { ...@@ -5326,10 +4759,7 @@ func rewriteValuegeneric_OpRsh32x8(v *Value, config *Config) bool {
goto end7b59b42c5c68a2d55be469a0c086dd8b goto end7b59b42c5c68a2d55be469a0c086dd8b
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh32x64 v.reset(OpRsh32x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5354,10 +4784,7 @@ func rewriteValuegeneric_OpRsh64Ux16(v *Value, config *Config) bool { ...@@ -5354,10 +4784,7 @@ func rewriteValuegeneric_OpRsh64Ux16(v *Value, config *Config) bool {
goto end733d85a7b599bcba969ca1cb4bdb9e48 goto end733d85a7b599bcba969ca1cb4bdb9e48
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64Ux64 v.reset(OpRsh64Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5382,10 +4809,7 @@ func rewriteValuegeneric_OpRsh64Ux32(v *Value, config *Config) bool { ...@@ -5382,10 +4809,7 @@ func rewriteValuegeneric_OpRsh64Ux32(v *Value, config *Config) bool {
goto endeac7b34169de1fb0393b833e65b9bb19 goto endeac7b34169de1fb0393b833e65b9bb19
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64Ux64 v.reset(OpRsh64Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5412,10 +4836,7 @@ func rewriteValuegeneric_OpRsh64Ux64(v *Value, config *Config) bool { ...@@ -5412,10 +4836,7 @@ func rewriteValuegeneric_OpRsh64Ux64(v *Value, config *Config) bool {
goto end102f4cfd7979a2aa222d52c34ac6802d goto end102f4cfd7979a2aa222d52c34ac6802d
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(uint64(c) >> uint64(d)) v.AuxInt = int64(uint64(c) >> uint64(d))
return true return true
} }
...@@ -5433,10 +4854,7 @@ end102f4cfd7979a2aa222d52c34ac6802d: ...@@ -5433,10 +4854,7 @@ end102f4cfd7979a2aa222d52c34ac6802d:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end5ad037b910698f2847df90177c23a6ac goto end5ad037b910698f2847df90177c23a6ac
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -5455,10 +4873,7 @@ end5ad037b910698f2847df90177c23a6ac: ...@@ -5455,10 +4873,7 @@ end5ad037b910698f2847df90177c23a6ac:
if !(uint64(c) >= 64) { if !(uint64(c) >= 64) {
goto end16ea16aa61862207ea64e514369d608b goto end16ea16aa61862207ea64e514369d608b
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -5485,10 +4900,7 @@ end16ea16aa61862207ea64e514369d608b: ...@@ -5485,10 +4900,7 @@ end16ea16aa61862207ea64e514369d608b:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end32bfdb1b4ccc23a5cd62fc0348ebd877 goto end32bfdb1b4ccc23a5cd62fc0348ebd877
} }
v.Op = OpRsh64Ux64 v.reset(OpRsh64Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -5513,10 +4925,7 @@ func rewriteValuegeneric_OpRsh64Ux8(v *Value, config *Config) bool { ...@@ -5513,10 +4925,7 @@ func rewriteValuegeneric_OpRsh64Ux8(v *Value, config *Config) bool {
goto ende3d8090a67a52dbcd24b52ee32c9d7f0 goto ende3d8090a67a52dbcd24b52ee32c9d7f0
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64Ux64 v.reset(OpRsh64Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5541,10 +4950,7 @@ func rewriteValuegeneric_OpRsh64x16(v *Value, config *Config) bool { ...@@ -5541,10 +4950,7 @@ func rewriteValuegeneric_OpRsh64x16(v *Value, config *Config) bool {
goto endd5151d0bfc38c55ae6ae6836014df3bc goto endd5151d0bfc38c55ae6ae6836014df3bc
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64x64 v.reset(OpRsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5569,10 +4975,7 @@ func rewriteValuegeneric_OpRsh64x32(v *Value, config *Config) bool { ...@@ -5569,10 +4975,7 @@ func rewriteValuegeneric_OpRsh64x32(v *Value, config *Config) bool {
goto end0f2dbca5c7d6b100890c94a97bf0de7c goto end0f2dbca5c7d6b100890c94a97bf0de7c
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64x64 v.reset(OpRsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5599,10 +5002,7 @@ func rewriteValuegeneric_OpRsh64x64(v *Value, config *Config) bool { ...@@ -5599,10 +5002,7 @@ func rewriteValuegeneric_OpRsh64x64(v *Value, config *Config) bool {
goto endfa4609d6bea8a3e3d3a777b1968c97d9 goto endfa4609d6bea8a3e3d3a777b1968c97d9
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c >> uint64(d) v.AuxInt = c >> uint64(d)
return true return true
} }
...@@ -5620,10 +5020,7 @@ endfa4609d6bea8a3e3d3a777b1968c97d9: ...@@ -5620,10 +5020,7 @@ endfa4609d6bea8a3e3d3a777b1968c97d9:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto ende62e0c67d3f04eb221646371a2a91d05 goto ende62e0c67d3f04eb221646371a2a91d05
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -5651,10 +5048,7 @@ ende62e0c67d3f04eb221646371a2a91d05: ...@@ -5651,10 +5048,7 @@ ende62e0c67d3f04eb221646371a2a91d05:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto endd3e8ea66dc3ad0bc393001d6babb7160 goto endd3e8ea66dc3ad0bc393001d6babb7160
} }
v.Op = OpRsh64x64 v.reset(OpRsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -5679,10 +5073,7 @@ func rewriteValuegeneric_OpRsh64x8(v *Value, config *Config) bool { ...@@ -5679,10 +5073,7 @@ func rewriteValuegeneric_OpRsh64x8(v *Value, config *Config) bool {
goto end1a9e5a89849344396210da7c7ec810be goto end1a9e5a89849344396210da7c7ec810be
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh64x64 v.reset(OpRsh64x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5707,10 +5098,7 @@ func rewriteValuegeneric_OpRsh8Ux16(v *Value, config *Config) bool { ...@@ -5707,10 +5098,7 @@ func rewriteValuegeneric_OpRsh8Ux16(v *Value, config *Config) bool {
goto end7acc015610273092e9efcce2949ee0f9 goto end7acc015610273092e9efcce2949ee0f9
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8Ux64 v.reset(OpRsh8Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5735,10 +5123,7 @@ func rewriteValuegeneric_OpRsh8Ux32(v *Value, config *Config) bool { ...@@ -5735,10 +5123,7 @@ func rewriteValuegeneric_OpRsh8Ux32(v *Value, config *Config) bool {
goto end27e9b4472e085b653a105b1d67554ce8 goto end27e9b4472e085b653a105b1d67554ce8
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8Ux64 v.reset(OpRsh8Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5765,10 +5150,7 @@ func rewriteValuegeneric_OpRsh8Ux64(v *Value, config *Config) bool { ...@@ -5765,10 +5150,7 @@ func rewriteValuegeneric_OpRsh8Ux64(v *Value, config *Config) bool {
goto enddd166e450d81ba7b466d61d2fbec178c goto enddd166e450d81ba7b466d61d2fbec178c
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(uint8(c) >> uint64(d)) v.AuxInt = int64(uint8(c) >> uint64(d))
return true return true
} }
...@@ -5786,10 +5168,7 @@ enddd166e450d81ba7b466d61d2fbec178c: ...@@ -5786,10 +5168,7 @@ enddd166e450d81ba7b466d61d2fbec178c:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end570cb1d9db3c7bebd85e485eeb2c0969 goto end570cb1d9db3c7bebd85e485eeb2c0969
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -5808,10 +5187,7 @@ end570cb1d9db3c7bebd85e485eeb2c0969: ...@@ -5808,10 +5187,7 @@ end570cb1d9db3c7bebd85e485eeb2c0969:
if !(uint64(c) >= 8) { if !(uint64(c) >= 8) {
goto endb63e1a7d1d91716ca0d9d74215361323 goto endb63e1a7d1d91716ca0d9d74215361323
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -5838,10 +5214,7 @@ endb63e1a7d1d91716ca0d9d74215361323: ...@@ -5838,10 +5214,7 @@ endb63e1a7d1d91716ca0d9d74215361323:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto endee8824b7071ed1a6dba4fcbaab98229e goto endee8824b7071ed1a6dba4fcbaab98229e
} }
v.Op = OpRsh8Ux64 v.reset(OpRsh8Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -5866,10 +5239,7 @@ func rewriteValuegeneric_OpRsh8Ux8(v *Value, config *Config) bool { ...@@ -5866,10 +5239,7 @@ func rewriteValuegeneric_OpRsh8Ux8(v *Value, config *Config) bool {
goto ended7e4f4d9ab89dc26e6649d466577930 goto ended7e4f4d9ab89dc26e6649d466577930
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8Ux64 v.reset(OpRsh8Ux64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -5894,10 +5264,7 @@ func rewriteValuegeneric_OpRsh8x16(v *Value, config *Config) bool { ...@@ -5894,10 +5264,7 @@ func rewriteValuegeneric_OpRsh8x16(v *Value, config *Config) bool {
goto end136bef6f60180bc8b4befbfc370af7ef goto end136bef6f60180bc8b4befbfc370af7ef
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8x64 v.reset(OpRsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint16(c)) v0.AuxInt = int64(uint16(c))
...@@ -5922,10 +5289,7 @@ func rewriteValuegeneric_OpRsh8x32(v *Value, config *Config) bool { ...@@ -5922,10 +5289,7 @@ func rewriteValuegeneric_OpRsh8x32(v *Value, config *Config) bool {
goto end2ef95c222a7c552fa9cc86e36196644e goto end2ef95c222a7c552fa9cc86e36196644e
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8x64 v.reset(OpRsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint32(c)) v0.AuxInt = int64(uint32(c))
...@@ -5952,10 +5316,7 @@ func rewriteValuegeneric_OpRsh8x64(v *Value, config *Config) bool { ...@@ -5952,10 +5316,7 @@ func rewriteValuegeneric_OpRsh8x64(v *Value, config *Config) bool {
goto end3b90206d75365466dfd1368e5b69db35 goto end3b90206d75365466dfd1368e5b69db35
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = int64(int8(c) >> uint64(d)) v.AuxInt = int64(int8(c) >> uint64(d))
return true return true
} }
...@@ -5973,10 +5334,7 @@ end3b90206d75365466dfd1368e5b69db35: ...@@ -5973,10 +5334,7 @@ end3b90206d75365466dfd1368e5b69db35:
if v.Args[1].AuxInt != 0 { if v.Args[1].AuxInt != 0 {
goto end1e664cc720a11d1c769de8081cfa1de4 goto end1e664cc720a11d1c769de8081cfa1de4
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6004,10 +5362,7 @@ end1e664cc720a11d1c769de8081cfa1de4: ...@@ -6004,10 +5362,7 @@ end1e664cc720a11d1c769de8081cfa1de4:
if !(!uaddOvf(c, d)) { if !(!uaddOvf(c, d)) {
goto end6408685a7276af7e76ec086f359c942c goto end6408685a7276af7e76ec086f359c942c
} }
v.Op = OpRsh8x64 v.reset(OpRsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = c + d v0.AuxInt = c + d
...@@ -6032,10 +5387,7 @@ func rewriteValuegeneric_OpRsh8x8(v *Value, config *Config) bool { ...@@ -6032,10 +5387,7 @@ func rewriteValuegeneric_OpRsh8x8(v *Value, config *Config) bool {
goto endae44f60f364cddd8903763dd921a007e goto endae44f60f364cddd8903763dd921a007e
} }
c := v.Args[1].AuxInt c := v.Args[1].AuxInt
v.Op = OpRsh8x64 v.reset(OpRsh8x64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(x) v.AddArg(x)
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = int64(uint8(c)) v0.AuxInt = int64(uint8(c))
...@@ -6058,10 +5410,7 @@ func rewriteValuegeneric_OpSliceCap(v *Value, config *Config) bool { ...@@ -6058,10 +5410,7 @@ func rewriteValuegeneric_OpSliceCap(v *Value, config *Config) bool {
goto end1bd11616743632b33b410964667fb3c6 goto end1bd11616743632b33b410964667fb3c6
} }
cap := v.Args[0].Args[2] cap := v.Args[0].Args[2]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = cap.Type v.Type = cap.Type
v.AddArg(cap) v.AddArg(cap)
return true return true
...@@ -6082,10 +5431,7 @@ func rewriteValuegeneric_OpSliceLen(v *Value, config *Config) bool { ...@@ -6082,10 +5431,7 @@ func rewriteValuegeneric_OpSliceLen(v *Value, config *Config) bool {
goto endebb2090199d13e4c2ae52fb3e778f7fd goto endebb2090199d13e4c2ae52fb3e778f7fd
} }
len := v.Args[0].Args[1] len := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = len.Type v.Type = len.Type
v.AddArg(len) v.AddArg(len)
return true return true
...@@ -6106,10 +5452,7 @@ func rewriteValuegeneric_OpSlicePtr(v *Value, config *Config) bool { ...@@ -6106,10 +5452,7 @@ func rewriteValuegeneric_OpSlicePtr(v *Value, config *Config) bool {
goto end526acc0a705137a5d25577499206720b goto end526acc0a705137a5d25577499206720b
} }
ptr := v.Args[0].Args[0] ptr := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = ptr.Type v.Type = ptr.Type
v.AddArg(ptr) v.AddArg(ptr)
return true return true
...@@ -6130,10 +5473,7 @@ func rewriteValuegeneric_OpStore(v *Value, config *Config) bool { ...@@ -6130,10 +5473,7 @@ func rewriteValuegeneric_OpStore(v *Value, config *Config) bool {
goto endd4f364b0adfc229d8c200af183d4c808 goto endd4f364b0adfc229d8c200af183d4c808
} }
mem := v.Args[2] mem := v.Args[2]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = mem.Type v.Type = mem.Type
v.AddArg(mem) v.AddArg(mem)
return true return true
...@@ -6152,10 +5492,7 @@ endd4f364b0adfc229d8c200af183d4c808: ...@@ -6152,10 +5492,7 @@ endd4f364b0adfc229d8c200af183d4c808:
t := v.Args[1].Type t := v.Args[1].Type
f0 := v.Args[1].Args[0] f0 := v.Args[1].Args[0]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(0).Size() v.AuxInt = t.FieldType(0).Size()
v.AddArg(dst) v.AddArg(dst)
v.AddArg(f0) v.AddArg(f0)
...@@ -6177,10 +5514,7 @@ end2cff6d06f4440132f48ca374b6b1e9d8: ...@@ -6177,10 +5514,7 @@ end2cff6d06f4440132f48ca374b6b1e9d8:
f0 := v.Args[1].Args[0] f0 := v.Args[1].Args[0]
f1 := v.Args[1].Args[1] f1 := v.Args[1].Args[1]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(1).Size() v.AuxInt = t.FieldType(1).Size()
v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v0.AuxInt = t.FieldOff(1) v0.AuxInt = t.FieldOff(1)
...@@ -6211,10 +5545,7 @@ end4e8ede6cc575a287795971da6b637973: ...@@ -6211,10 +5545,7 @@ end4e8ede6cc575a287795971da6b637973:
f1 := v.Args[1].Args[1] f1 := v.Args[1].Args[1]
f2 := v.Args[1].Args[2] f2 := v.Args[1].Args[2]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(2).Size() v.AuxInt = t.FieldType(2).Size()
v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
v0.AuxInt = t.FieldOff(2) v0.AuxInt = t.FieldOff(2)
...@@ -6254,10 +5585,7 @@ end6ad675267724a87c8f852dd1e185e911: ...@@ -6254,10 +5585,7 @@ end6ad675267724a87c8f852dd1e185e911:
f2 := v.Args[1].Args[2] f2 := v.Args[1].Args[2]
f3 := v.Args[1].Args[3] f3 := v.Args[1].Args[3]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(3).Size() v.AuxInt = t.FieldType(3).Size()
v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(3).PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(3).PtrTo())
v0.AuxInt = t.FieldOff(3) v0.AuxInt = t.FieldOff(3)
...@@ -6305,10 +5633,7 @@ end7ea91abd44794f7653374502a5a405ea: ...@@ -6305,10 +5633,7 @@ end7ea91abd44794f7653374502a5a405ea:
real := v.Args[1].Args[0] real := v.Args[1].Args[0]
imag := v.Args[1].Args[1] imag := v.Args[1].Args[1]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 4 v.AuxInt = 4
v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat32().PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat32().PtrTo())
v0.AuxInt = 4 v0.AuxInt = 4
...@@ -6340,10 +5665,7 @@ endced898cb0a165662afe48ea44ad3318a: ...@@ -6340,10 +5665,7 @@ endced898cb0a165662afe48ea44ad3318a:
real := v.Args[1].Args[0] real := v.Args[1].Args[0]
imag := v.Args[1].Args[1] imag := v.Args[1].Args[1]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 8 v.AuxInt = 8
v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat64().PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat64().PtrTo())
v0.AuxInt = 8 v0.AuxInt = 8
...@@ -6375,10 +5697,7 @@ end3851a482d7bd37a93c4d81581e85b3ab: ...@@ -6375,10 +5697,7 @@ end3851a482d7bd37a93c4d81581e85b3ab:
ptr := v.Args[1].Args[0] ptr := v.Args[1].Args[0]
len := v.Args[1].Args[1] len := v.Args[1].Args[1]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize v.AuxInt = config.PtrSize
v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v0.AuxInt = config.PtrSize v0.AuxInt = config.PtrSize
...@@ -6411,10 +5730,7 @@ endd3a6ecebdad5899570a79fe5c62f34f1: ...@@ -6411,10 +5730,7 @@ endd3a6ecebdad5899570a79fe5c62f34f1:
len := v.Args[1].Args[1] len := v.Args[1].Args[1]
cap := v.Args[1].Args[2] cap := v.Args[1].Args[2]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize v.AuxInt = config.PtrSize
v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v0.AuxInt = 2 * config.PtrSize v0.AuxInt = 2 * config.PtrSize
...@@ -6454,10 +5770,7 @@ endd5cc8c3dad7d24c845b0b88fc51487ae: ...@@ -6454,10 +5770,7 @@ endd5cc8c3dad7d24c845b0b88fc51487ae:
itab := v.Args[1].Args[0] itab := v.Args[1].Args[0]
data := v.Args[1].Args[1] data := v.Args[1].Args[1]
mem := v.Args[2] mem := v.Args[2]
v.Op = OpStore v.reset(OpStore)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize v.AuxInt = config.PtrSize
v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeBytePtr().PtrTo()) v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeBytePtr().PtrTo())
v0.AuxInt = config.PtrSize v0.AuxInt = config.PtrSize
...@@ -6493,10 +5806,7 @@ endaa801a871178ae3256b3f6f5d9f13514: ...@@ -6493,10 +5806,7 @@ endaa801a871178ae3256b3f6f5d9f13514:
if !(!config.fe.CanSSA(t)) { if !(!config.fe.CanSSA(t)) {
goto end45295326269ba18413dceb7b608a0b9d goto end45295326269ba18413dceb7b608a0b9d
} }
v.Op = OpMove v.reset(OpMove)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = size v.AuxInt = size
v.AddArg(dst) v.AddArg(dst)
v.AddArg(src) v.AddArg(src)
...@@ -6528,10 +5838,7 @@ end45295326269ba18413dceb7b608a0b9d: ...@@ -6528,10 +5838,7 @@ end45295326269ba18413dceb7b608a0b9d:
if !(!config.fe.CanSSA(t)) { if !(!config.fe.CanSSA(t)) {
goto end7f3cc0baffb82ba3ee879599b189a512 goto end7f3cc0baffb82ba3ee879599b189a512
} }
v.Op = OpMove v.reset(OpMove)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = size v.AuxInt = size
v.AddArg(dst) v.AddArg(dst)
v.AddArg(src) v.AddArg(src)
...@@ -6557,10 +5864,7 @@ func rewriteValuegeneric_OpStringLen(v *Value, config *Config) bool { ...@@ -6557,10 +5864,7 @@ func rewriteValuegeneric_OpStringLen(v *Value, config *Config) bool {
goto end0d922460b7e5ca88324034f4bd6c027c goto end0d922460b7e5ca88324034f4bd6c027c
} }
len := v.Args[0].Args[1] len := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = len.Type v.Type = len.Type
v.AddArg(len) v.AddArg(len)
return true return true
...@@ -6581,10 +5885,7 @@ func rewriteValuegeneric_OpStringPtr(v *Value, config *Config) bool { ...@@ -6581,10 +5885,7 @@ func rewriteValuegeneric_OpStringPtr(v *Value, config *Config) bool {
goto end061edc5d85c73ad909089af2556d9380 goto end061edc5d85c73ad909089af2556d9380
} }
ptr := v.Args[0].Args[0] ptr := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = ptr.Type v.Type = ptr.Type
v.AddArg(ptr) v.AddArg(ptr)
return true return true
...@@ -6605,10 +5906,7 @@ func rewriteValuegeneric_OpStructSelect(v *Value, config *Config) bool { ...@@ -6605,10 +5906,7 @@ func rewriteValuegeneric_OpStructSelect(v *Value, config *Config) bool {
goto end17af582e7eba5216b4a51fe6c9206d3c goto end17af582e7eba5216b4a51fe6c9206d3c
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6627,10 +5925,7 @@ end17af582e7eba5216b4a51fe6c9206d3c: ...@@ -6627,10 +5925,7 @@ end17af582e7eba5216b4a51fe6c9206d3c:
goto end355cfff99c8e9af975c3ae450d49b7f9 goto end355cfff99c8e9af975c3ae450d49b7f9
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6649,10 +5944,7 @@ end355cfff99c8e9af975c3ae450d49b7f9: ...@@ -6649,10 +5944,7 @@ end355cfff99c8e9af975c3ae450d49b7f9:
goto end69baa65e494ef9ae154e0943b53734f9 goto end69baa65e494ef9ae154e0943b53734f9
} }
x := v.Args[0].Args[1] x := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6671,10 +5963,7 @@ end69baa65e494ef9ae154e0943b53734f9: ...@@ -6671,10 +5963,7 @@ end69baa65e494ef9ae154e0943b53734f9:
goto endb0d98e2c46bb51c9abd4c3543392e0ec goto endb0d98e2c46bb51c9abd4c3543392e0ec
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6693,10 +5982,7 @@ endb0d98e2c46bb51c9abd4c3543392e0ec: ...@@ -6693,10 +5982,7 @@ endb0d98e2c46bb51c9abd4c3543392e0ec:
goto end2e40457286d26c2f14ad4fd127946773 goto end2e40457286d26c2f14ad4fd127946773
} }
x := v.Args[0].Args[1] x := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6715,10 +6001,7 @@ end2e40457286d26c2f14ad4fd127946773: ...@@ -6715,10 +6001,7 @@ end2e40457286d26c2f14ad4fd127946773:
goto end3e3b96ad431206175d002ece87aa1409 goto end3e3b96ad431206175d002ece87aa1409
} }
x := v.Args[0].Args[2] x := v.Args[0].Args[2]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6737,10 +6020,7 @@ end3e3b96ad431206175d002ece87aa1409: ...@@ -6737,10 +6020,7 @@ end3e3b96ad431206175d002ece87aa1409:
goto end09f8a1ffa3d8c3124bc6d4083b941108 goto end09f8a1ffa3d8c3124bc6d4083b941108
} }
x := v.Args[0].Args[0] x := v.Args[0].Args[0]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6759,10 +6039,7 @@ end09f8a1ffa3d8c3124bc6d4083b941108: ...@@ -6759,10 +6039,7 @@ end09f8a1ffa3d8c3124bc6d4083b941108:
goto endd3ef25e605a927e9251be6d9221f4acf goto endd3ef25e605a927e9251be6d9221f4acf
} }
x := v.Args[0].Args[1] x := v.Args[0].Args[1]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6781,10 +6058,7 @@ endd3ef25e605a927e9251be6d9221f4acf: ...@@ -6781,10 +6058,7 @@ endd3ef25e605a927e9251be6d9221f4acf:
goto end0438e22cc8f41123fa42009a81ee723a goto end0438e22cc8f41123fa42009a81ee723a
} }
x := v.Args[0].Args[2] x := v.Args[0].Args[2]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6803,10 +6077,7 @@ end0438e22cc8f41123fa42009a81ee723a: ...@@ -6803,10 +6077,7 @@ end0438e22cc8f41123fa42009a81ee723a:
goto end56a7c7781fee35eeff0a3652dc206012 goto end56a7c7781fee35eeff0a3652dc206012
} }
x := v.Args[0].Args[3] x := v.Args[0].Args[3]
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6829,10 +6100,7 @@ end56a7c7781fee35eeff0a3652dc206012: ...@@ -6829,10 +6100,7 @@ end56a7c7781fee35eeff0a3652dc206012:
goto end2afd47b4fcaaab7a73325bd8a75e3e8e goto end2afd47b4fcaaab7a73325bd8a75e3e8e
} }
v0 := v.Args[0].Block.NewValue0(v.Line, OpLoad, v.Type) v0 := v.Args[0].Block.NewValue0(v.Line, OpLoad, v.Type)
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0) v.AddArg(v0)
v1 := v.Args[0].Block.NewValue0(v.Line, OpOffPtr, v.Type.PtrTo()) v1 := v.Args[0].Block.NewValue0(v.Line, OpOffPtr, v.Type.PtrTo())
v1.AuxInt = t.FieldOff(i) v1.AuxInt = t.FieldOff(i)
...@@ -6861,10 +6129,7 @@ func rewriteValuegeneric_OpSub16(v *Value, config *Config) bool { ...@@ -6861,10 +6129,7 @@ func rewriteValuegeneric_OpSub16(v *Value, config *Config) bool {
goto end5c6fab95c9dbeff5973119096bfd4e78 goto end5c6fab95c9dbeff5973119096bfd4e78
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c - d v.AuxInt = c - d
return true return true
} }
...@@ -6884,10 +6149,7 @@ end5c6fab95c9dbeff5973119096bfd4e78: ...@@ -6884,10 +6149,7 @@ end5c6fab95c9dbeff5973119096bfd4e78:
if !(x.Op != OpConst16) { if !(x.Op != OpConst16) {
goto end493545258a8e7e79d005b34c712ddd0c goto end493545258a8e7e79d005b34c712ddd0c
} }
v.Op = OpAdd16 v.reset(OpAdd16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst16, t) v0 := b.NewValue0(v.Line, OpConst16, t)
v0.AuxInt = -c v0.AuxInt = -c
v.AddArg(v0) v.AddArg(v0)
...@@ -6905,10 +6167,7 @@ end493545258a8e7e79d005b34c712ddd0c: ...@@ -6905,10 +6167,7 @@ end493545258a8e7e79d005b34c712ddd0c:
if v.Args[1] != x { if v.Args[1] != x {
goto end83da541391be564f2a08464e674a49e7 goto end83da541391be564f2a08464e674a49e7
} }
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -6927,10 +6186,7 @@ end83da541391be564f2a08464e674a49e7: ...@@ -6927,10 +6186,7 @@ end83da541391be564f2a08464e674a49e7:
if v.Args[1] != x { if v.Args[1] != x {
goto end0dd8f250c457b9c005ecbed59fc2e758 goto end0dd8f250c457b9c005ecbed59fc2e758
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = y.Type v.Type = y.Type
v.AddArg(y) v.AddArg(y)
return true return true
...@@ -6950,10 +6206,7 @@ end0dd8f250c457b9c005ecbed59fc2e758: ...@@ -6950,10 +6206,7 @@ end0dd8f250c457b9c005ecbed59fc2e758:
if v.Args[1] != y { if v.Args[1] != y {
goto end01c8db2e0bce69e048cf79f3bdc82b9b goto end01c8db2e0bce69e048cf79f3bdc82b9b
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -6978,10 +6231,7 @@ func rewriteValuegeneric_OpSub32(v *Value, config *Config) bool { ...@@ -6978,10 +6231,7 @@ func rewriteValuegeneric_OpSub32(v *Value, config *Config) bool {
goto end7623799db780e1bcc42c6ea0df9c49d3 goto end7623799db780e1bcc42c6ea0df9c49d3
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c - d v.AuxInt = c - d
return true return true
} }
...@@ -7001,10 +6251,7 @@ end7623799db780e1bcc42c6ea0df9c49d3: ...@@ -7001,10 +6251,7 @@ end7623799db780e1bcc42c6ea0df9c49d3:
if !(x.Op != OpConst32) { if !(x.Op != OpConst32) {
goto end391e2f2ba8c7502b62c0153ec69c4fbd goto end391e2f2ba8c7502b62c0153ec69c4fbd
} }
v.Op = OpAdd32 v.reset(OpAdd32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst32, t) v0 := b.NewValue0(v.Line, OpConst32, t)
v0.AuxInt = -c v0.AuxInt = -c
v.AddArg(v0) v.AddArg(v0)
...@@ -7022,10 +6269,7 @@ end391e2f2ba8c7502b62c0153ec69c4fbd: ...@@ -7022,10 +6269,7 @@ end391e2f2ba8c7502b62c0153ec69c4fbd:
if v.Args[1] != x { if v.Args[1] != x {
goto enda747581e798f199e07f4ad69747cd069 goto enda747581e798f199e07f4ad69747cd069
} }
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7044,10 +6288,7 @@ enda747581e798f199e07f4ad69747cd069: ...@@ -7044,10 +6288,7 @@ enda747581e798f199e07f4ad69747cd069:
if v.Args[1] != x { if v.Args[1] != x {
goto end70c1e60e58a6c106d060f10cd3f179ea goto end70c1e60e58a6c106d060f10cd3f179ea
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = y.Type v.Type = y.Type
v.AddArg(y) v.AddArg(y)
return true return true
...@@ -7067,10 +6308,7 @@ end70c1e60e58a6c106d060f10cd3f179ea: ...@@ -7067,10 +6308,7 @@ end70c1e60e58a6c106d060f10cd3f179ea:
if v.Args[1] != y { if v.Args[1] != y {
goto end20e42db178ec4f423cc56a991863a4a2 goto end20e42db178ec4f423cc56a991863a4a2
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -7095,10 +6333,7 @@ func rewriteValuegeneric_OpSub64(v *Value, config *Config) bool { ...@@ -7095,10 +6333,7 @@ func rewriteValuegeneric_OpSub64(v *Value, config *Config) bool {
goto end5a84a285ff0ff48b8ad3c64b15e3459f goto end5a84a285ff0ff48b8ad3c64b15e3459f
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c - d v.AuxInt = c - d
return true return true
} }
...@@ -7118,10 +6353,7 @@ end5a84a285ff0ff48b8ad3c64b15e3459f: ...@@ -7118,10 +6353,7 @@ end5a84a285ff0ff48b8ad3c64b15e3459f:
if !(x.Op != OpConst64) { if !(x.Op != OpConst64) {
goto enda80d30f6794bcf02cd4442b238f68333 goto enda80d30f6794bcf02cd4442b238f68333
} }
v.Op = OpAdd64 v.reset(OpAdd64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst64, t) v0 := b.NewValue0(v.Line, OpConst64, t)
v0.AuxInt = -c v0.AuxInt = -c
v.AddArg(v0) v.AddArg(v0)
...@@ -7139,10 +6371,7 @@ enda80d30f6794bcf02cd4442b238f68333: ...@@ -7139,10 +6371,7 @@ enda80d30f6794bcf02cd4442b238f68333:
if v.Args[1] != x { if v.Args[1] != x {
goto end0387dc2b7bbe57d4aa54eab5d959da4b goto end0387dc2b7bbe57d4aa54eab5d959da4b
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7161,10 +6390,7 @@ end0387dc2b7bbe57d4aa54eab5d959da4b: ...@@ -7161,10 +6390,7 @@ end0387dc2b7bbe57d4aa54eab5d959da4b:
if v.Args[1] != x { if v.Args[1] != x {
goto end7d177451cf8959cb781f52d5ded46fff goto end7d177451cf8959cb781f52d5ded46fff
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = y.Type v.Type = y.Type
v.AddArg(y) v.AddArg(y)
return true return true
...@@ -7184,10 +6410,7 @@ end7d177451cf8959cb781f52d5ded46fff: ...@@ -7184,10 +6410,7 @@ end7d177451cf8959cb781f52d5ded46fff:
if v.Args[1] != y { if v.Args[1] != y {
goto end6ea8172b21100cfe3dc86b7a850fbe97 goto end6ea8172b21100cfe3dc86b7a850fbe97
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -7212,10 +6435,7 @@ func rewriteValuegeneric_OpSub8(v *Value, config *Config) bool { ...@@ -7212,10 +6435,7 @@ func rewriteValuegeneric_OpSub8(v *Value, config *Config) bool {
goto endc00ea11c7535529e211710574f5cff24 goto endc00ea11c7535529e211710574f5cff24
} }
d := v.Args[1].AuxInt d := v.Args[1].AuxInt
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = c - d v.AuxInt = c - d
return true return true
} }
...@@ -7235,10 +6455,7 @@ endc00ea11c7535529e211710574f5cff24: ...@@ -7235,10 +6455,7 @@ endc00ea11c7535529e211710574f5cff24:
if !(x.Op != OpConst8) { if !(x.Op != OpConst8) {
goto end0bfab5b6f1037e55dc049b79e2636678 goto end0bfab5b6f1037e55dc049b79e2636678
} }
v.Op = OpAdd8 v.reset(OpAdd8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v0 := b.NewValue0(v.Line, OpConst8, t) v0 := b.NewValue0(v.Line, OpConst8, t)
v0.AuxInt = -c v0.AuxInt = -c
v.AddArg(v0) v.AddArg(v0)
...@@ -7256,10 +6473,7 @@ end0bfab5b6f1037e55dc049b79e2636678: ...@@ -7256,10 +6473,7 @@ end0bfab5b6f1037e55dc049b79e2636678:
if v.Args[1] != x { if v.Args[1] != x {
goto end4e2ee15ef17611919a1a6b5f80bbfe18 goto end4e2ee15ef17611919a1a6b5f80bbfe18
} }
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7278,10 +6492,7 @@ end4e2ee15ef17611919a1a6b5f80bbfe18: ...@@ -7278,10 +6492,7 @@ end4e2ee15ef17611919a1a6b5f80bbfe18:
if v.Args[1] != x { if v.Args[1] != x {
goto endd79d561e14dc3d11da4c3bb20270b541 goto endd79d561e14dc3d11da4c3bb20270b541
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = y.Type v.Type = y.Type
v.AddArg(y) v.AddArg(y)
return true return true
...@@ -7301,10 +6512,7 @@ endd79d561e14dc3d11da4c3bb20270b541: ...@@ -7301,10 +6512,7 @@ endd79d561e14dc3d11da4c3bb20270b541:
if v.Args[1] != y { if v.Args[1] != y {
goto endcb7111b11d6d068c97026a97ecff8248 goto endcb7111b11d6d068c97026a97ecff8248
} }
v.Op = OpCopy v.reset(OpCopy)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.Type = x.Type v.Type = x.Type
v.AddArg(x) v.AddArg(x)
return true return true
...@@ -7325,10 +6533,7 @@ func rewriteValuegeneric_OpXor16(v *Value, config *Config) bool { ...@@ -7325,10 +6533,7 @@ func rewriteValuegeneric_OpXor16(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end5733ceb1903b8140248d8e2cac02fefe goto end5733ceb1903b8140248d8e2cac02fefe
} }
v.Op = OpConst16 v.reset(OpConst16)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7348,10 +6553,7 @@ func rewriteValuegeneric_OpXor32(v *Value, config *Config) bool { ...@@ -7348,10 +6553,7 @@ func rewriteValuegeneric_OpXor32(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end268ca02df6515d648e0bfb4e90981d25 goto end268ca02df6515d648e0bfb4e90981d25
} }
v.Op = OpConst32 v.reset(OpConst32)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7371,10 +6573,7 @@ func rewriteValuegeneric_OpXor64(v *Value, config *Config) bool { ...@@ -7371,10 +6573,7 @@ func rewriteValuegeneric_OpXor64(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto endaf44e7f9fc58af30df69070953fb45ce goto endaf44e7f9fc58af30df69070953fb45ce
} }
v.Op = OpConst64 v.reset(OpConst64)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
...@@ -7394,10 +6593,7 @@ func rewriteValuegeneric_OpXor8(v *Value, config *Config) bool { ...@@ -7394,10 +6593,7 @@ func rewriteValuegeneric_OpXor8(v *Value, config *Config) bool {
if v.Args[1] != x { if v.Args[1] != x {
goto end949b3a60b7d181688e6f79f93c782fc8 goto end949b3a60b7d181688e6f79f93c782fc8
} }
v.Op = OpConst8 v.reset(OpConst8)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AuxInt = 0 v.AuxInt = 0
return true return true
} }
......
...@@ -170,6 +170,13 @@ func (v *Value) resetArgs() { ...@@ -170,6 +170,13 @@ func (v *Value) resetArgs() {
v.Args = v.argstorage[:0] 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. // copyInto makes a new value identical to v and adds it to the end of b.
func (v *Value) copyInto(b *Block) *Value { func (v *Value) copyInto(b *Block) *Value {
c := b.NewValue0(v.Line, v.Op, v.Type) 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