From 870080752d175d5cede350486acf36213c64f35c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Daniel=20Mart=C3=AD?= Date: Thu, 19 Sep 2019 15:31:03 +0100 Subject: [PATCH] cmd/compile: reduce rulegen's output by 200 KiB MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit First, renove unnecessary "// cond:" lines from the generated files. This shaves off about ~7k lines. Second, join "if cond { break }" statements via "||", which allows us to deduplicate a large number of them. This shaves off another ~25k lines. This change is not for readability or simplicity; but rather, to avoid unnecessary verbosity that makes the generated files larger. All in all, git reports that the generated files overall weigh ~200KiB less, or about 2.7% less. While at it, add a -trace flag to rulegen. Updates #33644. Change-Id: I3fac0290a6066070cc62400bf970a4ae0929470a Reviewed-on: https://go-review.googlesource.com/c/go/+/196498 Run-TryBot: Daniel Martí TryBot-Result: Gobot Gobot Reviewed-by: Keith Randall --- src/cmd/compile/internal/ssa/gen/main.go | 19 + src/cmd/compile/internal/ssa/gen/rulegen.go | 27 +- src/cmd/compile/internal/ssa/rewrite386.go | 3642 +----- .../internal/ssa/rewrite386splitload.go | 6 - src/cmd/compile/internal/ssa/rewriteAMD64.go | 10396 +++------------- .../internal/ssa/rewriteAMD64splitload.go | 8 - src/cmd/compile/internal/ssa/rewriteARM.go | 1360 +- src/cmd/compile/internal/ssa/rewriteARM64.go | 6999 ++--------- src/cmd/compile/internal/ssa/rewriteMIPS.go | 558 +- src/cmd/compile/internal/ssa/rewriteMIPS64.go | 562 +- src/cmd/compile/internal/ssa/rewritePPC64.go | 7317 ++--------- src/cmd/compile/internal/ssa/rewriteS390X.go | 6745 ++-------- src/cmd/compile/internal/ssa/rewriteWasm.go | 342 +- src/cmd/compile/internal/ssa/rewritedec.go | 12 - src/cmd/compile/internal/ssa/rewritedec64.go | 114 +- .../compile/internal/ssa/rewritegeneric.go | 5914 ++------- 16 files changed, 6324 insertions(+), 37697 deletions(-) diff --git a/src/cmd/compile/internal/ssa/gen/main.go b/src/cmd/compile/internal/ssa/gen/main.go index 643b570f7a..0891debb24 100644 --- a/src/cmd/compile/internal/ssa/gen/main.go +++ b/src/cmd/compile/internal/ssa/gen/main.go @@ -20,6 +20,7 @@ import ( "regexp" "runtime" "runtime/pprof" + "runtime/trace" "sort" "strings" "sync" @@ -101,6 +102,7 @@ var archs []arch var cpuprofile = flag.String("cpuprofile", "", "write cpu profile to `file`") var memprofile = flag.String("memprofile", "", "write memory profile to `file`") +var tracefile = flag.String("trace", "", "write trace to `file`") func main() { flag.Parse() @@ -115,6 +117,23 @@ func main() { } defer pprof.StopCPUProfile() } + if *tracefile != "" { + f, err := os.Create(*tracefile) + if err != nil { + log.Fatalf("failed to create trace output file: %v", err) + } + defer func() { + if err := f.Close(); err != nil { + log.Fatalf("failed to close trace file: %v", err) + } + }() + + if err := trace.Start(f); err != nil { + log.Fatalf("failed to start trace: %v", err) + } + defer trace.Stop() + } + sort.Sort(ArchsByName(archs)) // The generate tasks are run concurrently, since they are CPU-intensive diff --git a/src/cmd/compile/internal/ssa/gen/rulegen.go b/src/cmd/compile/internal/ssa/gen/rulegen.go index 215f051370..fbbe4eefdc 100644 --- a/src/cmd/compile/internal/ssa/gen/rulegen.go +++ b/src/cmd/compile/internal/ssa/gen/rulegen.go @@ -587,7 +587,9 @@ func fprint(w io.Writer, n Node) { } case *RuleRewrite: fmt.Fprintf(w, "// match: %s\n", n.match) - fmt.Fprintf(w, "// cond: %s\n", n.cond) + if n.cond != "" { + fmt.Fprintf(w, "// cond: %s\n", n.cond) + } fmt.Fprintf(w, "// result: %s\n", n.result) if n.checkOp != "" { fmt.Fprintf(w, "for v.Op == %s {\n", n.checkOp) @@ -636,13 +638,26 @@ type bodyBase struct { canFail bool } -func (w *bodyBase) add(nodes ...Statement) { - w.list = append(w.list, nodes...) - for _, node := range nodes { - if _, ok := node.(*CondBreak); ok { - w.canFail = true +func (w *bodyBase) add(node Statement) { + var last Statement + if len(w.list) > 0 { + last = w.list[len(w.list)-1] + } + if node, ok := node.(*CondBreak); ok { + w.canFail = true + if last, ok := last.(*CondBreak); ok { + // Add to the previous "if { break }" via a + // logical OR, which will save verbosity. + last.expr = &ast.BinaryExpr{ + Op: token.LOR, + X: last.expr, + Y: node.expr, + } + return } } + + w.list = append(w.list, node) } // declared reports if the body contains a Declare with the given name. diff --git a/src/cmd/compile/internal/ssa/rewrite386.go b/src/cmd/compile/internal/ssa/rewrite386.go index a4796060cf..08139d6ae4 100644 --- a/src/cmd/compile/internal/ssa/rewrite386.go +++ b/src/cmd/compile/internal/ssa/rewrite386.go @@ -709,7 +709,6 @@ func rewriteValue386(v *Value) bool { } func rewriteValue386_Op386ADCL_0(v *Value) bool { // match: (ADCL x (MOVLconst [c]) f) - // cond: // result: (ADCLconst [c] x f) for { f := v.Args[2] @@ -726,7 +725,6 @@ func rewriteValue386_Op386ADCL_0(v *Value) bool { return true } // match: (ADCL (MOVLconst [c]) x f) - // cond: // result: (ADCLconst [c] x f) for { f := v.Args[2] @@ -743,7 +741,6 @@ func rewriteValue386_Op386ADCL_0(v *Value) bool { return true } // match: (ADCL (MOVLconst [c]) x f) - // cond: // result: (ADCLconst [c] x f) for { f := v.Args[2] @@ -760,7 +757,6 @@ func rewriteValue386_Op386ADCL_0(v *Value) bool { return true } // match: (ADCL x (MOVLconst [c]) f) - // cond: // result: (ADCLconst [c] x f) for { f := v.Args[2] @@ -780,7 +776,6 @@ func rewriteValue386_Op386ADCL_0(v *Value) bool { } func rewriteValue386_Op386ADDL_0(v *Value) bool { // match: (ADDL x (MOVLconst [c])) - // cond: // result: (ADDLconst [c] x) for { _ = v.Args[1] @@ -796,7 +791,6 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { return true } // match: (ADDL (MOVLconst [c]) x) - // cond: // result: (ADDLconst [c] x) for { x := v.Args[1] @@ -826,10 +820,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -853,10 +844,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -881,10 +869,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -909,10 +894,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -937,10 +919,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -965,10 +944,7 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -977,16 +953,12 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { return true } // match: (ADDL x (SHLLconst [3] y)) - // cond: // result: (LEAL8 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 3 { break } y := v_1.Args[0] @@ -996,15 +968,11 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { return true } // match: (ADDL (SHLLconst [3] y) x) - // cond: // result: (LEAL8 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 3 { break } y := v_0.Args[0] @@ -1017,16 +985,12 @@ func rewriteValue386_Op386ADDL_0(v *Value) bool { } func rewriteValue386_Op386ADDL_10(v *Value) bool { // match: (ADDL x (SHLLconst [2] y)) - // cond: // result: (LEAL4 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } y := v_1.Args[0] @@ -1036,15 +1000,11 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL (SHLLconst [2] y) x) - // cond: // result: (LEAL4 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 2 { break } y := v_0.Args[0] @@ -1054,16 +1014,12 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL x (SHLLconst [1] y)) - // cond: // result: (LEAL2 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -1073,15 +1029,11 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL (SHLLconst [1] y) x) - // cond: // result: (LEAL2 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 1 { break } y := v_0.Args[0] @@ -1091,7 +1043,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL y y)) - // cond: // result: (LEAL2 x y) for { _ = v.Args[1] @@ -1110,7 +1061,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL y y) x) - // cond: // result: (LEAL2 x y) for { x := v.Args[1] @@ -1128,7 +1078,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL x y)) - // cond: // result: (LEAL2 y x) for { _ = v.Args[1] @@ -1147,7 +1096,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL y x)) - // cond: // result: (LEAL2 y x) for { _ = v.Args[1] @@ -1167,7 +1115,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL x y) x) - // cond: // result: (LEAL2 y x) for { x := v.Args[1] @@ -1185,7 +1132,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL y x) x) - // cond: // result: (LEAL2 y x) for { x := v.Args[1] @@ -1207,7 +1153,6 @@ func rewriteValue386_Op386ADDL_10(v *Value) bool { } func rewriteValue386_Op386ADDL_20(v *Value) bool { // match: (ADDL (ADDLconst [c] x) y) - // cond: // result: (LEAL1 [c] x y) for { y := v.Args[1] @@ -1224,7 +1169,6 @@ func rewriteValue386_Op386ADDL_20(v *Value) bool { return true } // match: (ADDL y (ADDLconst [c] x)) - // cond: // result: (LEAL1 [c] x y) for { _ = v.Args[1] @@ -1389,7 +1333,6 @@ func rewriteValue386_Op386ADDL_20(v *Value) bool { return true } // match: (ADDL x (NEGL y)) - // cond: // result: (SUBL x y) for { _ = v.Args[1] @@ -1405,7 +1348,6 @@ func rewriteValue386_Op386ADDL_20(v *Value) bool { return true } // match: (ADDL (NEGL y) x) - // cond: // result: (SUBL x y) for { x := v.Args[1] @@ -1423,7 +1365,6 @@ func rewriteValue386_Op386ADDL_20(v *Value) bool { } func rewriteValue386_Op386ADDLcarry_0(v *Value) bool { // match: (ADDLcarry x (MOVLconst [c])) - // cond: // result: (ADDLconstcarry [c] x) for { _ = v.Args[1] @@ -1439,7 +1380,6 @@ func rewriteValue386_Op386ADDLcarry_0(v *Value) bool { return true } // match: (ADDLcarry (MOVLconst [c]) x) - // cond: // result: (ADDLconstcarry [c] x) for { x := v.Args[1] @@ -1457,7 +1397,6 @@ func rewriteValue386_Op386ADDLcarry_0(v *Value) bool { } func rewriteValue386_Op386ADDLconst_0(v *Value) bool { // match: (ADDLconst [c] (ADDL x y)) - // cond: // result: (LEAL1 [c] x y) for { c := v.AuxInt @@ -1601,7 +1540,6 @@ func rewriteValue386_Op386ADDLconst_0(v *Value) bool { return true } // match: (ADDLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [int64(int32(c+d))]) for { c := v.AuxInt @@ -1615,7 +1553,6 @@ func rewriteValue386_Op386ADDLconst_0(v *Value) bool { return true } // match: (ADDLconst [c] (ADDLconst [d] x)) - // cond: // result: (ADDLconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -2326,7 +2263,6 @@ func rewriteValue386_Op386ADDSSload_0(v *Value) bool { } func rewriteValue386_Op386ANDL_0(v *Value) bool { // match: (ANDL x (MOVLconst [c])) - // cond: // result: (ANDLconst [c] x) for { _ = v.Args[1] @@ -2342,7 +2278,6 @@ func rewriteValue386_Op386ANDL_0(v *Value) bool { return true } // match: (ANDL (MOVLconst [c]) x) - // cond: // result: (ANDLconst [c] x) for { x := v.Args[1] @@ -2459,7 +2394,6 @@ func rewriteValue386_Op386ANDL_0(v *Value) bool { return true } // match: (ANDL x x) - // cond: // result: x for { x := v.Args[1] @@ -2475,7 +2409,6 @@ func rewriteValue386_Op386ANDL_0(v *Value) bool { } func rewriteValue386_Op386ANDLconst_0(v *Value) bool { // match: (ANDLconst [c] (ANDLconst [d] x)) - // cond: // result: (ANDLconst [c & d] x) for { c := v.AuxInt @@ -2517,7 +2450,6 @@ func rewriteValue386_Op386ANDLconst_0(v *Value) bool { return true } // match: (ANDLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [c&d]) for { c := v.AuxInt @@ -3007,7 +2939,6 @@ func rewriteValue386_Op386ANDLmodifyidx4_0(v *Value) bool { func rewriteValue386_Op386CMPB_0(v *Value) bool { b := v.Block // match: (CMPB x (MOVLconst [c])) - // cond: // result: (CMPBconst x [int64(int8(c))]) for { _ = v.Args[1] @@ -3023,7 +2954,6 @@ func rewriteValue386_Op386CMPB_0(v *Value) bool { return true } // match: (CMPB (MOVLconst [c]) x) - // cond: // result: (InvertFlags (CMPBconst x [int64(int8(c))])) for { x := v.Args[1] @@ -3233,7 +3163,6 @@ func rewriteValue386_Op386CMPBconst_0(v *Value) bool { return true } // match: (CMPBconst x [0]) - // cond: // result: (TESTB x x) for { if v.AuxInt != 0 { @@ -3302,7 +3231,6 @@ func rewriteValue386_Op386CMPBload_0(v *Value) bool { func rewriteValue386_Op386CMPL_0(v *Value) bool { b := v.Block // match: (CMPL x (MOVLconst [c])) - // cond: // result: (CMPLconst x [c]) for { _ = v.Args[1] @@ -3318,7 +3246,6 @@ func rewriteValue386_Op386CMPL_0(v *Value) bool { return true } // match: (CMPL (MOVLconst [c]) x) - // cond: // result: (InvertFlags (CMPLconst x [c])) for { x := v.Args[1] @@ -3543,7 +3470,6 @@ func rewriteValue386_Op386CMPLconst_0(v *Value) bool { return true } // match: (CMPLconst x [0]) - // cond: // result: (TESTL x x) for { if v.AuxInt != 0 { @@ -3616,7 +3542,6 @@ func rewriteValue386_Op386CMPLload_0(v *Value) bool { func rewriteValue386_Op386CMPW_0(v *Value) bool { b := v.Block // match: (CMPW x (MOVLconst [c])) - // cond: // result: (CMPWconst x [int64(int16(c))]) for { _ = v.Args[1] @@ -3632,7 +3557,6 @@ func rewriteValue386_Op386CMPW_0(v *Value) bool { return true } // match: (CMPW (MOVLconst [c]) x) - // cond: // result: (InvertFlags (CMPWconst x [int64(int16(c))])) for { x := v.Args[1] @@ -3842,7 +3766,6 @@ func rewriteValue386_Op386CMPWconst_0(v *Value) bool { return true } // match: (CMPWconst x [0]) - // cond: // result: (TESTW x x) for { if v.AuxInt != 0 { @@ -4293,7 +4216,6 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} x (SHLLconst [1] y)) - // cond: // result: (LEAL2 [c] {s} x y) for { c := v.AuxInt @@ -4301,10 +4223,7 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -4316,17 +4235,13 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} (SHLLconst [1] y) x) - // cond: // result: (LEAL2 [c] {s} x y) for { c := v.AuxInt s := v.Aux x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 1 { break } y := v_0.Args[0] @@ -4338,7 +4253,6 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} x (SHLLconst [2] y)) - // cond: // result: (LEAL4 [c] {s} x y) for { c := v.AuxInt @@ -4346,10 +4260,7 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } y := v_1.Args[0] @@ -4361,17 +4272,13 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} (SHLLconst [2] y) x) - // cond: // result: (LEAL4 [c] {s} x y) for { c := v.AuxInt s := v.Aux x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 2 { break } y := v_0.Args[0] @@ -4383,7 +4290,6 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} x (SHLLconst [3] y)) - // cond: // result: (LEAL8 [c] {s} x y) for { c := v.AuxInt @@ -4391,10 +4297,7 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 3 { break } y := v_1.Args[0] @@ -4406,17 +4309,13 @@ func rewriteValue386_Op386LEAL1_0(v *Value) bool { return true } // match: (LEAL1 [c] {s} (SHLLconst [3] y) x) - // cond: // result: (LEAL8 [c] {s} x y) for { c := v.AuxInt s := v.Aux x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 3 { break } y := v_0.Args[0] @@ -4527,7 +4426,6 @@ func rewriteValue386_Op386LEAL2_0(v *Value) bool { return true } // match: (LEAL2 [c] {s} x (SHLLconst [1] y)) - // cond: // result: (LEAL4 [c] {s} x y) for { c := v.AuxInt @@ -4535,10 +4433,7 @@ func rewriteValue386_Op386LEAL2_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -4550,7 +4445,6 @@ func rewriteValue386_Op386LEAL2_0(v *Value) bool { return true } // match: (LEAL2 [c] {s} x (SHLLconst [2] y)) - // cond: // result: (LEAL8 [c] {s} x y) for { c := v.AuxInt @@ -4558,10 +4452,7 @@ func rewriteValue386_Op386LEAL2_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } y := v_1.Args[0] @@ -4647,7 +4538,6 @@ func rewriteValue386_Op386LEAL4_0(v *Value) bool { return true } // match: (LEAL4 [c] {s} x (SHLLconst [1] y)) - // cond: // result: (LEAL8 [c] {s} x y) for { c := v.AuxInt @@ -4655,10 +4545,7 @@ func rewriteValue386_Op386LEAL4_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -4924,7 +4811,6 @@ func rewriteValue386_Op386MOVBLZX_0(v *Value) bool { return true } // match: (MOVBLZX (ANDLconst [c] x)) - // cond: // result: (ANDLconst [c & 0xff] x) for { v_0 := v.Args[0] @@ -5072,10 +4958,7 @@ func rewriteValue386_Op386MOVBload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(Op386MOVLconst) @@ -5086,7 +4969,6 @@ func rewriteValue386_Op386MOVBload_0(v *Value) bool { } func rewriteValue386_Op386MOVBloadidx1_0(v *Value) bool { // match: (MOVBloadidx1 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVBloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -5108,7 +4990,6 @@ func rewriteValue386_Op386MOVBloadidx1_0(v *Value) bool { return true } // match: (MOVBloadidx1 [c] {sym} idx (ADDLconst [d] ptr) mem) - // cond: // result: (MOVBloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -5130,7 +5011,6 @@ func rewriteValue386_Op386MOVBloadidx1_0(v *Value) bool { return true } // match: (MOVBloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVBloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -5152,7 +5032,6 @@ func rewriteValue386_Op386MOVBloadidx1_0(v *Value) bool { return true } // match: (MOVBloadidx1 [c] {sym} (ADDLconst [d] idx) ptr mem) - // cond: // result: (MOVBloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -5179,7 +5058,6 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVBstore [off] {sym} ptr (MOVBLSX x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -5200,7 +5078,6 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBLZX x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -5357,31 +5234,16 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHRWconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != Op386SHRWconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != Op386MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstore) @@ -5401,31 +5263,16 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHRLconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != Op386SHRLconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != Op386MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstore) @@ -5446,13 +5293,7 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != Op386MOVBstore { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstore || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[2] @@ -5460,16 +5301,7 @@ func rewriteValue386_Op386MOVBstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != Op386SHRWconst { - break - } - if x_1.AuxInt != 8 { - break - } - if w != x_1.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1.Op != Op386SHRWconst || x_1.AuxInt != 8 || w != x_1.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstore) @@ -5493,13 +5325,7 @@ func rewriteValue386_Op386MOVBstore_10(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != Op386MOVBstore { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstore || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[2] @@ -5507,16 +5333,7 @@ func rewriteValue386_Op386MOVBstore_10(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != Op386SHRLconst { - break - } - if x_1.AuxInt != 8 { - break - } - if w != x_1.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1.Op != Op386SHRLconst || x_1.AuxInt != 8 || w != x_1.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstore) @@ -5542,13 +5359,7 @@ func rewriteValue386_Op386MOVBstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != Op386MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -5556,16 +5367,7 @@ func rewriteValue386_Op386MOVBstore_10(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstore) @@ -5655,7 +5457,6 @@ func rewriteValue386_Op386MOVBstoreconst_0(v *Value) bool { return true } // match: (MOVBstoreconst [x] {sym} (ADDL ptr idx) mem) - // cond: // result: (MOVBstoreconstidx1 [x] {sym} ptr idx mem) for { x := v.AuxInt @@ -5692,10 +5493,7 @@ func rewriteValue386_Op386MOVBstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVWstoreconst) @@ -5722,10 +5520,7 @@ func rewriteValue386_Op386MOVBstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVWstoreconst) @@ -5739,7 +5534,6 @@ func rewriteValue386_Op386MOVBstoreconst_0(v *Value) bool { } func rewriteValue386_Op386MOVBstoreconstidx1_0(v *Value) bool { // match: (MOVBstoreconstidx1 [x] {sym} (ADDLconst [c] ptr) idx mem) - // cond: // result: (MOVBstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -5761,7 +5555,6 @@ func rewriteValue386_Op386MOVBstoreconstidx1_0(v *Value) bool { return true } // match: (MOVBstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem) - // cond: // result: (MOVBstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -5800,13 +5593,7 @@ func rewriteValue386_Op386MOVBstoreconstidx1_0(v *Value) bool { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if i != x.Args[1] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || i != x.Args[1] || !(x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVWstoreconstidx1) @@ -5821,7 +5608,6 @@ func rewriteValue386_Op386MOVBstoreconstidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { // match: (MOVBstoreidx1 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVBstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -5845,7 +5631,6 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { return true } // match: (MOVBstoreidx1 [c] {sym} idx (ADDLconst [d] ptr) val mem) - // cond: // result: (MOVBstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -5869,7 +5654,6 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { return true } // match: (MOVBstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVBstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -5893,7 +5677,6 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { return true } // match: (MOVBstoreidx1 [c] {sym} (ADDLconst [d] idx) ptr val mem) - // cond: // result: (MOVBstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -5926,34 +5709,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -5975,34 +5740,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6024,34 +5771,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6073,34 +5802,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6122,34 +5833,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6171,34 +5864,16 @@ func rewriteValue386_Op386MOVBstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6223,34 +5898,16 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6272,34 +5929,16 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != Op386SHRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6322,33 +5961,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRLconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRLconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6371,33 +5992,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRLconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRLconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6420,33 +6023,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRLconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRLconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6469,33 +6054,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRLconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRLconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6518,33 +6085,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6567,33 +6116,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6616,33 +6147,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6665,33 +6178,15 @@ func rewriteValue386_Op386MOVBstoreidx1_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i+1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i+1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != Op386SHRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != Op386SHRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6722,33 +6217,15 @@ func rewriteValue386_Op386MOVBstoreidx1_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6776,33 +6253,15 @@ func rewriteValue386_Op386MOVBstoreidx1_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6830,33 +6289,15 @@ func rewriteValue386_Op386MOVBstoreidx1_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -6884,33 +6325,15 @@ func rewriteValue386_Op386MOVBstoreidx1_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVBstoreidx1 { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != Op386MOVBstoreidx1 || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVWstoreidx1) @@ -7083,10 +6506,7 @@ func rewriteValue386_Op386MOVLload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(Op386MOVLconst) @@ -7097,7 +6517,6 @@ func rewriteValue386_Op386MOVLload_0(v *Value) bool { } func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { // match: (MOVLloadidx1 [c] {sym} ptr (SHLLconst [2] idx) mem) - // cond: // result: (MOVLloadidx4 [c] {sym} ptr idx mem) for { c := v.AuxInt @@ -7105,10 +6524,7 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -7121,17 +6537,13 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { return true } // match: (MOVLloadidx1 [c] {sym} (SHLLconst [2] idx) ptr mem) - // cond: // result: (MOVLloadidx4 [c] {sym} ptr idx mem) for { c := v.AuxInt sym := v.Aux mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -7145,7 +6557,6 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { return true } // match: (MOVLloadidx1 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVLloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7167,7 +6578,6 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { return true } // match: (MOVLloadidx1 [c] {sym} idx (ADDLconst [d] ptr) mem) - // cond: // result: (MOVLloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7189,7 +6599,6 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { return true } // match: (MOVLloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVLloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7211,7 +6620,6 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { return true } // match: (MOVLloadidx1 [c] {sym} (ADDLconst [d] idx) ptr mem) - // cond: // result: (MOVLloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7236,7 +6644,6 @@ func rewriteValue386_Op386MOVLloadidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVLloadidx4_0(v *Value) bool { // match: (MOVLloadidx4 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVLloadidx4 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7258,7 +6665,6 @@ func rewriteValue386_Op386MOVLloadidx4_0(v *Value) bool { return true } // match: (MOVLloadidx4 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVLloadidx4 [int64(int32(c+4*d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -7449,24 +6855,12 @@ func rewriteValue386_Op386MOVLstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] y := v.Args[1] - if y.Op != Op386ADDLload { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ADDLload || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[2] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if mem != y.Args[2] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || mem != y.Args[2] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ADDLmodify) @@ -7486,24 +6880,12 @@ func rewriteValue386_Op386MOVLstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] y := v.Args[1] - if y.Op != Op386ANDLload { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ANDLload || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[2] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if mem != y.Args[2] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || mem != y.Args[2] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ANDLmodify) @@ -7523,24 +6905,12 @@ func rewriteValue386_Op386MOVLstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] y := v.Args[1] - if y.Op != Op386ORLload { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ORLload || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[2] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if mem != y.Args[2] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || mem != y.Args[2] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ORLmodify) @@ -7560,24 +6930,12 @@ func rewriteValue386_Op386MOVLstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] y := v.Args[1] - if y.Op != Op386XORLload { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386XORLload || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[2] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if mem != y.Args[2] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || mem != y.Args[2] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386XORLmodify) @@ -7605,23 +6963,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ADDLmodify) @@ -7647,23 +6993,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ADDLmodify) @@ -7688,23 +7022,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386SUBLmodify) @@ -7729,23 +7051,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ANDLmodify) @@ -7771,23 +7081,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLload { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } - if l.AuxInt != off { - break - } - if l.Aux != sym { - break - } - _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + _ = l.Args[1] + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ANDLmodify) @@ -7812,23 +7110,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ORLmodify) @@ -7854,23 +7140,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ORLmodify) @@ -7895,23 +7169,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386XORLmodify) @@ -7937,23 +7199,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386XORLmodify) @@ -7978,23 +7228,11 @@ func rewriteValue386_Op386MOVLstore_10(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ADDLconstmodify) @@ -8021,23 +7259,11 @@ func rewriteValue386_Op386MOVLstore_20(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ANDLconstmodify) @@ -8061,23 +7287,11 @@ func rewriteValue386_Op386MOVLstore_20(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ORLconstmodify) @@ -8101,23 +7315,11 @@ func rewriteValue386_Op386MOVLstore_20(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLload { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLload || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[1] - if ptr != l.Args[0] { - break - } - if mem != l.Args[1] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || mem != l.Args[1] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386XORLconstmodify) @@ -8232,7 +7434,6 @@ func rewriteValue386_Op386MOVLstoreconst_0(v *Value) bool { return true } // match: (MOVLstoreconst [x] {sym} (ADDL ptr idx) mem) - // cond: // result: (MOVLstoreconstidx1 [x] {sym} ptr idx mem) for { x := v.AuxInt @@ -8256,7 +7457,6 @@ func rewriteValue386_Op386MOVLstoreconst_0(v *Value) bool { } func rewriteValue386_Op386MOVLstoreconstidx1_0(v *Value) bool { // match: (MOVLstoreconstidx1 [c] {sym} ptr (SHLLconst [2] idx) mem) - // cond: // result: (MOVLstoreconstidx4 [c] {sym} ptr idx mem) for { c := v.AuxInt @@ -8264,10 +7464,7 @@ func rewriteValue386_Op386MOVLstoreconstidx1_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -8280,7 +7477,6 @@ func rewriteValue386_Op386MOVLstoreconstidx1_0(v *Value) bool { return true } // match: (MOVLstoreconstidx1 [x] {sym} (ADDLconst [c] ptr) idx mem) - // cond: // result: (MOVLstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -8302,7 +7498,6 @@ func rewriteValue386_Op386MOVLstoreconstidx1_0(v *Value) bool { return true } // match: (MOVLstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem) - // cond: // result: (MOVLstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -8327,7 +7522,6 @@ func rewriteValue386_Op386MOVLstoreconstidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVLstoreconstidx4_0(v *Value) bool { // match: (MOVLstoreconstidx4 [x] {sym} (ADDLconst [c] ptr) idx mem) - // cond: // result: (MOVLstoreconstidx4 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -8349,7 +7543,6 @@ func rewriteValue386_Op386MOVLstoreconstidx4_0(v *Value) bool { return true } // match: (MOVLstoreconstidx4 [x] {sym} ptr (ADDLconst [c] idx) mem) - // cond: // result: (MOVLstoreconstidx4 [ValAndOff(x).add(4*c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -8374,7 +7567,6 @@ func rewriteValue386_Op386MOVLstoreconstidx4_0(v *Value) bool { } func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { // match: (MOVLstoreidx1 [c] {sym} ptr (SHLLconst [2] idx) val mem) - // cond: // result: (MOVLstoreidx4 [c] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8382,10 +7574,7 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -8400,17 +7589,13 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { return true } // match: (MOVLstoreidx1 [c] {sym} (SHLLconst [2] idx) ptr val mem) - // cond: // result: (MOVLstoreidx4 [c] {sym} ptr idx val mem) for { c := v.AuxInt sym := v.Aux mem := v.Args[3] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -8426,7 +7611,6 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { return true } // match: (MOVLstoreidx1 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVLstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8450,7 +7634,6 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { return true } // match: (MOVLstoreidx1 [c] {sym} idx (ADDLconst [d] ptr) val mem) - // cond: // result: (MOVLstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8474,7 +7657,6 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { return true } // match: (MOVLstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVLstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8498,7 +7680,6 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { return true } // match: (MOVLstoreidx1 [c] {sym} (ADDLconst [d] idx) ptr val mem) - // cond: // result: (MOVLstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8525,7 +7706,6 @@ func rewriteValue386_Op386MOVLstoreidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { // match: (MOVLstoreidx4 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVLstoreidx4 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8549,7 +7729,6 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { return true } // match: (MOVLstoreidx4 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVLstoreidx4 [int64(int32(c+4*d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -8582,27 +7761,12 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { ptr := v.Args[0] idx := v.Args[1] y := v.Args[2] - if y.Op != Op386ADDLloadidx4 { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ADDLloadidx4 || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[3] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if idx != y.Args[2] { - break - } - if mem != y.Args[3] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || idx != y.Args[2] || mem != y.Args[3] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ADDLmodifyidx4) @@ -8624,27 +7788,12 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { ptr := v.Args[0] idx := v.Args[1] y := v.Args[2] - if y.Op != Op386ANDLloadidx4 { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ANDLloadidx4 || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[3] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if idx != y.Args[2] { - break - } - if mem != y.Args[3] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || idx != y.Args[2] || mem != y.Args[3] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ANDLmodifyidx4) @@ -8666,27 +7815,12 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { ptr := v.Args[0] idx := v.Args[1] y := v.Args[2] - if y.Op != Op386ORLloadidx4 { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386ORLloadidx4 || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[3] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if idx != y.Args[2] { - break - } - if mem != y.Args[3] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || idx != y.Args[2] || mem != y.Args[3] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386ORLmodifyidx4) @@ -8708,27 +7842,12 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { ptr := v.Args[0] idx := v.Args[1] y := v.Args[2] - if y.Op != Op386XORLloadidx4 { - break - } - if y.AuxInt != off { - break - } - if y.Aux != sym { + if y.Op != Op386XORLloadidx4 || y.AuxInt != off || y.Aux != sym { break } _ = y.Args[3] x := y.Args[0] - if ptr != y.Args[1] { - break - } - if idx != y.Args[2] { - break - } - if mem != y.Args[3] { - break - } - if !(y.Uses == 1 && clobber(y)) { + if ptr != y.Args[1] || idx != y.Args[2] || mem != y.Args[3] || !(y.Uses == 1 && clobber(y)) { break } v.reset(Op386XORLmodifyidx4) @@ -8755,26 +7874,11 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ADDLmodifyidx4) @@ -8802,26 +7906,11 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ADDLmodifyidx4) @@ -8848,26 +7937,11 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386SUBLmodifyidx4) @@ -8894,26 +7968,11 @@ func rewriteValue386_Op386MOVLstoreidx4_0(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ANDLmodifyidx4) @@ -8944,26 +8003,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ANDLmodifyidx4) @@ -8990,26 +8034,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ORLmodifyidx4) @@ -9037,26 +8066,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386ORLmodifyidx4) @@ -9083,26 +8097,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } x := y.Args[1] l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386XORLmodifyidx4) @@ -9130,26 +8129,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { _ = y.Args[1] x := y.Args[0] l := y.Args[1] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l)) { break } v.reset(Op386XORLmodifyidx4) @@ -9176,26 +8160,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ADDLconstmodifyidx4) @@ -9221,26 +8190,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ANDLconstmodifyidx4) @@ -9266,26 +8220,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386ORLconstmodifyidx4) @@ -9311,26 +8250,11 @@ func rewriteValue386_Op386MOVLstoreidx4_10(v *Value) bool { } c := y.AuxInt l := y.Args[0] - if l.Op != Op386MOVLloadidx4 { - break - } - if l.AuxInt != off { - break - } - if l.Aux != sym { + if l.Op != Op386MOVLloadidx4 || l.AuxInt != off || l.Aux != sym { break } _ = l.Args[2] - if ptr != l.Args[0] { - break - } - if idx != l.Args[1] { - break - } - if mem != l.Args[2] { - break - } - if !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { + if ptr != l.Args[0] || idx != l.Args[1] || mem != l.Args[2] || !(y.Uses == 1 && l.Uses == 1 && clobber(y) && clobber(l) && validValAndOff(c, off)) { break } v.reset(Op386XORLconstmodifyidx4) @@ -9493,7 +8417,6 @@ func rewriteValue386_Op386MOVSDload_0(v *Value) bool { } func rewriteValue386_Op386MOVSDloadidx1_0(v *Value) bool { // match: (MOVSDloadidx1 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVSDloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -9515,7 +8438,6 @@ func rewriteValue386_Op386MOVSDloadidx1_0(v *Value) bool { return true } // match: (MOVSDloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVSDloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -9540,7 +8462,6 @@ func rewriteValue386_Op386MOVSDloadidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVSDloadidx8_0(v *Value) bool { // match: (MOVSDloadidx8 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVSDloadidx8 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -9562,7 +8483,6 @@ func rewriteValue386_Op386MOVSDloadidx8_0(v *Value) bool { return true } // match: (MOVSDloadidx8 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVSDloadidx8 [int64(int32(c+8*d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -9725,7 +8645,6 @@ func rewriteValue386_Op386MOVSDstore_0(v *Value) bool { } func rewriteValue386_Op386MOVSDstoreidx1_0(v *Value) bool { // match: (MOVSDstoreidx1 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVSDstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -9749,7 +8668,6 @@ func rewriteValue386_Op386MOVSDstoreidx1_0(v *Value) bool { return true } // match: (MOVSDstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVSDstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -9776,7 +8694,6 @@ func rewriteValue386_Op386MOVSDstoreidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVSDstoreidx8_0(v *Value) bool { // match: (MOVSDstoreidx8 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVSDstoreidx8 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -9800,7 +8717,6 @@ func rewriteValue386_Op386MOVSDstoreidx8_0(v *Value) bool { return true } // match: (MOVSDstoreidx8 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVSDstoreidx8 [int64(int32(c+8*d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -9975,7 +8891,6 @@ func rewriteValue386_Op386MOVSSload_0(v *Value) bool { } func rewriteValue386_Op386MOVSSloadidx1_0(v *Value) bool { // match: (MOVSSloadidx1 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVSSloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -9997,7 +8912,6 @@ func rewriteValue386_Op386MOVSSloadidx1_0(v *Value) bool { return true } // match: (MOVSSloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVSSloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10022,7 +8936,6 @@ func rewriteValue386_Op386MOVSSloadidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVSSloadidx4_0(v *Value) bool { // match: (MOVSSloadidx4 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVSSloadidx4 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10044,7 +8957,6 @@ func rewriteValue386_Op386MOVSSloadidx4_0(v *Value) bool { return true } // match: (MOVSSloadidx4 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVSSloadidx4 [int64(int32(c+4*d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10207,7 +9119,6 @@ func rewriteValue386_Op386MOVSSstore_0(v *Value) bool { } func rewriteValue386_Op386MOVSSstoreidx1_0(v *Value) bool { // match: (MOVSSstoreidx1 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVSSstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -10231,7 +9142,6 @@ func rewriteValue386_Op386MOVSSstoreidx1_0(v *Value) bool { return true } // match: (MOVSSstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVSSstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -10258,7 +9168,6 @@ func rewriteValue386_Op386MOVSSstoreidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVSSstoreidx4_0(v *Value) bool { // match: (MOVSSstoreidx4 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVSSstoreidx4 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -10282,7 +9191,6 @@ func rewriteValue386_Op386MOVSSstoreidx4_0(v *Value) bool { return true } // match: (MOVSSstoreidx4 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVSSstoreidx4 [int64(int32(c+4*d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -10489,7 +9397,6 @@ func rewriteValue386_Op386MOVWLZX_0(v *Value) bool { return true } // match: (MOVWLZX (ANDLconst [c] x)) - // cond: // result: (ANDLconst [c & 0xffff] x) for { v_0 := v.Args[0] @@ -10663,10 +9570,7 @@ func rewriteValue386_Op386MOVWload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(Op386MOVLconst) @@ -10677,7 +9581,6 @@ func rewriteValue386_Op386MOVWload_0(v *Value) bool { } func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { // match: (MOVWloadidx1 [c] {sym} ptr (SHLLconst [1] idx) mem) - // cond: // result: (MOVWloadidx2 [c] {sym} ptr idx mem) for { c := v.AuxInt @@ -10685,10 +9588,7 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -10701,17 +9601,13 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { return true } // match: (MOVWloadidx1 [c] {sym} (SHLLconst [1] idx) ptr mem) - // cond: // result: (MOVWloadidx2 [c] {sym} ptr idx mem) for { c := v.AuxInt sym := v.Aux mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 1 { break } idx := v_0.Args[0] @@ -10725,7 +9621,6 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { return true } // match: (MOVWloadidx1 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVWloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10747,7 +9642,6 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { return true } // match: (MOVWloadidx1 [c] {sym} idx (ADDLconst [d] ptr) mem) - // cond: // result: (MOVWloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10769,7 +9663,6 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { return true } // match: (MOVWloadidx1 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVWloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10791,7 +9684,6 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { return true } // match: (MOVWloadidx1 [c] {sym} (ADDLconst [d] idx) ptr mem) - // cond: // result: (MOVWloadidx1 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10816,7 +9708,6 @@ func rewriteValue386_Op386MOVWloadidx1_0(v *Value) bool { } func rewriteValue386_Op386MOVWloadidx2_0(v *Value) bool { // match: (MOVWloadidx2 [c] {sym} (ADDLconst [d] ptr) idx mem) - // cond: // result: (MOVWloadidx2 [int64(int32(c+d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10838,7 +9729,6 @@ func rewriteValue386_Op386MOVWloadidx2_0(v *Value) bool { return true } // match: (MOVWloadidx2 [c] {sym} ptr (ADDLconst [d] idx) mem) - // cond: // result: (MOVWloadidx2 [int64(int32(c+2*d))] {sym} ptr idx mem) for { c := v.AuxInt @@ -10865,7 +9755,6 @@ func rewriteValue386_Op386MOVWstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVWstore [off] {sym} ptr (MOVWLSX x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -10886,7 +9775,6 @@ func rewriteValue386_Op386MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWLZX x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11071,31 +9959,16 @@ func rewriteValue386_Op386MOVWstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != Op386SHRLconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != Op386MOVWstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstore) @@ -11121,13 +9994,7 @@ func rewriteValue386_Op386MOVWstore_0(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != Op386MOVWstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -11135,16 +10002,7 @@ func rewriteValue386_Op386MOVWstore_0(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstore) @@ -11260,7 +10118,6 @@ func rewriteValue386_Op386MOVWstoreconst_0(v *Value) bool { return true } // match: (MOVWstoreconst [x] {sym} (ADDL ptr idx) mem) - // cond: // result: (MOVWstoreconstidx1 [x] {sym} ptr idx mem) for { x := v.AuxInt @@ -11297,10 +10154,7 @@ func rewriteValue386_Op386MOVWstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVLstoreconst) @@ -11327,10 +10181,7 @@ func rewriteValue386_Op386MOVWstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVLstoreconst) @@ -11344,7 +10195,6 @@ func rewriteValue386_Op386MOVWstoreconst_0(v *Value) bool { } func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { // match: (MOVWstoreconstidx1 [c] {sym} ptr (SHLLconst [1] idx) mem) - // cond: // result: (MOVWstoreconstidx2 [c] {sym} ptr idx mem) for { c := v.AuxInt @@ -11352,10 +10202,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -11368,7 +10215,6 @@ func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { return true } // match: (MOVWstoreconstidx1 [x] {sym} (ADDLconst [c] ptr) idx mem) - // cond: // result: (MOVWstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -11390,7 +10236,6 @@ func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { return true } // match: (MOVWstoreconstidx1 [x] {sym} ptr (ADDLconst [c] idx) mem) - // cond: // result: (MOVWstoreconstidx1 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -11429,13 +10274,7 @@ func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if i != x.Args[1] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || i != x.Args[1] || !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVLstoreconstidx1) @@ -11451,7 +10290,6 @@ func rewriteValue386_Op386MOVWstoreconstidx1_0(v *Value) bool { func rewriteValue386_Op386MOVWstoreconstidx2_0(v *Value) bool { b := v.Block // match: (MOVWstoreconstidx2 [x] {sym} (ADDLconst [c] ptr) idx mem) - // cond: // result: (MOVWstoreconstidx2 [ValAndOff(x).add(c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -11473,7 +10311,6 @@ func rewriteValue386_Op386MOVWstoreconstidx2_0(v *Value) bool { return true } // match: (MOVWstoreconstidx2 [x] {sym} ptr (ADDLconst [c] idx) mem) - // cond: // result: (MOVWstoreconstidx2 [ValAndOff(x).add(2*c)] {sym} ptr idx mem) for { x := v.AuxInt @@ -11512,13 +10349,7 @@ func rewriteValue386_Op386MOVWstoreconstidx2_0(v *Value) bool { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if i != x.Args[1] { - break - } - if !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || i != x.Args[1] || !(x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(Op386MOVLstoreconstidx1) @@ -11536,7 +10367,6 @@ func rewriteValue386_Op386MOVWstoreconstidx2_0(v *Value) bool { } func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { // match: (MOVWstoreidx1 [c] {sym} ptr (SHLLconst [1] idx) val mem) - // cond: // result: (MOVWstoreidx2 [c] {sym} ptr idx val mem) for { c := v.AuxInt @@ -11544,10 +10374,7 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != Op386SHLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -11562,17 +10389,13 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { return true } // match: (MOVWstoreidx1 [c] {sym} (SHLLconst [1] idx) ptr val mem) - // cond: // result: (MOVWstoreidx2 [c] {sym} ptr idx val mem) for { c := v.AuxInt sym := v.Aux mem := v.Args[3] v_0 := v.Args[0] - if v_0.Op != Op386SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != Op386SHLLconst || v_0.AuxInt != 1 { break } idx := v_0.Args[0] @@ -11588,7 +10411,6 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { return true } // match: (MOVWstoreidx1 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVWstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -11612,7 +10434,6 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { return true } // match: (MOVWstoreidx1 [c] {sym} idx (ADDLconst [d] ptr) val mem) - // cond: // result: (MOVWstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -11636,7 +10457,6 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { return true } // match: (MOVWstoreidx1 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVWstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -11660,7 +10480,6 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { return true } // match: (MOVWstoreidx1 [c] {sym} (ADDLconst [d] idx) ptr val mem) - // cond: // result: (MOVWstoreidx1 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -11693,34 +10512,16 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -11742,34 +10543,16 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -11791,34 +10574,16 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -11840,34 +10605,16 @@ func rewriteValue386_Op386MOVWstoreidx1_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -11898,33 +10645,15 @@ func rewriteValue386_Op386MOVWstoreidx1_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -11952,33 +10681,15 @@ func rewriteValue386_Op386MOVWstoreidx1_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -12006,33 +10717,15 @@ func rewriteValue386_Op386MOVWstoreidx1_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -12060,33 +10753,15 @@ func rewriteValue386_Op386MOVWstoreidx1_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx1 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx1 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -12103,7 +10778,6 @@ func rewriteValue386_Op386MOVWstoreidx1_10(v *Value) bool { func rewriteValue386_Op386MOVWstoreidx2_0(v *Value) bool { b := v.Block // match: (MOVWstoreidx2 [c] {sym} (ADDLconst [d] ptr) idx val mem) - // cond: // result: (MOVWstoreidx2 [int64(int32(c+d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -12127,7 +10801,6 @@ func rewriteValue386_Op386MOVWstoreidx2_0(v *Value) bool { return true } // match: (MOVWstoreidx2 [c] {sym} ptr (ADDLconst [d] idx) val mem) - // cond: // result: (MOVWstoreidx2 [int64(int32(c+2*d))] {sym} ptr idx val mem) for { c := v.AuxInt @@ -12160,34 +10833,16 @@ func rewriteValue386_Op386MOVWstoreidx2_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != Op386SHRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != Op386SHRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx2 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx2 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -12218,33 +10873,15 @@ func rewriteValue386_Op386MOVWstoreidx2_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != Op386MOVWstoreidx2 { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != Op386MOVWstoreidx2 || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != Op386SHRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != Op386SHRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(Op386MOVLstoreidx1) @@ -12263,7 +10900,6 @@ func rewriteValue386_Op386MOVWstoreidx2_0(v *Value) bool { } func rewriteValue386_Op386MULL_0(v *Value) bool { // match: (MULL x (MOVLconst [c])) - // cond: // result: (MULLconst [c] x) for { _ = v.Args[1] @@ -12279,7 +10915,6 @@ func rewriteValue386_Op386MULL_0(v *Value) bool { return true } // match: (MULL (MOVLconst [c]) x) - // cond: // result: (MULLconst [c] x) for { x := v.Args[1] @@ -12400,7 +11035,6 @@ func rewriteValue386_Op386MULL_0(v *Value) bool { func rewriteValue386_Op386MULLconst_0(v *Value) bool { b := v.Block // match: (MULLconst [c] (MULLconst [d] x)) - // cond: // result: (MULLconst [int64(int32(c * d))] x) for { c := v.AuxInt @@ -12416,7 +11050,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-9] x) - // cond: // result: (NEGL (LEAL8 x x)) for { if v.AuxInt != -9 { @@ -12431,7 +11064,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-5] x) - // cond: // result: (NEGL (LEAL4 x x)) for { if v.AuxInt != -5 { @@ -12446,7 +11078,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-3] x) - // cond: // result: (NEGL (LEAL2 x x)) for { if v.AuxInt != -3 { @@ -12461,7 +11092,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-1] x) - // cond: // result: (NEGL x) for { if v.AuxInt != -1 { @@ -12473,7 +11103,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [0] _) - // cond: // result: (MOVLconst [0]) for { if v.AuxInt != 0 { @@ -12484,7 +11113,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [1] x) - // cond: // result: x for { if v.AuxInt != 1 { @@ -12497,7 +11125,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [3] x) - // cond: // result: (LEAL2 x x) for { if v.AuxInt != 3 { @@ -12510,7 +11137,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [5] x) - // cond: // result: (LEAL4 x x) for { if v.AuxInt != 5 { @@ -12523,7 +11149,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { return true } // match: (MULLconst [7] x) - // cond: // result: (LEAL2 x (LEAL2 x x)) for { if v.AuxInt != 7 { @@ -12543,7 +11168,6 @@ func rewriteValue386_Op386MULLconst_0(v *Value) bool { func rewriteValue386_Op386MULLconst_10(v *Value) bool { b := v.Block // match: (MULLconst [9] x) - // cond: // result: (LEAL8 x x) for { if v.AuxInt != 9 { @@ -12556,7 +11180,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [11] x) - // cond: // result: (LEAL2 x (LEAL4 x x)) for { if v.AuxInt != 11 { @@ -12572,7 +11195,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [13] x) - // cond: // result: (LEAL4 x (LEAL2 x x)) for { if v.AuxInt != 13 { @@ -12588,7 +11210,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [19] x) - // cond: // result: (LEAL2 x (LEAL8 x x)) for { if v.AuxInt != 19 { @@ -12604,7 +11225,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [21] x) - // cond: // result: (LEAL4 x (LEAL4 x x)) for { if v.AuxInt != 21 { @@ -12620,7 +11240,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [25] x) - // cond: // result: (LEAL8 x (LEAL2 x x)) for { if v.AuxInt != 25 { @@ -12636,7 +11255,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [27] x) - // cond: // result: (LEAL8 (LEAL2 x x) (LEAL2 x x)) for { if v.AuxInt != 27 { @@ -12655,7 +11273,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [37] x) - // cond: // result: (LEAL4 x (LEAL8 x x)) for { if v.AuxInt != 37 { @@ -12671,7 +11288,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [41] x) - // cond: // result: (LEAL8 x (LEAL4 x x)) for { if v.AuxInt != 41 { @@ -12687,7 +11303,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { return true } // match: (MULLconst [45] x) - // cond: // result: (LEAL8 (LEAL4 x x) (LEAL4 x x)) for { if v.AuxInt != 45 { @@ -12710,7 +11325,6 @@ func rewriteValue386_Op386MULLconst_10(v *Value) bool { func rewriteValue386_Op386MULLconst_20(v *Value) bool { b := v.Block // match: (MULLconst [73] x) - // cond: // result: (LEAL8 x (LEAL8 x x)) for { if v.AuxInt != 73 { @@ -12726,7 +11340,6 @@ func rewriteValue386_Op386MULLconst_20(v *Value) bool { return true } // match: (MULLconst [81] x) - // cond: // result: (LEAL8 (LEAL8 x x) (LEAL8 x x)) for { if v.AuxInt != 81 { @@ -12884,7 +11497,6 @@ func rewriteValue386_Op386MULLconst_20(v *Value) bool { } func rewriteValue386_Op386MULLconst_30(v *Value) bool { // match: (MULLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [int64(int32(c*d))]) for { c := v.AuxInt @@ -13292,7 +11904,6 @@ func rewriteValue386_Op386MULSSload_0(v *Value) bool { } func rewriteValue386_Op386NEGL_0(v *Value) bool { // match: (NEGL (MOVLconst [c])) - // cond: // result: (MOVLconst [int64(int32(-c))]) for { v_0 := v.Args[0] @@ -13308,7 +11919,6 @@ func rewriteValue386_Op386NEGL_0(v *Value) bool { } func rewriteValue386_Op386NOTL_0(v *Value) bool { // match: (NOTL (MOVLconst [c])) - // cond: // result: (MOVLconst [^c]) for { v_0 := v.Args[0] @@ -13324,7 +11934,6 @@ func rewriteValue386_Op386NOTL_0(v *Value) bool { } func rewriteValue386_Op386ORL_0(v *Value) bool { // match: (ORL x (MOVLconst [c])) - // cond: // result: (ORLconst [c] x) for { _ = v.Args[1] @@ -13340,7 +11949,6 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { return true } // match: (ORL (MOVLconst [c]) x) - // cond: // result: (ORLconst [c] x) for { x := v.Args[1] @@ -13370,10 +11978,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -13397,10 +12002,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -13425,10 +12027,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -13453,10 +12052,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -13481,10 +12077,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -13509,10 +12102,7 @@ func rewriteValue386_Op386ORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -13628,7 +12218,6 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { return true } // match: (ORL x x) - // cond: // result: x for { x := v.Args[1] @@ -13654,10 +12243,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] s0 := v.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -13669,13 +12255,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -13694,10 +12274,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { for { _ = v.Args[1] s0 := v.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -13717,13 +12294,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -13755,10 +12326,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -13770,17 +12338,11 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -13792,13 +12354,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -13822,10 +12378,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -13845,17 +12398,11 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -13867,13 +12414,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -13892,10 +12433,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -13920,17 +12458,11 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -13942,13 +12474,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -13967,10 +12493,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -13987,10 +12510,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14002,10 +12522,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := o0.Args[1] @@ -14017,13 +12534,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14051,10 +12562,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := v.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14066,16 +12574,7 @@ func rewriteValue386_Op386ORL_10(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14108,10 +12607,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := v.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14123,16 +12619,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14161,10 +12648,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := v.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14176,16 +12660,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14214,10 +12689,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := v.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14229,16 +12701,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14258,10 +12721,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { for { _ = v.Args[1] s0 := v.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14282,16 +12742,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14311,10 +12762,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { for { _ = v.Args[1] s0 := v.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14335,16 +12783,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14364,10 +12803,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { for { _ = v.Args[1] s0 := v.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14388,16 +12824,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14417,10 +12844,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { for { _ = v.Args[1] s0 := v.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -14441,16 +12865,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0)) { break } b = mergePoint(b, x0, x1) @@ -14484,10 +12899,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14499,20 +12911,11 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14524,16 +12927,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14567,10 +12961,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14582,20 +12973,11 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14607,16 +12989,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14650,10 +13023,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14665,20 +13035,11 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14690,16 +13051,7 @@ func rewriteValue386_Op386ORL_20(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14737,10 +13089,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14752,20 +13101,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14777,16 +13117,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14811,10 +13142,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14835,20 +13163,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14860,16 +13179,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14894,10 +13204,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14918,20 +13225,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14943,16 +13241,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14977,10 +13266,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15001,20 +13287,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15026,16 +13303,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15060,10 +13328,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15084,20 +13349,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15109,16 +13365,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if p != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15152,10 +13399,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15167,20 +13411,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15192,16 +13427,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15235,10 +13461,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15250,20 +13473,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15275,16 +13489,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15318,10 +13523,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15333,20 +13535,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15358,16 +13551,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15401,10 +13585,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15416,20 +13597,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15441,16 +13613,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15475,10 +13638,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15499,20 +13659,11 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15524,16 +13675,7 @@ func rewriteValue386_Op386ORL_30(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15562,10 +13704,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15586,20 +13725,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15611,16 +13741,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15645,10 +13766,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15669,20 +13787,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15694,16 +13803,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15728,10 +13828,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15752,20 +13849,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s1 := v.Args[1] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15777,16 +13865,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x2.Args[2] - if idx != x2.Args[0] { - break - } - if p != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x2.Args[0] || p != x2.Args[1] || mem != x2.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15806,10 +13885,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15835,20 +13911,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15860,16 +13927,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15889,10 +13947,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15918,20 +13973,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15943,16 +13989,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15972,10 +14009,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16001,20 +14035,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16026,16 +14051,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16055,10 +14071,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16084,41 +14097,23 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] - if x1.Op != Op386MOVBloadidx1 { - break - } - i2 := x1.AuxInt - if x1.Aux != s { - break - } - _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { + if x1.Op != Op386MOVBloadidx1 { break } - if mem != x1.Args[2] { + i2 := x1.AuxInt + if x1.Aux != s { break } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + _ = x1.Args[2] + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16138,10 +14133,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16167,20 +14159,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16192,16 +14175,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16221,10 +14195,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16250,20 +14221,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16275,16 +14237,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16304,10 +14257,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16333,20 +14283,11 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16358,16 +14299,7 @@ func rewriteValue386_Op386ORL_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16391,10 +14323,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16420,20 +14349,11 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] { break } s0 := o0.Args[1] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16445,16 +14365,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16474,10 +14385,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16495,10 +14403,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16510,13 +14415,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16528,16 +14427,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16557,10 +14447,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16578,10 +14465,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16593,13 +14477,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16611,16 +14489,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16640,10 +14509,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16661,10 +14527,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16676,13 +14539,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16694,16 +14551,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16723,10 +14571,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16744,10 +14589,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16759,13 +14601,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16777,16 +14613,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16806,10 +14633,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16827,10 +14651,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16842,13 +14663,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16860,16 +14675,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16889,10 +14695,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16910,10 +14713,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -16925,13 +14725,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -16943,16 +14737,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16972,10 +14757,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -16993,10 +14775,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -17008,13 +14787,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -17026,16 +14799,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -17055,10 +14819,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { for { _ = v.Args[1] s1 := v.Args[0] - if s1.Op != Op386SHLLconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != Op386SHLLconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -17076,10 +14837,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != Op386SHLLconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != Op386SHLLconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -17091,13 +14849,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] { break } x0 := o0.Args[1] @@ -17109,16 +14861,7 @@ func rewriteValue386_Op386ORL_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -17162,7 +14905,6 @@ func rewriteValue386_Op386ORLconst_0(v *Value) bool { return true } // match: (ORLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [c|d]) for { c := v.AuxInt @@ -17651,7 +15393,6 @@ func rewriteValue386_Op386ORLmodifyidx4_0(v *Value) bool { } func rewriteValue386_Op386ROLBconst_0(v *Value) bool { // match: (ROLBconst [c] (ROLBconst [d] x)) - // cond: // result: (ROLBconst [(c+d)& 7] x) for { c := v.AuxInt @@ -17667,7 +15408,6 @@ func rewriteValue386_Op386ROLBconst_0(v *Value) bool { return true } // match: (ROLBconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17683,7 +15423,6 @@ func rewriteValue386_Op386ROLBconst_0(v *Value) bool { } func rewriteValue386_Op386ROLLconst_0(v *Value) bool { // match: (ROLLconst [c] (ROLLconst [d] x)) - // cond: // result: (ROLLconst [(c+d)&31] x) for { c := v.AuxInt @@ -17699,7 +15438,6 @@ func rewriteValue386_Op386ROLLconst_0(v *Value) bool { return true } // match: (ROLLconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17715,7 +15453,6 @@ func rewriteValue386_Op386ROLLconst_0(v *Value) bool { } func rewriteValue386_Op386ROLWconst_0(v *Value) bool { // match: (ROLWconst [c] (ROLWconst [d] x)) - // cond: // result: (ROLWconst [(c+d)&15] x) for { c := v.AuxInt @@ -17731,7 +15468,6 @@ func rewriteValue386_Op386ROLWconst_0(v *Value) bool { return true } // match: (ROLWconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17747,7 +15483,6 @@ func rewriteValue386_Op386ROLWconst_0(v *Value) bool { } func rewriteValue386_Op386SARB_0(v *Value) bool { // match: (SARB x (MOVLconst [c])) - // cond: // result: (SARBconst [min(c&31,7)] x) for { _ = v.Args[1] @@ -17766,7 +15501,6 @@ func rewriteValue386_Op386SARB_0(v *Value) bool { } func rewriteValue386_Op386SARBconst_0(v *Value) bool { // match: (SARBconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17779,7 +15513,6 @@ func rewriteValue386_Op386SARBconst_0(v *Value) bool { return true } // match: (SARBconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [d>>uint64(c)]) for { c := v.AuxInt @@ -17796,7 +15529,6 @@ func rewriteValue386_Op386SARBconst_0(v *Value) bool { } func rewriteValue386_Op386SARL_0(v *Value) bool { // match: (SARL x (MOVLconst [c])) - // cond: // result: (SARLconst [c&31] x) for { _ = v.Args[1] @@ -17812,16 +15544,12 @@ func rewriteValue386_Op386SARL_0(v *Value) bool { return true } // match: (SARL x (ANDLconst [31] y)) - // cond: // result: (SARL x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386ANDLconst { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != Op386ANDLconst || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -17834,7 +15562,6 @@ func rewriteValue386_Op386SARL_0(v *Value) bool { } func rewriteValue386_Op386SARLconst_0(v *Value) bool { // match: (SARLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17847,7 +15574,6 @@ func rewriteValue386_Op386SARLconst_0(v *Value) bool { return true } // match: (SARLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [d>>uint64(c)]) for { c := v.AuxInt @@ -17864,7 +15590,6 @@ func rewriteValue386_Op386SARLconst_0(v *Value) bool { } func rewriteValue386_Op386SARW_0(v *Value) bool { // match: (SARW x (MOVLconst [c])) - // cond: // result: (SARWconst [min(c&31,15)] x) for { _ = v.Args[1] @@ -17883,7 +15608,6 @@ func rewriteValue386_Op386SARW_0(v *Value) bool { } func rewriteValue386_Op386SARWconst_0(v *Value) bool { // match: (SARWconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -17896,7 +15620,6 @@ func rewriteValue386_Op386SARWconst_0(v *Value) bool { return true } // match: (SARWconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [d>>uint64(c)]) for { c := v.AuxInt @@ -17913,7 +15636,6 @@ func rewriteValue386_Op386SARWconst_0(v *Value) bool { } func rewriteValue386_Op386SBBL_0(v *Value) bool { // match: (SBBL x (MOVLconst [c]) f) - // cond: // result: (SBBLconst [c] x f) for { f := v.Args[2] @@ -17933,7 +15655,6 @@ func rewriteValue386_Op386SBBL_0(v *Value) bool { } func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { // match: (SBBLcarrymask (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -17945,7 +15666,6 @@ func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagLT_ULT)) - // cond: // result: (MOVLconst [-1]) for { v_0 := v.Args[0] @@ -17957,7 +15677,6 @@ func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -17969,7 +15688,6 @@ func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagGT_ULT)) - // cond: // result: (MOVLconst [-1]) for { v_0 := v.Args[0] @@ -17981,7 +15699,6 @@ func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -17996,7 +15713,6 @@ func rewriteValue386_Op386SBBLcarrymask_0(v *Value) bool { } func rewriteValue386_Op386SETA_0(v *Value) bool { // match: (SETA (InvertFlags x)) - // cond: // result: (SETB x) for { v_0 := v.Args[0] @@ -18009,7 +15725,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { return true } // match: (SETA (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18021,7 +15736,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { return true } // match: (SETA (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18033,7 +15747,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { return true } // match: (SETA (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18045,7 +15758,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { return true } // match: (SETA (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18057,7 +15769,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { return true } // match: (SETA (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18072,7 +15783,6 @@ func rewriteValue386_Op386SETA_0(v *Value) bool { } func rewriteValue386_Op386SETAE_0(v *Value) bool { // match: (SETAE (InvertFlags x)) - // cond: // result: (SETBE x) for { v_0 := v.Args[0] @@ -18085,7 +15795,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18097,7 +15806,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18109,7 +15817,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18121,7 +15828,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18133,7 +15839,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18148,7 +15853,6 @@ func rewriteValue386_Op386SETAE_0(v *Value) bool { } func rewriteValue386_Op386SETB_0(v *Value) bool { // match: (SETB (InvertFlags x)) - // cond: // result: (SETA x) for { v_0 := v.Args[0] @@ -18161,7 +15865,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { return true } // match: (SETB (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18173,7 +15876,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { return true } // match: (SETB (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18185,7 +15887,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { return true } // match: (SETB (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18197,7 +15898,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { return true } // match: (SETB (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18209,7 +15909,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { return true } // match: (SETB (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18224,7 +15923,6 @@ func rewriteValue386_Op386SETB_0(v *Value) bool { } func rewriteValue386_Op386SETBE_0(v *Value) bool { // match: (SETBE (InvertFlags x)) - // cond: // result: (SETAE x) for { v_0 := v.Args[0] @@ -18237,7 +15935,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18249,7 +15946,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18261,7 +15957,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18273,7 +15968,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18285,7 +15979,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18300,7 +15993,6 @@ func rewriteValue386_Op386SETBE_0(v *Value) bool { } func rewriteValue386_Op386SETEQ_0(v *Value) bool { // match: (SETEQ (InvertFlags x)) - // cond: // result: (SETEQ x) for { v_0 := v.Args[0] @@ -18313,7 +16005,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { return true } // match: (SETEQ (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18325,7 +16016,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { return true } // match: (SETEQ (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18337,7 +16027,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { return true } // match: (SETEQ (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18349,7 +16038,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { return true } // match: (SETEQ (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18361,7 +16049,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { return true } // match: (SETEQ (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18376,7 +16063,6 @@ func rewriteValue386_Op386SETEQ_0(v *Value) bool { } func rewriteValue386_Op386SETG_0(v *Value) bool { // match: (SETG (InvertFlags x)) - // cond: // result: (SETL x) for { v_0 := v.Args[0] @@ -18389,7 +16075,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { return true } // match: (SETG (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18401,7 +16086,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { return true } // match: (SETG (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18413,7 +16097,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { return true } // match: (SETG (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18425,7 +16108,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { return true } // match: (SETG (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18437,7 +16119,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { return true } // match: (SETG (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18452,7 +16133,6 @@ func rewriteValue386_Op386SETG_0(v *Value) bool { } func rewriteValue386_Op386SETGE_0(v *Value) bool { // match: (SETGE (InvertFlags x)) - // cond: // result: (SETLE x) for { v_0 := v.Args[0] @@ -18465,7 +16145,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18477,7 +16156,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18489,7 +16167,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18501,7 +16178,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18513,7 +16189,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18528,7 +16203,6 @@ func rewriteValue386_Op386SETGE_0(v *Value) bool { } func rewriteValue386_Op386SETL_0(v *Value) bool { // match: (SETL (InvertFlags x)) - // cond: // result: (SETG x) for { v_0 := v.Args[0] @@ -18541,7 +16215,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { return true } // match: (SETL (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18553,7 +16226,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { return true } // match: (SETL (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18565,7 +16237,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { return true } // match: (SETL (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18577,7 +16248,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { return true } // match: (SETL (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18589,7 +16259,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { return true } // match: (SETL (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18604,7 +16273,6 @@ func rewriteValue386_Op386SETL_0(v *Value) bool { } func rewriteValue386_Op386SETLE_0(v *Value) bool { // match: (SETLE (InvertFlags x)) - // cond: // result: (SETGE x) for { v_0 := v.Args[0] @@ -18617,7 +16285,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18629,7 +16296,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18641,7 +16307,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18653,7 +16318,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18665,7 +16329,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18680,7 +16343,6 @@ func rewriteValue386_Op386SETLE_0(v *Value) bool { } func rewriteValue386_Op386SETNE_0(v *Value) bool { // match: (SETNE (InvertFlags x)) - // cond: // result: (SETNE x) for { v_0 := v.Args[0] @@ -18693,7 +16355,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { return true } // match: (SETNE (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -18705,7 +16366,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { return true } // match: (SETNE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18717,7 +16377,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { return true } // match: (SETNE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18729,7 +16388,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { return true } // match: (SETNE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18741,7 +16399,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { return true } // match: (SETNE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -18756,7 +16413,6 @@ func rewriteValue386_Op386SETNE_0(v *Value) bool { } func rewriteValue386_Op386SHLL_0(v *Value) bool { // match: (SHLL x (MOVLconst [c])) - // cond: // result: (SHLLconst [c&31] x) for { _ = v.Args[1] @@ -18772,16 +16428,12 @@ func rewriteValue386_Op386SHLL_0(v *Value) bool { return true } // match: (SHLL x (ANDLconst [31] y)) - // cond: // result: (SHLL x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386ANDLconst { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != Op386ANDLconst || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -18794,7 +16446,6 @@ func rewriteValue386_Op386SHLL_0(v *Value) bool { } func rewriteValue386_Op386SHLLconst_0(v *Value) bool { // match: (SHLLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -18849,7 +16500,6 @@ func rewriteValue386_Op386SHRB_0(v *Value) bool { } func rewriteValue386_Op386SHRBconst_0(v *Value) bool { // match: (SHRBconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -18865,7 +16515,6 @@ func rewriteValue386_Op386SHRBconst_0(v *Value) bool { } func rewriteValue386_Op386SHRL_0(v *Value) bool { // match: (SHRL x (MOVLconst [c])) - // cond: // result: (SHRLconst [c&31] x) for { _ = v.Args[1] @@ -18881,16 +16530,12 @@ func rewriteValue386_Op386SHRL_0(v *Value) bool { return true } // match: (SHRL x (ANDLconst [31] y)) - // cond: // result: (SHRL x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386ANDLconst { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != Op386ANDLconst || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -18903,7 +16548,6 @@ func rewriteValue386_Op386SHRL_0(v *Value) bool { } func rewriteValue386_Op386SHRLconst_0(v *Value) bool { // match: (SHRLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -18958,7 +16602,6 @@ func rewriteValue386_Op386SHRW_0(v *Value) bool { } func rewriteValue386_Op386SHRWconst_0(v *Value) bool { // match: (SHRWconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -18975,7 +16618,6 @@ func rewriteValue386_Op386SHRWconst_0(v *Value) bool { func rewriteValue386_Op386SUBL_0(v *Value) bool { b := v.Block // match: (SUBL x (MOVLconst [c])) - // cond: // result: (SUBLconst x [c]) for { _ = v.Args[1] @@ -18991,7 +16633,6 @@ func rewriteValue386_Op386SUBL_0(v *Value) bool { return true } // match: (SUBL (MOVLconst [c]) x) - // cond: // result: (NEGL (SUBLconst x [c])) for { x := v.Args[1] @@ -19060,7 +16701,6 @@ func rewriteValue386_Op386SUBL_0(v *Value) bool { return true } // match: (SUBL x x) - // cond: // result: (MOVLconst [0]) for { x := v.Args[1] @@ -19075,7 +16715,6 @@ func rewriteValue386_Op386SUBL_0(v *Value) bool { } func rewriteValue386_Op386SUBLcarry_0(v *Value) bool { // match: (SUBLcarry x (MOVLconst [c])) - // cond: // result: (SUBLconstcarry [c] x) for { _ = v.Args[1] @@ -19108,7 +16747,6 @@ func rewriteValue386_Op386SUBLconst_0(v *Value) bool { return true } // match: (SUBLconst [c] x) - // cond: // result: (ADDLconst [int64(int32(-c))] x) for { c := v.AuxInt @@ -19632,7 +17270,6 @@ func rewriteValue386_Op386SUBSSload_0(v *Value) bool { } func rewriteValue386_Op386XORL_0(v *Value) bool { // match: (XORL x (MOVLconst [c])) - // cond: // result: (XORLconst [c] x) for { _ = v.Args[1] @@ -19648,7 +17285,6 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { return true } // match: (XORL (MOVLconst [c]) x) - // cond: // result: (XORLconst [c] x) for { x := v.Args[1] @@ -19678,10 +17314,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -19705,10 +17338,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(Op386ROLLconst) @@ -19733,10 +17363,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -19761,10 +17388,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 16 && d == 16-c && t.Size() == 2) { + if x != v_1.Args[0] || !(c < 16 && d == 16-c && t.Size() == 2) { break } v.reset(Op386ROLWconst) @@ -19789,10 +17413,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -19817,10 +17438,7 @@ func rewriteValue386_Op386XORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c < 8 && d == 8-c && t.Size() == 1) { + if x != v_1.Args[0] || !(c < 8 && d == 8-c && t.Size() == 1) { break } v.reset(Op386ROLBconst) @@ -19934,7 +17552,6 @@ func rewriteValue386_Op386XORL_10(v *Value) bool { return true } // match: (XORL x x) - // cond: // result: (MOVLconst [0]) for { x := v.Args[1] @@ -19949,7 +17566,6 @@ func rewriteValue386_Op386XORL_10(v *Value) bool { } func rewriteValue386_Op386XORLconst_0(v *Value) bool { // match: (XORLconst [c] (XORLconst [d] x)) - // cond: // result: (XORLconst [c ^ d] x) for { c := v.AuxInt @@ -19979,7 +17595,6 @@ func rewriteValue386_Op386XORLconst_0(v *Value) bool { return true } // match: (XORLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [c^d]) for { c := v.AuxInt @@ -20468,7 +18083,6 @@ func rewriteValue386_Op386XORLmodifyidx4_0(v *Value) bool { } func rewriteValue386_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADDL x y) for { y := v.Args[1] @@ -20481,7 +18095,6 @@ func rewriteValue386_OpAdd16_0(v *Value) bool { } func rewriteValue386_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADDL x y) for { y := v.Args[1] @@ -20494,7 +18107,6 @@ func rewriteValue386_OpAdd32_0(v *Value) bool { } func rewriteValue386_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (ADDSS x y) for { y := v.Args[1] @@ -20507,7 +18119,6 @@ func rewriteValue386_OpAdd32F_0(v *Value) bool { } func rewriteValue386_OpAdd32carry_0(v *Value) bool { // match: (Add32carry x y) - // cond: // result: (ADDLcarry x y) for { y := v.Args[1] @@ -20520,7 +18131,6 @@ func rewriteValue386_OpAdd32carry_0(v *Value) bool { } func rewriteValue386_OpAdd32withcarry_0(v *Value) bool { // match: (Add32withcarry x y c) - // cond: // result: (ADCL x y c) for { c := v.Args[2] @@ -20535,7 +18145,6 @@ func rewriteValue386_OpAdd32withcarry_0(v *Value) bool { } func rewriteValue386_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (ADDSD x y) for { y := v.Args[1] @@ -20548,7 +18157,6 @@ func rewriteValue386_OpAdd64F_0(v *Value) bool { } func rewriteValue386_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADDL x y) for { y := v.Args[1] @@ -20561,7 +18169,6 @@ func rewriteValue386_OpAdd8_0(v *Value) bool { } func rewriteValue386_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADDL x y) for { y := v.Args[1] @@ -20574,7 +18181,6 @@ func rewriteValue386_OpAddPtr_0(v *Value) bool { } func rewriteValue386_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (LEAL {sym} base) for { sym := v.Aux @@ -20587,7 +18193,6 @@ func rewriteValue386_OpAddr_0(v *Value) bool { } func rewriteValue386_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (ANDL x y) for { y := v.Args[1] @@ -20600,7 +18205,6 @@ func rewriteValue386_OpAnd16_0(v *Value) bool { } func rewriteValue386_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (ANDL x y) for { y := v.Args[1] @@ -20613,7 +18217,6 @@ func rewriteValue386_OpAnd32_0(v *Value) bool { } func rewriteValue386_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (ANDL x y) for { y := v.Args[1] @@ -20626,7 +18229,6 @@ func rewriteValue386_OpAnd8_0(v *Value) bool { } func rewriteValue386_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (ANDL x y) for { y := v.Args[1] @@ -20639,7 +18241,6 @@ func rewriteValue386_OpAndB_0(v *Value) bool { } func rewriteValue386_OpAvg32u_0(v *Value) bool { // match: (Avg32u x y) - // cond: // result: (AVGLU x y) for { y := v.Args[1] @@ -20652,7 +18253,6 @@ func rewriteValue386_OpAvg32u_0(v *Value) bool { } func rewriteValue386_OpBswap32_0(v *Value) bool { // match: (Bswap32 x) - // cond: // result: (BSWAPL x) for { x := v.Args[0] @@ -20663,7 +18263,6 @@ func rewriteValue386_OpBswap32_0(v *Value) bool { } func rewriteValue386_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -20680,7 +18279,6 @@ func rewriteValue386_OpClosureCall_0(v *Value) bool { } func rewriteValue386_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -20691,7 +18289,6 @@ func rewriteValue386_OpCom16_0(v *Value) bool { } func rewriteValue386_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -20702,7 +18299,6 @@ func rewriteValue386_OpCom32_0(v *Value) bool { } func rewriteValue386_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -20713,7 +18309,6 @@ func rewriteValue386_OpCom8_0(v *Value) bool { } func rewriteValue386_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -20724,7 +18319,6 @@ func rewriteValue386_OpConst16_0(v *Value) bool { } func rewriteValue386_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -20735,7 +18329,6 @@ func rewriteValue386_OpConst32_0(v *Value) bool { } func rewriteValue386_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (MOVSSconst [val]) for { val := v.AuxInt @@ -20746,7 +18339,6 @@ func rewriteValue386_OpConst32F_0(v *Value) bool { } func rewriteValue386_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (MOVSDconst [val]) for { val := v.AuxInt @@ -20757,7 +18349,6 @@ func rewriteValue386_OpConst64F_0(v *Value) bool { } func rewriteValue386_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -20768,7 +18359,6 @@ func rewriteValue386_OpConst8_0(v *Value) bool { } func rewriteValue386_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVLconst [b]) for { b := v.AuxInt @@ -20779,7 +18369,6 @@ func rewriteValue386_OpConstBool_0(v *Value) bool { } func rewriteValue386_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVLconst [0]) for { v.reset(Op386MOVLconst) @@ -20791,7 +18380,6 @@ func rewriteValue386_OpCtz16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz16 x) - // cond: // result: (BSFL (ORLconst [0x10000] x)) for { x := v.Args[0] @@ -20805,7 +18393,6 @@ func rewriteValue386_OpCtz16_0(v *Value) bool { } func rewriteValue386_OpCtz16NonZero_0(v *Value) bool { // match: (Ctz16NonZero x) - // cond: // result: (BSFL x) for { x := v.Args[0] @@ -20816,7 +18403,6 @@ func rewriteValue386_OpCtz16NonZero_0(v *Value) bool { } func rewriteValue386_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (CVTTSS2SL x) for { x := v.Args[0] @@ -20827,7 +18413,6 @@ func rewriteValue386_OpCvt32Fto32_0(v *Value) bool { } func rewriteValue386_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (CVTSS2SD x) for { x := v.Args[0] @@ -20838,7 +18423,6 @@ func rewriteValue386_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValue386_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (CVTSL2SS x) for { x := v.Args[0] @@ -20849,7 +18433,6 @@ func rewriteValue386_OpCvt32to32F_0(v *Value) bool { } func rewriteValue386_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (CVTSL2SD x) for { x := v.Args[0] @@ -20860,7 +18443,6 @@ func rewriteValue386_OpCvt32to64F_0(v *Value) bool { } func rewriteValue386_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (CVTTSD2SL x) for { x := v.Args[0] @@ -20871,7 +18453,6 @@ func rewriteValue386_OpCvt64Fto32_0(v *Value) bool { } func rewriteValue386_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (CVTSD2SS x) for { x := v.Args[0] @@ -20882,7 +18463,6 @@ func rewriteValue386_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValue386_OpDiv16_0(v *Value) bool { // match: (Div16 [a] x y) - // cond: // result: (DIVW [a] x y) for { a := v.AuxInt @@ -20897,7 +18477,6 @@ func rewriteValue386_OpDiv16_0(v *Value) bool { } func rewriteValue386_OpDiv16u_0(v *Value) bool { // match: (Div16u x y) - // cond: // result: (DIVWU x y) for { y := v.Args[1] @@ -20910,7 +18489,6 @@ func rewriteValue386_OpDiv16u_0(v *Value) bool { } func rewriteValue386_OpDiv32_0(v *Value) bool { // match: (Div32 [a] x y) - // cond: // result: (DIVL [a] x y) for { a := v.AuxInt @@ -20925,7 +18503,6 @@ func rewriteValue386_OpDiv32_0(v *Value) bool { } func rewriteValue386_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (DIVSS x y) for { y := v.Args[1] @@ -20938,7 +18515,6 @@ func rewriteValue386_OpDiv32F_0(v *Value) bool { } func rewriteValue386_OpDiv32u_0(v *Value) bool { // match: (Div32u x y) - // cond: // result: (DIVLU x y) for { y := v.Args[1] @@ -20951,7 +18527,6 @@ func rewriteValue386_OpDiv32u_0(v *Value) bool { } func rewriteValue386_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (DIVSD x y) for { y := v.Args[1] @@ -20966,7 +18541,6 @@ func rewriteValue386_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (DIVW (SignExt8to16 x) (SignExt8to16 y)) for { y := v.Args[1] @@ -20985,7 +18559,6 @@ func rewriteValue386_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (DIVWU (ZeroExt8to16 x) (ZeroExt8to16 y)) for { y := v.Args[1] @@ -21003,7 +18576,6 @@ func rewriteValue386_OpDiv8u_0(v *Value) bool { func rewriteValue386_OpEq16_0(v *Value) bool { b := v.Block // match: (Eq16 x y) - // cond: // result: (SETEQ (CMPW x y)) for { y := v.Args[1] @@ -21019,7 +18591,6 @@ func rewriteValue386_OpEq16_0(v *Value) bool { func rewriteValue386_OpEq32_0(v *Value) bool { b := v.Block // match: (Eq32 x y) - // cond: // result: (SETEQ (CMPL x y)) for { y := v.Args[1] @@ -21035,7 +18606,6 @@ func rewriteValue386_OpEq32_0(v *Value) bool { func rewriteValue386_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (SETEQF (UCOMISS x y)) for { y := v.Args[1] @@ -21051,7 +18621,6 @@ func rewriteValue386_OpEq32F_0(v *Value) bool { func rewriteValue386_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (SETEQF (UCOMISD x y)) for { y := v.Args[1] @@ -21067,7 +18636,6 @@ func rewriteValue386_OpEq64F_0(v *Value) bool { func rewriteValue386_OpEq8_0(v *Value) bool { b := v.Block // match: (Eq8 x y) - // cond: // result: (SETEQ (CMPB x y)) for { y := v.Args[1] @@ -21083,7 +18651,6 @@ func rewriteValue386_OpEq8_0(v *Value) bool { func rewriteValue386_OpEqB_0(v *Value) bool { b := v.Block // match: (EqB x y) - // cond: // result: (SETEQ (CMPB x y)) for { y := v.Args[1] @@ -21099,7 +18666,6 @@ func rewriteValue386_OpEqB_0(v *Value) bool { func rewriteValue386_OpEqPtr_0(v *Value) bool { b := v.Block // match: (EqPtr x y) - // cond: // result: (SETEQ (CMPL x y)) for { y := v.Args[1] @@ -21115,7 +18681,6 @@ func rewriteValue386_OpEqPtr_0(v *Value) bool { func rewriteValue386_OpGeq16_0(v *Value) bool { b := v.Block // match: (Geq16 x y) - // cond: // result: (SETGE (CMPW x y)) for { y := v.Args[1] @@ -21131,7 +18696,6 @@ func rewriteValue386_OpGeq16_0(v *Value) bool { func rewriteValue386_OpGeq16U_0(v *Value) bool { b := v.Block // match: (Geq16U x y) - // cond: // result: (SETAE (CMPW x y)) for { y := v.Args[1] @@ -21147,7 +18711,6 @@ func rewriteValue386_OpGeq16U_0(v *Value) bool { func rewriteValue386_OpGeq32_0(v *Value) bool { b := v.Block // match: (Geq32 x y) - // cond: // result: (SETGE (CMPL x y)) for { y := v.Args[1] @@ -21163,7 +18726,6 @@ func rewriteValue386_OpGeq32_0(v *Value) bool { func rewriteValue386_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (SETGEF (UCOMISS x y)) for { y := v.Args[1] @@ -21179,7 +18741,6 @@ func rewriteValue386_OpGeq32F_0(v *Value) bool { func rewriteValue386_OpGeq32U_0(v *Value) bool { b := v.Block // match: (Geq32U x y) - // cond: // result: (SETAE (CMPL x y)) for { y := v.Args[1] @@ -21195,7 +18756,6 @@ func rewriteValue386_OpGeq32U_0(v *Value) bool { func rewriteValue386_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (SETGEF (UCOMISD x y)) for { y := v.Args[1] @@ -21211,7 +18771,6 @@ func rewriteValue386_OpGeq64F_0(v *Value) bool { func rewriteValue386_OpGeq8_0(v *Value) bool { b := v.Block // match: (Geq8 x y) - // cond: // result: (SETGE (CMPB x y)) for { y := v.Args[1] @@ -21227,7 +18786,6 @@ func rewriteValue386_OpGeq8_0(v *Value) bool { func rewriteValue386_OpGeq8U_0(v *Value) bool { b := v.Block // match: (Geq8U x y) - // cond: // result: (SETAE (CMPB x y)) for { y := v.Args[1] @@ -21242,7 +18800,6 @@ func rewriteValue386_OpGeq8U_0(v *Value) bool { } func rewriteValue386_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(Op386LoweredGetCallerPC) @@ -21251,7 +18808,6 @@ func rewriteValue386_OpGetCallerPC_0(v *Value) bool { } func rewriteValue386_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(Op386LoweredGetCallerSP) @@ -21260,7 +18816,6 @@ func rewriteValue386_OpGetCallerSP_0(v *Value) bool { } func rewriteValue386_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(Op386LoweredGetClosurePtr) @@ -21269,7 +18824,6 @@ func rewriteValue386_OpGetClosurePtr_0(v *Value) bool { } func rewriteValue386_OpGetG_0(v *Value) bool { // match: (GetG mem) - // cond: // result: (LoweredGetG mem) for { mem := v.Args[0] @@ -21281,7 +18835,6 @@ func rewriteValue386_OpGetG_0(v *Value) bool { func rewriteValue386_OpGreater16_0(v *Value) bool { b := v.Block // match: (Greater16 x y) - // cond: // result: (SETG (CMPW x y)) for { y := v.Args[1] @@ -21297,7 +18850,6 @@ func rewriteValue386_OpGreater16_0(v *Value) bool { func rewriteValue386_OpGreater16U_0(v *Value) bool { b := v.Block // match: (Greater16U x y) - // cond: // result: (SETA (CMPW x y)) for { y := v.Args[1] @@ -21313,7 +18865,6 @@ func rewriteValue386_OpGreater16U_0(v *Value) bool { func rewriteValue386_OpGreater32_0(v *Value) bool { b := v.Block // match: (Greater32 x y) - // cond: // result: (SETG (CMPL x y)) for { y := v.Args[1] @@ -21329,7 +18880,6 @@ func rewriteValue386_OpGreater32_0(v *Value) bool { func rewriteValue386_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (SETGF (UCOMISS x y)) for { y := v.Args[1] @@ -21345,7 +18895,6 @@ func rewriteValue386_OpGreater32F_0(v *Value) bool { func rewriteValue386_OpGreater32U_0(v *Value) bool { b := v.Block // match: (Greater32U x y) - // cond: // result: (SETA (CMPL x y)) for { y := v.Args[1] @@ -21361,7 +18910,6 @@ func rewriteValue386_OpGreater32U_0(v *Value) bool { func rewriteValue386_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (SETGF (UCOMISD x y)) for { y := v.Args[1] @@ -21377,7 +18925,6 @@ func rewriteValue386_OpGreater64F_0(v *Value) bool { func rewriteValue386_OpGreater8_0(v *Value) bool { b := v.Block // match: (Greater8 x y) - // cond: // result: (SETG (CMPB x y)) for { y := v.Args[1] @@ -21393,7 +18940,6 @@ func rewriteValue386_OpGreater8_0(v *Value) bool { func rewriteValue386_OpGreater8U_0(v *Value) bool { b := v.Block // match: (Greater8U x y) - // cond: // result: (SETA (CMPB x y)) for { y := v.Args[1] @@ -21408,7 +18954,6 @@ func rewriteValue386_OpGreater8U_0(v *Value) bool { } func rewriteValue386_OpHmul32_0(v *Value) bool { // match: (Hmul32 x y) - // cond: // result: (HMULL x y) for { y := v.Args[1] @@ -21421,7 +18966,6 @@ func rewriteValue386_OpHmul32_0(v *Value) bool { } func rewriteValue386_OpHmul32u_0(v *Value) bool { // match: (Hmul32u x y) - // cond: // result: (HMULLU x y) for { y := v.Args[1] @@ -21434,7 +18978,6 @@ func rewriteValue386_OpHmul32u_0(v *Value) bool { } func rewriteValue386_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -21450,7 +18993,6 @@ func rewriteValue386_OpInterCall_0(v *Value) bool { func rewriteValue386_OpIsInBounds_0(v *Value) bool { b := v.Block // match: (IsInBounds idx len) - // cond: // result: (SETB (CMPL idx len)) for { len := v.Args[1] @@ -21466,7 +19008,6 @@ func rewriteValue386_OpIsInBounds_0(v *Value) bool { func rewriteValue386_OpIsNonNil_0(v *Value) bool { b := v.Block // match: (IsNonNil p) - // cond: // result: (SETNE (TESTL p p)) for { p := v.Args[0] @@ -21481,7 +19022,6 @@ func rewriteValue386_OpIsNonNil_0(v *Value) bool { func rewriteValue386_OpIsSliceInBounds_0(v *Value) bool { b := v.Block // match: (IsSliceInBounds idx len) - // cond: // result: (SETBE (CMPL idx len)) for { len := v.Args[1] @@ -21497,7 +19037,6 @@ func rewriteValue386_OpIsSliceInBounds_0(v *Value) bool { func rewriteValue386_OpLeq16_0(v *Value) bool { b := v.Block // match: (Leq16 x y) - // cond: // result: (SETLE (CMPW x y)) for { y := v.Args[1] @@ -21513,7 +19052,6 @@ func rewriteValue386_OpLeq16_0(v *Value) bool { func rewriteValue386_OpLeq16U_0(v *Value) bool { b := v.Block // match: (Leq16U x y) - // cond: // result: (SETBE (CMPW x y)) for { y := v.Args[1] @@ -21529,7 +19067,6 @@ func rewriteValue386_OpLeq16U_0(v *Value) bool { func rewriteValue386_OpLeq32_0(v *Value) bool { b := v.Block // match: (Leq32 x y) - // cond: // result: (SETLE (CMPL x y)) for { y := v.Args[1] @@ -21545,7 +19082,6 @@ func rewriteValue386_OpLeq32_0(v *Value) bool { func rewriteValue386_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (SETGEF (UCOMISS y x)) for { y := v.Args[1] @@ -21561,7 +19097,6 @@ func rewriteValue386_OpLeq32F_0(v *Value) bool { func rewriteValue386_OpLeq32U_0(v *Value) bool { b := v.Block // match: (Leq32U x y) - // cond: // result: (SETBE (CMPL x y)) for { y := v.Args[1] @@ -21577,7 +19112,6 @@ func rewriteValue386_OpLeq32U_0(v *Value) bool { func rewriteValue386_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (SETGEF (UCOMISD y x)) for { y := v.Args[1] @@ -21593,7 +19127,6 @@ func rewriteValue386_OpLeq64F_0(v *Value) bool { func rewriteValue386_OpLeq8_0(v *Value) bool { b := v.Block // match: (Leq8 x y) - // cond: // result: (SETLE (CMPB x y)) for { y := v.Args[1] @@ -21609,7 +19142,6 @@ func rewriteValue386_OpLeq8_0(v *Value) bool { func rewriteValue386_OpLeq8U_0(v *Value) bool { b := v.Block // match: (Leq8U x y) - // cond: // result: (SETBE (CMPB x y)) for { y := v.Args[1] @@ -21625,7 +19157,6 @@ func rewriteValue386_OpLeq8U_0(v *Value) bool { func rewriteValue386_OpLess16_0(v *Value) bool { b := v.Block // match: (Less16 x y) - // cond: // result: (SETL (CMPW x y)) for { y := v.Args[1] @@ -21641,7 +19172,6 @@ func rewriteValue386_OpLess16_0(v *Value) bool { func rewriteValue386_OpLess16U_0(v *Value) bool { b := v.Block // match: (Less16U x y) - // cond: // result: (SETB (CMPW x y)) for { y := v.Args[1] @@ -21657,7 +19187,6 @@ func rewriteValue386_OpLess16U_0(v *Value) bool { func rewriteValue386_OpLess32_0(v *Value) bool { b := v.Block // match: (Less32 x y) - // cond: // result: (SETL (CMPL x y)) for { y := v.Args[1] @@ -21673,7 +19202,6 @@ func rewriteValue386_OpLess32_0(v *Value) bool { func rewriteValue386_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (SETGF (UCOMISS y x)) for { y := v.Args[1] @@ -21689,7 +19217,6 @@ func rewriteValue386_OpLess32F_0(v *Value) bool { func rewriteValue386_OpLess32U_0(v *Value) bool { b := v.Block // match: (Less32U x y) - // cond: // result: (SETB (CMPL x y)) for { y := v.Args[1] @@ -21705,7 +19232,6 @@ func rewriteValue386_OpLess32U_0(v *Value) bool { func rewriteValue386_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (SETGF (UCOMISD y x)) for { y := v.Args[1] @@ -21721,7 +19247,6 @@ func rewriteValue386_OpLess64F_0(v *Value) bool { func rewriteValue386_OpLess8_0(v *Value) bool { b := v.Block // match: (Less8 x y) - // cond: // result: (SETL (CMPB x y)) for { y := v.Args[1] @@ -21737,7 +19262,6 @@ func rewriteValue386_OpLess8_0(v *Value) bool { func rewriteValue386_OpLess8U_0(v *Value) bool { b := v.Block // match: (Less8U x y) - // cond: // result: (SETB (CMPB x y)) for { y := v.Args[1] @@ -21830,7 +19354,6 @@ func rewriteValue386_OpLoad_0(v *Value) bool { } func rewriteValue386_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (LEAL {sym} base) for { sym := v.Aux @@ -21845,7 +19368,6 @@ func rewriteValue386_OpLocalAddr_0(v *Value) bool { func rewriteValue386_OpLsh16x16_0(v *Value) bool { b := v.Block // match: (Lsh16x16 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPWconst y [32]))) for { t := v.Type @@ -21868,7 +19390,6 @@ func rewriteValue386_OpLsh16x16_0(v *Value) bool { func rewriteValue386_OpLsh16x32_0(v *Value) bool { b := v.Block // match: (Lsh16x32 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPLconst y [32]))) for { t := v.Type @@ -21930,7 +19451,6 @@ func rewriteValue386_OpLsh16x64_0(v *Value) bool { func rewriteValue386_OpLsh16x8_0(v *Value) bool { b := v.Block // match: (Lsh16x8 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPBconst y [32]))) for { t := v.Type @@ -21953,7 +19473,6 @@ func rewriteValue386_OpLsh16x8_0(v *Value) bool { func rewriteValue386_OpLsh32x16_0(v *Value) bool { b := v.Block // match: (Lsh32x16 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPWconst y [32]))) for { t := v.Type @@ -21976,7 +19495,6 @@ func rewriteValue386_OpLsh32x16_0(v *Value) bool { func rewriteValue386_OpLsh32x32_0(v *Value) bool { b := v.Block // match: (Lsh32x32 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPLconst y [32]))) for { t := v.Type @@ -22038,7 +19556,6 @@ func rewriteValue386_OpLsh32x64_0(v *Value) bool { func rewriteValue386_OpLsh32x8_0(v *Value) bool { b := v.Block // match: (Lsh32x8 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPBconst y [32]))) for { t := v.Type @@ -22061,7 +19578,6 @@ func rewriteValue386_OpLsh32x8_0(v *Value) bool { func rewriteValue386_OpLsh8x16_0(v *Value) bool { b := v.Block // match: (Lsh8x16 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPWconst y [32]))) for { t := v.Type @@ -22084,7 +19600,6 @@ func rewriteValue386_OpLsh8x16_0(v *Value) bool { func rewriteValue386_OpLsh8x32_0(v *Value) bool { b := v.Block // match: (Lsh8x32 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPLconst y [32]))) for { t := v.Type @@ -22146,7 +19661,6 @@ func rewriteValue386_OpLsh8x64_0(v *Value) bool { func rewriteValue386_OpLsh8x8_0(v *Value) bool { b := v.Block // match: (Lsh8x8 x y) - // cond: // result: (ANDL (SHLL x y) (SBBLcarrymask (CMPBconst y [32]))) for { t := v.Type @@ -22168,7 +19682,6 @@ func rewriteValue386_OpLsh8x8_0(v *Value) bool { } func rewriteValue386_OpMod16_0(v *Value) bool { // match: (Mod16 [a] x y) - // cond: // result: (MODW [a] x y) for { a := v.AuxInt @@ -22183,7 +19696,6 @@ func rewriteValue386_OpMod16_0(v *Value) bool { } func rewriteValue386_OpMod16u_0(v *Value) bool { // match: (Mod16u x y) - // cond: // result: (MODWU x y) for { y := v.Args[1] @@ -22196,7 +19708,6 @@ func rewriteValue386_OpMod16u_0(v *Value) bool { } func rewriteValue386_OpMod32_0(v *Value) bool { // match: (Mod32 [a] x y) - // cond: // result: (MODL [a] x y) for { a := v.AuxInt @@ -22211,7 +19722,6 @@ func rewriteValue386_OpMod32_0(v *Value) bool { } func rewriteValue386_OpMod32u_0(v *Value) bool { // match: (Mod32u x y) - // cond: // result: (MODLU x y) for { y := v.Args[1] @@ -22226,7 +19736,6 @@ func rewriteValue386_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (MODW (SignExt8to16 x) (SignExt8to16 y)) for { y := v.Args[1] @@ -22245,7 +19754,6 @@ func rewriteValue386_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (MODWU (ZeroExt8to16 x) (ZeroExt8to16 y)) for { y := v.Args[1] @@ -22264,7 +19772,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -22277,7 +19784,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBload src mem) mem) for { if v.AuxInt != 1 { @@ -22296,7 +19802,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVWstore dst (MOVWload src mem) mem) for { if v.AuxInt != 2 { @@ -22315,7 +19820,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVLstore dst (MOVLload src mem) mem) for { if v.AuxInt != 4 { @@ -22334,7 +19838,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBload [2] src mem) (MOVWstore dst (MOVWload src mem) mem)) for { if v.AuxInt != 3 { @@ -22362,7 +19865,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (MOVBstore [4] dst (MOVBload [4] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 5 { @@ -22390,7 +19892,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (MOVWstore [4] dst (MOVWload [4] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 6 { @@ -22418,7 +19919,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [7] dst src mem) - // cond: // result: (MOVLstore [3] dst (MOVLload [3] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 7 { @@ -22446,7 +19946,6 @@ func rewriteValue386_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (MOVLstore [4] dst (MOVLload [4] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 8 { @@ -22552,7 +20051,6 @@ func rewriteValue386_OpMove_10(v *Value) bool { } func rewriteValue386_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -22565,7 +20063,6 @@ func rewriteValue386_OpMul16_0(v *Value) bool { } func rewriteValue386_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -22578,7 +20075,6 @@ func rewriteValue386_OpMul32_0(v *Value) bool { } func rewriteValue386_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (MULSS x y) for { y := v.Args[1] @@ -22591,7 +20087,6 @@ func rewriteValue386_OpMul32F_0(v *Value) bool { } func rewriteValue386_OpMul32uhilo_0(v *Value) bool { // match: (Mul32uhilo x y) - // cond: // result: (MULLQU x y) for { y := v.Args[1] @@ -22604,7 +20099,6 @@ func rewriteValue386_OpMul32uhilo_0(v *Value) bool { } func rewriteValue386_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (MULSD x y) for { y := v.Args[1] @@ -22617,7 +20111,6 @@ func rewriteValue386_OpMul64F_0(v *Value) bool { } func rewriteValue386_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -22630,7 +20123,6 @@ func rewriteValue386_OpMul8_0(v *Value) bool { } func rewriteValue386_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -22641,7 +20133,6 @@ func rewriteValue386_OpNeg16_0(v *Value) bool { } func rewriteValue386_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -22718,7 +20209,6 @@ func rewriteValue386_OpNeg64F_0(v *Value) bool { } func rewriteValue386_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -22730,7 +20220,6 @@ func rewriteValue386_OpNeg8_0(v *Value) bool { func rewriteValue386_OpNeq16_0(v *Value) bool { b := v.Block // match: (Neq16 x y) - // cond: // result: (SETNE (CMPW x y)) for { y := v.Args[1] @@ -22746,7 +20235,6 @@ func rewriteValue386_OpNeq16_0(v *Value) bool { func rewriteValue386_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x y) - // cond: // result: (SETNE (CMPL x y)) for { y := v.Args[1] @@ -22762,7 +20250,6 @@ func rewriteValue386_OpNeq32_0(v *Value) bool { func rewriteValue386_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (SETNEF (UCOMISS x y)) for { y := v.Args[1] @@ -22778,7 +20265,6 @@ func rewriteValue386_OpNeq32F_0(v *Value) bool { func rewriteValue386_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (SETNEF (UCOMISD x y)) for { y := v.Args[1] @@ -22794,7 +20280,6 @@ func rewriteValue386_OpNeq64F_0(v *Value) bool { func rewriteValue386_OpNeq8_0(v *Value) bool { b := v.Block // match: (Neq8 x y) - // cond: // result: (SETNE (CMPB x y)) for { y := v.Args[1] @@ -22810,7 +20295,6 @@ func rewriteValue386_OpNeq8_0(v *Value) bool { func rewriteValue386_OpNeqB_0(v *Value) bool { b := v.Block // match: (NeqB x y) - // cond: // result: (SETNE (CMPB x y)) for { y := v.Args[1] @@ -22826,7 +20310,6 @@ func rewriteValue386_OpNeqB_0(v *Value) bool { func rewriteValue386_OpNeqPtr_0(v *Value) bool { b := v.Block // match: (NeqPtr x y) - // cond: // result: (SETNE (CMPL x y)) for { y := v.Args[1] @@ -22841,7 +20324,6 @@ func rewriteValue386_OpNeqPtr_0(v *Value) bool { } func rewriteValue386_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -22854,7 +20336,6 @@ func rewriteValue386_OpNilCheck_0(v *Value) bool { } func rewriteValue386_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORLconst [1] x) for { x := v.Args[0] @@ -22866,7 +20347,6 @@ func rewriteValue386_OpNot_0(v *Value) bool { } func rewriteValue386_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr) - // cond: // result: (ADDLconst [off] ptr) for { off := v.AuxInt @@ -22879,7 +20359,6 @@ func rewriteValue386_OpOffPtr_0(v *Value) bool { } func rewriteValue386_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -22892,7 +20371,6 @@ func rewriteValue386_OpOr16_0(v *Value) bool { } func rewriteValue386_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -22905,7 +20383,6 @@ func rewriteValue386_OpOr32_0(v *Value) bool { } func rewriteValue386_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -22918,7 +20395,6 @@ func rewriteValue386_OpOr8_0(v *Value) bool { } func rewriteValue386_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -23051,7 +20527,6 @@ func rewriteValue386_OpPanicExtend_0(v *Value) bool { } func rewriteValue386_OpRotateLeft16_0(v *Value) bool { // match: (RotateLeft16 x (MOVLconst [c])) - // cond: // result: (ROLWconst [c&15] x) for { _ = v.Args[1] @@ -23070,7 +20545,6 @@ func rewriteValue386_OpRotateLeft16_0(v *Value) bool { } func rewriteValue386_OpRotateLeft32_0(v *Value) bool { // match: (RotateLeft32 x (MOVLconst [c])) - // cond: // result: (ROLLconst [c&31] x) for { _ = v.Args[1] @@ -23089,7 +20563,6 @@ func rewriteValue386_OpRotateLeft32_0(v *Value) bool { } func rewriteValue386_OpRotateLeft8_0(v *Value) bool { // match: (RotateLeft8 x (MOVLconst [c])) - // cond: // result: (ROLBconst [c&7] x) for { _ = v.Args[1] @@ -23108,7 +20581,6 @@ func rewriteValue386_OpRotateLeft8_0(v *Value) bool { } func rewriteValue386_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -23120,7 +20592,6 @@ func rewriteValue386_OpRound32F_0(v *Value) bool { } func rewriteValue386_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -23133,7 +20604,6 @@ func rewriteValue386_OpRound64F_0(v *Value) bool { func rewriteValue386_OpRsh16Ux16_0(v *Value) bool { b := v.Block // match: (Rsh16Ux16 x y) - // cond: // result: (ANDL (SHRW x y) (SBBLcarrymask (CMPWconst y [16]))) for { t := v.Type @@ -23156,7 +20626,6 @@ func rewriteValue386_OpRsh16Ux16_0(v *Value) bool { func rewriteValue386_OpRsh16Ux32_0(v *Value) bool { b := v.Block // match: (Rsh16Ux32 x y) - // cond: // result: (ANDL (SHRW x y) (SBBLcarrymask (CMPLconst y [16]))) for { t := v.Type @@ -23218,7 +20687,6 @@ func rewriteValue386_OpRsh16Ux64_0(v *Value) bool { func rewriteValue386_OpRsh16Ux8_0(v *Value) bool { b := v.Block // match: (Rsh16Ux8 x y) - // cond: // result: (ANDL (SHRW x y) (SBBLcarrymask (CMPBconst y [16]))) for { t := v.Type @@ -23241,7 +20709,6 @@ func rewriteValue386_OpRsh16Ux8_0(v *Value) bool { func rewriteValue386_OpRsh16x16_0(v *Value) bool { b := v.Block // match: (Rsh16x16 x y) - // cond: // result: (SARW x (ORL y (NOTL (SBBLcarrymask (CMPWconst y [16]))))) for { t := v.Type @@ -23267,7 +20734,6 @@ func rewriteValue386_OpRsh16x16_0(v *Value) bool { func rewriteValue386_OpRsh16x32_0(v *Value) bool { b := v.Block // match: (Rsh16x32 x y) - // cond: // result: (SARW x (ORL y (NOTL (SBBLcarrymask (CMPLconst y [16]))))) for { t := v.Type @@ -23334,7 +20800,6 @@ func rewriteValue386_OpRsh16x64_0(v *Value) bool { func rewriteValue386_OpRsh16x8_0(v *Value) bool { b := v.Block // match: (Rsh16x8 x y) - // cond: // result: (SARW x (ORL y (NOTL (SBBLcarrymask (CMPBconst y [16]))))) for { t := v.Type @@ -23360,7 +20825,6 @@ func rewriteValue386_OpRsh16x8_0(v *Value) bool { func rewriteValue386_OpRsh32Ux16_0(v *Value) bool { b := v.Block // match: (Rsh32Ux16 x y) - // cond: // result: (ANDL (SHRL x y) (SBBLcarrymask (CMPWconst y [32]))) for { t := v.Type @@ -23383,7 +20847,6 @@ func rewriteValue386_OpRsh32Ux16_0(v *Value) bool { func rewriteValue386_OpRsh32Ux32_0(v *Value) bool { b := v.Block // match: (Rsh32Ux32 x y) - // cond: // result: (ANDL (SHRL x y) (SBBLcarrymask (CMPLconst y [32]))) for { t := v.Type @@ -23445,7 +20908,6 @@ func rewriteValue386_OpRsh32Ux64_0(v *Value) bool { func rewriteValue386_OpRsh32Ux8_0(v *Value) bool { b := v.Block // match: (Rsh32Ux8 x y) - // cond: // result: (ANDL (SHRL x y) (SBBLcarrymask (CMPBconst y [32]))) for { t := v.Type @@ -23468,7 +20930,6 @@ func rewriteValue386_OpRsh32Ux8_0(v *Value) bool { func rewriteValue386_OpRsh32x16_0(v *Value) bool { b := v.Block // match: (Rsh32x16 x y) - // cond: // result: (SARL x (ORL y (NOTL (SBBLcarrymask (CMPWconst y [32]))))) for { t := v.Type @@ -23494,7 +20955,6 @@ func rewriteValue386_OpRsh32x16_0(v *Value) bool { func rewriteValue386_OpRsh32x32_0(v *Value) bool { b := v.Block // match: (Rsh32x32 x y) - // cond: // result: (SARL x (ORL y (NOTL (SBBLcarrymask (CMPLconst y [32]))))) for { t := v.Type @@ -23561,7 +21021,6 @@ func rewriteValue386_OpRsh32x64_0(v *Value) bool { func rewriteValue386_OpRsh32x8_0(v *Value) bool { b := v.Block // match: (Rsh32x8 x y) - // cond: // result: (SARL x (ORL y (NOTL (SBBLcarrymask (CMPBconst y [32]))))) for { t := v.Type @@ -23587,7 +21046,6 @@ func rewriteValue386_OpRsh32x8_0(v *Value) bool { func rewriteValue386_OpRsh8Ux16_0(v *Value) bool { b := v.Block // match: (Rsh8Ux16 x y) - // cond: // result: (ANDL (SHRB x y) (SBBLcarrymask (CMPWconst y [8]))) for { t := v.Type @@ -23610,7 +21068,6 @@ func rewriteValue386_OpRsh8Ux16_0(v *Value) bool { func rewriteValue386_OpRsh8Ux32_0(v *Value) bool { b := v.Block // match: (Rsh8Ux32 x y) - // cond: // result: (ANDL (SHRB x y) (SBBLcarrymask (CMPLconst y [8]))) for { t := v.Type @@ -23672,7 +21129,6 @@ func rewriteValue386_OpRsh8Ux64_0(v *Value) bool { func rewriteValue386_OpRsh8Ux8_0(v *Value) bool { b := v.Block // match: (Rsh8Ux8 x y) - // cond: // result: (ANDL (SHRB x y) (SBBLcarrymask (CMPBconst y [8]))) for { t := v.Type @@ -23695,7 +21151,6 @@ func rewriteValue386_OpRsh8Ux8_0(v *Value) bool { func rewriteValue386_OpRsh8x16_0(v *Value) bool { b := v.Block // match: (Rsh8x16 x y) - // cond: // result: (SARB x (ORL y (NOTL (SBBLcarrymask (CMPWconst y [8]))))) for { t := v.Type @@ -23721,7 +21176,6 @@ func rewriteValue386_OpRsh8x16_0(v *Value) bool { func rewriteValue386_OpRsh8x32_0(v *Value) bool { b := v.Block // match: (Rsh8x32 x y) - // cond: // result: (SARB x (ORL y (NOTL (SBBLcarrymask (CMPLconst y [8]))))) for { t := v.Type @@ -23788,7 +21242,6 @@ func rewriteValue386_OpRsh8x64_0(v *Value) bool { func rewriteValue386_OpRsh8x8_0(v *Value) bool { b := v.Block // match: (Rsh8x8 x y) - // cond: // result: (SARB x (ORL y (NOTL (SBBLcarrymask (CMPBconst y [8]))))) for { t := v.Type @@ -23815,7 +21268,6 @@ func rewriteValue386_OpSelect0_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select0 (Mul32uover x y)) - // cond: // result: (Select0 (MULLU x y)) for { v_0 := v.Args[0] @@ -23838,7 +21290,6 @@ func rewriteValue386_OpSelect1_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select1 (Mul32uover x y)) - // cond: // result: (SETO (Select1 (MULLU x y))) for { v_0 := v.Args[0] @@ -23860,7 +21311,6 @@ func rewriteValue386_OpSelect1_0(v *Value) bool { } func rewriteValue386_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVWLSX x) for { x := v.Args[0] @@ -23871,7 +21321,6 @@ func rewriteValue386_OpSignExt16to32_0(v *Value) bool { } func rewriteValue386_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBLSX x) for { x := v.Args[0] @@ -23882,7 +21331,6 @@ func rewriteValue386_OpSignExt8to16_0(v *Value) bool { } func rewriteValue386_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBLSX x) for { x := v.Args[0] @@ -23893,7 +21341,6 @@ func rewriteValue386_OpSignExt8to32_0(v *Value) bool { } func rewriteValue386_OpSignmask_0(v *Value) bool { // match: (Signmask x) - // cond: // result: (SARLconst x [31]) for { x := v.Args[0] @@ -23906,7 +21353,6 @@ func rewriteValue386_OpSignmask_0(v *Value) bool { func rewriteValue386_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SARLconst (NEGL x) [31]) for { t := v.Type @@ -23921,7 +21367,6 @@ func rewriteValue386_OpSlicemask_0(v *Value) bool { } func rewriteValue386_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (SQRTSD x) for { x := v.Args[0] @@ -23932,7 +21377,6 @@ func rewriteValue386_OpSqrt_0(v *Value) bool { } func rewriteValue386_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -24035,7 +21479,6 @@ func rewriteValue386_OpStore_0(v *Value) bool { } func rewriteValue386_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -24048,7 +21491,6 @@ func rewriteValue386_OpSub16_0(v *Value) bool { } func rewriteValue386_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -24061,7 +21503,6 @@ func rewriteValue386_OpSub32_0(v *Value) bool { } func rewriteValue386_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (SUBSS x y) for { y := v.Args[1] @@ -24074,7 +21515,6 @@ func rewriteValue386_OpSub32F_0(v *Value) bool { } func rewriteValue386_OpSub32carry_0(v *Value) bool { // match: (Sub32carry x y) - // cond: // result: (SUBLcarry x y) for { y := v.Args[1] @@ -24087,7 +21527,6 @@ func rewriteValue386_OpSub32carry_0(v *Value) bool { } func rewriteValue386_OpSub32withcarry_0(v *Value) bool { // match: (Sub32withcarry x y c) - // cond: // result: (SBBL x y c) for { c := v.Args[2] @@ -24102,7 +21541,6 @@ func rewriteValue386_OpSub32withcarry_0(v *Value) bool { } func rewriteValue386_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (SUBSD x y) for { y := v.Args[1] @@ -24115,7 +21553,6 @@ func rewriteValue386_OpSub64F_0(v *Value) bool { } func rewriteValue386_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -24128,7 +21565,6 @@ func rewriteValue386_OpSub8_0(v *Value) bool { } func rewriteValue386_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -24141,7 +21577,6 @@ func rewriteValue386_OpSubPtr_0(v *Value) bool { } func rewriteValue386_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -24153,7 +21588,6 @@ func rewriteValue386_OpTrunc16to8_0(v *Value) bool { } func rewriteValue386_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -24165,7 +21599,6 @@ func rewriteValue386_OpTrunc32to16_0(v *Value) bool { } func rewriteValue386_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -24177,7 +21610,6 @@ func rewriteValue386_OpTrunc32to8_0(v *Value) bool { } func rewriteValue386_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -24194,7 +21626,6 @@ func rewriteValue386_OpWB_0(v *Value) bool { } func rewriteValue386_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -24207,7 +21638,6 @@ func rewriteValue386_OpXor16_0(v *Value) bool { } func rewriteValue386_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -24220,7 +21650,6 @@ func rewriteValue386_OpXor32_0(v *Value) bool { } func rewriteValue386_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -24235,7 +21664,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -24248,7 +21676,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [1] destptr mem) - // cond: // result: (MOVBstoreconst [0] destptr mem) for { if v.AuxInt != 1 { @@ -24263,7 +21690,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [2] destptr mem) - // cond: // result: (MOVWstoreconst [0] destptr mem) for { if v.AuxInt != 2 { @@ -24278,7 +21704,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [4] destptr mem) - // cond: // result: (MOVLstoreconst [0] destptr mem) for { if v.AuxInt != 4 { @@ -24293,7 +21718,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [3] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,2)] destptr (MOVWstoreconst [0] destptr mem)) for { if v.AuxInt != 3 { @@ -24312,7 +21736,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [5] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 5 { @@ -24331,7 +21754,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [6] destptr mem) - // cond: // result: (MOVWstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 6 { @@ -24350,7 +21772,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [7] destptr mem) - // cond: // result: (MOVLstoreconst [makeValAndOff(0,3)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 7 { @@ -24392,7 +21813,6 @@ func rewriteValue386_OpZero_0(v *Value) bool { return true } // match: (Zero [8] destptr mem) - // cond: // result: (MOVLstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 8 { @@ -24417,7 +21837,6 @@ func rewriteValue386_OpZero_10(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Zero [12] destptr mem) - // cond: // result: (MOVLstoreconst [makeValAndOff(0,8)] destptr (MOVLstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem))) for { if v.AuxInt != 12 { @@ -24440,7 +21859,6 @@ func rewriteValue386_OpZero_10(v *Value) bool { return true } // match: (Zero [16] destptr mem) - // cond: // result: (MOVLstoreconst [makeValAndOff(0,12)] destptr (MOVLstoreconst [makeValAndOff(0,8)] destptr (MOVLstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)))) for { if v.AuxInt != 16 { @@ -24510,7 +21928,6 @@ func rewriteValue386_OpZero_10(v *Value) bool { } func rewriteValue386_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVWLZX x) for { x := v.Args[0] @@ -24521,7 +21938,6 @@ func rewriteValue386_OpZeroExt16to32_0(v *Value) bool { } func rewriteValue386_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBLZX x) for { x := v.Args[0] @@ -24532,7 +21948,6 @@ func rewriteValue386_OpZeroExt8to16_0(v *Value) bool { } func rewriteValue386_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBLZX x) for { x := v.Args[0] @@ -24544,7 +21959,6 @@ func rewriteValue386_OpZeroExt8to32_0(v *Value) bool { func rewriteValue386_OpZeromask_0(v *Value) bool { b := v.Block // match: (Zeromask x) - // cond: // result: (XORLconst [-1] (SBBLcarrymask (CMPLconst x [1]))) for { t := v.Type @@ -24565,7 +21979,6 @@ func rewriteBlock386(b *Block) bool { switch b.Kind { case Block386EQ: // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -24575,7 +21988,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -24584,7 +21996,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (EQ (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -24594,7 +22005,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (EQ (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -24604,7 +22014,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (EQ (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -24614,7 +22023,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (EQ (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -24625,7 +22033,6 @@ func rewriteBlock386(b *Block) bool { } case Block386GE: // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -24635,7 +22042,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -24644,7 +22050,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -24654,7 +22059,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -24664,7 +22068,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -24673,7 +22076,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -24683,7 +22085,6 @@ func rewriteBlock386(b *Block) bool { } case Block386GT: // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -24693,7 +22094,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -24703,7 +22103,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -24713,7 +22112,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -24723,7 +22121,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -24732,7 +22129,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (GT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -24742,7 +22138,6 @@ func rewriteBlock386(b *Block) bool { } case BlockIf: // match: (If (SETL cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == Op386SETL { cmp := v.Args[0] @@ -24752,7 +22147,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETLE cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == Op386SETLE { cmp := v.Args[0] @@ -24762,7 +22156,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETG cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == Op386SETG { cmp := v.Args[0] @@ -24772,7 +22165,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETGE cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == Op386SETGE { cmp := v.Args[0] @@ -24782,7 +22174,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETEQ cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == Op386SETEQ { cmp := v.Args[0] @@ -24792,7 +22183,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETNE cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == Op386SETNE { cmp := v.Args[0] @@ -24802,7 +22192,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETB cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == Op386SETB { cmp := v.Args[0] @@ -24812,7 +22201,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETBE cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == Op386SETBE { cmp := v.Args[0] @@ -24822,7 +22210,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETA cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386SETA { cmp := v.Args[0] @@ -24832,7 +22219,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETAE cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386SETAE { cmp := v.Args[0] @@ -24842,7 +22228,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETO cmp) yes no) - // cond: // result: (OS cmp yes no) for v.Op == Op386SETO { cmp := v.Args[0] @@ -24852,7 +22237,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETGF cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386SETGF { cmp := v.Args[0] @@ -24862,7 +22246,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETGEF cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386SETGEF { cmp := v.Args[0] @@ -24872,7 +22255,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETEQF cmp) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == Op386SETEQF { cmp := v.Args[0] @@ -24882,7 +22264,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If (SETNEF cmp) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == Op386SETNEF { cmp := v.Args[0] @@ -24892,7 +22273,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NE (TESTB cond cond) yes no) for { cond := b.Control @@ -24906,7 +22286,6 @@ func rewriteBlock386(b *Block) bool { } case Block386LE: // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -24916,7 +22295,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -24925,7 +22303,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -24934,7 +22311,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -24943,7 +22319,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -24953,7 +22328,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -24964,7 +22338,6 @@ func rewriteBlock386(b *Block) bool { } case Block386LT: // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -24974,7 +22347,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -24984,7 +22356,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -24993,7 +22364,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25002,7 +22372,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25012,7 +22381,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (LT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -25023,7 +22391,6 @@ func rewriteBlock386(b *Block) bool { } case Block386NE: // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) - // cond: // result: (LT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25033,10 +22400,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETL { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETL || cmp != v_1.Args[0] { break } b.Kind = Block386LT @@ -25045,7 +22409,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) - // cond: // result: (LT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25055,10 +22418,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETL { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETL || cmp != v_1.Args[0] { break } b.Kind = Block386LT @@ -25067,7 +22427,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) - // cond: // result: (LE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25077,10 +22436,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETLE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETLE || cmp != v_1.Args[0] { break } b.Kind = Block386LE @@ -25089,7 +22445,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) - // cond: // result: (LE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25099,10 +22454,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETLE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETLE || cmp != v_1.Args[0] { break } b.Kind = Block386LE @@ -25111,7 +22463,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) - // cond: // result: (GT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25121,10 +22472,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETG { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETG || cmp != v_1.Args[0] { break } b.Kind = Block386GT @@ -25133,7 +22481,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) - // cond: // result: (GT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25143,10 +22490,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETG { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETG || cmp != v_1.Args[0] { break } b.Kind = Block386GT @@ -25155,7 +22499,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) - // cond: // result: (GE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25165,10 +22508,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGE || cmp != v_1.Args[0] { break } b.Kind = Block386GE @@ -25177,7 +22517,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) - // cond: // result: (GE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25187,10 +22526,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGE || cmp != v_1.Args[0] { break } b.Kind = Block386GE @@ -25199,7 +22535,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25209,10 +22544,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETEQ { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETEQ || cmp != v_1.Args[0] { break } b.Kind = Block386EQ @@ -25221,7 +22553,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25231,10 +22562,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETEQ { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETEQ || cmp != v_1.Args[0] { break } b.Kind = Block386EQ @@ -25243,7 +22571,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25253,10 +22580,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETNE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETNE || cmp != v_1.Args[0] { break } b.Kind = Block386NE @@ -25265,7 +22589,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25275,10 +22598,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETNE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETNE || cmp != v_1.Args[0] { break } b.Kind = Block386NE @@ -25287,7 +22607,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25297,10 +22616,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETB { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETB || cmp != v_1.Args[0] { break } b.Kind = Block386ULT @@ -25309,7 +22625,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25319,10 +22634,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETB { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETB || cmp != v_1.Args[0] { break } b.Kind = Block386ULT @@ -25331,7 +22643,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25341,10 +22652,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETBE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETBE || cmp != v_1.Args[0] { break } b.Kind = Block386ULE @@ -25353,7 +22661,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25363,10 +22670,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETBE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETBE || cmp != v_1.Args[0] { break } b.Kind = Block386ULE @@ -25375,7 +22679,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25385,10 +22688,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETA { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETA || cmp != v_1.Args[0] { break } b.Kind = Block386UGT @@ -25397,7 +22697,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25407,10 +22706,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETA { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETA || cmp != v_1.Args[0] { break } b.Kind = Block386UGT @@ -25419,7 +22715,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25429,10 +22724,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETAE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETAE || cmp != v_1.Args[0] { break } b.Kind = Block386UGE @@ -25441,7 +22733,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25451,10 +22742,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETAE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETAE || cmp != v_1.Args[0] { break } b.Kind = Block386UGE @@ -25463,7 +22751,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) - // cond: // result: (OS cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25473,10 +22760,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETO { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETO || cmp != v_1.Args[0] { break } b.Kind = Block386OS @@ -25485,7 +22769,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) - // cond: // result: (OS cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25495,10 +22778,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETO { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETO || cmp != v_1.Args[0] { break } b.Kind = Block386OS @@ -25507,7 +22787,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25517,10 +22796,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGF || cmp != v_1.Args[0] { break } b.Kind = Block386UGT @@ -25529,7 +22805,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25539,10 +22814,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGF || cmp != v_1.Args[0] { break } b.Kind = Block386UGT @@ -25551,7 +22823,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25561,10 +22832,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGEF || cmp != v_1.Args[0] { break } b.Kind = Block386UGE @@ -25573,7 +22841,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25583,10 +22850,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETGEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETGEF || cmp != v_1.Args[0] { break } b.Kind = Block386UGE @@ -25595,7 +22859,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25605,10 +22868,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETEQF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETEQF || cmp != v_1.Args[0] { break } b.Kind = Block386EQF @@ -25617,7 +22877,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25627,10 +22886,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETEQF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETEQF || cmp != v_1.Args[0] { break } b.Kind = Block386EQF @@ -25639,7 +22895,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25649,10 +22904,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETNEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETNEF || cmp != v_1.Args[0] { break } b.Kind = Block386NEF @@ -25661,7 +22913,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == Op386TESTB { _ = v.Args[1] @@ -25671,10 +22922,7 @@ func rewriteBlock386(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != Op386SETNEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != Op386SETNEF || cmp != v_1.Args[0] { break } b.Kind = Block386NEF @@ -25683,7 +22931,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -25693,7 +22940,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -25703,7 +22949,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -25712,7 +22957,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25721,7 +22965,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25730,7 +22973,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (NE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -25740,7 +22982,6 @@ func rewriteBlock386(b *Block) bool { } case Block386UGE: // match: (UGE (InvertFlags cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -25750,7 +22991,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -25759,7 +22999,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -25769,7 +23008,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25778,7 +23016,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25788,7 +23025,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -25798,7 +23034,6 @@ func rewriteBlock386(b *Block) bool { } case Block386UGT: // match: (UGT (InvertFlags cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -25808,7 +23043,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -25818,7 +23052,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -25828,7 +23061,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25837,7 +23069,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25847,7 +23078,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (UGT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -25857,7 +23087,6 @@ func rewriteBlock386(b *Block) bool { } case Block386ULE: // match: (ULE (InvertFlags cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -25867,7 +23096,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -25876,7 +23104,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -25885,7 +23112,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25895,7 +23121,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25904,7 +23129,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst @@ -25915,7 +23139,6 @@ func rewriteBlock386(b *Block) bool { } case Block386ULT: // match: (ULT (InvertFlags cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == Op386InvertFlags { cmp := v.Args[0] @@ -25925,7 +23148,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagEQ { b.Kind = BlockFirst @@ -25935,7 +23157,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst @@ -25944,7 +23165,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst @@ -25954,7 +23174,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst @@ -25963,7 +23182,6 @@ func rewriteBlock386(b *Block) bool { return true } // match: (ULT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst diff --git a/src/cmd/compile/internal/ssa/rewrite386splitload.go b/src/cmd/compile/internal/ssa/rewrite386splitload.go index b6c1989d52..2698e35834 100644 --- a/src/cmd/compile/internal/ssa/rewrite386splitload.go +++ b/src/cmd/compile/internal/ssa/rewrite386splitload.go @@ -24,7 +24,6 @@ func rewriteValue386splitload_Op386CMPBconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPBconstload {sym} [vo] ptr mem) - // cond: // result: (CMPBconst (MOVBload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -46,7 +45,6 @@ func rewriteValue386splitload_Op386CMPBload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPBload {sym} [off] ptr x mem) - // cond: // result: (CMPB (MOVBload {sym} [off] ptr mem) x) for { off := v.AuxInt @@ -69,7 +67,6 @@ func rewriteValue386splitload_Op386CMPLconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPLconstload {sym} [vo] ptr mem) - // cond: // result: (CMPLconst (MOVLload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -91,7 +88,6 @@ func rewriteValue386splitload_Op386CMPLload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPLload {sym} [off] ptr x mem) - // cond: // result: (CMPL (MOVLload {sym} [off] ptr mem) x) for { off := v.AuxInt @@ -114,7 +110,6 @@ func rewriteValue386splitload_Op386CMPWconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPWconstload {sym} [vo] ptr mem) - // cond: // result: (CMPWconst (MOVWload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -136,7 +131,6 @@ func rewriteValue386splitload_Op386CMPWload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPWload {sym} [off] ptr x mem) - // cond: // result: (CMPW (MOVWload {sym} [off] ptr mem) x) for { off := v.AuxInt diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64.go b/src/cmd/compile/internal/ssa/rewriteAMD64.go index c2b7a27be8..055ab73b83 100644 --- a/src/cmd/compile/internal/ssa/rewriteAMD64.go +++ b/src/cmd/compile/internal/ssa/rewriteAMD64.go @@ -1199,7 +1199,6 @@ func rewriteValueAMD64_OpAMD64ADCQ_0(v *Value) bool { return true } // match: (ADCQ x y (FlagEQ)) - // cond: // result: (ADDQcarry x y) for { _ = v.Args[2] @@ -1218,7 +1217,6 @@ func rewriteValueAMD64_OpAMD64ADCQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADCQconst_0(v *Value) bool { // match: (ADCQconst x [c] (FlagEQ)) - // cond: // result: (ADDQconstcarry x [c]) for { c := v.AuxInt @@ -1237,7 +1235,6 @@ func rewriteValueAMD64_OpAMD64ADCQconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { // match: (ADDL x (MOVLconst [c])) - // cond: // result: (ADDLconst [c] x) for { _ = v.Args[1] @@ -1253,7 +1250,6 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { return true } // match: (ADDL (MOVLconst [c]) x) - // cond: // result: (ADDLconst [c] x) for { x := v.Args[1] @@ -1283,10 +1279,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -1310,10 +1303,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -1338,10 +1328,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -1366,10 +1353,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -1394,10 +1378,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -1422,10 +1403,7 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -1434,16 +1412,12 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { return true } // match: (ADDL x (SHLLconst [3] y)) - // cond: // result: (LEAL8 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpAMD64SHLLconst || v_1.AuxInt != 3 { break } y := v_1.Args[0] @@ -1453,15 +1427,11 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { return true } // match: (ADDL (SHLLconst [3] y) x) - // cond: // result: (LEAL8 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpAMD64SHLLconst || v_0.AuxInt != 3 { break } y := v_0.Args[0] @@ -1474,16 +1444,12 @@ func rewriteValueAMD64_OpAMD64ADDL_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { // match: (ADDL x (SHLLconst [2] y)) - // cond: // result: (LEAL4 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpAMD64SHLLconst || v_1.AuxInt != 2 { break } y := v_1.Args[0] @@ -1493,15 +1459,11 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL (SHLLconst [2] y) x) - // cond: // result: (LEAL4 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpAMD64SHLLconst || v_0.AuxInt != 2 { break } y := v_0.Args[0] @@ -1511,16 +1473,12 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL x (SHLLconst [1] y)) - // cond: // result: (LEAL2 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64SHLLconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -1530,15 +1488,11 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL (SHLLconst [1] y) x) - // cond: // result: (LEAL2 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLLconst || v_0.AuxInt != 1 { break } y := v_0.Args[0] @@ -1548,7 +1502,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL y y)) - // cond: // result: (LEAL2 x y) for { _ = v.Args[1] @@ -1567,7 +1520,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL y y) x) - // cond: // result: (LEAL2 x y) for { x := v.Args[1] @@ -1585,7 +1537,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL x y)) - // cond: // result: (LEAL2 y x) for { _ = v.Args[1] @@ -1604,7 +1555,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL x (ADDL y x)) - // cond: // result: (LEAL2 y x) for { _ = v.Args[1] @@ -1624,7 +1574,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL x y) x) - // cond: // result: (LEAL2 y x) for { x := v.Args[1] @@ -1642,7 +1591,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { return true } // match: (ADDL (ADDL y x) x) - // cond: // result: (LEAL2 y x) for { x := v.Args[1] @@ -1664,7 +1612,6 @@ func rewriteValueAMD64_OpAMD64ADDL_10(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDL_20(v *Value) bool { // match: (ADDL (ADDLconst [c] x) y) - // cond: // result: (LEAL1 [c] x y) for { y := v.Args[1] @@ -1681,7 +1628,6 @@ func rewriteValueAMD64_OpAMD64ADDL_20(v *Value) bool { return true } // match: (ADDL y (ADDLconst [c] x)) - // cond: // result: (LEAL1 [c] x y) for { _ = v.Args[1] @@ -1744,7 +1690,6 @@ func rewriteValueAMD64_OpAMD64ADDL_20(v *Value) bool { return true } // match: (ADDL x (NEGL y)) - // cond: // result: (SUBL x y) for { _ = v.Args[1] @@ -1760,7 +1705,6 @@ func rewriteValueAMD64_OpAMD64ADDL_20(v *Value) bool { return true } // match: (ADDL (NEGL y) x) - // cond: // result: (SUBL x y) for { x := v.Args[1] @@ -1827,7 +1771,6 @@ func rewriteValueAMD64_OpAMD64ADDL_20(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDLconst_0(v *Value) bool { // match: (ADDLconst [c] (ADDL x y)) - // cond: // result: (LEAL1 [c] x y) for { c := v.AuxInt @@ -1844,15 +1787,11 @@ func rewriteValueAMD64_OpAMD64ADDLconst_0(v *Value) bool { return true } // match: (ADDLconst [c] (SHLLconst [1] x)) - // cond: // result: (LEAL1 [c] x x) for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLLconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -1990,7 +1929,6 @@ func rewriteValueAMD64_OpAMD64ADDLconst_0(v *Value) bool { return true } // match: (ADDLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [int64(int32(c+d))]) for { c := v.AuxInt @@ -2004,7 +1942,6 @@ func rewriteValueAMD64_OpAMD64ADDLconst_0(v *Value) bool { return true } // match: (ADDLconst [c] (ADDLconst [d] x)) - // cond: // result: (ADDLconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -2023,7 +1960,6 @@ func rewriteValueAMD64_OpAMD64ADDLconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDLconst_10(v *Value) bool { // match: (ADDLconst [off] x:(SP)) - // cond: // result: (LEAL [off] x) for { off := v.AuxInt @@ -2143,7 +2079,6 @@ func rewriteValueAMD64_OpAMD64ADDLload_0(v *Value) bool { return true } // match: (ADDLload x [off] {sym} ptr (MOVSSstore [off] {sym} ptr y _)) - // cond: // result: (ADDL x (MOVLf2i y)) for { off := v.AuxInt @@ -2152,13 +2087,7 @@ func rewriteValueAMD64_OpAMD64ADDLload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVSSstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVSSstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -2283,10 +2212,7 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpAMD64ROLQconst) @@ -2310,10 +2236,7 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpAMD64ROLQconst) @@ -2322,16 +2245,12 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ x (SHLQconst [3] y)) - // cond: // result: (LEAQ8 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLQconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpAMD64SHLQconst || v_1.AuxInt != 3 { break } y := v_1.Args[0] @@ -2341,15 +2260,11 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ (SHLQconst [3] y) x) - // cond: // result: (LEAQ8 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLQconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpAMD64SHLQconst || v_0.AuxInt != 3 { break } y := v_0.Args[0] @@ -2359,16 +2274,12 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ x (SHLQconst [2] y)) - // cond: // result: (LEAQ4 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLQconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpAMD64SHLQconst || v_1.AuxInt != 2 { break } y := v_1.Args[0] @@ -2378,15 +2289,11 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ (SHLQconst [2] y) x) - // cond: // result: (LEAQ4 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLQconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpAMD64SHLQconst || v_0.AuxInt != 2 { break } y := v_0.Args[0] @@ -2396,16 +2303,12 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ x (SHLQconst [1] y)) - // cond: // result: (LEAQ2 x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SHLQconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64SHLQconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -2415,15 +2318,11 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { return true } // match: (ADDQ (SHLQconst [1] y) x) - // cond: // result: (LEAQ2 x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLQconst || v_0.AuxInt != 1 { break } y := v_0.Args[0] @@ -2436,7 +2335,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { // match: (ADDQ x (ADDQ y y)) - // cond: // result: (LEAQ2 x y) for { _ = v.Args[1] @@ -2455,7 +2353,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ (ADDQ y y) x) - // cond: // result: (LEAQ2 x y) for { x := v.Args[1] @@ -2473,7 +2370,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ x (ADDQ x y)) - // cond: // result: (LEAQ2 y x) for { _ = v.Args[1] @@ -2492,7 +2388,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ x (ADDQ y x)) - // cond: // result: (LEAQ2 y x) for { _ = v.Args[1] @@ -2512,7 +2407,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ (ADDQ x y) x) - // cond: // result: (LEAQ2 y x) for { x := v.Args[1] @@ -2530,7 +2424,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ (ADDQ y x) x) - // cond: // result: (LEAQ2 y x) for { x := v.Args[1] @@ -2549,7 +2442,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ (ADDQconst [c] x) y) - // cond: // result: (LEAQ1 [c] x y) for { y := v.Args[1] @@ -2566,7 +2458,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { return true } // match: (ADDQ y (ADDQconst [c] x)) - // cond: // result: (LEAQ1 [c] x y) for { _ = v.Args[1] @@ -2632,7 +2523,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_10(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDQ_20(v *Value) bool { // match: (ADDQ x (NEGQ y)) - // cond: // result: (SUBQ x y) for { _ = v.Args[1] @@ -2648,7 +2538,6 @@ func rewriteValueAMD64_OpAMD64ADDQ_20(v *Value) bool { return true } // match: (ADDQ (NEGQ y) x) - // cond: // result: (SUBQ x y) for { x := v.Args[1] @@ -2755,7 +2644,6 @@ func rewriteValueAMD64_OpAMD64ADDQcarry_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDQconst_0(v *Value) bool { // match: (ADDQconst [c] (ADDQ x y)) - // cond: // result: (LEAQ1 [c] x y) for { c := v.AuxInt @@ -2772,15 +2660,11 @@ func rewriteValueAMD64_OpAMD64ADDQconst_0(v *Value) bool { return true } // match: (ADDQconst [c] (SHLQconst [1] x)) - // cond: // result: (LEAQ1 [c] x x) for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLQconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -2904,7 +2788,6 @@ func rewriteValueAMD64_OpAMD64ADDQconst_0(v *Value) bool { return true } // match: (ADDQconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -2917,7 +2800,6 @@ func rewriteValueAMD64_OpAMD64ADDQconst_0(v *Value) bool { return true } // match: (ADDQconst [c] (MOVQconst [d])) - // cond: // result: (MOVQconst [c+d]) for { c := v.AuxInt @@ -2953,7 +2835,6 @@ func rewriteValueAMD64_OpAMD64ADDQconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64ADDQconst_10(v *Value) bool { // match: (ADDQconst [off] x:(SP)) - // cond: // result: (LEAQ [off] x) for { off := v.AuxInt @@ -3073,7 +2954,6 @@ func rewriteValueAMD64_OpAMD64ADDQload_0(v *Value) bool { return true } // match: (ADDQload x [off] {sym} ptr (MOVSDstore [off] {sym} ptr y _)) - // cond: // result: (ADDQ x (MOVQf2i y)) for { off := v.AuxInt @@ -3082,13 +2962,7 @@ func rewriteValueAMD64_OpAMD64ADDQload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVSDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVSDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -3266,7 +3140,6 @@ func rewriteValueAMD64_OpAMD64ADDSDload_0(v *Value) bool { return true } // match: (ADDSDload x [off] {sym} ptr (MOVQstore [off] {sym} ptr y _)) - // cond: // result: (ADDSD x (MOVQi2f y)) for { off := v.AuxInt @@ -3275,13 +3148,7 @@ func rewriteValueAMD64_OpAMD64ADDSDload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVQstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVQstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -3405,7 +3272,6 @@ func rewriteValueAMD64_OpAMD64ADDSSload_0(v *Value) bool { return true } // match: (ADDSSload x [off] {sym} ptr (MOVLstore [off] {sym} ptr y _)) - // cond: // result: (ADDSS x (MOVLi2f y)) for { off := v.AuxInt @@ -3414,13 +3280,7 @@ func rewriteValueAMD64_OpAMD64ADDSSload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVLstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVLstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -3455,13 +3315,7 @@ func rewriteValueAMD64_OpAMD64ANDL_0(v *Value) bool { } y := v_0_0.Args[1] v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0_0.Op != OpAMD64MOVLconst || v_0_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTRL) @@ -3485,13 +3339,7 @@ func rewriteValueAMD64_OpAMD64ANDL_0(v *Value) bool { } y := v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0_0.Op != OpAMD64MOVLconst || v_1_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTRL) @@ -3537,7 +3385,6 @@ func rewriteValueAMD64_OpAMD64ANDL_0(v *Value) bool { return true } // match: (ANDL x (MOVLconst [c])) - // cond: // result: (ANDLconst [c] x) for { _ = v.Args[1] @@ -3553,7 +3400,6 @@ func rewriteValueAMD64_OpAMD64ANDL_0(v *Value) bool { return true } // match: (ANDL (MOVLconst [c]) x) - // cond: // result: (ANDLconst [c] x) for { x := v.Args[1] @@ -3568,7 +3414,6 @@ func rewriteValueAMD64_OpAMD64ANDL_0(v *Value) bool { return true } // match: (ANDL x x) - // cond: // result: x for { x := v.Args[1] @@ -3649,7 +3494,6 @@ func rewriteValueAMD64_OpAMD64ANDLconst_0(v *Value) bool { return true } // match: (ANDLconst [c] (ANDLconst [d] x)) - // cond: // result: (ANDLconst [c & d] x) for { c := v.AuxInt @@ -3665,7 +3509,6 @@ func rewriteValueAMD64_OpAMD64ANDLconst_0(v *Value) bool { return true } // match: (ANDLconst [c] (BTRLconst [d] x)) - // cond: // result: (ANDLconst [c &^ (1< [1<<8] (MOVBQZX x))) - // cond: // result: (BSFQ (ORQconst [1<<8] x)) for { v_0 := v.Args[0] @@ -4480,7 +4284,6 @@ func rewriteValueAMD64_OpAMD64BSFQ_0(v *Value) bool { return true } // match: (BSFQ (ORQconst [1<<16] (MOVWQZX x))) - // cond: // result: (BSFQ (ORQconst [1<<16] x)) for { v_0 := v.Args[0] @@ -4507,7 +4310,6 @@ func rewriteValueAMD64_OpAMD64BSFQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64BTCLconst_0(v *Value) bool { // match: (BTCLconst [c] (XORLconst [d] x)) - // cond: // result: (XORLconst [d ^ 1< x x)) for { if v.AuxInt != -9 { @@ -24480,7 +22351,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-5] x) - // cond: // result: (NEGL (LEAL4 x x)) for { if v.AuxInt != -5 { @@ -24495,7 +22365,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-3] x) - // cond: // result: (NEGL (LEAL2 x x)) for { if v.AuxInt != -3 { @@ -24510,7 +22379,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [-1] x) - // cond: // result: (NEGL x) for { if v.AuxInt != -1 { @@ -24522,7 +22390,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [ 0] _) - // cond: // result: (MOVLconst [0]) for { if v.AuxInt != 0 { @@ -24533,7 +22400,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [ 1] x) - // cond: // result: x for { if v.AuxInt != 1 { @@ -24546,7 +22412,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [ 3] x) - // cond: // result: (LEAL2 x x) for { if v.AuxInt != 3 { @@ -24559,7 +22424,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [ 5] x) - // cond: // result: (LEAL4 x x) for { if v.AuxInt != 5 { @@ -24572,7 +22436,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { return true } // match: (MULLconst [ 7] x) - // cond: // result: (LEAL2 x (LEAL2 x x)) for { if v.AuxInt != 7 { @@ -24592,7 +22455,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { b := v.Block // match: (MULLconst [ 9] x) - // cond: // result: (LEAL8 x x) for { if v.AuxInt != 9 { @@ -24605,7 +22467,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [11] x) - // cond: // result: (LEAL2 x (LEAL4 x x)) for { if v.AuxInt != 11 { @@ -24621,7 +22482,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [13] x) - // cond: // result: (LEAL4 x (LEAL2 x x)) for { if v.AuxInt != 13 { @@ -24637,7 +22497,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [19] x) - // cond: // result: (LEAL2 x (LEAL8 x x)) for { if v.AuxInt != 19 { @@ -24653,7 +22512,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [21] x) - // cond: // result: (LEAL4 x (LEAL4 x x)) for { if v.AuxInt != 21 { @@ -24669,7 +22527,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [25] x) - // cond: // result: (LEAL8 x (LEAL2 x x)) for { if v.AuxInt != 25 { @@ -24685,7 +22542,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [27] x) - // cond: // result: (LEAL8 (LEAL2 x x) (LEAL2 x x)) for { if v.AuxInt != 27 { @@ -24704,7 +22560,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [37] x) - // cond: // result: (LEAL4 x (LEAL8 x x)) for { if v.AuxInt != 37 { @@ -24720,7 +22575,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [41] x) - // cond: // result: (LEAL8 x (LEAL4 x x)) for { if v.AuxInt != 41 { @@ -24736,7 +22590,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { return true } // match: (MULLconst [45] x) - // cond: // result: (LEAL8 (LEAL4 x x) (LEAL4 x x)) for { if v.AuxInt != 45 { @@ -24759,7 +22612,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_10(v *Value) bool { func rewriteValueAMD64_OpAMD64MULLconst_20(v *Value) bool { b := v.Block // match: (MULLconst [73] x) - // cond: // result: (LEAL8 x (LEAL8 x x)) for { if v.AuxInt != 73 { @@ -24775,7 +22627,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_20(v *Value) bool { return true } // match: (MULLconst [81] x) - // cond: // result: (LEAL8 (LEAL8 x x) (LEAL8 x x)) for { if v.AuxInt != 81 { @@ -24933,7 +22784,6 @@ func rewriteValueAMD64_OpAMD64MULLconst_20(v *Value) bool { } func rewriteValueAMD64_OpAMD64MULLconst_30(v *Value) bool { // match: (MULLconst [c] (MOVLconst [d])) - // cond: // result: (MOVLconst [int64(int32(c*d))]) for { c := v.AuxInt @@ -25010,7 +22860,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [-9] x) - // cond: // result: (NEGQ (LEAQ8 x x)) for { if v.AuxInt != -9 { @@ -25025,7 +22874,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [-5] x) - // cond: // result: (NEGQ (LEAQ4 x x)) for { if v.AuxInt != -5 { @@ -25040,7 +22888,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [-3] x) - // cond: // result: (NEGQ (LEAQ2 x x)) for { if v.AuxInt != -3 { @@ -25055,7 +22902,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [-1] x) - // cond: // result: (NEGQ x) for { if v.AuxInt != -1 { @@ -25067,7 +22913,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [ 0] _) - // cond: // result: (MOVQconst [0]) for { if v.AuxInt != 0 { @@ -25078,7 +22923,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [ 1] x) - // cond: // result: x for { if v.AuxInt != 1 { @@ -25091,7 +22935,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [ 3] x) - // cond: // result: (LEAQ2 x x) for { if v.AuxInt != 3 { @@ -25104,7 +22947,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [ 5] x) - // cond: // result: (LEAQ4 x x) for { if v.AuxInt != 5 { @@ -25117,7 +22959,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { return true } // match: (MULQconst [ 7] x) - // cond: // result: (LEAQ2 x (LEAQ2 x x)) for { if v.AuxInt != 7 { @@ -25137,7 +22978,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { b := v.Block // match: (MULQconst [ 9] x) - // cond: // result: (LEAQ8 x x) for { if v.AuxInt != 9 { @@ -25150,7 +22990,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [11] x) - // cond: // result: (LEAQ2 x (LEAQ4 x x)) for { if v.AuxInt != 11 { @@ -25166,7 +23005,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [13] x) - // cond: // result: (LEAQ4 x (LEAQ2 x x)) for { if v.AuxInt != 13 { @@ -25182,7 +23020,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [19] x) - // cond: // result: (LEAQ2 x (LEAQ8 x x)) for { if v.AuxInt != 19 { @@ -25198,7 +23035,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [21] x) - // cond: // result: (LEAQ4 x (LEAQ4 x x)) for { if v.AuxInt != 21 { @@ -25214,7 +23050,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [25] x) - // cond: // result: (LEAQ8 x (LEAQ2 x x)) for { if v.AuxInt != 25 { @@ -25230,7 +23065,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [27] x) - // cond: // result: (LEAQ8 (LEAQ2 x x) (LEAQ2 x x)) for { if v.AuxInt != 27 { @@ -25249,7 +23083,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [37] x) - // cond: // result: (LEAQ4 x (LEAQ8 x x)) for { if v.AuxInt != 37 { @@ -25265,7 +23098,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [41] x) - // cond: // result: (LEAQ8 x (LEAQ4 x x)) for { if v.AuxInt != 41 { @@ -25281,7 +23113,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { return true } // match: (MULQconst [45] x) - // cond: // result: (LEAQ8 (LEAQ4 x x) (LEAQ4 x x)) for { if v.AuxInt != 45 { @@ -25304,7 +23135,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_10(v *Value) bool { func rewriteValueAMD64_OpAMD64MULQconst_20(v *Value) bool { b := v.Block // match: (MULQconst [73] x) - // cond: // result: (LEAQ8 x (LEAQ8 x x)) for { if v.AuxInt != 73 { @@ -25320,7 +23150,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_20(v *Value) bool { return true } // match: (MULQconst [81] x) - // cond: // result: (LEAQ8 (LEAQ8 x x) (LEAQ8 x x)) for { if v.AuxInt != 81 { @@ -25478,7 +23307,6 @@ func rewriteValueAMD64_OpAMD64MULQconst_20(v *Value) bool { } func rewriteValueAMD64_OpAMD64MULQconst_30(v *Value) bool { // match: (MULQconst [c] (MOVQconst [d])) - // cond: // result: (MOVQconst [c*d]) for { c := v.AuxInt @@ -25618,7 +23446,6 @@ func rewriteValueAMD64_OpAMD64MULSDload_0(v *Value) bool { return true } // match: (MULSDload x [off] {sym} ptr (MOVQstore [off] {sym} ptr y _)) - // cond: // result: (MULSD x (MOVQi2f y)) for { off := v.AuxInt @@ -25627,13 +23454,7 @@ func rewriteValueAMD64_OpAMD64MULSDload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVQstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVQstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -25757,7 +23578,6 @@ func rewriteValueAMD64_OpAMD64MULSSload_0(v *Value) bool { return true } // match: (MULSSload x [off] {sym} ptr (MOVLstore [off] {sym} ptr y _)) - // cond: // result: (MULSS x (MOVLi2f y)) for { off := v.AuxInt @@ -25766,13 +23586,7 @@ func rewriteValueAMD64_OpAMD64MULSSload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVLstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVLstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -25791,7 +23605,6 @@ func rewriteValueAMD64_OpAMD64MULSSload_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64NEGL_0(v *Value) bool { // match: (NEGL (NEGL x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -25823,7 +23636,6 @@ func rewriteValueAMD64_OpAMD64NEGL_0(v *Value) bool { return true } // match: (NEGL (MOVLconst [c])) - // cond: // result: (MOVLconst [int64(int32(-c))]) for { v_0 := v.Args[0] @@ -25839,7 +23651,6 @@ func rewriteValueAMD64_OpAMD64NEGL_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64NEGQ_0(v *Value) bool { // match: (NEGQ (NEGQ x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -25871,7 +23682,6 @@ func rewriteValueAMD64_OpAMD64NEGQ_0(v *Value) bool { return true } // match: (NEGQ (MOVQconst [c])) - // cond: // result: (MOVQconst [-c]) for { v_0 := v.Args[0] @@ -25909,7 +23719,6 @@ func rewriteValueAMD64_OpAMD64NEGQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64NOTL_0(v *Value) bool { // match: (NOTL (MOVLconst [c])) - // cond: // result: (MOVLconst [^c]) for { v_0 := v.Args[0] @@ -25925,7 +23734,6 @@ func rewriteValueAMD64_OpAMD64NOTL_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64NOTQ_0(v *Value) bool { // match: (NOTQ (MOVQconst [c])) - // cond: // result: (MOVQconst [^c]) for { v_0 := v.Args[0] @@ -25953,13 +23761,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { } y := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVLconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTSL) @@ -25979,13 +23781,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVLconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTSL) @@ -26031,7 +23827,6 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { return true } // match: (ORL x (MOVLconst [c])) - // cond: // result: (ORLconst [c] x) for { _ = v.Args[1] @@ -26047,7 +23842,6 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { return true } // match: (ORL (MOVLconst [c]) x) - // cond: // result: (ORLconst [c] x) for { x := v.Args[1] @@ -26077,10 +23871,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -26104,10 +23895,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -26132,10 +23920,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -26160,10 +23945,7 @@ func rewriteValueAMD64_OpAMD64ORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -26191,10 +23973,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -26219,10 +23998,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -26231,7 +24007,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (SHLL x y) (ANDL (SHRL x (NEGQ y)) (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])))) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26255,10 +24030,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpAMD64NEGQ { - break - } - if y != v_1_0_1.Args[0] { + if v_1_0_1.Op != OpAMD64NEGQ || y != v_1_0_1.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26266,10 +24038,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPQconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpAMD64CMPQconst || v_1_1_0.AuxInt != 32 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -26277,20 +24046,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0_0_0.AuxInt != -32 { + if v_1_1_0_0_0.Op != OpAMD64ADDQconst || v_1_1_0_0_0.AuxInt != -32 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0_0_0.AuxInt != 31 || y != v_1_1_0_0_0_0.Args[0] { break } v.reset(OpAMD64ROLL) @@ -26299,7 +24059,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (SHLL x y) (ANDL (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])) (SHRL x (NEGQ y)))) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26319,10 +24078,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPQconst { - break - } - if v_1_0_0.AuxInt != 32 { + if v_1_0_0.Op != OpAMD64CMPQconst || v_1_0_0.AuxInt != 32 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -26330,20 +24086,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_0_0_0.AuxInt != -32 { + if v_1_0_0_0_0.Op != OpAMD64ADDQconst || v_1_0_0_0_0.AuxInt != -32 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst || v_1_0_0_0_0_0.AuxInt != 31 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26355,10 +24102,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpAMD64NEGQ { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpAMD64NEGQ || y != v_1_1_1.Args[0] { break } v.reset(OpAMD64ROLL) @@ -26367,7 +24111,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (ANDL (SHRL x (NEGQ y)) (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32]))) (SHLL x y)) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26392,10 +24135,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPQconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpAMD64CMPQconst || v_0_1_0.AuxInt != 32 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -26403,20 +24143,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0_0_0.AuxInt != -32 { + if v_0_1_0_0_0.Op != OpAMD64ADDQconst || v_0_1_0_0_0.AuxInt != -32 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0_0_0.AuxInt != 31 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -26424,10 +24155,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64ROLL) @@ -26436,7 +24164,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (ANDL (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])) (SHRL x (NEGQ y))) (SHLL x y)) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26450,10 +24177,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPQconst { - break - } - if v_0_0_0.AuxInt != 32 { + if v_0_0_0.Op != OpAMD64CMPQconst || v_0_0_0.AuxInt != 32 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -26461,17 +24185,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_0_0_0.AuxInt != -32 { + if v_0_0_0_0_0.Op != OpAMD64ADDQconst || v_0_0_0_0_0.AuxInt != -32 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 31 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst || v_0_0_0_0_0_0.AuxInt != 31 { break } y := v_0_0_0_0_0_0.Args[0] @@ -26482,10 +24200,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { _ = v_0_1.Args[1] x := v_0_1.Args[0] v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpAMD64NEGQ { - break - } - if y != v_0_1_1.Args[0] { + if v_0_1_1.Op != OpAMD64NEGQ || y != v_0_1_1.Args[0] { break } v_1 := v.Args[1] @@ -26493,10 +24208,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64ROLL) @@ -26505,7 +24217,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (SHLL x y) (ANDL (SHRL x (NEGL y)) (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])))) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26529,10 +24240,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpAMD64NEGL { - break - } - if y != v_1_0_1.Args[0] { + if v_1_0_1.Op != OpAMD64NEGL || y != v_1_0_1.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26540,10 +24248,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPLconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpAMD64CMPLconst || v_1_1_0.AuxInt != 32 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -26551,20 +24256,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0_0_0.AuxInt != -32 { + if v_1_1_0_0_0.Op != OpAMD64ADDLconst || v_1_1_0_0_0.AuxInt != -32 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0_0_0.AuxInt != 31 || y != v_1_1_0_0_0_0.Args[0] { break } v.reset(OpAMD64ROLL) @@ -26573,7 +24269,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (SHLL x y) (ANDL (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])) (SHRL x (NEGL y)))) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26593,10 +24288,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPLconst { - break - } - if v_1_0_0.AuxInt != 32 { + if v_1_0_0.Op != OpAMD64CMPLconst || v_1_0_0.AuxInt != 32 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -26604,20 +24296,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_0_0_0.AuxInt != -32 { + if v_1_0_0_0_0.Op != OpAMD64ADDLconst || v_1_0_0_0_0.AuxInt != -32 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst || v_1_0_0_0_0_0.AuxInt != 31 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26629,10 +24312,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpAMD64NEGL { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpAMD64NEGL || y != v_1_1_1.Args[0] { break } v.reset(OpAMD64ROLL) @@ -26641,7 +24321,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (ANDL (SHRL x (NEGL y)) (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32]))) (SHLL x y)) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26666,10 +24345,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPLconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpAMD64CMPLconst || v_0_1_0.AuxInt != 32 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -26677,20 +24353,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0_0_0.AuxInt != -32 { + if v_0_1_0_0_0.Op != OpAMD64ADDLconst || v_0_1_0_0_0.AuxInt != -32 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0_0_0.AuxInt != 31 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -26698,10 +24365,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64ROLL) @@ -26710,7 +24374,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { return true } // match: (ORL (ANDL (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])) (SHRL x (NEGL y))) (SHLL x y)) - // cond: // result: (ROLL x y) for { _ = v.Args[1] @@ -26724,10 +24387,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPLconst { - break - } - if v_0_0_0.AuxInt != 32 { + if v_0_0_0.Op != OpAMD64CMPLconst || v_0_0_0.AuxInt != 32 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -26735,17 +24395,11 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_0_0_0.AuxInt != -32 { + if v_0_0_0_0_0.Op != OpAMD64ADDLconst || v_0_0_0_0_0.AuxInt != -32 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 31 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst || v_0_0_0_0_0_0.AuxInt != 31 { break } y := v_0_0_0_0_0_0.Args[0] @@ -26756,10 +24410,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { _ = v_0_1.Args[1] x := v_0_1.Args[0] v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpAMD64NEGL { - break - } - if y != v_0_1_1.Args[0] { + if v_0_1_1.Op != OpAMD64NEGL || y != v_0_1_1.Args[0] { break } v_1 := v.Args[1] @@ -26767,10 +24418,7 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64ROLL) @@ -26782,7 +24430,6 @@ func rewriteValueAMD64_OpAMD64ORL_10(v *Value) bool { } func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { // match: (ORL (SHRL x y) (ANDL (SHLL x (NEGQ y)) (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])))) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -26806,10 +24453,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpAMD64NEGQ { - break - } - if y != v_1_0_1.Args[0] { + if v_1_0_1.Op != OpAMD64NEGQ || y != v_1_0_1.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26817,10 +24461,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPQconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpAMD64CMPQconst || v_1_1_0.AuxInt != 32 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -26828,20 +24469,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0_0_0.AuxInt != -32 { + if v_1_1_0_0_0.Op != OpAMD64ADDQconst || v_1_1_0_0_0.AuxInt != -32 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0_0_0.AuxInt != 31 || y != v_1_1_0_0_0_0.Args[0] { break } v.reset(OpAMD64RORL) @@ -26850,7 +24482,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (SHRL x y) (ANDL (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])) (SHLL x (NEGQ y)))) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -26870,10 +24501,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPQconst { - break - } - if v_1_0_0.AuxInt != 32 { + if v_1_0_0.Op != OpAMD64CMPQconst || v_1_0_0.AuxInt != 32 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -26881,20 +24509,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_0_0_0.AuxInt != -32 { + if v_1_0_0_0_0.Op != OpAMD64ADDQconst || v_1_0_0_0_0.AuxInt != -32 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst || v_1_0_0_0_0_0.AuxInt != 31 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -26906,10 +24525,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpAMD64NEGQ { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpAMD64NEGQ || y != v_1_1_1.Args[0] { break } v.reset(OpAMD64RORL) @@ -26918,7 +24534,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (ANDL (SHLL x (NEGQ y)) (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32]))) (SHRL x y)) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -26943,10 +24558,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPQconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpAMD64CMPQconst || v_0_1_0.AuxInt != 32 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -26954,20 +24566,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0_0_0.AuxInt != -32 { + if v_0_1_0_0_0.Op != OpAMD64ADDQconst || v_0_1_0_0_0.AuxInt != -32 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0_0_0.AuxInt != 31 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -26975,10 +24578,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64RORL) @@ -26987,7 +24587,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (ANDL (SBBLcarrymask (CMPQconst (NEGQ (ADDQconst (ANDQconst y [31]) [-32])) [32])) (SHLL x (NEGQ y))) (SHRL x y)) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -27001,10 +24600,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPQconst { - break - } - if v_0_0_0.AuxInt != 32 { + if v_0_0_0.Op != OpAMD64CMPQconst || v_0_0_0.AuxInt != 32 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -27012,17 +24608,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_0_0_0.AuxInt != -32 { + if v_0_0_0_0_0.Op != OpAMD64ADDQconst || v_0_0_0_0_0.AuxInt != -32 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 31 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst || v_0_0_0_0_0_0.AuxInt != 31 { break } y := v_0_0_0_0_0_0.Args[0] @@ -27033,10 +24623,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { _ = v_0_1.Args[1] x := v_0_1.Args[0] v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpAMD64NEGQ { - break - } - if y != v_0_1_1.Args[0] { + if v_0_1_1.Op != OpAMD64NEGQ || y != v_0_1_1.Args[0] { break } v_1 := v.Args[1] @@ -27044,10 +24631,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64RORL) @@ -27056,7 +24640,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (SHRL x y) (ANDL (SHLL x (NEGL y)) (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])))) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -27080,10 +24663,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpAMD64NEGL { - break - } - if y != v_1_0_1.Args[0] { + if v_1_0_1.Op != OpAMD64NEGL || y != v_1_0_1.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27091,10 +24671,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPLconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpAMD64CMPLconst || v_1_1_0.AuxInt != 32 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -27102,20 +24679,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0_0_0.AuxInt != -32 { + if v_1_1_0_0_0.Op != OpAMD64ADDLconst || v_1_1_0_0_0.AuxInt != -32 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0_0_0.AuxInt != 31 || y != v_1_1_0_0_0_0.Args[0] { break } v.reset(OpAMD64RORL) @@ -27124,7 +24692,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (SHRL x y) (ANDL (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])) (SHLL x (NEGL y)))) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -27144,10 +24711,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPLconst { - break - } - if v_1_0_0.AuxInt != 32 { + if v_1_0_0.Op != OpAMD64CMPLconst || v_1_0_0.AuxInt != 32 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -27155,20 +24719,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_0_0_0.AuxInt != -32 { + if v_1_0_0_0_0.Op != OpAMD64ADDLconst || v_1_0_0_0_0.AuxInt != -32 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 31 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst || v_1_0_0_0_0_0.AuxInt != 31 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27180,10 +24735,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpAMD64NEGL { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpAMD64NEGL || y != v_1_1_1.Args[0] { break } v.reset(OpAMD64RORL) @@ -27192,7 +24744,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (ANDL (SHLL x (NEGL y)) (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32]))) (SHRL x y)) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -27217,10 +24768,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPLconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpAMD64CMPLconst || v_0_1_0.AuxInt != 32 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -27228,20 +24776,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0_0_0.AuxInt != -32 { + if v_0_1_0_0_0.Op != OpAMD64ADDLconst || v_0_1_0_0_0.AuxInt != -32 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 31 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0_0_0.AuxInt != 31 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -27249,10 +24788,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64RORL) @@ -27261,7 +24797,6 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { return true } // match: (ORL (ANDL (SBBLcarrymask (CMPLconst (NEGL (ADDLconst (ANDLconst y [31]) [-32])) [32])) (SHLL x (NEGL y))) (SHRL x y)) - // cond: // result: (RORL x y) for { _ = v.Args[1] @@ -27275,10 +24810,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPLconst { - break - } - if v_0_0_0.AuxInt != 32 { + if v_0_0_0.Op != OpAMD64CMPLconst || v_0_0_0.AuxInt != 32 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -27286,17 +24818,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_0_0_0.AuxInt != -32 { + if v_0_0_0_0_0.Op != OpAMD64ADDLconst || v_0_0_0_0_0.AuxInt != -32 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 31 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst || v_0_0_0_0_0_0.AuxInt != 31 { break } y := v_0_0_0_0_0_0.Args[0] @@ -27307,10 +24833,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { _ = v_0_1.Args[1] x := v_0_1.Args[0] v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpAMD64NEGL { - break - } - if y != v_0_1_1.Args[0] { + if v_0_1_1.Op != OpAMD64NEGL || y != v_0_1_1.Args[0] { break } v_1 := v.Args[1] @@ -27318,10 +24841,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } _ = v_1.Args[1] - if x != v_1.Args[0] { - break - } - if y != v_1.Args[1] { + if x != v_1.Args[0] || y != v_1.Args[1] { break } v.reset(OpAMD64RORL) @@ -27341,10 +24861,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -27366,20 +24883,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_1_0.AuxInt != -16 { + if v_1_0_1_0.Op != OpAMD64ADDQconst || v_1_0_1_0.AuxInt != -16 { break } v_1_0_1_0_0 := v_1_0_1_0.Args[0] - if v_1_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_1_0_0.AuxInt != 15 { - break - } - if y != v_1_0_1_0_0.Args[0] { + if v_1_0_1_0_0.Op != OpAMD64ANDQconst || v_1_0_1_0_0.AuxInt != 15 || y != v_1_0_1_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27387,10 +24895,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPQconst { - break - } - if v_1_1_0.AuxInt != 16 { + if v_1_1_0.Op != OpAMD64CMPQconst || v_1_1_0.AuxInt != 16 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -27398,23 +24903,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0_0_0.AuxInt != -16 { + if v_1_1_0_0_0.Op != OpAMD64ADDQconst || v_1_1_0_0_0.AuxInt != -16 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 15 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0_0_0.AuxInt != 15 || y != v_1_1_0_0_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27434,10 +24927,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -27451,10 +24941,7 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPQconst { - break - } - if v_1_0_0.AuxInt != 16 { + if v_1_0_0.Op != OpAMD64CMPQconst || v_1_0_0.AuxInt != 16 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -27462,20 +24949,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_0_0_0.AuxInt != -16 { + if v_1_0_0_0_0.Op != OpAMD64ADDQconst || v_1_0_0_0_0.AuxInt != -16 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 15 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst || v_1_0_0_0_0_0.AuxInt != 15 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27491,23 +24969,11 @@ func rewriteValueAMD64_OpAMD64ORL_20(v *Value) bool { break } v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_1_0.AuxInt != -16 { + if v_1_1_1_0.Op != OpAMD64ADDQconst || v_1_1_1_0.AuxInt != -16 { break } v_1_1_1_0_0 := v_1_1_1_0.Args[0] - if v_1_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_1_0_0.AuxInt != 15 { - break - } - if y != v_1_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_1_0_0.Op != OpAMD64ANDQconst || v_1_1_1_0_0.AuxInt != 15 || y != v_1_1_1_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27539,17 +25005,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_1_0.AuxInt != -16 { + if v_0_0_1_0.Op != OpAMD64ADDQconst || v_0_0_1_0.AuxInt != -16 { break } v_0_0_1_0_0 := v_0_0_1_0.Args[0] - if v_0_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_1_0_0.AuxInt != 15 { + if v_0_0_1_0_0.Op != OpAMD64ANDQconst || v_0_0_1_0_0.AuxInt != 15 { break } y := v_0_0_1_0_0.Args[0] @@ -27558,10 +25018,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPQconst { - break - } - if v_0_1_0.AuxInt != 16 { + if v_0_1_0.Op != OpAMD64CMPQconst || v_0_1_0.AuxInt != 16 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -27569,20 +25026,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0_0_0.AuxInt != -16 { + if v_0_1_0_0_0.Op != OpAMD64ADDQconst || v_0_1_0_0_0.AuxInt != -16 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 15 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0_0_0.AuxInt != 15 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -27594,16 +25042,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27626,10 +25065,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPQconst { - break - } - if v_0_0_0.AuxInt != 16 { + if v_0_0_0.Op != OpAMD64CMPQconst || v_0_0_0.AuxInt != 16 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -27637,17 +25073,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_0_0_0.AuxInt != -16 { + if v_0_0_0_0_0.Op != OpAMD64ADDQconst || v_0_0_0_0_0.AuxInt != -16 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 15 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst || v_0_0_0_0_0_0.AuxInt != 15 { break } y := v_0_0_0_0_0_0.Args[0] @@ -27662,20 +25092,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_1_0.AuxInt != -16 { + if v_0_1_1_0.Op != OpAMD64ADDQconst || v_0_1_1_0.AuxInt != -16 { break } v_0_1_1_0_0 := v_0_1_1_0.Args[0] - if v_0_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_1_0_0.AuxInt != 15 { - break - } - if y != v_0_1_1_0_0.Args[0] { + if v_0_1_1_0_0.Op != OpAMD64ANDQconst || v_0_1_1_0_0.AuxInt != 15 || y != v_0_1_1_0_0.Args[0] { break } v_1 := v.Args[1] @@ -27687,16 +25108,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27716,10 +25128,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -27741,20 +25150,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_1_0.AuxInt != -16 { + if v_1_0_1_0.Op != OpAMD64ADDLconst || v_1_0_1_0.AuxInt != -16 { break } v_1_0_1_0_0 := v_1_0_1_0.Args[0] - if v_1_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_1_0_0.AuxInt != 15 { - break - } - if y != v_1_0_1_0_0.Args[0] { + if v_1_0_1_0_0.Op != OpAMD64ANDLconst || v_1_0_1_0_0.AuxInt != 15 || y != v_1_0_1_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27762,10 +25162,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPLconst { - break - } - if v_1_1_0.AuxInt != 16 { + if v_1_1_0.Op != OpAMD64CMPLconst || v_1_1_0.AuxInt != 16 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -27773,23 +25170,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0_0_0.AuxInt != -16 { + if v_1_1_0_0_0.Op != OpAMD64ADDLconst || v_1_1_0_0_0.AuxInt != -16 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 15 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0_0_0.AuxInt != 15 || y != v_1_1_0_0_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27809,10 +25194,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -27826,10 +25208,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPLconst { - break - } - if v_1_0_0.AuxInt != 16 { + if v_1_0_0.Op != OpAMD64CMPLconst || v_1_0_0.AuxInt != 16 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -27837,20 +25216,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_0_0_0.AuxInt != -16 { + if v_1_0_0_0_0.Op != OpAMD64ADDLconst || v_1_0_0_0_0.AuxInt != -16 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 15 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst || v_1_0_0_0_0_0.AuxInt != 15 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -27866,23 +25236,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_1_0.AuxInt != -16 { + if v_1_1_1_0.Op != OpAMD64ADDLconst || v_1_1_1_0.AuxInt != -16 { break } v_1_1_1_0_0 := v_1_1_1_0.Args[0] - if v_1_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_1_0_0.AuxInt != 15 { - break - } - if y != v_1_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_1_0_0.Op != OpAMD64ANDLconst || v_1_1_1_0_0.AuxInt != 15 || y != v_1_1_1_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27911,17 +25269,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_1_0.AuxInt != -16 { + if v_0_0_1_0.Op != OpAMD64ADDLconst || v_0_0_1_0.AuxInt != -16 { break } v_0_0_1_0_0 := v_0_0_1_0.Args[0] - if v_0_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_1_0_0.AuxInt != 15 { + if v_0_0_1_0_0.Op != OpAMD64ANDLconst || v_0_0_1_0_0.AuxInt != 15 { break } y := v_0_0_1_0_0.Args[0] @@ -27930,10 +25282,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPLconst { - break - } - if v_0_1_0.AuxInt != 16 { + if v_0_1_0.Op != OpAMD64CMPLconst || v_0_1_0.AuxInt != 16 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -27941,20 +25290,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0_0_0.AuxInt != -16 { + if v_0_1_0_0_0.Op != OpAMD64ADDLconst || v_0_1_0_0_0.AuxInt != -16 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 15 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0_0_0.AuxInt != 15 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -27966,16 +25306,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -27998,10 +25329,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPLconst { - break - } - if v_0_0_0.AuxInt != 16 { + if v_0_0_0.Op != OpAMD64CMPLconst || v_0_0_0.AuxInt != 16 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -28009,17 +25337,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_0_0_0.AuxInt != -16 { + if v_0_0_0_0_0.Op != OpAMD64ADDLconst || v_0_0_0_0_0.AuxInt != -16 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 15 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst || v_0_0_0_0_0_0.AuxInt != 15 { break } y := v_0_0_0_0_0_0.Args[0] @@ -28034,20 +25356,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_1_0.AuxInt != -16 { + if v_0_1_1_0.Op != OpAMD64ADDLconst || v_0_1_1_0.AuxInt != -16 { break } v_0_1_1_0_0 := v_0_1_1_0.Args[0] - if v_0_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_1_0_0.AuxInt != 15 { - break - } - if y != v_0_1_1_0_0.Args[0] { + if v_0_1_1_0_0.Op != OpAMD64ANDLconst || v_0_1_1_0_0.AuxInt != 15 || y != v_0_1_1_0_0.Args[0] { break } v_1 := v.Args[1] @@ -28059,16 +25372,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64ROLW) @@ -28088,10 +25392,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -28108,23 +25409,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0.AuxInt != -16 { + if v_1_1_0.Op != OpAMD64ADDQconst || v_1_1_0.AuxInt != -16 { break } v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0.AuxInt != 15 { - break - } - if y != v_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0.AuxInt != 15 || y != v_1_1_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64RORW) @@ -28148,17 +25437,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0.AuxInt != -16 { + if v_0_1_0.Op != OpAMD64ADDQconst || v_0_1_0.AuxInt != -16 { break } v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0.AuxInt != 15 { + if v_0_1_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0.AuxInt != 15 { break } y := v_0_1_0_0.Args[0] @@ -28171,16 +25454,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64RORW) @@ -28200,10 +25474,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 15 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 15 { break } y := v_0_1.Args[0] @@ -28220,23 +25491,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0.AuxInt != -16 { + if v_1_1_0.Op != OpAMD64ADDLconst || v_1_1_0.AuxInt != -16 { break } v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0.AuxInt != 15 { - break - } - if y != v_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0.AuxInt != 15 || y != v_1_1_0_0.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64RORW) @@ -28260,17 +25519,11 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0.AuxInt != -16 { + if v_0_1_0.Op != OpAMD64ADDLconst || v_0_1_0.AuxInt != -16 { break } v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0.AuxInt != 15 { + if v_0_1_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0.AuxInt != 15 { break } y := v_0_1_0_0.Args[0] @@ -28283,16 +25536,7 @@ func rewriteValueAMD64_OpAMD64ORL_30(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 15 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 2) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 15 || y != v_1_1.Args[0] || !(v.Type.Size() == 2) { break } v.reset(OpAMD64RORW) @@ -28315,10 +25559,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -28340,20 +25581,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_1_0.AuxInt != -8 { + if v_1_0_1_0.Op != OpAMD64ADDQconst || v_1_0_1_0.AuxInt != -8 { break } v_1_0_1_0_0 := v_1_0_1_0.Args[0] - if v_1_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_1_0_0.AuxInt != 7 { - break - } - if y != v_1_0_1_0_0.Args[0] { + if v_1_0_1_0_0.Op != OpAMD64ANDQconst || v_1_0_1_0_0.AuxInt != 7 || y != v_1_0_1_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -28361,10 +25593,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPQconst { - break - } - if v_1_1_0.AuxInt != 8 { + if v_1_1_0.Op != OpAMD64CMPQconst || v_1_1_0.AuxInt != 8 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -28372,23 +25601,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0_0_0.AuxInt != -8 { + if v_1_1_0_0_0.Op != OpAMD64ADDQconst || v_1_1_0_0_0.AuxInt != -8 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 7 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_0_0_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0_0_0.AuxInt != 7 || y != v_1_1_0_0_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28408,10 +25625,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -28425,10 +25639,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPQconst { - break - } - if v_1_0_0.AuxInt != 8 { + if v_1_0_0.Op != OpAMD64CMPQconst || v_1_0_0.AuxInt != 8 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -28436,20 +25647,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_1_0_0_0_0.AuxInt != -8 { + if v_1_0_0_0_0.Op != OpAMD64ADDQconst || v_1_0_0_0_0.AuxInt != -8 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 7 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDQconst || v_1_0_0_0_0_0.AuxInt != 7 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -28465,23 +25667,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_1_0.AuxInt != -8 { + if v_1_1_1_0.Op != OpAMD64ADDQconst || v_1_1_1_0.AuxInt != -8 { break } v_1_1_1_0_0 := v_1_1_1_0.Args[0] - if v_1_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_1_0_0.AuxInt != 7 { - break - } - if y != v_1_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_1_0_0.Op != OpAMD64ANDQconst || v_1_1_1_0_0.AuxInt != 7 || y != v_1_1_1_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28510,17 +25700,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_1_0.AuxInt != -8 { + if v_0_0_1_0.Op != OpAMD64ADDQconst || v_0_0_1_0.AuxInt != -8 { break } v_0_0_1_0_0 := v_0_0_1_0.Args[0] - if v_0_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_1_0_0.AuxInt != 7 { + if v_0_0_1_0_0.Op != OpAMD64ANDQconst || v_0_0_1_0_0.AuxInt != 7 { break } y := v_0_0_1_0_0.Args[0] @@ -28529,10 +25713,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPQconst { - break - } - if v_0_1_0.AuxInt != 8 { + if v_0_1_0.Op != OpAMD64CMPQconst || v_0_1_0.AuxInt != 8 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -28540,20 +25721,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0_0_0.AuxInt != -8 { + if v_0_1_0_0_0.Op != OpAMD64ADDQconst || v_0_1_0_0_0.AuxInt != -8 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 7 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0_0_0.AuxInt != 7 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -28565,16 +25737,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28597,10 +25760,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPQconst { - break - } - if v_0_0_0.AuxInt != 8 { + if v_0_0_0.Op != OpAMD64CMPQconst || v_0_0_0.AuxInt != 8 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -28608,17 +25768,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDQconst { - break - } - if v_0_0_0_0_0.AuxInt != -8 { + if v_0_0_0_0_0.Op != OpAMD64ADDQconst || v_0_0_0_0_0.AuxInt != -8 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 7 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDQconst || v_0_0_0_0_0_0.AuxInt != 7 { break } y := v_0_0_0_0_0_0.Args[0] @@ -28633,20 +25787,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_1_0.AuxInt != -8 { + if v_0_1_1_0.Op != OpAMD64ADDQconst || v_0_1_1_0.AuxInt != -8 { break } v_0_1_1_0_0 := v_0_1_1_0.Args[0] - if v_0_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_1_0_0.AuxInt != 7 { - break - } - if y != v_0_1_1_0_0.Args[0] { + if v_0_1_1_0_0.Op != OpAMD64ANDQconst || v_0_1_1_0_0.AuxInt != 7 || y != v_0_1_1_0_0.Args[0] { break } v_1 := v.Args[1] @@ -28658,16 +25803,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28687,10 +25823,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -28712,20 +25845,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_1_0.AuxInt != -8 { + if v_1_0_1_0.Op != OpAMD64ADDLconst || v_1_0_1_0.AuxInt != -8 { break } v_1_0_1_0_0 := v_1_0_1_0.Args[0] - if v_1_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_1_0_0.AuxInt != 7 { - break - } - if y != v_1_0_1_0_0.Args[0] { + if v_1_0_1_0_0.Op != OpAMD64ANDLconst || v_1_0_1_0_0.AuxInt != 7 || y != v_1_0_1_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -28733,10 +25857,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64CMPLconst { - break - } - if v_1_1_0.AuxInt != 8 { + if v_1_1_0.Op != OpAMD64CMPLconst || v_1_1_0.AuxInt != 8 { break } v_1_1_0_0 := v_1_1_0.Args[0] @@ -28744,23 +25865,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_0_0_0 := v_1_1_0_0.Args[0] - if v_1_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0_0_0.AuxInt != -8 { + if v_1_1_0_0_0.Op != OpAMD64ADDLconst || v_1_1_0_0_0.AuxInt != -8 { break } v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0_0_0.AuxInt != 7 { - break - } - if y != v_1_1_0_0_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_0_0_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0_0_0.AuxInt != 7 || y != v_1_1_0_0_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28780,10 +25889,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -28797,10 +25903,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64CMPLconst { - break - } - if v_1_0_0.AuxInt != 8 { + if v_1_0_0.Op != OpAMD64CMPLconst || v_1_0_0.AuxInt != 8 { break } v_1_0_0_0 := v_1_0_0.Args[0] @@ -28808,20 +25911,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_1_0_0_0_0.AuxInt != -8 { + if v_1_0_0_0_0.Op != OpAMD64ADDLconst || v_1_0_0_0_0.AuxInt != -8 { break } v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_0_0_0_0_0.AuxInt != 7 { - break - } - if y != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpAMD64ANDLconst || v_1_0_0_0_0_0.AuxInt != 7 || y != v_1_0_0_0_0_0.Args[0] { break } v_1_1 := v_1.Args[1] @@ -28837,23 +25931,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_1_0.AuxInt != -8 { + if v_1_1_1_0.Op != OpAMD64ADDLconst || v_1_1_1_0.AuxInt != -8 { break } v_1_1_1_0_0 := v_1_1_1_0.Args[0] - if v_1_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_1_0_0.AuxInt != 7 { - break - } - if y != v_1_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_1_0_0.Op != OpAMD64ANDLconst || v_1_1_1_0_0.AuxInt != 7 || y != v_1_1_1_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28882,17 +25964,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_1_0.AuxInt != -8 { + if v_0_0_1_0.Op != OpAMD64ADDLconst || v_0_0_1_0.AuxInt != -8 { break } v_0_0_1_0_0 := v_0_0_1_0.Args[0] - if v_0_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_1_0_0.AuxInt != 7 { + if v_0_0_1_0_0.Op != OpAMD64ANDLconst || v_0_0_1_0_0.AuxInt != 7 { break } y := v_0_0_1_0_0.Args[0] @@ -28901,10 +25977,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64CMPLconst { - break - } - if v_0_1_0.AuxInt != 8 { + if v_0_1_0.Op != OpAMD64CMPLconst || v_0_1_0.AuxInt != 8 { break } v_0_1_0_0 := v_0_1_0.Args[0] @@ -28912,20 +25985,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_0_0_0 := v_0_1_0_0.Args[0] - if v_0_1_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0_0_0.AuxInt != -8 { + if v_0_1_0_0_0.Op != OpAMD64ADDLconst || v_0_1_0_0_0.AuxInt != -8 { break } v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0_0_0.AuxInt != 7 { - break - } - if y != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0_0_0.AuxInt != 7 || y != v_0_1_0_0_0_0.Args[0] { break } v_1 := v.Args[1] @@ -28937,16 +26001,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -28969,10 +26024,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64CMPLconst { - break - } - if v_0_0_0.AuxInt != 8 { + if v_0_0_0.Op != OpAMD64CMPLconst || v_0_0_0.AuxInt != 8 { break } v_0_0_0_0 := v_0_0_0.Args[0] @@ -28980,17 +26032,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpAMD64ADDLconst { - break - } - if v_0_0_0_0_0.AuxInt != -8 { + if v_0_0_0_0_0.Op != OpAMD64ADDLconst || v_0_0_0_0_0.AuxInt != -8 { break } v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_0_0_0_0_0.AuxInt != 7 { + if v_0_0_0_0_0_0.Op != OpAMD64ANDLconst || v_0_0_0_0_0_0.AuxInt != 7 { break } y := v_0_0_0_0_0_0.Args[0] @@ -29005,20 +26051,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_1_0.AuxInt != -8 { + if v_0_1_1_0.Op != OpAMD64ADDLconst || v_0_1_1_0.AuxInt != -8 { break } v_0_1_1_0_0 := v_0_1_1_0.Args[0] - if v_0_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_1_0_0.AuxInt != 7 { - break - } - if y != v_0_1_1_0_0.Args[0] { + if v_0_1_1_0_0.Op != OpAMD64ANDLconst || v_0_1_1_0_0.AuxInt != 7 || y != v_0_1_1_0_0.Args[0] { break } v_1 := v.Args[1] @@ -29030,16 +26067,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64ROLB) @@ -29059,10 +26087,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDQconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDQconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -29079,23 +26104,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64ADDQconst { - break - } - if v_1_1_0.AuxInt != -8 { + if v_1_1_0.Op != OpAMD64ADDQconst || v_1_1_0.AuxInt != -8 { break } v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_1_1_0_0.AuxInt != 7 { - break - } - if y != v_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_0_0.Op != OpAMD64ANDQconst || v_1_1_0_0.AuxInt != 7 || y != v_1_1_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64RORB) @@ -29119,17 +26132,11 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64ADDQconst { - break - } - if v_0_1_0.AuxInt != -8 { + if v_0_1_0.Op != OpAMD64ADDQconst || v_0_1_0.AuxInt != -8 { break } v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpAMD64ANDQconst { - break - } - if v_0_1_0_0.AuxInt != 7 { + if v_0_1_0_0.Op != OpAMD64ANDQconst || v_0_1_0_0.AuxInt != 7 { break } y := v_0_1_0_0.Args[0] @@ -29142,16 +26149,7 @@ func rewriteValueAMD64_OpAMD64ORL_40(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDQconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDQconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64RORB) @@ -29176,10 +26174,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpAMD64ANDLconst { - break - } - if v_0_1.AuxInt != 7 { + if v_0_1.Op != OpAMD64ANDLconst || v_0_1.AuxInt != 7 { break } y := v_0_1.Args[0] @@ -29196,23 +26191,11 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64ADDLconst { - break - } - if v_1_1_0.AuxInt != -8 { + if v_1_1_0.Op != OpAMD64ADDLconst || v_1_1_0.AuxInt != -8 { break } v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_1_1_0_0.AuxInt != 7 { - break - } - if y != v_1_1_0_0.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1_0_0.Op != OpAMD64ANDLconst || v_1_1_0_0.AuxInt != 7 || y != v_1_1_0_0.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64RORB) @@ -29236,17 +26219,11 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64ADDLconst { - break - } - if v_0_1_0.AuxInt != -8 { + if v_0_1_0.Op != OpAMD64ADDLconst || v_0_1_0.AuxInt != -8 { break } v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpAMD64ANDLconst { - break - } - if v_0_1_0_0.AuxInt != 7 { + if v_0_1_0_0.Op != OpAMD64ANDLconst || v_0_1_0_0.AuxInt != 7 { break } y := v_0_1_0_0.Args[0] @@ -29259,16 +26236,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpAMD64ANDLconst { - break - } - if v_1_1.AuxInt != 7 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(v.Type.Size() == 1) { + if v_1_1.Op != OpAMD64ANDLconst || v_1_1.AuxInt != 7 || y != v_1_1.Args[0] || !(v.Type.Size() == 1) { break } v.reset(OpAMD64RORB) @@ -29277,7 +26245,6 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { return true } // match: (ORL x x) - // cond: // result: x for { x := v.Args[1] @@ -29303,10 +26270,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29318,13 +26282,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29343,10 +26301,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29366,13 +26321,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29399,10 +26348,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -29414,13 +26360,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29439,10 +26379,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -29462,13 +26399,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29518,13 +26449,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29581,13 +26506,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29643,13 +26562,7 @@ func rewriteValueAMD64_OpAMD64ORL_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29711,13 +26624,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29751,10 +26658,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29766,16 +26670,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29804,10 +26699,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29819,16 +26711,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29857,10 +26740,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29872,16 +26752,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29910,10 +26781,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29925,16 +26793,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29954,10 +26813,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -29978,16 +26834,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30007,10 +26854,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -30031,16 +26875,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30060,10 +26895,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -30084,16 +26916,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30113,10 +26936,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -30137,16 +26957,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30175,10 +26986,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30190,16 +26998,7 @@ func rewriteValueAMD64_OpAMD64ORL_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30233,10 +27032,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30248,16 +27044,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30286,10 +27073,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30301,16 +27085,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30339,10 +27114,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30354,16 +27126,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30383,10 +27146,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30407,16 +27167,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30436,10 +27187,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30460,16 +27208,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30489,10 +27228,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30513,16 +27249,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30542,10 +27269,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } x1 := sh.Args[0] @@ -30566,16 +27290,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -30627,16 +27342,7 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30679,283 +27385,8 @@ func rewriteValueAMD64_OpAMD64ORL_70(v *Value) bool { if or.Op != OpAMD64ORL { break } - y := or.Args[1] - s0 := or.Args[0] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y)) - // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - s1 := v.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - p := x1.Args[0] - idx := x1.Args[1] - or := v.Args[1] - if or.Op != OpAMD64ORL { - break - } - y := or.Args[1] - s0 := or.Args[0] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - return false -} -func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { - b := v.Block - typ := &b.Func.Config.Types - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y)) - // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - s1 := v.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] - or := v.Args[1] - if or.Op != OpAMD64ORL { - break - } - y := or.Args[1] - s0 := or.Args[0] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)))) - // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - s1 := v.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - p := x1.Args[0] - idx := x1.Args[1] - or := v.Args[1] - if or.Op != OpAMD64ORL { - break - } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)))) - // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - s1 := v.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] - or := v.Args[1] - if or.Op != OpAMD64ORL { - break - } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -30969,16 +27400,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30998,7 +27420,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)))) + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y)) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31021,9 +27443,8 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -31037,16 +27458,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31066,7 +27478,12 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)))) + return false +} +func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { + b := v.Block + typ := &b.Func.Config.Types + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y)) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31089,9 +27506,8 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -31105,16 +27521,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31134,17 +27541,32 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { _ = v.Args[1] - or := v.Args[0] + s1 := v.Args[0] + if s1.Op != OpAMD64SHLLconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + p := x1.Args[0] + idx := x1.Args[1] + or := v.Args[1] if or.Op != OpAMD64ORL { break } - y := or.Args[1] - s0 := or.Args[0] + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] if s0.Op != OpAMD64SHLLconst { break } @@ -31154,11 +27576,36 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } i0 := x0.AuxInt - s := x0.Aux - mem := x0.Args[2] - p := x0.Args[0] - idx := x0.Args[1] - s1 := v.Args[1] + if x0.Aux != s { + break + } + _ = x0.Args[2] + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + break + } + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)))) + // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + s1 := v.Args[0] if s1.Op != OpAMD64SHLLconst { break } @@ -31168,20 +27615,31 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } i1 := x1.AuxInt - if x1.Aux != s { + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + or := v.Args[1] + if or.Op != OpAMD64ORL { break } - _ = x1.Args[2] - if p != x1.Args[0] { + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] + if s0.Op != OpAMD64SHLLconst { break } - if idx != x1.Args[1] { + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { break } - if mem != x1.Args[2] { + i0 := x0.AuxInt + if x0.Aux != s { break } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x0.Args[2] + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31201,17 +27659,32 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { _ = v.Args[1] - or := v.Args[0] + s1 := v.Args[0] + if s1.Op != OpAMD64SHLLconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + p := x1.Args[0] + idx := x1.Args[1] + or := v.Args[1] if or.Op != OpAMD64ORL { break } - y := or.Args[1] - s0 := or.Args[0] + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] if s0.Op != OpAMD64SHLLconst { break } @@ -31221,11 +27694,36 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } i0 := x0.AuxInt - s := x0.Aux - mem := x0.Args[2] - idx := x0.Args[0] - p := x0.Args[1] - s1 := v.Args[1] + if x0.Aux != s { + break + } + _ = x0.Args[2] + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + break + } + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)))) + // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + s1 := v.Args[0] if s1.Op != OpAMD64SHLLconst { break } @@ -31235,20 +27733,31 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } i1 := x1.AuxInt - if x1.Aux != s { + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + or := v.Args[1] + if or.Op != OpAMD64ORL { break } - _ = x1.Args[2] - if p != x1.Args[0] { + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] + if s0.Op != OpAMD64SHLLconst { break } - if idx != x1.Args[1] { + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { break } - if mem != x1.Args[2] { + i0 := x0.AuxInt + if x0.Aux != s { break } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x0.Args[2] + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31268,7 +27777,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) + // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31277,9 +27786,8 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -31307,16 +27815,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31336,7 +27835,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) + // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31345,9 +27844,8 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -31375,16 +27873,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31404,7 +27893,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31413,8 +27902,9 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { if or.Op != OpAMD64ORL { break } - y := or.Args[1] - s0 := or.Args[0] + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] if s0.Op != OpAMD64SHLLconst { break } @@ -31442,16 +27932,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31471,12 +27952,7 @@ func rewriteValueAMD64_OpAMD64ORL_80(v *Value) bool { v0.AddArg(y) return true } - return false -} -func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { - b := v.Block - typ := &b.Func.Config.Types - // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31485,8 +27961,9 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { if or.Op != OpAMD64ORL { break } - y := or.Args[1] - s0 := or.Args[0] + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] if s0.Op != OpAMD64SHLLconst { break } @@ -31514,16 +27991,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31543,7 +28011,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31552,9 +28020,8 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] + y := or.Args[1] + s0 := or.Args[0] if s0.Op != OpAMD64SHLLconst { break } @@ -31582,16 +28049,70 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if p != x1.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + return false +} +func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { + b := v.Block + typ := &b.Func.Config.Types + // match: (ORL or:(ORL s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem)) y) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpAMD64ORL { + break + } + y := or.Args[1] + s0 := or.Args[0] + if s0.Op != OpAMD64SHLLconst { break } - if mem != x1.Args[2] { + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { break } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + i0 := x0.AuxInt + s := x0.Aux + mem := x0.Args[2] + idx := x0.Args[0] + p := x0.Args[1] + s1 := v.Args[1] + if s1.Op != OpAMD64SHLLconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + if x1.Aux != s { + break + } + _ = x1.Args[2] + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31611,7 +28132,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) for { @@ -31634,8 +28155,8 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { i0 := x0.AuxInt s := x0.Aux mem := x0.Args[2] - idx := x0.Args[0] - p := x0.Args[1] + p := x0.Args[0] + idx := x0.Args[1] s1 := v.Args[1] if s1.Op != OpAMD64SHLLconst { break @@ -31650,16 +28171,66 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + break + } + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORL or:(ORL y s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem))) s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) + // cond: i1 == i0+1 && j1 == j0+8 && j0 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j0] (MOVWloadidx1 [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpAMD64ORL { + break + } + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] + if s0.Op != OpAMD64SHLLconst { + break + } + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { break } - if p != x1.Args[1] { + i0 := x0.AuxInt + s := x0.Aux + mem := x0.Args[2] + idx := x0.Args[0] + p := x0.Args[1] + s1 := v.Args[1] + if s1.Op != OpAMD64SHLLconst { break } - if mem != x1.Args[2] { + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + if x1.Aux != s { break } - if !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x1.Args[2] + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31693,10 +28264,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -31708,13 +28276,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -31736,10 +28298,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -31759,13 +28318,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -31787,10 +28340,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { for { _ = v.Args[1] r1 := v.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -31802,17 +28352,11 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -31824,13 +28368,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -31851,17 +28389,11 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -31873,10 +28405,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] r1 := v.Args[1] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -31888,13 +28417,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -31946,13 +28469,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32012,13 +28529,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32077,13 +28588,7 @@ func rewriteValueAMD64_OpAMD64ORL_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32148,13 +28653,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32191,10 +28690,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32206,16 +28702,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32247,10 +28734,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32262,16 +28746,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32303,10 +28778,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32318,16 +28790,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32359,10 +28822,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32374,16 +28834,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32406,10 +28857,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32430,16 +28878,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32462,10 +28901,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32486,16 +28922,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32518,10 +28945,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32542,16 +28966,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32574,10 +28989,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32598,16 +29010,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32630,10 +29033,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { for { _ = v.Args[1] r1 := v.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -32646,17 +29046,11 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -32668,16 +29062,7 @@ func rewriteValueAMD64_OpAMD64ORL_100(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32704,10 +29089,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] r1 := v.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -32720,17 +29102,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -32742,16 +29118,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32773,10 +29140,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] r1 := v.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -32789,17 +29153,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -32811,16 +29169,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32842,10 +29191,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] r1 := v.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -32858,17 +29204,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -32880,16 +29220,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32911,17 +29242,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -32934,10 +29259,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] r1 := v.Args[1] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -32949,16 +29271,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32980,17 +29293,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -33003,10 +29310,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] r1 := v.Args[1] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -33018,16 +29322,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33049,17 +29344,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -33072,10 +29361,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] r1 := v.Args[1] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -33087,16 +29373,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33118,17 +29395,11 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpAMD64SHLLconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpAMD64SHLLconst || sh.AuxInt != 16 { break } r0 := sh.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -33141,10 +29412,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] r1 := v.Args[1] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -33156,16 +29424,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33219,16 +29478,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33289,16 +29539,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33359,16 +29600,7 @@ func rewriteValueAMD64_OpAMD64ORL_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33434,16 +29666,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33505,16 +29728,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33576,16 +29790,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33647,16 +29852,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33718,156 +29914,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j1 - v2 := b.NewValue0(v.Pos, OpAMD64ROLWconst, typ.UInt16) - v2.AuxInt = 8 - v3 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v3.AuxInt = i0 - v3.Aux = s - v3.AddArg(p) - v3.AddArg(idx) - v3.AddArg(mem) - v2.AddArg(v3) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (ORL or:(ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) y) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) - // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpAMD64ORL { - break - } - y := or.Args[1] - s1 := or.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - p := x1.Args[0] - idx := x1.Args[1] - s0 := v.Args[1] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) - v1.AuxInt = j1 - v2 := b.NewValue0(v.Pos, OpAMD64ROLWconst, typ.UInt16) - v2.AuxInt = 8 - v3 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) - v3.AuxInt = i0 - v3.Aux = s - v3.AddArg(p) - v3.AddArg(idx) - v3.AddArg(mem) - v2.AddArg(v3) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (ORL or:(ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) y) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) - // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpAMD64ORL { - break - } - y := or.Args[1] - s1 := or.Args[0] - if s1.Op != OpAMD64SHLLconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] - s0 := v.Args[1] - if s0.Op != OpAMD64SHLLconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpAMD64MOVBloadidx1 { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33890,7 +29937,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) + // match: (ORL or:(ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem)) y) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) for { @@ -33899,9 +29946,8 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { if or.Op != OpAMD64ORL { break } - _ = or.Args[1] - y := or.Args[0] - s1 := or.Args[1] + y := or.Args[1] + s1 := or.Args[0] if s1.Op != OpAMD64SHLLconst { break } @@ -33929,16 +29975,68 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if idx != x0.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j1 + v2 := b.NewValue0(v.Pos, OpAMD64ROLWconst, typ.UInt16) + v2.AuxInt = 8 + v3 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v3.AuxInt = i0 + v3.Aux = s + v3.AddArg(p) + v3.AddArg(idx) + v3.AddArg(mem) + v2.AddArg(v3) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORL or:(ORL s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) y) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) + // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpAMD64ORL { + break + } + y := or.Args[1] + s1 := or.Args[0] + if s1.Op != OpAMD64SHLLconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + s0 := v.Args[1] + if s0.Op != OpAMD64SHLLconst { + break + } + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { break } - if mem != x0.Args[2] { + i0 := x0.AuxInt + if x0.Aux != s { break } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x0.Args[2] + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33961,7 +30059,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { v0.AddArg(y) return true } - // match: (ORL or:(ORL y s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) + // match: (ORL or:(ORL y s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} p idx mem))) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) for { @@ -33984,8 +30082,8 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { i1 := x1.AuxInt s := x1.Aux mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] + p := x1.Args[0] + idx := x1.Args[1] s0 := v.Args[1] if s0.Op != OpAMD64SHLLconst { break @@ -34000,16 +30098,69 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if idx != x0.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORL, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLLconst, v.Type) + v1.AuxInt = j1 + v2 := b.NewValue0(v.Pos, OpAMD64ROLWconst, typ.UInt16) + v2.AuxInt = 8 + v3 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v3.AuxInt = i0 + v3.Aux = s + v3.AddArg(p) + v3.AddArg(idx) + v3.AddArg(mem) + v2.AddArg(v3) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORL or:(ORL y s1:(SHLLconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem))) s0:(SHLLconst [j0] x0:(MOVBloadidx1 [i0] {s} p idx mem))) + // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORL (SHLLconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpAMD64ORL { break } - if mem != x0.Args[2] { + _ = or.Args[1] + y := or.Args[0] + s1 := or.Args[1] + if s1.Op != OpAMD64SHLLconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + s0 := v.Args[1] + if s0.Op != OpAMD64SHLLconst { break } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { + break + } + i0 := x0.AuxInt + if x0.Aux != s { + break + } + _ = x0.Args[2] + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34070,16 +30221,7 @@ func rewriteValueAMD64_OpAMD64ORL_120(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34145,16 +30287,7 @@ func rewriteValueAMD64_OpAMD64ORL_130(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34216,16 +30349,7 @@ func rewriteValueAMD64_OpAMD64ORL_130(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34287,16 +30411,7 @@ func rewriteValueAMD64_OpAMD64ORL_130(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34388,7 +30503,6 @@ func rewriteValueAMD64_OpAMD64ORLconst_0(v *Value) bool { return true } // match: (ORLconst [c] (ORLconst [d] x)) - // cond: // result: (ORLconst [c | d] x) for { c := v.AuxInt @@ -34404,7 +30518,6 @@ func rewriteValueAMD64_OpAMD64ORLconst_0(v *Value) bool { return true } // match: (ORLconst [c] (BTSLconst [d] x)) - // cond: // result: (ORLconst [c | 1< (SHLQconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpAMD64ORQ { - break - } - y := or.Args[1] - s1 := or.Args[0] - if s1.Op != OpAMD64SHLQconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpAMD64MOVBloadidx1 { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] + p := x1.Args[0] + idx := x1.Args[1] s0 := v.Args[1] if s0.Op != OpAMD64SHLQconst { break @@ -43611,16 +38111,68 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if p != x0.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpAMD64ORQ, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpAMD64SHLQconst, v.Type) + v1.AuxInt = j1 + v2 := b.NewValue0(v.Pos, OpAMD64ROLWconst, typ.UInt16) + v2.AuxInt = 8 + v3 := b.NewValue0(v.Pos, OpAMD64MOVWloadidx1, typ.UInt16) + v3.AuxInt = i0 + v3.Aux = s + v3.AddArg(p) + v3.AddArg(idx) + v3.AddArg(mem) + v2.AddArg(v3) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (ORQ or:(ORQ s1:(SHLQconst [j1] x1:(MOVBloadidx1 [i1] {s} idx p mem)) y) s0:(SHLQconst [j0] x0:(MOVBloadidx1 [i0] {s} idx p mem))) + // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (ORQ (SHLQconst [j1] (ROLWconst [8] (MOVWloadidx1 [i0] {s} p idx mem))) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpAMD64ORQ { break } - if mem != x0.Args[2] { + y := or.Args[1] + s1 := or.Args[0] + if s1.Op != OpAMD64SHLQconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpAMD64MOVBloadidx1 { + break + } + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + s0 := v.Args[1] + if s0.Op != OpAMD64SHLQconst { + break + } + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpAMD64MOVBloadidx1 { + break + } + i0 := x0.AuxInt + if x0.Aux != s { break } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x0.Args[2] + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -43682,16 +38234,7 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -43753,16 +38296,7 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -43796,10 +38330,7 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -43822,10 +38353,7 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -43837,16 +38365,7 @@ func rewriteValueAMD64_OpAMD64ORQ_140(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -43884,10 +38403,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -43910,10 +38426,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -43925,16 +38438,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -43967,10 +38471,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -43993,10 +38494,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44008,16 +38506,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44050,10 +38539,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44076,10 +38562,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44091,16 +38574,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44133,10 +38607,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44160,10 +38631,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44175,16 +38643,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44217,10 +38676,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44244,10 +38700,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44259,16 +38712,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44301,10 +38745,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44328,10 +38769,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44343,16 +38781,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44385,10 +38814,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44412,10 +38838,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44427,16 +38850,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44474,10 +38888,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44495,10 +38906,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44510,16 +38918,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44557,10 +38956,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44578,10 +38974,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44593,16 +38986,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44641,10 +39025,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44662,10 +39043,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44677,16 +39055,7 @@ func rewriteValueAMD64_OpAMD64ORQ_150(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44730,10 +39099,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44751,10 +39117,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44766,16 +39129,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44813,10 +39167,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44834,10 +39185,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44849,16 +39197,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44896,10 +39235,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -44917,10 +39253,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -44932,16 +39265,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -44980,10 +39304,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -45001,10 +39322,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -45016,16 +39334,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -45064,10 +39373,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j1 := s1.AuxInt r1 := s1.Args[0] - if r1.Op != OpAMD64ROLWconst { - break - } - if r1.AuxInt != 8 { + if r1.Op != OpAMD64ROLWconst || r1.AuxInt != 8 { break } x1 := r1.Args[0] @@ -45085,10 +39391,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { } j0 := s0.AuxInt r0 := s0.Args[0] - if r0.Op != OpAMD64ROLWconst { - break - } - if r0.AuxInt != 8 { + if r0.Op != OpAMD64ROLWconst || r0.AuxInt != 8 { break } x0 := r0.Args[0] @@ -45100,16 +39403,7 @@ func rewriteValueAMD64_OpAMD64ORQ_160(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -45200,7 +39494,6 @@ func rewriteValueAMD64_OpAMD64ORQconst_0(v *Value) bool { return true } // match: (ORQconst [c] (ORQconst [d] x)) - // cond: // result: (ORQconst [c | d] x) for { c := v.AuxInt @@ -45216,7 +39509,6 @@ func rewriteValueAMD64_OpAMD64ORQconst_0(v *Value) bool { return true } // match: (ORQconst [c] (BTSQconst [d] x)) - // cond: // result: (ORQconst [c | 1<>uint64(c)]) for { c := v.AuxInt @@ -46194,7 +40432,6 @@ func rewriteValueAMD64_OpAMD64SARBconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SARL_0(v *Value) bool { b := v.Block // match: (SARL x (MOVQconst [c])) - // cond: // result: (SARLconst [c&31] x) for { _ = v.Args[1] @@ -46210,7 +40447,6 @@ func rewriteValueAMD64_OpAMD64SARL_0(v *Value) bool { return true } // match: (SARL x (MOVLconst [c])) - // cond: // result: (SARLconst [c&31] x) for { _ = v.Args[1] @@ -46417,7 +40653,6 @@ func rewriteValueAMD64_OpAMD64SARL_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SARLconst_0(v *Value) bool { // match: (SARLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -46430,7 +40665,6 @@ func rewriteValueAMD64_OpAMD64SARLconst_0(v *Value) bool { return true } // match: (SARLconst [c] (MOVQconst [d])) - // cond: // result: (MOVQconst [int64(int32(d))>>uint64(c)]) for { c := v.AuxInt @@ -46448,7 +40682,6 @@ func rewriteValueAMD64_OpAMD64SARLconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SARQ_0(v *Value) bool { b := v.Block // match: (SARQ x (MOVQconst [c])) - // cond: // result: (SARQconst [c&63] x) for { _ = v.Args[1] @@ -46464,7 +40697,6 @@ func rewriteValueAMD64_OpAMD64SARQ_0(v *Value) bool { return true } // match: (SARQ x (MOVLconst [c])) - // cond: // result: (SARQconst [c&63] x) for { _ = v.Args[1] @@ -46671,7 +40903,6 @@ func rewriteValueAMD64_OpAMD64SARQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SARQconst_0(v *Value) bool { // match: (SARQconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -46684,7 +40915,6 @@ func rewriteValueAMD64_OpAMD64SARQconst_0(v *Value) bool { return true } // match: (SARQconst [c] (MOVQconst [d])) - // cond: // result: (MOVQconst [d>>uint64(c)]) for { c := v.AuxInt @@ -46701,7 +40931,6 @@ func rewriteValueAMD64_OpAMD64SARQconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SARW_0(v *Value) bool { // match: (SARW x (MOVQconst [c])) - // cond: // result: (SARWconst [min(c&31,15)] x) for { _ = v.Args[1] @@ -46717,7 +40946,6 @@ func rewriteValueAMD64_OpAMD64SARW_0(v *Value) bool { return true } // match: (SARW x (MOVLconst [c])) - // cond: // result: (SARWconst [min(c&31,15)] x) for { _ = v.Args[1] @@ -46736,7 +40964,6 @@ func rewriteValueAMD64_OpAMD64SARW_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SARWconst_0(v *Value) bool { // match: (SARWconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -46749,7 +40976,6 @@ func rewriteValueAMD64_OpAMD64SARWconst_0(v *Value) bool { return true } // match: (SARWconst [c] (MOVQconst [d])) - // cond: // result: (MOVQconst [int64(int16(d))>>uint64(c)]) for { c := v.AuxInt @@ -46766,7 +40992,6 @@ func rewriteValueAMD64_OpAMD64SARWconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SBBLcarrymask_0(v *Value) bool { // match: (SBBLcarrymask (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -46778,7 +41003,6 @@ func rewriteValueAMD64_OpAMD64SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagLT_ULT)) - // cond: // result: (MOVLconst [-1]) for { v_0 := v.Args[0] @@ -46790,7 +41014,6 @@ func rewriteValueAMD64_OpAMD64SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -46802,7 +41025,6 @@ func rewriteValueAMD64_OpAMD64SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagGT_ULT)) - // cond: // result: (MOVLconst [-1]) for { v_0 := v.Args[0] @@ -46814,7 +41036,6 @@ func rewriteValueAMD64_OpAMD64SBBLcarrymask_0(v *Value) bool { return true } // match: (SBBLcarrymask (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -46849,7 +41070,6 @@ func rewriteValueAMD64_OpAMD64SBBQ_0(v *Value) bool { return true } // match: (SBBQ x y (FlagEQ)) - // cond: // result: (SUBQborrow x y) for { _ = v.Args[2] @@ -46868,7 +41088,6 @@ func rewriteValueAMD64_OpAMD64SBBQ_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { // match: (SBBQcarrymask (FlagEQ)) - // cond: // result: (MOVQconst [0]) for { v_0 := v.Args[0] @@ -46880,7 +41099,6 @@ func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { return true } // match: (SBBQcarrymask (FlagLT_ULT)) - // cond: // result: (MOVQconst [-1]) for { v_0 := v.Args[0] @@ -46892,7 +41110,6 @@ func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { return true } // match: (SBBQcarrymask (FlagLT_UGT)) - // cond: // result: (MOVQconst [0]) for { v_0 := v.Args[0] @@ -46904,7 +41121,6 @@ func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { return true } // match: (SBBQcarrymask (FlagGT_ULT)) - // cond: // result: (MOVQconst [-1]) for { v_0 := v.Args[0] @@ -46916,7 +41132,6 @@ func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { return true } // match: (SBBQcarrymask (FlagGT_UGT)) - // cond: // result: (MOVQconst [0]) for { v_0 := v.Args[0] @@ -46931,7 +41146,6 @@ func rewriteValueAMD64_OpAMD64SBBQcarrymask_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SBBQconst_0(v *Value) bool { // match: (SBBQconst x [c] (FlagEQ)) - // cond: // result: (SUBQconstborrow x [c]) for { c := v.AuxInt @@ -46950,7 +41164,6 @@ func rewriteValueAMD64_OpAMD64SBBQconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { // match: (SETA (InvertFlags x)) - // cond: // result: (SETB x) for { v_0 := v.Args[0] @@ -46963,7 +41176,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { return true } // match: (SETA (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -46975,7 +41187,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { return true } // match: (SETA (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -46987,7 +41198,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { return true } // match: (SETA (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -46999,7 +41209,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { return true } // match: (SETA (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47011,7 +41220,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { return true } // match: (SETA (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47026,7 +41234,6 @@ func rewriteValueAMD64_OpAMD64SETA_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { // match: (SETAE (InvertFlags x)) - // cond: // result: (SETBE x) for { v_0 := v.Args[0] @@ -47039,7 +41246,6 @@ func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47051,7 +41257,6 @@ func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47063,7 +41268,6 @@ func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47075,7 +41279,6 @@ func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47087,7 +41290,6 @@ func rewriteValueAMD64_OpAMD64SETAE_0(v *Value) bool { return true } // match: (SETAE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47104,7 +41306,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETAEstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETBEstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -47176,7 +41377,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { return true } // match: (SETAEstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47198,7 +41398,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { return true } // match: (SETAEstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47220,7 +41419,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { return true } // match: (SETAEstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47242,7 +41440,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { return true } // match: (SETAEstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47264,7 +41461,6 @@ func rewriteValueAMD64_OpAMD64SETAEstore_0(v *Value) bool { return true } // match: (SETAEstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47291,7 +41487,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETAstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -47363,7 +41558,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { return true } // match: (SETAstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47385,7 +41579,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { return true } // match: (SETAstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47407,7 +41600,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { return true } // match: (SETAstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47429,7 +41621,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { return true } // match: (SETAstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47451,7 +41642,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { return true } // match: (SETAstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47476,7 +41666,6 @@ func rewriteValueAMD64_OpAMD64SETAstore_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { // match: (SETB (InvertFlags x)) - // cond: // result: (SETA x) for { v_0 := v.Args[0] @@ -47489,7 +41678,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { return true } // match: (SETB (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47501,7 +41689,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { return true } // match: (SETB (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47513,7 +41700,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { return true } // match: (SETB (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47525,7 +41711,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { return true } // match: (SETB (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47537,7 +41722,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { return true } // match: (SETB (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47552,7 +41736,6 @@ func rewriteValueAMD64_OpAMD64SETB_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { // match: (SETBE (InvertFlags x)) - // cond: // result: (SETAE x) for { v_0 := v.Args[0] @@ -47565,7 +41748,6 @@ func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47577,7 +41759,6 @@ func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47589,7 +41770,6 @@ func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47601,7 +41781,6 @@ func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -47613,7 +41792,6 @@ func rewriteValueAMD64_OpAMD64SETBE_0(v *Value) bool { return true } // match: (SETBE (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -47630,7 +41808,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETBEstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETAEstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -47702,7 +41879,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { return true } // match: (SETBEstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47724,7 +41900,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { return true } // match: (SETBEstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47746,7 +41921,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { return true } // match: (SETBEstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47768,7 +41942,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { return true } // match: (SETBEstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47790,7 +41963,6 @@ func rewriteValueAMD64_OpAMD64SETBEstore_0(v *Value) bool { return true } // match: (SETBEstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47817,7 +41989,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETBstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETAstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -47889,7 +42060,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { return true } // match: (SETBstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47911,7 +42081,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { return true } // match: (SETBstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47933,7 +42102,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { return true } // match: (SETBstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -47955,7 +42123,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { return true } // match: (SETBstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -47977,7 +42144,6 @@ func rewriteValueAMD64_OpAMD64SETBstore_0(v *Value) bool { return true } // match: (SETBstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -48018,13 +42184,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { } x := v_0_0.Args[1] v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0_0.Op != OpAMD64MOVLconst || v_0_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAE) @@ -48050,13 +42210,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { } x := v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64MOVLconst { - break - } - if v_0_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_1_0.Op != OpAMD64MOVLconst || v_0_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAE) @@ -48081,13 +42235,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { } x := v_0_0.Args[1] v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64MOVQconst { - break - } - if v_0_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0_0.Op != OpAMD64MOVQconst || v_0_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAE) @@ -48113,13 +42261,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { } x := v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64MOVQconst { - break - } - if v_0_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_1_0.Op != OpAMD64MOVQconst || v_0_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAE) @@ -48219,21 +42361,14 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { return true } // match: (SETEQ (CMPLconst [1] s:(ANDLconst [1] _))) - // cond: // result: (SETNE (CMPLconst [0] s)) for { v_0 := v.Args[0] - if v_0.Op != OpAMD64CMPLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64CMPLconst || v_0.AuxInt != 1 { break } s := v_0.Args[0] - if s.Op != OpAMD64ANDLconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDLconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETNE) @@ -48244,21 +42379,14 @@ func rewriteValueAMD64_OpAMD64SETEQ_0(v *Value) bool { return true } // match: (SETEQ (CMPQconst [1] s:(ANDQconst [1] _))) - // cond: // result: (SETNE (CMPQconst [0] s)) for { v_0 := v.Args[0] - if v_0.Op != OpAMD64CMPQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64CMPQconst || v_0.AuxInt != 1 { break } s := v_0.Args[0] - if s.Op != OpAMD64ANDQconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDQconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETNE) @@ -48283,17 +42411,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -48318,17 +42440,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -48352,17 +42468,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -48387,17 +42497,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -48421,17 +42525,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -48456,17 +42554,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -48490,17 +42582,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -48525,17 +42611,11 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -48559,10 +42639,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -48587,10 +42664,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -48619,10 +42693,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -48647,10 +42718,7 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -48665,7 +42733,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (InvertFlags x)) - // cond: // result: (SETEQ x) for { v_0 := v.Args[0] @@ -48678,7 +42745,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -48690,7 +42756,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -48702,7 +42767,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -48714,7 +42778,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -48726,7 +42789,6 @@ func rewriteValueAMD64_OpAMD64SETEQ_20(v *Value) bool { return true } // match: (SETEQ (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -48761,13 +42823,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { } x := v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0_0.Op != OpAMD64MOVLconst || v_1_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAEstore) @@ -48801,13 +42857,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { } x := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_1_0.Op != OpAMD64MOVLconst || v_1_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAEstore) @@ -48840,13 +42890,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { } x := v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64MOVQconst { - break - } - if v_1_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0_0.Op != OpAMD64MOVQconst || v_1_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAEstore) @@ -48880,13 +42924,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { } x := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64MOVQconst { - break - } - if v_1_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_1_0.Op != OpAMD64MOVQconst || v_1_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETAEstore) @@ -49022,7 +43060,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (CMPLconst [1] s:(ANDLconst [1] _)) mem) - // cond: // result: (SETNEstore [off] {sym} ptr (CMPLconst [0] s) mem) for { off := v.AuxInt @@ -49030,17 +43067,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64CMPLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64CMPLconst || v_1.AuxInt != 1 { break } s := v_1.Args[0] - if s.Op != OpAMD64ANDLconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDLconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETNEstore) @@ -49055,7 +43086,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (CMPQconst [1] s:(ANDQconst [1] _)) mem) - // cond: // result: (SETNEstore [off] {sym} ptr (CMPQconst [0] s) mem) for { off := v.AuxInt @@ -49063,17 +43093,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64CMPQconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64CMPQconst || v_1.AuxInt != 1 { break } s := v_1.Args[0] - if s.Op != OpAMD64ANDQconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDQconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETNEstore) @@ -49106,17 +43130,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -49149,17 +43167,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -49191,17 +43203,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -49234,17 +43240,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -49276,17 +43276,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -49319,17 +43313,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -49361,17 +43349,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -49404,17 +43386,11 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -49446,10 +43422,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -49482,10 +43455,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -49523,10 +43493,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -49559,10 +43526,7 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -49581,7 +43545,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETEQstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -49653,7 +43616,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -49675,7 +43637,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -49697,7 +43658,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -49719,7 +43679,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -49741,7 +43700,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { return true } // match: (SETEQstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -49766,7 +43724,6 @@ func rewriteValueAMD64_OpAMD64SETEQstore_20(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { // match: (SETG (InvertFlags x)) - // cond: // result: (SETL x) for { v_0 := v.Args[0] @@ -49779,7 +43736,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { return true } // match: (SETG (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -49791,7 +43747,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { return true } // match: (SETG (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -49803,7 +43758,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { return true } // match: (SETG (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -49815,7 +43769,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { return true } // match: (SETG (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -49827,7 +43780,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { return true } // match: (SETG (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -49842,7 +43794,6 @@ func rewriteValueAMD64_OpAMD64SETG_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { // match: (SETGE (InvertFlags x)) - // cond: // result: (SETLE x) for { v_0 := v.Args[0] @@ -49855,7 +43806,6 @@ func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -49867,7 +43817,6 @@ func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagLT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -49879,7 +43828,6 @@ func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagLT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -49891,7 +43839,6 @@ func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -49903,7 +43850,6 @@ func rewriteValueAMD64_OpAMD64SETGE_0(v *Value) bool { return true } // match: (SETGE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -49920,7 +43866,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETGEstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETLEstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -49992,7 +43937,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { return true } // match: (SETGEstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50014,7 +43958,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { return true } // match: (SETGEstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50036,7 +43979,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { return true } // match: (SETGEstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50058,7 +44000,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { return true } // match: (SETGEstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50080,7 +44021,6 @@ func rewriteValueAMD64_OpAMD64SETGEstore_0(v *Value) bool { return true } // match: (SETGEstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50107,7 +44047,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETGstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETLstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -50179,7 +44118,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { return true } // match: (SETGstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50201,7 +44139,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { return true } // match: (SETGstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50223,7 +44160,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { return true } // match: (SETGstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50245,7 +44181,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { return true } // match: (SETGstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50267,7 +44202,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { return true } // match: (SETGstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50292,7 +44226,6 @@ func rewriteValueAMD64_OpAMD64SETGstore_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { // match: (SETL (InvertFlags x)) - // cond: // result: (SETG x) for { v_0 := v.Args[0] @@ -50305,7 +44238,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { return true } // match: (SETL (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -50317,7 +44249,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { return true } // match: (SETL (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -50329,7 +44260,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { return true } // match: (SETL (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -50341,7 +44271,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { return true } // match: (SETL (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -50353,7 +44282,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { return true } // match: (SETL (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -50368,7 +44296,6 @@ func rewriteValueAMD64_OpAMD64SETL_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { // match: (SETLE (InvertFlags x)) - // cond: // result: (SETGE x) for { v_0 := v.Args[0] @@ -50381,7 +44308,6 @@ func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagEQ)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -50393,7 +44319,6 @@ func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -50405,7 +44330,6 @@ func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -50417,7 +44341,6 @@ func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagGT_ULT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -50429,7 +44352,6 @@ func rewriteValueAMD64_OpAMD64SETLE_0(v *Value) bool { return true } // match: (SETLE (FlagGT_UGT)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -50446,7 +44368,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETLEstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETGEstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -50518,7 +44439,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { return true } // match: (SETLEstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50540,7 +44460,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { return true } // match: (SETLEstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50562,7 +44481,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { return true } // match: (SETLEstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50584,7 +44502,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { return true } // match: (SETLEstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50606,7 +44523,6 @@ func rewriteValueAMD64_OpAMD64SETLEstore_0(v *Value) bool { return true } // match: (SETLEstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50633,7 +44549,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SETLstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETGstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -50705,7 +44620,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { return true } // match: (SETLstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50727,7 +44641,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { return true } // match: (SETLstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50749,7 +44662,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { return true } // match: (SETLstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -50771,7 +44683,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { return true } // match: (SETLstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50793,7 +44704,6 @@ func rewriteValueAMD64_OpAMD64SETLstore_0(v *Value) bool { return true } // match: (SETLstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -50834,13 +44744,7 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { } x := v_0_0.Args[1] v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0_0.Op != OpAMD64MOVLconst || v_0_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETB) @@ -50866,13 +44770,7 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { } x := v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64MOVLconst { - break - } - if v_0_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_1_0.Op != OpAMD64MOVLconst || v_0_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETB) @@ -50897,13 +44795,7 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { } x := v_0_0.Args[1] v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpAMD64MOVQconst { - break - } - if v_0_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0_0.Op != OpAMD64MOVQconst || v_0_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETB) @@ -50929,13 +44821,7 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { } x := v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpAMD64MOVQconst { - break - } - if v_0_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_1_0.Op != OpAMD64MOVQconst || v_0_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETB) @@ -51035,21 +44921,14 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { return true } // match: (SETNE (CMPLconst [1] s:(ANDLconst [1] _))) - // cond: // result: (SETEQ (CMPLconst [0] s)) for { v_0 := v.Args[0] - if v_0.Op != OpAMD64CMPLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64CMPLconst || v_0.AuxInt != 1 { break } s := v_0.Args[0] - if s.Op != OpAMD64ANDLconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDLconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETEQ) @@ -51060,21 +44939,14 @@ func rewriteValueAMD64_OpAMD64SETNE_0(v *Value) bool { return true } // match: (SETNE (CMPQconst [1] s:(ANDQconst [1] _))) - // cond: // result: (SETEQ (CMPQconst [0] s)) for { v_0 := v.Args[0] - if v_0.Op != OpAMD64CMPQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64CMPQconst || v_0.AuxInt != 1 { break } s := v_0.Args[0] - if s.Op != OpAMD64ANDQconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDQconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETEQ) @@ -51099,17 +44971,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -51134,17 +45000,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -51168,17 +45028,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -51203,17 +45057,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -51237,17 +45085,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -51272,17 +45114,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -51306,17 +45142,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -51341,17 +45171,11 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -51375,10 +45199,7 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -51403,10 +45224,7 @@ func rewriteValueAMD64_OpAMD64SETNE_10(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -51435,10 +45253,7 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { } z2 := v_0.Args[1] z1 := v_0.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -51463,10 +45278,7 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { _ = v_0.Args[1] z2 := v_0.Args[0] z1 := v_0.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -51481,7 +45293,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (InvertFlags x)) - // cond: // result: (SETNE x) for { v_0 := v.Args[0] @@ -51494,7 +45305,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (FlagEQ)) - // cond: // result: (MOVLconst [0]) for { v_0 := v.Args[0] @@ -51506,7 +45316,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (FlagLT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -51518,7 +45327,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (FlagLT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -51530,7 +45338,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (FlagGT_ULT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -51542,7 +45349,6 @@ func rewriteValueAMD64_OpAMD64SETNE_20(v *Value) bool { return true } // match: (SETNE (FlagGT_UGT)) - // cond: // result: (MOVLconst [1]) for { v_0 := v.Args[0] @@ -51577,13 +45383,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { } x := v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0_0.Op != OpAMD64MOVLconst || v_1_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETBstore) @@ -51617,13 +45417,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { } x := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_1_0.Op != OpAMD64MOVLconst || v_1_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETBstore) @@ -51656,13 +45450,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { } x := v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpAMD64MOVQconst { - break - } - if v_1_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0_0.Op != OpAMD64MOVQconst || v_1_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETBstore) @@ -51696,13 +45484,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { } x := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpAMD64MOVQconst { - break - } - if v_1_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_1_0.Op != OpAMD64MOVQconst || v_1_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64SETBstore) @@ -51838,7 +45620,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (CMPLconst [1] s:(ANDLconst [1] _)) mem) - // cond: // result: (SETEQstore [off] {sym} ptr (CMPLconst [0] s) mem) for { off := v.AuxInt @@ -51846,17 +45627,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64CMPLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64CMPLconst || v_1.AuxInt != 1 { break } s := v_1.Args[0] - if s.Op != OpAMD64ANDLconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDLconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETEQstore) @@ -51871,7 +45646,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (CMPQconst [1] s:(ANDQconst [1] _)) mem) - // cond: // result: (SETEQstore [off] {sym} ptr (CMPQconst [0] s) mem) for { off := v.AuxInt @@ -51879,17 +45653,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64CMPQconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpAMD64CMPQconst || v_1.AuxInt != 1 { break } s := v_1.Args[0] - if s.Op != OpAMD64ANDQconst { - break - } - if s.AuxInt != 1 { + if s.Op != OpAMD64ANDQconst || s.AuxInt != 1 { break } v.reset(OpAMD64SETEQstore) @@ -51922,17 +45690,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -51965,17 +45727,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -52007,17 +45763,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -52050,17 +45800,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -52092,17 +45836,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -52135,17 +45873,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -52177,17 +45909,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -52220,17 +45946,11 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -52262,10 +45982,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -52298,10 +46015,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_10(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -52339,10 +46053,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { } z2 := v_1.Args[1] z1 := v_1.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -52375,10 +46086,7 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { _ = v_1.Args[1] z2 := v_1.Args[0] z1 := v_1.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -52397,7 +46105,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (InvertFlags x) mem) - // cond: // result: (SETNEstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -52469,7 +46176,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (FlagEQ) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [0]) mem) for { off := v.AuxInt @@ -52491,7 +46197,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (FlagLT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -52513,7 +46218,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (FlagLT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -52535,7 +46239,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (FlagGT_ULT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -52557,7 +46260,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { return true } // match: (SETNEstore [off] {sym} ptr (FlagGT_UGT) mem) - // cond: // result: (MOVBstore [off] {sym} ptr (MOVLconst [1]) mem) for { off := v.AuxInt @@ -52583,7 +46285,6 @@ func rewriteValueAMD64_OpAMD64SETNEstore_20(v *Value) bool { func rewriteValueAMD64_OpAMD64SHLL_0(v *Value) bool { b := v.Block // match: (SHLL x (MOVQconst [c])) - // cond: // result: (SHLLconst [c&31] x) for { _ = v.Args[1] @@ -52599,7 +46300,6 @@ func rewriteValueAMD64_OpAMD64SHLL_0(v *Value) bool { return true } // match: (SHLL x (MOVLconst [c])) - // cond: // result: (SHLLconst [c&31] x) for { _ = v.Args[1] @@ -52815,10 +46515,7 @@ func rewriteValueAMD64_OpAMD64SHLLconst_0(v *Value) bool { break } v_0 := v.Args[0] - if v_0.Op != OpAMD64SHRLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHRLconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -52831,7 +46528,6 @@ func rewriteValueAMD64_OpAMD64SHLLconst_0(v *Value) bool { return true } // match: (SHLLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -52848,7 +46544,6 @@ func rewriteValueAMD64_OpAMD64SHLLconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SHLQ_0(v *Value) bool { b := v.Block // match: (SHLQ x (MOVQconst [c])) - // cond: // result: (SHLQconst [c&63] x) for { _ = v.Args[1] @@ -52864,7 +46559,6 @@ func rewriteValueAMD64_OpAMD64SHLQ_0(v *Value) bool { return true } // match: (SHLQ x (MOVLconst [c])) - // cond: // result: (SHLQconst [c&63] x) for { _ = v.Args[1] @@ -53080,10 +46774,7 @@ func rewriteValueAMD64_OpAMD64SHLQconst_0(v *Value) bool { break } v_0 := v.Args[0] - if v_0.Op != OpAMD64SHRQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHRQconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -53096,7 +46787,6 @@ func rewriteValueAMD64_OpAMD64SHLQconst_0(v *Value) bool { return true } // match: (SHLQconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -53187,7 +46877,6 @@ func rewriteValueAMD64_OpAMD64SHRB_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SHRBconst_0(v *Value) bool { // match: (SHRBconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -53204,7 +46893,6 @@ func rewriteValueAMD64_OpAMD64SHRBconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SHRL_0(v *Value) bool { b := v.Block // match: (SHRL x (MOVQconst [c])) - // cond: // result: (SHRLconst [c&31] x) for { _ = v.Args[1] @@ -53220,7 +46908,6 @@ func rewriteValueAMD64_OpAMD64SHRL_0(v *Value) bool { return true } // match: (SHRL x (MOVLconst [c])) - // cond: // result: (SHRLconst [c&31] x) for { _ = v.Args[1] @@ -53436,10 +47123,7 @@ func rewriteValueAMD64_OpAMD64SHRLconst_0(v *Value) bool { break } v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLLconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -53452,7 +47136,6 @@ func rewriteValueAMD64_OpAMD64SHRLconst_0(v *Value) bool { return true } // match: (SHRLconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -53469,7 +47152,6 @@ func rewriteValueAMD64_OpAMD64SHRLconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SHRQ_0(v *Value) bool { b := v.Block // match: (SHRQ x (MOVQconst [c])) - // cond: // result: (SHRQconst [c&63] x) for { _ = v.Args[1] @@ -53485,7 +47167,6 @@ func rewriteValueAMD64_OpAMD64SHRQ_0(v *Value) bool { return true } // match: (SHRQ x (MOVLconst [c])) - // cond: // result: (SHRQconst [c&63] x) for { _ = v.Args[1] @@ -53701,10 +47382,7 @@ func rewriteValueAMD64_OpAMD64SHRQconst_0(v *Value) bool { break } v_0 := v.Args[0] - if v_0.Op != OpAMD64SHLQconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpAMD64SHLQconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] @@ -53717,7 +47395,6 @@ func rewriteValueAMD64_OpAMD64SHRQconst_0(v *Value) bool { return true } // match: (SHRQconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -53808,7 +47485,6 @@ func rewriteValueAMD64_OpAMD64SHRW_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SHRWconst_0(v *Value) bool { // match: (SHRWconst x [0]) - // cond: // result: x for { if v.AuxInt != 0 { @@ -53825,7 +47501,6 @@ func rewriteValueAMD64_OpAMD64SHRWconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64SUBL_0(v *Value) bool { b := v.Block // match: (SUBL x (MOVLconst [c])) - // cond: // result: (SUBLconst x [c]) for { _ = v.Args[1] @@ -53841,7 +47516,6 @@ func rewriteValueAMD64_OpAMD64SUBL_0(v *Value) bool { return true } // match: (SUBL (MOVLconst [c]) x) - // cond: // result: (NEGL (SUBLconst x [c])) for { x := v.Args[1] @@ -53858,7 +47532,6 @@ func rewriteValueAMD64_OpAMD64SUBL_0(v *Value) bool { return true } // match: (SUBL x x) - // cond: // result: (MOVLconst [0]) for { x := v.Args[1] @@ -53912,7 +47585,6 @@ func rewriteValueAMD64_OpAMD64SUBLconst_0(v *Value) bool { return true } // match: (SUBLconst [c] x) - // cond: // result: (ADDLconst [int64(int32(-c))] x) for { c := v.AuxInt @@ -53978,7 +47650,6 @@ func rewriteValueAMD64_OpAMD64SUBLload_0(v *Value) bool { return true } // match: (SUBLload x [off] {sym} ptr (MOVSSstore [off] {sym} ptr y _)) - // cond: // result: (SUBL x (MOVLf2i y)) for { off := v.AuxInt @@ -53987,13 +47658,7 @@ func rewriteValueAMD64_OpAMD64SUBLload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVSSstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVSSstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -54106,7 +47771,6 @@ func rewriteValueAMD64_OpAMD64SUBQ_0(v *Value) bool { return true } // match: (SUBQ x x) - // cond: // result: (MOVQconst [0]) for { x := v.Args[1] @@ -54168,7 +47832,6 @@ func rewriteValueAMD64_OpAMD64SUBQborrow_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64SUBQconst_0(v *Value) bool { // match: (SUBQconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -54195,7 +47858,6 @@ func rewriteValueAMD64_OpAMD64SUBQconst_0(v *Value) bool { return true } // match: (SUBQconst (MOVQconst [d]) [c]) - // cond: // result: (MOVQconst [d-c]) for { c := v.AuxInt @@ -54284,7 +47946,6 @@ func rewriteValueAMD64_OpAMD64SUBQload_0(v *Value) bool { return true } // match: (SUBQload x [off] {sym} ptr (MOVSDstore [off] {sym} ptr y _)) - // cond: // result: (SUBQ x (MOVQf2i y)) for { off := v.AuxInt @@ -54293,13 +47954,7 @@ func rewriteValueAMD64_OpAMD64SUBQload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVSDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVSDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -54453,7 +48108,6 @@ func rewriteValueAMD64_OpAMD64SUBSDload_0(v *Value) bool { return true } // match: (SUBSDload x [off] {sym} ptr (MOVQstore [off] {sym} ptr y _)) - // cond: // result: (SUBSD x (MOVQi2f y)) for { off := v.AuxInt @@ -54462,13 +48116,7 @@ func rewriteValueAMD64_OpAMD64SUBSDload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVQstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVQstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -54568,7 +48216,6 @@ func rewriteValueAMD64_OpAMD64SUBSSload_0(v *Value) bool { return true } // match: (SUBSSload x [off] {sym} ptr (MOVLstore [off] {sym} ptr y _)) - // cond: // result: (SUBSS x (MOVLi2f y)) for { off := v.AuxInt @@ -54577,13 +48224,7 @@ func rewriteValueAMD64_OpAMD64SUBSSload_0(v *Value) bool { x := v.Args[0] ptr := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpAMD64MOVLstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpAMD64MOVLstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -54603,7 +48244,6 @@ func rewriteValueAMD64_OpAMD64SUBSSload_0(v *Value) bool { func rewriteValueAMD64_OpAMD64TESTB_0(v *Value) bool { b := v.Block // match: (TESTB (MOVLconst [c]) x) - // cond: // result: (TESTBconst [c] x) for { x := v.Args[1] @@ -54618,7 +48258,6 @@ func rewriteValueAMD64_OpAMD64TESTB_0(v *Value) bool { return true } // match: (TESTB x (MOVLconst [c])) - // cond: // result: (TESTBconst [c] x) for { _ = v.Args[1] @@ -54710,7 +48349,6 @@ func rewriteValueAMD64_OpAMD64TESTBconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64TESTL_0(v *Value) bool { b := v.Block // match: (TESTL (MOVLconst [c]) x) - // cond: // result: (TESTLconst [c] x) for { x := v.Args[1] @@ -54725,7 +48363,6 @@ func rewriteValueAMD64_OpAMD64TESTL_0(v *Value) bool { return true } // match: (TESTL x (MOVLconst [c])) - // cond: // result: (TESTLconst [c] x) for { _ = v.Args[1] @@ -54930,7 +48567,6 @@ func rewriteValueAMD64_OpAMD64TESTQconst_0(v *Value) bool { func rewriteValueAMD64_OpAMD64TESTW_0(v *Value) bool { b := v.Block // match: (TESTW (MOVLconst [c]) x) - // cond: // result: (TESTWconst [c] x) for { x := v.Args[1] @@ -54945,7 +48581,6 @@ func rewriteValueAMD64_OpAMD64TESTW_0(v *Value) bool { return true } // match: (TESTW x (MOVLconst [c])) - // cond: // result: (TESTWconst [c] x) for { _ = v.Args[1] @@ -55212,13 +48847,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { } y := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVLconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTCL) @@ -55238,13 +48867,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVLconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } v.reset(OpAMD64BTCL) @@ -55290,7 +48913,6 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { return true } // match: (XORL x (MOVLconst [c])) - // cond: // result: (XORLconst [c] x) for { _ = v.Args[1] @@ -55306,7 +48928,6 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { return true } // match: (XORL (MOVLconst [c]) x) - // cond: // result: (XORLconst [c] x) for { x := v.Args[1] @@ -55336,10 +48957,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -55363,10 +48981,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpAMD64ROLLconst) @@ -55391,10 +49006,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -55419,10 +49031,7 @@ func rewriteValueAMD64_OpAMD64XORL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 16-c && c < 16 && t.Size() == 2) { + if x != v_1.Args[0] || !(d == 16-c && c < 16 && t.Size() == 2) { break } v.reset(OpAMD64ROLWconst) @@ -55450,10 +49059,7 @@ func rewriteValueAMD64_OpAMD64XORL_10(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -55478,10 +49084,7 @@ func rewriteValueAMD64_OpAMD64XORL_10(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 8-c && c < 8 && t.Size() == 1) { + if x != v_1.Args[0] || !(d == 8-c && c < 8 && t.Size() == 1) { break } v.reset(OpAMD64ROLBconst) @@ -55490,7 +49093,6 @@ func rewriteValueAMD64_OpAMD64XORL_10(v *Value) bool { return true } // match: (XORL x x) - // cond: // result: (MOVLconst [0]) for { x := v.Args[1] @@ -55570,7 +49172,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETNE x)) - // cond: // result: (SETEQ x) for { if v.AuxInt != 1 { @@ -55586,7 +49187,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETEQ x)) - // cond: // result: (SETNE x) for { if v.AuxInt != 1 { @@ -55602,7 +49202,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETL x)) - // cond: // result: (SETGE x) for { if v.AuxInt != 1 { @@ -55618,7 +49217,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETGE x)) - // cond: // result: (SETL x) for { if v.AuxInt != 1 { @@ -55634,7 +49232,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETLE x)) - // cond: // result: (SETG x) for { if v.AuxInt != 1 { @@ -55650,7 +49247,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETG x)) - // cond: // result: (SETLE x) for { if v.AuxInt != 1 { @@ -55666,7 +49262,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETB x)) - // cond: // result: (SETAE x) for { if v.AuxInt != 1 { @@ -55682,7 +49277,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETAE x)) - // cond: // result: (SETB x) for { if v.AuxInt != 1 { @@ -55698,7 +49292,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { return true } // match: (XORLconst [1] (SETBE x)) - // cond: // result: (SETA x) for { if v.AuxInt != 1 { @@ -55717,7 +49310,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_0(v *Value) bool { } func rewriteValueAMD64_OpAMD64XORLconst_10(v *Value) bool { // match: (XORLconst [1] (SETA x)) - // cond: // result: (SETBE x) for { if v.AuxInt != 1 { @@ -55733,7 +49325,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_10(v *Value) bool { return true } // match: (XORLconst [c] (XORLconst [d] x)) - // cond: // result: (XORLconst [c ^ d] x) for { c := v.AuxInt @@ -55749,7 +49340,6 @@ func rewriteValueAMD64_OpAMD64XORLconst_10(v *Value) bool { return true } // match: (XORLconst [c] (BTCLconst [d] x)) - // cond: // result: (XORLconst [c ^ 1< val ptr mem)) for { mem := v.Args[2] @@ -56940,7 +50469,6 @@ func rewriteValueAMD64_OpAtomicStore64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (AtomicStore64 ptr val mem) - // cond: // result: (Select1 (XCHGQ val ptr mem)) for { mem := v.Args[2] @@ -56999,7 +50527,6 @@ func rewriteValueAMD64_OpAtomicStorePtrNoWB_0(v *Value) bool { } func rewriteValueAMD64_OpAvg64u_0(v *Value) bool { // match: (Avg64u x y) - // cond: // result: (AVGQU x y) for { y := v.Args[1] @@ -57014,7 +50541,6 @@ func rewriteValueAMD64_OpBitLen16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen16 x) - // cond: // result: (BSRL (LEAL1 [1] (MOVWQZX x) (MOVWQZX x))) for { x := v.Args[0] @@ -57035,7 +50561,6 @@ func rewriteValueAMD64_OpBitLen32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen32 x) - // cond: // result: (Select0 (BSRQ (LEAQ1 [1] (MOVLQZX x) (MOVLQZX x)))) for { x := v.Args[0] @@ -57058,7 +50583,6 @@ func rewriteValueAMD64_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (ADDQconst [1] (CMOVQEQ (Select0 (BSRQ x)) (MOVQconst [-1]) (Select1 (BSRQ x)))) for { t := v.Type @@ -57087,7 +50611,6 @@ func rewriteValueAMD64_OpBitLen8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen8 x) - // cond: // result: (BSRL (LEAL1 [1] (MOVBQZX x) (MOVBQZX x))) for { x := v.Args[0] @@ -57106,7 +50629,6 @@ func rewriteValueAMD64_OpBitLen8_0(v *Value) bool { } func rewriteValueAMD64_OpBswap32_0(v *Value) bool { // match: (Bswap32 x) - // cond: // result: (BSWAPL x) for { x := v.Args[0] @@ -57117,7 +50639,6 @@ func rewriteValueAMD64_OpBswap32_0(v *Value) bool { } func rewriteValueAMD64_OpBswap64_0(v *Value) bool { // match: (Bswap64 x) - // cond: // result: (BSWAPQ x) for { x := v.Args[0] @@ -57128,7 +50649,6 @@ func rewriteValueAMD64_OpBswap64_0(v *Value) bool { } func rewriteValueAMD64_OpCeil_0(v *Value) bool { // match: (Ceil x) - // cond: // result: (ROUNDSD [2] x) for { x := v.Args[0] @@ -57140,7 +50660,6 @@ func rewriteValueAMD64_OpCeil_0(v *Value) bool { } func rewriteValueAMD64_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -57157,7 +50676,6 @@ func rewriteValueAMD64_OpClosureCall_0(v *Value) bool { } func rewriteValueAMD64_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -57168,7 +50686,6 @@ func rewriteValueAMD64_OpCom16_0(v *Value) bool { } func rewriteValueAMD64_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -57179,7 +50696,6 @@ func rewriteValueAMD64_OpCom32_0(v *Value) bool { } func rewriteValueAMD64_OpCom64_0(v *Value) bool { // match: (Com64 x) - // cond: // result: (NOTQ x) for { x := v.Args[0] @@ -57190,7 +50706,6 @@ func rewriteValueAMD64_OpCom64_0(v *Value) bool { } func rewriteValueAMD64_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (NOTL x) for { x := v.Args[0] @@ -58262,7 +51777,6 @@ func rewriteValueAMD64_OpCondSelect_40(v *Value) bool { } func rewriteValueAMD64_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -58273,7 +51787,6 @@ func rewriteValueAMD64_OpConst16_0(v *Value) bool { } func rewriteValueAMD64_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -58284,7 +51797,6 @@ func rewriteValueAMD64_OpConst32_0(v *Value) bool { } func rewriteValueAMD64_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (MOVSSconst [val]) for { val := v.AuxInt @@ -58295,7 +51807,6 @@ func rewriteValueAMD64_OpConst32F_0(v *Value) bool { } func rewriteValueAMD64_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (MOVQconst [val]) for { val := v.AuxInt @@ -58306,7 +51817,6 @@ func rewriteValueAMD64_OpConst64_0(v *Value) bool { } func rewriteValueAMD64_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (MOVSDconst [val]) for { val := v.AuxInt @@ -58317,7 +51827,6 @@ func rewriteValueAMD64_OpConst64F_0(v *Value) bool { } func rewriteValueAMD64_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVLconst [val]) for { val := v.AuxInt @@ -58328,7 +51837,6 @@ func rewriteValueAMD64_OpConst8_0(v *Value) bool { } func rewriteValueAMD64_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVLconst [b]) for { b := v.AuxInt @@ -58368,7 +51876,6 @@ func rewriteValueAMD64_OpCtz16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz16 x) - // cond: // result: (BSFL (BTSLconst [16] x)) for { x := v.Args[0] @@ -58382,7 +51889,6 @@ func rewriteValueAMD64_OpCtz16_0(v *Value) bool { } func rewriteValueAMD64_OpCtz16NonZero_0(v *Value) bool { // match: (Ctz16NonZero x) - // cond: // result: (BSFL x) for { x := v.Args[0] @@ -58395,7 +51901,6 @@ func rewriteValueAMD64_OpCtz32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz32 x) - // cond: // result: (Select0 (BSFQ (BTSQconst [32] x))) for { x := v.Args[0] @@ -58411,7 +51916,6 @@ func rewriteValueAMD64_OpCtz32_0(v *Value) bool { } func rewriteValueAMD64_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (BSFL x) for { x := v.Args[0] @@ -58424,7 +51928,6 @@ func rewriteValueAMD64_OpCtz64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz64 x) - // cond: // result: (CMOVQEQ (Select0 (BSFQ x)) (MOVQconst [64]) (Select1 (BSFQ x))) for { t := v.Type @@ -58450,7 +51953,6 @@ func rewriteValueAMD64_OpCtz64NonZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz64NonZero x) - // cond: // result: (Select0 (BSFQ x)) for { x := v.Args[0] @@ -58465,7 +51967,6 @@ func rewriteValueAMD64_OpCtz8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz8 x) - // cond: // result: (BSFL (BTSLconst [ 8] x)) for { x := v.Args[0] @@ -58479,7 +51980,6 @@ func rewriteValueAMD64_OpCtz8_0(v *Value) bool { } func rewriteValueAMD64_OpCtz8NonZero_0(v *Value) bool { // match: (Ctz8NonZero x) - // cond: // result: (BSFL x) for { x := v.Args[0] @@ -58490,7 +51990,6 @@ func rewriteValueAMD64_OpCtz8NonZero_0(v *Value) bool { } func rewriteValueAMD64_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (CVTTSS2SL x) for { x := v.Args[0] @@ -58501,7 +52000,6 @@ func rewriteValueAMD64_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueAMD64_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 x) - // cond: // result: (CVTTSS2SQ x) for { x := v.Args[0] @@ -58512,7 +52010,6 @@ func rewriteValueAMD64_OpCvt32Fto64_0(v *Value) bool { } func rewriteValueAMD64_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (CVTSS2SD x) for { x := v.Args[0] @@ -58523,7 +52020,6 @@ func rewriteValueAMD64_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueAMD64_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (CVTSL2SS x) for { x := v.Args[0] @@ -58534,7 +52030,6 @@ func rewriteValueAMD64_OpCvt32to32F_0(v *Value) bool { } func rewriteValueAMD64_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (CVTSL2SD x) for { x := v.Args[0] @@ -58545,7 +52040,6 @@ func rewriteValueAMD64_OpCvt32to64F_0(v *Value) bool { } func rewriteValueAMD64_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (CVTTSD2SL x) for { x := v.Args[0] @@ -58556,7 +52050,6 @@ func rewriteValueAMD64_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueAMD64_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (CVTSD2SS x) for { x := v.Args[0] @@ -58567,7 +52060,6 @@ func rewriteValueAMD64_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueAMD64_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 x) - // cond: // result: (CVTTSD2SQ x) for { x := v.Args[0] @@ -58578,7 +52070,6 @@ func rewriteValueAMD64_OpCvt64Fto64_0(v *Value) bool { } func rewriteValueAMD64_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F x) - // cond: // result: (CVTSQ2SS x) for { x := v.Args[0] @@ -58589,7 +52080,6 @@ func rewriteValueAMD64_OpCvt64to32F_0(v *Value) bool { } func rewriteValueAMD64_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F x) - // cond: // result: (CVTSQ2SD x) for { x := v.Args[0] @@ -58600,7 +52090,6 @@ func rewriteValueAMD64_OpCvt64to64F_0(v *Value) bool { } func rewriteValueAMD64_OpDiv128u_0(v *Value) bool { // match: (Div128u xhi xlo y) - // cond: // result: (DIVQU2 xhi xlo y) for { y := v.Args[2] @@ -58617,7 +52106,6 @@ func rewriteValueAMD64_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 [a] x y) - // cond: // result: (Select0 (DIVW [a] x y)) for { a := v.AuxInt @@ -58636,7 +52124,6 @@ func rewriteValueAMD64_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (Select0 (DIVWU x y)) for { y := v.Args[1] @@ -58653,7 +52140,6 @@ func rewriteValueAMD64_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 [a] x y) - // cond: // result: (Select0 (DIVL [a] x y)) for { a := v.AuxInt @@ -58670,7 +52156,6 @@ func rewriteValueAMD64_OpDiv32_0(v *Value) bool { } func rewriteValueAMD64_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (DIVSS x y) for { y := v.Args[1] @@ -58685,7 +52170,6 @@ func rewriteValueAMD64_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (Select0 (DIVLU x y)) for { y := v.Args[1] @@ -58702,7 +52186,6 @@ func rewriteValueAMD64_OpDiv64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div64 [a] x y) - // cond: // result: (Select0 (DIVQ [a] x y)) for { a := v.AuxInt @@ -58719,7 +52202,6 @@ func rewriteValueAMD64_OpDiv64_0(v *Value) bool { } func rewriteValueAMD64_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (DIVSD x y) for { y := v.Args[1] @@ -58734,7 +52216,6 @@ func rewriteValueAMD64_OpDiv64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div64u x y) - // cond: // result: (Select0 (DIVQU x y)) for { y := v.Args[1] @@ -58751,7 +52232,6 @@ func rewriteValueAMD64_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (Select0 (DIVW (SignExt8to16 x) (SignExt8to16 y))) for { y := v.Args[1] @@ -58772,7 +52252,6 @@ func rewriteValueAMD64_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (Select0 (DIVWU (ZeroExt8to16 x) (ZeroExt8to16 y))) for { y := v.Args[1] @@ -58792,7 +52271,6 @@ func rewriteValueAMD64_OpDiv8u_0(v *Value) bool { func rewriteValueAMD64_OpEq16_0(v *Value) bool { b := v.Block // match: (Eq16 x y) - // cond: // result: (SETEQ (CMPW x y)) for { y := v.Args[1] @@ -58808,7 +52286,6 @@ func rewriteValueAMD64_OpEq16_0(v *Value) bool { func rewriteValueAMD64_OpEq32_0(v *Value) bool { b := v.Block // match: (Eq32 x y) - // cond: // result: (SETEQ (CMPL x y)) for { y := v.Args[1] @@ -58824,7 +52301,6 @@ func rewriteValueAMD64_OpEq32_0(v *Value) bool { func rewriteValueAMD64_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (SETEQF (UCOMISS x y)) for { y := v.Args[1] @@ -58840,7 +52316,6 @@ func rewriteValueAMD64_OpEq32F_0(v *Value) bool { func rewriteValueAMD64_OpEq64_0(v *Value) bool { b := v.Block // match: (Eq64 x y) - // cond: // result: (SETEQ (CMPQ x y)) for { y := v.Args[1] @@ -58856,7 +52331,6 @@ func rewriteValueAMD64_OpEq64_0(v *Value) bool { func rewriteValueAMD64_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (SETEQF (UCOMISD x y)) for { y := v.Args[1] @@ -58872,7 +52346,6 @@ func rewriteValueAMD64_OpEq64F_0(v *Value) bool { func rewriteValueAMD64_OpEq8_0(v *Value) bool { b := v.Block // match: (Eq8 x y) - // cond: // result: (SETEQ (CMPB x y)) for { y := v.Args[1] @@ -58888,7 +52361,6 @@ func rewriteValueAMD64_OpEq8_0(v *Value) bool { func rewriteValueAMD64_OpEqB_0(v *Value) bool { b := v.Block // match: (EqB x y) - // cond: // result: (SETEQ (CMPB x y)) for { y := v.Args[1] @@ -58940,7 +52412,6 @@ func rewriteValueAMD64_OpEqPtr_0(v *Value) bool { } func rewriteValueAMD64_OpFloor_0(v *Value) bool { // match: (Floor x) - // cond: // result: (ROUNDSD [1] x) for { x := v.Args[0] @@ -58953,7 +52424,6 @@ func rewriteValueAMD64_OpFloor_0(v *Value) bool { func rewriteValueAMD64_OpGeq16_0(v *Value) bool { b := v.Block // match: (Geq16 x y) - // cond: // result: (SETGE (CMPW x y)) for { y := v.Args[1] @@ -58969,7 +52439,6 @@ func rewriteValueAMD64_OpGeq16_0(v *Value) bool { func rewriteValueAMD64_OpGeq16U_0(v *Value) bool { b := v.Block // match: (Geq16U x y) - // cond: // result: (SETAE (CMPW x y)) for { y := v.Args[1] @@ -58985,7 +52454,6 @@ func rewriteValueAMD64_OpGeq16U_0(v *Value) bool { func rewriteValueAMD64_OpGeq32_0(v *Value) bool { b := v.Block // match: (Geq32 x y) - // cond: // result: (SETGE (CMPL x y)) for { y := v.Args[1] @@ -59001,7 +52469,6 @@ func rewriteValueAMD64_OpGeq32_0(v *Value) bool { func rewriteValueAMD64_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (SETGEF (UCOMISS x y)) for { y := v.Args[1] @@ -59017,7 +52484,6 @@ func rewriteValueAMD64_OpGeq32F_0(v *Value) bool { func rewriteValueAMD64_OpGeq32U_0(v *Value) bool { b := v.Block // match: (Geq32U x y) - // cond: // result: (SETAE (CMPL x y)) for { y := v.Args[1] @@ -59033,7 +52499,6 @@ func rewriteValueAMD64_OpGeq32U_0(v *Value) bool { func rewriteValueAMD64_OpGeq64_0(v *Value) bool { b := v.Block // match: (Geq64 x y) - // cond: // result: (SETGE (CMPQ x y)) for { y := v.Args[1] @@ -59049,7 +52514,6 @@ func rewriteValueAMD64_OpGeq64_0(v *Value) bool { func rewriteValueAMD64_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (SETGEF (UCOMISD x y)) for { y := v.Args[1] @@ -59065,7 +52529,6 @@ func rewriteValueAMD64_OpGeq64F_0(v *Value) bool { func rewriteValueAMD64_OpGeq64U_0(v *Value) bool { b := v.Block // match: (Geq64U x y) - // cond: // result: (SETAE (CMPQ x y)) for { y := v.Args[1] @@ -59081,7 +52544,6 @@ func rewriteValueAMD64_OpGeq64U_0(v *Value) bool { func rewriteValueAMD64_OpGeq8_0(v *Value) bool { b := v.Block // match: (Geq8 x y) - // cond: // result: (SETGE (CMPB x y)) for { y := v.Args[1] @@ -59097,7 +52559,6 @@ func rewriteValueAMD64_OpGeq8_0(v *Value) bool { func rewriteValueAMD64_OpGeq8U_0(v *Value) bool { b := v.Block // match: (Geq8U x y) - // cond: // result: (SETAE (CMPB x y)) for { y := v.Args[1] @@ -59112,7 +52573,6 @@ func rewriteValueAMD64_OpGeq8U_0(v *Value) bool { } func rewriteValueAMD64_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpAMD64LoweredGetCallerPC) @@ -59121,7 +52581,6 @@ func rewriteValueAMD64_OpGetCallerPC_0(v *Value) bool { } func rewriteValueAMD64_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpAMD64LoweredGetCallerSP) @@ -59130,7 +52589,6 @@ func rewriteValueAMD64_OpGetCallerSP_0(v *Value) bool { } func rewriteValueAMD64_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpAMD64LoweredGetClosurePtr) @@ -59139,7 +52597,6 @@ func rewriteValueAMD64_OpGetClosurePtr_0(v *Value) bool { } func rewriteValueAMD64_OpGetG_0(v *Value) bool { // match: (GetG mem) - // cond: // result: (LoweredGetG mem) for { mem := v.Args[0] @@ -59151,7 +52608,6 @@ func rewriteValueAMD64_OpGetG_0(v *Value) bool { func rewriteValueAMD64_OpGreater16_0(v *Value) bool { b := v.Block // match: (Greater16 x y) - // cond: // result: (SETG (CMPW x y)) for { y := v.Args[1] @@ -59167,7 +52623,6 @@ func rewriteValueAMD64_OpGreater16_0(v *Value) bool { func rewriteValueAMD64_OpGreater16U_0(v *Value) bool { b := v.Block // match: (Greater16U x y) - // cond: // result: (SETA (CMPW x y)) for { y := v.Args[1] @@ -59183,7 +52638,6 @@ func rewriteValueAMD64_OpGreater16U_0(v *Value) bool { func rewriteValueAMD64_OpGreater32_0(v *Value) bool { b := v.Block // match: (Greater32 x y) - // cond: // result: (SETG (CMPL x y)) for { y := v.Args[1] @@ -59199,7 +52653,6 @@ func rewriteValueAMD64_OpGreater32_0(v *Value) bool { func rewriteValueAMD64_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (SETGF (UCOMISS x y)) for { y := v.Args[1] @@ -59215,7 +52668,6 @@ func rewriteValueAMD64_OpGreater32F_0(v *Value) bool { func rewriteValueAMD64_OpGreater32U_0(v *Value) bool { b := v.Block // match: (Greater32U x y) - // cond: // result: (SETA (CMPL x y)) for { y := v.Args[1] @@ -59231,7 +52683,6 @@ func rewriteValueAMD64_OpGreater32U_0(v *Value) bool { func rewriteValueAMD64_OpGreater64_0(v *Value) bool { b := v.Block // match: (Greater64 x y) - // cond: // result: (SETG (CMPQ x y)) for { y := v.Args[1] @@ -59247,7 +52698,6 @@ func rewriteValueAMD64_OpGreater64_0(v *Value) bool { func rewriteValueAMD64_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (SETGF (UCOMISD x y)) for { y := v.Args[1] @@ -59263,7 +52713,6 @@ func rewriteValueAMD64_OpGreater64F_0(v *Value) bool { func rewriteValueAMD64_OpGreater64U_0(v *Value) bool { b := v.Block // match: (Greater64U x y) - // cond: // result: (SETA (CMPQ x y)) for { y := v.Args[1] @@ -59279,7 +52728,6 @@ func rewriteValueAMD64_OpGreater64U_0(v *Value) bool { func rewriteValueAMD64_OpGreater8_0(v *Value) bool { b := v.Block // match: (Greater8 x y) - // cond: // result: (SETG (CMPB x y)) for { y := v.Args[1] @@ -59295,7 +52743,6 @@ func rewriteValueAMD64_OpGreater8_0(v *Value) bool { func rewriteValueAMD64_OpGreater8U_0(v *Value) bool { b := v.Block // match: (Greater8U x y) - // cond: // result: (SETA (CMPB x y)) for { y := v.Args[1] @@ -59310,7 +52757,6 @@ func rewriteValueAMD64_OpGreater8U_0(v *Value) bool { } func rewriteValueAMD64_OpHmul32_0(v *Value) bool { // match: (Hmul32 x y) - // cond: // result: (HMULL x y) for { y := v.Args[1] @@ -59323,7 +52769,6 @@ func rewriteValueAMD64_OpHmul32_0(v *Value) bool { } func rewriteValueAMD64_OpHmul32u_0(v *Value) bool { // match: (Hmul32u x y) - // cond: // result: (HMULLU x y) for { y := v.Args[1] @@ -59336,7 +52781,6 @@ func rewriteValueAMD64_OpHmul32u_0(v *Value) bool { } func rewriteValueAMD64_OpHmul64_0(v *Value) bool { // match: (Hmul64 x y) - // cond: // result: (HMULQ x y) for { y := v.Args[1] @@ -59349,7 +52793,6 @@ func rewriteValueAMD64_OpHmul64_0(v *Value) bool { } func rewriteValueAMD64_OpHmul64u_0(v *Value) bool { // match: (Hmul64u x y) - // cond: // result: (HMULQU x y) for { y := v.Args[1] @@ -59362,7 +52805,6 @@ func rewriteValueAMD64_OpHmul64u_0(v *Value) bool { } func rewriteValueAMD64_OpInt64Hi_0(v *Value) bool { // match: (Int64Hi x) - // cond: // result: (SHRQconst [32] x) for { x := v.Args[0] @@ -59374,7 +52816,6 @@ func rewriteValueAMD64_OpInt64Hi_0(v *Value) bool { } func rewriteValueAMD64_OpInt64Lo_0(v *Value) bool { // match: (Int64Lo x) - // cond: // result: x for { x := v.Args[0] @@ -59386,7 +52827,6 @@ func rewriteValueAMD64_OpInt64Lo_0(v *Value) bool { } func rewriteValueAMD64_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -59511,7 +52951,6 @@ func rewriteValueAMD64_OpIsSliceInBounds_0(v *Value) bool { func rewriteValueAMD64_OpLeq16_0(v *Value) bool { b := v.Block // match: (Leq16 x y) - // cond: // result: (SETLE (CMPW x y)) for { y := v.Args[1] @@ -59527,7 +52966,6 @@ func rewriteValueAMD64_OpLeq16_0(v *Value) bool { func rewriteValueAMD64_OpLeq16U_0(v *Value) bool { b := v.Block // match: (Leq16U x y) - // cond: // result: (SETBE (CMPW x y)) for { y := v.Args[1] @@ -59543,7 +52981,6 @@ func rewriteValueAMD64_OpLeq16U_0(v *Value) bool { func rewriteValueAMD64_OpLeq32_0(v *Value) bool { b := v.Block // match: (Leq32 x y) - // cond: // result: (SETLE (CMPL x y)) for { y := v.Args[1] @@ -59559,7 +52996,6 @@ func rewriteValueAMD64_OpLeq32_0(v *Value) bool { func rewriteValueAMD64_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (SETGEF (UCOMISS y x)) for { y := v.Args[1] @@ -59575,7 +53011,6 @@ func rewriteValueAMD64_OpLeq32F_0(v *Value) bool { func rewriteValueAMD64_OpLeq32U_0(v *Value) bool { b := v.Block // match: (Leq32U x y) - // cond: // result: (SETBE (CMPL x y)) for { y := v.Args[1] @@ -59591,7 +53026,6 @@ func rewriteValueAMD64_OpLeq32U_0(v *Value) bool { func rewriteValueAMD64_OpLeq64_0(v *Value) bool { b := v.Block // match: (Leq64 x y) - // cond: // result: (SETLE (CMPQ x y)) for { y := v.Args[1] @@ -59607,7 +53041,6 @@ func rewriteValueAMD64_OpLeq64_0(v *Value) bool { func rewriteValueAMD64_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (SETGEF (UCOMISD y x)) for { y := v.Args[1] @@ -59623,7 +53056,6 @@ func rewriteValueAMD64_OpLeq64F_0(v *Value) bool { func rewriteValueAMD64_OpLeq64U_0(v *Value) bool { b := v.Block // match: (Leq64U x y) - // cond: // result: (SETBE (CMPQ x y)) for { y := v.Args[1] @@ -59639,7 +53071,6 @@ func rewriteValueAMD64_OpLeq64U_0(v *Value) bool { func rewriteValueAMD64_OpLeq8_0(v *Value) bool { b := v.Block // match: (Leq8 x y) - // cond: // result: (SETLE (CMPB x y)) for { y := v.Args[1] @@ -59655,7 +53086,6 @@ func rewriteValueAMD64_OpLeq8_0(v *Value) bool { func rewriteValueAMD64_OpLeq8U_0(v *Value) bool { b := v.Block // match: (Leq8U x y) - // cond: // result: (SETBE (CMPB x y)) for { y := v.Args[1] @@ -59671,7 +53101,6 @@ func rewriteValueAMD64_OpLeq8U_0(v *Value) bool { func rewriteValueAMD64_OpLess16_0(v *Value) bool { b := v.Block // match: (Less16 x y) - // cond: // result: (SETL (CMPW x y)) for { y := v.Args[1] @@ -59687,7 +53116,6 @@ func rewriteValueAMD64_OpLess16_0(v *Value) bool { func rewriteValueAMD64_OpLess16U_0(v *Value) bool { b := v.Block // match: (Less16U x y) - // cond: // result: (SETB (CMPW x y)) for { y := v.Args[1] @@ -59703,7 +53131,6 @@ func rewriteValueAMD64_OpLess16U_0(v *Value) bool { func rewriteValueAMD64_OpLess32_0(v *Value) bool { b := v.Block // match: (Less32 x y) - // cond: // result: (SETL (CMPL x y)) for { y := v.Args[1] @@ -59719,7 +53146,6 @@ func rewriteValueAMD64_OpLess32_0(v *Value) bool { func rewriteValueAMD64_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (SETGF (UCOMISS y x)) for { y := v.Args[1] @@ -59735,7 +53161,6 @@ func rewriteValueAMD64_OpLess32F_0(v *Value) bool { func rewriteValueAMD64_OpLess32U_0(v *Value) bool { b := v.Block // match: (Less32U x y) - // cond: // result: (SETB (CMPL x y)) for { y := v.Args[1] @@ -59751,7 +53176,6 @@ func rewriteValueAMD64_OpLess32U_0(v *Value) bool { func rewriteValueAMD64_OpLess64_0(v *Value) bool { b := v.Block // match: (Less64 x y) - // cond: // result: (SETL (CMPQ x y)) for { y := v.Args[1] @@ -59767,7 +53191,6 @@ func rewriteValueAMD64_OpLess64_0(v *Value) bool { func rewriteValueAMD64_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (SETGF (UCOMISD y x)) for { y := v.Args[1] @@ -59783,7 +53206,6 @@ func rewriteValueAMD64_OpLess64F_0(v *Value) bool { func rewriteValueAMD64_OpLess64U_0(v *Value) bool { b := v.Block // match: (Less64U x y) - // cond: // result: (SETB (CMPQ x y)) for { y := v.Args[1] @@ -59799,7 +53221,6 @@ func rewriteValueAMD64_OpLess64U_0(v *Value) bool { func rewriteValueAMD64_OpLess8_0(v *Value) bool { b := v.Block // match: (Less8 x y) - // cond: // result: (SETL (CMPB x y)) for { y := v.Args[1] @@ -59815,7 +53236,6 @@ func rewriteValueAMD64_OpLess8_0(v *Value) bool { func rewriteValueAMD64_OpLess8U_0(v *Value) bool { b := v.Block // match: (Less8U x y) - // cond: // result: (SETB (CMPB x y)) for { y := v.Args[1] @@ -60618,7 +54038,6 @@ func rewriteValueAMD64_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 [a] x y) - // cond: // result: (Select1 (DIVW [a] x y)) for { a := v.AuxInt @@ -60637,7 +54056,6 @@ func rewriteValueAMD64_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (Select1 (DIVWU x y)) for { y := v.Args[1] @@ -60654,7 +54072,6 @@ func rewriteValueAMD64_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 [a] x y) - // cond: // result: (Select1 (DIVL [a] x y)) for { a := v.AuxInt @@ -60673,7 +54090,6 @@ func rewriteValueAMD64_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (Select1 (DIVLU x y)) for { y := v.Args[1] @@ -60690,7 +54106,6 @@ func rewriteValueAMD64_OpMod64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64 [a] x y) - // cond: // result: (Select1 (DIVQ [a] x y)) for { a := v.AuxInt @@ -60709,7 +54124,6 @@ func rewriteValueAMD64_OpMod64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64u x y) - // cond: // result: (Select1 (DIVQU x y)) for { y := v.Args[1] @@ -60726,7 +54140,6 @@ func rewriteValueAMD64_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (Select1 (DIVW (SignExt8to16 x) (SignExt8to16 y))) for { y := v.Args[1] @@ -60747,7 +54160,6 @@ func rewriteValueAMD64_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (Select1 (DIVWU (ZeroExt8to16 x) (ZeroExt8to16 y))) for { y := v.Args[1] @@ -60769,7 +54181,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -60782,7 +54193,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBload src mem) mem) for { if v.AuxInt != 1 { @@ -60801,7 +54211,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVWstore dst (MOVWload src mem) mem) for { if v.AuxInt != 2 { @@ -60820,7 +54229,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVLstore dst (MOVLload src mem) mem) for { if v.AuxInt != 4 { @@ -60839,7 +54247,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (MOVQstore dst (MOVQload src mem) mem) for { if v.AuxInt != 8 { @@ -60911,7 +54318,6 @@ func rewriteValueAMD64_OpMove_0(v *Value) bool { return true } // match: (Move [32] dst src mem) - // cond: // result: (Move [16] (OffPtr dst [16]) (OffPtr src [16]) (Move [16] dst src mem)) for { if v.AuxInt != 32 { @@ -61007,7 +54413,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBload [2] src mem) (MOVWstore dst (MOVWload src mem) mem)) for { if v.AuxInt != 3 { @@ -61035,7 +54440,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (MOVBstore [4] dst (MOVBload [4] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 5 { @@ -61063,7 +54467,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (MOVWstore [4] dst (MOVWload [4] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 6 { @@ -61091,7 +54494,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [7] dst src mem) - // cond: // result: (MOVLstore [3] dst (MOVLload [3] src mem) (MOVLstore dst (MOVLload src mem) mem)) for { if v.AuxInt != 7 { @@ -61119,7 +54521,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [9] dst src mem) - // cond: // result: (MOVBstore [8] dst (MOVBload [8] src mem) (MOVQstore dst (MOVQload src mem) mem)) for { if v.AuxInt != 9 { @@ -61147,7 +54548,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [10] dst src mem) - // cond: // result: (MOVWstore [8] dst (MOVWload [8] src mem) (MOVQstore dst (MOVQload src mem) mem)) for { if v.AuxInt != 10 { @@ -61175,7 +54575,6 @@ func rewriteValueAMD64_OpMove_10(v *Value) bool { return true } // match: (Move [12] dst src mem) - // cond: // result: (MOVLstore [8] dst (MOVLload [8] src mem) (MOVQstore dst (MOVQload src mem) mem)) for { if v.AuxInt != 12 { @@ -61381,7 +54780,6 @@ func rewriteValueAMD64_OpMove_20(v *Value) bool { } func rewriteValueAMD64_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -61394,7 +54792,6 @@ func rewriteValueAMD64_OpMul16_0(v *Value) bool { } func rewriteValueAMD64_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -61407,7 +54804,6 @@ func rewriteValueAMD64_OpMul32_0(v *Value) bool { } func rewriteValueAMD64_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (MULSS x y) for { y := v.Args[1] @@ -61420,7 +54816,6 @@ func rewriteValueAMD64_OpMul32F_0(v *Value) bool { } func rewriteValueAMD64_OpMul64_0(v *Value) bool { // match: (Mul64 x y) - // cond: // result: (MULQ x y) for { y := v.Args[1] @@ -61433,7 +54828,6 @@ func rewriteValueAMD64_OpMul64_0(v *Value) bool { } func rewriteValueAMD64_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (MULSD x y) for { y := v.Args[1] @@ -61446,7 +54840,6 @@ func rewriteValueAMD64_OpMul64F_0(v *Value) bool { } func rewriteValueAMD64_OpMul64uhilo_0(v *Value) bool { // match: (Mul64uhilo x y) - // cond: // result: (MULQU2 x y) for { y := v.Args[1] @@ -61459,7 +54852,6 @@ func rewriteValueAMD64_OpMul64uhilo_0(v *Value) bool { } func rewriteValueAMD64_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MULL x y) for { y := v.Args[1] @@ -61472,7 +54864,6 @@ func rewriteValueAMD64_OpMul8_0(v *Value) bool { } func rewriteValueAMD64_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -61483,7 +54874,6 @@ func rewriteValueAMD64_OpNeg16_0(v *Value) bool { } func rewriteValueAMD64_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -61496,7 +54886,6 @@ func rewriteValueAMD64_OpNeg32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg32F x) - // cond: // result: (PXOR x (MOVSSconst [auxFrom32F(float32(math.Copysign(0, -1)))])) for { x := v.Args[0] @@ -61510,7 +54899,6 @@ func rewriteValueAMD64_OpNeg32F_0(v *Value) bool { } func rewriteValueAMD64_OpNeg64_0(v *Value) bool { // match: (Neg64 x) - // cond: // result: (NEGQ x) for { x := v.Args[0] @@ -61523,7 +54911,6 @@ func rewriteValueAMD64_OpNeg64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg64F x) - // cond: // result: (PXOR x (MOVSDconst [auxFrom64F(math.Copysign(0, -1))])) for { x := v.Args[0] @@ -61537,7 +54924,6 @@ func rewriteValueAMD64_OpNeg64F_0(v *Value) bool { } func rewriteValueAMD64_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEGL x) for { x := v.Args[0] @@ -61549,7 +54935,6 @@ func rewriteValueAMD64_OpNeg8_0(v *Value) bool { func rewriteValueAMD64_OpNeq16_0(v *Value) bool { b := v.Block // match: (Neq16 x y) - // cond: // result: (SETNE (CMPW x y)) for { y := v.Args[1] @@ -61565,7 +54950,6 @@ func rewriteValueAMD64_OpNeq16_0(v *Value) bool { func rewriteValueAMD64_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x y) - // cond: // result: (SETNE (CMPL x y)) for { y := v.Args[1] @@ -61581,7 +54965,6 @@ func rewriteValueAMD64_OpNeq32_0(v *Value) bool { func rewriteValueAMD64_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (SETNEF (UCOMISS x y)) for { y := v.Args[1] @@ -61597,7 +54980,6 @@ func rewriteValueAMD64_OpNeq32F_0(v *Value) bool { func rewriteValueAMD64_OpNeq64_0(v *Value) bool { b := v.Block // match: (Neq64 x y) - // cond: // result: (SETNE (CMPQ x y)) for { y := v.Args[1] @@ -61613,7 +54995,6 @@ func rewriteValueAMD64_OpNeq64_0(v *Value) bool { func rewriteValueAMD64_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (SETNEF (UCOMISD x y)) for { y := v.Args[1] @@ -61629,7 +55010,6 @@ func rewriteValueAMD64_OpNeq64F_0(v *Value) bool { func rewriteValueAMD64_OpNeq8_0(v *Value) bool { b := v.Block // match: (Neq8 x y) - // cond: // result: (SETNE (CMPB x y)) for { y := v.Args[1] @@ -61645,7 +55025,6 @@ func rewriteValueAMD64_OpNeq8_0(v *Value) bool { func rewriteValueAMD64_OpNeqB_0(v *Value) bool { b := v.Block // match: (NeqB x y) - // cond: // result: (SETNE (CMPB x y)) for { y := v.Args[1] @@ -61697,7 +55076,6 @@ func rewriteValueAMD64_OpNeqPtr_0(v *Value) bool { } func rewriteValueAMD64_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -61710,7 +55088,6 @@ func rewriteValueAMD64_OpNilCheck_0(v *Value) bool { } func rewriteValueAMD64_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORLconst [1] x) for { x := v.Args[0] @@ -61772,7 +55149,6 @@ func rewriteValueAMD64_OpOffPtr_0(v *Value) bool { } func rewriteValueAMD64_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -61785,7 +55161,6 @@ func rewriteValueAMD64_OpOr16_0(v *Value) bool { } func rewriteValueAMD64_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -61798,7 +55173,6 @@ func rewriteValueAMD64_OpOr32_0(v *Value) bool { } func rewriteValueAMD64_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (ORQ x y) for { y := v.Args[1] @@ -61811,7 +55185,6 @@ func rewriteValueAMD64_OpOr64_0(v *Value) bool { } func rewriteValueAMD64_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -61824,7 +55197,6 @@ func rewriteValueAMD64_OpOr8_0(v *Value) bool { } func rewriteValueAMD64_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (ORL x y) for { y := v.Args[1] @@ -61959,7 +55331,6 @@ func rewriteValueAMD64_OpPopCount16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount16 x) - // cond: // result: (POPCNTL (MOVWQZX x)) for { x := v.Args[0] @@ -61972,7 +55343,6 @@ func rewriteValueAMD64_OpPopCount16_0(v *Value) bool { } func rewriteValueAMD64_OpPopCount32_0(v *Value) bool { // match: (PopCount32 x) - // cond: // result: (POPCNTL x) for { x := v.Args[0] @@ -61983,7 +55353,6 @@ func rewriteValueAMD64_OpPopCount32_0(v *Value) bool { } func rewriteValueAMD64_OpPopCount64_0(v *Value) bool { // match: (PopCount64 x) - // cond: // result: (POPCNTQ x) for { x := v.Args[0] @@ -61996,7 +55365,6 @@ func rewriteValueAMD64_OpPopCount8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount8 x) - // cond: // result: (POPCNTL (MOVBQZX x)) for { x := v.Args[0] @@ -62009,7 +55377,6 @@ func rewriteValueAMD64_OpPopCount8_0(v *Value) bool { } func rewriteValueAMD64_OpRotateLeft16_0(v *Value) bool { // match: (RotateLeft16 a b) - // cond: // result: (ROLW a b) for { b := v.Args[1] @@ -62022,7 +55389,6 @@ func rewriteValueAMD64_OpRotateLeft16_0(v *Value) bool { } func rewriteValueAMD64_OpRotateLeft32_0(v *Value) bool { // match: (RotateLeft32 a b) - // cond: // result: (ROLL a b) for { b := v.Args[1] @@ -62035,7 +55401,6 @@ func rewriteValueAMD64_OpRotateLeft32_0(v *Value) bool { } func rewriteValueAMD64_OpRotateLeft64_0(v *Value) bool { // match: (RotateLeft64 a b) - // cond: // result: (ROLQ a b) for { b := v.Args[1] @@ -62048,7 +55413,6 @@ func rewriteValueAMD64_OpRotateLeft64_0(v *Value) bool { } func rewriteValueAMD64_OpRotateLeft8_0(v *Value) bool { // match: (RotateLeft8 a b) - // cond: // result: (ROLB a b) for { b := v.Args[1] @@ -62061,7 +55425,6 @@ func rewriteValueAMD64_OpRotateLeft8_0(v *Value) bool { } func rewriteValueAMD64_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -62073,7 +55436,6 @@ func rewriteValueAMD64_OpRound32F_0(v *Value) bool { } func rewriteValueAMD64_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -62085,7 +55447,6 @@ func rewriteValueAMD64_OpRound64F_0(v *Value) bool { } func rewriteValueAMD64_OpRoundToEven_0(v *Value) bool { // match: (RoundToEven x) - // cond: // result: (ROUNDSD [0] x) for { x := v.Args[0] @@ -63459,7 +56820,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select0 (Mul64uover x y)) - // cond: // result: (Select0 (MULQU x y)) for { v_0 := v.Args[0] @@ -63477,7 +56837,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Mul32uover x y)) - // cond: // result: (Select0 (MULLU x y)) for { v_0 := v.Args[0] @@ -63495,7 +56854,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Add64carry x y c)) - // cond: // result: (Select0 (ADCQ x y (Select1 (NEGLflags c)))) for { v_0 := v.Args[0] @@ -63519,7 +56877,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Sub64borrow x y c)) - // cond: // result: (Select0 (SBBQ x y (Select1 (NEGLflags c)))) for { v_0 := v.Args[0] @@ -63543,7 +56900,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (AddTupleFirst32 val tuple)) - // cond: // result: (ADDL val (Select0 tuple)) for { t := v.Type @@ -63561,7 +56917,6 @@ func rewriteValueAMD64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (AddTupleFirst64 val tuple)) - // cond: // result: (ADDQ val (Select0 tuple)) for { t := v.Type @@ -63584,7 +56939,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select1 (Mul64uover x y)) - // cond: // result: (SETO (Select1 (MULQU x y))) for { v_0 := v.Args[0] @@ -63603,7 +56957,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Mul32uover x y)) - // cond: // result: (SETO (Select1 (MULLU x y))) for { v_0 := v.Args[0] @@ -63622,7 +56975,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Add64carry x y c)) - // cond: // result: (NEGQ (SBBQcarrymask (Select1 (ADCQ x y (Select1 (NEGLflags c)))))) for { v_0 := v.Args[0] @@ -63650,7 +57002,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Sub64borrow x y c)) - // cond: // result: (NEGQ (SBBQcarrymask (Select1 (SBBQ x y (Select1 (NEGLflags c)))))) for { v_0 := v.Args[0] @@ -63678,7 +57029,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (NEGLflags (MOVQconst [0]))) - // cond: // result: (FlagEQ) for { v_0 := v.Args[0] @@ -63686,17 +57036,13 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVQconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpAMD64MOVQconst || v_0_0.AuxInt != 0 { break } v.reset(OpAMD64FlagEQ) return true } // match: (Select1 (NEGLflags (NEGQ (SBBQcarrymask x)))) - // cond: // result: x for { v_0 := v.Args[0] @@ -63718,7 +57064,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (AddTupleFirst32 _ tuple)) - // cond: // result: (Select1 tuple) for { v_0 := v.Args[0] @@ -63731,7 +57076,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (AddTupleFirst64 _ tuple)) - // cond: // result: (Select1 tuple) for { v_0 := v.Args[0] @@ -63747,7 +57091,6 @@ func rewriteValueAMD64_OpSelect1_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVWQSX x) for { x := v.Args[0] @@ -63758,7 +57101,6 @@ func rewriteValueAMD64_OpSignExt16to32_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 x) - // cond: // result: (MOVWQSX x) for { x := v.Args[0] @@ -63769,7 +57111,6 @@ func rewriteValueAMD64_OpSignExt16to64_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 x) - // cond: // result: (MOVLQSX x) for { x := v.Args[0] @@ -63780,7 +57121,6 @@ func rewriteValueAMD64_OpSignExt32to64_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBQSX x) for { x := v.Args[0] @@ -63791,7 +57131,6 @@ func rewriteValueAMD64_OpSignExt8to16_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBQSX x) for { x := v.Args[0] @@ -63802,7 +57141,6 @@ func rewriteValueAMD64_OpSignExt8to32_0(v *Value) bool { } func rewriteValueAMD64_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 x) - // cond: // result: (MOVBQSX x) for { x := v.Args[0] @@ -63814,7 +57152,6 @@ func rewriteValueAMD64_OpSignExt8to64_0(v *Value) bool { func rewriteValueAMD64_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SARQconst (NEGQ x) [63]) for { t := v.Type @@ -63829,7 +57166,6 @@ func rewriteValueAMD64_OpSlicemask_0(v *Value) bool { } func rewriteValueAMD64_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (SQRTSD x) for { x := v.Args[0] @@ -63840,7 +57176,6 @@ func rewriteValueAMD64_OpSqrt_0(v *Value) bool { } func rewriteValueAMD64_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -63960,7 +57295,6 @@ func rewriteValueAMD64_OpStore_0(v *Value) bool { } func rewriteValueAMD64_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -63973,7 +57307,6 @@ func rewriteValueAMD64_OpSub16_0(v *Value) bool { } func rewriteValueAMD64_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -63986,7 +57319,6 @@ func rewriteValueAMD64_OpSub32_0(v *Value) bool { } func rewriteValueAMD64_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (SUBSS x y) for { y := v.Args[1] @@ -63999,7 +57331,6 @@ func rewriteValueAMD64_OpSub32F_0(v *Value) bool { } func rewriteValueAMD64_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (SUBQ x y) for { y := v.Args[1] @@ -64012,7 +57343,6 @@ func rewriteValueAMD64_OpSub64_0(v *Value) bool { } func rewriteValueAMD64_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (SUBSD x y) for { y := v.Args[1] @@ -64025,7 +57355,6 @@ func rewriteValueAMD64_OpSub64F_0(v *Value) bool { } func rewriteValueAMD64_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUBL x y) for { y := v.Args[1] @@ -64071,7 +57400,6 @@ func rewriteValueAMD64_OpSubPtr_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc_0(v *Value) bool { // match: (Trunc x) - // cond: // result: (ROUNDSD [3] x) for { x := v.Args[0] @@ -64083,7 +57411,6 @@ func rewriteValueAMD64_OpTrunc_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -64095,7 +57422,6 @@ func rewriteValueAMD64_OpTrunc16to8_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -64107,7 +57433,6 @@ func rewriteValueAMD64_OpTrunc32to16_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -64119,7 +57444,6 @@ func rewriteValueAMD64_OpTrunc32to8_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 x) - // cond: // result: x for { x := v.Args[0] @@ -64131,7 +57455,6 @@ func rewriteValueAMD64_OpTrunc64to16_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 x) - // cond: // result: x for { x := v.Args[0] @@ -64143,7 +57466,6 @@ func rewriteValueAMD64_OpTrunc64to32_0(v *Value) bool { } func rewriteValueAMD64_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 x) - // cond: // result: x for { x := v.Args[0] @@ -64155,7 +57477,6 @@ func rewriteValueAMD64_OpTrunc64to8_0(v *Value) bool { } func rewriteValueAMD64_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -64172,7 +57493,6 @@ func rewriteValueAMD64_OpWB_0(v *Value) bool { } func rewriteValueAMD64_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -64185,7 +57505,6 @@ func rewriteValueAMD64_OpXor16_0(v *Value) bool { } func rewriteValueAMD64_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -64198,7 +57517,6 @@ func rewriteValueAMD64_OpXor32_0(v *Value) bool { } func rewriteValueAMD64_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (XORQ x y) for { y := v.Args[1] @@ -64211,7 +57529,6 @@ func rewriteValueAMD64_OpXor64_0(v *Value) bool { } func rewriteValueAMD64_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XORL x y) for { y := v.Args[1] @@ -64226,7 +57543,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -64239,7 +57555,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [1] destptr mem) - // cond: // result: (MOVBstoreconst [0] destptr mem) for { if v.AuxInt != 1 { @@ -64254,7 +57569,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [2] destptr mem) - // cond: // result: (MOVWstoreconst [0] destptr mem) for { if v.AuxInt != 2 { @@ -64269,7 +57583,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [4] destptr mem) - // cond: // result: (MOVLstoreconst [0] destptr mem) for { if v.AuxInt != 4 { @@ -64284,7 +57597,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [8] destptr mem) - // cond: // result: (MOVQstoreconst [0] destptr mem) for { if v.AuxInt != 8 { @@ -64299,7 +57611,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [3] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,2)] destptr (MOVWstoreconst [0] destptr mem)) for { if v.AuxInt != 3 { @@ -64318,7 +57629,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [5] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 5 { @@ -64337,7 +57647,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [6] destptr mem) - // cond: // result: (MOVWstoreconst [makeValAndOff(0,4)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 6 { @@ -64356,7 +57665,6 @@ func rewriteValueAMD64_OpZero_0(v *Value) bool { return true } // match: (Zero [7] destptr mem) - // cond: // result: (MOVLstoreconst [makeValAndOff(0,3)] destptr (MOVLstoreconst [0] destptr mem)) for { if v.AuxInt != 7 { @@ -64732,7 +58040,6 @@ func rewriteValueAMD64_OpZero_20(v *Value) bool { } func rewriteValueAMD64_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVWQZX x) for { x := v.Args[0] @@ -64743,7 +58050,6 @@ func rewriteValueAMD64_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueAMD64_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 x) - // cond: // result: (MOVWQZX x) for { x := v.Args[0] @@ -64754,7 +58060,6 @@ func rewriteValueAMD64_OpZeroExt16to64_0(v *Value) bool { } func rewriteValueAMD64_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 x) - // cond: // result: (MOVLQZX x) for { x := v.Args[0] @@ -64765,7 +58070,6 @@ func rewriteValueAMD64_OpZeroExt32to64_0(v *Value) bool { } func rewriteValueAMD64_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBQZX x) for { x := v.Args[0] @@ -64776,7 +58080,6 @@ func rewriteValueAMD64_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueAMD64_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBQZX x) for { x := v.Args[0] @@ -64787,7 +58090,6 @@ func rewriteValueAMD64_OpZeroExt8to32_0(v *Value) bool { } func rewriteValueAMD64_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 x) - // cond: // result: (MOVBQZX x) for { x := v.Args[0] @@ -64812,13 +58114,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVLconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64UGE @@ -64841,13 +58137,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVLconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64UGE @@ -64869,13 +58159,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVQconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVQconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64UGE @@ -64898,13 +58182,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVQconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVQconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64UGE @@ -64998,17 +58276,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -65030,17 +58302,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -65061,17 +58327,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -65093,17 +58353,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -65124,17 +58378,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -65156,17 +58404,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -65187,17 +58429,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -65219,17 +58455,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -65250,10 +58480,7 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -65275,10 +58502,7 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -65299,10 +58523,7 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -65324,10 +58545,7 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -65343,7 +58561,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -65353,7 +58570,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -65362,7 +58578,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -65372,7 +58587,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -65382,7 +58596,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -65392,7 +58605,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (EQ (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -65403,7 +58615,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64GE: // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -65413,7 +58624,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -65422,7 +58632,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -65432,7 +58641,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -65442,7 +58650,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -65451,7 +58658,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -65461,7 +58667,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64GT: // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -65471,7 +58676,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -65481,7 +58685,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -65491,7 +58694,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -65501,7 +58703,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -65510,7 +58711,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (GT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -65520,7 +58720,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockIf: // match: (If (SETL cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpAMD64SETL { cmp := v.Args[0] @@ -65530,7 +58729,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETLE cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpAMD64SETLE { cmp := v.Args[0] @@ -65540,7 +58738,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETG cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpAMD64SETG { cmp := v.Args[0] @@ -65550,7 +58747,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETGE cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpAMD64SETGE { cmp := v.Args[0] @@ -65560,7 +58756,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETEQ cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpAMD64SETEQ { cmp := v.Args[0] @@ -65570,7 +58765,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETNE cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpAMD64SETNE { cmp := v.Args[0] @@ -65580,7 +58774,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETB cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpAMD64SETB { cmp := v.Args[0] @@ -65590,7 +58783,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETBE cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpAMD64SETBE { cmp := v.Args[0] @@ -65600,7 +58792,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETA cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64SETA { cmp := v.Args[0] @@ -65610,7 +58801,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETAE cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64SETAE { cmp := v.Args[0] @@ -65620,7 +58810,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETO cmp) yes no) - // cond: // result: (OS cmp yes no) for v.Op == OpAMD64SETO { cmp := v.Args[0] @@ -65630,7 +58819,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETGF cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64SETGF { cmp := v.Args[0] @@ -65640,7 +58828,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETGEF cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64SETGEF { cmp := v.Args[0] @@ -65650,7 +58837,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETEQF cmp) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == OpAMD64SETEQF { cmp := v.Args[0] @@ -65660,7 +58846,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If (SETNEF cmp) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == OpAMD64SETNEF { cmp := v.Args[0] @@ -65670,7 +58855,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NE (TESTB cond cond) yes no) for { cond := b.Control @@ -65684,7 +58868,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64LE: // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -65694,7 +58877,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -65703,7 +58885,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -65712,7 +58893,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -65721,7 +58901,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -65731,7 +58910,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -65742,7 +58920,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64LT: // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -65752,7 +58929,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -65762,7 +58938,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -65771,7 +58946,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -65780,7 +58954,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -65790,7 +58963,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (LT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -65801,7 +58973,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64NE: // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65811,10 +58982,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETL { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETL || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64LT @@ -65823,7 +58991,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65833,10 +59000,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETL { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETL || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64LT @@ -65845,7 +59009,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65855,10 +59018,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETLE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETLE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64LE @@ -65867,7 +59027,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65877,10 +59036,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETLE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETLE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64LE @@ -65889,7 +59045,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65899,10 +59054,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETG { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETG || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64GT @@ -65911,7 +59063,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65921,10 +59072,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETG { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETG || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64GT @@ -65933,7 +59081,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65943,10 +59090,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64GE @@ -65955,7 +59099,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65965,10 +59108,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64GE @@ -65977,7 +59117,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -65987,10 +59126,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETEQ { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETEQ || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64EQ @@ -65999,7 +59135,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66009,10 +59144,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETEQ { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETEQ || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64EQ @@ -66021,7 +59153,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66031,10 +59162,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETNE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETNE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64NE @@ -66043,7 +59171,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66053,10 +59180,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETNE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETNE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64NE @@ -66065,7 +59189,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66075,10 +59198,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETB { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETB || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64ULT @@ -66087,7 +59207,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66097,10 +59216,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETB { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETB || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64ULT @@ -66109,7 +59225,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66119,10 +59234,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETBE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETBE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64ULE @@ -66131,7 +59243,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66141,10 +59252,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETBE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETBE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64ULE @@ -66153,7 +59261,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66163,10 +59270,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETA { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETA || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGT @@ -66175,7 +59279,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66185,10 +59288,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETA { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETA || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGT @@ -66197,7 +59297,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66207,10 +59306,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETAE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETAE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGE @@ -66219,7 +59315,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66229,10 +59324,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETAE { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETAE || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGE @@ -66241,7 +59333,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) - // cond: // result: (OS cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66251,10 +59342,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETO { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETO || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64OS @@ -66263,7 +59351,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) - // cond: // result: (OS cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66273,10 +59360,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETO { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETO || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64OS @@ -66295,13 +59379,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVLconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVLconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64ULT @@ -66324,13 +59402,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVLconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVLconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64ULT @@ -66352,13 +59424,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpAMD64MOVQconst { - break - } - if v_0_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_0_0.Op != OpAMD64MOVQconst || v_0_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64ULT @@ -66381,13 +59447,7 @@ func rewriteBlockAMD64(b *Block) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpAMD64MOVQconst { - break - } - if v_1_0.AuxInt != 1 { - break - } - if !(!config.nacl) { + if v_1_0.Op != OpAMD64MOVQconst || v_1_0.AuxInt != 1 || !(!config.nacl) { break } b.Kind = BlockAMD64ULT @@ -66481,17 +59541,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -66513,17 +59567,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHLQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHLQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -66544,17 +59592,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -66576,17 +59618,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHLLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHLLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHRQconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHRQconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -66607,17 +59643,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -66639,17 +59669,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLQconst { - break - } - if z1_0.AuxInt != 63 { + if z1_0.Op != OpAMD64SHLQconst || z1_0.AuxInt != 63 { break } x := z1_0.Args[0] @@ -66670,17 +59694,11 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -66702,17 +59720,11 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } z1_0 := z1.Args[0] - if z1_0.Op != OpAMD64SHLLconst { - break - } - if z1_0.AuxInt != 31 { + if z1_0.Op != OpAMD64SHLLconst || z1_0.AuxInt != 31 { break } x := z1_0.Args[0] @@ -66733,10 +59745,7 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -66758,10 +59767,7 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRQconst { - break - } - if z1.AuxInt != 63 { + if z1.Op != OpAMD64SHRQconst || z1.AuxInt != 63 { break } x := z1.Args[0] @@ -66782,10 +59788,7 @@ func rewriteBlockAMD64(b *Block) bool { for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -66807,10 +59810,7 @@ func rewriteBlockAMD64(b *Block) bool { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] - if z1.Op != OpAMD64SHRLconst { - break - } - if z1.AuxInt != 31 { + if z1.Op != OpAMD64SHRLconst || z1.AuxInt != 31 { break } x := z1.Args[0] @@ -66826,7 +59826,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66836,10 +59835,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGT @@ -66848,7 +59844,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66858,10 +59853,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGT @@ -66870,7 +59862,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66880,10 +59871,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGEF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGE @@ -66892,7 +59880,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66902,10 +59889,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETGEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETGEF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64UGE @@ -66914,7 +59898,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66924,10 +59907,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETEQF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETEQF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64EQF @@ -66936,7 +59916,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) - // cond: // result: (EQF cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66946,10 +59925,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETEQF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETEQF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64EQF @@ -66958,7 +59934,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66968,10 +59943,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETNEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETNEF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64NEF @@ -66980,7 +59952,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) - // cond: // result: (NEF cmp yes no) for v.Op == OpAMD64TESTB { _ = v.Args[1] @@ -66990,10 +59961,7 @@ func rewriteBlockAMD64(b *Block) bool { } cmp := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpAMD64SETNEF { - break - } - if cmp != v_1.Args[0] { + if v_1.Op != OpAMD64SETNEF || cmp != v_1.Args[0] { break } b.Kind = BlockAMD64NEF @@ -67002,7 +59970,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -67012,7 +59979,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -67022,7 +59988,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -67031,7 +59996,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -67040,7 +60004,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -67049,7 +60012,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (NE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -67059,7 +60021,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64UGE: // match: (UGE (InvertFlags cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -67069,7 +60030,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -67078,7 +60038,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -67088,7 +60047,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -67097,7 +60055,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -67107,7 +60064,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -67117,7 +60073,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64UGT: // match: (UGT (InvertFlags cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -67127,7 +60082,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -67137,7 +60091,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -67147,7 +60100,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -67156,7 +60108,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -67166,7 +60117,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (UGT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -67176,7 +60126,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64ULE: // match: (ULE (InvertFlags cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -67186,7 +60135,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -67195,7 +60143,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -67204,7 +60151,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -67214,7 +60160,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -67223,7 +60168,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst @@ -67234,7 +60178,6 @@ func rewriteBlockAMD64(b *Block) bool { } case BlockAMD64ULT: // match: (ULT (InvertFlags cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] @@ -67244,7 +60187,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst @@ -67254,7 +60196,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst @@ -67263,7 +60204,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst @@ -67273,7 +60213,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst @@ -67282,7 +60221,6 @@ func rewriteBlockAMD64(b *Block) bool { return true } // match: (ULT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go b/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go index 2cccc8d4a1..a7aa51268d 100644 --- a/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go +++ b/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go @@ -28,7 +28,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPBconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPBconstload {sym} [vo] ptr mem) - // cond: // result: (CMPBconst (MOVBload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -50,7 +49,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPBload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPBload {sym} [off] ptr x mem) - // cond: // result: (CMPB (MOVBload {sym} [off] ptr mem) x) for { off := v.AuxInt @@ -73,7 +71,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPLconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPLconstload {sym} [vo] ptr mem) - // cond: // result: (CMPLconst (MOVLload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -95,7 +92,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPLload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPLload {sym} [off] ptr x mem) - // cond: // result: (CMPL (MOVLload {sym} [off] ptr mem) x) for { off := v.AuxInt @@ -118,7 +114,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPQconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPQconstload {sym} [vo] ptr mem) - // cond: // result: (CMPQconst (MOVQload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -140,7 +135,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPQload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPQload {sym} [off] ptr x mem) - // cond: // result: (CMPQ (MOVQload {sym} [off] ptr mem) x) for { off := v.AuxInt @@ -163,7 +157,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPWconstload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPWconstload {sym} [vo] ptr mem) - // cond: // result: (CMPWconst (MOVWload {sym} [offOnly(vo)] ptr mem) [valOnly(vo)]) for { vo := v.AuxInt @@ -185,7 +178,6 @@ func rewriteValueAMD64splitload_OpAMD64CMPWload_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (CMPWload {sym} [off] ptr x mem) - // cond: // result: (CMPW (MOVWload {sym} [off] ptr mem) x) for { off := v.AuxInt diff --git a/src/cmd/compile/internal/ssa/rewriteARM.go b/src/cmd/compile/internal/ssa/rewriteARM.go index 78227c1b1f..a192556059 100644 --- a/src/cmd/compile/internal/ssa/rewriteARM.go +++ b/src/cmd/compile/internal/ssa/rewriteARM.go @@ -839,7 +839,6 @@ func rewriteValueARM(v *Value) bool { } func rewriteValueARM_OpARMADC_0(v *Value) bool { // match: (ADC (MOVWconst [c]) x flags) - // cond: // result: (ADCconst [c] x flags) for { flags := v.Args[2] @@ -856,7 +855,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC x (MOVWconst [c]) flags) - // cond: // result: (ADCconst [c] x flags) for { flags := v.Args[2] @@ -873,7 +871,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC x (MOVWconst [c]) flags) - // cond: // result: (ADCconst [c] x flags) for { flags := v.Args[2] @@ -890,7 +887,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC (MOVWconst [c]) x flags) - // cond: // result: (ADCconst [c] x flags) for { flags := v.Args[2] @@ -907,7 +903,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC x (SLLconst [c] y) flags) - // cond: // result: (ADCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -926,7 +921,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC (SLLconst [c] y) x flags) - // cond: // result: (ADCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -945,7 +939,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC (SLLconst [c] y) x flags) - // cond: // result: (ADCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -964,7 +957,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC x (SLLconst [c] y) flags) - // cond: // result: (ADCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -983,7 +975,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC x (SRLconst [c] y) flags) - // cond: // result: (ADCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -1002,7 +993,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { return true } // match: (ADC (SRLconst [c] y) x flags) - // cond: // result: (ADCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -1024,7 +1014,6 @@ func rewriteValueARM_OpARMADC_0(v *Value) bool { } func rewriteValueARM_OpARMADC_10(v *Value) bool { // match: (ADC (SRLconst [c] y) x flags) - // cond: // result: (ADCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -1043,7 +1032,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC x (SRLconst [c] y) flags) - // cond: // result: (ADCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -1062,7 +1050,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC x (SRAconst [c] y) flags) - // cond: // result: (ADCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -1081,7 +1068,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC (SRAconst [c] y) x flags) - // cond: // result: (ADCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -1100,7 +1086,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC (SRAconst [c] y) x flags) - // cond: // result: (ADCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -1119,7 +1104,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC x (SRAconst [c] y) flags) - // cond: // result: (ADCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -1138,7 +1122,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC x (SLL y z) flags) - // cond: // result: (ADCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -1157,7 +1140,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC (SLL y z) x flags) - // cond: // result: (ADCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -1176,7 +1158,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC (SLL y z) x flags) - // cond: // result: (ADCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -1195,7 +1176,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { return true } // match: (ADC x (SLL y z) flags) - // cond: // result: (ADCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -1217,7 +1197,6 @@ func rewriteValueARM_OpARMADC_10(v *Value) bool { } func rewriteValueARM_OpARMADC_20(v *Value) bool { // match: (ADC x (SRL y z) flags) - // cond: // result: (ADCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -1236,7 +1215,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC (SRL y z) x flags) - // cond: // result: (ADCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -1255,7 +1233,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC (SRL y z) x flags) - // cond: // result: (ADCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -1274,7 +1251,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC x (SRL y z) flags) - // cond: // result: (ADCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -1293,7 +1269,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC x (SRA y z) flags) - // cond: // result: (ADCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -1312,7 +1287,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC (SRA y z) x flags) - // cond: // result: (ADCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -1331,7 +1305,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC (SRA y z) x flags) - // cond: // result: (ADCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -1350,7 +1323,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { return true } // match: (ADC x (SRA y z) flags) - // cond: // result: (ADCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -1372,7 +1344,6 @@ func rewriteValueARM_OpARMADC_20(v *Value) bool { } func rewriteValueARM_OpARMADCconst_0(v *Value) bool { // match: (ADCconst [c] (ADDconst [d] x) flags) - // cond: // result: (ADCconst [int64(int32(c+d))] x flags) for { c := v.AuxInt @@ -1390,7 +1361,6 @@ func rewriteValueARM_OpARMADCconst_0(v *Value) bool { return true } // match: (ADCconst [c] (SUBconst [d] x) flags) - // cond: // result: (ADCconst [int64(int32(c-d))] x flags) for { c := v.AuxInt @@ -1412,7 +1382,6 @@ func rewriteValueARM_OpARMADCconst_0(v *Value) bool { func rewriteValueARM_OpARMADCshiftLL_0(v *Value) bool { b := v.Block // match: (ADCshiftLL (MOVWconst [c]) x [d] flags) - // cond: // result: (ADCconst [c] (SLLconst x [d]) flags) for { d := v.AuxInt @@ -1433,7 +1402,6 @@ func rewriteValueARM_OpARMADCshiftLL_0(v *Value) bool { return true } // match: (ADCshiftLL x (MOVWconst [c]) [d] flags) - // cond: // result: (ADCconst x [int64(int32(uint32(c)< x y) flags) for { flags := v.Args[3] @@ -1476,7 +1443,6 @@ func rewriteValueARM_OpARMADCshiftLLreg_0(v *Value) bool { return true } // match: (ADCshiftLLreg x y (MOVWconst [c]) flags) - // cond: // result: (ADCshiftLL x y [c] flags) for { flags := v.Args[3] @@ -1499,7 +1465,6 @@ func rewriteValueARM_OpARMADCshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMADCshiftRA_0(v *Value) bool { b := v.Block // match: (ADCshiftRA (MOVWconst [c]) x [d] flags) - // cond: // result: (ADCconst [c] (SRAconst x [d]) flags) for { d := v.AuxInt @@ -1520,7 +1485,6 @@ func rewriteValueARM_OpARMADCshiftRA_0(v *Value) bool { return true } // match: (ADCshiftRA x (MOVWconst [c]) [d] flags) - // cond: // result: (ADCconst x [int64(int32(c)>>uint64(d))] flags) for { d := v.AuxInt @@ -1542,7 +1506,6 @@ func rewriteValueARM_OpARMADCshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMADCshiftRAreg_0(v *Value) bool { b := v.Block // match: (ADCshiftRAreg (MOVWconst [c]) x y flags) - // cond: // result: (ADCconst [c] (SRA x y) flags) for { flags := v.Args[3] @@ -1563,7 +1526,6 @@ func rewriteValueARM_OpARMADCshiftRAreg_0(v *Value) bool { return true } // match: (ADCshiftRAreg x y (MOVWconst [c]) flags) - // cond: // result: (ADCshiftRA x y [c] flags) for { flags := v.Args[3] @@ -1586,7 +1548,6 @@ func rewriteValueARM_OpARMADCshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMADCshiftRL_0(v *Value) bool { b := v.Block // match: (ADCshiftRL (MOVWconst [c]) x [d] flags) - // cond: // result: (ADCconst [c] (SRLconst x [d]) flags) for { d := v.AuxInt @@ -1607,7 +1568,6 @@ func rewriteValueARM_OpARMADCshiftRL_0(v *Value) bool { return true } // match: (ADCshiftRL x (MOVWconst [c]) [d] flags) - // cond: // result: (ADCconst x [int64(int32(uint32(c)>>uint64(d)))] flags) for { d := v.AuxInt @@ -1629,7 +1589,6 @@ func rewriteValueARM_OpARMADCshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMADCshiftRLreg_0(v *Value) bool { b := v.Block // match: (ADCshiftRLreg (MOVWconst [c]) x y flags) - // cond: // result: (ADCconst [c] (SRL x y) flags) for { flags := v.Args[3] @@ -1650,7 +1609,6 @@ func rewriteValueARM_OpARMADCshiftRLreg_0(v *Value) bool { return true } // match: (ADCshiftRLreg x y (MOVWconst [c]) flags) - // cond: // result: (ADCshiftRL x y [c] flags) for { flags := v.Args[3] @@ -1672,7 +1630,6 @@ func rewriteValueARM_OpARMADCshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMADD_0(v *Value) bool { // match: (ADD x (MOVWconst [c])) - // cond: // result: (ADDconst [c] x) for { _ = v.Args[1] @@ -1688,7 +1645,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD (MOVWconst [c]) x) - // cond: // result: (ADDconst [c] x) for { x := v.Args[1] @@ -1703,7 +1659,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD x (SLLconst [c] y)) - // cond: // result: (ADDshiftLL x y [c]) for { _ = v.Args[1] @@ -1721,7 +1676,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD (SLLconst [c] y) x) - // cond: // result: (ADDshiftLL x y [c]) for { x := v.Args[1] @@ -1738,7 +1692,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD x (SRLconst [c] y)) - // cond: // result: (ADDshiftRL x y [c]) for { _ = v.Args[1] @@ -1756,7 +1709,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD (SRLconst [c] y) x) - // cond: // result: (ADDshiftRL x y [c]) for { x := v.Args[1] @@ -1773,7 +1725,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD x (SRAconst [c] y)) - // cond: // result: (ADDshiftRA x y [c]) for { _ = v.Args[1] @@ -1791,7 +1742,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD (SRAconst [c] y) x) - // cond: // result: (ADDshiftRA x y [c]) for { x := v.Args[1] @@ -1808,7 +1758,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD x (SLL y z)) - // cond: // result: (ADDshiftLLreg x y z) for { _ = v.Args[1] @@ -1826,7 +1775,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { return true } // match: (ADD (SLL y z) x) - // cond: // result: (ADDshiftLLreg x y z) for { x := v.Args[1] @@ -1847,7 +1795,6 @@ func rewriteValueARM_OpARMADD_0(v *Value) bool { func rewriteValueARM_OpARMADD_10(v *Value) bool { b := v.Block // match: (ADD x (SRL y z)) - // cond: // result: (ADDshiftRLreg x y z) for { _ = v.Args[1] @@ -1865,7 +1812,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (SRL y z) x) - // cond: // result: (ADDshiftRLreg x y z) for { x := v.Args[1] @@ -1882,7 +1828,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD x (SRA y z)) - // cond: // result: (ADDshiftRAreg x y z) for { _ = v.Args[1] @@ -1900,7 +1845,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (SRA y z) x) - // cond: // result: (ADDshiftRAreg x y z) for { x := v.Args[1] @@ -1917,16 +1861,12 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD x (RSBconst [0] y)) - // cond: // result: (SUB x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMRSBconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMRSBconst || v_1.AuxInt != 0 { break } y := v_1.Args[0] @@ -1936,15 +1876,11 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (RSBconst [0] y) x) - // cond: // result: (SUB x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMRSBconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARMRSBconst || v_0.AuxInt != 0 { break } y := v_0.Args[0] @@ -1954,7 +1890,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (RSBconst [c] x) (RSBconst [d] y)) - // cond: // result: (RSBconst [c+d] (ADD x y)) for { t := v.Type @@ -1980,7 +1915,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (RSBconst [d] y) (RSBconst [c] x)) - // cond: // result: (RSBconst [c+d] (ADD x y)) for { t := v.Type @@ -2006,7 +1940,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD (MUL x y) a) - // cond: // result: (MULA x y a) for { a := v.Args[1] @@ -2023,7 +1956,6 @@ func rewriteValueARM_OpARMADD_10(v *Value) bool { return true } // match: (ADD a (MUL x y)) - // cond: // result: (MULA x y a) for { _ = v.Args[1] @@ -2214,7 +2146,6 @@ func rewriteValueARM_OpARMADDF_0(v *Value) bool { } func rewriteValueARM_OpARMADDS_0(v *Value) bool { // match: (ADDS x (MOVWconst [c])) - // cond: // result: (ADDSconst [c] x) for { _ = v.Args[1] @@ -2230,7 +2161,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS (MOVWconst [c]) x) - // cond: // result: (ADDSconst [c] x) for { x := v.Args[1] @@ -2245,7 +2175,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS x (SLLconst [c] y)) - // cond: // result: (ADDSshiftLL x y [c]) for { _ = v.Args[1] @@ -2263,7 +2192,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS (SLLconst [c] y) x) - // cond: // result: (ADDSshiftLL x y [c]) for { x := v.Args[1] @@ -2280,7 +2208,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS x (SRLconst [c] y)) - // cond: // result: (ADDSshiftRL x y [c]) for { _ = v.Args[1] @@ -2298,7 +2225,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS (SRLconst [c] y) x) - // cond: // result: (ADDSshiftRL x y [c]) for { x := v.Args[1] @@ -2315,7 +2241,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS x (SRAconst [c] y)) - // cond: // result: (ADDSshiftRA x y [c]) for { _ = v.Args[1] @@ -2333,7 +2258,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS (SRAconst [c] y) x) - // cond: // result: (ADDSshiftRA x y [c]) for { x := v.Args[1] @@ -2350,7 +2274,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS x (SLL y z)) - // cond: // result: (ADDSshiftLLreg x y z) for { _ = v.Args[1] @@ -2368,7 +2291,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { return true } // match: (ADDS (SLL y z) x) - // cond: // result: (ADDSshiftLLreg x y z) for { x := v.Args[1] @@ -2388,7 +2310,6 @@ func rewriteValueARM_OpARMADDS_0(v *Value) bool { } func rewriteValueARM_OpARMADDS_10(v *Value) bool { // match: (ADDS x (SRL y z)) - // cond: // result: (ADDSshiftRLreg x y z) for { _ = v.Args[1] @@ -2406,7 +2327,6 @@ func rewriteValueARM_OpARMADDS_10(v *Value) bool { return true } // match: (ADDS (SRL y z) x) - // cond: // result: (ADDSshiftRLreg x y z) for { x := v.Args[1] @@ -2423,7 +2343,6 @@ func rewriteValueARM_OpARMADDS_10(v *Value) bool { return true } // match: (ADDS x (SRA y z)) - // cond: // result: (ADDSshiftRAreg x y z) for { _ = v.Args[1] @@ -2441,7 +2360,6 @@ func rewriteValueARM_OpARMADDS_10(v *Value) bool { return true } // match: (ADDS (SRA y z) x) - // cond: // result: (ADDSshiftRAreg x y z) for { x := v.Args[1] @@ -2462,7 +2380,6 @@ func rewriteValueARM_OpARMADDS_10(v *Value) bool { func rewriteValueARM_OpARMADDSshiftLL_0(v *Value) bool { b := v.Block // match: (ADDSshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (ADDSconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -2481,7 +2398,6 @@ func rewriteValueARM_OpARMADDSshiftLL_0(v *Value) bool { return true } // match: (ADDSshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (ADDSconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -2521,7 +2436,6 @@ func rewriteValueARM_OpARMADDSshiftLLreg_0(v *Value) bool { return true } // match: (ADDSshiftLLreg x y (MOVWconst [c])) - // cond: // result: (ADDSshiftLL x y [c]) for { _ = v.Args[2] @@ -2543,7 +2457,6 @@ func rewriteValueARM_OpARMADDSshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMADDSshiftRA_0(v *Value) bool { b := v.Block // match: (ADDSshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (ADDSconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -2562,7 +2475,6 @@ func rewriteValueARM_OpARMADDSshiftRA_0(v *Value) bool { return true } // match: (ADDSshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (ADDSconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -2583,7 +2495,6 @@ func rewriteValueARM_OpARMADDSshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMADDSshiftRAreg_0(v *Value) bool { b := v.Block // match: (ADDSshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (ADDSconst [c] (SRA x y)) for { y := v.Args[2] @@ -2602,7 +2513,6 @@ func rewriteValueARM_OpARMADDSshiftRAreg_0(v *Value) bool { return true } // match: (ADDSshiftRAreg x y (MOVWconst [c])) - // cond: // result: (ADDSshiftRA x y [c]) for { _ = v.Args[2] @@ -2624,7 +2534,6 @@ func rewriteValueARM_OpARMADDSshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMADDSshiftRL_0(v *Value) bool { b := v.Block // match: (ADDSshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (ADDSconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -2643,7 +2552,6 @@ func rewriteValueARM_OpARMADDSshiftRL_0(v *Value) bool { return true } // match: (ADDSshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (ADDSconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -2664,7 +2572,6 @@ func rewriteValueARM_OpARMADDSshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMADDSshiftRLreg_0(v *Value) bool { b := v.Block // match: (ADDSshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (ADDSconst [c] (SRL x y)) for { y := v.Args[2] @@ -2683,7 +2590,6 @@ func rewriteValueARM_OpARMADDSshiftRLreg_0(v *Value) bool { return true } // match: (ADDSshiftRLreg x y (MOVWconst [c])) - // cond: // result: (ADDSshiftRL x y [c]) for { _ = v.Args[2] @@ -2704,7 +2610,6 @@ func rewriteValueARM_OpARMADDSshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMADDconst_0(v *Value) bool { // match: (ADDconst [off1] (MOVWaddr [off2] {sym} ptr)) - // cond: // result: (MOVWaddr [off1+off2] {sym} ptr) for { off1 := v.AuxInt @@ -2722,7 +2627,6 @@ func rewriteValueARM_OpARMADDconst_0(v *Value) bool { return true } // match: (ADDconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -2763,7 +2667,6 @@ func rewriteValueARM_OpARMADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(c+d))]) for { c := v.AuxInt @@ -2777,7 +2680,6 @@ func rewriteValueARM_OpARMADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -2793,7 +2695,6 @@ func rewriteValueARM_OpARMADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [int64(int32(c-d))] x) for { c := v.AuxInt @@ -2809,7 +2710,6 @@ func rewriteValueARM_OpARMADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (RSBconst [d] x)) - // cond: // result: (RSBconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -2830,7 +2730,6 @@ func rewriteValueARM_OpARMADDshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ADDshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -2849,7 +2748,6 @@ func rewriteValueARM_OpARMADDshiftLL_0(v *Value) bool { return true } // match: (ADDshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (ADDconst x [int64(int32(uint32(c)< [8] (BFXU [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMBFXU { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMBFXU || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARMREV16) @@ -2918,34 +2796,16 @@ func rewriteValueARM_OpARMADDshiftLL_0(v *Value) bool { // cond: objabi.GOARM>=6 // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSRLconst { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != 24 { + if v_0.Op != OpARMSRLconst || v_0.Type != typ.UInt16 || v_0.AuxInt != 24 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARMSLLconst { - break - } - if v_0_0.AuxInt != 16 { - break - } - if x != v_0_0.Args[0] { - break - } - if !(objabi.GOARM >= 6) { + if v_0_0.Op != OpARMSLLconst || v_0_0.AuxInt != 16 || x != v_0_0.Args[0] || !(objabi.GOARM >= 6) { break } v.reset(OpARMREV16) @@ -2957,7 +2817,6 @@ func rewriteValueARM_OpARMADDshiftLL_0(v *Value) bool { func rewriteValueARM_OpARMADDshiftLLreg_0(v *Value) bool { b := v.Block // match: (ADDshiftLLreg (MOVWconst [c]) x y) - // cond: // result: (ADDconst [c] (SLL x y)) for { y := v.Args[2] @@ -2976,7 +2835,6 @@ func rewriteValueARM_OpARMADDshiftLLreg_0(v *Value) bool { return true } // match: (ADDshiftLLreg x y (MOVWconst [c])) - // cond: // result: (ADDshiftLL x y [c]) for { _ = v.Args[2] @@ -2998,7 +2856,6 @@ func rewriteValueARM_OpARMADDshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMADDshiftRA_0(v *Value) bool { b := v.Block // match: (ADDshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -3017,7 +2874,6 @@ func rewriteValueARM_OpARMADDshiftRA_0(v *Value) bool { return true } // match: (ADDshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (ADDconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -3038,7 +2894,6 @@ func rewriteValueARM_OpARMADDshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMADDshiftRAreg_0(v *Value) bool { b := v.Block // match: (ADDshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (ADDconst [c] (SRA x y)) for { y := v.Args[2] @@ -3057,7 +2912,6 @@ func rewriteValueARM_OpARMADDshiftRAreg_0(v *Value) bool { return true } // match: (ADDshiftRAreg x y (MOVWconst [c])) - // cond: // result: (ADDshiftRA x y [c]) for { _ = v.Args[2] @@ -3079,7 +2933,6 @@ func rewriteValueARM_OpARMADDshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMADDshiftRL_0(v *Value) bool { b := v.Block // match: (ADDshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -3098,7 +2951,6 @@ func rewriteValueARM_OpARMADDshiftRL_0(v *Value) bool { return true } // match: (ADDshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (ADDconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -3115,19 +2967,12 @@ func rewriteValueARM_OpARMADDshiftRL_0(v *Value) bool { return true } // match: (ADDshiftRL [c] (SLLconst x [32-c]) x) - // cond: // result: (SRRconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSLLconst { - break - } - if v_0.AuxInt != 32-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMSLLconst || v_0.AuxInt != 32-c || x != v_0.Args[0] { break } v.reset(OpARMSRRconst) @@ -3140,7 +2985,6 @@ func rewriteValueARM_OpARMADDshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMADDshiftRLreg_0(v *Value) bool { b := v.Block // match: (ADDshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (ADDconst [c] (SRL x y)) for { y := v.Args[2] @@ -3159,7 +3003,6 @@ func rewriteValueARM_OpARMADDshiftRLreg_0(v *Value) bool { return true } // match: (ADDshiftRLreg x y (MOVWconst [c])) - // cond: // result: (ADDshiftRL x y [c]) for { _ = v.Args[2] @@ -3180,7 +3023,6 @@ func rewriteValueARM_OpARMADDshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMAND_0(v *Value) bool { // match: (AND x (MOVWconst [c])) - // cond: // result: (ANDconst [c] x) for { _ = v.Args[1] @@ -3196,7 +3038,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND (MOVWconst [c]) x) - // cond: // result: (ANDconst [c] x) for { x := v.Args[1] @@ -3211,7 +3052,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND x (SLLconst [c] y)) - // cond: // result: (ANDshiftLL x y [c]) for { _ = v.Args[1] @@ -3229,7 +3069,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND (SLLconst [c] y) x) - // cond: // result: (ANDshiftLL x y [c]) for { x := v.Args[1] @@ -3246,7 +3085,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND x (SRLconst [c] y)) - // cond: // result: (ANDshiftRL x y [c]) for { _ = v.Args[1] @@ -3264,7 +3102,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND (SRLconst [c] y) x) - // cond: // result: (ANDshiftRL x y [c]) for { x := v.Args[1] @@ -3281,7 +3118,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND x (SRAconst [c] y)) - // cond: // result: (ANDshiftRA x y [c]) for { _ = v.Args[1] @@ -3299,7 +3135,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND (SRAconst [c] y) x) - // cond: // result: (ANDshiftRA x y [c]) for { x := v.Args[1] @@ -3316,7 +3151,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND x (SLL y z)) - // cond: // result: (ANDshiftLLreg x y z) for { _ = v.Args[1] @@ -3334,7 +3168,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { return true } // match: (AND (SLL y z) x) - // cond: // result: (ANDshiftLLreg x y z) for { x := v.Args[1] @@ -3354,7 +3187,6 @@ func rewriteValueARM_OpARMAND_0(v *Value) bool { } func rewriteValueARM_OpARMAND_10(v *Value) bool { // match: (AND x (SRL y z)) - // cond: // result: (ANDshiftRLreg x y z) for { _ = v.Args[1] @@ -3372,7 +3204,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND (SRL y z) x) - // cond: // result: (ANDshiftRLreg x y z) for { x := v.Args[1] @@ -3389,7 +3220,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND x (SRA y z)) - // cond: // result: (ANDshiftRAreg x y z) for { _ = v.Args[1] @@ -3407,7 +3237,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND (SRA y z) x) - // cond: // result: (ANDshiftRAreg x y z) for { x := v.Args[1] @@ -3424,7 +3253,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND x x) - // cond: // result: x for { x := v.Args[1] @@ -3437,7 +3265,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND x (MVN y)) - // cond: // result: (BIC x y) for { _ = v.Args[1] @@ -3453,7 +3280,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND (MVN y) x) - // cond: // result: (BIC x y) for { x := v.Args[1] @@ -3468,7 +3294,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND x (MVNshiftLL y [c])) - // cond: // result: (BICshiftLL x y [c]) for { _ = v.Args[1] @@ -3486,7 +3311,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND (MVNshiftLL y [c]) x) - // cond: // result: (BICshiftLL x y [c]) for { x := v.Args[1] @@ -3503,7 +3327,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { return true } // match: (AND x (MVNshiftRL y [c])) - // cond: // result: (BICshiftRL x y [c]) for { _ = v.Args[1] @@ -3524,7 +3347,6 @@ func rewriteValueARM_OpARMAND_10(v *Value) bool { } func rewriteValueARM_OpARMAND_20(v *Value) bool { // match: (AND (MVNshiftRL y [c]) x) - // cond: // result: (BICshiftRL x y [c]) for { x := v.Args[1] @@ -3541,7 +3363,6 @@ func rewriteValueARM_OpARMAND_20(v *Value) bool { return true } // match: (AND x (MVNshiftRA y [c])) - // cond: // result: (BICshiftRA x y [c]) for { _ = v.Args[1] @@ -3559,7 +3380,6 @@ func rewriteValueARM_OpARMAND_20(v *Value) bool { return true } // match: (AND (MVNshiftRA y [c]) x) - // cond: // result: (BICshiftRA x y [c]) for { x := v.Args[1] @@ -3579,7 +3399,6 @@ func rewriteValueARM_OpARMAND_20(v *Value) bool { } func rewriteValueARM_OpARMANDconst_0(v *Value) bool { // match: (ANDconst [0] _) - // cond: // result: (MOVWconst [0]) for { if v.AuxInt != 0 { @@ -3632,7 +3451,6 @@ func rewriteValueARM_OpARMANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c&d]) for { c := v.AuxInt @@ -3646,7 +3464,6 @@ func rewriteValueARM_OpARMANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c&d] x) for { c := v.AuxInt @@ -3666,7 +3483,6 @@ func rewriteValueARM_OpARMANDconst_0(v *Value) bool { func rewriteValueARM_OpARMANDshiftLL_0(v *Value) bool { b := v.Block // match: (ANDshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (ANDconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -3685,7 +3501,6 @@ func rewriteValueARM_OpARMANDshiftLL_0(v *Value) bool { return true } // match: (ANDshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (ANDconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -3748,7 +3559,6 @@ func rewriteValueARM_OpARMANDshiftLLreg_0(v *Value) bool { return true } // match: (ANDshiftLLreg x y (MOVWconst [c])) - // cond: // result: (ANDshiftLL x y [c]) for { _ = v.Args[2] @@ -3770,7 +3580,6 @@ func rewriteValueARM_OpARMANDshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMANDshiftRA_0(v *Value) bool { b := v.Block // match: (ANDshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (ANDconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -3789,7 +3598,6 @@ func rewriteValueARM_OpARMANDshiftRA_0(v *Value) bool { return true } // match: (ANDshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (ANDconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -3817,10 +3625,7 @@ func rewriteValueARM_OpARMANDshiftRA_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -3833,7 +3638,6 @@ func rewriteValueARM_OpARMANDshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMANDshiftRAreg_0(v *Value) bool { b := v.Block // match: (ANDshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (ANDconst [c] (SRA x y)) for { y := v.Args[2] @@ -3852,7 +3656,6 @@ func rewriteValueARM_OpARMANDshiftRAreg_0(v *Value) bool { return true } // match: (ANDshiftRAreg x y (MOVWconst [c])) - // cond: // result: (ANDshiftRA x y [c]) for { _ = v.Args[2] @@ -3874,7 +3677,6 @@ func rewriteValueARM_OpARMANDshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMANDshiftRL_0(v *Value) bool { b := v.Block // match: (ANDshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (ANDconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -3893,7 +3695,6 @@ func rewriteValueARM_OpARMANDshiftRL_0(v *Value) bool { return true } // match: (ANDshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (ANDconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -3921,10 +3722,7 @@ func rewriteValueARM_OpARMANDshiftRL_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -3937,7 +3735,6 @@ func rewriteValueARM_OpARMANDshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMANDshiftRLreg_0(v *Value) bool { b := v.Block // match: (ANDshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (ANDconst [c] (SRL x y)) for { y := v.Args[2] @@ -3956,7 +3753,6 @@ func rewriteValueARM_OpARMANDshiftRLreg_0(v *Value) bool { return true } // match: (ANDshiftRLreg x y (MOVWconst [c])) - // cond: // result: (ANDshiftRL x y [c]) for { _ = v.Args[2] @@ -3977,7 +3773,6 @@ func rewriteValueARM_OpARMANDshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMBFX_0(v *Value) bool { // match: (BFX [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(d)<<(32-uint32(c&0xff)-uint32(c>>8))>>(32-uint32(c>>8)))]) for { c := v.AuxInt @@ -3994,7 +3789,6 @@ func rewriteValueARM_OpARMBFX_0(v *Value) bool { } func rewriteValueARM_OpARMBFXU_0(v *Value) bool { // match: (BFXU [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(uint32(d)<<(32-uint32(c&0xff)-uint32(c>>8))>>(32-uint32(c>>8))))]) for { c := v.AuxInt @@ -4011,7 +3805,6 @@ func rewriteValueARM_OpARMBFXU_0(v *Value) bool { } func rewriteValueARM_OpARMBIC_0(v *Value) bool { // match: (BIC x (MOVWconst [c])) - // cond: // result: (BICconst [c] x) for { _ = v.Args[1] @@ -4027,7 +3820,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SLLconst [c] y)) - // cond: // result: (BICshiftLL x y [c]) for { _ = v.Args[1] @@ -4045,7 +3837,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SRLconst [c] y)) - // cond: // result: (BICshiftRL x y [c]) for { _ = v.Args[1] @@ -4063,7 +3854,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SRAconst [c] y)) - // cond: // result: (BICshiftRA x y [c]) for { _ = v.Args[1] @@ -4081,7 +3871,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SLL y z)) - // cond: // result: (BICshiftLLreg x y z) for { _ = v.Args[1] @@ -4099,7 +3888,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SRL y z)) - // cond: // result: (BICshiftRLreg x y z) for { _ = v.Args[1] @@ -4117,7 +3905,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x (SRA y z)) - // cond: // result: (BICshiftRAreg x y z) for { _ = v.Args[1] @@ -4135,7 +3922,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { return true } // match: (BIC x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -4150,7 +3936,6 @@ func rewriteValueARM_OpARMBIC_0(v *Value) bool { } func rewriteValueARM_OpARMBICconst_0(v *Value) bool { // match: (BICconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -4203,7 +3988,6 @@ func rewriteValueARM_OpARMBICconst_0(v *Value) bool { return true } // match: (BICconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [d&^c]) for { c := v.AuxInt @@ -4217,7 +4001,6 @@ func rewriteValueARM_OpARMBICconst_0(v *Value) bool { return true } // match: (BICconst [c] (BICconst [d] x)) - // cond: // result: (BICconst [int64(int32(c|d))] x) for { c := v.AuxInt @@ -4236,7 +4019,6 @@ func rewriteValueARM_OpARMBICconst_0(v *Value) bool { } func rewriteValueARM_OpARMBICshiftLL_0(v *Value) bool { // match: (BICshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (BICconst x [int64(int32(uint32(c)<>uint64(d))]) for { d := v.AuxInt @@ -4327,10 +4104,7 @@ func rewriteValueARM_OpARMBICshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -4341,7 +4115,6 @@ func rewriteValueARM_OpARMBICshiftRA_0(v *Value) bool { } func rewriteValueARM_OpARMBICshiftRAreg_0(v *Value) bool { // match: (BICshiftRAreg x y (MOVWconst [c])) - // cond: // result: (BICshiftRA x y [c]) for { _ = v.Args[2] @@ -4362,7 +4135,6 @@ func rewriteValueARM_OpARMBICshiftRAreg_0(v *Value) bool { } func rewriteValueARM_OpARMBICshiftRL_0(v *Value) bool { // match: (BICshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (BICconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -4390,10 +4162,7 @@ func rewriteValueARM_OpARMBICshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -4404,7 +4173,6 @@ func rewriteValueARM_OpARMBICshiftRL_0(v *Value) bool { } func rewriteValueARM_OpARMBICshiftRLreg_0(v *Value) bool { // match: (BICshiftRLreg x y (MOVWconst [c])) - // cond: // result: (BICshiftRL x y [c]) for { _ = v.Args[2] @@ -4425,7 +4193,6 @@ func rewriteValueARM_OpARMBICshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMCMN_0(v *Value) bool { // match: (CMN x (MOVWconst [c])) - // cond: // result: (CMNconst [c] x) for { _ = v.Args[1] @@ -4441,7 +4208,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN (MOVWconst [c]) x) - // cond: // result: (CMNconst [c] x) for { x := v.Args[1] @@ -4456,7 +4222,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN x (SLLconst [c] y)) - // cond: // result: (CMNshiftLL x y [c]) for { _ = v.Args[1] @@ -4474,7 +4239,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN (SLLconst [c] y) x) - // cond: // result: (CMNshiftLL x y [c]) for { x := v.Args[1] @@ -4491,7 +4255,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN x (SRLconst [c] y)) - // cond: // result: (CMNshiftRL x y [c]) for { _ = v.Args[1] @@ -4509,7 +4272,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN (SRLconst [c] y) x) - // cond: // result: (CMNshiftRL x y [c]) for { x := v.Args[1] @@ -4526,7 +4288,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN x (SRAconst [c] y)) - // cond: // result: (CMNshiftRA x y [c]) for { _ = v.Args[1] @@ -4544,7 +4305,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN (SRAconst [c] y) x) - // cond: // result: (CMNshiftRA x y [c]) for { x := v.Args[1] @@ -4561,7 +4321,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN x (SLL y z)) - // cond: // result: (CMNshiftLLreg x y z) for { _ = v.Args[1] @@ -4579,7 +4338,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { return true } // match: (CMN (SLL y z) x) - // cond: // result: (CMNshiftLLreg x y z) for { x := v.Args[1] @@ -4599,7 +4357,6 @@ func rewriteValueARM_OpARMCMN_0(v *Value) bool { } func rewriteValueARM_OpARMCMN_10(v *Value) bool { // match: (CMN x (SRL y z)) - // cond: // result: (CMNshiftRLreg x y z) for { _ = v.Args[1] @@ -4617,7 +4374,6 @@ func rewriteValueARM_OpARMCMN_10(v *Value) bool { return true } // match: (CMN (SRL y z) x) - // cond: // result: (CMNshiftRLreg x y z) for { x := v.Args[1] @@ -4634,7 +4390,6 @@ func rewriteValueARM_OpARMCMN_10(v *Value) bool { return true } // match: (CMN x (SRA y z)) - // cond: // result: (CMNshiftRAreg x y z) for { _ = v.Args[1] @@ -4652,7 +4407,6 @@ func rewriteValueARM_OpARMCMN_10(v *Value) bool { return true } // match: (CMN (SRA y z) x) - // cond: // result: (CMNshiftRAreg x y z) for { x := v.Args[1] @@ -4669,16 +4423,12 @@ func rewriteValueARM_OpARMCMN_10(v *Value) bool { return true } // match: (CMN x (RSBconst [0] y)) - // cond: // result: (CMP x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMRSBconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMRSBconst || v_1.AuxInt != 0 { break } y := v_1.Args[0] @@ -4688,15 +4438,11 @@ func rewriteValueARM_OpARMCMN_10(v *Value) bool { return true } // match: (CMN (RSBconst [0] y) x) - // cond: // result: (CMP x y) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMRSBconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARMRSBconst || v_0.AuxInt != 0 { break } y := v_0.Args[0] @@ -4793,7 +4539,6 @@ func rewriteValueARM_OpARMCMNconst_0(v *Value) bool { func rewriteValueARM_OpARMCMNshiftLL_0(v *Value) bool { b := v.Block // match: (CMNshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (CMNconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -4812,7 +4557,6 @@ func rewriteValueARM_OpARMCMNshiftLL_0(v *Value) bool { return true } // match: (CMNshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (CMNconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -4852,7 +4595,6 @@ func rewriteValueARM_OpARMCMNshiftLLreg_0(v *Value) bool { return true } // match: (CMNshiftLLreg x y (MOVWconst [c])) - // cond: // result: (CMNshiftLL x y [c]) for { _ = v.Args[2] @@ -4874,7 +4616,6 @@ func rewriteValueARM_OpARMCMNshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMCMNshiftRA_0(v *Value) bool { b := v.Block // match: (CMNshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (CMNconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -4893,7 +4634,6 @@ func rewriteValueARM_OpARMCMNshiftRA_0(v *Value) bool { return true } // match: (CMNshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (CMNconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -4914,7 +4654,6 @@ func rewriteValueARM_OpARMCMNshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMCMNshiftRAreg_0(v *Value) bool { b := v.Block // match: (CMNshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (CMNconst [c] (SRA x y)) for { y := v.Args[2] @@ -4933,7 +4672,6 @@ func rewriteValueARM_OpARMCMNshiftRAreg_0(v *Value) bool { return true } // match: (CMNshiftRAreg x y (MOVWconst [c])) - // cond: // result: (CMNshiftRA x y [c]) for { _ = v.Args[2] @@ -4955,7 +4693,6 @@ func rewriteValueARM_OpARMCMNshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMCMNshiftRL_0(v *Value) bool { b := v.Block // match: (CMNshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (CMNconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -4974,7 +4711,6 @@ func rewriteValueARM_OpARMCMNshiftRL_0(v *Value) bool { return true } // match: (CMNshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (CMNconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -4995,7 +4731,6 @@ func rewriteValueARM_OpARMCMNshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMCMNshiftRLreg_0(v *Value) bool { b := v.Block // match: (CMNshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (CMNconst [c] (SRL x y)) for { y := v.Args[2] @@ -5014,7 +4749,6 @@ func rewriteValueARM_OpARMCMNshiftRLreg_0(v *Value) bool { return true } // match: (CMNshiftRLreg x y (MOVWconst [c])) - // cond: // result: (CMNshiftRL x y [c]) for { _ = v.Args[2] @@ -5035,7 +4769,6 @@ func rewriteValueARM_OpARMCMNshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { // match: (CMOVWHSconst _ (FlagEQ) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5049,7 +4782,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { return true } // match: (CMOVWHSconst x (FlagLT_ULT)) - // cond: // result: x for { _ = v.Args[1] @@ -5064,7 +4796,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { return true } // match: (CMOVWHSconst _ (FlagLT_UGT) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5078,7 +4809,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { return true } // match: (CMOVWHSconst x (FlagGT_ULT)) - // cond: // result: x for { _ = v.Args[1] @@ -5093,7 +4823,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { return true } // match: (CMOVWHSconst _ (FlagGT_UGT) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5107,7 +4836,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { return true } // match: (CMOVWHSconst x (InvertFlags flags) [c]) - // cond: // result: (CMOVWLSconst x flags [c]) for { c := v.AuxInt @@ -5128,7 +4856,6 @@ func rewriteValueARM_OpARMCMOVWHSconst_0(v *Value) bool { } func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { // match: (CMOVWLSconst _ (FlagEQ) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5142,7 +4869,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { return true } // match: (CMOVWLSconst _ (FlagLT_ULT) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5156,7 +4882,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { return true } // match: (CMOVWLSconst x (FlagLT_UGT)) - // cond: // result: x for { _ = v.Args[1] @@ -5171,7 +4896,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { return true } // match: (CMOVWLSconst _ (FlagGT_ULT) [c]) - // cond: // result: (MOVWconst [c]) for { c := v.AuxInt @@ -5185,7 +4909,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { return true } // match: (CMOVWLSconst x (FlagGT_UGT)) - // cond: // result: x for { _ = v.Args[1] @@ -5200,7 +4923,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { return true } // match: (CMOVWLSconst x (InvertFlags flags) [c]) - // cond: // result: (CMOVWHSconst x flags [c]) for { c := v.AuxInt @@ -5222,7 +4944,6 @@ func rewriteValueARM_OpARMCMOVWLSconst_0(v *Value) bool { func rewriteValueARM_OpARMCMP_0(v *Value) bool { b := v.Block // match: (CMP x (MOVWconst [c])) - // cond: // result: (CMPconst [c] x) for { _ = v.Args[1] @@ -5238,7 +4959,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP (MOVWconst [c]) x) - // cond: // result: (InvertFlags (CMPconst [c] x)) for { x := v.Args[1] @@ -5255,7 +4975,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP x (SLLconst [c] y)) - // cond: // result: (CMPshiftLL x y [c]) for { _ = v.Args[1] @@ -5273,7 +4992,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP (SLLconst [c] y) x) - // cond: // result: (InvertFlags (CMPshiftLL x y [c])) for { x := v.Args[1] @@ -5292,7 +5010,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP x (SRLconst [c] y)) - // cond: // result: (CMPshiftRL x y [c]) for { _ = v.Args[1] @@ -5310,7 +5027,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP (SRLconst [c] y) x) - // cond: // result: (InvertFlags (CMPshiftRL x y [c])) for { x := v.Args[1] @@ -5329,7 +5045,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP x (SRAconst [c] y)) - // cond: // result: (CMPshiftRA x y [c]) for { _ = v.Args[1] @@ -5347,7 +5062,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP (SRAconst [c] y) x) - // cond: // result: (InvertFlags (CMPshiftRA x y [c])) for { x := v.Args[1] @@ -5366,7 +5080,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP x (SLL y z)) - // cond: // result: (CMPshiftLLreg x y z) for { _ = v.Args[1] @@ -5384,7 +5097,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { return true } // match: (CMP (SLL y z) x) - // cond: // result: (InvertFlags (CMPshiftLLreg x y z)) for { x := v.Args[1] @@ -5407,7 +5119,6 @@ func rewriteValueARM_OpARMCMP_0(v *Value) bool { func rewriteValueARM_OpARMCMP_10(v *Value) bool { b := v.Block // match: (CMP x (SRL y z)) - // cond: // result: (CMPshiftRLreg x y z) for { _ = v.Args[1] @@ -5425,7 +5136,6 @@ func rewriteValueARM_OpARMCMP_10(v *Value) bool { return true } // match: (CMP (SRL y z) x) - // cond: // result: (InvertFlags (CMPshiftRLreg x y z)) for { x := v.Args[1] @@ -5444,7 +5154,6 @@ func rewriteValueARM_OpARMCMP_10(v *Value) bool { return true } // match: (CMP x (SRA y z)) - // cond: // result: (CMPshiftRAreg x y z) for { _ = v.Args[1] @@ -5462,7 +5171,6 @@ func rewriteValueARM_OpARMCMP_10(v *Value) bool { return true } // match: (CMP (SRA y z) x) - // cond: // result: (InvertFlags (CMPshiftRAreg x y z)) for { x := v.Args[1] @@ -5481,16 +5189,12 @@ func rewriteValueARM_OpARMCMP_10(v *Value) bool { return true } // match: (CMP x (RSBconst [0] y)) - // cond: // result: (CMN x y) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMRSBconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMRSBconst || v_1.AuxInt != 0 { break } y := v_1.Args[0] @@ -5503,16 +5207,12 @@ func rewriteValueARM_OpARMCMP_10(v *Value) bool { } func rewriteValueARM_OpARMCMPD_0(v *Value) bool { // match: (CMPD x (MOVDconst [0])) - // cond: // result: (CMPD0 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMMOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMMOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARMCMPD0) @@ -5523,16 +5223,12 @@ func rewriteValueARM_OpARMCMPD_0(v *Value) bool { } func rewriteValueARM_OpARMCMPF_0(v *Value) bool { // match: (CMPF x (MOVFconst [0])) - // cond: // result: (CMPF0 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMMOVFconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMMOVFconst || v_1.AuxInt != 0 { break } v.reset(OpARMCMPF0) @@ -5628,10 +5324,7 @@ func rewriteValueARM_OpARMCMPconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARMMOVBUreg { - break - } - if !(0xff < c) { + if v_0.Op != OpARMMOVBUreg || !(0xff < c) { break } v.reset(OpARMFlagLT_ULT) @@ -5643,10 +5336,7 @@ func rewriteValueARM_OpARMCMPconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARMMOVHUreg { - break - } - if !(0xffff < c) { + if v_0.Op != OpARMMOVHUreg || !(0xffff < c) { break } v.reset(OpARMFlagLT_ULT) @@ -5689,7 +5379,6 @@ func rewriteValueARM_OpARMCMPconst_0(v *Value) bool { func rewriteValueARM_OpARMCMPshiftLL_0(v *Value) bool { b := v.Block // match: (CMPshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (InvertFlags (CMPconst [c] (SLLconst x [d]))) for { d := v.AuxInt @@ -5710,7 +5399,6 @@ func rewriteValueARM_OpARMCMPshiftLL_0(v *Value) bool { return true } // match: (CMPshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (CMPconst x [int64(int32(uint32(c)< x y))) for { y := v.Args[2] @@ -5752,7 +5439,6 @@ func rewriteValueARM_OpARMCMPshiftLLreg_0(v *Value) bool { return true } // match: (CMPshiftLLreg x y (MOVWconst [c])) - // cond: // result: (CMPshiftLL x y [c]) for { _ = v.Args[2] @@ -5774,7 +5460,6 @@ func rewriteValueARM_OpARMCMPshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMCMPshiftRA_0(v *Value) bool { b := v.Block // match: (CMPshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (InvertFlags (CMPconst [c] (SRAconst x [d]))) for { d := v.AuxInt @@ -5795,7 +5480,6 @@ func rewriteValueARM_OpARMCMPshiftRA_0(v *Value) bool { return true } // match: (CMPshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (CMPconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -5816,7 +5500,6 @@ func rewriteValueARM_OpARMCMPshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMCMPshiftRAreg_0(v *Value) bool { b := v.Block // match: (CMPshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (InvertFlags (CMPconst [c] (SRA x y))) for { y := v.Args[2] @@ -5837,7 +5520,6 @@ func rewriteValueARM_OpARMCMPshiftRAreg_0(v *Value) bool { return true } // match: (CMPshiftRAreg x y (MOVWconst [c])) - // cond: // result: (CMPshiftRA x y [c]) for { _ = v.Args[2] @@ -5859,7 +5541,6 @@ func rewriteValueARM_OpARMCMPshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMCMPshiftRL_0(v *Value) bool { b := v.Block // match: (CMPshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (InvertFlags (CMPconst [c] (SRLconst x [d]))) for { d := v.AuxInt @@ -5880,7 +5561,6 @@ func rewriteValueARM_OpARMCMPshiftRL_0(v *Value) bool { return true } // match: (CMPshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (CMPconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -5901,7 +5581,6 @@ func rewriteValueARM_OpARMCMPshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMCMPshiftRLreg_0(v *Value) bool { b := v.Block // match: (CMPshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (InvertFlags (CMPconst [c] (SRL x y))) for { y := v.Args[2] @@ -5922,7 +5601,6 @@ func rewriteValueARM_OpARMCMPshiftRLreg_0(v *Value) bool { return true } // match: (CMPshiftRLreg x y (MOVWconst [c])) - // cond: // result: (CMPshiftRL x y [c]) for { _ = v.Args[2] @@ -5943,7 +5621,6 @@ func rewriteValueARM_OpARMCMPshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMEqual_0(v *Value) bool { // match: (Equal (FlagEQ)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -5955,7 +5632,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { return true } // match: (Equal (FlagLT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -5967,7 +5643,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { return true } // match: (Equal (FlagLT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -5979,7 +5654,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { return true } // match: (Equal (FlagGT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -5991,7 +5665,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { return true } // match: (Equal (FlagGT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6003,7 +5676,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { return true } // match: (Equal (InvertFlags x)) - // cond: // result: (Equal x) for { v_0 := v.Args[0] @@ -6019,7 +5691,6 @@ func rewriteValueARM_OpARMEqual_0(v *Value) bool { } func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { // match: (GreaterEqual (FlagEQ)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6031,7 +5702,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagLT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6043,7 +5713,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagLT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6055,7 +5724,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagGT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6067,7 +5735,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagGT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6079,7 +5746,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (InvertFlags x)) - // cond: // result: (LessEqual x) for { v_0 := v.Args[0] @@ -6095,7 +5761,6 @@ func rewriteValueARM_OpARMGreaterEqual_0(v *Value) bool { } func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { // match: (GreaterEqualU (FlagEQ)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6107,7 +5772,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagLT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6119,7 +5783,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagLT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6131,7 +5794,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagGT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6143,7 +5805,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagGT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6155,7 +5816,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (InvertFlags x)) - // cond: // result: (LessEqualU x) for { v_0 := v.Args[0] @@ -6171,7 +5831,6 @@ func rewriteValueARM_OpARMGreaterEqualU_0(v *Value) bool { } func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { // match: (GreaterThan (FlagEQ)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6183,7 +5842,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagLT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6195,7 +5853,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagLT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6207,7 +5864,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagGT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6219,7 +5875,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagGT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6231,7 +5886,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (InvertFlags x)) - // cond: // result: (LessThan x) for { v_0 := v.Args[0] @@ -6247,7 +5901,6 @@ func rewriteValueARM_OpARMGreaterThan_0(v *Value) bool { } func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { // match: (GreaterThanU (FlagEQ)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6259,7 +5912,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagLT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6271,7 +5923,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagLT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6283,7 +5934,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagGT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6295,7 +5945,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagGT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6307,7 +5956,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (InvertFlags x)) - // cond: // result: (LessThanU x) for { v_0 := v.Args[0] @@ -6323,7 +5971,6 @@ func rewriteValueARM_OpARMGreaterThanU_0(v *Value) bool { } func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { // match: (LessEqual (FlagEQ)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6335,7 +5982,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagLT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6347,7 +5993,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagLT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6359,7 +6004,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagGT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6371,7 +6015,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagGT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6383,7 +6026,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { return true } // match: (LessEqual (InvertFlags x)) - // cond: // result: (GreaterEqual x) for { v_0 := v.Args[0] @@ -6399,7 +6041,6 @@ func rewriteValueARM_OpARMLessEqual_0(v *Value) bool { } func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { // match: (LessEqualU (FlagEQ)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6411,7 +6052,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagLT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6423,7 +6063,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagLT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6435,7 +6074,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagGT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6447,7 +6085,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagGT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6459,7 +6096,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (InvertFlags x)) - // cond: // result: (GreaterEqualU x) for { v_0 := v.Args[0] @@ -6475,7 +6111,6 @@ func rewriteValueARM_OpARMLessEqualU_0(v *Value) bool { } func rewriteValueARM_OpARMLessThan_0(v *Value) bool { // match: (LessThan (FlagEQ)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6487,7 +6122,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { return true } // match: (LessThan (FlagLT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6499,7 +6133,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { return true } // match: (LessThan (FlagLT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6511,7 +6144,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { return true } // match: (LessThan (FlagGT_ULT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6523,7 +6155,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { return true } // match: (LessThan (FlagGT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6535,7 +6166,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { return true } // match: (LessThan (InvertFlags x)) - // cond: // result: (GreaterThan x) for { v_0 := v.Args[0] @@ -6551,7 +6181,6 @@ func rewriteValueARM_OpARMLessThan_0(v *Value) bool { } func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { // match: (LessThanU (FlagEQ)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6563,7 +6192,6 @@ func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagLT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6575,7 +6203,6 @@ func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagLT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6587,7 +6214,6 @@ func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagGT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -6599,7 +6225,6 @@ func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagGT_UGT)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -6611,7 +6236,6 @@ func rewriteValueARM_OpARMLessThanU_0(v *Value) bool { return true } // match: (LessThanU (InvertFlags x)) - // cond: // result: (GreaterThanU x) for { v_0 := v.Args[0] @@ -6629,7 +6253,6 @@ func rewriteValueARM_OpARMMOVBUload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVBUload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVBUload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -6649,7 +6272,6 @@ func rewriteValueARM_OpARMMOVBUload_0(v *Value) bool { return true } // match: (MOVBUload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVBUload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -6748,10 +6370,7 @@ func rewriteValueARM_OpARMMOVBUload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARMMOVWconst) @@ -6786,7 +6405,6 @@ func rewriteValueARM_OpARMMOVBUloadidx_0(v *Value) bool { return true } // match: (MOVBUloadidx ptr (MOVWconst [c]) mem) - // cond: // result: (MOVBUload [c] ptr mem) for { mem := v.Args[2] @@ -6803,7 +6421,6 @@ func rewriteValueARM_OpARMMOVBUloadidx_0(v *Value) bool { return true } // match: (MOVBUloadidx (MOVWconst [c]) ptr mem) - // cond: // result: (MOVBUload [c] ptr mem) for { mem := v.Args[2] @@ -6823,7 +6440,6 @@ func rewriteValueARM_OpARMMOVBUloadidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVBUreg_0(v *Value) bool { // match: (MOVBUreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -6836,7 +6452,6 @@ func rewriteValueARM_OpARMMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&0xff] x) for { v_0 := v.Args[0] @@ -6851,7 +6466,6 @@ func rewriteValueARM_OpARMMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -6863,7 +6477,6 @@ func rewriteValueARM_OpARMMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(uint8(c))]) for { v_0 := v.Args[0] @@ -6881,7 +6494,6 @@ func rewriteValueARM_OpARMMOVBload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVBload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVBload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -6901,7 +6513,6 @@ func rewriteValueARM_OpARMMOVBload_0(v *Value) bool { return true } // match: (MOVBload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVBload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7020,7 +6631,6 @@ func rewriteValueARM_OpARMMOVBloadidx_0(v *Value) bool { return true } // match: (MOVBloadidx ptr (MOVWconst [c]) mem) - // cond: // result: (MOVBload [c] ptr mem) for { mem := v.Args[2] @@ -7037,7 +6647,6 @@ func rewriteValueARM_OpARMMOVBloadidx_0(v *Value) bool { return true } // match: (MOVBloadidx (MOVWconst [c]) ptr mem) - // cond: // result: (MOVBload [c] ptr mem) for { mem := v.Args[2] @@ -7057,7 +6666,6 @@ func rewriteValueARM_OpARMMOVBloadidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVBreg_0(v *Value) bool { // match: (MOVBreg x:(MOVBload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7088,7 +6696,6 @@ func rewriteValueARM_OpARMMOVBreg_0(v *Value) bool { return true } // match: (MOVBreg x:(MOVBreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7100,7 +6707,6 @@ func rewriteValueARM_OpARMMOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int8(c))]) for { v_0 := v.Args[0] @@ -7118,7 +6724,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVBstore [off1] {sym} (ADDconst [off2] ptr) val mem) - // cond: // result: (MOVBstore [off1+off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7140,7 +6745,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off1] {sym} (SUBconst [off2] ptr) val mem) - // cond: // result: (MOVBstore [off1-off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7188,7 +6792,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -7209,7 +6812,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -7230,7 +6832,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -7251,7 +6852,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -7301,7 +6901,6 @@ func rewriteValueARM_OpARMMOVBstore_0(v *Value) bool { } func rewriteValueARM_OpARMMOVBstoreidx_0(v *Value) bool { // match: (MOVBstoreidx ptr (MOVWconst [c]) val mem) - // cond: // result: (MOVBstore [c] ptr val mem) for { mem := v.Args[3] @@ -7320,7 +6919,6 @@ func rewriteValueARM_OpARMMOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx (MOVWconst [c]) ptr val mem) - // cond: // result: (MOVBstore [c] ptr val mem) for { mem := v.Args[3] @@ -7342,7 +6940,6 @@ func rewriteValueARM_OpARMMOVBstoreidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVDload_0(v *Value) bool { // match: (MOVDload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVDload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7362,7 +6959,6 @@ func rewriteValueARM_OpARMMOVDload_0(v *Value) bool { return true } // match: (MOVDload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVDload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7434,7 +7030,6 @@ func rewriteValueARM_OpARMMOVDload_0(v *Value) bool { } func rewriteValueARM_OpARMMOVDstore_0(v *Value) bool { // match: (MOVDstore [off1] {sym} (ADDconst [off2] ptr) val mem) - // cond: // result: (MOVDstore [off1+off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7456,7 +7051,6 @@ func rewriteValueARM_OpARMMOVDstore_0(v *Value) bool { return true } // match: (MOVDstore [off1] {sym} (SUBconst [off2] ptr) val mem) - // cond: // result: (MOVDstore [off1-off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7507,7 +7101,6 @@ func rewriteValueARM_OpARMMOVDstore_0(v *Value) bool { } func rewriteValueARM_OpARMMOVFload_0(v *Value) bool { // match: (MOVFload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVFload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7527,7 +7120,6 @@ func rewriteValueARM_OpARMMOVFload_0(v *Value) bool { return true } // match: (MOVFload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVFload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7599,7 +7191,6 @@ func rewriteValueARM_OpARMMOVFload_0(v *Value) bool { } func rewriteValueARM_OpARMMOVFstore_0(v *Value) bool { // match: (MOVFstore [off1] {sym} (ADDconst [off2] ptr) val mem) - // cond: // result: (MOVFstore [off1+off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7621,7 +7212,6 @@ func rewriteValueARM_OpARMMOVFstore_0(v *Value) bool { return true } // match: (MOVFstore [off1] {sym} (SUBconst [off2] ptr) val mem) - // cond: // result: (MOVFstore [off1-off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -7674,7 +7264,6 @@ func rewriteValueARM_OpARMMOVHUload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVHUload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVHUload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7694,7 +7283,6 @@ func rewriteValueARM_OpARMMOVHUload_0(v *Value) bool { return true } // match: (MOVHUload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVHUload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7793,10 +7381,7 @@ func rewriteValueARM_OpARMMOVHUload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARMMOVWconst) @@ -7831,7 +7416,6 @@ func rewriteValueARM_OpARMMOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx ptr (MOVWconst [c]) mem) - // cond: // result: (MOVHUload [c] ptr mem) for { mem := v.Args[2] @@ -7848,7 +7432,6 @@ func rewriteValueARM_OpARMMOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx (MOVWconst [c]) ptr mem) - // cond: // result: (MOVHUload [c] ptr mem) for { mem := v.Args[2] @@ -7868,7 +7451,6 @@ func rewriteValueARM_OpARMMOVHUloadidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { // match: (MOVHUreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7881,7 +7463,6 @@ func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7894,7 +7475,6 @@ func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&0xffff] x) for { v_0 := v.Args[0] @@ -7909,7 +7489,6 @@ func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7921,7 +7500,6 @@ func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -7933,7 +7511,6 @@ func rewriteValueARM_OpARMMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -7951,7 +7528,6 @@ func rewriteValueARM_OpARMMOVHload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVHload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVHload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -7971,7 +7547,6 @@ func rewriteValueARM_OpARMMOVHload_0(v *Value) bool { return true } // match: (MOVHload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVHload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -8090,7 +7665,6 @@ func rewriteValueARM_OpARMMOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx ptr (MOVWconst [c]) mem) - // cond: // result: (MOVHload [c] ptr mem) for { mem := v.Args[2] @@ -8107,7 +7681,6 @@ func rewriteValueARM_OpARMMOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx (MOVWconst [c]) ptr mem) - // cond: // result: (MOVHload [c] ptr mem) for { mem := v.Args[2] @@ -8127,7 +7700,6 @@ func rewriteValueARM_OpARMMOVHloadidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { // match: (MOVHreg x:(MOVBload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8140,7 +7712,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8153,7 +7724,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8184,7 +7754,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8196,7 +7765,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8208,7 +7776,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -8220,7 +7787,6 @@ func rewriteValueARM_OpARMMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -8238,7 +7804,6 @@ func rewriteValueARM_OpARMMOVHstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVHstore [off1] {sym} (ADDconst [off2] ptr) val mem) - // cond: // result: (MOVHstore [off1+off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -8260,7 +7825,6 @@ func rewriteValueARM_OpARMMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off1] {sym} (SUBconst [off2] ptr) val mem) - // cond: // result: (MOVHstore [off1-off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -8308,7 +7872,6 @@ func rewriteValueARM_OpARMMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8329,7 +7892,6 @@ func rewriteValueARM_OpARMMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8379,7 +7941,6 @@ func rewriteValueARM_OpARMMOVHstore_0(v *Value) bool { } func rewriteValueARM_OpARMMOVHstoreidx_0(v *Value) bool { // match: (MOVHstoreidx ptr (MOVWconst [c]) val mem) - // cond: // result: (MOVHstore [c] ptr val mem) for { mem := v.Args[3] @@ -8398,7 +7959,6 @@ func rewriteValueARM_OpARMMOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx (MOVWconst [c]) ptr val mem) - // cond: // result: (MOVHstore [c] ptr val mem) for { mem := v.Args[3] @@ -8422,7 +7982,6 @@ func rewriteValueARM_OpARMMOVWload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVWload [off1] {sym} (ADDconst [off2] ptr) mem) - // cond: // result: (MOVWload [off1+off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -8442,7 +8001,6 @@ func rewriteValueARM_OpARMMOVWload_0(v *Value) bool { return true } // match: (MOVWload [off1] {sym} (SUBconst [off2] ptr) mem) - // cond: // result: (MOVWload [off1-off2] {sym} ptr mem) for { off1 := v.AuxInt @@ -8620,10 +8178,7 @@ func rewriteValueARM_OpARMMOVWload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARMMOVWconst) @@ -8659,7 +8214,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx ptr (MOVWconst [c]) mem) - // cond: // result: (MOVWload [c] ptr mem) for { mem := v.Args[2] @@ -8676,7 +8230,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (MOVWconst [c]) ptr mem) - // cond: // result: (MOVWload [c] ptr mem) for { mem := v.Args[2] @@ -8693,7 +8246,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx ptr (SLLconst idx [c]) mem) - // cond: // result: (MOVWloadshiftLL ptr idx [c] mem) for { mem := v.Args[2] @@ -8712,7 +8264,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (SLLconst idx [c]) ptr mem) - // cond: // result: (MOVWloadshiftLL ptr idx [c] mem) for { mem := v.Args[2] @@ -8731,7 +8282,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx ptr (SRLconst idx [c]) mem) - // cond: // result: (MOVWloadshiftRL ptr idx [c] mem) for { mem := v.Args[2] @@ -8750,7 +8300,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (SRLconst idx [c]) ptr mem) - // cond: // result: (MOVWloadshiftRL ptr idx [c] mem) for { mem := v.Args[2] @@ -8769,7 +8318,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx ptr (SRAconst idx [c]) mem) - // cond: // result: (MOVWloadshiftRA ptr idx [c] mem) for { mem := v.Args[2] @@ -8788,7 +8336,6 @@ func rewriteValueARM_OpARMMOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (SRAconst idx [c]) ptr mem) - // cond: // result: (MOVWloadshiftRA ptr idx [c] mem) for { mem := v.Args[2] @@ -8837,7 +8384,6 @@ func rewriteValueARM_OpARMMOVWloadshiftLL_0(v *Value) bool { return true } // match: (MOVWloadshiftLL ptr (MOVWconst [c]) [d] mem) - // cond: // result: (MOVWload [int64(uint32(c)<>uint64(d))] ptr mem) for { d := v.AuxInt @@ -8933,7 +8478,6 @@ func rewriteValueARM_OpARMMOVWloadshiftRL_0(v *Value) bool { return true } // match: (MOVWloadshiftRL ptr (MOVWconst [c]) [d] mem) - // cond: // result: (MOVWload [int64(uint32(c)>>uint64(d))] ptr mem) for { d := v.AuxInt @@ -8966,7 +8510,6 @@ func rewriteValueARM_OpARMMOVWreg_0(v *Value) bool { return true } // match: (MOVWreg (MOVWconst [c])) - // cond: // result: (MOVWconst [c]) for { v_0 := v.Args[0] @@ -8984,7 +8527,6 @@ func rewriteValueARM_OpARMMOVWstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVWstore [off1] {sym} (ADDconst [off2] ptr) val mem) - // cond: // result: (MOVWstore [off1+off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -9006,7 +8548,6 @@ func rewriteValueARM_OpARMMOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off1] {sym} (SUBconst [off2] ptr) val mem) - // cond: // result: (MOVWstore [off1-off2] {sym} ptr val mem) for { off1 := v.AuxInt @@ -9167,7 +8708,6 @@ func rewriteValueARM_OpARMMOVWstore_0(v *Value) bool { } func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { // match: (MOVWstoreidx ptr (MOVWconst [c]) val mem) - // cond: // result: (MOVWstore [c] ptr val mem) for { mem := v.Args[3] @@ -9186,7 +8726,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (MOVWconst [c]) ptr val mem) - // cond: // result: (MOVWstore [c] ptr val mem) for { mem := v.Args[3] @@ -9205,7 +8744,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr (SLLconst idx [c]) val mem) - // cond: // result: (MOVWstoreshiftLL ptr idx [c] val mem) for { mem := v.Args[3] @@ -9226,7 +8764,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (SLLconst idx [c]) ptr val mem) - // cond: // result: (MOVWstoreshiftLL ptr idx [c] val mem) for { mem := v.Args[3] @@ -9247,7 +8784,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr (SRLconst idx [c]) val mem) - // cond: // result: (MOVWstoreshiftRL ptr idx [c] val mem) for { mem := v.Args[3] @@ -9268,7 +8804,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (SRLconst idx [c]) ptr val mem) - // cond: // result: (MOVWstoreshiftRL ptr idx [c] val mem) for { mem := v.Args[3] @@ -9289,7 +8824,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr (SRAconst idx [c]) val mem) - // cond: // result: (MOVWstoreshiftRA ptr idx [c] val mem) for { mem := v.Args[3] @@ -9310,7 +8844,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (SRAconst idx [c]) ptr val mem) - // cond: // result: (MOVWstoreshiftRA ptr idx [c] val mem) for { mem := v.Args[3] @@ -9334,7 +8867,6 @@ func rewriteValueARM_OpARMMOVWstoreidx_0(v *Value) bool { } func rewriteValueARM_OpARMMOVWstoreshiftLL_0(v *Value) bool { // match: (MOVWstoreshiftLL ptr (MOVWconst [c]) [d] val mem) - // cond: // result: (MOVWstore [int64(uint32(c)<>uint64(d))] ptr val mem) for { d := v.AuxInt @@ -9380,7 +8911,6 @@ func rewriteValueARM_OpARMMOVWstoreshiftRA_0(v *Value) bool { } func rewriteValueARM_OpARMMOVWstoreshiftRL_0(v *Value) bool { // match: (MOVWstoreshiftRL ptr (MOVWconst [c]) [d] val mem) - // cond: // result: (MOVWstore [int64(uint32(c)>>uint64(d))] ptr val mem) for { d := v.AuxInt @@ -9440,15 +8970,11 @@ func rewriteValueARM_OpARMMUL_0(v *Value) bool { return true } // match: (MUL _ (MOVWconst [0])) - // cond: // result: (MOVWconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpARMMOVWconst) @@ -9456,15 +8982,11 @@ func rewriteValueARM_OpARMMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [0]) _) - // cond: // result: (MOVWconst [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 0 { break } v.reset(OpARMMOVWconst) @@ -9472,16 +8994,12 @@ func rewriteValueARM_OpARMMUL_0(v *Value) bool { return true } // match: (MUL x (MOVWconst [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -9490,15 +9008,11 @@ func rewriteValueARM_OpARMMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -9809,7 +9323,6 @@ func rewriteValueARM_OpARMMUL_10(v *Value) bool { } func rewriteValueARM_OpARMMUL_20(v *Value) bool { // match: (MUL (MOVWconst [c]) (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(c*d))]) for { _ = v.Args[1] @@ -9828,7 +9341,6 @@ func rewriteValueARM_OpARMMUL_20(v *Value) bool { return true } // match: (MUL (MOVWconst [d]) (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int32(c*d))]) for { _ = v.Args[1] @@ -9870,15 +9382,11 @@ func rewriteValueARM_OpARMMULA_0(v *Value) bool { return true } // match: (MULA _ (MOVWconst [0]) a) - // cond: // result: a for { a := v.Args[2] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -9887,16 +9395,12 @@ func rewriteValueARM_OpARMMULA_0(v *Value) bool { return true } // match: (MULA x (MOVWconst [1]) a) - // cond: // result: (ADD x a) for { a := v.Args[2] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 1 { break } v.reset(OpARMADD) @@ -10100,15 +9604,11 @@ func rewriteValueARM_OpARMMULA_10(v *Value) bool { return true } // match: (MULA (MOVWconst [0]) _ a) - // cond: // result: a for { a := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -10117,15 +9617,11 @@ func rewriteValueARM_OpARMMULA_10(v *Value) bool { return true } // match: (MULA (MOVWconst [1]) x a) - // cond: // result: (ADD x a) for { a := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 1 { break } x := v.Args[1] @@ -10310,7 +9806,6 @@ func rewriteValueARM_OpARMMULA_10(v *Value) bool { } func rewriteValueARM_OpARMMULA_20(v *Value) bool { // match: (MULA (MOVWconst [c]) (MOVWconst [d]) a) - // cond: // result: (ADDconst [int64(int32(c*d))] a) for { a := v.Args[2] @@ -10433,15 +9928,11 @@ func rewriteValueARM_OpARMMULS_0(v *Value) bool { return true } // match: (MULS _ (MOVWconst [0]) a) - // cond: // result: a for { a := v.Args[2] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -10450,16 +9941,12 @@ func rewriteValueARM_OpARMMULS_0(v *Value) bool { return true } // match: (MULS x (MOVWconst [1]) a) - // cond: // result: (RSB x a) for { a := v.Args[2] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARMMOVWconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARMMOVWconst || v_1.AuxInt != 1 { break } v.reset(OpARMRSB) @@ -10663,15 +10150,11 @@ func rewriteValueARM_OpARMMULS_10(v *Value) bool { return true } // match: (MULS (MOVWconst [0]) _ a) - // cond: // result: a for { a := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -10680,15 +10163,11 @@ func rewriteValueARM_OpARMMULS_10(v *Value) bool { return true } // match: (MULS (MOVWconst [1]) x a) - // cond: // result: (RSB x a) for { a := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARMMOVWconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARMMOVWconst || v_0.AuxInt != 1 { break } x := v.Args[1] @@ -10873,7 +10352,6 @@ func rewriteValueARM_OpARMMULS_10(v *Value) bool { } func rewriteValueARM_OpARMMULS_20(v *Value) bool { // match: (MULS (MOVWconst [c]) (MOVWconst [d]) a) - // cond: // result: (SUBconst [int64(int32(c*d))] a) for { a := v.Args[2] @@ -10896,7 +10374,6 @@ func rewriteValueARM_OpARMMULS_20(v *Value) bool { } func rewriteValueARM_OpARMMVN_0(v *Value) bool { // match: (MVN (MOVWconst [c])) - // cond: // result: (MOVWconst [^c]) for { v_0 := v.Args[0] @@ -10909,7 +10386,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SLLconst [c] x)) - // cond: // result: (MVNshiftLL x [c]) for { v_0 := v.Args[0] @@ -10924,7 +10400,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SRLconst [c] x)) - // cond: // result: (MVNshiftRL x [c]) for { v_0 := v.Args[0] @@ -10939,7 +10414,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SRAconst [c] x)) - // cond: // result: (MVNshiftRA x [c]) for { v_0 := v.Args[0] @@ -10954,7 +10428,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SLL x y)) - // cond: // result: (MVNshiftLLreg x y) for { v_0 := v.Args[0] @@ -10969,7 +10442,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SRL x y)) - // cond: // result: (MVNshiftRLreg x y) for { v_0 := v.Args[0] @@ -10984,7 +10456,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { return true } // match: (MVN (SRA x y)) - // cond: // result: (MVNshiftRAreg x y) for { v_0 := v.Args[0] @@ -11002,7 +10473,6 @@ func rewriteValueARM_OpARMMVN_0(v *Value) bool { } func rewriteValueARM_OpARMMVNshiftLL_0(v *Value) bool { // match: (MVNshiftLL (MOVWconst [c]) [d]) - // cond: // result: (MOVWconst [^int64(uint32(c)<>uint64(d))]) for { d := v.AuxInt @@ -11055,7 +10523,6 @@ func rewriteValueARM_OpARMMVNshiftRA_0(v *Value) bool { } func rewriteValueARM_OpARMMVNshiftRAreg_0(v *Value) bool { // match: (MVNshiftRAreg x (MOVWconst [c])) - // cond: // result: (MVNshiftRA x [c]) for { _ = v.Args[1] @@ -11074,7 +10541,6 @@ func rewriteValueARM_OpARMMVNshiftRAreg_0(v *Value) bool { } func rewriteValueARM_OpARMMVNshiftRL_0(v *Value) bool { // match: (MVNshiftRL (MOVWconst [c]) [d]) - // cond: // result: (MOVWconst [^int64(uint32(c)>>uint64(d))]) for { d := v.AuxInt @@ -11091,7 +10557,6 @@ func rewriteValueARM_OpARMMVNshiftRL_0(v *Value) bool { } func rewriteValueARM_OpARMMVNshiftRLreg_0(v *Value) bool { // match: (MVNshiftRLreg x (MOVWconst [c])) - // cond: // result: (MVNshiftRL x [c]) for { _ = v.Args[1] @@ -11152,7 +10617,6 @@ func rewriteValueARM_OpARMNEGF_0(v *Value) bool { } func rewriteValueARM_OpARMNMULD_0(v *Value) bool { // match: (NMULD (NEGD x) y) - // cond: // result: (MULD x y) for { y := v.Args[1] @@ -11167,7 +10631,6 @@ func rewriteValueARM_OpARMNMULD_0(v *Value) bool { return true } // match: (NMULD y (NEGD x)) - // cond: // result: (MULD x y) for { _ = v.Args[1] @@ -11186,7 +10649,6 @@ func rewriteValueARM_OpARMNMULD_0(v *Value) bool { } func rewriteValueARM_OpARMNMULF_0(v *Value) bool { // match: (NMULF (NEGF x) y) - // cond: // result: (MULF x y) for { y := v.Args[1] @@ -11201,7 +10663,6 @@ func rewriteValueARM_OpARMNMULF_0(v *Value) bool { return true } // match: (NMULF y (NEGF x)) - // cond: // result: (MULF x y) for { _ = v.Args[1] @@ -11220,7 +10681,6 @@ func rewriteValueARM_OpARMNMULF_0(v *Value) bool { } func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { // match: (NotEqual (FlagEQ)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -11232,7 +10692,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagLT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -11244,7 +10703,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagLT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -11256,7 +10714,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagGT_ULT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -11268,7 +10725,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagGT_UGT)) - // cond: // result: (MOVWconst [1]) for { v_0 := v.Args[0] @@ -11280,7 +10736,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { return true } // match: (NotEqual (InvertFlags x)) - // cond: // result: (NotEqual x) for { v_0 := v.Args[0] @@ -11296,7 +10751,6 @@ func rewriteValueARM_OpARMNotEqual_0(v *Value) bool { } func rewriteValueARM_OpARMOR_0(v *Value) bool { // match: (OR x (MOVWconst [c])) - // cond: // result: (ORconst [c] x) for { _ = v.Args[1] @@ -11312,7 +10766,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR (MOVWconst [c]) x) - // cond: // result: (ORconst [c] x) for { x := v.Args[1] @@ -11327,7 +10780,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR x (SLLconst [c] y)) - // cond: // result: (ORshiftLL x y [c]) for { _ = v.Args[1] @@ -11345,7 +10797,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR (SLLconst [c] y) x) - // cond: // result: (ORshiftLL x y [c]) for { x := v.Args[1] @@ -11362,7 +10813,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR x (SRLconst [c] y)) - // cond: // result: (ORshiftRL x y [c]) for { _ = v.Args[1] @@ -11380,7 +10830,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR (SRLconst [c] y) x) - // cond: // result: (ORshiftRL x y [c]) for { x := v.Args[1] @@ -11397,7 +10846,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR x (SRAconst [c] y)) - // cond: // result: (ORshiftRA x y [c]) for { _ = v.Args[1] @@ -11415,7 +10863,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR (SRAconst [c] y) x) - // cond: // result: (ORshiftRA x y [c]) for { x := v.Args[1] @@ -11432,7 +10879,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR x (SLL y z)) - // cond: // result: (ORshiftLLreg x y z) for { _ = v.Args[1] @@ -11450,7 +10896,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { return true } // match: (OR (SLL y z) x) - // cond: // result: (ORshiftLLreg x y z) for { x := v.Args[1] @@ -11470,7 +10915,6 @@ func rewriteValueARM_OpARMOR_0(v *Value) bool { } func rewriteValueARM_OpARMOR_10(v *Value) bool { // match: (OR x (SRL y z)) - // cond: // result: (ORshiftRLreg x y z) for { _ = v.Args[1] @@ -11488,7 +10932,6 @@ func rewriteValueARM_OpARMOR_10(v *Value) bool { return true } // match: (OR (SRL y z) x) - // cond: // result: (ORshiftRLreg x y z) for { x := v.Args[1] @@ -11505,7 +10948,6 @@ func rewriteValueARM_OpARMOR_10(v *Value) bool { return true } // match: (OR x (SRA y z)) - // cond: // result: (ORshiftRAreg x y z) for { _ = v.Args[1] @@ -11523,7 +10965,6 @@ func rewriteValueARM_OpARMOR_10(v *Value) bool { return true } // match: (OR (SRA y z) x) - // cond: // result: (ORshiftRAreg x y z) for { x := v.Args[1] @@ -11540,7 +10981,6 @@ func rewriteValueARM_OpARMOR_10(v *Value) bool { return true } // match: (OR x x) - // cond: // result: x for { x := v.Args[1] @@ -11556,7 +10996,6 @@ func rewriteValueARM_OpARMOR_10(v *Value) bool { } func rewriteValueARM_OpARMORconst_0(v *Value) bool { // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -11581,7 +11020,6 @@ func rewriteValueARM_OpARMORconst_0(v *Value) bool { return true } // match: (ORconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c|d]) for { c := v.AuxInt @@ -11595,7 +11033,6 @@ func rewriteValueARM_OpARMORconst_0(v *Value) bool { return true } // match: (ORconst [c] (ORconst [d] x)) - // cond: // result: (ORconst [c|d] x) for { c := v.AuxInt @@ -11616,7 +11053,6 @@ func rewriteValueARM_OpARMORshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ORshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (ORconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -11635,7 +11071,6 @@ func rewriteValueARM_OpARMORshiftLL_0(v *Value) bool { return true } // match: (ORshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (ORconst x [int64(int32(uint32(c)< [8] (BFXU [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMBFXU { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMBFXU || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARMREV16) @@ -11704,34 +11119,16 @@ func rewriteValueARM_OpARMORshiftLL_0(v *Value) bool { // cond: objabi.GOARM>=6 // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSRLconst { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != 24 { + if v_0.Op != OpARMSRLconst || v_0.Type != typ.UInt16 || v_0.AuxInt != 24 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARMSLLconst { - break - } - if v_0_0.AuxInt != 16 { - break - } - if x != v_0_0.Args[0] { - break - } - if !(objabi.GOARM >= 6) { + if v_0_0.Op != OpARMSLLconst || v_0_0.AuxInt != 16 || x != v_0_0.Args[0] || !(objabi.GOARM >= 6) { break } v.reset(OpARMREV16) @@ -11750,10 +11147,7 @@ func rewriteValueARM_OpARMORshiftLL_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -11766,7 +11160,6 @@ func rewriteValueARM_OpARMORshiftLL_0(v *Value) bool { func rewriteValueARM_OpARMORshiftLLreg_0(v *Value) bool { b := v.Block // match: (ORshiftLLreg (MOVWconst [c]) x y) - // cond: // result: (ORconst [c] (SLL x y)) for { y := v.Args[2] @@ -11785,7 +11178,6 @@ func rewriteValueARM_OpARMORshiftLLreg_0(v *Value) bool { return true } // match: (ORshiftLLreg x y (MOVWconst [c])) - // cond: // result: (ORshiftLL x y [c]) for { _ = v.Args[2] @@ -11807,7 +11199,6 @@ func rewriteValueARM_OpARMORshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMORshiftRA_0(v *Value) bool { b := v.Block // match: (ORshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (ORconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -11826,7 +11217,6 @@ func rewriteValueARM_OpARMORshiftRA_0(v *Value) bool { return true } // match: (ORshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (ORconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -11854,10 +11244,7 @@ func rewriteValueARM_OpARMORshiftRA_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -11870,7 +11257,6 @@ func rewriteValueARM_OpARMORshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMORshiftRAreg_0(v *Value) bool { b := v.Block // match: (ORshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (ORconst [c] (SRA x y)) for { y := v.Args[2] @@ -11889,7 +11275,6 @@ func rewriteValueARM_OpARMORshiftRAreg_0(v *Value) bool { return true } // match: (ORshiftRAreg x y (MOVWconst [c])) - // cond: // result: (ORshiftRA x y [c]) for { _ = v.Args[2] @@ -11911,7 +11296,6 @@ func rewriteValueARM_OpARMORshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMORshiftRL_0(v *Value) bool { b := v.Block // match: (ORshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (ORconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -11930,7 +11314,6 @@ func rewriteValueARM_OpARMORshiftRL_0(v *Value) bool { return true } // match: (ORshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (ORconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -11947,19 +11330,12 @@ func rewriteValueARM_OpARMORshiftRL_0(v *Value) bool { return true } // match: (ORshiftRL [c] (SLLconst x [32-c]) x) - // cond: // result: (SRRconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSLLconst { - break - } - if v_0.AuxInt != 32-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMSLLconst || v_0.AuxInt != 32-c || x != v_0.Args[0] { break } v.reset(OpARMSRRconst) @@ -11979,10 +11355,7 @@ func rewriteValueARM_OpARMORshiftRL_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -11995,7 +11368,6 @@ func rewriteValueARM_OpARMORshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMORshiftRLreg_0(v *Value) bool { b := v.Block // match: (ORshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (ORconst [c] (SRL x y)) for { y := v.Args[2] @@ -12014,7 +11386,6 @@ func rewriteValueARM_OpARMORshiftRLreg_0(v *Value) bool { return true } // match: (ORshiftRLreg x y (MOVWconst [c])) - // cond: // result: (ORshiftRL x y [c]) for { _ = v.Args[2] @@ -12035,7 +11406,6 @@ func rewriteValueARM_OpARMORshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMRSB_0(v *Value) bool { // match: (RSB (MOVWconst [c]) x) - // cond: // result: (SUBconst [c] x) for { x := v.Args[1] @@ -12050,7 +11420,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB x (MOVWconst [c])) - // cond: // result: (RSBconst [c] x) for { _ = v.Args[1] @@ -12066,7 +11435,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB x (SLLconst [c] y)) - // cond: // result: (RSBshiftLL x y [c]) for { _ = v.Args[1] @@ -12084,7 +11452,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB (SLLconst [c] y) x) - // cond: // result: (SUBshiftLL x y [c]) for { x := v.Args[1] @@ -12101,7 +11468,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB x (SRLconst [c] y)) - // cond: // result: (RSBshiftRL x y [c]) for { _ = v.Args[1] @@ -12119,7 +11485,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB (SRLconst [c] y) x) - // cond: // result: (SUBshiftRL x y [c]) for { x := v.Args[1] @@ -12136,7 +11501,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB x (SRAconst [c] y)) - // cond: // result: (RSBshiftRA x y [c]) for { _ = v.Args[1] @@ -12154,7 +11518,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB (SRAconst [c] y) x) - // cond: // result: (SUBshiftRA x y [c]) for { x := v.Args[1] @@ -12171,7 +11534,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB x (SLL y z)) - // cond: // result: (RSBshiftLLreg x y z) for { _ = v.Args[1] @@ -12189,7 +11551,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { return true } // match: (RSB (SLL y z) x) - // cond: // result: (SUBshiftLLreg x y z) for { x := v.Args[1] @@ -12209,7 +11570,6 @@ func rewriteValueARM_OpARMRSB_0(v *Value) bool { } func rewriteValueARM_OpARMRSB_10(v *Value) bool { // match: (RSB x (SRL y z)) - // cond: // result: (RSBshiftRLreg x y z) for { _ = v.Args[1] @@ -12227,7 +11587,6 @@ func rewriteValueARM_OpARMRSB_10(v *Value) bool { return true } // match: (RSB (SRL y z) x) - // cond: // result: (SUBshiftRLreg x y z) for { x := v.Args[1] @@ -12244,7 +11603,6 @@ func rewriteValueARM_OpARMRSB_10(v *Value) bool { return true } // match: (RSB x (SRA y z)) - // cond: // result: (RSBshiftRAreg x y z) for { _ = v.Args[1] @@ -12262,7 +11620,6 @@ func rewriteValueARM_OpARMRSB_10(v *Value) bool { return true } // match: (RSB (SRA y z) x) - // cond: // result: (SUBshiftRAreg x y z) for { x := v.Args[1] @@ -12279,7 +11636,6 @@ func rewriteValueARM_OpARMRSB_10(v *Value) bool { return true } // match: (RSB x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -12315,7 +11671,6 @@ func rewriteValueARM_OpARMRSB_10(v *Value) bool { func rewriteValueARM_OpARMRSBSshiftLL_0(v *Value) bool { b := v.Block // match: (RSBSshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (SUBSconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -12334,7 +11689,6 @@ func rewriteValueARM_OpARMRSBSshiftLL_0(v *Value) bool { return true } // match: (RSBSshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (RSBSconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -12374,7 +11727,6 @@ func rewriteValueARM_OpARMRSBSshiftLLreg_0(v *Value) bool { return true } // match: (RSBSshiftLLreg x y (MOVWconst [c])) - // cond: // result: (RSBSshiftLL x y [c]) for { _ = v.Args[2] @@ -12396,7 +11748,6 @@ func rewriteValueARM_OpARMRSBSshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMRSBSshiftRA_0(v *Value) bool { b := v.Block // match: (RSBSshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (SUBSconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -12415,7 +11766,6 @@ func rewriteValueARM_OpARMRSBSshiftRA_0(v *Value) bool { return true } // match: (RSBSshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (RSBSconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -12436,7 +11786,6 @@ func rewriteValueARM_OpARMRSBSshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMRSBSshiftRAreg_0(v *Value) bool { b := v.Block // match: (RSBSshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (SUBSconst [c] (SRA x y)) for { y := v.Args[2] @@ -12455,7 +11804,6 @@ func rewriteValueARM_OpARMRSBSshiftRAreg_0(v *Value) bool { return true } // match: (RSBSshiftRAreg x y (MOVWconst [c])) - // cond: // result: (RSBSshiftRA x y [c]) for { _ = v.Args[2] @@ -12477,7 +11825,6 @@ func rewriteValueARM_OpARMRSBSshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMRSBSshiftRL_0(v *Value) bool { b := v.Block // match: (RSBSshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (SUBSconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -12496,7 +11843,6 @@ func rewriteValueARM_OpARMRSBSshiftRL_0(v *Value) bool { return true } // match: (RSBSshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (RSBSconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -12517,7 +11863,6 @@ func rewriteValueARM_OpARMRSBSshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMRSBSshiftRLreg_0(v *Value) bool { b := v.Block // match: (RSBSshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (SUBSconst [c] (SRL x y)) for { y := v.Args[2] @@ -12536,7 +11881,6 @@ func rewriteValueARM_OpARMRSBSshiftRLreg_0(v *Value) bool { return true } // match: (RSBSshiftRLreg x y (MOVWconst [c])) - // cond: // result: (RSBSshiftRL x y [c]) for { _ = v.Args[2] @@ -12557,7 +11901,6 @@ func rewriteValueARM_OpARMRSBSshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMRSBconst_0(v *Value) bool { // match: (RSBconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(c-d))]) for { c := v.AuxInt @@ -12571,7 +11914,6 @@ func rewriteValueARM_OpARMRSBconst_0(v *Value) bool { return true } // match: (RSBconst [c] (RSBconst [d] x)) - // cond: // result: (ADDconst [int64(int32(c-d))] x) for { c := v.AuxInt @@ -12587,7 +11929,6 @@ func rewriteValueARM_OpARMRSBconst_0(v *Value) bool { return true } // match: (RSBconst [c] (ADDconst [d] x)) - // cond: // result: (RSBconst [int64(int32(c-d))] x) for { c := v.AuxInt @@ -12603,7 +11944,6 @@ func rewriteValueARM_OpARMRSBconst_0(v *Value) bool { return true } // match: (RSBconst [c] (SUBconst [d] x)) - // cond: // result: (RSBconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -12623,7 +11963,6 @@ func rewriteValueARM_OpARMRSBconst_0(v *Value) bool { func rewriteValueARM_OpARMRSBshiftLL_0(v *Value) bool { b := v.Block // match: (RSBshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (SUBconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -12642,7 +11981,6 @@ func rewriteValueARM_OpARMRSBshiftLL_0(v *Value) bool { return true } // match: (RSBshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (RSBconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -12704,7 +12038,6 @@ func rewriteValueARM_OpARMRSBshiftLLreg_0(v *Value) bool { return true } // match: (RSBshiftLLreg x y (MOVWconst [c])) - // cond: // result: (RSBshiftLL x y [c]) for { _ = v.Args[2] @@ -12726,7 +12059,6 @@ func rewriteValueARM_OpARMRSBshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMRSBshiftRA_0(v *Value) bool { b := v.Block // match: (RSBshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (SUBconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -12745,7 +12077,6 @@ func rewriteValueARM_OpARMRSBshiftRA_0(v *Value) bool { return true } // match: (RSBshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (RSBconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -12773,10 +12104,7 @@ func rewriteValueARM_OpARMRSBshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -12788,7 +12116,6 @@ func rewriteValueARM_OpARMRSBshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMRSBshiftRAreg_0(v *Value) bool { b := v.Block // match: (RSBshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (SUBconst [c] (SRA x y)) for { y := v.Args[2] @@ -12807,7 +12134,6 @@ func rewriteValueARM_OpARMRSBshiftRAreg_0(v *Value) bool { return true } // match: (RSBshiftRAreg x y (MOVWconst [c])) - // cond: // result: (RSBshiftRA x y [c]) for { _ = v.Args[2] @@ -12829,7 +12155,6 @@ func rewriteValueARM_OpARMRSBshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMRSBshiftRL_0(v *Value) bool { b := v.Block // match: (RSBshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (SUBconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -12848,7 +12173,6 @@ func rewriteValueARM_OpARMRSBshiftRL_0(v *Value) bool { return true } // match: (RSBshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (RSBconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -12876,10 +12200,7 @@ func rewriteValueARM_OpARMRSBshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -12891,7 +12212,6 @@ func rewriteValueARM_OpARMRSBshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMRSBshiftRLreg_0(v *Value) bool { b := v.Block // match: (RSBshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (SUBconst [c] (SRL x y)) for { y := v.Args[2] @@ -12910,7 +12230,6 @@ func rewriteValueARM_OpARMRSBshiftRLreg_0(v *Value) bool { return true } // match: (RSBshiftRLreg x y (MOVWconst [c])) - // cond: // result: (RSBshiftRL x y [c]) for { _ = v.Args[2] @@ -12931,7 +12250,6 @@ func rewriteValueARM_OpARMRSBshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMRSCconst_0(v *Value) bool { // match: (RSCconst [c] (ADDconst [d] x) flags) - // cond: // result: (RSCconst [int64(int32(c-d))] x flags) for { c := v.AuxInt @@ -12949,7 +12267,6 @@ func rewriteValueARM_OpARMRSCconst_0(v *Value) bool { return true } // match: (RSCconst [c] (SUBconst [d] x) flags) - // cond: // result: (RSCconst [int64(int32(c+d))] x flags) for { c := v.AuxInt @@ -12971,7 +12288,6 @@ func rewriteValueARM_OpARMRSCconst_0(v *Value) bool { func rewriteValueARM_OpARMRSCshiftLL_0(v *Value) bool { b := v.Block // match: (RSCshiftLL (MOVWconst [c]) x [d] flags) - // cond: // result: (SBCconst [c] (SLLconst x [d]) flags) for { d := v.AuxInt @@ -12992,7 +12308,6 @@ func rewriteValueARM_OpARMRSCshiftLL_0(v *Value) bool { return true } // match: (RSCshiftLL x (MOVWconst [c]) [d] flags) - // cond: // result: (RSCconst x [int64(int32(uint32(c)< x y) flags) for { flags := v.Args[3] @@ -13035,7 +12349,6 @@ func rewriteValueARM_OpARMRSCshiftLLreg_0(v *Value) bool { return true } // match: (RSCshiftLLreg x y (MOVWconst [c]) flags) - // cond: // result: (RSCshiftLL x y [c] flags) for { flags := v.Args[3] @@ -13058,7 +12371,6 @@ func rewriteValueARM_OpARMRSCshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMRSCshiftRA_0(v *Value) bool { b := v.Block // match: (RSCshiftRA (MOVWconst [c]) x [d] flags) - // cond: // result: (SBCconst [c] (SRAconst x [d]) flags) for { d := v.AuxInt @@ -13079,7 +12391,6 @@ func rewriteValueARM_OpARMRSCshiftRA_0(v *Value) bool { return true } // match: (RSCshiftRA x (MOVWconst [c]) [d] flags) - // cond: // result: (RSCconst x [int64(int32(c)>>uint64(d))] flags) for { d := v.AuxInt @@ -13101,7 +12412,6 @@ func rewriteValueARM_OpARMRSCshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMRSCshiftRAreg_0(v *Value) bool { b := v.Block // match: (RSCshiftRAreg (MOVWconst [c]) x y flags) - // cond: // result: (SBCconst [c] (SRA x y) flags) for { flags := v.Args[3] @@ -13122,7 +12432,6 @@ func rewriteValueARM_OpARMRSCshiftRAreg_0(v *Value) bool { return true } // match: (RSCshiftRAreg x y (MOVWconst [c]) flags) - // cond: // result: (RSCshiftRA x y [c] flags) for { flags := v.Args[3] @@ -13145,7 +12454,6 @@ func rewriteValueARM_OpARMRSCshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMRSCshiftRL_0(v *Value) bool { b := v.Block // match: (RSCshiftRL (MOVWconst [c]) x [d] flags) - // cond: // result: (SBCconst [c] (SRLconst x [d]) flags) for { d := v.AuxInt @@ -13166,7 +12474,6 @@ func rewriteValueARM_OpARMRSCshiftRL_0(v *Value) bool { return true } // match: (RSCshiftRL x (MOVWconst [c]) [d] flags) - // cond: // result: (RSCconst x [int64(int32(uint32(c)>>uint64(d)))] flags) for { d := v.AuxInt @@ -13188,7 +12495,6 @@ func rewriteValueARM_OpARMRSCshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMRSCshiftRLreg_0(v *Value) bool { b := v.Block // match: (RSCshiftRLreg (MOVWconst [c]) x y flags) - // cond: // result: (SBCconst [c] (SRL x y) flags) for { flags := v.Args[3] @@ -13209,7 +12515,6 @@ func rewriteValueARM_OpARMRSCshiftRLreg_0(v *Value) bool { return true } // match: (RSCshiftRLreg x y (MOVWconst [c]) flags) - // cond: // result: (RSCshiftRL x y [c] flags) for { flags := v.Args[3] @@ -13231,7 +12536,6 @@ func rewriteValueARM_OpARMRSCshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMSBC_0(v *Value) bool { // match: (SBC (MOVWconst [c]) x flags) - // cond: // result: (RSCconst [c] x flags) for { flags := v.Args[2] @@ -13248,7 +12552,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC x (MOVWconst [c]) flags) - // cond: // result: (SBCconst [c] x flags) for { flags := v.Args[2] @@ -13265,7 +12568,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC x (SLLconst [c] y) flags) - // cond: // result: (SBCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -13284,7 +12586,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC (SLLconst [c] y) x flags) - // cond: // result: (RSCshiftLL x y [c] flags) for { flags := v.Args[2] @@ -13303,7 +12604,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC x (SRLconst [c] y) flags) - // cond: // result: (SBCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -13322,7 +12622,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC (SRLconst [c] y) x flags) - // cond: // result: (RSCshiftRL x y [c] flags) for { flags := v.Args[2] @@ -13341,7 +12640,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC x (SRAconst [c] y) flags) - // cond: // result: (SBCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -13360,7 +12658,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC (SRAconst [c] y) x flags) - // cond: // result: (RSCshiftRA x y [c] flags) for { flags := v.Args[2] @@ -13379,7 +12676,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC x (SLL y z) flags) - // cond: // result: (SBCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -13398,7 +12694,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { return true } // match: (SBC (SLL y z) x flags) - // cond: // result: (RSCshiftLLreg x y z flags) for { flags := v.Args[2] @@ -13420,7 +12715,6 @@ func rewriteValueARM_OpARMSBC_0(v *Value) bool { } func rewriteValueARM_OpARMSBC_10(v *Value) bool { // match: (SBC x (SRL y z) flags) - // cond: // result: (SBCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -13439,7 +12733,6 @@ func rewriteValueARM_OpARMSBC_10(v *Value) bool { return true } // match: (SBC (SRL y z) x flags) - // cond: // result: (RSCshiftRLreg x y z flags) for { flags := v.Args[2] @@ -13458,7 +12751,6 @@ func rewriteValueARM_OpARMSBC_10(v *Value) bool { return true } // match: (SBC x (SRA y z) flags) - // cond: // result: (SBCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -13477,7 +12769,6 @@ func rewriteValueARM_OpARMSBC_10(v *Value) bool { return true } // match: (SBC (SRA y z) x flags) - // cond: // result: (RSCshiftRAreg x y z flags) for { flags := v.Args[2] @@ -13499,7 +12790,6 @@ func rewriteValueARM_OpARMSBC_10(v *Value) bool { } func rewriteValueARM_OpARMSBCconst_0(v *Value) bool { // match: (SBCconst [c] (ADDconst [d] x) flags) - // cond: // result: (SBCconst [int64(int32(c-d))] x flags) for { c := v.AuxInt @@ -13517,7 +12807,6 @@ func rewriteValueARM_OpARMSBCconst_0(v *Value) bool { return true } // match: (SBCconst [c] (SUBconst [d] x) flags) - // cond: // result: (SBCconst [int64(int32(c+d))] x flags) for { c := v.AuxInt @@ -13539,7 +12828,6 @@ func rewriteValueARM_OpARMSBCconst_0(v *Value) bool { func rewriteValueARM_OpARMSBCshiftLL_0(v *Value) bool { b := v.Block // match: (SBCshiftLL (MOVWconst [c]) x [d] flags) - // cond: // result: (RSCconst [c] (SLLconst x [d]) flags) for { d := v.AuxInt @@ -13560,7 +12848,6 @@ func rewriteValueARM_OpARMSBCshiftLL_0(v *Value) bool { return true } // match: (SBCshiftLL x (MOVWconst [c]) [d] flags) - // cond: // result: (SBCconst x [int64(int32(uint32(c)< x y) flags) for { flags := v.Args[3] @@ -13603,7 +12889,6 @@ func rewriteValueARM_OpARMSBCshiftLLreg_0(v *Value) bool { return true } // match: (SBCshiftLLreg x y (MOVWconst [c]) flags) - // cond: // result: (SBCshiftLL x y [c] flags) for { flags := v.Args[3] @@ -13626,7 +12911,6 @@ func rewriteValueARM_OpARMSBCshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMSBCshiftRA_0(v *Value) bool { b := v.Block // match: (SBCshiftRA (MOVWconst [c]) x [d] flags) - // cond: // result: (RSCconst [c] (SRAconst x [d]) flags) for { d := v.AuxInt @@ -13647,7 +12931,6 @@ func rewriteValueARM_OpARMSBCshiftRA_0(v *Value) bool { return true } // match: (SBCshiftRA x (MOVWconst [c]) [d] flags) - // cond: // result: (SBCconst x [int64(int32(c)>>uint64(d))] flags) for { d := v.AuxInt @@ -13669,7 +12952,6 @@ func rewriteValueARM_OpARMSBCshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMSBCshiftRAreg_0(v *Value) bool { b := v.Block // match: (SBCshiftRAreg (MOVWconst [c]) x y flags) - // cond: // result: (RSCconst [c] (SRA x y) flags) for { flags := v.Args[3] @@ -13690,7 +12972,6 @@ func rewriteValueARM_OpARMSBCshiftRAreg_0(v *Value) bool { return true } // match: (SBCshiftRAreg x y (MOVWconst [c]) flags) - // cond: // result: (SBCshiftRA x y [c] flags) for { flags := v.Args[3] @@ -13713,7 +12994,6 @@ func rewriteValueARM_OpARMSBCshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMSBCshiftRL_0(v *Value) bool { b := v.Block // match: (SBCshiftRL (MOVWconst [c]) x [d] flags) - // cond: // result: (RSCconst [c] (SRLconst x [d]) flags) for { d := v.AuxInt @@ -13734,7 +13014,6 @@ func rewriteValueARM_OpARMSBCshiftRL_0(v *Value) bool { return true } // match: (SBCshiftRL x (MOVWconst [c]) [d] flags) - // cond: // result: (SBCconst x [int64(int32(uint32(c)>>uint64(d)))] flags) for { d := v.AuxInt @@ -13756,7 +13035,6 @@ func rewriteValueARM_OpARMSBCshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMSBCshiftRLreg_0(v *Value) bool { b := v.Block // match: (SBCshiftRLreg (MOVWconst [c]) x y flags) - // cond: // result: (RSCconst [c] (SRL x y) flags) for { flags := v.Args[3] @@ -13777,7 +13055,6 @@ func rewriteValueARM_OpARMSBCshiftRLreg_0(v *Value) bool { return true } // match: (SBCshiftRLreg x y (MOVWconst [c]) flags) - // cond: // result: (SBCshiftRL x y [c] flags) for { flags := v.Args[3] @@ -13799,7 +13076,6 @@ func rewriteValueARM_OpARMSBCshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMSLL_0(v *Value) bool { // match: (SLL x (MOVWconst [c])) - // cond: // result: (SLLconst x [c&31]) for { _ = v.Args[1] @@ -13818,7 +13094,6 @@ func rewriteValueARM_OpARMSLL_0(v *Value) bool { } func rewriteValueARM_OpARMSLLconst_0(v *Value) bool { // match: (SLLconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(uint32(d)<>uint64(c))]) for { c := v.AuxInt @@ -13970,7 +13238,6 @@ func rewriteValueARM_OpARMSRAconst_0(v *Value) bool { } func rewriteValueARM_OpARMSRL_0(v *Value) bool { // match: (SRL x (MOVWconst [c])) - // cond: // result: (SRLconst x [c&31]) for { _ = v.Args[1] @@ -13989,7 +13256,6 @@ func rewriteValueARM_OpARMSRL_0(v *Value) bool { } func rewriteValueARM_OpARMSRLconst_0(v *Value) bool { // match: (SRLconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(uint32(d)>>uint64(c)))]) for { c := v.AuxInt @@ -14025,7 +13291,6 @@ func rewriteValueARM_OpARMSRLconst_0(v *Value) bool { } func rewriteValueARM_OpARMSUB_0(v *Value) bool { // match: (SUB (MOVWconst [c]) x) - // cond: // result: (RSBconst [c] x) for { x := v.Args[1] @@ -14040,7 +13305,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB x (MOVWconst [c])) - // cond: // result: (SUBconst [c] x) for { _ = v.Args[1] @@ -14056,7 +13320,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB x (SLLconst [c] y)) - // cond: // result: (SUBshiftLL x y [c]) for { _ = v.Args[1] @@ -14074,7 +13337,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB (SLLconst [c] y) x) - // cond: // result: (RSBshiftLL x y [c]) for { x := v.Args[1] @@ -14091,7 +13353,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB x (SRLconst [c] y)) - // cond: // result: (SUBshiftRL x y [c]) for { _ = v.Args[1] @@ -14109,7 +13370,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB (SRLconst [c] y) x) - // cond: // result: (RSBshiftRL x y [c]) for { x := v.Args[1] @@ -14126,7 +13386,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB x (SRAconst [c] y)) - // cond: // result: (SUBshiftRA x y [c]) for { _ = v.Args[1] @@ -14144,7 +13403,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB (SRAconst [c] y) x) - // cond: // result: (RSBshiftRA x y [c]) for { x := v.Args[1] @@ -14161,7 +13419,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB x (SLL y z)) - // cond: // result: (SUBshiftLLreg x y z) for { _ = v.Args[1] @@ -14179,7 +13436,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { return true } // match: (SUB (SLL y z) x) - // cond: // result: (RSBshiftLLreg x y z) for { x := v.Args[1] @@ -14199,7 +13455,6 @@ func rewriteValueARM_OpARMSUB_0(v *Value) bool { } func rewriteValueARM_OpARMSUB_10(v *Value) bool { // match: (SUB x (SRL y z)) - // cond: // result: (SUBshiftRLreg x y z) for { _ = v.Args[1] @@ -14217,7 +13472,6 @@ func rewriteValueARM_OpARMSUB_10(v *Value) bool { return true } // match: (SUB (SRL y z) x) - // cond: // result: (RSBshiftRLreg x y z) for { x := v.Args[1] @@ -14234,7 +13488,6 @@ func rewriteValueARM_OpARMSUB_10(v *Value) bool { return true } // match: (SUB x (SRA y z)) - // cond: // result: (SUBshiftRAreg x y z) for { _ = v.Args[1] @@ -14252,7 +13505,6 @@ func rewriteValueARM_OpARMSUB_10(v *Value) bool { return true } // match: (SUB (SRA y z) x) - // cond: // result: (RSBshiftRAreg x y z) for { x := v.Args[1] @@ -14269,7 +13521,6 @@ func rewriteValueARM_OpARMSUB_10(v *Value) bool { return true } // match: (SUB x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -14395,7 +13646,6 @@ func rewriteValueARM_OpARMSUBF_0(v *Value) bool { } func rewriteValueARM_OpARMSUBS_0(v *Value) bool { // match: (SUBS x (MOVWconst [c])) - // cond: // result: (SUBSconst [c] x) for { _ = v.Args[1] @@ -14411,7 +13661,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS x (SLLconst [c] y)) - // cond: // result: (SUBSshiftLL x y [c]) for { _ = v.Args[1] @@ -14429,7 +13678,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS (SLLconst [c] y) x) - // cond: // result: (RSBSshiftLL x y [c]) for { x := v.Args[1] @@ -14446,7 +13694,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS x (SRLconst [c] y)) - // cond: // result: (SUBSshiftRL x y [c]) for { _ = v.Args[1] @@ -14464,7 +13711,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS (SRLconst [c] y) x) - // cond: // result: (RSBSshiftRL x y [c]) for { x := v.Args[1] @@ -14481,7 +13727,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS x (SRAconst [c] y)) - // cond: // result: (SUBSshiftRA x y [c]) for { _ = v.Args[1] @@ -14499,7 +13744,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS (SRAconst [c] y) x) - // cond: // result: (RSBSshiftRA x y [c]) for { x := v.Args[1] @@ -14516,7 +13760,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS x (SLL y z)) - // cond: // result: (SUBSshiftLLreg x y z) for { _ = v.Args[1] @@ -14534,7 +13777,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS (SLL y z) x) - // cond: // result: (RSBSshiftLLreg x y z) for { x := v.Args[1] @@ -14551,7 +13793,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { return true } // match: (SUBS x (SRL y z)) - // cond: // result: (SUBSshiftRLreg x y z) for { _ = v.Args[1] @@ -14572,7 +13813,6 @@ func rewriteValueARM_OpARMSUBS_0(v *Value) bool { } func rewriteValueARM_OpARMSUBS_10(v *Value) bool { // match: (SUBS (SRL y z) x) - // cond: // result: (RSBSshiftRLreg x y z) for { x := v.Args[1] @@ -14589,7 +13829,6 @@ func rewriteValueARM_OpARMSUBS_10(v *Value) bool { return true } // match: (SUBS x (SRA y z)) - // cond: // result: (SUBSshiftRAreg x y z) for { _ = v.Args[1] @@ -14607,7 +13846,6 @@ func rewriteValueARM_OpARMSUBS_10(v *Value) bool { return true } // match: (SUBS (SRA y z) x) - // cond: // result: (RSBSshiftRAreg x y z) for { x := v.Args[1] @@ -14628,7 +13866,6 @@ func rewriteValueARM_OpARMSUBS_10(v *Value) bool { func rewriteValueARM_OpARMSUBSshiftLL_0(v *Value) bool { b := v.Block // match: (SUBSshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (RSBSconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -14647,7 +13884,6 @@ func rewriteValueARM_OpARMSUBSshiftLL_0(v *Value) bool { return true } // match: (SUBSshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (SUBSconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -14687,7 +13922,6 @@ func rewriteValueARM_OpARMSUBSshiftLLreg_0(v *Value) bool { return true } // match: (SUBSshiftLLreg x y (MOVWconst [c])) - // cond: // result: (SUBSshiftLL x y [c]) for { _ = v.Args[2] @@ -14709,7 +13943,6 @@ func rewriteValueARM_OpARMSUBSshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMSUBSshiftRA_0(v *Value) bool { b := v.Block // match: (SUBSshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (RSBSconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -14728,7 +13961,6 @@ func rewriteValueARM_OpARMSUBSshiftRA_0(v *Value) bool { return true } // match: (SUBSshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (SUBSconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -14749,7 +13981,6 @@ func rewriteValueARM_OpARMSUBSshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMSUBSshiftRAreg_0(v *Value) bool { b := v.Block // match: (SUBSshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (RSBSconst [c] (SRA x y)) for { y := v.Args[2] @@ -14768,7 +13999,6 @@ func rewriteValueARM_OpARMSUBSshiftRAreg_0(v *Value) bool { return true } // match: (SUBSshiftRAreg x y (MOVWconst [c])) - // cond: // result: (SUBSshiftRA x y [c]) for { _ = v.Args[2] @@ -14790,7 +14020,6 @@ func rewriteValueARM_OpARMSUBSshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMSUBSshiftRL_0(v *Value) bool { b := v.Block // match: (SUBSshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (RSBSconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -14809,7 +14038,6 @@ func rewriteValueARM_OpARMSUBSshiftRL_0(v *Value) bool { return true } // match: (SUBSshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (SUBSconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -14830,7 +14058,6 @@ func rewriteValueARM_OpARMSUBSshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMSUBSshiftRLreg_0(v *Value) bool { b := v.Block // match: (SUBSshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (RSBSconst [c] (SRL x y)) for { y := v.Args[2] @@ -14849,7 +14076,6 @@ func rewriteValueARM_OpARMSUBSshiftRLreg_0(v *Value) bool { return true } // match: (SUBSshiftRLreg x y (MOVWconst [c])) - // cond: // result: (SUBSshiftRL x y [c]) for { _ = v.Args[2] @@ -14870,7 +14096,6 @@ func rewriteValueARM_OpARMSUBSshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { // match: (SUBconst [off1] (MOVWaddr [off2] {sym} ptr)) - // cond: // result: (MOVWaddr [off2-off1] {sym} ptr) for { off1 := v.AuxInt @@ -14888,7 +14113,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { return true } // match: (SUBconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -14929,7 +14153,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(d-c))]) for { c := v.AuxInt @@ -14943,7 +14166,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [int64(int32(-c-d))] x) for { c := v.AuxInt @@ -14959,7 +14181,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [int64(int32(-c+d))] x) for { c := v.AuxInt @@ -14975,7 +14196,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (RSBconst [d] x)) - // cond: // result: (RSBconst [int64(int32(-c+d))] x) for { c := v.AuxInt @@ -14995,7 +14215,6 @@ func rewriteValueARM_OpARMSUBconst_0(v *Value) bool { func rewriteValueARM_OpARMSUBshiftLL_0(v *Value) bool { b := v.Block // match: (SUBshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (RSBconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -15014,7 +14233,6 @@ func rewriteValueARM_OpARMSUBshiftLL_0(v *Value) bool { return true } // match: (SUBshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (SUBconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -15076,7 +14290,6 @@ func rewriteValueARM_OpARMSUBshiftLLreg_0(v *Value) bool { return true } // match: (SUBshiftLLreg x y (MOVWconst [c])) - // cond: // result: (SUBshiftLL x y [c]) for { _ = v.Args[2] @@ -15098,7 +14311,6 @@ func rewriteValueARM_OpARMSUBshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMSUBshiftRA_0(v *Value) bool { b := v.Block // match: (SUBshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (RSBconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -15117,7 +14329,6 @@ func rewriteValueARM_OpARMSUBshiftRA_0(v *Value) bool { return true } // match: (SUBshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (SUBconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -15145,10 +14356,7 @@ func rewriteValueARM_OpARMSUBshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -15160,7 +14368,6 @@ func rewriteValueARM_OpARMSUBshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMSUBshiftRAreg_0(v *Value) bool { b := v.Block // match: (SUBshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (RSBconst [c] (SRA x y)) for { y := v.Args[2] @@ -15179,7 +14386,6 @@ func rewriteValueARM_OpARMSUBshiftRAreg_0(v *Value) bool { return true } // match: (SUBshiftRAreg x y (MOVWconst [c])) - // cond: // result: (SUBshiftRA x y [c]) for { _ = v.Args[2] @@ -15201,7 +14407,6 @@ func rewriteValueARM_OpARMSUBshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMSUBshiftRL_0(v *Value) bool { b := v.Block // match: (SUBshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (RSBconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -15220,7 +14425,6 @@ func rewriteValueARM_OpARMSUBshiftRL_0(v *Value) bool { return true } // match: (SUBshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (SUBconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -15248,10 +14452,7 @@ func rewriteValueARM_OpARMSUBshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -15263,7 +14464,6 @@ func rewriteValueARM_OpARMSUBshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMSUBshiftRLreg_0(v *Value) bool { b := v.Block // match: (SUBshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (RSBconst [c] (SRL x y)) for { y := v.Args[2] @@ -15282,7 +14482,6 @@ func rewriteValueARM_OpARMSUBshiftRLreg_0(v *Value) bool { return true } // match: (SUBshiftRLreg x y (MOVWconst [c])) - // cond: // result: (SUBshiftRL x y [c]) for { _ = v.Args[2] @@ -15303,7 +14502,6 @@ func rewriteValueARM_OpARMSUBshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMTEQ_0(v *Value) bool { // match: (TEQ x (MOVWconst [c])) - // cond: // result: (TEQconst [c] x) for { _ = v.Args[1] @@ -15319,7 +14517,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ (MOVWconst [c]) x) - // cond: // result: (TEQconst [c] x) for { x := v.Args[1] @@ -15334,7 +14531,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ x (SLLconst [c] y)) - // cond: // result: (TEQshiftLL x y [c]) for { _ = v.Args[1] @@ -15352,7 +14548,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ (SLLconst [c] y) x) - // cond: // result: (TEQshiftLL x y [c]) for { x := v.Args[1] @@ -15369,7 +14564,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ x (SRLconst [c] y)) - // cond: // result: (TEQshiftRL x y [c]) for { _ = v.Args[1] @@ -15387,7 +14581,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ (SRLconst [c] y) x) - // cond: // result: (TEQshiftRL x y [c]) for { x := v.Args[1] @@ -15404,7 +14597,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ x (SRAconst [c] y)) - // cond: // result: (TEQshiftRA x y [c]) for { _ = v.Args[1] @@ -15422,7 +14614,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ (SRAconst [c] y) x) - // cond: // result: (TEQshiftRA x y [c]) for { x := v.Args[1] @@ -15439,7 +14630,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ x (SLL y z)) - // cond: // result: (TEQshiftLLreg x y z) for { _ = v.Args[1] @@ -15457,7 +14647,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { return true } // match: (TEQ (SLL y z) x) - // cond: // result: (TEQshiftLLreg x y z) for { x := v.Args[1] @@ -15477,7 +14666,6 @@ func rewriteValueARM_OpARMTEQ_0(v *Value) bool { } func rewriteValueARM_OpARMTEQ_10(v *Value) bool { // match: (TEQ x (SRL y z)) - // cond: // result: (TEQshiftRLreg x y z) for { _ = v.Args[1] @@ -15495,7 +14683,6 @@ func rewriteValueARM_OpARMTEQ_10(v *Value) bool { return true } // match: (TEQ (SRL y z) x) - // cond: // result: (TEQshiftRLreg x y z) for { x := v.Args[1] @@ -15512,7 +14699,6 @@ func rewriteValueARM_OpARMTEQ_10(v *Value) bool { return true } // match: (TEQ x (SRA y z)) - // cond: // result: (TEQshiftRAreg x y z) for { _ = v.Args[1] @@ -15530,7 +14716,6 @@ func rewriteValueARM_OpARMTEQ_10(v *Value) bool { return true } // match: (TEQ (SRA y z) x) - // cond: // result: (TEQshiftRAreg x y z) for { x := v.Args[1] @@ -15602,7 +14787,6 @@ func rewriteValueARM_OpARMTEQconst_0(v *Value) bool { func rewriteValueARM_OpARMTEQshiftLL_0(v *Value) bool { b := v.Block // match: (TEQshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (TEQconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -15621,7 +14805,6 @@ func rewriteValueARM_OpARMTEQshiftLL_0(v *Value) bool { return true } // match: (TEQshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (TEQconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -15661,7 +14843,6 @@ func rewriteValueARM_OpARMTEQshiftLLreg_0(v *Value) bool { return true } // match: (TEQshiftLLreg x y (MOVWconst [c])) - // cond: // result: (TEQshiftLL x y [c]) for { _ = v.Args[2] @@ -15683,7 +14864,6 @@ func rewriteValueARM_OpARMTEQshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMTEQshiftRA_0(v *Value) bool { b := v.Block // match: (TEQshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (TEQconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -15702,7 +14882,6 @@ func rewriteValueARM_OpARMTEQshiftRA_0(v *Value) bool { return true } // match: (TEQshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (TEQconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -15723,7 +14902,6 @@ func rewriteValueARM_OpARMTEQshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMTEQshiftRAreg_0(v *Value) bool { b := v.Block // match: (TEQshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (TEQconst [c] (SRA x y)) for { y := v.Args[2] @@ -15742,7 +14920,6 @@ func rewriteValueARM_OpARMTEQshiftRAreg_0(v *Value) bool { return true } // match: (TEQshiftRAreg x y (MOVWconst [c])) - // cond: // result: (TEQshiftRA x y [c]) for { _ = v.Args[2] @@ -15764,7 +14941,6 @@ func rewriteValueARM_OpARMTEQshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMTEQshiftRL_0(v *Value) bool { b := v.Block // match: (TEQshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (TEQconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -15783,7 +14959,6 @@ func rewriteValueARM_OpARMTEQshiftRL_0(v *Value) bool { return true } // match: (TEQshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (TEQconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -15804,7 +14979,6 @@ func rewriteValueARM_OpARMTEQshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMTEQshiftRLreg_0(v *Value) bool { b := v.Block // match: (TEQshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (TEQconst [c] (SRL x y)) for { y := v.Args[2] @@ -15823,7 +14997,6 @@ func rewriteValueARM_OpARMTEQshiftRLreg_0(v *Value) bool { return true } // match: (TEQshiftRLreg x y (MOVWconst [c])) - // cond: // result: (TEQshiftRL x y [c]) for { _ = v.Args[2] @@ -15844,7 +15017,6 @@ func rewriteValueARM_OpARMTEQshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMTST_0(v *Value) bool { // match: (TST x (MOVWconst [c])) - // cond: // result: (TSTconst [c] x) for { _ = v.Args[1] @@ -15860,7 +15032,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST (MOVWconst [c]) x) - // cond: // result: (TSTconst [c] x) for { x := v.Args[1] @@ -15875,7 +15046,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST x (SLLconst [c] y)) - // cond: // result: (TSTshiftLL x y [c]) for { _ = v.Args[1] @@ -15893,7 +15063,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST (SLLconst [c] y) x) - // cond: // result: (TSTshiftLL x y [c]) for { x := v.Args[1] @@ -15910,7 +15079,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST x (SRLconst [c] y)) - // cond: // result: (TSTshiftRL x y [c]) for { _ = v.Args[1] @@ -15928,7 +15096,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST (SRLconst [c] y) x) - // cond: // result: (TSTshiftRL x y [c]) for { x := v.Args[1] @@ -15945,7 +15112,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST x (SRAconst [c] y)) - // cond: // result: (TSTshiftRA x y [c]) for { _ = v.Args[1] @@ -15963,7 +15129,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST (SRAconst [c] y) x) - // cond: // result: (TSTshiftRA x y [c]) for { x := v.Args[1] @@ -15980,7 +15145,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST x (SLL y z)) - // cond: // result: (TSTshiftLLreg x y z) for { _ = v.Args[1] @@ -15998,7 +15162,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { return true } // match: (TST (SLL y z) x) - // cond: // result: (TSTshiftLLreg x y z) for { x := v.Args[1] @@ -16018,7 +15181,6 @@ func rewriteValueARM_OpARMTST_0(v *Value) bool { } func rewriteValueARM_OpARMTST_10(v *Value) bool { // match: (TST x (SRL y z)) - // cond: // result: (TSTshiftRLreg x y z) for { _ = v.Args[1] @@ -16036,7 +15198,6 @@ func rewriteValueARM_OpARMTST_10(v *Value) bool { return true } // match: (TST (SRL y z) x) - // cond: // result: (TSTshiftRLreg x y z) for { x := v.Args[1] @@ -16053,7 +15214,6 @@ func rewriteValueARM_OpARMTST_10(v *Value) bool { return true } // match: (TST x (SRA y z)) - // cond: // result: (TSTshiftRAreg x y z) for { _ = v.Args[1] @@ -16071,7 +15231,6 @@ func rewriteValueARM_OpARMTST_10(v *Value) bool { return true } // match: (TST (SRA y z) x) - // cond: // result: (TSTshiftRAreg x y z) for { x := v.Args[1] @@ -16143,7 +15302,6 @@ func rewriteValueARM_OpARMTSTconst_0(v *Value) bool { func rewriteValueARM_OpARMTSTshiftLL_0(v *Value) bool { b := v.Block // match: (TSTshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (TSTconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -16162,7 +15320,6 @@ func rewriteValueARM_OpARMTSTshiftLL_0(v *Value) bool { return true } // match: (TSTshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (TSTconst x [int64(int32(uint32(c)< x y)) for { y := v.Args[2] @@ -16202,7 +15358,6 @@ func rewriteValueARM_OpARMTSTshiftLLreg_0(v *Value) bool { return true } // match: (TSTshiftLLreg x y (MOVWconst [c])) - // cond: // result: (TSTshiftLL x y [c]) for { _ = v.Args[2] @@ -16224,7 +15379,6 @@ func rewriteValueARM_OpARMTSTshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMTSTshiftRA_0(v *Value) bool { b := v.Block // match: (TSTshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (TSTconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -16243,7 +15397,6 @@ func rewriteValueARM_OpARMTSTshiftRA_0(v *Value) bool { return true } // match: (TSTshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (TSTconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -16264,7 +15417,6 @@ func rewriteValueARM_OpARMTSTshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMTSTshiftRAreg_0(v *Value) bool { b := v.Block // match: (TSTshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (TSTconst [c] (SRA x y)) for { y := v.Args[2] @@ -16283,7 +15435,6 @@ func rewriteValueARM_OpARMTSTshiftRAreg_0(v *Value) bool { return true } // match: (TSTshiftRAreg x y (MOVWconst [c])) - // cond: // result: (TSTshiftRA x y [c]) for { _ = v.Args[2] @@ -16305,7 +15456,6 @@ func rewriteValueARM_OpARMTSTshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMTSTshiftRL_0(v *Value) bool { b := v.Block // match: (TSTshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (TSTconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -16324,7 +15474,6 @@ func rewriteValueARM_OpARMTSTshiftRL_0(v *Value) bool { return true } // match: (TSTshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (TSTconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -16345,7 +15494,6 @@ func rewriteValueARM_OpARMTSTshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMTSTshiftRLreg_0(v *Value) bool { b := v.Block // match: (TSTshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (TSTconst [c] (SRL x y)) for { y := v.Args[2] @@ -16364,7 +15512,6 @@ func rewriteValueARM_OpARMTSTshiftRLreg_0(v *Value) bool { return true } // match: (TSTshiftRLreg x y (MOVWconst [c])) - // cond: // result: (TSTshiftRL x y [c]) for { _ = v.Args[2] @@ -16385,7 +15532,6 @@ func rewriteValueARM_OpARMTSTshiftRLreg_0(v *Value) bool { } func rewriteValueARM_OpARMXOR_0(v *Value) bool { // match: (XOR x (MOVWconst [c])) - // cond: // result: (XORconst [c] x) for { _ = v.Args[1] @@ -16401,7 +15547,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR (MOVWconst [c]) x) - // cond: // result: (XORconst [c] x) for { x := v.Args[1] @@ -16416,7 +15561,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR x (SLLconst [c] y)) - // cond: // result: (XORshiftLL x y [c]) for { _ = v.Args[1] @@ -16434,7 +15578,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR (SLLconst [c] y) x) - // cond: // result: (XORshiftLL x y [c]) for { x := v.Args[1] @@ -16451,7 +15594,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR x (SRLconst [c] y)) - // cond: // result: (XORshiftRL x y [c]) for { _ = v.Args[1] @@ -16469,7 +15611,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR (SRLconst [c] y) x) - // cond: // result: (XORshiftRL x y [c]) for { x := v.Args[1] @@ -16486,7 +15627,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR x (SRAconst [c] y)) - // cond: // result: (XORshiftRA x y [c]) for { _ = v.Args[1] @@ -16504,7 +15644,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR (SRAconst [c] y) x) - // cond: // result: (XORshiftRA x y [c]) for { x := v.Args[1] @@ -16521,7 +15660,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR x (SRRconst [c] y)) - // cond: // result: (XORshiftRR x y [c]) for { _ = v.Args[1] @@ -16539,7 +15677,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { return true } // match: (XOR (SRRconst [c] y) x) - // cond: // result: (XORshiftRR x y [c]) for { x := v.Args[1] @@ -16559,7 +15696,6 @@ func rewriteValueARM_OpARMXOR_0(v *Value) bool { } func rewriteValueARM_OpARMXOR_10(v *Value) bool { // match: (XOR x (SLL y z)) - // cond: // result: (XORshiftLLreg x y z) for { _ = v.Args[1] @@ -16577,7 +15713,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR (SLL y z) x) - // cond: // result: (XORshiftLLreg x y z) for { x := v.Args[1] @@ -16594,7 +15729,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR x (SRL y z)) - // cond: // result: (XORshiftRLreg x y z) for { _ = v.Args[1] @@ -16612,7 +15746,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR (SRL y z) x) - // cond: // result: (XORshiftRLreg x y z) for { x := v.Args[1] @@ -16629,7 +15762,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR x (SRA y z)) - // cond: // result: (XORshiftRAreg x y z) for { _ = v.Args[1] @@ -16647,7 +15779,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR (SRA y z) x) - // cond: // result: (XORshiftRAreg x y z) for { x := v.Args[1] @@ -16664,7 +15795,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { return true } // match: (XOR x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -16679,7 +15809,6 @@ func rewriteValueARM_OpARMXOR_10(v *Value) bool { } func rewriteValueARM_OpARMXORconst_0(v *Value) bool { // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -16692,7 +15821,6 @@ func rewriteValueARM_OpARMXORconst_0(v *Value) bool { return true } // match: (XORconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c^d]) for { c := v.AuxInt @@ -16706,7 +15834,6 @@ func rewriteValueARM_OpARMXORconst_0(v *Value) bool { return true } // match: (XORconst [c] (XORconst [d] x)) - // cond: // result: (XORconst [c^d] x) for { c := v.AuxInt @@ -16727,7 +15854,6 @@ func rewriteValueARM_OpARMXORshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (XORshiftLL (MOVWconst [c]) x [d]) - // cond: // result: (XORconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -16746,7 +15872,6 @@ func rewriteValueARM_OpARMXORshiftLL_0(v *Value) bool { return true } // match: (XORshiftLL x (MOVWconst [c]) [d]) - // cond: // result: (XORconst x [int64(int32(uint32(c)< [8] (BFXU [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMBFXU { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMBFXU || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARMREV16) @@ -16815,34 +15920,16 @@ func rewriteValueARM_OpARMXORshiftLL_0(v *Value) bool { // cond: objabi.GOARM>=6 // result: (REV16 x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSRLconst { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != 24 { + if v_0.Op != OpARMSRLconst || v_0.Type != typ.UInt16 || v_0.AuxInt != 24 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARMSLLconst { - break - } - if v_0_0.AuxInt != 16 { - break - } - if x != v_0_0.Args[0] { - break - } - if !(objabi.GOARM >= 6) { + if v_0_0.Op != OpARMSLLconst || v_0_0.AuxInt != 16 || x != v_0_0.Args[0] || !(objabi.GOARM >= 6) { break } v.reset(OpARMREV16) @@ -16861,10 +15948,7 @@ func rewriteValueARM_OpARMXORshiftLL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -16876,7 +15960,6 @@ func rewriteValueARM_OpARMXORshiftLL_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftLLreg_0(v *Value) bool { b := v.Block // match: (XORshiftLLreg (MOVWconst [c]) x y) - // cond: // result: (XORconst [c] (SLL x y)) for { y := v.Args[2] @@ -16895,7 +15978,6 @@ func rewriteValueARM_OpARMXORshiftLLreg_0(v *Value) bool { return true } // match: (XORshiftLLreg x y (MOVWconst [c])) - // cond: // result: (XORshiftLL x y [c]) for { _ = v.Args[2] @@ -16917,7 +15999,6 @@ func rewriteValueARM_OpARMXORshiftLLreg_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftRA_0(v *Value) bool { b := v.Block // match: (XORshiftRA (MOVWconst [c]) x [d]) - // cond: // result: (XORconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -16936,7 +16017,6 @@ func rewriteValueARM_OpARMXORshiftRA_0(v *Value) bool { return true } // match: (XORshiftRA x (MOVWconst [c]) [d]) - // cond: // result: (XORconst x [int64(int32(c)>>uint64(d))]) for { d := v.AuxInt @@ -16964,10 +16044,7 @@ func rewriteValueARM_OpARMXORshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -16979,7 +16056,6 @@ func rewriteValueARM_OpARMXORshiftRA_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftRAreg_0(v *Value) bool { b := v.Block // match: (XORshiftRAreg (MOVWconst [c]) x y) - // cond: // result: (XORconst [c] (SRA x y)) for { y := v.Args[2] @@ -16998,7 +16074,6 @@ func rewriteValueARM_OpARMXORshiftRAreg_0(v *Value) bool { return true } // match: (XORshiftRAreg x y (MOVWconst [c])) - // cond: // result: (XORshiftRA x y [c]) for { _ = v.Args[2] @@ -17020,7 +16095,6 @@ func rewriteValueARM_OpARMXORshiftRAreg_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftRL_0(v *Value) bool { b := v.Block // match: (XORshiftRL (MOVWconst [c]) x [d]) - // cond: // result: (XORconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -17039,7 +16113,6 @@ func rewriteValueARM_OpARMXORshiftRL_0(v *Value) bool { return true } // match: (XORshiftRL x (MOVWconst [c]) [d]) - // cond: // result: (XORconst x [int64(int32(uint32(c)>>uint64(d)))]) for { d := v.AuxInt @@ -17056,19 +16129,12 @@ func rewriteValueARM_OpARMXORshiftRL_0(v *Value) bool { return true } // match: (XORshiftRL [c] (SLLconst x [32-c]) x) - // cond: // result: (SRRconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARMSLLconst { - break - } - if v_0.AuxInt != 32-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARMSLLconst || v_0.AuxInt != 32-c || x != v_0.Args[0] { break } v.reset(OpARMSRRconst) @@ -17088,10 +16154,7 @@ func rewriteValueARM_OpARMXORshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARMMOVWconst) @@ -17103,7 +16166,6 @@ func rewriteValueARM_OpARMXORshiftRL_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftRLreg_0(v *Value) bool { b := v.Block // match: (XORshiftRLreg (MOVWconst [c]) x y) - // cond: // result: (XORconst [c] (SRL x y)) for { y := v.Args[2] @@ -17122,7 +16184,6 @@ func rewriteValueARM_OpARMXORshiftRLreg_0(v *Value) bool { return true } // match: (XORshiftRLreg x y (MOVWconst [c])) - // cond: // result: (XORshiftRL x y [c]) for { _ = v.Args[2] @@ -17144,7 +16205,6 @@ func rewriteValueARM_OpARMXORshiftRLreg_0(v *Value) bool { func rewriteValueARM_OpARMXORshiftRR_0(v *Value) bool { b := v.Block // match: (XORshiftRR (MOVWconst [c]) x [d]) - // cond: // result: (XORconst [c] (SRRconst x [d])) for { d := v.AuxInt @@ -17163,7 +16223,6 @@ func rewriteValueARM_OpARMXORshiftRR_0(v *Value) bool { return true } // match: (XORshiftRR x (MOVWconst [c]) [d]) - // cond: // result: (XORconst x [int64(int32(uint32(c)>>uint64(d)|uint32(c)< x y) - // cond: // result: (ADD (SRLconst (SUB x y) [1]) y) for { t := v.Type @@ -17387,7 +16431,6 @@ func rewriteValueARM_OpAvg32u_0(v *Value) bool { func rewriteValueARM_OpBitLen32_0(v *Value) bool { b := v.Block // match: (BitLen32 x) - // cond: // result: (RSBconst [32] (CLZ x)) for { t := v.Type @@ -17448,7 +16491,6 @@ func rewriteValueARM_OpBswap32_0(v *Value) bool { } func rewriteValueARM_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -17465,7 +16507,6 @@ func rewriteValueARM_OpClosureCall_0(v *Value) bool { } func rewriteValueARM_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -17476,7 +16517,6 @@ func rewriteValueARM_OpCom16_0(v *Value) bool { } func rewriteValueARM_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -17487,7 +16527,6 @@ func rewriteValueARM_OpCom32_0(v *Value) bool { } func rewriteValueARM_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -17498,7 +16537,6 @@ func rewriteValueARM_OpCom8_0(v *Value) bool { } func rewriteValueARM_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -17509,7 +16547,6 @@ func rewriteValueARM_OpConst16_0(v *Value) bool { } func rewriteValueARM_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -17520,7 +16557,6 @@ func rewriteValueARM_OpConst32_0(v *Value) bool { } func rewriteValueARM_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (MOVFconst [val]) for { val := v.AuxInt @@ -17531,7 +16567,6 @@ func rewriteValueARM_OpConst32F_0(v *Value) bool { } func rewriteValueARM_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -17542,7 +16577,6 @@ func rewriteValueARM_OpConst64F_0(v *Value) bool { } func rewriteValueARM_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -17553,7 +16587,6 @@ func rewriteValueARM_OpConst8_0(v *Value) bool { } func rewriteValueARM_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVWconst [b]) for { b := v.AuxInt @@ -17564,7 +16597,6 @@ func rewriteValueARM_OpConstBool_0(v *Value) bool { } func rewriteValueARM_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVWconst [0]) for { v.reset(OpARMMOVWconst) @@ -17629,7 +16661,6 @@ func rewriteValueARM_OpCtz16_0(v *Value) bool { } func rewriteValueARM_OpCtz16NonZero_0(v *Value) bool { // match: (Ctz16NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -17685,7 +16716,6 @@ func rewriteValueARM_OpCtz32_0(v *Value) bool { } func rewriteValueARM_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -17751,7 +16781,6 @@ func rewriteValueARM_OpCtz8_0(v *Value) bool { } func rewriteValueARM_OpCtz8NonZero_0(v *Value) bool { // match: (Ctz8NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -17762,7 +16791,6 @@ func rewriteValueARM_OpCtz8NonZero_0(v *Value) bool { } func rewriteValueARM_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (MOVFW x) for { x := v.Args[0] @@ -17773,7 +16801,6 @@ func rewriteValueARM_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueARM_OpCvt32Fto32U_0(v *Value) bool { // match: (Cvt32Fto32U x) - // cond: // result: (MOVFWU x) for { x := v.Args[0] @@ -17784,7 +16811,6 @@ func rewriteValueARM_OpCvt32Fto32U_0(v *Value) bool { } func rewriteValueARM_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (MOVFD x) for { x := v.Args[0] @@ -17795,7 +16821,6 @@ func rewriteValueARM_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueARM_OpCvt32Uto32F_0(v *Value) bool { // match: (Cvt32Uto32F x) - // cond: // result: (MOVWUF x) for { x := v.Args[0] @@ -17806,7 +16831,6 @@ func rewriteValueARM_OpCvt32Uto32F_0(v *Value) bool { } func rewriteValueARM_OpCvt32Uto64F_0(v *Value) bool { // match: (Cvt32Uto64F x) - // cond: // result: (MOVWUD x) for { x := v.Args[0] @@ -17817,7 +16841,6 @@ func rewriteValueARM_OpCvt32Uto64F_0(v *Value) bool { } func rewriteValueARM_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (MOVWF x) for { x := v.Args[0] @@ -17828,7 +16851,6 @@ func rewriteValueARM_OpCvt32to32F_0(v *Value) bool { } func rewriteValueARM_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (MOVWD x) for { x := v.Args[0] @@ -17839,7 +16861,6 @@ func rewriteValueARM_OpCvt32to64F_0(v *Value) bool { } func rewriteValueARM_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (MOVDW x) for { x := v.Args[0] @@ -17850,7 +16871,6 @@ func rewriteValueARM_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueARM_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (MOVDF x) for { x := v.Args[0] @@ -17861,7 +16881,6 @@ func rewriteValueARM_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueARM_OpCvt64Fto32U_0(v *Value) bool { // match: (Cvt64Fto32U x) - // cond: // result: (MOVDWU x) for { x := v.Args[0] @@ -17874,7 +16893,6 @@ func rewriteValueARM_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (Div32 (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -17893,7 +16911,6 @@ func rewriteValueARM_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (Div32u (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -17912,7 +16929,6 @@ func rewriteValueARM_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 x y) - // cond: // result: (SUB (XOR (Select0 (CALLudiv (SUB (XOR x (Signmask x)) (Signmask x)) (SUB (XOR y (Signmask y)) (Signmask y)))) (Signmask (XOR x y))) (Signmask (XOR x y))) for { y := v.Args[1] @@ -17963,7 +16979,6 @@ func rewriteValueARM_OpDiv32_0(v *Value) bool { } func rewriteValueARM_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (DIVF x y) for { y := v.Args[1] @@ -17978,7 +16993,6 @@ func rewriteValueARM_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (Select0 (CALLudiv x y)) for { y := v.Args[1] @@ -17994,7 +17008,6 @@ func rewriteValueARM_OpDiv32u_0(v *Value) bool { } func rewriteValueARM_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (DIVD x y) for { y := v.Args[1] @@ -18009,7 +17022,6 @@ func rewriteValueARM_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (Div32 (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -18028,7 +17040,6 @@ func rewriteValueARM_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (Div32u (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -18047,7 +17058,6 @@ func rewriteValueARM_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (Equal (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -18067,7 +17077,6 @@ func rewriteValueARM_OpEq16_0(v *Value) bool { func rewriteValueARM_OpEq32_0(v *Value) bool { b := v.Block // match: (Eq32 x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -18083,7 +17092,6 @@ func rewriteValueARM_OpEq32_0(v *Value) bool { func rewriteValueARM_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (Equal (CMPF x y)) for { y := v.Args[1] @@ -18099,7 +17107,6 @@ func rewriteValueARM_OpEq32F_0(v *Value) bool { func rewriteValueARM_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (Equal (CMPD x y)) for { y := v.Args[1] @@ -18116,7 +17123,6 @@ func rewriteValueARM_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (Equal (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -18137,7 +17143,6 @@ func rewriteValueARM_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (XORconst [1] (XOR x y)) for { y := v.Args[1] @@ -18154,7 +17159,6 @@ func rewriteValueARM_OpEqB_0(v *Value) bool { func rewriteValueARM_OpEqPtr_0(v *Value) bool { b := v.Block // match: (EqPtr x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -18171,7 +17175,6 @@ func rewriteValueARM_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (GreaterEqual (CMP (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -18192,7 +17195,6 @@ func rewriteValueARM_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (GreaterEqualU (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -18212,7 +17214,6 @@ func rewriteValueARM_OpGeq16U_0(v *Value) bool { func rewriteValueARM_OpGeq32_0(v *Value) bool { b := v.Block // match: (Geq32 x y) - // cond: // result: (GreaterEqual (CMP x y)) for { y := v.Args[1] @@ -18228,7 +17229,6 @@ func rewriteValueARM_OpGeq32_0(v *Value) bool { func rewriteValueARM_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (GreaterEqual (CMPF x y)) for { y := v.Args[1] @@ -18244,7 +17244,6 @@ func rewriteValueARM_OpGeq32F_0(v *Value) bool { func rewriteValueARM_OpGeq32U_0(v *Value) bool { b := v.Block // match: (Geq32U x y) - // cond: // result: (GreaterEqualU (CMP x y)) for { y := v.Args[1] @@ -18260,7 +17259,6 @@ func rewriteValueARM_OpGeq32U_0(v *Value) bool { func rewriteValueARM_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (GreaterEqual (CMPD x y)) for { y := v.Args[1] @@ -18277,7 +17275,6 @@ func rewriteValueARM_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (GreaterEqual (CMP (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -18298,7 +17295,6 @@ func rewriteValueARM_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (GreaterEqualU (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -18317,7 +17313,6 @@ func rewriteValueARM_OpGeq8U_0(v *Value) bool { } func rewriteValueARM_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpARMLoweredGetCallerPC) @@ -18326,7 +17321,6 @@ func rewriteValueARM_OpGetCallerPC_0(v *Value) bool { } func rewriteValueARM_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpARMLoweredGetCallerSP) @@ -18335,7 +17329,6 @@ func rewriteValueARM_OpGetCallerSP_0(v *Value) bool { } func rewriteValueARM_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpARMLoweredGetClosurePtr) @@ -18346,7 +17339,6 @@ func rewriteValueARM_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (GreaterThan (CMP (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -18367,7 +17359,6 @@ func rewriteValueARM_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (GreaterThanU (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -18387,7 +17378,6 @@ func rewriteValueARM_OpGreater16U_0(v *Value) bool { func rewriteValueARM_OpGreater32_0(v *Value) bool { b := v.Block // match: (Greater32 x y) - // cond: // result: (GreaterThan (CMP x y)) for { y := v.Args[1] @@ -18403,7 +17393,6 @@ func rewriteValueARM_OpGreater32_0(v *Value) bool { func rewriteValueARM_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (GreaterThan (CMPF x y)) for { y := v.Args[1] @@ -18419,7 +17408,6 @@ func rewriteValueARM_OpGreater32F_0(v *Value) bool { func rewriteValueARM_OpGreater32U_0(v *Value) bool { b := v.Block // match: (Greater32U x y) - // cond: // result: (GreaterThanU (CMP x y)) for { y := v.Args[1] @@ -18435,7 +17423,6 @@ func rewriteValueARM_OpGreater32U_0(v *Value) bool { func rewriteValueARM_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (GreaterThan (CMPD x y)) for { y := v.Args[1] @@ -18452,7 +17439,6 @@ func rewriteValueARM_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (GreaterThan (CMP (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -18473,7 +17459,6 @@ func rewriteValueARM_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (GreaterThanU (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -18492,7 +17477,6 @@ func rewriteValueARM_OpGreater8U_0(v *Value) bool { } func rewriteValueARM_OpHmul32_0(v *Value) bool { // match: (Hmul32 x y) - // cond: // result: (HMUL x y) for { y := v.Args[1] @@ -18505,7 +17489,6 @@ func rewriteValueARM_OpHmul32_0(v *Value) bool { } func rewriteValueARM_OpHmul32u_0(v *Value) bool { // match: (Hmul32u x y) - // cond: // result: (HMULU x y) for { y := v.Args[1] @@ -18518,7 +17501,6 @@ func rewriteValueARM_OpHmul32u_0(v *Value) bool { } func rewriteValueARM_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -18534,7 +17516,6 @@ func rewriteValueARM_OpInterCall_0(v *Value) bool { func rewriteValueARM_OpIsInBounds_0(v *Value) bool { b := v.Block // match: (IsInBounds idx len) - // cond: // result: (LessThanU (CMP idx len)) for { len := v.Args[1] @@ -18550,7 +17531,6 @@ func rewriteValueARM_OpIsInBounds_0(v *Value) bool { func rewriteValueARM_OpIsNonNil_0(v *Value) bool { b := v.Block // match: (IsNonNil ptr) - // cond: // result: (NotEqual (CMPconst [0] ptr)) for { ptr := v.Args[0] @@ -18565,7 +17545,6 @@ func rewriteValueARM_OpIsNonNil_0(v *Value) bool { func rewriteValueARM_OpIsSliceInBounds_0(v *Value) bool { b := v.Block // match: (IsSliceInBounds idx len) - // cond: // result: (LessEqualU (CMP idx len)) for { len := v.Args[1] @@ -18582,7 +17561,6 @@ func rewriteValueARM_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (LessEqual (CMP (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -18603,7 +17581,6 @@ func rewriteValueARM_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (LessEqualU (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -18623,7 +17600,6 @@ func rewriteValueARM_OpLeq16U_0(v *Value) bool { func rewriteValueARM_OpLeq32_0(v *Value) bool { b := v.Block // match: (Leq32 x y) - // cond: // result: (LessEqual (CMP x y)) for { y := v.Args[1] @@ -18639,7 +17615,6 @@ func rewriteValueARM_OpLeq32_0(v *Value) bool { func rewriteValueARM_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (GreaterEqual (CMPF y x)) for { y := v.Args[1] @@ -18655,7 +17630,6 @@ func rewriteValueARM_OpLeq32F_0(v *Value) bool { func rewriteValueARM_OpLeq32U_0(v *Value) bool { b := v.Block // match: (Leq32U x y) - // cond: // result: (LessEqualU (CMP x y)) for { y := v.Args[1] @@ -18671,7 +17645,6 @@ func rewriteValueARM_OpLeq32U_0(v *Value) bool { func rewriteValueARM_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (GreaterEqual (CMPD y x)) for { y := v.Args[1] @@ -18688,7 +17661,6 @@ func rewriteValueARM_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (LessEqual (CMP (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -18709,7 +17681,6 @@ func rewriteValueARM_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (LessEqualU (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -18730,7 +17701,6 @@ func rewriteValueARM_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (LessThan (CMP (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -18751,7 +17721,6 @@ func rewriteValueARM_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (LessThanU (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -18771,7 +17740,6 @@ func rewriteValueARM_OpLess16U_0(v *Value) bool { func rewriteValueARM_OpLess32_0(v *Value) bool { b := v.Block // match: (Less32 x y) - // cond: // result: (LessThan (CMP x y)) for { y := v.Args[1] @@ -18787,7 +17755,6 @@ func rewriteValueARM_OpLess32_0(v *Value) bool { func rewriteValueARM_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (GreaterThan (CMPF y x)) for { y := v.Args[1] @@ -18803,7 +17770,6 @@ func rewriteValueARM_OpLess32F_0(v *Value) bool { func rewriteValueARM_OpLess32U_0(v *Value) bool { b := v.Block // match: (Less32U x y) - // cond: // result: (LessThanU (CMP x y)) for { y := v.Args[1] @@ -18819,7 +17785,6 @@ func rewriteValueARM_OpLess32U_0(v *Value) bool { func rewriteValueARM_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (GreaterThan (CMPD y x)) for { y := v.Args[1] @@ -18836,7 +17801,6 @@ func rewriteValueARM_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (LessThan (CMP (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -18857,7 +17821,6 @@ func rewriteValueARM_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (LessThanU (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -18999,7 +17962,6 @@ func rewriteValueARM_OpLoad_0(v *Value) bool { } func rewriteValueARM_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVWaddr {sym} base) for { sym := v.Aux @@ -19015,7 +17977,6 @@ func rewriteValueARM_OpLsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x16 x y) - // cond: // result: (CMOVWHSconst (SLL x (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -19040,7 +18001,6 @@ func rewriteValueARM_OpLsh16x16_0(v *Value) bool { func rewriteValueARM_OpLsh16x32_0(v *Value) bool { b := v.Block // match: (Lsh16x32 x y) - // cond: // result: (CMOVWHSconst (SLL x y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -19101,7 +18061,6 @@ func rewriteValueARM_OpLsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x8 x y) - // cond: // result: (SLL x (ZeroExt8to32 y)) for { y := v.Args[1] @@ -19118,7 +18077,6 @@ func rewriteValueARM_OpLsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x16 x y) - // cond: // result: (CMOVWHSconst (SLL x (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -19143,7 +18101,6 @@ func rewriteValueARM_OpLsh32x16_0(v *Value) bool { func rewriteValueARM_OpLsh32x32_0(v *Value) bool { b := v.Block // match: (Lsh32x32 x y) - // cond: // result: (CMOVWHSconst (SLL x y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -19204,7 +18161,6 @@ func rewriteValueARM_OpLsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x8 x y) - // cond: // result: (SLL x (ZeroExt8to32 y)) for { y := v.Args[1] @@ -19221,7 +18177,6 @@ func rewriteValueARM_OpLsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x16 x y) - // cond: // result: (CMOVWHSconst (SLL x (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -19246,7 +18201,6 @@ func rewriteValueARM_OpLsh8x16_0(v *Value) bool { func rewriteValueARM_OpLsh8x32_0(v *Value) bool { b := v.Block // match: (Lsh8x32 x y) - // cond: // result: (CMOVWHSconst (SLL x y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -19307,7 +18261,6 @@ func rewriteValueARM_OpLsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x8 x y) - // cond: // result: (SLL x (ZeroExt8to32 y)) for { y := v.Args[1] @@ -19324,7 +18277,6 @@ func rewriteValueARM_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (Mod32 (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -19343,7 +18295,6 @@ func rewriteValueARM_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (Mod32u (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -19362,7 +18313,6 @@ func rewriteValueARM_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (SUB (XOR (Select1 (CALLudiv (SUB (XOR x (Signmask x)) (Signmask x)) (SUB (XOR y (Signmask y)) (Signmask y)))) (Signmask x)) (Signmask x)) for { y := v.Args[1] @@ -19409,7 +18359,6 @@ func rewriteValueARM_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (Select1 (CALLudiv x y)) for { y := v.Args[1] @@ -19427,7 +18376,6 @@ func rewriteValueARM_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (Mod32 (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -19446,7 +18394,6 @@ func rewriteValueARM_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (Mod32u (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -19466,7 +18413,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -19479,7 +18425,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBUload src mem) mem) for { if v.AuxInt != 1 { @@ -19521,7 +18466,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem)) for { if v.AuxInt != 2 { @@ -19604,7 +18548,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVBstore [3] dst (MOVBUload [3] src mem) (MOVBstore [2] dst (MOVBUload [2] src mem) (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem)))) for { if v.AuxInt != 4 { @@ -19650,7 +18593,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBUload [2] src mem) (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem))) for { if v.AuxInt != 3 { @@ -19732,7 +18674,6 @@ func rewriteValueARM_OpMove_0(v *Value) bool { } func rewriteValueARM_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -19745,7 +18686,6 @@ func rewriteValueARM_OpMul16_0(v *Value) bool { } func rewriteValueARM_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -19758,7 +18698,6 @@ func rewriteValueARM_OpMul32_0(v *Value) bool { } func rewriteValueARM_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (MULF x y) for { y := v.Args[1] @@ -19771,7 +18710,6 @@ func rewriteValueARM_OpMul32F_0(v *Value) bool { } func rewriteValueARM_OpMul32uhilo_0(v *Value) bool { // match: (Mul32uhilo x y) - // cond: // result: (MULLU x y) for { y := v.Args[1] @@ -19784,7 +18722,6 @@ func rewriteValueARM_OpMul32uhilo_0(v *Value) bool { } func rewriteValueARM_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (MULD x y) for { y := v.Args[1] @@ -19797,7 +18734,6 @@ func rewriteValueARM_OpMul64F_0(v *Value) bool { } func rewriteValueARM_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -19810,7 +18746,6 @@ func rewriteValueARM_OpMul8_0(v *Value) bool { } func rewriteValueARM_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (RSBconst [0] x) for { x := v.Args[0] @@ -19822,7 +18757,6 @@ func rewriteValueARM_OpNeg16_0(v *Value) bool { } func rewriteValueARM_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (RSBconst [0] x) for { x := v.Args[0] @@ -19834,7 +18768,6 @@ func rewriteValueARM_OpNeg32_0(v *Value) bool { } func rewriteValueARM_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (NEGF x) for { x := v.Args[0] @@ -19845,7 +18778,6 @@ func rewriteValueARM_OpNeg32F_0(v *Value) bool { } func rewriteValueARM_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (NEGD x) for { x := v.Args[0] @@ -19856,7 +18788,6 @@ func rewriteValueARM_OpNeg64F_0(v *Value) bool { } func rewriteValueARM_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (RSBconst [0] x) for { x := v.Args[0] @@ -19870,7 +18801,6 @@ func rewriteValueARM_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (NotEqual (CMP (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -19890,7 +18820,6 @@ func rewriteValueARM_OpNeq16_0(v *Value) bool { func rewriteValueARM_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -19906,7 +18835,6 @@ func rewriteValueARM_OpNeq32_0(v *Value) bool { func rewriteValueARM_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (NotEqual (CMPF x y)) for { y := v.Args[1] @@ -19922,7 +18850,6 @@ func rewriteValueARM_OpNeq32F_0(v *Value) bool { func rewriteValueARM_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (NotEqual (CMPD x y)) for { y := v.Args[1] @@ -19939,7 +18866,6 @@ func rewriteValueARM_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (NotEqual (CMP (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -19958,7 +18884,6 @@ func rewriteValueARM_OpNeq8_0(v *Value) bool { } func rewriteValueARM_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -19972,7 +18897,6 @@ func rewriteValueARM_OpNeqB_0(v *Value) bool { func rewriteValueARM_OpNeqPtr_0(v *Value) bool { b := v.Block // match: (NeqPtr x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -19987,7 +18911,6 @@ func rewriteValueARM_OpNeqPtr_0(v *Value) bool { } func rewriteValueARM_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -20000,7 +18923,6 @@ func rewriteValueARM_OpNilCheck_0(v *Value) bool { } func rewriteValueARM_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORconst [1] x) for { x := v.Args[0] @@ -20012,7 +18934,6 @@ func rewriteValueARM_OpNot_0(v *Value) bool { } func rewriteValueARM_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr:(SP)) - // cond: // result: (MOVWaddr [off] ptr) for { off := v.AuxInt @@ -20026,7 +18947,6 @@ func rewriteValueARM_OpOffPtr_0(v *Value) bool { return true } // match: (OffPtr [off] ptr) - // cond: // result: (ADDconst [off] ptr) for { off := v.AuxInt @@ -20039,7 +18959,6 @@ func rewriteValueARM_OpOffPtr_0(v *Value) bool { } func rewriteValueARM_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -20052,7 +18971,6 @@ func rewriteValueARM_OpOr16_0(v *Value) bool { } func rewriteValueARM_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -20065,7 +18983,6 @@ func rewriteValueARM_OpOr32_0(v *Value) bool { } func rewriteValueARM_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -20078,7 +18995,6 @@ func rewriteValueARM_OpOr8_0(v *Value) bool { } func rewriteValueARM_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -20213,7 +19129,6 @@ func rewriteValueARM_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVWconst [c])) - // cond: // result: (Or16 (Lsh16x32 x (MOVWconst [c&15])) (Rsh16Ux32 x (MOVWconst [-c&15]))) for { t := v.Type @@ -20244,7 +19159,6 @@ func rewriteValueARM_OpRotateLeft16_0(v *Value) bool { func rewriteValueARM_OpRotateLeft32_0(v *Value) bool { b := v.Block // match: (RotateLeft32 x (MOVWconst [c])) - // cond: // result: (SRRconst [-c&31] x) for { _ = v.Args[1] @@ -20260,7 +19174,6 @@ func rewriteValueARM_OpRotateLeft32_0(v *Value) bool { return true } // match: (RotateLeft32 x y) - // cond: // result: (SRR x (RSBconst [0] y)) for { y := v.Args[1] @@ -20278,7 +19191,6 @@ func rewriteValueARM_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVWconst [c])) - // cond: // result: (Or8 (Lsh8x32 x (MOVWconst [c&7])) (Rsh8Ux32 x (MOVWconst [-c&7]))) for { t := v.Type @@ -20308,7 +19220,6 @@ func rewriteValueARM_OpRotateLeft8_0(v *Value) bool { } func rewriteValueARM_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -20320,7 +19231,6 @@ func rewriteValueARM_OpRound32F_0(v *Value) bool { } func rewriteValueARM_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -20334,7 +19244,6 @@ func rewriteValueARM_OpRsh16Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux16 x y) - // cond: // result: (CMOVWHSconst (SRL (ZeroExt16to32 x) (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -20362,7 +19271,6 @@ func rewriteValueARM_OpRsh16Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux32 x y) - // cond: // result: (CMOVWHSconst (SRL (ZeroExt16to32 x) y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -20430,7 +19338,6 @@ func rewriteValueARM_OpRsh16Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux8 x y) - // cond: // result: (SRL (ZeroExt16to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20449,7 +19356,6 @@ func rewriteValueARM_OpRsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x16 x y) - // cond: // result: (SRAcond (SignExt16to32 x) (ZeroExt16to32 y) (CMPconst [256] (ZeroExt16to32 y))) for { y := v.Args[1] @@ -20474,7 +19380,6 @@ func rewriteValueARM_OpRsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x32 x y) - // cond: // result: (SRAcond (SignExt16to32 x) y (CMPconst [256] y)) for { y := v.Args[1] @@ -20544,7 +19449,6 @@ func rewriteValueARM_OpRsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x8 x y) - // cond: // result: (SRA (SignExt16to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20563,7 +19467,6 @@ func rewriteValueARM_OpRsh32Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux16 x y) - // cond: // result: (CMOVWHSconst (SRL x (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -20588,7 +19491,6 @@ func rewriteValueARM_OpRsh32Ux16_0(v *Value) bool { func rewriteValueARM_OpRsh32Ux32_0(v *Value) bool { b := v.Block // match: (Rsh32Ux32 x y) - // cond: // result: (CMOVWHSconst (SRL x y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -20649,7 +19551,6 @@ func rewriteValueARM_OpRsh32Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux8 x y) - // cond: // result: (SRL x (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20666,7 +19567,6 @@ func rewriteValueARM_OpRsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x16 x y) - // cond: // result: (SRAcond x (ZeroExt16to32 y) (CMPconst [256] (ZeroExt16to32 y))) for { y := v.Args[1] @@ -20688,7 +19588,6 @@ func rewriteValueARM_OpRsh32x16_0(v *Value) bool { func rewriteValueARM_OpRsh32x32_0(v *Value) bool { b := v.Block // match: (Rsh32x32 x y) - // cond: // result: (SRAcond x y (CMPconst [256] y)) for { y := v.Args[1] @@ -20748,7 +19647,6 @@ func rewriteValueARM_OpRsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x8 x y) - // cond: // result: (SRA x (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20765,7 +19663,6 @@ func rewriteValueARM_OpRsh8Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux16 x y) - // cond: // result: (CMOVWHSconst (SRL (ZeroExt8to32 x) (ZeroExt16to32 y)) (CMPconst [256] (ZeroExt16to32 y)) [0]) for { y := v.Args[1] @@ -20793,7 +19690,6 @@ func rewriteValueARM_OpRsh8Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux32 x y) - // cond: // result: (CMOVWHSconst (SRL (ZeroExt8to32 x) y) (CMPconst [256] y) [0]) for { y := v.Args[1] @@ -20861,7 +19757,6 @@ func rewriteValueARM_OpRsh8Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux8 x y) - // cond: // result: (SRL (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20880,7 +19775,6 @@ func rewriteValueARM_OpRsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x16 x y) - // cond: // result: (SRAcond (SignExt8to32 x) (ZeroExt16to32 y) (CMPconst [256] (ZeroExt16to32 y))) for { y := v.Args[1] @@ -20905,7 +19799,6 @@ func rewriteValueARM_OpRsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x32 x y) - // cond: // result: (SRAcond (SignExt8to32 x) y (CMPconst [256] y)) for { y := v.Args[1] @@ -20975,7 +19868,6 @@ func rewriteValueARM_OpRsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x8 x y) - // cond: // result: (SRA (SignExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -20992,7 +19884,6 @@ func rewriteValueARM_OpRsh8x8_0(v *Value) bool { } func rewriteValueARM_OpSelect0_0(v *Value) bool { // match: (Select0 (CALLudiv x (MOVWconst [1]))) - // cond: // result: x for { v_0 := v.Args[0] @@ -21002,10 +19893,7 @@ func rewriteValueARM_OpSelect0_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARMMOVWconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpARMMOVWconst || v_0_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -21037,7 +19925,6 @@ func rewriteValueARM_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (CALLudiv (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)/uint32(d)))]) for { v_0 := v.Args[0] @@ -21063,7 +19950,6 @@ func rewriteValueARM_OpSelect0_0(v *Value) bool { } func rewriteValueARM_OpSelect1_0(v *Value) bool { // match: (Select1 (CALLudiv _ (MOVWconst [1]))) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -21072,10 +19958,7 @@ func rewriteValueARM_OpSelect1_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARMMOVWconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpARMMOVWconst || v_0_1.AuxInt != 1 { break } v.reset(OpARMMOVWconst) @@ -21106,7 +19989,6 @@ func rewriteValueARM_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (CALLudiv (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)%uint32(d)))]) for { v_0 := v.Args[0] @@ -21132,7 +20014,6 @@ func rewriteValueARM_OpSelect1_0(v *Value) bool { } func rewriteValueARM_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -21143,7 +20024,6 @@ func rewriteValueARM_OpSignExt16to32_0(v *Value) bool { } func rewriteValueARM_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -21154,7 +20034,6 @@ func rewriteValueARM_OpSignExt8to16_0(v *Value) bool { } func rewriteValueARM_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -21165,7 +20044,6 @@ func rewriteValueARM_OpSignExt8to32_0(v *Value) bool { } func rewriteValueARM_OpSignmask_0(v *Value) bool { // match: (Signmask x) - // cond: // result: (SRAconst x [31]) for { x := v.Args[0] @@ -21178,7 +20056,6 @@ func rewriteValueARM_OpSignmask_0(v *Value) bool { func rewriteValueARM_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRAconst (RSBconst [0] x) [31]) for { t := v.Type @@ -21194,7 +20071,6 @@ func rewriteValueARM_OpSlicemask_0(v *Value) bool { } func rewriteValueARM_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (SQRTD x) for { x := v.Args[0] @@ -21205,7 +20081,6 @@ func rewriteValueARM_OpSqrt_0(v *Value) bool { } func rewriteValueARM_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -21308,7 +20183,6 @@ func rewriteValueARM_OpStore_0(v *Value) bool { } func rewriteValueARM_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -21321,7 +20195,6 @@ func rewriteValueARM_OpSub16_0(v *Value) bool { } func rewriteValueARM_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -21334,7 +20207,6 @@ func rewriteValueARM_OpSub32_0(v *Value) bool { } func rewriteValueARM_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (SUBF x y) for { y := v.Args[1] @@ -21347,7 +20219,6 @@ func rewriteValueARM_OpSub32F_0(v *Value) bool { } func rewriteValueARM_OpSub32carry_0(v *Value) bool { // match: (Sub32carry x y) - // cond: // result: (SUBS x y) for { y := v.Args[1] @@ -21360,7 +20231,6 @@ func rewriteValueARM_OpSub32carry_0(v *Value) bool { } func rewriteValueARM_OpSub32withcarry_0(v *Value) bool { // match: (Sub32withcarry x y c) - // cond: // result: (SBC x y c) for { c := v.Args[2] @@ -21375,7 +20245,6 @@ func rewriteValueARM_OpSub32withcarry_0(v *Value) bool { } func rewriteValueARM_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (SUBD x y) for { y := v.Args[1] @@ -21388,7 +20257,6 @@ func rewriteValueARM_OpSub64F_0(v *Value) bool { } func rewriteValueARM_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -21401,7 +20269,6 @@ func rewriteValueARM_OpSub8_0(v *Value) bool { } func rewriteValueARM_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -21414,7 +20281,6 @@ func rewriteValueARM_OpSubPtr_0(v *Value) bool { } func rewriteValueARM_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -21426,7 +20292,6 @@ func rewriteValueARM_OpTrunc16to8_0(v *Value) bool { } func rewriteValueARM_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -21438,7 +20303,6 @@ func rewriteValueARM_OpTrunc32to16_0(v *Value) bool { } func rewriteValueARM_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -21450,7 +20314,6 @@ func rewriteValueARM_OpTrunc32to8_0(v *Value) bool { } func rewriteValueARM_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -21467,7 +20330,6 @@ func rewriteValueARM_OpWB_0(v *Value) bool { } func rewriteValueARM_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -21480,7 +20342,6 @@ func rewriteValueARM_OpXor16_0(v *Value) bool { } func rewriteValueARM_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -21493,7 +20354,6 @@ func rewriteValueARM_OpXor32_0(v *Value) bool { } func rewriteValueARM_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -21509,7 +20369,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -21522,7 +20381,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { return true } // match: (Zero [1] ptr mem) - // cond: // result: (MOVBstore ptr (MOVWconst [0]) mem) for { if v.AuxInt != 1 { @@ -21560,7 +20418,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { return true } // match: (Zero [2] ptr mem) - // cond: // result: (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem)) for { if v.AuxInt != 2 { @@ -21635,7 +20492,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { return true } // match: (Zero [4] ptr mem) - // cond: // result: (MOVBstore [3] ptr (MOVWconst [0]) (MOVBstore [2] ptr (MOVWconst [0]) (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem)))) for { if v.AuxInt != 4 { @@ -21674,7 +20530,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { return true } // match: (Zero [3] ptr mem) - // cond: // result: (MOVBstore [2] ptr (MOVWconst [0]) (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem))) for { if v.AuxInt != 3 { @@ -21753,7 +20608,6 @@ func rewriteValueARM_OpZero_0(v *Value) bool { } func rewriteValueARM_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -21764,7 +20618,6 @@ func rewriteValueARM_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueARM_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -21775,7 +20628,6 @@ func rewriteValueARM_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueARM_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -21788,7 +20640,6 @@ func rewriteValueARM_OpZeromask_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zeromask x) - // cond: // result: (SRAconst (RSBshiftRL x x [1]) [31]) for { x := v.Args[0] @@ -21807,7 +20658,6 @@ func rewriteBlockARM(b *Block) bool { switch b.Kind { case BlockARMEQ: // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -21816,7 +20666,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (EQ (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -21826,7 +20675,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (EQ (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -21836,7 +20684,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (EQ (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -21846,7 +20693,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (EQ (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -21856,7 +20702,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -22739,7 +21584,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMGE: // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -22748,7 +21592,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -22758,7 +21601,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -22768,7 +21610,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -22777,7 +21618,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -22786,7 +21626,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -23669,7 +22508,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMGT: // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -23679,7 +22517,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -23689,7 +22526,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -23699,7 +22535,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -23708,7 +22543,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -23717,7 +22551,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -24600,7 +23433,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockIf: // match: (If (Equal cc) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpARMEqual { cc := v.Args[0] @@ -24610,7 +23442,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (NotEqual cc) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpARMNotEqual { cc := v.Args[0] @@ -24620,7 +23451,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (LessThan cc) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpARMLessThan { cc := v.Args[0] @@ -24630,7 +23460,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (LessThanU cc) yes no) - // cond: // result: (ULT cc yes no) for v.Op == OpARMLessThanU { cc := v.Args[0] @@ -24640,7 +23469,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (LessEqual cc) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpARMLessEqual { cc := v.Args[0] @@ -24650,7 +23478,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (LessEqualU cc) yes no) - // cond: // result: (ULE cc yes no) for v.Op == OpARMLessEqualU { cc := v.Args[0] @@ -24660,7 +23487,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (GreaterThan cc) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpARMGreaterThan { cc := v.Args[0] @@ -24670,7 +23496,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (GreaterThanU cc) yes no) - // cond: // result: (UGT cc yes no) for v.Op == OpARMGreaterThanU { cc := v.Args[0] @@ -24680,7 +23505,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (GreaterEqual cc) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpARMGreaterEqual { cc := v.Args[0] @@ -24690,7 +23514,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If (GreaterEqualU cc) yes no) - // cond: // result: (UGE cc yes no) for v.Op == OpARMGreaterEqualU { cc := v.Args[0] @@ -24700,7 +23523,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NE (CMPconst [0] cond) yes no) for { cond := b.Control @@ -24714,7 +23536,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMLE: // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -24723,7 +23544,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -24732,7 +23552,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -24741,7 +23560,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -24751,7 +23569,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -24761,7 +23578,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -25644,7 +24460,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMLT: // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -25654,7 +24469,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -25663,7 +24477,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -25672,7 +24485,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -25682,7 +24494,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -25692,7 +24503,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -26575,7 +25385,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMNE: // match: (NE (CMPconst [0] (Equal cc)) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26592,7 +25401,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (NotEqual cc)) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26609,7 +25417,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (LessThan cc)) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26626,7 +25433,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (LessThanU cc)) yes no) - // cond: // result: (ULT cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26643,7 +25449,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (LessEqual cc)) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26660,7 +25465,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (LessEqualU cc)) yes no) - // cond: // result: (ULE cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26677,7 +25481,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (GreaterThan cc)) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26694,7 +25497,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (GreaterThanU cc)) yes no) - // cond: // result: (UGT cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26711,7 +25513,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (GreaterEqual cc)) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26728,7 +25529,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (CMPconst [0] (GreaterEqualU cc)) yes no) - // cond: // result: (UGE cc yes no) for v.Op == OpARMCMPconst { if v.AuxInt != 0 { @@ -26745,7 +25545,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -26755,7 +25554,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -26764,7 +25562,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -26773,7 +25570,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -26782,7 +25578,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -26791,7 +25586,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -27674,7 +26468,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMUGE: // match: (UGE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -27683,7 +26476,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -27693,7 +26485,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -27702,7 +26493,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -27712,7 +26502,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -27721,7 +26510,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGE (InvertFlags cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -27732,7 +26520,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMUGT: // match: (UGT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -27742,7 +26529,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -27752,7 +26538,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -27761,7 +26546,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -27771,7 +26555,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -27780,7 +26563,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (UGT (InvertFlags cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -27791,7 +26573,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMULE: // match: (ULE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -27800,7 +26581,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -27809,7 +26589,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -27819,7 +26598,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -27828,7 +26606,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -27838,7 +26615,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULE (InvertFlags cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] @@ -27849,7 +26625,6 @@ func rewriteBlockARM(b *Block) bool { } case BlockARMULT: // match: (ULT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagEQ { b.Kind = BlockFirst @@ -27859,7 +26634,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst @@ -27868,7 +26642,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst @@ -27878,7 +26651,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst @@ -27887,7 +26659,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst @@ -27897,7 +26668,6 @@ func rewriteBlockARM(b *Block) bool { return true } // match: (ULT (InvertFlags cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpARMInvertFlags { cmp := v.Args[0] diff --git a/src/cmd/compile/internal/ssa/rewriteARM64.go b/src/cmd/compile/internal/ssa/rewriteARM64.go index fc677726dc..703712ea44 100644 --- a/src/cmd/compile/internal/ssa/rewriteARM64.go +++ b/src/cmd/compile/internal/ssa/rewriteARM64.go @@ -956,31 +956,21 @@ func rewriteValueARM64_OpARM64ADCSflags_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ADCSflags x y (Select1 (ADDSconstflags [-1] (ADCzerocarry c)))) - // cond: // result: (ADCSflags x y c) for { _ = v.Args[2] x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpSelect1 { - break - } - if v_2.Type != types.TypeFlags { + if v_2.Op != OpSelect1 || v_2.Type != types.TypeFlags { break } v_2_0 := v_2.Args[0] - if v_2_0.Op != OpARM64ADDSconstflags { - break - } - if v_2_0.AuxInt != -1 { + if v_2_0.Op != OpARM64ADDSconstflags || v_2_0.AuxInt != -1 { break } v_2_0_0 := v_2_0.Args[0] - if v_2_0_0.Op != OpARM64ADCzerocarry { - break - } - if v_2_0_0.Type != typ.UInt64 { + if v_2_0_0.Op != OpARM64ADCzerocarry || v_2_0_0.Type != typ.UInt64 { break } c := v_2_0_0.Args[0] @@ -991,31 +981,21 @@ func rewriteValueARM64_OpARM64ADCSflags_0(v *Value) bool { return true } // match: (ADCSflags x y (Select1 (ADDSconstflags [-1] (MOVDconst [0])))) - // cond: // result: (ADDSflags x y) for { _ = v.Args[2] x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpSelect1 { - break - } - if v_2.Type != types.TypeFlags { + if v_2.Op != OpSelect1 || v_2.Type != types.TypeFlags { break } v_2_0 := v_2.Args[0] - if v_2_0.Op != OpARM64ADDSconstflags { - break - } - if v_2_0.AuxInt != -1 { + if v_2_0.Op != OpARM64ADDSconstflags || v_2_0.AuxInt != -1 { break } v_2_0_0 := v_2_0.Args[0] - if v_2_0_0.Op != OpARM64MOVDconst { - break - } - if v_2_0_0.AuxInt != 0 { + if v_2_0_0.Op != OpARM64MOVDconst || v_2_0_0.AuxInt != 0 { break } v.reset(OpARM64ADDSflags) @@ -1027,7 +1007,6 @@ func rewriteValueARM64_OpARM64ADCSflags_0(v *Value) bool { } func rewriteValueARM64_OpARM64ADD_0(v *Value) bool { // match: (ADD x (MOVDconst [c])) - // cond: // result: (ADDconst [c] x) for { _ = v.Args[1] @@ -1043,7 +1022,6 @@ func rewriteValueARM64_OpARM64ADD_0(v *Value) bool { return true } // match: (ADD (MOVDconst [c]) x) - // cond: // result: (ADDconst [c] x) for { x := v.Args[1] @@ -1227,7 +1205,6 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ADD x (NEG y)) - // cond: // result: (SUB x y) for { _ = v.Args[1] @@ -1243,7 +1220,6 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { return true } // match: (ADD (NEG y) x) - // cond: // result: (SUB x y) for { x := v.Args[1] @@ -1401,19 +1377,13 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt64 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt64 { break } _ = v_1_0.Args[1] @@ -1421,69 +1391,33 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -1499,19 +1433,13 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt64 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt64 { break } _ = v_0_0.Args[1] @@ -1523,56 +1451,29 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -1584,19 +1485,7 @@ func rewriteValueARM64_OpARM64ADD_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -1617,10 +1506,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt64 { break } _ = v_0.Args[1] @@ -1635,10 +1521,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux @@ -1652,69 +1535,33 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -1728,10 +1575,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux @@ -1749,63 +1593,33 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt64 { break } _ = v_1.Args[1] @@ -1813,19 +1627,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -1854,93 +1656,48 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt32 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt32 { break } _ = v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0_0.Args[0] { + if v_1_0_0.Op != OpARM64MOVWUreg || x != v_1_0_0.Args[0] { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -1956,19 +1713,13 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt32 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt32 { break } _ = v_0_0.Args[1] @@ -1984,56 +1735,29 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -2045,19 +1769,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -2073,10 +1785,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt32 { break } _ = v_0.Args[1] @@ -2095,10 +1804,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux @@ -2112,69 +1818,33 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -2188,10 +1858,7 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux @@ -2209,87 +1876,42 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt32 { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0.Args[0] { + if v_1_0.Op != OpARM64MOVWUreg || x != v_1_0.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -2301,7 +1923,6 @@ func rewriteValueARM64_OpARM64ADD_20(v *Value) bool { } func rewriteValueARM64_OpARM64ADDconst_0(v *Value) bool { // match: (ADDconst [off1] (MOVDaddr [off2] {sym} ptr)) - // cond: // result: (MOVDaddr [off1+off2] {sym} ptr) for { off1 := v.AuxInt @@ -2319,7 +1940,6 @@ func rewriteValueARM64_OpARM64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -2332,7 +1952,6 @@ func rewriteValueARM64_OpARM64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c+d]) for { c := v.AuxInt @@ -2346,7 +1965,6 @@ func rewriteValueARM64_OpARM64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [c+d] x) for { c := v.AuxInt @@ -2362,7 +1980,6 @@ func rewriteValueARM64_OpARM64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [c-d] x) for { c := v.AuxInt @@ -2383,7 +2000,6 @@ func rewriteValueARM64_OpARM64ADDshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ADDshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -2402,7 +2018,6 @@ func rewriteValueARM64_OpARM64ADDshiftLL_0(v *Value) bool { return true } // match: (ADDshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (ADDconst x [int64(uint64(c)< [8] (UBFX [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16W x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64UBFX { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64UBFX || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARM64REV16W) @@ -2491,16 +2083,12 @@ func rewriteValueARM64_OpARM64ADDshiftLL_0(v *Value) bool { return true } // match: (ADDshiftLL [c] (SRLconst x [64-c]) x2) - // cond: // result: (EXTRconst [64-c] x2 x) for { c := v.AuxInt x2 := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRLconst { - break - } - if v_0.AuxInt != 64-c { + if v_0.Op != OpARM64SRLconst || v_0.AuxInt != 64-c { break } x := v_0.Args[0] @@ -2537,7 +2125,6 @@ func rewriteValueARM64_OpARM64ADDshiftLL_0(v *Value) bool { func rewriteValueARM64_OpARM64ADDshiftRA_0(v *Value) bool { b := v.Block // match: (ADDshiftRA (MOVDconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -2556,7 +2143,6 @@ func rewriteValueARM64_OpARM64ADDshiftRA_0(v *Value) bool { return true } // match: (ADDshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (ADDconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -2577,7 +2163,6 @@ func rewriteValueARM64_OpARM64ADDshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64ADDshiftRL_0(v *Value) bool { b := v.Block // match: (ADDshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (ADDconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -2596,7 +2181,6 @@ func rewriteValueARM64_OpARM64ADDshiftRL_0(v *Value) bool { return true } // match: (ADDshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (ADDconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -2613,19 +2197,12 @@ func rewriteValueARM64_OpARM64ADDshiftRL_0(v *Value) bool { return true } // match: (ADDshiftRL [c] (SLLconst x [64-c]) x) - // cond: // result: (RORconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 64-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 64-c || x != v_0.Args[0] { break } v.reset(OpARM64RORconst) @@ -2641,21 +2218,12 @@ func rewriteValueARM64_OpARM64ADDshiftRL_0(v *Value) bool { c := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 32-c { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 32-c { break } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVWUreg { - break - } - if x != v_1.Args[0] { - break - } - if !(c < 32 && t.Size() == 4) { + if v_1.Op != OpARM64MOVWUreg || x != v_1.Args[0] || !(c < 32 && t.Size() == 4) { break } v.reset(OpARM64RORWconst) @@ -2667,7 +2235,6 @@ func rewriteValueARM64_OpARM64ADDshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64AND_0(v *Value) bool { // match: (AND x (MOVDconst [c])) - // cond: // result: (ANDconst [c] x) for { _ = v.Args[1] @@ -2683,7 +2250,6 @@ func rewriteValueARM64_OpARM64AND_0(v *Value) bool { return true } // match: (AND (MOVDconst [c]) x) - // cond: // result: (ANDconst [c] x) for { x := v.Args[1] @@ -2698,7 +2264,6 @@ func rewriteValueARM64_OpARM64AND_0(v *Value) bool { return true } // match: (AND x x) - // cond: // result: x for { x := v.Args[1] @@ -2711,7 +2276,6 @@ func rewriteValueARM64_OpARM64AND_0(v *Value) bool { return true } // match: (AND x (MVN y)) - // cond: // result: (BIC x y) for { _ = v.Args[1] @@ -2727,7 +2291,6 @@ func rewriteValueARM64_OpARM64AND_0(v *Value) bool { return true } // match: (AND (MVN y) x) - // cond: // result: (BIC x y) for { x := v.Args[1] @@ -2871,7 +2434,6 @@ func rewriteValueARM64_OpARM64AND_10(v *Value) bool { } func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { // match: (ANDconst [0] _) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -2882,7 +2444,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [-1] x) - // cond: // result: x for { if v.AuxInt != -1 { @@ -2895,7 +2456,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c&d]) for { c := v.AuxInt @@ -2909,7 +2469,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c&d] x) for { c := v.AuxInt @@ -2925,7 +2484,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVWUreg x)) - // cond: // result: (ANDconst [c&(1<<32-1)] x) for { c := v.AuxInt @@ -2940,7 +2498,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVHUreg x)) - // cond: // result: (ANDconst [c&(1<<16-1)] x) for { c := v.AuxInt @@ -2955,7 +2512,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVBUreg x)) - // cond: // result: (ANDconst [c&(1<<8-1)] x) for { c := v.AuxInt @@ -3012,7 +2568,6 @@ func rewriteValueARM64_OpARM64ANDconst_0(v *Value) bool { func rewriteValueARM64_OpARM64ANDshiftLL_0(v *Value) bool { b := v.Block // match: (ANDshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (ANDconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -3031,7 +2586,6 @@ func rewriteValueARM64_OpARM64ANDshiftLL_0(v *Value) bool { return true } // match: (ANDshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (ANDconst x [int64(uint64(c)< x [d])) for { d := v.AuxInt @@ -3094,7 +2644,6 @@ func rewriteValueARM64_OpARM64ANDshiftRA_0(v *Value) bool { return true } // match: (ANDshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (ANDconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -3122,10 +2671,7 @@ func rewriteValueARM64_OpARM64ANDshiftRA_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -3138,7 +2684,6 @@ func rewriteValueARM64_OpARM64ANDshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64ANDshiftRL_0(v *Value) bool { b := v.Block // match: (ANDshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (ANDconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -3157,7 +2702,6 @@ func rewriteValueARM64_OpARM64ANDshiftRL_0(v *Value) bool { return true } // match: (ANDshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (ANDconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -3185,10 +2729,7 @@ func rewriteValueARM64_OpARM64ANDshiftRL_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -3200,7 +2741,6 @@ func rewriteValueARM64_OpARM64ANDshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64BIC_0(v *Value) bool { // match: (BIC x (MOVDconst [c])) - // cond: // result: (ANDconst [^c] x) for { _ = v.Args[1] @@ -3216,7 +2756,6 @@ func rewriteValueARM64_OpARM64BIC_0(v *Value) bool { return true } // match: (BIC x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -3294,7 +2833,6 @@ func rewriteValueARM64_OpARM64BIC_0(v *Value) bool { } func rewriteValueARM64_OpARM64BICshiftLL_0(v *Value) bool { // match: (BICshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (ANDconst x [^int64(uint64(c)<>uint64(d))]) for { d := v.AuxInt @@ -3364,10 +2898,7 @@ func rewriteValueARM64_OpARM64BICshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -3378,7 +2909,6 @@ func rewriteValueARM64_OpARM64BICshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64BICshiftRL_0(v *Value) bool { // match: (BICshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (ANDconst x [^int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -3406,10 +2936,7 @@ func rewriteValueARM64_OpARM64BICshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -3420,7 +2947,6 @@ func rewriteValueARM64_OpARM64BICshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64CMN_0(v *Value) bool { // match: (CMN x (MOVDconst [c])) - // cond: // result: (CMNconst [c] x) for { _ = v.Args[1] @@ -3436,7 +2962,6 @@ func rewriteValueARM64_OpARM64CMN_0(v *Value) bool { return true } // match: (CMN (MOVDconst [c]) x) - // cond: // result: (CMNconst [c] x) for { x := v.Args[1] @@ -3577,7 +3102,6 @@ func rewriteValueARM64_OpARM64CMN_0(v *Value) bool { } func rewriteValueARM64_OpARM64CMNW_0(v *Value) bool { // match: (CMNW x (MOVDconst [c])) - // cond: // result: (CMNWconst [c] x) for { _ = v.Args[1] @@ -3593,7 +3117,6 @@ func rewriteValueARM64_OpARM64CMNW_0(v *Value) bool { return true } // match: (CMNW (MOVDconst [c]) x) - // cond: // result: (CMNWconst [c] x) for { x := v.Args[1] @@ -3778,7 +3301,6 @@ func rewriteValueARM64_OpARM64CMNconst_0(v *Value) bool { func rewriteValueARM64_OpARM64CMNshiftLL_0(v *Value) bool { b := v.Block // match: (CMNshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (CMNconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -3797,7 +3319,6 @@ func rewriteValueARM64_OpARM64CMNshiftLL_0(v *Value) bool { return true } // match: (CMNshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (CMNconst x [int64(uint64(c)< x [d])) for { d := v.AuxInt @@ -3837,7 +3357,6 @@ func rewriteValueARM64_OpARM64CMNshiftRA_0(v *Value) bool { return true } // match: (CMNshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (CMNconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -3858,7 +3377,6 @@ func rewriteValueARM64_OpARM64CMNshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64CMNshiftRL_0(v *Value) bool { b := v.Block // match: (CMNshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (CMNconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -3877,7 +3395,6 @@ func rewriteValueARM64_OpARM64CMNshiftRL_0(v *Value) bool { return true } // match: (CMNshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (CMNconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -3898,7 +3415,6 @@ func rewriteValueARM64_OpARM64CMNshiftRL_0(v *Value) bool { func rewriteValueARM64_OpARM64CMP_0(v *Value) bool { b := v.Block // match: (CMP x (MOVDconst [c])) - // cond: // result: (CMPconst [c] x) for { _ = v.Args[1] @@ -3914,7 +3430,6 @@ func rewriteValueARM64_OpARM64CMP_0(v *Value) bool { return true } // match: (CMP (MOVDconst [c]) x) - // cond: // result: (InvertFlags (CMPconst [c] x)) for { x := v.Args[1] @@ -4064,7 +3579,6 @@ func rewriteValueARM64_OpARM64CMP_0(v *Value) bool { func rewriteValueARM64_OpARM64CMPW_0(v *Value) bool { b := v.Block // match: (CMPW x (MOVDconst [c])) - // cond: // result: (CMPWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -4080,7 +3594,6 @@ func rewriteValueARM64_OpARM64CMPW_0(v *Value) bool { return true } // match: (CMPW (MOVDconst [c]) x) - // cond: // result: (InvertFlags (CMPWconst [int64(int32(c))] x)) for { x := v.Args[1] @@ -4185,10 +3698,7 @@ func rewriteValueARM64_OpARM64CMPWconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64MOVBUreg { - break - } - if !(0xff < int32(c)) { + if v_0.Op != OpARM64MOVBUreg || !(0xff < int32(c)) { break } v.reset(OpARM64FlagLT_ULT) @@ -4200,10 +3710,7 @@ func rewriteValueARM64_OpARM64CMPWconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64MOVHUreg { - break - } - if !(0xffff < int32(c)) { + if v_0.Op != OpARM64MOVHUreg || !(0xffff < int32(c)) { break } v.reset(OpARM64FlagLT_ULT) @@ -4298,10 +3805,7 @@ func rewriteValueARM64_OpARM64CMPconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64MOVBUreg { - break - } - if !(0xff < c) { + if v_0.Op != OpARM64MOVBUreg || !(0xff < c) { break } v.reset(OpARM64FlagLT_ULT) @@ -4313,10 +3817,7 @@ func rewriteValueARM64_OpARM64CMPconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64MOVHUreg { - break - } - if !(0xffff < c) { + if v_0.Op != OpARM64MOVHUreg || !(0xffff < c) { break } v.reset(OpARM64FlagLT_ULT) @@ -4328,10 +3829,7 @@ func rewriteValueARM64_OpARM64CMPconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64MOVWUreg { - break - } - if !(0xffffffff < c) { + if v_0.Op != OpARM64MOVWUreg || !(0xffffffff < c) { break } v.reset(OpARM64FlagLT_ULT) @@ -4374,7 +3872,6 @@ func rewriteValueARM64_OpARM64CMPconst_0(v *Value) bool { func rewriteValueARM64_OpARM64CMPshiftLL_0(v *Value) bool { b := v.Block // match: (CMPshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (InvertFlags (CMPconst [c] (SLLconst x [d]))) for { d := v.AuxInt @@ -4395,7 +3892,6 @@ func rewriteValueARM64_OpARM64CMPshiftLL_0(v *Value) bool { return true } // match: (CMPshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (CMPconst x [int64(uint64(c)< x [d]))) for { d := v.AuxInt @@ -4437,7 +3932,6 @@ func rewriteValueARM64_OpARM64CMPshiftRA_0(v *Value) bool { return true } // match: (CMPshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (CMPconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -4458,7 +3952,6 @@ func rewriteValueARM64_OpARM64CMPshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64CMPshiftRL_0(v *Value) bool { b := v.Block // match: (CMPshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (InvertFlags (CMPconst [c] (SRLconst x [d]))) for { d := v.AuxInt @@ -4479,7 +3972,6 @@ func rewriteValueARM64_OpARM64CMPshiftRL_0(v *Value) bool { return true } // match: (CMPshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (CMPconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -4499,17 +3991,13 @@ func rewriteValueARM64_OpARM64CMPshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { // match: (CSEL {cc} x (MOVDconst [0]) flag) - // cond: // result: (CSEL0 {cc} x flag) for { cc := v.Aux flag := v.Args[2] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64CSEL0) @@ -4519,16 +4007,12 @@ func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { return true } // match: (CSEL {cc} (MOVDconst [0]) y flag) - // cond: // result: (CSEL0 {arm64Negate(cc.(Op))} y flag) for { cc := v.Aux flag := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != 0 { break } y := v.Args[1] @@ -4539,7 +4023,6 @@ func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { return true } // match: (CSEL {cc} x y (InvertFlags cmp)) - // cond: // result: (CSEL {arm64Invert(cc.(Op))} x y cmp) for { cc := v.Aux @@ -4597,10 +4080,7 @@ func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64CMPWconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64CMPWconst || v_2.AuxInt != 0 { break } boolval := v_2.Args[0] @@ -4623,10 +4103,7 @@ func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64CMPWconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64CMPWconst || v_2.AuxInt != 0 { break } boolval := v_2.Args[0] @@ -4644,7 +4121,6 @@ func rewriteValueARM64_OpARM64CSEL_0(v *Value) bool { } func rewriteValueARM64_OpARM64CSEL0_0(v *Value) bool { // match: (CSEL0 {cc} x (InvertFlags cmp)) - // cond: // result: (CSEL0 {arm64Invert(cc.(Op))} x cmp) for { cc := v.Aux @@ -4697,10 +4173,7 @@ func rewriteValueARM64_OpARM64CSEL0_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CMPWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64CMPWconst || v_1.AuxInt != 0 { break } boolval := v_1.Args[0] @@ -4721,10 +4194,7 @@ func rewriteValueARM64_OpARM64CSEL0_0(v *Value) bool { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CMPWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64CMPWconst || v_1.AuxInt != 0 { break } boolval := v_1.Args[0] @@ -4741,7 +4211,6 @@ func rewriteValueARM64_OpARM64CSEL0_0(v *Value) bool { } func rewriteValueARM64_OpARM64DIV_0(v *Value) bool { // match: (DIV (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c/d]) for { _ = v.Args[1] @@ -4763,7 +4232,6 @@ func rewriteValueARM64_OpARM64DIV_0(v *Value) bool { } func rewriteValueARM64_OpARM64DIVW_0(v *Value) bool { // match: (DIVW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(c)/int32(d))]) for { _ = v.Args[1] @@ -4785,7 +4253,6 @@ func rewriteValueARM64_OpARM64DIVW_0(v *Value) bool { } func rewriteValueARM64_OpARM64EON_0(v *Value) bool { // match: (EON x (MOVDconst [c])) - // cond: // result: (XORconst [^c] x) for { _ = v.Args[1] @@ -4801,7 +4268,6 @@ func rewriteValueARM64_OpARM64EON_0(v *Value) bool { return true } // match: (EON x x) - // cond: // result: (MOVDconst [-1]) for { x := v.Args[1] @@ -4879,7 +4345,6 @@ func rewriteValueARM64_OpARM64EON_0(v *Value) bool { } func rewriteValueARM64_OpARM64EONshiftLL_0(v *Value) bool { // match: (EONshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (XORconst x [^int64(uint64(c)<>uint64(d))]) for { d := v.AuxInt @@ -4949,10 +4410,7 @@ func rewriteValueARM64_OpARM64EONshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -4963,7 +4421,6 @@ func rewriteValueARM64_OpARM64EONshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64EONshiftRL_0(v *Value) bool { // match: (EONshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (XORconst x [^int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -4991,10 +4448,7 @@ func rewriteValueARM64_OpARM64EONshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -5005,7 +4459,6 @@ func rewriteValueARM64_OpARM64EONshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { // match: (Equal (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -5017,7 +4470,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { return true } // match: (Equal (FlagLT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -5029,7 +4481,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { return true } // match: (Equal (FlagLT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -5041,7 +4492,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { return true } // match: (Equal (FlagGT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -5053,7 +4503,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { return true } // match: (Equal (FlagGT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -5065,7 +4514,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { return true } // match: (Equal (InvertFlags x)) - // cond: // result: (Equal x) for { v_0 := v.Args[0] @@ -5081,7 +4529,6 @@ func rewriteValueARM64_OpARM64Equal_0(v *Value) bool { } func rewriteValueARM64_OpARM64FADDD_0(v *Value) bool { // match: (FADDD a (FMULD x y)) - // cond: // result: (FMADDD a x y) for { _ = v.Args[1] @@ -5099,7 +4546,6 @@ func rewriteValueARM64_OpARM64FADDD_0(v *Value) bool { return true } // match: (FADDD (FMULD x y) a) - // cond: // result: (FMADDD a x y) for { a := v.Args[1] @@ -5116,7 +4562,6 @@ func rewriteValueARM64_OpARM64FADDD_0(v *Value) bool { return true } // match: (FADDD a (FNMULD x y)) - // cond: // result: (FMSUBD a x y) for { _ = v.Args[1] @@ -5134,7 +4579,6 @@ func rewriteValueARM64_OpARM64FADDD_0(v *Value) bool { return true } // match: (FADDD (FNMULD x y) a) - // cond: // result: (FMSUBD a x y) for { a := v.Args[1] @@ -5154,7 +4598,6 @@ func rewriteValueARM64_OpARM64FADDD_0(v *Value) bool { } func rewriteValueARM64_OpARM64FADDS_0(v *Value) bool { // match: (FADDS a (FMULS x y)) - // cond: // result: (FMADDS a x y) for { _ = v.Args[1] @@ -5172,7 +4615,6 @@ func rewriteValueARM64_OpARM64FADDS_0(v *Value) bool { return true } // match: (FADDS (FMULS x y) a) - // cond: // result: (FMADDS a x y) for { a := v.Args[1] @@ -5189,7 +4631,6 @@ func rewriteValueARM64_OpARM64FADDS_0(v *Value) bool { return true } // match: (FADDS a (FNMULS x y)) - // cond: // result: (FMSUBS a x y) for { _ = v.Args[1] @@ -5207,7 +4648,6 @@ func rewriteValueARM64_OpARM64FADDS_0(v *Value) bool { return true } // match: (FADDS (FNMULS x y) a) - // cond: // result: (FMSUBS a x y) for { a := v.Args[1] @@ -5228,16 +4668,12 @@ func rewriteValueARM64_OpARM64FADDS_0(v *Value) bool { func rewriteValueARM64_OpARM64FCMPD_0(v *Value) bool { b := v.Block // match: (FCMPD x (FMOVDconst [0])) - // cond: // result: (FCMPD0 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64FMOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64FMOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64FCMPD0) @@ -5245,15 +4681,11 @@ func rewriteValueARM64_OpARM64FCMPD_0(v *Value) bool { return true } // match: (FCMPD (FMOVDconst [0]) x) - // cond: // result: (InvertFlags (FCMPD0 x)) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64FMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARM64FMOVDconst || v_0.AuxInt != 0 { break } v.reset(OpARM64InvertFlags) @@ -5267,16 +4699,12 @@ func rewriteValueARM64_OpARM64FCMPD_0(v *Value) bool { func rewriteValueARM64_OpARM64FCMPS_0(v *Value) bool { b := v.Block // match: (FCMPS x (FMOVSconst [0])) - // cond: // result: (FCMPS0 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64FMOVSconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64FMOVSconst || v_1.AuxInt != 0 { break } v.reset(OpARM64FCMPS0) @@ -5284,15 +4712,11 @@ func rewriteValueARM64_OpARM64FCMPS_0(v *Value) bool { return true } // match: (FCMPS (FMOVSconst [0]) x) - // cond: // result: (InvertFlags (FCMPS0 x)) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64FMOVSconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARM64FMOVSconst || v_0.AuxInt != 0 { break } v.reset(OpARM64InvertFlags) @@ -5306,7 +4730,6 @@ func rewriteValueARM64_OpARM64FCMPS_0(v *Value) bool { func rewriteValueARM64_OpARM64FMOVDfpgp_0(v *Value) bool { b := v.Block // match: (FMOVDfpgp (Arg [off] {sym})) - // cond: // result: @b.Func.Entry (Arg [off] {sym}) for { t := v.Type @@ -5329,7 +4752,6 @@ func rewriteValueARM64_OpARM64FMOVDfpgp_0(v *Value) bool { func rewriteValueARM64_OpARM64FMOVDgpfp_0(v *Value) bool { b := v.Block // match: (FMOVDgpfp (Arg [off] {sym})) - // cond: // result: @b.Func.Entry (Arg [off] {sym}) for { t := v.Type @@ -5353,7 +4775,6 @@ func rewriteValueARM64_OpARM64FMOVDload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (FMOVDload [off] {sym} ptr (MOVDstore [off] {sym} ptr val _)) - // cond: // result: (FMOVDgpfp val) for { off := v.AuxInt @@ -5361,13 +4782,7 @@ func rewriteValueARM64_OpARM64FMOVDload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpARM64MOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -5452,7 +4867,6 @@ func rewriteValueARM64_OpARM64FMOVDload_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMOVDloadidx_0(v *Value) bool { // match: (FMOVDloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (FMOVDload [c] ptr mem) for { mem := v.Args[2] @@ -5469,7 +4883,6 @@ func rewriteValueARM64_OpARM64FMOVDloadidx_0(v *Value) bool { return true } // match: (FMOVDloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (FMOVDload [c] ptr mem) for { mem := v.Args[2] @@ -5491,7 +4904,6 @@ func rewriteValueARM64_OpARM64FMOVDstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (FMOVDstore [off] {sym} ptr (FMOVDgpfp val) mem) - // cond: // result: (MOVDstore [off] {sym} ptr val mem) for { off := v.AuxInt @@ -5590,7 +5002,6 @@ func rewriteValueARM64_OpARM64FMOVDstore_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMOVDstoreidx_0(v *Value) bool { // match: (FMOVDstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (FMOVDstore [c] ptr val mem) for { mem := v.Args[3] @@ -5609,7 +5020,6 @@ func rewriteValueARM64_OpARM64FMOVDstoreidx_0(v *Value) bool { return true } // match: (FMOVDstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (FMOVDstore [c] idx val mem) for { mem := v.Args[3] @@ -5633,7 +5043,6 @@ func rewriteValueARM64_OpARM64FMOVSload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (FMOVSload [off] {sym} ptr (MOVWstore [off] {sym} ptr val _)) - // cond: // result: (FMOVSgpfp val) for { off := v.AuxInt @@ -5641,13 +5050,7 @@ func rewriteValueARM64_OpARM64FMOVSload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVWstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpARM64MOVWstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -5732,7 +5135,6 @@ func rewriteValueARM64_OpARM64FMOVSload_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMOVSloadidx_0(v *Value) bool { // match: (FMOVSloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (FMOVSload [c] ptr mem) for { mem := v.Args[2] @@ -5749,7 +5151,6 @@ func rewriteValueARM64_OpARM64FMOVSloadidx_0(v *Value) bool { return true } // match: (FMOVSloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (FMOVSload [c] ptr mem) for { mem := v.Args[2] @@ -5771,7 +5172,6 @@ func rewriteValueARM64_OpARM64FMOVSstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (FMOVSstore [off] {sym} ptr (FMOVSgpfp val) mem) - // cond: // result: (MOVWstore [off] {sym} ptr val mem) for { off := v.AuxInt @@ -5870,7 +5270,6 @@ func rewriteValueARM64_OpARM64FMOVSstore_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMOVSstoreidx_0(v *Value) bool { // match: (FMOVSstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (FMOVSstore [c] ptr val mem) for { mem := v.Args[3] @@ -5889,7 +5288,6 @@ func rewriteValueARM64_OpARM64FMOVSstoreidx_0(v *Value) bool { return true } // match: (FMOVSstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (FMOVSstore [c] idx val mem) for { mem := v.Args[3] @@ -5911,7 +5309,6 @@ func rewriteValueARM64_OpARM64FMOVSstoreidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMULD_0(v *Value) bool { // match: (FMULD (FNEGD x) y) - // cond: // result: (FNMULD x y) for { y := v.Args[1] @@ -5926,7 +5323,6 @@ func rewriteValueARM64_OpARM64FMULD_0(v *Value) bool { return true } // match: (FMULD y (FNEGD x)) - // cond: // result: (FNMULD x y) for { _ = v.Args[1] @@ -5945,7 +5341,6 @@ func rewriteValueARM64_OpARM64FMULD_0(v *Value) bool { } func rewriteValueARM64_OpARM64FMULS_0(v *Value) bool { // match: (FMULS (FNEGS x) y) - // cond: // result: (FNMULS x y) for { y := v.Args[1] @@ -5960,7 +5355,6 @@ func rewriteValueARM64_OpARM64FMULS_0(v *Value) bool { return true } // match: (FMULS y (FNEGS x)) - // cond: // result: (FNMULS x y) for { _ = v.Args[1] @@ -5979,7 +5373,6 @@ func rewriteValueARM64_OpARM64FMULS_0(v *Value) bool { } func rewriteValueARM64_OpARM64FNEGD_0(v *Value) bool { // match: (FNEGD (FMULD x y)) - // cond: // result: (FNMULD x y) for { v_0 := v.Args[0] @@ -5994,7 +5387,6 @@ func rewriteValueARM64_OpARM64FNEGD_0(v *Value) bool { return true } // match: (FNEGD (FNMULD x y)) - // cond: // result: (FMULD x y) for { v_0 := v.Args[0] @@ -6012,7 +5404,6 @@ func rewriteValueARM64_OpARM64FNEGD_0(v *Value) bool { } func rewriteValueARM64_OpARM64FNEGS_0(v *Value) bool { // match: (FNEGS (FMULS x y)) - // cond: // result: (FNMULS x y) for { v_0 := v.Args[0] @@ -6027,7 +5418,6 @@ func rewriteValueARM64_OpARM64FNEGS_0(v *Value) bool { return true } // match: (FNEGS (FNMULS x y)) - // cond: // result: (FMULS x y) for { v_0 := v.Args[0] @@ -6045,7 +5435,6 @@ func rewriteValueARM64_OpARM64FNEGS_0(v *Value) bool { } func rewriteValueARM64_OpARM64FNMULD_0(v *Value) bool { // match: (FNMULD (FNEGD x) y) - // cond: // result: (FMULD x y) for { y := v.Args[1] @@ -6060,7 +5449,6 @@ func rewriteValueARM64_OpARM64FNMULD_0(v *Value) bool { return true } // match: (FNMULD y (FNEGD x)) - // cond: // result: (FMULD x y) for { _ = v.Args[1] @@ -6079,7 +5467,6 @@ func rewriteValueARM64_OpARM64FNMULD_0(v *Value) bool { } func rewriteValueARM64_OpARM64FNMULS_0(v *Value) bool { // match: (FNMULS (FNEGS x) y) - // cond: // result: (FMULS x y) for { y := v.Args[1] @@ -6094,7 +5481,6 @@ func rewriteValueARM64_OpARM64FNMULS_0(v *Value) bool { return true } // match: (FNMULS y (FNEGS x)) - // cond: // result: (FMULS x y) for { _ = v.Args[1] @@ -6113,7 +5499,6 @@ func rewriteValueARM64_OpARM64FNMULS_0(v *Value) bool { } func rewriteValueARM64_OpARM64FSUBD_0(v *Value) bool { // match: (FSUBD a (FMULD x y)) - // cond: // result: (FMSUBD a x y) for { _ = v.Args[1] @@ -6131,7 +5516,6 @@ func rewriteValueARM64_OpARM64FSUBD_0(v *Value) bool { return true } // match: (FSUBD (FMULD x y) a) - // cond: // result: (FNMSUBD a x y) for { a := v.Args[1] @@ -6148,7 +5532,6 @@ func rewriteValueARM64_OpARM64FSUBD_0(v *Value) bool { return true } // match: (FSUBD a (FNMULD x y)) - // cond: // result: (FMADDD a x y) for { _ = v.Args[1] @@ -6166,7 +5549,6 @@ func rewriteValueARM64_OpARM64FSUBD_0(v *Value) bool { return true } // match: (FSUBD (FNMULD x y) a) - // cond: // result: (FNMADDD a x y) for { a := v.Args[1] @@ -6186,7 +5568,6 @@ func rewriteValueARM64_OpARM64FSUBD_0(v *Value) bool { } func rewriteValueARM64_OpARM64FSUBS_0(v *Value) bool { // match: (FSUBS a (FMULS x y)) - // cond: // result: (FMSUBS a x y) for { _ = v.Args[1] @@ -6204,7 +5585,6 @@ func rewriteValueARM64_OpARM64FSUBS_0(v *Value) bool { return true } // match: (FSUBS (FMULS x y) a) - // cond: // result: (FNMSUBS a x y) for { a := v.Args[1] @@ -6221,7 +5601,6 @@ func rewriteValueARM64_OpARM64FSUBS_0(v *Value) bool { return true } // match: (FSUBS a (FNMULS x y)) - // cond: // result: (FMADDS a x y) for { _ = v.Args[1] @@ -6239,7 +5618,6 @@ func rewriteValueARM64_OpARM64FSUBS_0(v *Value) bool { return true } // match: (FSUBS (FNMULS x y) a) - // cond: // result: (FNMADDS a x y) for { a := v.Args[1] @@ -6259,7 +5637,6 @@ func rewriteValueARM64_OpARM64FSUBS_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { // match: (GreaterEqual (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6271,7 +5648,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagLT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6283,7 +5659,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagLT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6295,7 +5670,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagGT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6307,7 +5681,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagGT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6319,7 +5692,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (InvertFlags x)) - // cond: // result: (LessEqual x) for { v_0 := v.Args[0] @@ -6335,7 +5707,6 @@ func rewriteValueARM64_OpARM64GreaterEqual_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterEqualF_0(v *Value) bool { // match: (GreaterEqualF (InvertFlags x)) - // cond: // result: (LessEqualF x) for { v_0 := v.Args[0] @@ -6351,7 +5722,6 @@ func rewriteValueARM64_OpARM64GreaterEqualF_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { // match: (GreaterEqualU (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6363,7 +5733,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagLT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6375,7 +5744,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagLT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6387,7 +5755,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagGT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6399,7 +5766,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (FlagGT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6411,7 +5777,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { return true } // match: (GreaterEqualU (InvertFlags x)) - // cond: // result: (LessEqualU x) for { v_0 := v.Args[0] @@ -6427,7 +5792,6 @@ func rewriteValueARM64_OpARM64GreaterEqualU_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { // match: (GreaterThan (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6439,7 +5803,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagLT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6451,7 +5814,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagLT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6463,7 +5825,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagGT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6475,7 +5836,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagGT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6487,7 +5847,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (InvertFlags x)) - // cond: // result: (LessThan x) for { v_0 := v.Args[0] @@ -6503,7 +5862,6 @@ func rewriteValueARM64_OpARM64GreaterThan_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterThanF_0(v *Value) bool { // match: (GreaterThanF (InvertFlags x)) - // cond: // result: (LessThanF x) for { v_0 := v.Args[0] @@ -6519,7 +5877,6 @@ func rewriteValueARM64_OpARM64GreaterThanF_0(v *Value) bool { } func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { // match: (GreaterThanU (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6531,7 +5888,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagLT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6543,7 +5899,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagLT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6555,7 +5910,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagGT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6567,7 +5921,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (FlagGT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6579,7 +5932,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { return true } // match: (GreaterThanU (InvertFlags x)) - // cond: // result: (LessThanU x) for { v_0 := v.Args[0] @@ -6595,7 +5947,6 @@ func rewriteValueARM64_OpARM64GreaterThanU_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { // match: (LessEqual (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6607,7 +5958,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagLT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6619,7 +5969,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagLT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6631,7 +5980,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagGT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6643,7 +5991,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagGT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6655,7 +6002,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (InvertFlags x)) - // cond: // result: (GreaterEqual x) for { v_0 := v.Args[0] @@ -6671,7 +6017,6 @@ func rewriteValueARM64_OpARM64LessEqual_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessEqualF_0(v *Value) bool { // match: (LessEqualF (InvertFlags x)) - // cond: // result: (GreaterEqualF x) for { v_0 := v.Args[0] @@ -6687,7 +6032,6 @@ func rewriteValueARM64_OpARM64LessEqualF_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { // match: (LessEqualU (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6699,7 +6043,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagLT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6711,7 +6054,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagLT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6723,7 +6065,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagGT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6735,7 +6076,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (FlagGT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6747,7 +6087,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { return true } // match: (LessEqualU (InvertFlags x)) - // cond: // result: (GreaterEqualU x) for { v_0 := v.Args[0] @@ -6763,7 +6102,6 @@ func rewriteValueARM64_OpARM64LessEqualU_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { // match: (LessThan (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6775,7 +6113,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagLT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6787,7 +6124,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagLT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6799,7 +6135,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagGT_ULT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6811,7 +6146,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagGT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6823,7 +6157,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { return true } // match: (LessThan (InvertFlags x)) - // cond: // result: (GreaterThan x) for { v_0 := v.Args[0] @@ -6839,7 +6172,6 @@ func rewriteValueARM64_OpARM64LessThan_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessThanF_0(v *Value) bool { // match: (LessThanF (InvertFlags x)) - // cond: // result: (GreaterThanF x) for { v_0 := v.Args[0] @@ -6855,7 +6187,6 @@ func rewriteValueARM64_OpARM64LessThanF_0(v *Value) bool { } func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { // match: (LessThanU (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6867,7 +6198,6 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagLT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6879,7 +6209,6 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagLT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6891,7 +6220,6 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagGT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6903,7 +6231,6 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { return true } // match: (LessThanU (FlagGT_UGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6915,7 +6242,6 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { return true } // match: (LessThanU (InvertFlags x)) - // cond: // result: (GreaterThanU x) for { v_0 := v.Args[0] @@ -6932,17 +6258,13 @@ func rewriteValueARM64_OpARM64LessThanU_0(v *Value) bool { func rewriteValueARM64_OpARM64MADD_0(v *Value) bool { b := v.Block // match: (MADD a x (MOVDconst [-1])) - // cond: // result: (SUB a x) for { _ = v.Args[2] a := v.Args[0] x := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != -1 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != -1 { break } v.reset(OpARM64SUB) @@ -6951,16 +6273,12 @@ func rewriteValueARM64_OpARM64MADD_0(v *Value) bool { return true } // match: (MADD a _ (MOVDconst [0])) - // cond: // result: a for { _ = v.Args[2] a := v.Args[0] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpCopy) @@ -6969,17 +6287,13 @@ func rewriteValueARM64_OpARM64MADD_0(v *Value) bool { return true } // match: (MADD a x (MOVDconst [1])) - // cond: // result: (ADD a x) for { _ = v.Args[2] a := v.Args[0] x := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 1 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 1 { break } v.reset(OpARM64ADD) @@ -7161,16 +6475,12 @@ func rewriteValueARM64_OpARM64MADD_0(v *Value) bool { func rewriteValueARM64_OpARM64MADD_10(v *Value) bool { b := v.Block // match: (MADD a (MOVDconst [-1]) x) - // cond: // result: (SUB a x) for { x := v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != -1 { break } v.reset(OpARM64SUB) @@ -7179,16 +6489,12 @@ func rewriteValueARM64_OpARM64MADD_10(v *Value) bool { return true } // match: (MADD a (MOVDconst [0]) _) - // cond: // result: a for { _ = v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -7197,16 +6503,12 @@ func rewriteValueARM64_OpARM64MADD_10(v *Value) bool { return true } // match: (MADD a (MOVDconst [1]) x) - // cond: // result: (ADD a x) for { x := v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpARM64ADD) @@ -7381,7 +6683,6 @@ func rewriteValueARM64_OpARM64MADD_10(v *Value) bool { func rewriteValueARM64_OpARM64MADD_20(v *Value) bool { b := v.Block // match: (MADD (MOVDconst [c]) x y) - // cond: // result: (ADDconst [c] (MUL x y)) for { y := v.Args[2] @@ -7400,7 +6701,6 @@ func rewriteValueARM64_OpARM64MADD_20(v *Value) bool { return true } // match: (MADD a (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (ADDconst [c*d] a) for { _ = v.Args[2] @@ -7880,7 +7180,6 @@ func rewriteValueARM64_OpARM64MADDW_10(v *Value) bool { func rewriteValueARM64_OpARM64MADDW_20(v *Value) bool { b := v.Block // match: (MADDW (MOVDconst [c]) x y) - // cond: // result: (ADDconst [c] (MULW x y)) for { y := v.Args[2] @@ -7899,7 +7198,6 @@ func rewriteValueARM64_OpARM64MADDW_20(v *Value) bool { return true } // match: (MADDW a (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (ADDconst [int64(int32(c)*int32(d))] a) for { _ = v.Args[2] @@ -7924,16 +7222,12 @@ func rewriteValueARM64_OpARM64MADDW_20(v *Value) bool { func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { b := v.Block // match: (MNEG x (MOVDconst [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -7942,15 +7236,11 @@ func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { return true } // match: (MNEG (MOVDconst [-1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != -1 { break } v.reset(OpCopy) @@ -7959,15 +7249,11 @@ func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { return true } // match: (MNEG _ (MOVDconst [0])) - // cond: // result: (MOVDconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVDconst) @@ -7975,15 +7261,11 @@ func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { return true } // match: (MNEG (MOVDconst [0]) _) - // cond: // result: (MOVDconst [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != 0 { break } v.reset(OpARM64MOVDconst) @@ -7991,16 +7273,12 @@ func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { return true } // match: (MNEG x (MOVDconst [1])) - // cond: // result: (NEG x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpARM64NEG) @@ -8008,15 +7286,11 @@ func rewriteValueARM64_OpARM64MNEG_0(v *Value) bool { return true } // match: (MNEG (MOVDconst [1]) x) - // cond: // result: (NEG x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != 1 { break } v.reset(OpARM64NEG) @@ -8354,7 +7628,6 @@ func rewriteValueARM64_OpARM64MNEG_10(v *Value) bool { } func rewriteValueARM64_OpARM64MNEG_20(v *Value) bool { // match: (MNEG (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [-c*d]) for { _ = v.Args[1] @@ -8373,7 +7646,6 @@ func rewriteValueARM64_OpARM64MNEG_20(v *Value) bool { return true } // match: (MNEG (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [-c*d]) for { _ = v.Args[1] @@ -8832,7 +8104,6 @@ func rewriteValueARM64_OpARM64MNEGW_10(v *Value) bool { } func rewriteValueARM64_OpARM64MNEGW_20(v *Value) bool { // match: (MNEGW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [-int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -8851,7 +8122,6 @@ func rewriteValueARM64_OpARM64MNEGW_20(v *Value) bool { return true } // match: (MNEGW (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [-int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -8873,7 +8143,6 @@ func rewriteValueARM64_OpARM64MNEGW_20(v *Value) bool { } func rewriteValueARM64_OpARM64MOD_0(v *Value) bool { // match: (MOD (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c%d]) for { _ = v.Args[1] @@ -8895,7 +8164,6 @@ func rewriteValueARM64_OpARM64MOD_0(v *Value) bool { } func rewriteValueARM64_OpARM64MODW_0(v *Value) bool { // match: (MODW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(c)%int32(d))]) for { _ = v.Args[1] @@ -9018,10 +8286,7 @@ func rewriteValueARM64_OpARM64MOVBUload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARM64MOVDconst) @@ -9032,7 +8297,6 @@ func rewriteValueARM64_OpARM64MOVBUload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBUloadidx_0(v *Value) bool { // match: (MOVBUloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVBUload [c] ptr mem) for { mem := v.Args[2] @@ -9049,7 +8313,6 @@ func rewriteValueARM64_OpARM64MOVBUloadidx_0(v *Value) bool { return true } // match: (MOVBUloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVBUload [c] ptr mem) for { mem := v.Args[2] @@ -9090,7 +8353,6 @@ func rewriteValueARM64_OpARM64MOVBUloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBUreg_0(v *Value) bool { // match: (MOVBUreg x:(MOVBUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9103,7 +8365,6 @@ func rewriteValueARM64_OpARM64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg x:(MOVBUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9116,7 +8377,6 @@ func rewriteValueARM64_OpARM64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg x:(MOVBUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9128,7 +8388,6 @@ func rewriteValueARM64_OpARM64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&(1<<8-1)] x) for { v_0 := v.Args[0] @@ -9143,7 +8402,6 @@ func rewriteValueARM64_OpARM64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint8(c))]) for { v_0 := v.Args[0] @@ -9304,7 +8562,6 @@ func rewriteValueARM64_OpARM64MOVBload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBloadidx_0(v *Value) bool { // match: (MOVBloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVBload [c] ptr mem) for { mem := v.Args[2] @@ -9321,7 +8578,6 @@ func rewriteValueARM64_OpARM64MOVBloadidx_0(v *Value) bool { return true } // match: (MOVBloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVBload [c] ptr mem) for { mem := v.Args[2] @@ -9362,7 +8618,6 @@ func rewriteValueARM64_OpARM64MOVBloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBreg_0(v *Value) bool { // match: (MOVBreg x:(MOVBload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9375,7 +8630,6 @@ func rewriteValueARM64_OpARM64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg x:(MOVBloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9388,7 +8642,6 @@ func rewriteValueARM64_OpARM64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg x:(MOVBreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -9400,7 +8653,6 @@ func rewriteValueARM64_OpARM64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int8(c))]) for { v_0 := v.Args[0] @@ -9511,7 +8763,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVBstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -9519,10 +8770,7 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVBstorezero) @@ -9533,7 +8781,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9554,7 +8801,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9575,7 +8821,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9596,7 +8841,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9617,7 +8861,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9638,7 +8881,6 @@ func rewriteValueARM64_OpARM64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9670,29 +8912,17 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -9719,10 +8949,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] @@ -9733,10 +8960,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -9755,29 +8979,17 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(8, 8) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(8, 8) { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -9804,10 +9016,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(8, 8) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(8, 8) { break } w := v_1.Args[0] @@ -9818,10 +9027,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -9840,29 +9046,17 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(8, 24) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(8, 24) { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -9889,10 +9083,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(8, 24) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(8, 24) { break } w := v_1.Args[0] @@ -9903,10 +9094,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -9925,10 +9113,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 8 { break } v_1_0 := v_1.Args[0] @@ -9937,21 +9122,12 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { } w := v_1_0.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -9978,10 +9154,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 8 { break } v_1_0 := v_1.Args[0] @@ -9996,10 +9169,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -10024,28 +9194,13 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] w0 := x.Args[1] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -10085,16 +9240,7 @@ func rewriteValueARM64_OpARM64MOVBstore_10(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -10123,13 +9269,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { bfc := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -10139,10 +9279,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } bfc2 := w0.AuxInt - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && getARM64BFwidth(bfc) == 32-getARM64BFlsb(bfc) && getARM64BFwidth(bfc2) == 32-getARM64BFlsb(bfc2) && getARM64BFlsb(bfc2) == getARM64BFlsb(bfc)-8 && clobber(x)) { + if w != w0.Args[0] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && getARM64BFwidth(bfc) == 32-getARM64BFlsb(bfc) && getARM64BFwidth(bfc2) == 32-getARM64BFlsb(bfc2) && getARM64BFlsb(bfc2) == getARM64BFlsb(bfc)-8 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -10186,10 +9323,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } bfc2 := w0.AuxInt - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && getARM64BFwidth(bfc) == 32-getARM64BFlsb(bfc) && getARM64BFwidth(bfc2) == 32-getARM64BFlsb(bfc2) && getARM64BFlsb(bfc2) == getARM64BFlsb(bfc)-8 && clobber(x)) { + if w != w0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && getARM64BFwidth(bfc) == 32-getARM64BFlsb(bfc) && getARM64BFwidth(bfc2) == 32-getARM64BFlsb(bfc2) && getARM64BFlsb(bfc2) == getARM64BFlsb(bfc)-8 && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -10218,32 +9352,17 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { } w := v_1_0.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] w0 := x.Args[1] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-8 { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-8 { break } w0_0 := w0.Args[0] - if w0_0.Op != OpARM64MOVDreg { - break - } - if w != w0_0.Args[0] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w0_0.Op != OpARM64MOVDreg || w != w0_0.Args[0] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -10287,20 +9406,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-8 { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-8 { break } w0_0 := w0.Args[0] - if w0_0.Op != OpARM64MOVDreg { - break - } - if w != w0_0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w0_0.Op != OpARM64MOVDreg || w != w0_0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -10320,13 +9430,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != i-1 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != i-1 || x0.Aux != s { break } _ = x0.Args[2] @@ -10334,23 +9438,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != i-2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != i-2 || x1.Aux != s { break } _ = x1.Args[2] @@ -10358,23 +9450,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] - if x2.Op != OpARM64MOVBstore { - break - } - if x2.AuxInt != i-3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBstore || x2.AuxInt != i-3 || x2.Aux != s { break } _ = x2.Args[2] @@ -10382,23 +9462,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64SRLconst { - break - } - if x2_1.AuxInt != 24 { - break - } - if w != x2_1.Args[0] { + if x2_1.Op != OpARM64SRLconst || x2_1.AuxInt != 24 || w != x2_1.Args[0] { break } x3 := x2.Args[2] - if x3.Op != OpARM64MOVBstore { - break - } - if x3.AuxInt != i-4 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBstore || x3.AuxInt != i-4 || x3.Aux != s { break } _ = x3.Args[2] @@ -10406,23 +9474,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64SRLconst { - break - } - if x3_1.AuxInt != 32 { - break - } - if w != x3_1.Args[0] { + if x3_1.Op != OpARM64SRLconst || x3_1.AuxInt != 32 || w != x3_1.Args[0] { break } x4 := x3.Args[2] - if x4.Op != OpARM64MOVBstore { - break - } - if x4.AuxInt != i-5 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBstore || x4.AuxInt != i-5 || x4.Aux != s { break } _ = x4.Args[2] @@ -10430,23 +9486,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64SRLconst { - break - } - if x4_1.AuxInt != 40 { - break - } - if w != x4_1.Args[0] { + if x4_1.Op != OpARM64SRLconst || x4_1.AuxInt != 40 || w != x4_1.Args[0] { break } x5 := x4.Args[2] - if x5.Op != OpARM64MOVBstore { - break - } - if x5.AuxInt != i-6 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBstore || x5.AuxInt != i-6 || x5.Aux != s { break } _ = x5.Args[2] @@ -10454,23 +9498,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpARM64SRLconst { - break - } - if x5_1.AuxInt != 48 { - break - } - if w != x5_1.Args[0] { + if x5_1.Op != OpARM64SRLconst || x5_1.AuxInt != 48 || w != x5_1.Args[0] { break } x6 := x5.Args[2] - if x6.Op != OpARM64MOVBstore { - break - } - if x6.AuxInt != i-7 { - break - } - if x6.Aux != s { + if x6.Op != OpARM64MOVBstore || x6.AuxInt != i-7 || x6.Aux != s { break } mem := x6.Args[2] @@ -10478,16 +9510,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpARM64SRLconst { - break - } - if x6_1.AuxInt != 56 { - break - } - if w != x6_1.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { + if x6_1.Op != OpARM64SRLconst || x6_1.AuxInt != 56 || w != x6_1.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { break } v.reset(OpARM64MOVDstore) @@ -10512,13 +9535,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { p := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != 6 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != 6 || x0.Aux != s { break } _ = x0.Args[2] @@ -10526,23 +9543,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != 5 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != 5 || x1.Aux != s { break } _ = x1.Args[2] @@ -10550,23 +9555,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] - if x2.Op != OpARM64MOVBstore { - break - } - if x2.AuxInt != 4 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBstore || x2.AuxInt != 4 || x2.Aux != s { break } _ = x2.Args[2] @@ -10574,23 +9567,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64SRLconst { - break - } - if x2_1.AuxInt != 24 { - break - } - if w != x2_1.Args[0] { + if x2_1.Op != OpARM64SRLconst || x2_1.AuxInt != 24 || w != x2_1.Args[0] { break } x3 := x2.Args[2] - if x3.Op != OpARM64MOVBstore { - break - } - if x3.AuxInt != 3 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBstore || x3.AuxInt != 3 || x3.Aux != s { break } _ = x3.Args[2] @@ -10598,23 +9579,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64SRLconst { - break - } - if x3_1.AuxInt != 32 { - break - } - if w != x3_1.Args[0] { + if x3_1.Op != OpARM64SRLconst || x3_1.AuxInt != 32 || w != x3_1.Args[0] { break } x4 := x3.Args[2] - if x4.Op != OpARM64MOVBstore { - break - } - if x4.AuxInt != 2 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBstore || x4.AuxInt != 2 || x4.Aux != s { break } _ = x4.Args[2] @@ -10622,23 +9591,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64SRLconst { - break - } - if x4_1.AuxInt != 40 { - break - } - if w != x4_1.Args[0] { + if x4_1.Op != OpARM64SRLconst || x4_1.AuxInt != 40 || w != x4_1.Args[0] { break } x5 := x4.Args[2] - if x5.Op != OpARM64MOVBstore { - break - } - if x5.AuxInt != 1 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBstore || x5.AuxInt != 1 || x5.Aux != s { break } _ = x5.Args[2] @@ -10649,13 +9606,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { idx1 := p1.Args[1] ptr1 := p1.Args[0] x5_1 := x5.Args[1] - if x5_1.Op != OpARM64SRLconst { - break - } - if x5_1.AuxInt != 48 { - break - } - if w != x5_1.Args[0] { + if x5_1.Op != OpARM64SRLconst || x5_1.AuxInt != 48 || w != x5_1.Args[0] { break } x6 := x5.Args[2] @@ -10666,16 +9617,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr0 := x6.Args[0] idx0 := x6.Args[1] x6_2 := x6.Args[2] - if x6_2.Op != OpARM64SRLconst { - break - } - if x6_2.AuxInt != 56 { - break - } - if w != x6_2.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { + if x6_2.Op != OpARM64SRLconst || x6_2.AuxInt != 56 || w != x6_2.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { break } v.reset(OpARM64MOVDstoreidx) @@ -10697,13 +9639,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != i-1 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != i-1 || x0.Aux != s { break } _ = x0.Args[2] @@ -10711,23 +9647,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64UBFX { - break - } - if x0_1.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64UBFX || x0_1.AuxInt != armBFAuxInt(8, 24) || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != i-2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != i-2 || x1.Aux != s { break } _ = x1.Args[2] @@ -10735,23 +9659,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64UBFX { - break - } - if x1_1.AuxInt != armBFAuxInt(16, 16) { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64UBFX || x1_1.AuxInt != armBFAuxInt(16, 16) || w != x1_1.Args[0] { break } x2 := x1.Args[2] - if x2.Op != OpARM64MOVBstore { - break - } - if x2.AuxInt != i-3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBstore || x2.AuxInt != i-3 || x2.Aux != s { break } mem := x2.Args[2] @@ -10759,16 +9671,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64UBFX { - break - } - if x2_1.AuxInt != armBFAuxInt(24, 8) { - break - } - if w != x2_1.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_1.Op != OpARM64UBFX || x2_1.AuxInt != armBFAuxInt(24, 8) || w != x2_1.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstore) @@ -10793,13 +9696,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { p := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != 2 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != 2 || x0.Aux != s { break } _ = x0.Args[2] @@ -10807,23 +9704,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64UBFX { - break - } - if x0_1.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64UBFX || x0_1.AuxInt != armBFAuxInt(8, 24) || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[2] @@ -10834,13 +9719,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { idx1 := p1.Args[1] ptr1 := p1.Args[0] x1_1 := x1.Args[1] - if x1_1.Op != OpARM64UBFX { - break - } - if x1_1.AuxInt != armBFAuxInt(16, 16) { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64UBFX || x1_1.AuxInt != armBFAuxInt(16, 16) || w != x1_1.Args[0] { break } x2 := x1.Args[2] @@ -10851,16 +9730,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr0 := x2.Args[0] idx0 := x2.Args[1] x2_2 := x2.Args[2] - if x2_2.Op != OpARM64UBFX { - break - } - if x2_2.AuxInt != armBFAuxInt(24, 8) { - break - } - if w != x2_2.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_2.Op != OpARM64UBFX || x2_2.AuxInt != armBFAuxInt(24, 8) || w != x2_2.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstoreidx) @@ -10882,13 +9752,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != i-1 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != i-1 || x0.Aux != s { break } _ = x0.Args[2] @@ -10896,27 +9760,15 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 { break } x0_1_0 := x0_1.Args[0] - if x0_1_0.Op != OpARM64MOVDreg { - break - } - if w != x0_1_0.Args[0] { + if x0_1_0.Op != OpARM64MOVDreg || w != x0_1_0.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != i-2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != i-2 || x1.Aux != s { break } _ = x1.Args[2] @@ -10924,27 +9776,15 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 { break } x1_1_0 := x1_1.Args[0] - if x1_1_0.Op != OpARM64MOVDreg { - break - } - if w != x1_1_0.Args[0] { + if x1_1_0.Op != OpARM64MOVDreg || w != x1_1_0.Args[0] { break } x2 := x1.Args[2] - if x2.Op != OpARM64MOVBstore { - break - } - if x2.AuxInt != i-3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBstore || x2.AuxInt != i-3 || x2.Aux != s { break } mem := x2.Args[2] @@ -10952,20 +9792,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64SRLconst { - break - } - if x2_1.AuxInt != 24 { + if x2_1.Op != OpARM64SRLconst || x2_1.AuxInt != 24 { break } x2_1_0 := x2_1.Args[0] - if x2_1_0.Op != OpARM64MOVDreg { - break - } - if w != x2_1_0.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_1_0.Op != OpARM64MOVDreg || w != x2_1_0.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstore) @@ -10990,13 +9821,7 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { p := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != 2 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != 2 || x0.Aux != s { break } _ = x0.Args[2] @@ -11004,27 +9829,15 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 { break } x0_1_0 := x0_1.Args[0] - if x0_1_0.Op != OpARM64MOVDreg { - break - } - if w != x0_1_0.Args[0] { + if x0_1_0.Op != OpARM64MOVDreg || w != x0_1_0.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[2] @@ -11035,17 +9848,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { idx1 := p1.Args[1] ptr1 := p1.Args[0] x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 { break } x1_1_0 := x1_1.Args[0] - if x1_1_0.Op != OpARM64MOVDreg { - break - } - if w != x1_1_0.Args[0] { + if x1_1_0.Op != OpARM64MOVDreg || w != x1_1_0.Args[0] { break } x2 := x1.Args[2] @@ -11056,20 +9863,11 @@ func rewriteValueARM64_OpARM64MOVBstore_20(v *Value) bool { ptr0 := x2.Args[0] idx0 := x2.Args[1] x2_2 := x2.Args[2] - if x2_2.Op != OpARM64SRLconst { - break - } - if x2_2.AuxInt != 24 { + if x2_2.Op != OpARM64SRLconst || x2_2.AuxInt != 24 { break } x2_2_0 := x2_2.Args[0] - if x2_2_0.Op != OpARM64MOVDreg { - break - } - if w != x2_2_0.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_2_0.Op != OpARM64MOVDreg || w != x2_2_0.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstoreidx) @@ -11095,13 +9893,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != i-1 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != i-1 || x0.Aux != s { break } _ = x0.Args[2] @@ -11109,23 +9901,11 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != i-2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != i-2 || x1.Aux != s { break } _ = x1.Args[2] @@ -11133,23 +9913,11 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] - if x2.Op != OpARM64MOVBstore { - break - } - if x2.AuxInt != i-3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBstore || x2.AuxInt != i-3 || x2.Aux != s { break } mem := x2.Args[2] @@ -11157,16 +9925,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64SRLconst { - break - } - if x2_1.AuxInt != 24 { - break - } - if w != x2_1.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_1.Op != OpARM64SRLconst || x2_1.AuxInt != 24 || w != x2_1.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstore) @@ -11191,13 +9950,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { p := v.Args[0] w := v.Args[1] x0 := v.Args[2] - if x0.Op != OpARM64MOVBstore { - break - } - if x0.AuxInt != 2 { - break - } - if x0.Aux != s { + if x0.Op != OpARM64MOVBstore || x0.AuxInt != 2 || x0.Aux != s { break } _ = x0.Args[2] @@ -11205,23 +9958,11 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64SRLconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpARM64SRLconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] - if x1.Op != OpARM64MOVBstore { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBstore || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[2] @@ -11232,13 +9973,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { idx1 := p1.Args[1] ptr1 := p1.Args[0] x1_1 := x1.Args[1] - if x1_1.Op != OpARM64SRLconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpARM64SRLconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] @@ -11249,16 +9984,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr0 := x2.Args[0] idx0 := x2.Args[1] x2_2 := x2.Args[2] - if x2_2.Op != OpARM64SRLconst { - break - } - if x2_2.AuxInt != 24 { - break - } - if w != x2_2.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_2.Op != OpARM64SRLconst || x2_2.AuxInt != 24 || w != x2_2.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstoreidx) @@ -11280,13 +10006,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -11294,16 +10014,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64SRLconst { - break - } - if x_1.AuxInt != 8 { - break - } - if w != x_1.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1.Op != OpARM64SRLconst || x_1.AuxInt != 8 || w != x_1.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -11340,16 +10051,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr0 := x.Args[0] idx0 := x.Args[1] x_2 := x.Args[2] - if x_2.Op != OpARM64SRLconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if x_2.Op != OpARM64SRLconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11371,13 +10073,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -11385,16 +10081,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64UBFX { - break - } - if x_1.AuxInt != armBFAuxInt(8, 8) { - break - } - if w != x_1.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1.Op != OpARM64UBFX || x_1.AuxInt != armBFAuxInt(8, 8) || w != x_1.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -11431,16 +10118,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr0 := x.Args[0] idx0 := x.Args[1] x_2 := x.Args[2] - if x_2.Op != OpARM64UBFX { - break - } - if x_2.AuxInt != armBFAuxInt(8, 8) { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if x_2.Op != OpARM64UBFX || x_2.AuxInt != armBFAuxInt(8, 8) || w != x_2.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11462,13 +10140,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -11476,20 +10148,11 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64SRLconst { - break - } - if x_1.AuxInt != 8 { + if x_1.Op != OpARM64SRLconst || x_1.AuxInt != 8 { break } x_1_0 := x_1.Args[0] - if x_1_0.Op != OpARM64MOVDreg { - break - } - if w != x_1_0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1_0.Op != OpARM64MOVDreg || w != x_1_0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -11526,20 +10189,11 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr0 := x.Args[0] idx0 := x.Args[1] x_2 := x.Args[2] - if x_2.Op != OpARM64SRLconst { - break - } - if x_2.AuxInt != 8 { + if x_2.Op != OpARM64SRLconst || x_2.AuxInt != 8 { break } x_2_0 := x_2.Args[0] - if x_2_0.Op != OpARM64MOVDreg { - break - } - if w != x_2_0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if x_2_0.Op != OpARM64MOVDreg || w != x_2_0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11561,13 +10215,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -11575,16 +10223,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64UBFX { - break - } - if x_1.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x_1.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1.Op != OpARM64UBFX || x_1.AuxInt != armBFAuxInt(8, 24) || w != x_1.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -11621,16 +10260,7 @@ func rewriteValueARM64_OpARM64MOVBstore_30(v *Value) bool { ptr0 := x.Args[0] idx0 := x.Args[1] x_2 := x.Args[2] - if x_2.Op != OpARM64UBFX { - break - } - if x_2.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if x_2.Op != OpARM64UBFX || x_2.AuxInt != armBFAuxInt(8, 24) || w != x_2.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11656,13 +10286,7 @@ func rewriteValueARM64_OpARM64MOVBstore_40(v *Value) bool { ptr := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpARM64MOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -11670,20 +10294,11 @@ func rewriteValueARM64_OpARM64MOVBstore_40(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64SRLconst { - break - } - if x_1.AuxInt != 8 { + if x_1.Op != OpARM64SRLconst || x_1.AuxInt != 8 { break } x_1_0 := x_1.Args[0] - if x_1_0.Op != OpARM64MOVDreg { - break - } - if w != x_1_0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_1_0.Op != OpARM64MOVDreg || w != x_1_0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstore) @@ -11720,20 +10335,11 @@ func rewriteValueARM64_OpARM64MOVBstore_40(v *Value) bool { ptr0 := x.Args[0] idx0 := x.Args[1] x_2 := x.Args[2] - if x_2.Op != OpARM64SRLconst { - break - } - if x_2.AuxInt != 8 { + if x_2.Op != OpARM64SRLconst || x_2.AuxInt != 8 { break } x_2_0 := x_2.Args[0] - if x_2_0.Op != OpARM64MOVDreg { - break - } - if w != x_2_0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if x_2_0.Op != OpARM64MOVDreg || w != x_2_0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11749,7 +10355,6 @@ func rewriteValueARM64_OpARM64MOVBstore_40(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { // match: (MOVBstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVBstore [c] ptr val mem) for { mem := v.Args[3] @@ -11768,7 +10373,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (MOVBstore [c] idx val mem) for { mem := v.Args[3] @@ -11787,17 +10391,13 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVBstorezeroidx ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVBstorezeroidx) @@ -11807,7 +10407,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVBreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11826,7 +10425,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVBUreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11845,7 +10443,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVHreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11864,7 +10461,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVHUreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11883,7 +10479,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVWreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11902,7 +10497,6 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx ptr idx (MOVWUreg x) mem) - // cond: // result: (MOVBstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -11927,18 +10521,12 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { _ = v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] v_2 := v.Args[2] - if v_2.Op != OpARM64SRLconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpARM64SRLconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] @@ -11947,16 +10535,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_0(v *Value) bool { break } mem := x.Args[3] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -11977,10 +10556,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { _ = v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 3 { break } idx := v_1.Args[0] @@ -11994,23 +10570,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 2 { - break - } - if idx != x0_1.Args[0] { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 2 || idx != x0_1.Args[0] { break } x0_2 := x0.Args[2] - if x0_2.Op != OpARM64UBFX { - break - } - if x0_2.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x0_2.Args[0] { + if x0_2.Op != OpARM64UBFX || x0_2.AuxInt != armBFAuxInt(8, 24) || w != x0_2.Args[0] { break } x1 := x0.Args[3] @@ -12022,23 +10586,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] { break } x1_2 := x1.Args[2] - if x1_2.Op != OpARM64UBFX { - break - } - if x1_2.AuxInt != armBFAuxInt(16, 16) { - break - } - if w != x1_2.Args[0] { + if x1_2.Op != OpARM64UBFX || x1_2.AuxInt != armBFAuxInt(16, 16) || w != x1_2.Args[0] { break } x2 := x1.Args[3] @@ -12046,23 +10598,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } mem := x2.Args[3] - if ptr != x2.Args[0] { - break - } - if idx != x2.Args[1] { + if ptr != x2.Args[0] || idx != x2.Args[1] { break } x2_2 := x2.Args[2] - if x2_2.Op != OpARM64UBFX { - break - } - if x2_2.AuxInt != armBFAuxInt(24, 8) { - break - } - if w != x2_2.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_2.Op != OpARM64UBFX || x2_2.AuxInt != armBFAuxInt(24, 8) || w != x2_2.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstoreidx) @@ -12091,23 +10631,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 1 { - break - } - if idx != x0_1.Args[0] { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 1 || idx != x0_1.Args[0] { break } x0_2 := x0.Args[2] - if x0_2.Op != OpARM64UBFX { - break - } - if x0_2.AuxInt != armBFAuxInt(8, 24) { - break - } - if w != x0_2.Args[0] { + if x0_2.Op != OpARM64UBFX || x0_2.AuxInt != armBFAuxInt(8, 24) || w != x0_2.Args[0] { break } x1 := x0.Args[3] @@ -12119,23 +10647,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 2 { - break - } - if idx != x1_1.Args[0] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 2 || idx != x1_1.Args[0] { break } x1_2 := x1.Args[2] - if x1_2.Op != OpARM64UBFX { - break - } - if x1_2.AuxInt != armBFAuxInt(16, 16) { - break - } - if w != x1_2.Args[0] { + if x1_2.Op != OpARM64UBFX || x1_2.AuxInt != armBFAuxInt(16, 16) || w != x1_2.Args[0] { break } x2 := x1.Args[3] @@ -12147,26 +10663,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 3 { - break - } - if idx != x2_1.Args[0] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 3 || idx != x2_1.Args[0] { break } x2_2 := x2.Args[2] - if x2_2.Op != OpARM64UBFX { - break - } - if x2_2.AuxInt != armBFAuxInt(24, 8) { - break - } - if w != x2_2.Args[0] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_2.Op != OpARM64UBFX || x2_2.AuxInt != armBFAuxInt(24, 8) || w != x2_2.Args[0] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpARM64MOVWstoreidx) @@ -12183,10 +10684,7 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { _ = v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -12196,23 +10694,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } mem := x.Args[3] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { + if ptr != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpARM64UBFX { - break - } - if x_2.AuxInt != armBFAuxInt(8, 8) { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpARM64UBFX || x_2.AuxInt != armBFAuxInt(8, 8) || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -12241,26 +10727,11 @@ func rewriteValueARM64_OpARM64MOVBstoreidx_10(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpARM64ADDconst { - break - } - if x_1.AuxInt != 1 { - break - } - if idx != x_1.Args[0] { + if x_1.Op != OpARM64ADDconst || x_1.AuxInt != 1 || idx != x_1.Args[0] { break } x_2 := x.Args[2] - if x_2.Op != OpARM64UBFX { - break - } - if x_2.AuxInt != armBFAuxInt(8, 8) { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpARM64UBFX || x_2.AuxInt != armBFAuxInt(8, 8) || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstoreidx) @@ -12407,7 +10878,6 @@ func rewriteValueARM64_OpARM64MOVBstorezero_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVBstorezeroidx_0(v *Value) bool { // match: (MOVBstorezeroidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVBstorezero [c] ptr mem) for { mem := v.Args[2] @@ -12424,7 +10894,6 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx_0(v *Value) bool { return true } // match: (MOVBstorezeroidx (MOVDconst [c]) idx mem) - // cond: // result: (MOVBstorezero [c] idx mem) for { mem := v.Args[2] @@ -12447,10 +10916,7 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx_0(v *Value) bool { _ = v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -12459,13 +10925,7 @@ func rewriteValueARM64_OpARM64MOVBstorezeroidx_0(v *Value) bool { break } mem := x.Args[2] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVHstorezeroidx) @@ -12480,7 +10940,6 @@ func rewriteValueARM64_OpARM64MOVDload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVDload [off] {sym} ptr (FMOVDstore [off] {sym} ptr val _)) - // cond: // result: (FMOVDfpgp val) for { off := v.AuxInt @@ -12488,13 +10947,7 @@ func rewriteValueARM64_OpARM64MOVDload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64FMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpARM64FMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -12559,10 +11012,7 @@ func rewriteValueARM64_OpARM64MOVDload_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 3 { break } idx := v_0.Args[1] @@ -12631,10 +11081,7 @@ func rewriteValueARM64_OpARM64MOVDload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARM64MOVDconst) @@ -12645,7 +11092,6 @@ func rewriteValueARM64_OpARM64MOVDload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDloadidx_0(v *Value) bool { // match: (MOVDloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVDload [c] ptr mem) for { mem := v.Args[2] @@ -12662,7 +11108,6 @@ func rewriteValueARM64_OpARM64MOVDloadidx_0(v *Value) bool { return true } // match: (MOVDloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVDload [c] ptr mem) for { mem := v.Args[2] @@ -12679,16 +11124,12 @@ func rewriteValueARM64_OpARM64MOVDloadidx_0(v *Value) bool { return true } // match: (MOVDloadidx ptr (SLLconst [3] idx) mem) - // cond: // result: (MOVDloadidx8 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 3 { break } idx := v_1.Args[0] @@ -12699,15 +11140,11 @@ func rewriteValueARM64_OpARM64MOVDloadidx_0(v *Value) bool { return true } // match: (MOVDloadidx (SLLconst [3] idx) ptr mem) - // cond: // result: (MOVDloadidx8 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 3 { break } idx := v_0.Args[0] @@ -12743,7 +11180,6 @@ func rewriteValueARM64_OpARM64MOVDloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDloadidx8_0(v *Value) bool { // match: (MOVDloadidx8 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVDload [c<<3] ptr mem) for { mem := v.Args[2] @@ -12796,7 +11232,6 @@ func rewriteValueARM64_OpARM64MOVDreg_0(v *Value) bool { return true } // match: (MOVDreg (MOVDconst [c])) - // cond: // result: (MOVDconst [c]) for { v_0 := v.Args[0] @@ -12814,7 +11249,6 @@ func rewriteValueARM64_OpARM64MOVDstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVDstore [off] {sym} ptr (FMOVDfpgp val) mem) - // cond: // result: (FMOVDstore [off] {sym} ptr val mem) for { off := v.AuxInt @@ -12891,10 +11325,7 @@ func rewriteValueARM64_OpARM64MOVDstore_0(v *Value) bool { sym := v.Aux mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 3 { break } idx := v_0.Args[1] @@ -12937,7 +11368,6 @@ func rewriteValueARM64_OpARM64MOVDstore_0(v *Value) bool { return true } // match: (MOVDstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVDstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -12945,10 +11375,7 @@ func rewriteValueARM64_OpARM64MOVDstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVDstorezero) @@ -12962,7 +11389,6 @@ func rewriteValueARM64_OpARM64MOVDstore_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { // match: (MOVDstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVDstore [c] ptr val mem) for { mem := v.Args[3] @@ -12981,7 +11407,6 @@ func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { return true } // match: (MOVDstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (MOVDstore [c] idx val mem) for { mem := v.Args[3] @@ -13000,16 +11425,12 @@ func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { return true } // match: (MOVDstoreidx ptr (SLLconst [3] idx) val mem) - // cond: // result: (MOVDstoreidx8 ptr idx val mem) for { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 3 { break } idx := v_1.Args[0] @@ -13022,15 +11443,11 @@ func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { return true } // match: (MOVDstoreidx (SLLconst [3] idx) ptr val mem) - // cond: // result: (MOVDstoreidx8 ptr idx val mem) for { mem := v.Args[3] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 3 { break } idx := v_0.Args[0] @@ -13044,17 +11461,13 @@ func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { return true } // match: (MOVDstoreidx ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVDstorezeroidx ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVDstorezeroidx) @@ -13067,7 +11480,6 @@ func rewriteValueARM64_OpARM64MOVDstoreidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDstoreidx8_0(v *Value) bool { // match: (MOVDstoreidx8 ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVDstore [c<<3] ptr val mem) for { mem := v.Args[3] @@ -13086,17 +11498,13 @@ func rewriteValueARM64_OpARM64MOVDstoreidx8_0(v *Value) bool { return true } // match: (MOVDstoreidx8 ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVDstorezeroidx8 ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVDstorezeroidx8) @@ -13187,10 +11595,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 3 { break } idx := v_0.Args[1] @@ -13274,10 +11679,7 @@ func rewriteValueARM64_OpARM64MOVDstorezero_0(v *Value) bool { s := v.Aux _ = v.Args[1] p0 := v.Args[0] - if p0.Op != OpARM64ADDshiftLL { - break - } - if p0.AuxInt != 3 { + if p0.Op != OpARM64ADDshiftLL || p0.AuxInt != 3 { break } idx0 := p0.Args[1] @@ -13303,7 +11705,6 @@ func rewriteValueARM64_OpARM64MOVDstorezero_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDstorezeroidx_0(v *Value) bool { // match: (MOVDstorezeroidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVDstorezero [c] ptr mem) for { mem := v.Args[2] @@ -13320,7 +11721,6 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx_0(v *Value) bool { return true } // match: (MOVDstorezeroidx (MOVDconst [c]) idx mem) - // cond: // result: (MOVDstorezero [c] idx mem) for { mem := v.Args[2] @@ -13337,16 +11737,12 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx_0(v *Value) bool { return true } // match: (MOVDstorezeroidx ptr (SLLconst [3] idx) mem) - // cond: // result: (MOVDstorezeroidx8 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 3 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 3 { break } idx := v_1.Args[0] @@ -13357,15 +11753,11 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx_0(v *Value) bool { return true } // match: (MOVDstorezeroidx (SLLconst [3] idx) ptr mem) - // cond: // result: (MOVDstorezeroidx8 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 3 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 3 { break } idx := v_0.Args[0] @@ -13380,7 +11772,6 @@ func rewriteValueARM64_OpARM64MOVDstorezeroidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVDstorezeroidx8_0(v *Value) bool { // match: (MOVDstorezeroidx8 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVDstorezero [c<<3] ptr mem) for { mem := v.Args[2] @@ -13454,10 +11845,7 @@ func rewriteValueARM64_OpARM64MOVHUload_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx := v_0.Args[1] @@ -13526,10 +11914,7 @@ func rewriteValueARM64_OpARM64MOVHUload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARM64MOVDconst) @@ -13540,7 +11925,6 @@ func rewriteValueARM64_OpARM64MOVHUload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { // match: (MOVHUloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHUload [c] ptr mem) for { mem := v.Args[2] @@ -13557,7 +11941,6 @@ func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVHUload [c] ptr mem) for { mem := v.Args[2] @@ -13574,16 +11957,12 @@ func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx ptr (SLLconst [1] idx) mem) - // cond: // result: (MOVHUloadidx2 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -13594,7 +11973,6 @@ func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx ptr (ADD idx idx) mem) - // cond: // result: (MOVHUloadidx2 ptr idx mem) for { mem := v.Args[2] @@ -13614,7 +11992,6 @@ func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { return true } // match: (MOVHUloadidx (ADD idx idx) ptr mem) - // cond: // result: (MOVHUloadidx2 ptr idx mem) for { mem := v.Args[2] @@ -13658,7 +12035,6 @@ func rewriteValueARM64_OpARM64MOVHUloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHUloadidx2_0(v *Value) bool { // match: (MOVHUloadidx2 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHUload [c<<1] ptr mem) for { mem := v.Args[2] @@ -13699,7 +12075,6 @@ func rewriteValueARM64_OpARM64MOVHUloadidx2_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { // match: (MOVHUreg x:(MOVBUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13712,7 +12087,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13725,7 +12099,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVBUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13738,7 +12111,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13751,7 +12123,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUloadidx2 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13764,7 +12135,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVBUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13776,7 +12146,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -13788,7 +12157,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&(1<<16-1)] x) for { v_0 := v.Args[0] @@ -13803,7 +12171,6 @@ func rewriteValueARM64_OpARM64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -13912,10 +12279,7 @@ func rewriteValueARM64_OpARM64MOVHload_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx := v_0.Args[1] @@ -13980,7 +12344,6 @@ func rewriteValueARM64_OpARM64MOVHload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { // match: (MOVHloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHload [c] ptr mem) for { mem := v.Args[2] @@ -13997,7 +12360,6 @@ func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVHload [c] ptr mem) for { mem := v.Args[2] @@ -14014,16 +12376,12 @@ func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx ptr (SLLconst [1] idx) mem) - // cond: // result: (MOVHloadidx2 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -14034,7 +12392,6 @@ func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx ptr (ADD idx idx) mem) - // cond: // result: (MOVHloadidx2 ptr idx mem) for { mem := v.Args[2] @@ -14054,7 +12411,6 @@ func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { return true } // match: (MOVHloadidx (ADD idx idx) ptr mem) - // cond: // result: (MOVHloadidx2 ptr idx mem) for { mem := v.Args[2] @@ -14098,7 +12454,6 @@ func rewriteValueARM64_OpARM64MOVHloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHloadidx2_0(v *Value) bool { // match: (MOVHloadidx2 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHload [c<<1] ptr mem) for { mem := v.Args[2] @@ -14139,7 +12494,6 @@ func rewriteValueARM64_OpARM64MOVHloadidx2_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { // match: (MOVHreg x:(MOVBload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14152,7 +12506,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14165,7 +12518,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14178,7 +12530,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14191,7 +12542,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14204,7 +12554,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14217,7 +12566,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHloadidx2 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14230,7 +12578,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14242,7 +12589,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14254,7 +12600,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -14269,7 +12614,6 @@ func rewriteValueARM64_OpARM64MOVHreg_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHreg_10(v *Value) bool { // match: (MOVHreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -14361,10 +12705,7 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { sym := v.Aux mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx := v_0.Args[1] @@ -14407,7 +12748,6 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVHstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -14415,10 +12755,7 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVHstorezero) @@ -14429,7 +12766,6 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -14450,7 +12786,6 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -14471,7 +12806,6 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -14492,7 +12826,6 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -14521,29 +12854,17 @@ func rewriteValueARM64_OpARM64MOVHstore_0(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVWstore) @@ -14574,10 +12895,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] @@ -14588,10 +12906,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14611,19 +12926,13 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] @@ -14634,10 +12943,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14659,29 +12965,17 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(16, 16) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(16, 16) { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVWstore) @@ -14708,10 +13002,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(16, 16) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(16, 16) { break } w := v_1.Args[0] @@ -14722,10 +13013,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14745,19 +13033,13 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64UBFX { - break - } - if v_1.AuxInt != armBFAuxInt(16, 16) { + if v_1.Op != OpARM64UBFX || v_1.AuxInt != armBFAuxInt(16, 16) { break } w := v_1.Args[0] @@ -14768,10 +13050,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14793,10 +13072,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } v_1_0 := v_1.Args[0] @@ -14805,21 +13081,12 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { } w := v_1_0.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVWstore) @@ -14846,10 +13113,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } v_1_0 := v_1.Args[0] @@ -14864,10 +13128,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14887,19 +13148,13 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 16 { break } v_1_0 := v_1.Args[0] @@ -14914,10 +13169,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -14945,28 +13197,13 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] w0 := x.Args[1] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVWstore) @@ -15006,16 +13243,7 @@ func rewriteValueARM64_OpARM64MOVHstore_10(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -15039,10 +13267,7 @@ func rewriteValueARM64_OpARM64MOVHstore_20(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx0 := v_0.Args[1] @@ -15061,16 +13286,7 @@ func rewriteValueARM64_OpARM64MOVHstore_20(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -15087,7 +13303,6 @@ func rewriteValueARM64_OpARM64MOVHstore_20(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { // match: (MOVHstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVHstore [c] ptr val mem) for { mem := v.Args[3] @@ -15106,7 +13321,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (MOVHstore [c] idx val mem) for { mem := v.Args[3] @@ -15125,16 +13339,12 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr (SLLconst [1] idx) val mem) - // cond: // result: (MOVHstoreidx2 ptr idx val mem) for { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -15147,7 +13357,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr (ADD idx idx) val mem) - // cond: // result: (MOVHstoreidx2 ptr idx val mem) for { mem := v.Args[3] @@ -15169,15 +13378,11 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx (SLLconst [1] idx) ptr val mem) - // cond: // result: (MOVHstoreidx2 ptr idx val mem) for { mem := v.Args[3] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 1 { break } idx := v_0.Args[0] @@ -15191,7 +13396,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx (ADD idx idx) ptr val mem) - // cond: // result: (MOVHstoreidx2 ptr idx val mem) for { mem := v.Args[3] @@ -15213,17 +13417,13 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVHstorezeroidx ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVHstorezeroidx) @@ -15233,7 +13433,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr idx (MOVHreg x) mem) - // cond: // result: (MOVHstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -15252,7 +13451,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr idx (MOVHUreg x) mem) - // cond: // result: (MOVHstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -15271,7 +13469,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx ptr idx (MOVWreg x) mem) - // cond: // result: (MOVHstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -15293,7 +13490,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHstoreidx_10(v *Value) bool { // match: (MOVHstoreidx ptr idx (MOVWUreg x) mem) - // cond: // result: (MOVHstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -15318,18 +13514,12 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_10(v *Value) bool { _ = v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] v_2 := v.Args[2] - if v_2.Op != OpARM64SRLconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpARM64SRLconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] @@ -15338,16 +13528,7 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_10(v *Value) bool { break } mem := x.Args[3] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVWstoreidx) @@ -15361,7 +13542,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx_10(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { // match: (MOVHstoreidx2 ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVHstore [c<<1] ptr val mem) for { mem := v.Args[3] @@ -15380,17 +13560,13 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { return true } // match: (MOVHstoreidx2 ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVHstorezeroidx2 ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVHstorezeroidx2) @@ -15400,7 +13576,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { return true } // match: (MOVHstoreidx2 ptr idx (MOVHreg x) mem) - // cond: // result: (MOVHstoreidx2 ptr idx x mem) for { mem := v.Args[3] @@ -15419,7 +13594,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { return true } // match: (MOVHstoreidx2 ptr idx (MOVHUreg x) mem) - // cond: // result: (MOVHstoreidx2 ptr idx x mem) for { mem := v.Args[3] @@ -15438,7 +13612,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { return true } // match: (MOVHstoreidx2 ptr idx (MOVWreg x) mem) - // cond: // result: (MOVHstoreidx2 ptr idx x mem) for { mem := v.Args[3] @@ -15457,7 +13630,6 @@ func rewriteValueARM64_OpARM64MOVHstoreidx2_0(v *Value) bool { return true } // match: (MOVHstoreidx2 ptr idx (MOVWUreg x) mem) - // cond: // result: (MOVHstoreidx2 ptr idx x mem) for { mem := v.Args[3] @@ -15557,10 +13729,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx := v_0.Args[1] @@ -15643,10 +13812,7 @@ func rewriteValueARM64_OpARM64MOVHstorezero_0(v *Value) bool { s := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 1 { break } idx0 := v_0.Args[1] @@ -15674,7 +13840,6 @@ func rewriteValueARM64_OpARM64MOVHstorezero_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { // match: (MOVHstorezeroidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHstorezero [c] ptr mem) for { mem := v.Args[2] @@ -15691,7 +13856,6 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { return true } // match: (MOVHstorezeroidx (MOVDconst [c]) idx mem) - // cond: // result: (MOVHstorezero [c] idx mem) for { mem := v.Args[2] @@ -15708,16 +13872,12 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { return true } // match: (MOVHstorezeroidx ptr (SLLconst [1] idx) mem) - // cond: // result: (MOVHstorezeroidx2 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 1 { break } idx := v_1.Args[0] @@ -15728,7 +13888,6 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { return true } // match: (MOVHstorezeroidx ptr (ADD idx idx) mem) - // cond: // result: (MOVHstorezeroidx2 ptr idx mem) for { mem := v.Args[2] @@ -15748,15 +13907,11 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { return true } // match: (MOVHstorezeroidx (SLLconst [1] idx) ptr mem) - // cond: // result: (MOVHstorezeroidx2 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 1 { break } idx := v_0.Args[0] @@ -15768,7 +13923,6 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { return true } // match: (MOVHstorezeroidx (ADD idx idx) ptr mem) - // cond: // result: (MOVHstorezeroidx2 ptr idx mem) for { mem := v.Args[2] @@ -15794,10 +13948,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { _ = v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -15806,13 +13957,7 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { break } mem := x.Args[2] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVWstorezeroidx) @@ -15825,7 +13970,6 @@ func rewriteValueARM64_OpARM64MOVHstorezeroidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVHstorezeroidx2_0(v *Value) bool { // match: (MOVHstorezeroidx2 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVHstorezero [c<<1] ptr mem) for { mem := v.Args[2] @@ -15899,7 +14043,6 @@ func rewriteValueARM64_OpARM64MOVWUload_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVWUload [off] {sym} ptr (FMOVSstore [off] {sym} ptr val _)) - // cond: // result: (FMOVSfpgp val) for { off := v.AuxInt @@ -15907,13 +14050,7 @@ func rewriteValueARM64_OpARM64MOVWUload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64FMOVSstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpARM64FMOVSstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -15978,10 +14115,7 @@ func rewriteValueARM64_OpARM64MOVWUload_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx := v_0.Args[1] @@ -16050,10 +14184,7 @@ func rewriteValueARM64_OpARM64MOVWUload_0(v *Value) bool { sym := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpSB { - break - } - if !(symIsRO(sym)) { + if v_0.Op != OpSB || !(symIsRO(sym)) { break } v.reset(OpARM64MOVDconst) @@ -16064,7 +14195,6 @@ func rewriteValueARM64_OpARM64MOVWUload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWUloadidx_0(v *Value) bool { // match: (MOVWUloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWUload [c] ptr mem) for { mem := v.Args[2] @@ -16081,7 +14211,6 @@ func rewriteValueARM64_OpARM64MOVWUloadidx_0(v *Value) bool { return true } // match: (MOVWUloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVWUload [c] ptr mem) for { mem := v.Args[2] @@ -16098,16 +14227,12 @@ func rewriteValueARM64_OpARM64MOVWUloadidx_0(v *Value) bool { return true } // match: (MOVWUloadidx ptr (SLLconst [2] idx) mem) - // cond: // result: (MOVWUloadidx4 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -16118,15 +14243,11 @@ func rewriteValueARM64_OpARM64MOVWUloadidx_0(v *Value) bool { return true } // match: (MOVWUloadidx (SLLconst [2] idx) ptr mem) - // cond: // result: (MOVWUloadidx4 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -16162,7 +14283,6 @@ func rewriteValueARM64_OpARM64MOVWUloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWUloadidx4_0(v *Value) bool { // match: (MOVWUloadidx4 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWUload [c<<2] ptr mem) for { mem := v.Args[2] @@ -16203,7 +14323,6 @@ func rewriteValueARM64_OpARM64MOVWUloadidx4_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { // match: (MOVWUreg x:(MOVBUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16216,7 +14335,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16229,7 +14347,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVWUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16242,7 +14359,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVBUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16255,7 +14371,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16268,7 +14383,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVWUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16281,7 +14395,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUloadidx2 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16294,7 +14407,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVWUloadidx4 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16307,7 +14419,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVBUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16319,7 +14430,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16334,7 +14444,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWUreg_10(v *Value) bool { // match: (MOVWUreg x:(MOVWUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16346,7 +14455,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_10(v *Value) bool { return true } // match: (MOVWUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&(1<<32-1)] x) for { v_0 := v.Args[0] @@ -16361,7 +14469,6 @@ func rewriteValueARM64_OpARM64MOVWUreg_10(v *Value) bool { return true } // match: (MOVWUreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint32(c))]) for { v_0 := v.Args[0] @@ -16467,10 +14574,7 @@ func rewriteValueARM64_OpARM64MOVWload_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx := v_0.Args[1] @@ -16535,7 +14639,6 @@ func rewriteValueARM64_OpARM64MOVWload_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWloadidx_0(v *Value) bool { // match: (MOVWloadidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWload [c] ptr mem) for { mem := v.Args[2] @@ -16552,7 +14655,6 @@ func rewriteValueARM64_OpARM64MOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (MOVDconst [c]) ptr mem) - // cond: // result: (MOVWload [c] ptr mem) for { mem := v.Args[2] @@ -16569,16 +14671,12 @@ func rewriteValueARM64_OpARM64MOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx ptr (SLLconst [2] idx) mem) - // cond: // result: (MOVWloadidx4 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -16589,15 +14687,11 @@ func rewriteValueARM64_OpARM64MOVWloadidx_0(v *Value) bool { return true } // match: (MOVWloadidx (SLLconst [2] idx) ptr mem) - // cond: // result: (MOVWloadidx4 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -16633,7 +14727,6 @@ func rewriteValueARM64_OpARM64MOVWloadidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWloadidx4_0(v *Value) bool { // match: (MOVWloadidx4 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWload [c<<2] ptr mem) for { mem := v.Args[2] @@ -16674,7 +14767,6 @@ func rewriteValueARM64_OpARM64MOVWloadidx4_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { // match: (MOVWreg x:(MOVBload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16687,7 +14779,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16700,7 +14791,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16713,7 +14803,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHUload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16726,7 +14815,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVWload _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16739,7 +14827,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16752,7 +14839,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16765,7 +14851,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16778,7 +14863,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHUloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16791,7 +14875,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVWloadidx _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16807,7 +14890,6 @@ func rewriteValueARM64_OpARM64MOVWreg_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { // match: (MOVWreg x:(MOVHloadidx2 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16820,7 +14902,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVHUloadidx2 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16833,7 +14914,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVWloadidx4 _ _ _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16846,7 +14926,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVBreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16858,7 +14937,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVBUreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16870,7 +14948,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVHreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16882,7 +14959,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVHreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16894,7 +14970,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVWreg _)) - // cond: // result: (MOVDreg x) for { x := v.Args[0] @@ -16906,7 +14981,6 @@ func rewriteValueARM64_OpARM64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int32(c))]) for { v_0 := v.Args[0] @@ -16942,7 +15016,6 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { b := v.Block config := b.Func.Config // match: (MOVWstore [off] {sym} ptr (FMOVSfpgp val) mem) - // cond: // result: (FMOVSstore [off] {sym} ptr val mem) for { off := v.AuxInt @@ -17019,10 +15092,7 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { sym := v.Aux mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx := v_0.Args[1] @@ -17065,7 +15135,6 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVWstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -17073,10 +15142,7 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVWstorezero) @@ -17087,7 +15153,6 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -17108,7 +15173,6 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -17137,29 +15201,17 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { _ = v.Args[2] ptr0 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 32 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVWstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVWstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w != x.Args[1] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVDstore) @@ -17186,10 +15238,7 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 32 { break } w := v_1.Args[0] @@ -17200,10 +15249,7 @@ func rewriteValueARM64_OpARM64MOVWstore_0(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVDstoreidx) @@ -17227,19 +15273,13 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx0 := v_0.Args[1] ptr0 := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != 32 { break } w := v_1.Args[0] @@ -17250,10 +15290,7 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { mem := x.Args[3] ptr1 := x.Args[0] idx1 := x.Args[1] - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w != x.Args[2] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVDstoreidx) @@ -17281,28 +15318,13 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpARM64MOVWstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpARM64MOVWstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] ptr1 := x.Args[0] w0 := x.Args[1] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && isSamePtr(ptr0, ptr1) && clobber(x)) { break } v.reset(OpARM64MOVDstore) @@ -17342,16 +15364,7 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && s == nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x)) { break } v.reset(OpARM64MOVDstoreidx) @@ -17371,10 +15384,7 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { s := v.Aux _ = v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx0 := v_0.Args[1] @@ -17393,16 +15403,7 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { ptr1 := x.Args[0] idx1 := x.Args[1] w0 := x.Args[2] - if w0.Op != OpARM64SRLconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { + if w0.Op != OpARM64SRLconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && s == nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && clobber(x)) { break } v.reset(OpARM64MOVDstoreidx) @@ -17419,7 +15420,6 @@ func rewriteValueARM64_OpARM64MOVWstore_10(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { // match: (MOVWstoreidx ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVWstore [c] ptr val mem) for { mem := v.Args[3] @@ -17438,7 +15438,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (MOVDconst [c]) idx val mem) - // cond: // result: (MOVWstore [c] idx val mem) for { mem := v.Args[3] @@ -17457,16 +15456,12 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr (SLLconst [2] idx) val mem) - // cond: // result: (MOVWstoreidx4 ptr idx val mem) for { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -17479,15 +15474,11 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx (SLLconst [2] idx) ptr val mem) - // cond: // result: (MOVWstoreidx4 ptr idx val mem) for { mem := v.Args[3] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -17501,17 +15492,13 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVWstorezeroidx ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVWstorezeroidx) @@ -17521,7 +15508,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr idx (MOVWreg x) mem) - // cond: // result: (MOVWstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -17540,7 +15526,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx ptr idx (MOVWUreg x) mem) - // cond: // result: (MOVWstoreidx ptr idx x mem) for { mem := v.Args[3] @@ -17565,18 +15550,12 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { _ = v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 4 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 4 { break } idx := v_1.Args[0] v_2 := v.Args[2] - if v_2.Op != OpARM64SRLconst { - break - } - if v_2.AuxInt != 32 { + if v_2.Op != OpARM64SRLconst || v_2.AuxInt != 32 { break } w := v_2.Args[0] @@ -17585,16 +15564,7 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { break } mem := x.Args[3] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVDstoreidx) @@ -17608,7 +15578,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWstoreidx4_0(v *Value) bool { // match: (MOVWstoreidx4 ptr (MOVDconst [c]) val mem) - // cond: // result: (MOVWstore [c<<2] ptr val mem) for { mem := v.Args[3] @@ -17627,17 +15596,13 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4_0(v *Value) bool { return true } // match: (MOVWstoreidx4 ptr idx (MOVDconst [0]) mem) - // cond: // result: (MOVWstorezeroidx4 ptr idx mem) for { mem := v.Args[3] ptr := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVWstorezeroidx4) @@ -17647,7 +15612,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4_0(v *Value) bool { return true } // match: (MOVWstoreidx4 ptr idx (MOVWreg x) mem) - // cond: // result: (MOVWstoreidx4 ptr idx x mem) for { mem := v.Args[3] @@ -17666,7 +15630,6 @@ func rewriteValueARM64_OpARM64MOVWstoreidx4_0(v *Value) bool { return true } // match: (MOVWstoreidx4 ptr idx (MOVWUreg x) mem) - // cond: // result: (MOVWstoreidx4 ptr idx x mem) for { mem := v.Args[3] @@ -17766,10 +15729,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero_0(v *Value) bool { sym := v.Aux mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx := v_0.Args[1] @@ -17852,10 +15812,7 @@ func rewriteValueARM64_OpARM64MOVWstorezero_0(v *Value) bool { s := v.Aux _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64ADDshiftLL { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64ADDshiftLL || v_0.AuxInt != 2 { break } idx0 := v_0.Args[1] @@ -17883,7 +15840,6 @@ func rewriteValueARM64_OpARM64MOVWstorezero_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { // match: (MOVWstorezeroidx ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWstorezero [c] ptr mem) for { mem := v.Args[2] @@ -17900,7 +15856,6 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { return true } // match: (MOVWstorezeroidx (MOVDconst [c]) idx mem) - // cond: // result: (MOVWstorezero [c] idx mem) for { mem := v.Args[2] @@ -17917,16 +15872,12 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { return true } // match: (MOVWstorezeroidx ptr (SLLconst [2] idx) mem) - // cond: // result: (MOVWstorezeroidx4 ptr idx mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SLLconst { - break - } - if v_1.AuxInt != 2 { + if v_1.Op != OpARM64SLLconst || v_1.AuxInt != 2 { break } idx := v_1.Args[0] @@ -17937,15 +15888,11 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { return true } // match: (MOVWstorezeroidx (SLLconst [2] idx) ptr mem) - // cond: // result: (MOVWstorezeroidx4 ptr idx mem) for { mem := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 2 { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 2 { break } idx := v_0.Args[0] @@ -17963,10 +15910,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { _ = v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64ADDconst { - break - } - if v_1.AuxInt != 4 { + if v_1.Op != OpARM64ADDconst || v_1.AuxInt != 4 { break } idx := v_1.Args[0] @@ -17975,13 +15919,7 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { break } mem := x.Args[2] - if ptr != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if ptr != x.Args[0] || idx != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpARM64MOVDstorezeroidx) @@ -17994,7 +15932,6 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx_0(v *Value) bool { } func rewriteValueARM64_OpARM64MOVWstorezeroidx4_0(v *Value) bool { // match: (MOVWstorezeroidx4 ptr (MOVDconst [c]) mem) - // cond: // result: (MOVWstorezero [c<<2] ptr mem) for { mem := v.Args[2] @@ -18015,17 +15952,13 @@ func rewriteValueARM64_OpARM64MOVWstorezeroidx4_0(v *Value) bool { func rewriteValueARM64_OpARM64MSUB_0(v *Value) bool { b := v.Block // match: (MSUB a x (MOVDconst [-1])) - // cond: // result: (ADD a x) for { _ = v.Args[2] a := v.Args[0] x := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != -1 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != -1 { break } v.reset(OpARM64ADD) @@ -18034,16 +15967,12 @@ func rewriteValueARM64_OpARM64MSUB_0(v *Value) bool { return true } // match: (MSUB a _ (MOVDconst [0])) - // cond: // result: a for { _ = v.Args[2] a := v.Args[0] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpCopy) @@ -18052,17 +15981,13 @@ func rewriteValueARM64_OpARM64MSUB_0(v *Value) bool { return true } // match: (MSUB a x (MOVDconst [1])) - // cond: // result: (SUB a x) for { _ = v.Args[2] a := v.Args[0] x := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 1 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 1 { break } v.reset(OpARM64SUB) @@ -18244,16 +16169,12 @@ func rewriteValueARM64_OpARM64MSUB_0(v *Value) bool { func rewriteValueARM64_OpARM64MSUB_10(v *Value) bool { b := v.Block // match: (MSUB a (MOVDconst [-1]) x) - // cond: // result: (ADD a x) for { x := v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != -1 { break } v.reset(OpARM64ADD) @@ -18262,16 +16183,12 @@ func rewriteValueARM64_OpARM64MSUB_10(v *Value) bool { return true } // match: (MSUB a (MOVDconst [0]) _) - // cond: // result: a for { _ = v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -18280,16 +16197,12 @@ func rewriteValueARM64_OpARM64MSUB_10(v *Value) bool { return true } // match: (MSUB a (MOVDconst [1]) x) - // cond: // result: (SUB a x) for { x := v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpARM64SUB) @@ -18464,7 +16377,6 @@ func rewriteValueARM64_OpARM64MSUB_10(v *Value) bool { func rewriteValueARM64_OpARM64MSUB_20(v *Value) bool { b := v.Block // match: (MSUB (MOVDconst [c]) x y) - // cond: // result: (ADDconst [c] (MNEG x y)) for { y := v.Args[2] @@ -18483,7 +16395,6 @@ func rewriteValueARM64_OpARM64MSUB_20(v *Value) bool { return true } // match: (MSUB a (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (SUBconst [c*d] a) for { _ = v.Args[2] @@ -18963,7 +16874,6 @@ func rewriteValueARM64_OpARM64MSUBW_10(v *Value) bool { func rewriteValueARM64_OpARM64MSUBW_20(v *Value) bool { b := v.Block // match: (MSUBW (MOVDconst [c]) x y) - // cond: // result: (ADDconst [c] (MNEGW x y)) for { y := v.Args[2] @@ -18982,7 +16892,6 @@ func rewriteValueARM64_OpARM64MSUBW_20(v *Value) bool { return true } // match: (MSUBW a (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (SUBconst [int64(int32(c)*int32(d))] a) for { _ = v.Args[2] @@ -19006,7 +16915,6 @@ func rewriteValueARM64_OpARM64MSUBW_20(v *Value) bool { } func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { // match: (MUL (NEG x) y) - // cond: // result: (MNEG x y) for { y := v.Args[1] @@ -19021,7 +16929,6 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL y (NEG x)) - // cond: // result: (MNEG x y) for { _ = v.Args[1] @@ -19037,16 +16944,12 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL x (MOVDconst [-1])) - // cond: // result: (NEG x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != -1 { break } v.reset(OpARM64NEG) @@ -19054,15 +16957,11 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL (MOVDconst [-1]) x) - // cond: // result: (NEG x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != -1 { break } v.reset(OpARM64NEG) @@ -19070,15 +16969,11 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL _ (MOVDconst [0])) - // cond: // result: (MOVDconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpARM64MOVDconst) @@ -19086,15 +16981,11 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL (MOVDconst [0]) _) - // cond: // result: (MOVDconst [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != 0 { break } v.reset(OpARM64MOVDconst) @@ -19102,16 +16993,12 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL x (MOVDconst [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -19120,15 +17007,11 @@ func rewriteValueARM64_OpARM64MUL_0(v *Value) bool { return true } // match: (MUL (MOVDconst [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64MOVDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpARM64MOVDconst || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -19448,7 +17331,6 @@ func rewriteValueARM64_OpARM64MUL_20(v *Value) bool { return true } // match: (MUL (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c*d]) for { _ = v.Args[1] @@ -19467,7 +17349,6 @@ func rewriteValueARM64_OpARM64MUL_20(v *Value) bool { return true } // match: (MUL (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c*d]) for { _ = v.Args[1] @@ -19489,7 +17370,6 @@ func rewriteValueARM64_OpARM64MUL_20(v *Value) bool { } func rewriteValueARM64_OpARM64MULW_0(v *Value) bool { // match: (MULW (NEG x) y) - // cond: // result: (MNEGW x y) for { y := v.Args[1] @@ -19504,7 +17384,6 @@ func rewriteValueARM64_OpARM64MULW_0(v *Value) bool { return true } // match: (MULW y (NEG x)) - // cond: // result: (MNEGW x y) for { _ = v.Args[1] @@ -19937,7 +17816,6 @@ func rewriteValueARM64_OpARM64MULW_20(v *Value) bool { return true } // match: (MULW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -19956,7 +17834,6 @@ func rewriteValueARM64_OpARM64MULW_20(v *Value) bool { return true } // match: (MULW (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -19978,7 +17855,6 @@ func rewriteValueARM64_OpARM64MULW_20(v *Value) bool { } func rewriteValueARM64_OpARM64MVN_0(v *Value) bool { // match: (MVN (MOVDconst [c])) - // cond: // result: (MOVDconst [^c]) for { v_0 := v.Args[0] @@ -20048,7 +17924,6 @@ func rewriteValueARM64_OpARM64MVN_0(v *Value) bool { } func rewriteValueARM64_OpARM64MVNshiftLL_0(v *Value) bool { // match: (MVNshiftLL (MOVDconst [c]) [d]) - // cond: // result: (MOVDconst [^int64(uint64(c)<>uint64(d))]) for { d := v.AuxInt @@ -20082,7 +17956,6 @@ func rewriteValueARM64_OpARM64MVNshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64MVNshiftRL_0(v *Value) bool { // match: (MVNshiftRL (MOVDconst [c]) [d]) - // cond: // result: (MOVDconst [^int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -20099,7 +17972,6 @@ func rewriteValueARM64_OpARM64MVNshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64NEG_0(v *Value) bool { // match: (NEG (MUL x y)) - // cond: // result: (MNEG x y) for { v_0 := v.Args[0] @@ -20114,7 +17986,6 @@ func rewriteValueARM64_OpARM64NEG_0(v *Value) bool { return true } // match: (NEG (MULW x y)) - // cond: // result: (MNEGW x y) for { v_0 := v.Args[0] @@ -20129,7 +18000,6 @@ func rewriteValueARM64_OpARM64NEG_0(v *Value) bool { return true } // match: (NEG (MOVDconst [c])) - // cond: // result: (MOVDconst [-c]) for { v_0 := v.Args[0] @@ -20199,7 +18069,6 @@ func rewriteValueARM64_OpARM64NEG_0(v *Value) bool { } func rewriteValueARM64_OpARM64NEGshiftLL_0(v *Value) bool { // match: (NEGshiftLL (MOVDconst [c]) [d]) - // cond: // result: (MOVDconst [-int64(uint64(c)<>uint64(d))]) for { d := v.AuxInt @@ -20233,7 +18101,6 @@ func rewriteValueARM64_OpARM64NEGshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64NEGshiftRL_0(v *Value) bool { // match: (NEGshiftRL (MOVDconst [c]) [d]) - // cond: // result: (MOVDconst [-int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -20250,7 +18117,6 @@ func rewriteValueARM64_OpARM64NEGshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { // match: (NotEqual (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -20262,7 +18128,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagLT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -20274,7 +18139,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagLT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -20286,7 +18150,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagGT_ULT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -20298,7 +18161,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagGT_UGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -20310,7 +18172,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (InvertFlags x)) - // cond: // result: (NotEqual x) for { v_0 := v.Args[0] @@ -20326,7 +18187,6 @@ func rewriteValueARM64_OpARM64NotEqual_0(v *Value) bool { } func rewriteValueARM64_OpARM64OR_0(v *Value) bool { // match: (OR x (MOVDconst [c])) - // cond: // result: (ORconst [c] x) for { _ = v.Args[1] @@ -20342,7 +18202,6 @@ func rewriteValueARM64_OpARM64OR_0(v *Value) bool { return true } // match: (OR (MOVDconst [c]) x) - // cond: // result: (ORconst [c] x) for { x := v.Args[1] @@ -20357,7 +18216,6 @@ func rewriteValueARM64_OpARM64OR_0(v *Value) bool { return true } // match: (OR x x) - // cond: // result: x for { x := v.Args[1] @@ -20370,7 +18228,6 @@ func rewriteValueARM64_OpARM64OR_0(v *Value) bool { return true } // match: (OR x (MVN y)) - // cond: // result: (ORN x y) for { _ = v.Args[1] @@ -20386,7 +18243,6 @@ func rewriteValueARM64_OpARM64OR_0(v *Value) bool { return true } // match: (OR (MVN y) x) - // cond: // result: (ORN x y) for { x := v.Args[1] @@ -20549,19 +18405,13 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt64 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt64 { break } _ = v_1_0.Args[1] @@ -20569,69 +18419,33 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -20647,19 +18461,13 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt64 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt64 { break } _ = v_0_0.Args[1] @@ -20671,56 +18479,29 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -20732,19 +18513,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -20760,10 +18529,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt64 { break } _ = v_0.Args[1] @@ -20778,10 +18544,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux @@ -20795,69 +18558,33 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -20871,10 +18598,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux @@ -20892,63 +18616,33 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt64 { break } _ = v_1.Args[1] @@ -20956,19 +18650,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -20997,93 +18679,48 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt32 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt32 { break } _ = v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0_0.Args[0] { + if v_1_0_0.Op != OpARM64MOVWUreg || x != v_1_0_0.Args[0] { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -21099,19 +18736,13 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt32 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt32 { break } _ = v_0_0.Args[1] @@ -21127,56 +18758,29 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -21188,19 +18792,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -21216,10 +18808,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt32 { break } _ = v_0.Args[1] @@ -21238,10 +18827,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux @@ -21255,69 +18841,33 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -21331,10 +18881,7 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux @@ -21352,87 +18899,42 @@ func rewriteValueARM64_OpARM64OR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt32 { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0.Args[0] { + if v_1_0.Op != OpARM64MOVWUreg || x != v_1_0.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -21555,26 +19057,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -21602,10 +19095,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -21621,10 +19111,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := v.Args[1] @@ -21640,13 +19127,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x3.Args[0] || mem != x3.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -21680,26 +19161,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { mem := x3.Args[1] p := x3.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -21715,10 +19187,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } y1 := o1.Args[1] @@ -21734,10 +19203,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -21753,13 +19219,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -21781,26 +19241,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -21808,10 +19259,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVBUload { - break - } - if x0.AuxInt != 3 { + if x0.Op != OpARM64MOVBUload || x0.AuxInt != 3 { break } s := x0.Aux @@ -21822,20 +19270,11 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 2 || x1.Aux != s { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -21843,13 +19282,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 1 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 1 || x2.Aux != s { break } _ = x2.Args[1] @@ -21873,10 +19306,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { _ = x3.Args[2] ptr0 := x3.Args[0] idx0 := x3.Args[1] - if mem != x3.Args[2] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if mem != x3.Args[2] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -21906,26 +19336,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { ptr0 := x3.Args[0] idx0 := x3.Args[1] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -21933,10 +19354,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVBUload { - break - } - if x0.AuxInt != 3 { + if x0.Op != OpARM64MOVBUload || x0.AuxInt != 3 { break } s := x0.Aux @@ -21950,20 +19368,11 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 2 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 2 || x1.Aux != s { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -21971,13 +19380,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 1 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 1 || x2.Aux != s { break } _ = x2.Args[1] @@ -21987,10 +19390,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { } idx1 := p1.Args[1] ptr1 := p1.Args[0] - if mem != x2.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if mem != x2.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -22009,26 +19409,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -22042,10 +19433,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { mem := x0.Args[2] ptr := x0.Args[0] x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 3 { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 3 { break } idx := x0_1.Args[0] @@ -22062,16 +19450,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 2 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 2 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o0.Args[1] @@ -22087,16 +19466,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 1 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 1 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := v.Args[1] @@ -22108,16 +19478,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x3.Args[2] - if ptr != x3.Args[0] { - break - } - if idx != x3.Args[1] { - break - } - if mem != x3.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if ptr != x3.Args[0] || idx != x3.Args[1] || mem != x3.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -22147,26 +19508,17 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { ptr := x3.Args[0] idx := x3.Args[1] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -22182,16 +19534,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 3 { - break - } - if idx != x0_1.Args[0] { - break - } - if mem != x0.Args[2] { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 3 || idx != x0_1.Args[0] || mem != x0.Args[2] { break } y1 := o1.Args[1] @@ -22207,16 +19550,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 2 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 2 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o0.Args[1] @@ -22232,19 +19566,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 1 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 1 || idx != x2_1.Args[0] || mem != x2.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -22263,58 +19585,37 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -22342,10 +19643,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -22361,10 +19659,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -22380,10 +19675,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -22399,10 +19691,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -22418,10 +19707,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -22437,10 +19723,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } y7 := v.Args[1] @@ -22456,13 +19739,7 @@ func rewriteValueARM64_OpARM64OR_20(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -22500,58 +19777,37 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -22567,10 +19823,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } y1 := o5.Args[1] @@ -22586,10 +19839,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -22605,10 +19855,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -22624,10 +19871,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -22643,10 +19887,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -22662,10 +19903,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -22681,13 +19919,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -22709,58 +19941,37 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -22768,10 +19979,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVBUload { - break - } - if x0.AuxInt != 7 { + if x0.Op != OpARM64MOVBUload || x0.AuxInt != 7 { break } s := x0.Aux @@ -22782,20 +19990,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 6 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 6 || x1.Aux != s { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -22803,20 +20002,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 5 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 5 || x2.Aux != s { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -22824,20 +20014,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 4 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 4 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -22845,20 +20026,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 3 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 3 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -22866,20 +20038,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x5 := y5.Args[0] - if x5.Op != OpARM64MOVBUload { - break - } - if x5.AuxInt != 2 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBUload || x5.AuxInt != 2 || x5.Aux != s { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -22887,13 +20050,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x6 := y6.Args[0] - if x6.Op != OpARM64MOVBUload { - break - } - if x6.AuxInt != 1 { - break - } - if x6.Aux != s { + if x6.Op != OpARM64MOVBUload || x6.AuxInt != 1 || x6.Aux != s { break } _ = x6.Args[1] @@ -22917,10 +20074,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { _ = x7.Args[2] ptr0 := x7.Args[0] idx0 := x7.Args[1] - if mem != x7.Args[2] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if mem != x7.Args[2] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -22950,58 +20104,37 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { ptr0 := x7.Args[0] idx0 := x7.Args[1] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -23009,10 +20142,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVBUload { - break - } - if x0.AuxInt != 7 { + if x0.Op != OpARM64MOVBUload || x0.AuxInt != 7 { break } s := x0.Aux @@ -23026,20 +20156,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 6 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 6 || x1.Aux != s { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -23047,20 +20168,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 5 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 5 || x2.Aux != s { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -23068,20 +20180,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 4 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 4 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -23089,20 +20192,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 3 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 3 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -23110,20 +20204,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x5 := y5.Args[0] - if x5.Op != OpARM64MOVBUload { - break - } - if x5.AuxInt != 2 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBUload || x5.AuxInt != 2 || x5.Aux != s { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -23131,13 +20216,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x6 := y6.Args[0] - if x6.Op != OpARM64MOVBUload { - break - } - if x6.AuxInt != 1 { - break - } - if x6.Aux != s { + if x6.Op != OpARM64MOVBUload || x6.AuxInt != 1 || x6.Aux != s { break } _ = x6.Args[1] @@ -23147,10 +20226,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { } idx1 := p1.Args[1] ptr1 := p1.Args[0] - if mem != x6.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if mem != x6.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -23169,58 +20245,37 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -23234,10 +20289,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { mem := x0.Args[2] ptr := x0.Args[0] x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 7 { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 7 { break } idx := x0_1.Args[0] @@ -23254,16 +20306,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 6 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 6 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o4.Args[1] @@ -23279,16 +20322,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 5 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 5 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o3.Args[1] @@ -23304,16 +20338,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 4 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 4 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := o2.Args[1] @@ -23329,16 +20354,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64ADDconst { - break - } - if x4_1.AuxInt != 3 { - break - } - if idx != x4_1.Args[0] { - break - } - if mem != x4.Args[2] { + if x4_1.Op != OpARM64ADDconst || x4_1.AuxInt != 3 || idx != x4_1.Args[0] || mem != x4.Args[2] { break } y5 := o1.Args[1] @@ -23354,16 +20370,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpARM64ADDconst { - break - } - if x5_1.AuxInt != 2 { - break - } - if idx != x5_1.Args[0] { - break - } - if mem != x5.Args[2] { + if x5_1.Op != OpARM64ADDconst || x5_1.AuxInt != 2 || idx != x5_1.Args[0] || mem != x5.Args[2] { break } y6 := o0.Args[1] @@ -23379,16 +20386,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpARM64ADDconst { - break - } - if x6_1.AuxInt != 1 { - break - } - if idx != x6_1.Args[0] { - break - } - if mem != x6.Args[2] { + if x6_1.Op != OpARM64ADDconst || x6_1.AuxInt != 1 || idx != x6_1.Args[0] || mem != x6.Args[2] { break } y7 := v.Args[1] @@ -23400,16 +20398,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x7.Args[2] - if ptr != x7.Args[0] { - break - } - if idx != x7.Args[1] { - break - } - if mem != x7.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if ptr != x7.Args[0] || idx != x7.Args[1] || mem != x7.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -23439,58 +20428,37 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { ptr := x7.Args[0] idx := x7.Args[1] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -23506,16 +20474,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 7 { - break - } - if idx != x0_1.Args[0] { - break - } - if mem != x0.Args[2] { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 7 || idx != x0_1.Args[0] || mem != x0.Args[2] { break } y1 := o5.Args[1] @@ -23531,16 +20490,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 6 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 6 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o4.Args[1] @@ -23556,16 +20506,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 5 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 5 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o3.Args[1] @@ -23581,16 +20522,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 4 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 4 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := o2.Args[1] @@ -23606,16 +20538,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64ADDconst { - break - } - if x4_1.AuxInt != 3 { - break - } - if idx != x4_1.Args[0] { - break - } - if mem != x4.Args[2] { + if x4_1.Op != OpARM64ADDconst || x4_1.AuxInt != 3 || idx != x4_1.Args[0] || mem != x4.Args[2] { break } y5 := o1.Args[1] @@ -23631,16 +20554,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpARM64ADDconst { - break - } - if x5_1.AuxInt != 2 { - break - } - if idx != x5_1.Args[0] { - break - } - if mem != x5.Args[2] { + if x5_1.Op != OpARM64ADDconst || x5_1.AuxInt != 2 || idx != x5_1.Args[0] || mem != x5.Args[2] { break } y6 := o0.Args[1] @@ -23656,19 +20570,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpARM64ADDconst { - break - } - if x6_1.AuxInt != 1 { - break - } - if idx != x6_1.Args[0] { - break - } - if mem != x6.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if x6_1.Op != OpARM64ADDconst || x6_1.AuxInt != 1 || idx != x6_1.Args[0] || mem != x6.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -23687,26 +20589,17 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -23734,10 +20627,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -23753,10 +20643,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := v.Args[1] @@ -23772,13 +20659,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x3.Args[0] || mem != x3.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -23814,26 +20695,17 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { mem := x3.Args[1] p := x3.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -23849,10 +20721,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } y1 := o1.Args[1] @@ -23868,10 +20737,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o0.Args[1] @@ -23887,13 +20753,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -23917,26 +20777,17 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -23955,10 +20806,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 { break } s := x1.Aux @@ -23977,13 +20825,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 2 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 2 || x2.Aux != s { break } _ = x2.Args[1] @@ -23996,23 +20838,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 3 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 3 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x3.Args[0] || mem != x3.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -24037,36 +20867,24 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 3 { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 3 { break } s := x3.Aux mem := x3.Args[1] p := x3.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -24088,13 +20906,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[1] @@ -24112,23 +20924,11 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 2 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 2 || x2.Aux != s { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -24149,26 +20949,17 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -24195,16 +20986,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o0.Args[1] @@ -24220,16 +21002,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 2 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 2 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := v.Args[1] @@ -24245,19 +21018,7 @@ func rewriteValueARM64_OpARM64OR_30(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 3 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 3 || idx != x3_1.Args[0] || mem != x3.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -24292,34 +21053,22 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { mem := x3.Args[2] ptr := x3.Args[0] x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 3 { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 3 { break } idx := x3_1.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] s0 := o1.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 24 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 24 { break } y0 := s0.Args[0] @@ -24331,13 +21080,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x0.Args[2] - if ptr != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if ptr != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } y1 := o1.Args[1] @@ -24353,16 +21096,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o0.Args[1] @@ -24378,19 +21112,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 2 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 2 || idx != x2_1.Args[0] || mem != x2.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(o0) && clobber(o1) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3) @@ -24411,58 +21133,37 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -24490,10 +21191,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -24509,10 +21207,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -24528,10 +21223,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -24547,10 +21239,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -24566,10 +21255,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -24585,10 +21271,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } y7 := v.Args[1] @@ -24604,13 +21287,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -24646,58 +21323,37 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -24713,10 +21369,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } y1 := o5.Args[1] @@ -24732,10 +21385,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o4.Args[1] @@ -24751,10 +21401,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -24770,10 +21417,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -24789,10 +21433,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -24808,10 +21449,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -24827,13 +21465,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -24857,58 +21489,37 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -24927,10 +21538,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 { break } s := x1.Aux @@ -24949,13 +21557,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 2 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 2 || x2.Aux != s { break } _ = x2.Args[1] @@ -24968,20 +21570,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 3 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 3 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -24989,20 +21582,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 4 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 4 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -25010,20 +21594,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x5 := y5.Args[0] - if x5.Op != OpARM64MOVBUload { - break - } - if x5.AuxInt != 5 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBUload || x5.AuxInt != 5 || x5.Aux != s { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -25031,20 +21606,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x6 := y6.Args[0] - if x6.Op != OpARM64MOVBUload { - break - } - if x6.AuxInt != 6 { - break - } - if x6.Aux != s { + if x6.Op != OpARM64MOVBUload || x6.AuxInt != 6 || x6.Aux != s { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } y7 := v.Args[1] @@ -25052,23 +21618,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x7 := y7.Args[0] - if x7.Op != OpARM64MOVBUload { - break - } - if x7.AuxInt != 7 { - break - } - if x7.Aux != s { + if x7.Op != OpARM64MOVBUload || x7.AuxInt != 7 || x7.Aux != s { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -25093,68 +21647,44 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x7 := y7.Args[0] - if x7.Op != OpARM64MOVBUload { - break - } - if x7.AuxInt != 7 { + if x7.Op != OpARM64MOVBUload || x7.AuxInt != 7 { break } s := x7.Aux mem := x7.Args[1] p := x7.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -25176,13 +21706,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[1] @@ -25200,20 +21724,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 2 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 2 || x2.Aux != s { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o3.Args[1] @@ -25221,20 +21736,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 3 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 3 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := o2.Args[1] @@ -25242,20 +21748,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 4 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 4 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } y5 := o1.Args[1] @@ -25263,20 +21760,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x5 := y5.Args[0] - if x5.Op != OpARM64MOVBUload { - break - } - if x5.AuxInt != 5 { - break - } - if x5.Aux != s { + if x5.Op != OpARM64MOVBUload || x5.AuxInt != 5 || x5.Aux != s { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } y6 := o0.Args[1] @@ -25284,23 +21772,11 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x6 := y6.Args[0] - if x6.Op != OpARM64MOVBUload { - break - } - if x6.AuxInt != 6 { - break - } - if x6.Aux != s { + if x6.Op != OpARM64MOVBUload || x6.AuxInt != 6 || x6.Aux != s { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -25321,58 +21797,37 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -25399,16 +21854,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o4.Args[1] @@ -25424,16 +21870,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 2 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 2 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o3.Args[1] @@ -25449,16 +21886,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 3 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 3 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := o2.Args[1] @@ -25474,16 +21902,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64ADDconst { - break - } - if x4_1.AuxInt != 4 { - break - } - if idx != x4_1.Args[0] { - break - } - if mem != x4.Args[2] { + if x4_1.Op != OpARM64ADDconst || x4_1.AuxInt != 4 || idx != x4_1.Args[0] || mem != x4.Args[2] { break } y5 := o1.Args[1] @@ -25499,16 +21918,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpARM64ADDconst { - break - } - if x5_1.AuxInt != 5 { - break - } - if idx != x5_1.Args[0] { - break - } - if mem != x5.Args[2] { + if x5_1.Op != OpARM64ADDconst || x5_1.AuxInt != 5 || idx != x5_1.Args[0] || mem != x5.Args[2] { break } y6 := o0.Args[1] @@ -25524,16 +21934,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpARM64ADDconst { - break - } - if x6_1.AuxInt != 6 { - break - } - if idx != x6_1.Args[0] { - break - } - if mem != x6.Args[2] { + if x6_1.Op != OpARM64ADDconst || x6_1.AuxInt != 6 || idx != x6_1.Args[0] || mem != x6.Args[2] { break } y7 := v.Args[1] @@ -25549,19 +21950,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x7_1 := x7.Args[1] - if x7_1.Op != OpARM64ADDconst { - break - } - if x7_1.AuxInt != 7 { - break - } - if idx != x7_1.Args[0] { - break - } - if mem != x7.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if x7_1.Op != OpARM64ADDconst || x7_1.AuxInt != 7 || idx != x7_1.Args[0] || mem != x7.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -25592,66 +21981,42 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { mem := x7.Args[2] ptr := x7.Args[0] x7_1 := x7.Args[1] - if x7_1.Op != OpARM64ADDconst { - break - } - if x7_1.AuxInt != 7 { + if x7_1.Op != OpARM64ADDconst || x7_1.AuxInt != 7 { break } idx := x7_1.Args[0] o0 := v.Args[1] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 8 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 8 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 16 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 16 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 24 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 24 { break } _ = o2.Args[1] o3 := o2.Args[0] - if o3.Op != OpARM64ORshiftLL { - break - } - if o3.AuxInt != 32 { + if o3.Op != OpARM64ORshiftLL || o3.AuxInt != 32 { break } _ = o3.Args[1] o4 := o3.Args[0] - if o4.Op != OpARM64ORshiftLL { - break - } - if o4.AuxInt != 40 { + if o4.Op != OpARM64ORshiftLL || o4.AuxInt != 40 { break } _ = o4.Args[1] o5 := o4.Args[0] - if o5.Op != OpARM64ORshiftLL { - break - } - if o5.AuxInt != 48 { + if o5.Op != OpARM64ORshiftLL || o5.AuxInt != 48 { break } _ = o5.Args[1] s0 := o5.Args[0] - if s0.Op != OpARM64SLLconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpARM64SLLconst || s0.AuxInt != 56 { break } y0 := s0.Args[0] @@ -25663,13 +22028,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } _ = x0.Args[2] - if ptr != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { + if ptr != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] { break } y1 := o5.Args[1] @@ -25685,16 +22044,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o4.Args[1] @@ -25710,16 +22060,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 2 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 2 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o3.Args[1] @@ -25735,16 +22076,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 3 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 3 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := o2.Args[1] @@ -25760,16 +22092,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64ADDconst { - break - } - if x4_1.AuxInt != 4 { - break - } - if idx != x4_1.Args[0] { - break - } - if mem != x4.Args[2] { + if x4_1.Op != OpARM64ADDconst || x4_1.AuxInt != 4 || idx != x4_1.Args[0] || mem != x4.Args[2] { break } y5 := o1.Args[1] @@ -25785,16 +22108,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpARM64ADDconst { - break - } - if x5_1.AuxInt != 5 { - break - } - if idx != x5_1.Args[0] { - break - } - if mem != x5.Args[2] { + if x5_1.Op != OpARM64ADDconst || x5_1.AuxInt != 5 || idx != x5_1.Args[0] || mem != x5.Args[2] { break } y6 := o0.Args[1] @@ -25810,19 +22124,7 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpARM64ADDconst { - break - } - if x6_1.AuxInt != 6 { - break - } - if idx != x6_1.Args[0] { - break - } - if mem != x6.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { + if x6_1.Op != OpARM64ADDconst || x6_1.AuxInt != 6 || idx != x6_1.Args[0] || mem != x6.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && y5.Uses == 1 && y6.Uses == 1 && y7.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(y5) && clobber(y6) && clobber(y7) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0)) { break } b = mergePoint(b, x0, x1, x2, x3, x4, x5, x6, x7) @@ -25840,7 +22142,6 @@ func rewriteValueARM64_OpARM64OR_40(v *Value) bool { } func rewriteValueARM64_OpARM64ORN_0(v *Value) bool { // match: (ORN x (MOVDconst [c])) - // cond: // result: (ORconst [^c] x) for { _ = v.Args[1] @@ -25856,7 +22157,6 @@ func rewriteValueARM64_OpARM64ORN_0(v *Value) bool { return true } // match: (ORN x x) - // cond: // result: (MOVDconst [-1]) for { x := v.Args[1] @@ -25934,7 +22234,6 @@ func rewriteValueARM64_OpARM64ORN_0(v *Value) bool { } func rewriteValueARM64_OpARM64ORNshiftLL_0(v *Value) bool { // match: (ORNshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (ORconst x [^int64(uint64(c)<>uint64(d))]) for { d := v.AuxInt @@ -26004,10 +22299,7 @@ func rewriteValueARM64_OpARM64ORNshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -26018,7 +22310,6 @@ func rewriteValueARM64_OpARM64ORNshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64ORNshiftRL_0(v *Value) bool { // match: (ORNshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (ORconst x [^int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -26046,10 +22337,7 @@ func rewriteValueARM64_OpARM64ORNshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -26060,7 +22348,6 @@ func rewriteValueARM64_OpARM64ORNshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64ORconst_0(v *Value) bool { // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -26073,7 +22360,6 @@ func rewriteValueARM64_OpARM64ORconst_0(v *Value) bool { return true } // match: (ORconst [-1] _) - // cond: // result: (MOVDconst [-1]) for { if v.AuxInt != -1 { @@ -26084,7 +22370,6 @@ func rewriteValueARM64_OpARM64ORconst_0(v *Value) bool { return true } // match: (ORconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c|d]) for { c := v.AuxInt @@ -26098,7 +22383,6 @@ func rewriteValueARM64_OpARM64ORconst_0(v *Value) bool { return true } // match: (ORconst [c] (ORconst [d] x)) - // cond: // result: (ORconst [c|d] x) for { c := v.AuxInt @@ -26138,7 +22422,6 @@ func rewriteValueARM64_OpARM64ORshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ORshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (ORconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -26157,7 +22440,6 @@ func rewriteValueARM64_OpARM64ORshiftLL_0(v *Value) bool { return true } // match: (ORshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (ORconst x [int64(uint64(c)< [8] (UBFX [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16W x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64UBFX { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64UBFX || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARM64REV16W) @@ -26269,16 +22525,12 @@ func rewriteValueARM64_OpARM64ORshiftLL_0(v *Value) bool { return true } // match: (ORshiftLL [c] (SRLconst x [64-c]) x2) - // cond: // result: (EXTRconst [64-c] x2 x) for { c := v.AuxInt x2 := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRLconst { - break - } - if v_0.AuxInt != 64-c { + if v_0.Op != OpARM64SRLconst || v_0.AuxInt != 64-c { break } x := v_0.Args[0] @@ -26323,10 +22575,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_0(v *Value) bool { bfc := v_0.AuxInt x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64SRLconst { - break - } - if v_1.AuxInt != sc { + if v_1.Op != OpARM64SRLconst || v_1.AuxInt != sc { break } y := v_1.Args[0] @@ -26373,13 +22622,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_0(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -26423,10 +22666,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 { break } s := x1.Aux @@ -26437,10 +22677,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } idx1 := p1.Args[1] ptr1 := p1.Args[0] - if mem != x1.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if mem != x1.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -26485,19 +22722,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -26519,10 +22744,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -26547,10 +22769,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := v.Args[1] @@ -26566,13 +22785,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -26597,10 +22810,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -26616,10 +22826,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 2 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 2 { break } s := x1.Aux @@ -26638,21 +22845,12 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 3 || x2.Aux != s { break } _ = x2.Args[1] p := x2.Args[0] - if mem != x2.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { + if mem != x2.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -26674,10 +22872,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -26701,16 +22896,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 2 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 2 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := v.Args[1] @@ -26726,19 +22912,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 3 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 3 || idx != x2_1.Args[0] || mem != x2.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -26760,10 +22934,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -26779,19 +22950,13 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 2 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 2 { break } s := x1.Aux _ = x1.Args[1] p1 := x1.Args[0] - if p1.Op != OpARM64ADDshiftLL { - break - } - if p1.AuxInt != 1 { + if p1.Op != OpARM64ADDshiftLL || p1.AuxInt != 1 { break } idx1 := p1.Args[1] @@ -26804,21 +22969,12 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 3 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 3 || x2.Aux != s { break } _ = x2.Args[1] p := x2.Args[0] - if mem != x2.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { + if mem != x2.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -26843,26 +22999,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -26887,10 +23034,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o1.Args[1] @@ -26906,10 +23050,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o0.Args[1] @@ -26925,10 +23066,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := v.Args[1] @@ -26944,13 +23082,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -26975,26 +23107,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -27010,10 +23133,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 4 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 4 { break } s := x1.Aux @@ -27032,13 +23152,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 5 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 5 || x2.Aux != s { break } _ = x2.Args[1] @@ -27051,20 +23165,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 6 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 6 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := v.Args[1] @@ -27072,23 +23177,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 7 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 7 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -27110,26 +23203,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -27145,19 +23229,13 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 4 { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 4 { break } s := x1.Aux _ = x1.Args[1] p1 := x1.Args[0] - if p1.Op != OpARM64ADDshiftLL { - break - } - if p1.AuxInt != 2 { + if p1.Op != OpARM64ADDshiftLL || p1.AuxInt != 2 { break } idx1 := p1.Args[1] @@ -27170,13 +23248,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 5 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 5 || x2.Aux != s { break } _ = x2.Args[1] @@ -27189,20 +23261,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 6 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 6 || x3.Aux != s { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := v.Args[1] @@ -27210,23 +23273,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x4 := y4.Args[0] - if x4.Op != OpARM64MOVBUload { - break - } - if x4.AuxInt != 7 { - break - } - if x4.Aux != s { + if x4.Op != OpARM64MOVBUload || x4.AuxInt != 7 || x4.Aux != s { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -27251,26 +23302,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -27294,16 +23336,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 4 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 4 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o1.Args[1] @@ -27319,16 +23352,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 5 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 5 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o0.Args[1] @@ -27344,16 +23368,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 6 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 6 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := v.Args[1] @@ -27369,19 +23384,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_10(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpARM64ADDconst { - break - } - if x4_1.AuxInt != 7 { - break - } - if idx != x4_1.Args[0] { - break - } - if mem != x4.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if x4_1.Op != OpARM64ADDconst || x4_1.AuxInt != 7 || idx != x4_1.Args[0] || mem != x4.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -27431,13 +23434,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -27466,10 +23463,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVBUload { - break - } - if x0.AuxInt != 1 { + if x0.Op != OpARM64MOVBUload || x0.AuxInt != 1 { break } s := x0.Aux @@ -27491,10 +23485,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { _ = x1.Args[2] ptr0 := x1.Args[0] idx0 := x1.Args[1] - if mem != x1.Args[2] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if mem != x1.Args[2] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -27528,10 +23519,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { mem := x0.Args[2] ptr := x0.Args[0] x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 1 { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 1 { break } idx := x0_1.Args[0] @@ -27544,16 +23532,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x1.Args[2] - if ptr != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { + if ptr != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(y0) && clobber(y1)) { break } b = mergePoint(b, x0, x1) @@ -27577,10 +23556,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -27609,10 +23585,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := v.Args[1] @@ -27628,13 +23601,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -27661,10 +23628,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -27673,10 +23637,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVHUload { - break - } - if x0.AuxInt != 2 { + if x0.Op != OpARM64MOVHUload || x0.AuxInt != 2 { break } s := x0.Aux @@ -27687,13 +23648,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 1 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 1 || x1.Aux != s { break } _ = x1.Args[1] @@ -27717,10 +23672,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { _ = x2.Args[2] ptr0 := x2.Args[0] idx0 := x2.Args[1] - if mem != x2.Args[2] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { + if mem != x2.Args[2] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -27744,10 +23696,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 16 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 16 { break } _ = o0.Args[1] @@ -27762,10 +23711,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { mem := x0.Args[2] ptr := x0.Args[0] x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 2 { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 2 { break } idx := x0_1.Args[0] @@ -27782,16 +23728,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 1 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 1 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := v.Args[1] @@ -27803,16 +23740,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x2.Args[2] - if ptr != x2.Args[0] { - break - } - if idx != x2.Args[1] { - break - } - if mem != x2.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { + if ptr != x2.Args[0] || idx != x2.Args[1] || mem != x2.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && o0.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -27836,26 +23764,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -27884,10 +23803,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o1.Args[1] @@ -27903,10 +23819,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o0.Args[1] @@ -27922,10 +23835,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } y4 := v.Args[1] @@ -27941,13 +23851,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -27974,26 +23878,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -28002,10 +23897,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x0 := y0.Args[0] - if x0.Op != OpARM64MOVWUload { - break - } - if x0.AuxInt != 4 { + if x0.Op != OpARM64MOVWUload || x0.AuxInt != 4 { break } s := x0.Aux @@ -28016,20 +23908,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x1 := y1.Args[0] - if x1.Op != OpARM64MOVBUload { - break - } - if x1.AuxInt != 3 { - break - } - if x1.Aux != s { + if x1.Op != OpARM64MOVBUload || x1.AuxInt != 3 || x1.Aux != s { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } y2 := o1.Args[1] @@ -28037,20 +23920,11 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x2 := y2.Args[0] - if x2.Op != OpARM64MOVBUload { - break - } - if x2.AuxInt != 2 { - break - } - if x2.Aux != s { + if x2.Op != OpARM64MOVBUload || x2.AuxInt != 2 || x2.Aux != s { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } y3 := o0.Args[1] @@ -28058,13 +23932,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x3 := y3.Args[0] - if x3.Op != OpARM64MOVBUload { - break - } - if x3.AuxInt != 1 { - break - } - if x3.Aux != s { + if x3.Op != OpARM64MOVBUload || x3.AuxInt != 1 || x3.Aux != s { break } _ = x3.Args[1] @@ -28088,10 +23956,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { _ = x4.Args[2] ptr0 := x4.Args[0] idx0 := x4.Args[1] - if mem != x4.Args[2] { - break - } - if !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if mem != x4.Args[2] || !(s == nil && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && (isSamePtr(ptr0, ptr1) && isSamePtr(idx0, idx1) || isSamePtr(ptr0, idx1) && isSamePtr(idx0, ptr1)) && isSamePtr(p1, p) && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -28115,26 +23980,17 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { } _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpARM64ORshiftLL { - break - } - if o0.AuxInt != 48 { + if o0.Op != OpARM64ORshiftLL || o0.AuxInt != 48 { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpARM64ORshiftLL { - break - } - if o1.AuxInt != 40 { + if o1.Op != OpARM64ORshiftLL || o1.AuxInt != 40 { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpARM64ORshiftLL { - break - } - if o2.AuxInt != 32 { + if o2.Op != OpARM64ORshiftLL || o2.AuxInt != 32 { break } _ = o2.Args[1] @@ -28149,10 +24005,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { mem := x0.Args[2] ptr := x0.Args[0] x0_1 := x0.Args[1] - if x0_1.Op != OpARM64ADDconst { - break - } - if x0_1.AuxInt != 4 { + if x0_1.Op != OpARM64ADDconst || x0_1.AuxInt != 4 { break } idx := x0_1.Args[0] @@ -28169,16 +24022,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpARM64ADDconst { - break - } - if x1_1.AuxInt != 3 { - break - } - if idx != x1_1.Args[0] { - break - } - if mem != x1.Args[2] { + if x1_1.Op != OpARM64ADDconst || x1_1.AuxInt != 3 || idx != x1_1.Args[0] || mem != x1.Args[2] { break } y2 := o1.Args[1] @@ -28194,16 +24038,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpARM64ADDconst { - break - } - if x2_1.AuxInt != 2 { - break - } - if idx != x2_1.Args[0] { - break - } - if mem != x2.Args[2] { + if x2_1.Op != OpARM64ADDconst || x2_1.AuxInt != 2 || idx != x2_1.Args[0] || mem != x2.Args[2] { break } y3 := o0.Args[1] @@ -28219,16 +24054,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpARM64ADDconst { - break - } - if x3_1.AuxInt != 1 { - break - } - if idx != x3_1.Args[0] { - break - } - if mem != x3.Args[2] { + if x3_1.Op != OpARM64ADDconst || x3_1.AuxInt != 1 || idx != x3_1.Args[0] || mem != x3.Args[2] { break } y4 := v.Args[1] @@ -28240,16 +24066,7 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { break } _ = x4.Args[2] - if ptr != x4.Args[0] { - break - } - if idx != x4.Args[1] { - break - } - if mem != x4.Args[2] { - break - } - if !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { + if ptr != x4.Args[0] || idx != x4.Args[1] || mem != x4.Args[2] || !(x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && y0.Uses == 1 && y1.Uses == 1 && y2.Uses == 1 && y3.Uses == 1 && y4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(y0) && clobber(y1) && clobber(y2) && clobber(y3) && clobber(y4) && clobber(o0) && clobber(o1) && clobber(o2)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -28268,7 +24085,6 @@ func rewriteValueARM64_OpARM64ORshiftLL_20(v *Value) bool { func rewriteValueARM64_OpARM64ORshiftRA_0(v *Value) bool { b := v.Block // match: (ORshiftRA (MOVDconst [c]) x [d]) - // cond: // result: (ORconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -28287,7 +24103,6 @@ func rewriteValueARM64_OpARM64ORshiftRA_0(v *Value) bool { return true } // match: (ORshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (ORconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -28315,10 +24130,7 @@ func rewriteValueARM64_OpARM64ORshiftRA_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -28331,7 +24143,6 @@ func rewriteValueARM64_OpARM64ORshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { b := v.Block // match: (ORshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (ORconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -28350,7 +24161,6 @@ func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { return true } // match: (ORshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (ORconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -28378,10 +24188,7 @@ func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { break } c := y.AuxInt - if x != y.Args[0] { - break - } - if !(c == d) { + if x != y.Args[0] || !(c == d) { break } v.reset(OpCopy) @@ -28390,19 +24197,12 @@ func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { return true } // match: (ORshiftRL [c] (SLLconst x [64-c]) x) - // cond: // result: (RORconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 64-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 64-c || x != v_0.Args[0] { break } v.reset(OpARM64RORconst) @@ -28418,21 +24218,12 @@ func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { c := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 32-c { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 32-c { break } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVWUreg { - break - } - if x != v_1.Args[0] { - break - } - if !(c < 32 && t.Size() == 4) { + if v_1.Op != OpARM64MOVWUreg || x != v_1.Args[0] || !(c < 32 && t.Size() == 4) { break } v.reset(OpARM64RORWconst) @@ -28471,7 +24262,6 @@ func rewriteValueARM64_OpARM64ORshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64RORWconst_0(v *Value) bool { // match: (RORWconst [c] (RORWconst [d] x)) - // cond: // result: (RORWconst [(c+d)&31] x) for { c := v.AuxInt @@ -28490,7 +24280,6 @@ func rewriteValueARM64_OpARM64RORWconst_0(v *Value) bool { } func rewriteValueARM64_OpARM64RORconst_0(v *Value) bool { // match: (RORconst [c] (RORconst [d] x)) - // cond: // result: (RORconst [(c+d)&63] x) for { c := v.AuxInt @@ -28511,17 +24300,13 @@ func rewriteValueARM64_OpARM64SBCSflags_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SBCSflags x y (Select1 (NEGSflags (NEG (NGCzerocarry bo))))) - // cond: // result: (SBCSflags x y bo) for { _ = v.Args[2] x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpSelect1 { - break - } - if v_2.Type != types.TypeFlags { + if v_2.Op != OpSelect1 || v_2.Type != types.TypeFlags { break } v_2_0 := v_2.Args[0] @@ -28529,17 +24314,11 @@ func rewriteValueARM64_OpARM64SBCSflags_0(v *Value) bool { break } v_2_0_0 := v_2_0.Args[0] - if v_2_0_0.Op != OpARM64NEG { - break - } - if v_2_0_0.Type != typ.UInt64 { + if v_2_0_0.Op != OpARM64NEG || v_2_0_0.Type != typ.UInt64 { break } v_2_0_0_0 := v_2_0_0.Args[0] - if v_2_0_0_0.Op != OpARM64NGCzerocarry { - break - } - if v_2_0_0_0.Type != typ.UInt64 { + if v_2_0_0_0.Op != OpARM64NGCzerocarry || v_2_0_0_0.Type != typ.UInt64 { break } bo := v_2_0_0_0.Args[0] @@ -28550,17 +24329,13 @@ func rewriteValueARM64_OpARM64SBCSflags_0(v *Value) bool { return true } // match: (SBCSflags x y (Select1 (NEGSflags (MOVDconst [0])))) - // cond: // result: (SUBSflags x y) for { _ = v.Args[2] x := v.Args[0] y := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpSelect1 { - break - } - if v_2.Type != types.TypeFlags { + if v_2.Op != OpSelect1 || v_2.Type != types.TypeFlags { break } v_2_0 := v_2.Args[0] @@ -28568,10 +24343,7 @@ func rewriteValueARM64_OpARM64SBCSflags_0(v *Value) bool { break } v_2_0_0 := v_2_0.Args[0] - if v_2_0_0.Op != OpARM64MOVDconst { - break - } - if v_2_0_0.AuxInt != 0 { + if v_2_0_0.Op != OpARM64MOVDconst || v_2_0_0.AuxInt != 0 { break } v.reset(OpARM64SUBSflags) @@ -28583,7 +24355,6 @@ func rewriteValueARM64_OpARM64SBCSflags_0(v *Value) bool { } func rewriteValueARM64_OpARM64SLL_0(v *Value) bool { // match: (SLL x (MOVDconst [c])) - // cond: // result: (SLLconst x [c&63]) for { _ = v.Args[1] @@ -28602,7 +24373,6 @@ func rewriteValueARM64_OpARM64SLL_0(v *Value) bool { } func rewriteValueARM64_OpARM64SLLconst_0(v *Value) bool { // match: (SLLconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [d<>uint64(c)]) for { c := v.AuxInt @@ -28898,7 +24663,6 @@ func rewriteValueARM64_OpARM64SRAconst_0(v *Value) bool { } func rewriteValueARM64_OpARM64SRL_0(v *Value) bool { // match: (SRL x (MOVDconst [c])) - // cond: // result: (SRLconst x [c&63]) for { _ = v.Args[1] @@ -28917,7 +24681,6 @@ func rewriteValueARM64_OpARM64SRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64SRLconst_0(v *Value) bool { // match: (SRLconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(uint64(d)>>uint64(c))]) for { c := v.AuxInt @@ -28936,10 +24699,7 @@ func rewriteValueARM64_OpARM64SRLconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != c { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != c { break } x := v_0.Args[0] @@ -29202,7 +24962,6 @@ func rewriteValueARM64_OpARM64STP_0(v *Value) bool { return true } // match: (STP [off] {sym} ptr (MOVDconst [0]) (MOVDconst [0]) mem) - // cond: // result: (MOVQstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -29210,17 +24969,11 @@ func rewriteValueARM64_OpARM64STP_0(v *Value) bool { mem := v.Args[3] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 0 { break } v_2 := v.Args[2] - if v_2.Op != OpARM64MOVDconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpARM64MOVDconst || v_2.AuxInt != 0 { break } v.reset(OpARM64MOVQstorezero) @@ -29235,7 +24988,6 @@ func rewriteValueARM64_OpARM64STP_0(v *Value) bool { func rewriteValueARM64_OpARM64SUB_0(v *Value) bool { b := v.Block // match: (SUB x (MOVDconst [c])) - // cond: // result: (SUBconst [c] x) for { _ = v.Args[1] @@ -29335,7 +25087,6 @@ func rewriteValueARM64_OpARM64SUB_0(v *Value) bool { return true } // match: (SUB x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -29347,7 +25098,6 @@ func rewriteValueARM64_OpARM64SUB_0(v *Value) bool { return true } // match: (SUB x (SUB y z)) - // cond: // result: (SUB (ADD x z) y) for { _ = v.Args[1] @@ -29367,7 +25117,6 @@ func rewriteValueARM64_OpARM64SUB_0(v *Value) bool { return true } // match: (SUB (SUB x y) z) - // cond: // result: (SUB x (ADD y z)) for { z := v.Args[1] @@ -29455,7 +25204,6 @@ func rewriteValueARM64_OpARM64SUB_10(v *Value) bool { } func rewriteValueARM64_OpARM64SUBconst_0(v *Value) bool { // match: (SUBconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -29468,7 +25216,6 @@ func rewriteValueARM64_OpARM64SUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [d-c]) for { c := v.AuxInt @@ -29482,7 +25229,6 @@ func rewriteValueARM64_OpARM64SUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [-c-d] x) for { c := v.AuxInt @@ -29498,7 +25244,6 @@ func rewriteValueARM64_OpARM64SUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [-c+d] x) for { c := v.AuxInt @@ -29517,7 +25262,6 @@ func rewriteValueARM64_OpARM64SUBconst_0(v *Value) bool { } func rewriteValueARM64_OpARM64SUBshiftLL_0(v *Value) bool { // match: (SUBshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (SUBconst x [int64(uint64(c)<>uint64(d)]) for { d := v.AuxInt @@ -29587,10 +25327,7 @@ func rewriteValueARM64_OpARM64SUBshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -29601,7 +25338,6 @@ func rewriteValueARM64_OpARM64SUBshiftRA_0(v *Value) bool { } func rewriteValueARM64_OpARM64SUBshiftRL_0(v *Value) bool { // match: (SUBshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (SUBconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -29629,10 +25365,7 @@ func rewriteValueARM64_OpARM64SUBshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -29643,7 +25376,6 @@ func rewriteValueARM64_OpARM64SUBshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpARM64TST_0(v *Value) bool { // match: (TST x (MOVDconst [c])) - // cond: // result: (TSTconst [c] x) for { _ = v.Args[1] @@ -29659,7 +25391,6 @@ func rewriteValueARM64_OpARM64TST_0(v *Value) bool { return true } // match: (TST (MOVDconst [c]) x) - // cond: // result: (TSTconst [c] x) for { x := v.Args[1] @@ -29800,7 +25531,6 @@ func rewriteValueARM64_OpARM64TST_0(v *Value) bool { } func rewriteValueARM64_OpARM64TSTW_0(v *Value) bool { // match: (TSTW x (MOVDconst [c])) - // cond: // result: (TSTWconst [c] x) for { _ = v.Args[1] @@ -29816,7 +25546,6 @@ func rewriteValueARM64_OpARM64TSTW_0(v *Value) bool { return true } // match: (TSTW (MOVDconst [c]) x) - // cond: // result: (TSTWconst [c] x) for { x := v.Args[1] @@ -29937,7 +25666,6 @@ func rewriteValueARM64_OpARM64TSTconst_0(v *Value) bool { func rewriteValueARM64_OpARM64TSTshiftLL_0(v *Value) bool { b := v.Block // match: (TSTshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (TSTconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -29956,7 +25684,6 @@ func rewriteValueARM64_OpARM64TSTshiftLL_0(v *Value) bool { return true } // match: (TSTshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (TSTconst x [int64(uint64(c)< x [d])) for { d := v.AuxInt @@ -29996,7 +25722,6 @@ func rewriteValueARM64_OpARM64TSTshiftRA_0(v *Value) bool { return true } // match: (TSTshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (TSTconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -30017,7 +25742,6 @@ func rewriteValueARM64_OpARM64TSTshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64TSTshiftRL_0(v *Value) bool { b := v.Block // match: (TSTshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (TSTconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -30036,7 +25760,6 @@ func rewriteValueARM64_OpARM64TSTshiftRL_0(v *Value) bool { return true } // match: (TSTshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (TSTconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -30157,16 +25880,12 @@ func rewriteValueARM64_OpARM64UBFX_0(v *Value) bool { } func rewriteValueARM64_OpARM64UDIV_0(v *Value) bool { // match: (UDIV x (MOVDconst [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -30194,7 +25913,6 @@ func rewriteValueARM64_OpARM64UDIV_0(v *Value) bool { return true } // match: (UDIV (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(uint64(c)/uint64(d))]) for { _ = v.Args[1] @@ -30254,7 +25972,6 @@ func rewriteValueARM64_OpARM64UDIVW_0(v *Value) bool { return true } // match: (UDIVW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(uint32(c)/uint32(d))]) for { _ = v.Args[1] @@ -30278,7 +25995,6 @@ func rewriteValueARM64_OpARM64UMOD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (UMOD x y) - // cond: // result: (MSUB x y (UDIV x y)) for { if v.Type != typ.UInt64 { @@ -30297,15 +26013,11 @@ func rewriteValueARM64_OpARM64UMOD_0(v *Value) bool { return true } // match: (UMOD _ (MOVDconst [1])) - // cond: // result: (MOVDconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpARM64MOVDconst || v_1.AuxInt != 1 { break } v.reset(OpARM64MOVDconst) @@ -30332,7 +26044,6 @@ func rewriteValueARM64_OpARM64UMOD_0(v *Value) bool { return true } // match: (UMOD (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(uint64(c)%uint64(d))]) for { _ = v.Args[1] @@ -30356,7 +26067,6 @@ func rewriteValueARM64_OpARM64UMODW_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (UMODW x y) - // cond: // result: (MSUBW x y (UDIVW x y)) for { if v.Type != typ.UInt32 { @@ -30411,7 +26121,6 @@ func rewriteValueARM64_OpARM64UMODW_0(v *Value) bool { return true } // match: (UMODW (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(uint32(c)%uint32(d))]) for { _ = v.Args[1] @@ -30433,7 +26142,6 @@ func rewriteValueARM64_OpARM64UMODW_0(v *Value) bool { } func rewriteValueARM64_OpARM64XOR_0(v *Value) bool { // match: (XOR x (MOVDconst [c])) - // cond: // result: (XORconst [c] x) for { _ = v.Args[1] @@ -30449,7 +26157,6 @@ func rewriteValueARM64_OpARM64XOR_0(v *Value) bool { return true } // match: (XOR (MOVDconst [c]) x) - // cond: // result: (XORconst [c] x) for { x := v.Args[1] @@ -30464,7 +26171,6 @@ func rewriteValueARM64_OpARM64XOR_0(v *Value) bool { return true } // match: (XOR x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -30476,7 +26182,6 @@ func rewriteValueARM64_OpARM64XOR_0(v *Value) bool { return true } // match: (XOR x (MVN y)) - // cond: // result: (EON x y) for { _ = v.Args[1] @@ -30492,7 +26197,6 @@ func rewriteValueARM64_OpARM64XOR_0(v *Value) bool { return true } // match: (XOR (MVN y) x) - // cond: // result: (EON x y) for { x := v.Args[1] @@ -30655,19 +26359,13 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt64 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt64 { break } _ = v_1_0.Args[1] @@ -30675,69 +26373,33 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -30753,19 +26415,13 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt64 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt64 { break } _ = v_0_0.Args[1] @@ -30777,56 +26433,29 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -30838,19 +26467,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -30866,10 +26483,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt64 { break } _ = v_0.Args[1] @@ -30884,10 +26498,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt64 { break } cc := v_1.Aux @@ -30901,69 +26512,33 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 64 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 64 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 63 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 63 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 64 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 64 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 63 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 63 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -30977,10 +26552,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt64 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt64 { break } cc := v_0.Aux @@ -30998,63 +26570,33 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 64 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 64 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 63 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 64 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 64 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 63 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 63 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt64 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt64 { break } _ = v_1.Args[1] @@ -31062,19 +26604,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64ROR) @@ -31103,93 +26633,48 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64SRL { - break - } - if v_1_0.Type != typ.UInt32 { + if v_1_0.Op != OpARM64SRL || v_1_0.Type != typ.UInt32 { break } _ = v_1_0.Args[1] v_1_0_0 := v_1_0.Args[0] - if v_1_0_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0_0.Args[0] { + if v_1_0_0.Op != OpARM64MOVWUreg || x != v_1_0_0.Args[0] { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -31205,19 +26690,13 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpARM64SRL { - break - } - if v_0_0.Type != typ.UInt32 { + if v_0_0.Op != OpARM64SRL || v_0_0.Type != typ.UInt32 { break } _ = v_0_0.Args[1] @@ -31233,56 +26712,29 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] @@ -31294,19 +26746,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -31322,10 +26762,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRL { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64SRL || v_0.Type != typ.UInt32 { break } _ = v_0.Args[1] @@ -31344,10 +26781,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { } y := v_0_1.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64CSEL0 { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64CSEL0 || v_1.Type != typ.UInt32 { break } cc := v_1.Aux @@ -31361,69 +26795,33 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpARM64SUB { - break - } - if v_1_0_1.Type != t { + if v_1_0_1.Op != OpARM64SUB || v_1_0_1.Type != t { break } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_1_0_1_0.AuxInt != 32 { + if v_1_0_1_0.Op != OpARM64MOVDconst || v_1_0_1_0.AuxInt != 32 { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpARM64ANDconst { - break - } - if v_1_0_1_1.Type != t { - break - } - if v_1_0_1_1.AuxInt != 31 { - break - } - if y != v_1_0_1_1.Args[0] { + if v_1_0_1_1.Op != OpARM64ANDconst || v_1_0_1_1.Type != t || v_1_0_1_1.AuxInt != 31 || y != v_1_0_1_1.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64CMPconst { - break - } - if v_1_1.AuxInt != 64 { + if v_1_1.Op != OpARM64CMPconst || v_1_1.AuxInt != 64 { break } v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpARM64SUB { - break - } - if v_1_1_0.Type != t { + if v_1_1_0.Op != OpARM64SUB || v_1_1_0.Type != t { break } _ = v_1_1_0.Args[1] v_1_1_0_0 := v_1_1_0.Args[0] - if v_1_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_1_1_0_0.AuxInt != 32 { + if v_1_1_0_0.Op != OpARM64MOVDconst || v_1_1_0_0.AuxInt != 32 { break } v_1_1_0_1 := v_1_1_0.Args[1] - if v_1_1_0_1.Op != OpARM64ANDconst { - break - } - if v_1_1_0_1.Type != t { - break - } - if v_1_1_0_1.AuxInt != 31 { - break - } - if y != v_1_1_0_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1_0_1.Op != OpARM64ANDconst || v_1_1_0_1.Type != t || v_1_1_0_1.AuxInt != 31 || y != v_1_1_0_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -31437,10 +26835,7 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64CSEL0 { - break - } - if v_0.Type != typ.UInt32 { + if v_0.Op != OpARM64CSEL0 || v_0.Type != typ.UInt32 { break } cc := v_0.Aux @@ -31458,87 +26853,42 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { t := v_0_0_1.Type _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpARM64MOVDconst { - break - } - if v_0_0_1_0.AuxInt != 32 { + if v_0_0_1_0.Op != OpARM64MOVDconst || v_0_0_1_0.AuxInt != 32 { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpARM64ANDconst { - break - } - if v_0_0_1_1.Type != t { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpARM64ANDconst || v_0_0_1_1.Type != t || v_0_0_1_1.AuxInt != 31 { break } y := v_0_0_1_1.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpARM64CMPconst { - break - } - if v_0_1.AuxInt != 64 { + if v_0_1.Op != OpARM64CMPconst || v_0_1.AuxInt != 64 { break } v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpARM64SUB { - break - } - if v_0_1_0.Type != t { + if v_0_1_0.Op != OpARM64SUB || v_0_1_0.Type != t { break } _ = v_0_1_0.Args[1] v_0_1_0_0 := v_0_1_0.Args[0] - if v_0_1_0_0.Op != OpARM64MOVDconst { - break - } - if v_0_1_0_0.AuxInt != 32 { + if v_0_1_0_0.Op != OpARM64MOVDconst || v_0_1_0_0.AuxInt != 32 { break } v_0_1_0_1 := v_0_1_0.Args[1] - if v_0_1_0_1.Op != OpARM64ANDconst { - break - } - if v_0_1_0_1.Type != t { - break - } - if v_0_1_0_1.AuxInt != 31 { - break - } - if y != v_0_1_0_1.Args[0] { + if v_0_1_0_1.Op != OpARM64ANDconst || v_0_1_0_1.Type != t || v_0_1_0_1.AuxInt != 31 || y != v_0_1_0_1.Args[0] { break } v_1 := v.Args[1] - if v_1.Op != OpARM64SRL { - break - } - if v_1.Type != typ.UInt32 { + if v_1.Op != OpARM64SRL || v_1.Type != typ.UInt32 { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpARM64MOVWUreg { - break - } - if x != v_1_0.Args[0] { + if v_1_0.Op != OpARM64MOVWUreg || x != v_1_0.Args[0] { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpARM64ANDconst { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { - break - } - if !(cc.(Op) == OpARM64LessThanU) { + if v_1_1.Op != OpARM64ANDconst || v_1_1.Type != t || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] || !(cc.(Op) == OpARM64LessThanU) { break } v.reset(OpARM64RORW) @@ -31550,7 +26900,6 @@ func rewriteValueARM64_OpARM64XOR_10(v *Value) bool { } func rewriteValueARM64_OpARM64XORconst_0(v *Value) bool { // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -31563,7 +26912,6 @@ func rewriteValueARM64_OpARM64XORconst_0(v *Value) bool { return true } // match: (XORconst [-1] x) - // cond: // result: (MVN x) for { if v.AuxInt != -1 { @@ -31575,7 +26923,6 @@ func rewriteValueARM64_OpARM64XORconst_0(v *Value) bool { return true } // match: (XORconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c^d]) for { c := v.AuxInt @@ -31589,7 +26936,6 @@ func rewriteValueARM64_OpARM64XORconst_0(v *Value) bool { return true } // match: (XORconst [c] (XORconst [d] x)) - // cond: // result: (XORconst [c^d] x) for { c := v.AuxInt @@ -31610,7 +26956,6 @@ func rewriteValueARM64_OpARM64XORshiftLL_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (XORshiftLL (MOVDconst [c]) x [d]) - // cond: // result: (XORconst [c] (SLLconst x [d])) for { d := v.AuxInt @@ -31629,7 +26974,6 @@ func rewriteValueARM64_OpARM64XORshiftLL_0(v *Value) bool { return true } // match: (XORshiftLL x (MOVDconst [c]) [d]) - // cond: // result: (XORconst x [int64(uint64(c)< [8] (UBFX [armBFAuxInt(8, 8)] x) x) - // cond: // result: (REV16W x) for { - if v.Type != typ.UInt16 { - break - } - if v.AuxInt != 8 { + if v.Type != typ.UInt16 || v.AuxInt != 8 { break } x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64UBFX { - break - } - if v_0.Type != typ.UInt16 { - break - } - if v_0.AuxInt != armBFAuxInt(8, 8) { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64UBFX || v_0.Type != typ.UInt16 || v_0.AuxInt != armBFAuxInt(8, 8) || x != v_0.Args[0] { break } v.reset(OpARM64REV16W) @@ -31740,16 +27058,12 @@ func rewriteValueARM64_OpARM64XORshiftLL_0(v *Value) bool { return true } // match: (XORshiftLL [c] (SRLconst x [64-c]) x2) - // cond: // result: (EXTRconst [64-c] x2 x) for { c := v.AuxInt x2 := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SRLconst { - break - } - if v_0.AuxInt != 64-c { + if v_0.Op != OpARM64SRLconst || v_0.AuxInt != 64-c { break } x := v_0.Args[0] @@ -31786,7 +27100,6 @@ func rewriteValueARM64_OpARM64XORshiftLL_0(v *Value) bool { func rewriteValueARM64_OpARM64XORshiftRA_0(v *Value) bool { b := v.Block // match: (XORshiftRA (MOVDconst [c]) x [d]) - // cond: // result: (XORconst [c] (SRAconst x [d])) for { d := v.AuxInt @@ -31805,7 +27118,6 @@ func rewriteValueARM64_OpARM64XORshiftRA_0(v *Value) bool { return true } // match: (XORshiftRA x (MOVDconst [c]) [d]) - // cond: // result: (XORconst x [c>>uint64(d)]) for { d := v.AuxInt @@ -31833,10 +27145,7 @@ func rewriteValueARM64_OpARM64XORshiftRA_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -31848,7 +27157,6 @@ func rewriteValueARM64_OpARM64XORshiftRA_0(v *Value) bool { func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { b := v.Block // match: (XORshiftRL (MOVDconst [c]) x [d]) - // cond: // result: (XORconst [c] (SRLconst x [d])) for { d := v.AuxInt @@ -31867,7 +27175,6 @@ func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { return true } // match: (XORshiftRL x (MOVDconst [c]) [d]) - // cond: // result: (XORconst x [int64(uint64(c)>>uint64(d))]) for { d := v.AuxInt @@ -31895,10 +27202,7 @@ func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(c == d) { + if x != v_1.Args[0] || !(c == d) { break } v.reset(OpARM64MOVDconst) @@ -31906,19 +27210,12 @@ func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { return true } // match: (XORshiftRL [c] (SLLconst x [64-c]) x) - // cond: // result: (RORconst [ c] x) for { c := v.AuxInt x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 64-c { - break - } - if x != v_0.Args[0] { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 64-c || x != v_0.Args[0] { break } v.reset(OpARM64RORconst) @@ -31934,21 +27231,12 @@ func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { c := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpARM64SLLconst { - break - } - if v_0.AuxInt != 32-c { + if v_0.Op != OpARM64SLLconst || v_0.AuxInt != 32-c { break } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpARM64MOVWUreg { - break - } - if x != v_1.Args[0] { - break - } - if !(c < 32 && t.Size() == 4) { + if v_1.Op != OpARM64MOVWUreg || x != v_1.Args[0] || !(c < 32 && t.Size() == 4) { break } v.reset(OpARM64RORWconst) @@ -31960,7 +27248,6 @@ func rewriteValueARM64_OpARM64XORshiftRL_0(v *Value) bool { } func rewriteValueARM64_OpAbs_0(v *Value) bool { // match: (Abs x) - // cond: // result: (FABSD x) for { x := v.Args[0] @@ -31971,7 +27258,6 @@ func rewriteValueARM64_OpAbs_0(v *Value) bool { } func rewriteValueARM64_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -31984,7 +27270,6 @@ func rewriteValueARM64_OpAdd16_0(v *Value) bool { } func rewriteValueARM64_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -31997,7 +27282,6 @@ func rewriteValueARM64_OpAdd32_0(v *Value) bool { } func rewriteValueARM64_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (FADDS x y) for { y := v.Args[1] @@ -32010,7 +27294,6 @@ func rewriteValueARM64_OpAdd32F_0(v *Value) bool { } func rewriteValueARM64_OpAdd64_0(v *Value) bool { // match: (Add64 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -32023,7 +27306,6 @@ func rewriteValueARM64_OpAdd64_0(v *Value) bool { } func rewriteValueARM64_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (FADDD x y) for { y := v.Args[1] @@ -32036,7 +27318,6 @@ func rewriteValueARM64_OpAdd64F_0(v *Value) bool { } func rewriteValueARM64_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -32049,7 +27330,6 @@ func rewriteValueARM64_OpAdd8_0(v *Value) bool { } func rewriteValueARM64_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -32062,7 +27342,6 @@ func rewriteValueARM64_OpAddPtr_0(v *Value) bool { } func rewriteValueARM64_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -32075,7 +27354,6 @@ func rewriteValueARM64_OpAddr_0(v *Value) bool { } func rewriteValueARM64_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -32088,7 +27366,6 @@ func rewriteValueARM64_OpAnd16_0(v *Value) bool { } func rewriteValueARM64_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -32101,7 +27378,6 @@ func rewriteValueARM64_OpAnd32_0(v *Value) bool { } func rewriteValueARM64_OpAnd64_0(v *Value) bool { // match: (And64 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -32114,7 +27390,6 @@ func rewriteValueARM64_OpAnd64_0(v *Value) bool { } func rewriteValueARM64_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -32127,7 +27402,6 @@ func rewriteValueARM64_OpAnd8_0(v *Value) bool { } func rewriteValueARM64_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -32140,7 +27414,6 @@ func rewriteValueARM64_OpAndB_0(v *Value) bool { } func rewriteValueARM64_OpAtomicAdd32_0(v *Value) bool { // match: (AtomicAdd32 ptr val mem) - // cond: // result: (LoweredAtomicAdd32 ptr val mem) for { mem := v.Args[2] @@ -32155,7 +27428,6 @@ func rewriteValueARM64_OpAtomicAdd32_0(v *Value) bool { } func rewriteValueARM64_OpAtomicAdd32Variant_0(v *Value) bool { // match: (AtomicAdd32Variant ptr val mem) - // cond: // result: (LoweredAtomicAdd32Variant ptr val mem) for { mem := v.Args[2] @@ -32170,7 +27442,6 @@ func rewriteValueARM64_OpAtomicAdd32Variant_0(v *Value) bool { } func rewriteValueARM64_OpAtomicAdd64_0(v *Value) bool { // match: (AtomicAdd64 ptr val mem) - // cond: // result: (LoweredAtomicAdd64 ptr val mem) for { mem := v.Args[2] @@ -32185,7 +27456,6 @@ func rewriteValueARM64_OpAtomicAdd64_0(v *Value) bool { } func rewriteValueARM64_OpAtomicAdd64Variant_0(v *Value) bool { // match: (AtomicAdd64Variant ptr val mem) - // cond: // result: (LoweredAtomicAdd64Variant ptr val mem) for { mem := v.Args[2] @@ -32202,7 +27472,6 @@ func rewriteValueARM64_OpAtomicAnd8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (AtomicAnd8 ptr val mem) - // cond: // result: (Select1 (LoweredAtomicAnd8 ptr val mem)) for { mem := v.Args[2] @@ -32219,7 +27488,6 @@ func rewriteValueARM64_OpAtomicAnd8_0(v *Value) bool { } func rewriteValueARM64_OpAtomicCompareAndSwap32_0(v *Value) bool { // match: (AtomicCompareAndSwap32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas32 ptr old new_ mem) for { mem := v.Args[3] @@ -32236,7 +27504,6 @@ func rewriteValueARM64_OpAtomicCompareAndSwap32_0(v *Value) bool { } func rewriteValueARM64_OpAtomicCompareAndSwap64_0(v *Value) bool { // match: (AtomicCompareAndSwap64 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas64 ptr old new_ mem) for { mem := v.Args[3] @@ -32253,7 +27520,6 @@ func rewriteValueARM64_OpAtomicCompareAndSwap64_0(v *Value) bool { } func rewriteValueARM64_OpAtomicExchange32_0(v *Value) bool { // match: (AtomicExchange32 ptr val mem) - // cond: // result: (LoweredAtomicExchange32 ptr val mem) for { mem := v.Args[2] @@ -32268,7 +27534,6 @@ func rewriteValueARM64_OpAtomicExchange32_0(v *Value) bool { } func rewriteValueARM64_OpAtomicExchange64_0(v *Value) bool { // match: (AtomicExchange64 ptr val mem) - // cond: // result: (LoweredAtomicExchange64 ptr val mem) for { mem := v.Args[2] @@ -32283,7 +27548,6 @@ func rewriteValueARM64_OpAtomicExchange64_0(v *Value) bool { } func rewriteValueARM64_OpAtomicLoad32_0(v *Value) bool { // match: (AtomicLoad32 ptr mem) - // cond: // result: (LDARW ptr mem) for { mem := v.Args[1] @@ -32296,7 +27560,6 @@ func rewriteValueARM64_OpAtomicLoad32_0(v *Value) bool { } func rewriteValueARM64_OpAtomicLoad64_0(v *Value) bool { // match: (AtomicLoad64 ptr mem) - // cond: // result: (LDAR ptr mem) for { mem := v.Args[1] @@ -32309,7 +27572,6 @@ func rewriteValueARM64_OpAtomicLoad64_0(v *Value) bool { } func rewriteValueARM64_OpAtomicLoad8_0(v *Value) bool { // match: (AtomicLoad8 ptr mem) - // cond: // result: (LDARB ptr mem) for { mem := v.Args[1] @@ -32322,7 +27584,6 @@ func rewriteValueARM64_OpAtomicLoad8_0(v *Value) bool { } func rewriteValueARM64_OpAtomicLoadPtr_0(v *Value) bool { // match: (AtomicLoadPtr ptr mem) - // cond: // result: (LDAR ptr mem) for { mem := v.Args[1] @@ -32337,7 +27598,6 @@ func rewriteValueARM64_OpAtomicOr8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (AtomicOr8 ptr val mem) - // cond: // result: (Select1 (LoweredAtomicOr8 ptr val mem)) for { mem := v.Args[2] @@ -32354,7 +27614,6 @@ func rewriteValueARM64_OpAtomicOr8_0(v *Value) bool { } func rewriteValueARM64_OpAtomicStore32_0(v *Value) bool { // match: (AtomicStore32 ptr val mem) - // cond: // result: (STLRW ptr val mem) for { mem := v.Args[2] @@ -32369,7 +27628,6 @@ func rewriteValueARM64_OpAtomicStore32_0(v *Value) bool { } func rewriteValueARM64_OpAtomicStore64_0(v *Value) bool { // match: (AtomicStore64 ptr val mem) - // cond: // result: (STLR ptr val mem) for { mem := v.Args[2] @@ -32384,7 +27642,6 @@ func rewriteValueARM64_OpAtomicStore64_0(v *Value) bool { } func rewriteValueARM64_OpAtomicStorePtrNoWB_0(v *Value) bool { // match: (AtomicStorePtrNoWB ptr val mem) - // cond: // result: (STLR ptr val mem) for { mem := v.Args[2] @@ -32400,7 +27657,6 @@ func rewriteValueARM64_OpAtomicStorePtrNoWB_0(v *Value) bool { func rewriteValueARM64_OpAvg64u_0(v *Value) bool { b := v.Block // match: (Avg64u x y) - // cond: // result: (ADD (SRLconst (SUB x y) [1]) y) for { t := v.Type @@ -32422,7 +27678,6 @@ func rewriteValueARM64_OpBitLen32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen32 x) - // cond: // result: (SUB (MOVDconst [32]) (CLZW x)) for { x := v.Args[0] @@ -32440,7 +27695,6 @@ func rewriteValueARM64_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (SUB (MOVDconst [64]) (CLZ x)) for { x := v.Args[0] @@ -32458,7 +27712,6 @@ func rewriteValueARM64_OpBitRev16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitRev16 x) - // cond: // result: (SRLconst [48] (RBIT x)) for { x := v.Args[0] @@ -32472,7 +27725,6 @@ func rewriteValueARM64_OpBitRev16_0(v *Value) bool { } func rewriteValueARM64_OpBitRev32_0(v *Value) bool { // match: (BitRev32 x) - // cond: // result: (RBITW x) for { x := v.Args[0] @@ -32483,7 +27735,6 @@ func rewriteValueARM64_OpBitRev32_0(v *Value) bool { } func rewriteValueARM64_OpBitRev64_0(v *Value) bool { // match: (BitRev64 x) - // cond: // result: (RBIT x) for { x := v.Args[0] @@ -32496,7 +27747,6 @@ func rewriteValueARM64_OpBitRev8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitRev8 x) - // cond: // result: (SRLconst [56] (RBIT x)) for { x := v.Args[0] @@ -32510,7 +27760,6 @@ func rewriteValueARM64_OpBitRev8_0(v *Value) bool { } func rewriteValueARM64_OpBswap32_0(v *Value) bool { // match: (Bswap32 x) - // cond: // result: (REVW x) for { x := v.Args[0] @@ -32521,7 +27770,6 @@ func rewriteValueARM64_OpBswap32_0(v *Value) bool { } func rewriteValueARM64_OpBswap64_0(v *Value) bool { // match: (Bswap64 x) - // cond: // result: (REV x) for { x := v.Args[0] @@ -32532,7 +27780,6 @@ func rewriteValueARM64_OpBswap64_0(v *Value) bool { } func rewriteValueARM64_OpCeil_0(v *Value) bool { // match: (Ceil x) - // cond: // result: (FRINTPD x) for { x := v.Args[0] @@ -32543,7 +27790,6 @@ func rewriteValueARM64_OpCeil_0(v *Value) bool { } func rewriteValueARM64_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -32560,7 +27806,6 @@ func rewriteValueARM64_OpClosureCall_0(v *Value) bool { } func rewriteValueARM64_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -32571,7 +27816,6 @@ func rewriteValueARM64_OpCom16_0(v *Value) bool { } func rewriteValueARM64_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -32582,7 +27826,6 @@ func rewriteValueARM64_OpCom32_0(v *Value) bool { } func rewriteValueARM64_OpCom64_0(v *Value) bool { // match: (Com64 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -32593,7 +27836,6 @@ func rewriteValueARM64_OpCom64_0(v *Value) bool { } func rewriteValueARM64_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (MVN x) for { x := v.Args[0] @@ -32645,7 +27887,6 @@ func rewriteValueARM64_OpCondSelect_0(v *Value) bool { } func rewriteValueARM64_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -32656,7 +27897,6 @@ func rewriteValueARM64_OpConst16_0(v *Value) bool { } func rewriteValueARM64_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -32667,7 +27907,6 @@ func rewriteValueARM64_OpConst32_0(v *Value) bool { } func rewriteValueARM64_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (FMOVSconst [val]) for { val := v.AuxInt @@ -32678,7 +27917,6 @@ func rewriteValueARM64_OpConst32F_0(v *Value) bool { } func rewriteValueARM64_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -32689,7 +27927,6 @@ func rewriteValueARM64_OpConst64_0(v *Value) bool { } func rewriteValueARM64_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (FMOVDconst [val]) for { val := v.AuxInt @@ -32700,7 +27937,6 @@ func rewriteValueARM64_OpConst64F_0(v *Value) bool { } func rewriteValueARM64_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -32711,7 +27947,6 @@ func rewriteValueARM64_OpConst8_0(v *Value) bool { } func rewriteValueARM64_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVDconst [b]) for { b := v.AuxInt @@ -32722,7 +27957,6 @@ func rewriteValueARM64_OpConstBool_0(v *Value) bool { } func rewriteValueARM64_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVDconst [0]) for { v.reset(OpARM64MOVDconst) @@ -32734,7 +27968,6 @@ func rewriteValueARM64_OpCtz16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz16 x) - // cond: // result: (CLZW (RBITW (ORconst [0x10000] x))) for { t := v.Type @@ -32752,7 +27985,6 @@ func rewriteValueARM64_OpCtz16_0(v *Value) bool { } func rewriteValueARM64_OpCtz16NonZero_0(v *Value) bool { // match: (Ctz16NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -32764,7 +27996,6 @@ func rewriteValueARM64_OpCtz16NonZero_0(v *Value) bool { func rewriteValueARM64_OpCtz32_0(v *Value) bool { b := v.Block // match: (Ctz32 x) - // cond: // result: (CLZW (RBITW x)) for { t := v.Type @@ -32778,7 +28009,6 @@ func rewriteValueARM64_OpCtz32_0(v *Value) bool { } func rewriteValueARM64_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -32790,7 +28020,6 @@ func rewriteValueARM64_OpCtz32NonZero_0(v *Value) bool { func rewriteValueARM64_OpCtz64_0(v *Value) bool { b := v.Block // match: (Ctz64 x) - // cond: // result: (CLZ (RBIT x)) for { t := v.Type @@ -32804,7 +28033,6 @@ func rewriteValueARM64_OpCtz64_0(v *Value) bool { } func rewriteValueARM64_OpCtz64NonZero_0(v *Value) bool { // match: (Ctz64NonZero x) - // cond: // result: (Ctz64 x) for { x := v.Args[0] @@ -32817,7 +28045,6 @@ func rewriteValueARM64_OpCtz8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz8 x) - // cond: // result: (CLZW (RBITW (ORconst [0x100] x))) for { t := v.Type @@ -32835,7 +28062,6 @@ func rewriteValueARM64_OpCtz8_0(v *Value) bool { } func rewriteValueARM64_OpCtz8NonZero_0(v *Value) bool { // match: (Ctz8NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -32846,7 +28072,6 @@ func rewriteValueARM64_OpCtz8NonZero_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (FCVTZSSW x) for { x := v.Args[0] @@ -32857,7 +28082,6 @@ func rewriteValueARM64_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Fto32U_0(v *Value) bool { // match: (Cvt32Fto32U x) - // cond: // result: (FCVTZUSW x) for { x := v.Args[0] @@ -32868,7 +28092,6 @@ func rewriteValueARM64_OpCvt32Fto32U_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 x) - // cond: // result: (FCVTZSS x) for { x := v.Args[0] @@ -32879,7 +28102,6 @@ func rewriteValueARM64_OpCvt32Fto64_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (FCVTSD x) for { x := v.Args[0] @@ -32890,7 +28112,6 @@ func rewriteValueARM64_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Fto64U_0(v *Value) bool { // match: (Cvt32Fto64U x) - // cond: // result: (FCVTZUS x) for { x := v.Args[0] @@ -32901,7 +28122,6 @@ func rewriteValueARM64_OpCvt32Fto64U_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Uto32F_0(v *Value) bool { // match: (Cvt32Uto32F x) - // cond: // result: (UCVTFWS x) for { x := v.Args[0] @@ -32912,7 +28132,6 @@ func rewriteValueARM64_OpCvt32Uto32F_0(v *Value) bool { } func rewriteValueARM64_OpCvt32Uto64F_0(v *Value) bool { // match: (Cvt32Uto64F x) - // cond: // result: (UCVTFWD x) for { x := v.Args[0] @@ -32923,7 +28142,6 @@ func rewriteValueARM64_OpCvt32Uto64F_0(v *Value) bool { } func rewriteValueARM64_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (SCVTFWS x) for { x := v.Args[0] @@ -32934,7 +28152,6 @@ func rewriteValueARM64_OpCvt32to32F_0(v *Value) bool { } func rewriteValueARM64_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (SCVTFWD x) for { x := v.Args[0] @@ -32945,7 +28162,6 @@ func rewriteValueARM64_OpCvt32to64F_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (FCVTZSDW x) for { x := v.Args[0] @@ -32956,7 +28172,6 @@ func rewriteValueARM64_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (FCVTDS x) for { x := v.Args[0] @@ -32967,7 +28182,6 @@ func rewriteValueARM64_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Fto32U_0(v *Value) bool { // match: (Cvt64Fto32U x) - // cond: // result: (FCVTZUDW x) for { x := v.Args[0] @@ -32978,7 +28192,6 @@ func rewriteValueARM64_OpCvt64Fto32U_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 x) - // cond: // result: (FCVTZSD x) for { x := v.Args[0] @@ -32989,7 +28202,6 @@ func rewriteValueARM64_OpCvt64Fto64_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Fto64U_0(v *Value) bool { // match: (Cvt64Fto64U x) - // cond: // result: (FCVTZUD x) for { x := v.Args[0] @@ -33000,7 +28212,6 @@ func rewriteValueARM64_OpCvt64Fto64U_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Uto32F_0(v *Value) bool { // match: (Cvt64Uto32F x) - // cond: // result: (UCVTFS x) for { x := v.Args[0] @@ -33011,7 +28222,6 @@ func rewriteValueARM64_OpCvt64Uto32F_0(v *Value) bool { } func rewriteValueARM64_OpCvt64Uto64F_0(v *Value) bool { // match: (Cvt64Uto64F x) - // cond: // result: (UCVTFD x) for { x := v.Args[0] @@ -33022,7 +28232,6 @@ func rewriteValueARM64_OpCvt64Uto64F_0(v *Value) bool { } func rewriteValueARM64_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F x) - // cond: // result: (SCVTFS x) for { x := v.Args[0] @@ -33033,7 +28242,6 @@ func rewriteValueARM64_OpCvt64to32F_0(v *Value) bool { } func rewriteValueARM64_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F x) - // cond: // result: (SCVTFD x) for { x := v.Args[0] @@ -33046,7 +28254,6 @@ func rewriteValueARM64_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (DIVW (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -33065,7 +28272,6 @@ func rewriteValueARM64_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (UDIVW (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -33082,7 +28288,6 @@ func rewriteValueARM64_OpDiv16u_0(v *Value) bool { } func rewriteValueARM64_OpDiv32_0(v *Value) bool { // match: (Div32 x y) - // cond: // result: (DIVW x y) for { y := v.Args[1] @@ -33095,7 +28300,6 @@ func rewriteValueARM64_OpDiv32_0(v *Value) bool { } func rewriteValueARM64_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (FDIVS x y) for { y := v.Args[1] @@ -33108,7 +28312,6 @@ func rewriteValueARM64_OpDiv32F_0(v *Value) bool { } func rewriteValueARM64_OpDiv32u_0(v *Value) bool { // match: (Div32u x y) - // cond: // result: (UDIVW x y) for { y := v.Args[1] @@ -33121,7 +28324,6 @@ func rewriteValueARM64_OpDiv32u_0(v *Value) bool { } func rewriteValueARM64_OpDiv64_0(v *Value) bool { // match: (Div64 x y) - // cond: // result: (DIV x y) for { y := v.Args[1] @@ -33134,7 +28336,6 @@ func rewriteValueARM64_OpDiv64_0(v *Value) bool { } func rewriteValueARM64_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (FDIVD x y) for { y := v.Args[1] @@ -33147,7 +28348,6 @@ func rewriteValueARM64_OpDiv64F_0(v *Value) bool { } func rewriteValueARM64_OpDiv64u_0(v *Value) bool { // match: (Div64u x y) - // cond: // result: (UDIV x y) for { y := v.Args[1] @@ -33162,7 +28362,6 @@ func rewriteValueARM64_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (DIVW (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -33181,7 +28380,6 @@ func rewriteValueARM64_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (UDIVW (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -33200,7 +28398,6 @@ func rewriteValueARM64_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (Equal (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -33220,7 +28417,6 @@ func rewriteValueARM64_OpEq16_0(v *Value) bool { func rewriteValueARM64_OpEq32_0(v *Value) bool { b := v.Block // match: (Eq32 x y) - // cond: // result: (Equal (CMPW x y)) for { y := v.Args[1] @@ -33236,7 +28432,6 @@ func rewriteValueARM64_OpEq32_0(v *Value) bool { func rewriteValueARM64_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (Equal (FCMPS x y)) for { y := v.Args[1] @@ -33252,7 +28447,6 @@ func rewriteValueARM64_OpEq32F_0(v *Value) bool { func rewriteValueARM64_OpEq64_0(v *Value) bool { b := v.Block // match: (Eq64 x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -33268,7 +28462,6 @@ func rewriteValueARM64_OpEq64_0(v *Value) bool { func rewriteValueARM64_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (Equal (FCMPD x y)) for { y := v.Args[1] @@ -33285,7 +28478,6 @@ func rewriteValueARM64_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (Equal (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -33306,7 +28498,6 @@ func rewriteValueARM64_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (XOR (MOVDconst [1]) (XOR x y)) for { y := v.Args[1] @@ -33325,7 +28516,6 @@ func rewriteValueARM64_OpEqB_0(v *Value) bool { func rewriteValueARM64_OpEqPtr_0(v *Value) bool { b := v.Block // match: (EqPtr x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -33340,7 +28530,6 @@ func rewriteValueARM64_OpEqPtr_0(v *Value) bool { } func rewriteValueARM64_OpFloor_0(v *Value) bool { // match: (Floor x) - // cond: // result: (FRINTMD x) for { x := v.Args[0] @@ -33353,7 +28542,6 @@ func rewriteValueARM64_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (GreaterEqual (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -33374,7 +28562,6 @@ func rewriteValueARM64_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (GreaterEqualU (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -33394,7 +28581,6 @@ func rewriteValueARM64_OpGeq16U_0(v *Value) bool { func rewriteValueARM64_OpGeq32_0(v *Value) bool { b := v.Block // match: (Geq32 x y) - // cond: // result: (GreaterEqual (CMPW x y)) for { y := v.Args[1] @@ -33410,7 +28596,6 @@ func rewriteValueARM64_OpGeq32_0(v *Value) bool { func rewriteValueARM64_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (GreaterEqualF (FCMPS x y)) for { y := v.Args[1] @@ -33426,7 +28611,6 @@ func rewriteValueARM64_OpGeq32F_0(v *Value) bool { func rewriteValueARM64_OpGeq32U_0(v *Value) bool { b := v.Block // match: (Geq32U x y) - // cond: // result: (GreaterEqualU (CMPW x y)) for { y := v.Args[1] @@ -33442,7 +28626,6 @@ func rewriteValueARM64_OpGeq32U_0(v *Value) bool { func rewriteValueARM64_OpGeq64_0(v *Value) bool { b := v.Block // match: (Geq64 x y) - // cond: // result: (GreaterEqual (CMP x y)) for { y := v.Args[1] @@ -33458,7 +28641,6 @@ func rewriteValueARM64_OpGeq64_0(v *Value) bool { func rewriteValueARM64_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (GreaterEqualF (FCMPD x y)) for { y := v.Args[1] @@ -33474,7 +28656,6 @@ func rewriteValueARM64_OpGeq64F_0(v *Value) bool { func rewriteValueARM64_OpGeq64U_0(v *Value) bool { b := v.Block // match: (Geq64U x y) - // cond: // result: (GreaterEqualU (CMP x y)) for { y := v.Args[1] @@ -33491,7 +28672,6 @@ func rewriteValueARM64_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (GreaterEqual (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -33512,7 +28692,6 @@ func rewriteValueARM64_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (GreaterEqualU (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -33531,7 +28710,6 @@ func rewriteValueARM64_OpGeq8U_0(v *Value) bool { } func rewriteValueARM64_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpARM64LoweredGetCallerPC) @@ -33540,7 +28718,6 @@ func rewriteValueARM64_OpGetCallerPC_0(v *Value) bool { } func rewriteValueARM64_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpARM64LoweredGetCallerSP) @@ -33549,7 +28726,6 @@ func rewriteValueARM64_OpGetCallerSP_0(v *Value) bool { } func rewriteValueARM64_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpARM64LoweredGetClosurePtr) @@ -33560,7 +28736,6 @@ func rewriteValueARM64_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (GreaterThan (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -33581,7 +28756,6 @@ func rewriteValueARM64_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (GreaterThanU (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -33601,7 +28775,6 @@ func rewriteValueARM64_OpGreater16U_0(v *Value) bool { func rewriteValueARM64_OpGreater32_0(v *Value) bool { b := v.Block // match: (Greater32 x y) - // cond: // result: (GreaterThan (CMPW x y)) for { y := v.Args[1] @@ -33617,7 +28790,6 @@ func rewriteValueARM64_OpGreater32_0(v *Value) bool { func rewriteValueARM64_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (GreaterThanF (FCMPS x y)) for { y := v.Args[1] @@ -33633,7 +28805,6 @@ func rewriteValueARM64_OpGreater32F_0(v *Value) bool { func rewriteValueARM64_OpGreater32U_0(v *Value) bool { b := v.Block // match: (Greater32U x y) - // cond: // result: (GreaterThanU (CMPW x y)) for { y := v.Args[1] @@ -33649,7 +28820,6 @@ func rewriteValueARM64_OpGreater32U_0(v *Value) bool { func rewriteValueARM64_OpGreater64_0(v *Value) bool { b := v.Block // match: (Greater64 x y) - // cond: // result: (GreaterThan (CMP x y)) for { y := v.Args[1] @@ -33665,7 +28835,6 @@ func rewriteValueARM64_OpGreater64_0(v *Value) bool { func rewriteValueARM64_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (GreaterThanF (FCMPD x y)) for { y := v.Args[1] @@ -33681,7 +28850,6 @@ func rewriteValueARM64_OpGreater64F_0(v *Value) bool { func rewriteValueARM64_OpGreater64U_0(v *Value) bool { b := v.Block // match: (Greater64U x y) - // cond: // result: (GreaterThanU (CMP x y)) for { y := v.Args[1] @@ -33698,7 +28866,6 @@ func rewriteValueARM64_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (GreaterThan (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -33719,7 +28886,6 @@ func rewriteValueARM64_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (GreaterThanU (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -33740,7 +28906,6 @@ func rewriteValueARM64_OpHmul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32 x y) - // cond: // result: (SRAconst (MULL x y) [32]) for { y := v.Args[1] @@ -33758,7 +28923,6 @@ func rewriteValueARM64_OpHmul32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32u x y) - // cond: // result: (SRAconst (UMULL x y) [32]) for { y := v.Args[1] @@ -33774,7 +28938,6 @@ func rewriteValueARM64_OpHmul32u_0(v *Value) bool { } func rewriteValueARM64_OpHmul64_0(v *Value) bool { // match: (Hmul64 x y) - // cond: // result: (MULH x y) for { y := v.Args[1] @@ -33787,7 +28950,6 @@ func rewriteValueARM64_OpHmul64_0(v *Value) bool { } func rewriteValueARM64_OpHmul64u_0(v *Value) bool { // match: (Hmul64u x y) - // cond: // result: (UMULH x y) for { y := v.Args[1] @@ -33800,7 +28962,6 @@ func rewriteValueARM64_OpHmul64u_0(v *Value) bool { } func rewriteValueARM64_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -33816,7 +28977,6 @@ func rewriteValueARM64_OpInterCall_0(v *Value) bool { func rewriteValueARM64_OpIsInBounds_0(v *Value) bool { b := v.Block // match: (IsInBounds idx len) - // cond: // result: (LessThanU (CMP idx len)) for { len := v.Args[1] @@ -33832,7 +28992,6 @@ func rewriteValueARM64_OpIsInBounds_0(v *Value) bool { func rewriteValueARM64_OpIsNonNil_0(v *Value) bool { b := v.Block // match: (IsNonNil ptr) - // cond: // result: (NotEqual (CMPconst [0] ptr)) for { ptr := v.Args[0] @@ -33847,7 +29006,6 @@ func rewriteValueARM64_OpIsNonNil_0(v *Value) bool { func rewriteValueARM64_OpIsSliceInBounds_0(v *Value) bool { b := v.Block // match: (IsSliceInBounds idx len) - // cond: // result: (LessEqualU (CMP idx len)) for { len := v.Args[1] @@ -33864,7 +29022,6 @@ func rewriteValueARM64_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (LessEqual (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -33885,7 +29042,6 @@ func rewriteValueARM64_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (LessEqualU (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -33905,7 +29061,6 @@ func rewriteValueARM64_OpLeq16U_0(v *Value) bool { func rewriteValueARM64_OpLeq32_0(v *Value) bool { b := v.Block // match: (Leq32 x y) - // cond: // result: (LessEqual (CMPW x y)) for { y := v.Args[1] @@ -33921,7 +29076,6 @@ func rewriteValueARM64_OpLeq32_0(v *Value) bool { func rewriteValueARM64_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (LessEqualF (FCMPS x y)) for { y := v.Args[1] @@ -33937,7 +29091,6 @@ func rewriteValueARM64_OpLeq32F_0(v *Value) bool { func rewriteValueARM64_OpLeq32U_0(v *Value) bool { b := v.Block // match: (Leq32U x y) - // cond: // result: (LessEqualU (CMPW x y)) for { y := v.Args[1] @@ -33953,7 +29106,6 @@ func rewriteValueARM64_OpLeq32U_0(v *Value) bool { func rewriteValueARM64_OpLeq64_0(v *Value) bool { b := v.Block // match: (Leq64 x y) - // cond: // result: (LessEqual (CMP x y)) for { y := v.Args[1] @@ -33969,7 +29121,6 @@ func rewriteValueARM64_OpLeq64_0(v *Value) bool { func rewriteValueARM64_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (LessEqualF (FCMPD x y)) for { y := v.Args[1] @@ -33985,7 +29136,6 @@ func rewriteValueARM64_OpLeq64F_0(v *Value) bool { func rewriteValueARM64_OpLeq64U_0(v *Value) bool { b := v.Block // match: (Leq64U x y) - // cond: // result: (LessEqualU (CMP x y)) for { y := v.Args[1] @@ -34002,7 +29152,6 @@ func rewriteValueARM64_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (LessEqual (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -34023,7 +29172,6 @@ func rewriteValueARM64_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (LessEqualU (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -34044,7 +29192,6 @@ func rewriteValueARM64_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (LessThan (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -34065,7 +29212,6 @@ func rewriteValueARM64_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (LessThanU (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -34085,7 +29231,6 @@ func rewriteValueARM64_OpLess16U_0(v *Value) bool { func rewriteValueARM64_OpLess32_0(v *Value) bool { b := v.Block // match: (Less32 x y) - // cond: // result: (LessThan (CMPW x y)) for { y := v.Args[1] @@ -34101,7 +29246,6 @@ func rewriteValueARM64_OpLess32_0(v *Value) bool { func rewriteValueARM64_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (LessThanF (FCMPS x y)) for { y := v.Args[1] @@ -34117,7 +29261,6 @@ func rewriteValueARM64_OpLess32F_0(v *Value) bool { func rewriteValueARM64_OpLess32U_0(v *Value) bool { b := v.Block // match: (Less32U x y) - // cond: // result: (LessThanU (CMPW x y)) for { y := v.Args[1] @@ -34133,7 +29276,6 @@ func rewriteValueARM64_OpLess32U_0(v *Value) bool { func rewriteValueARM64_OpLess64_0(v *Value) bool { b := v.Block // match: (Less64 x y) - // cond: // result: (LessThan (CMP x y)) for { y := v.Args[1] @@ -34149,7 +29291,6 @@ func rewriteValueARM64_OpLess64_0(v *Value) bool { func rewriteValueARM64_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (LessThanF (FCMPD x y)) for { y := v.Args[1] @@ -34165,7 +29306,6 @@ func rewriteValueARM64_OpLess64F_0(v *Value) bool { func rewriteValueARM64_OpLess64U_0(v *Value) bool { b := v.Block // match: (Less64U x y) - // cond: // result: (LessThanU (CMP x y)) for { y := v.Args[1] @@ -34182,7 +29322,6 @@ func rewriteValueARM64_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (LessThan (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -34203,7 +29342,6 @@ func rewriteValueARM64_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (LessThanU (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -34375,7 +29513,6 @@ func rewriteValueARM64_OpLoad_0(v *Value) bool { } func rewriteValueARM64_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -34391,7 +29528,6 @@ func rewriteValueARM64_OpLsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -34421,7 +29557,6 @@ func rewriteValueARM64_OpLsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -34450,7 +29585,6 @@ func rewriteValueARM64_OpLsh16x32_0(v *Value) bool { func rewriteValueARM64_OpLsh16x64_0(v *Value) bool { b := v.Block // match: (Lsh16x64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -34476,7 +29610,6 @@ func rewriteValueARM64_OpLsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -34506,7 +29639,6 @@ func rewriteValueARM64_OpLsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -34536,7 +29668,6 @@ func rewriteValueARM64_OpLsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -34565,7 +29696,6 @@ func rewriteValueARM64_OpLsh32x32_0(v *Value) bool { func rewriteValueARM64_OpLsh32x64_0(v *Value) bool { b := v.Block // match: (Lsh32x64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -34591,7 +29721,6 @@ func rewriteValueARM64_OpLsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -34621,7 +29750,6 @@ func rewriteValueARM64_OpLsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -34651,7 +29779,6 @@ func rewriteValueARM64_OpLsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -34680,7 +29807,6 @@ func rewriteValueARM64_OpLsh64x32_0(v *Value) bool { func rewriteValueARM64_OpLsh64x64_0(v *Value) bool { b := v.Block // match: (Lsh64x64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -34706,7 +29832,6 @@ func rewriteValueARM64_OpLsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -34736,7 +29861,6 @@ func rewriteValueARM64_OpLsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -34766,7 +29890,6 @@ func rewriteValueARM64_OpLsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -34795,7 +29918,6 @@ func rewriteValueARM64_OpLsh8x32_0(v *Value) bool { func rewriteValueARM64_OpLsh8x64_0(v *Value) bool { b := v.Block // match: (Lsh8x64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -34821,7 +29943,6 @@ func rewriteValueARM64_OpLsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SLL x (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -34851,7 +29972,6 @@ func rewriteValueARM64_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (MODW (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -34870,7 +29990,6 @@ func rewriteValueARM64_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (UMODW (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -34887,7 +30006,6 @@ func rewriteValueARM64_OpMod16u_0(v *Value) bool { } func rewriteValueARM64_OpMod32_0(v *Value) bool { // match: (Mod32 x y) - // cond: // result: (MODW x y) for { y := v.Args[1] @@ -34900,7 +30018,6 @@ func rewriteValueARM64_OpMod32_0(v *Value) bool { } func rewriteValueARM64_OpMod32u_0(v *Value) bool { // match: (Mod32u x y) - // cond: // result: (UMODW x y) for { y := v.Args[1] @@ -34913,7 +30030,6 @@ func rewriteValueARM64_OpMod32u_0(v *Value) bool { } func rewriteValueARM64_OpMod64_0(v *Value) bool { // match: (Mod64 x y) - // cond: // result: (MOD x y) for { y := v.Args[1] @@ -34926,7 +30042,6 @@ func rewriteValueARM64_OpMod64_0(v *Value) bool { } func rewriteValueARM64_OpMod64u_0(v *Value) bool { // match: (Mod64u x y) - // cond: // result: (UMOD x y) for { y := v.Args[1] @@ -34941,7 +30056,6 @@ func rewriteValueARM64_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (MODW (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -34960,7 +30074,6 @@ func rewriteValueARM64_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (UMODW (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -34979,7 +30092,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -34992,7 +30104,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBUload src mem) mem) for { if v.AuxInt != 1 { @@ -35011,7 +30122,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVHstore dst (MOVHUload src mem) mem) for { if v.AuxInt != 2 { @@ -35030,7 +30140,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVWstore dst (MOVWUload src mem) mem) for { if v.AuxInt != 4 { @@ -35049,7 +30158,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (MOVDstore dst (MOVDload src mem) mem) for { if v.AuxInt != 8 { @@ -35068,7 +30176,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBUload [2] src mem) (MOVHstore dst (MOVHUload src mem) mem)) for { if v.AuxInt != 3 { @@ -35096,7 +30203,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (MOVBstore [4] dst (MOVBUload [4] src mem) (MOVWstore dst (MOVWUload src mem) mem)) for { if v.AuxInt != 5 { @@ -35124,7 +30230,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (MOVHstore [4] dst (MOVHUload [4] src mem) (MOVWstore dst (MOVWUload src mem) mem)) for { if v.AuxInt != 6 { @@ -35152,7 +30257,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [7] dst src mem) - // cond: // result: (MOVBstore [6] dst (MOVBUload [6] src mem) (MOVHstore [4] dst (MOVHUload [4] src mem) (MOVWstore dst (MOVWUload src mem) mem))) for { if v.AuxInt != 7 { @@ -35189,7 +30293,6 @@ func rewriteValueARM64_OpMove_0(v *Value) bool { return true } // match: (Move [12] dst src mem) - // cond: // result: (MOVWstore [8] dst (MOVWUload [8] src mem) (MOVDstore dst (MOVDload src mem) mem)) for { if v.AuxInt != 12 { @@ -35223,7 +30326,6 @@ func rewriteValueARM64_OpMove_10(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Move [16] dst src mem) - // cond: // result: (MOVDstore [8] dst (MOVDload [8] src mem) (MOVDstore dst (MOVDload src mem) mem)) for { if v.AuxInt != 16 { @@ -35251,7 +30353,6 @@ func rewriteValueARM64_OpMove_10(v *Value) bool { return true } // match: (Move [24] dst src mem) - // cond: // result: (MOVDstore [16] dst (MOVDload [16] src mem) (MOVDstore [8] dst (MOVDload [8] src mem) (MOVDstore dst (MOVDload src mem) mem))) for { if v.AuxInt != 24 { @@ -35386,7 +30487,6 @@ func rewriteValueARM64_OpMove_10(v *Value) bool { } func rewriteValueARM64_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MULW x y) for { y := v.Args[1] @@ -35399,7 +30499,6 @@ func rewriteValueARM64_OpMul16_0(v *Value) bool { } func rewriteValueARM64_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MULW x y) for { y := v.Args[1] @@ -35412,7 +30511,6 @@ func rewriteValueARM64_OpMul32_0(v *Value) bool { } func rewriteValueARM64_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (FMULS x y) for { y := v.Args[1] @@ -35425,7 +30523,6 @@ func rewriteValueARM64_OpMul32F_0(v *Value) bool { } func rewriteValueARM64_OpMul64_0(v *Value) bool { // match: (Mul64 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -35438,7 +30535,6 @@ func rewriteValueARM64_OpMul64_0(v *Value) bool { } func rewriteValueARM64_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (FMULD x y) for { y := v.Args[1] @@ -35451,7 +30547,6 @@ func rewriteValueARM64_OpMul64F_0(v *Value) bool { } func rewriteValueARM64_OpMul64uhilo_0(v *Value) bool { // match: (Mul64uhilo x y) - // cond: // result: (LoweredMuluhilo x y) for { y := v.Args[1] @@ -35464,7 +30559,6 @@ func rewriteValueARM64_OpMul64uhilo_0(v *Value) bool { } func rewriteValueARM64_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MULW x y) for { y := v.Args[1] @@ -35477,7 +30571,6 @@ func rewriteValueARM64_OpMul8_0(v *Value) bool { } func rewriteValueARM64_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -35488,7 +30581,6 @@ func rewriteValueARM64_OpNeg16_0(v *Value) bool { } func rewriteValueARM64_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -35499,7 +30591,6 @@ func rewriteValueARM64_OpNeg32_0(v *Value) bool { } func rewriteValueARM64_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (FNEGS x) for { x := v.Args[0] @@ -35510,7 +30601,6 @@ func rewriteValueARM64_OpNeg32F_0(v *Value) bool { } func rewriteValueARM64_OpNeg64_0(v *Value) bool { // match: (Neg64 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -35521,7 +30611,6 @@ func rewriteValueARM64_OpNeg64_0(v *Value) bool { } func rewriteValueARM64_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (FNEGD x) for { x := v.Args[0] @@ -35532,7 +30621,6 @@ func rewriteValueARM64_OpNeg64F_0(v *Value) bool { } func rewriteValueARM64_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -35545,7 +30633,6 @@ func rewriteValueARM64_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (NotEqual (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -35565,7 +30652,6 @@ func rewriteValueARM64_OpNeq16_0(v *Value) bool { func rewriteValueARM64_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x y) - // cond: // result: (NotEqual (CMPW x y)) for { y := v.Args[1] @@ -35581,7 +30667,6 @@ func rewriteValueARM64_OpNeq32_0(v *Value) bool { func rewriteValueARM64_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (NotEqual (FCMPS x y)) for { y := v.Args[1] @@ -35597,7 +30682,6 @@ func rewriteValueARM64_OpNeq32F_0(v *Value) bool { func rewriteValueARM64_OpNeq64_0(v *Value) bool { b := v.Block // match: (Neq64 x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -35613,7 +30697,6 @@ func rewriteValueARM64_OpNeq64_0(v *Value) bool { func rewriteValueARM64_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (NotEqual (FCMPD x y)) for { y := v.Args[1] @@ -35630,7 +30713,6 @@ func rewriteValueARM64_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (NotEqual (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -35649,7 +30731,6 @@ func rewriteValueARM64_OpNeq8_0(v *Value) bool { } func rewriteValueARM64_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -35663,7 +30744,6 @@ func rewriteValueARM64_OpNeqB_0(v *Value) bool { func rewriteValueARM64_OpNeqPtr_0(v *Value) bool { b := v.Block // match: (NeqPtr x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -35678,7 +30758,6 @@ func rewriteValueARM64_OpNeqPtr_0(v *Value) bool { } func rewriteValueARM64_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -35693,7 +30772,6 @@ func rewriteValueARM64_OpNot_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Not x) - // cond: // result: (XOR (MOVDconst [1]) x) for { x := v.Args[0] @@ -35707,7 +30785,6 @@ func rewriteValueARM64_OpNot_0(v *Value) bool { } func rewriteValueARM64_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr:(SP)) - // cond: // result: (MOVDaddr [off] ptr) for { off := v.AuxInt @@ -35721,7 +30798,6 @@ func rewriteValueARM64_OpOffPtr_0(v *Value) bool { return true } // match: (OffPtr [off] ptr) - // cond: // result: (ADDconst [off] ptr) for { off := v.AuxInt @@ -35734,7 +30810,6 @@ func rewriteValueARM64_OpOffPtr_0(v *Value) bool { } func rewriteValueARM64_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -35747,7 +30822,6 @@ func rewriteValueARM64_OpOr16_0(v *Value) bool { } func rewriteValueARM64_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -35760,7 +30834,6 @@ func rewriteValueARM64_OpOr32_0(v *Value) bool { } func rewriteValueARM64_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -35773,7 +30846,6 @@ func rewriteValueARM64_OpOr64_0(v *Value) bool { } func rewriteValueARM64_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -35786,7 +30858,6 @@ func rewriteValueARM64_OpOr8_0(v *Value) bool { } func rewriteValueARM64_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -35858,7 +30929,6 @@ func rewriteValueARM64_OpPopCount16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount16 x) - // cond: // result: (FMOVDfpgp (VUADDLV (VCNT (FMOVDgpfp (ZeroExt16to64 x))))) for { t := v.Type @@ -35881,7 +30951,6 @@ func rewriteValueARM64_OpPopCount32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount32 x) - // cond: // result: (FMOVDfpgp (VUADDLV (VCNT (FMOVDgpfp (ZeroExt32to64 x))))) for { t := v.Type @@ -35904,7 +30973,6 @@ func rewriteValueARM64_OpPopCount64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount64 x) - // cond: // result: (FMOVDfpgp (VUADDLV (VCNT (FMOVDgpfp x)))) for { t := v.Type @@ -35925,7 +30993,6 @@ func rewriteValueARM64_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVDconst [c])) - // cond: // result: (Or16 (Lsh16x64 x (MOVDconst [c&15])) (Rsh16Ux64 x (MOVDconst [-c&15]))) for { t := v.Type @@ -35956,7 +31023,6 @@ func rewriteValueARM64_OpRotateLeft16_0(v *Value) bool { func rewriteValueARM64_OpRotateLeft32_0(v *Value) bool { b := v.Block // match: (RotateLeft32 x y) - // cond: // result: (RORW x (NEG y)) for { y := v.Args[1] @@ -35972,7 +31038,6 @@ func rewriteValueARM64_OpRotateLeft32_0(v *Value) bool { func rewriteValueARM64_OpRotateLeft64_0(v *Value) bool { b := v.Block // match: (RotateLeft64 x y) - // cond: // result: (ROR x (NEG y)) for { y := v.Args[1] @@ -35989,7 +31054,6 @@ func rewriteValueARM64_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVDconst [c])) - // cond: // result: (Or8 (Lsh8x64 x (MOVDconst [c&7])) (Rsh8Ux64 x (MOVDconst [-c&7]))) for { t := v.Type @@ -36019,7 +31083,6 @@ func rewriteValueARM64_OpRotateLeft8_0(v *Value) bool { } func rewriteValueARM64_OpRound_0(v *Value) bool { // match: (Round x) - // cond: // result: (FRINTAD x) for { x := v.Args[0] @@ -36030,7 +31093,6 @@ func rewriteValueARM64_OpRound_0(v *Value) bool { } func rewriteValueARM64_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: (LoweredRound32F x) for { x := v.Args[0] @@ -36041,7 +31103,6 @@ func rewriteValueARM64_OpRound32F_0(v *Value) bool { } func rewriteValueARM64_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: (LoweredRound64F x) for { x := v.Args[0] @@ -36052,7 +31113,6 @@ func rewriteValueARM64_OpRound64F_0(v *Value) bool { } func rewriteValueARM64_OpRoundToEven_0(v *Value) bool { // match: (RoundToEven x) - // cond: // result: (FRINTND x) for { x := v.Args[0] @@ -36065,7 +31125,6 @@ func rewriteValueARM64_OpRsh16Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt16to64 x) (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -36097,7 +31156,6 @@ func rewriteValueARM64_OpRsh16Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt16to64 x) (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -36129,7 +31187,6 @@ func rewriteValueARM64_OpRsh16Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt16to64 x) y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -36157,7 +31214,6 @@ func rewriteValueARM64_OpRsh16Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt16to64 x) (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -36189,7 +31245,6 @@ func rewriteValueARM64_OpRsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x16 x y) - // cond: // result: (SRA (SignExt16to64 x) (CSEL {OpARM64LessThanU} (ZeroExt16to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt16to64 y)))) for { y := v.Args[1] @@ -36220,7 +31275,6 @@ func rewriteValueARM64_OpRsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x32 x y) - // cond: // result: (SRA (SignExt16to64 x) (CSEL {OpARM64LessThanU} (ZeroExt32to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt32to64 y)))) for { y := v.Args[1] @@ -36251,7 +31305,6 @@ func rewriteValueARM64_OpRsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x64 x y) - // cond: // result: (SRA (SignExt16to64 x) (CSEL {OpARM64LessThanU} y (Const64 [63]) (CMPconst [64] y))) for { y := v.Args[1] @@ -36278,7 +31331,6 @@ func rewriteValueARM64_OpRsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x8 x y) - // cond: // result: (SRA (SignExt16to64 x) (CSEL {OpARM64LessThanU} (ZeroExt8to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt8to64 y)))) for { y := v.Args[1] @@ -36309,7 +31361,6 @@ func rewriteValueARM64_OpRsh32Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt32to64 x) (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -36341,7 +31392,6 @@ func rewriteValueARM64_OpRsh32Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt32to64 x) (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -36373,7 +31423,6 @@ func rewriteValueARM64_OpRsh32Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt32to64 x) y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -36401,7 +31450,6 @@ func rewriteValueARM64_OpRsh32Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt32to64 x) (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -36433,7 +31481,6 @@ func rewriteValueARM64_OpRsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x16 x y) - // cond: // result: (SRA (SignExt32to64 x) (CSEL {OpARM64LessThanU} (ZeroExt16to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt16to64 y)))) for { y := v.Args[1] @@ -36464,7 +31511,6 @@ func rewriteValueARM64_OpRsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x32 x y) - // cond: // result: (SRA (SignExt32to64 x) (CSEL {OpARM64LessThanU} (ZeroExt32to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt32to64 y)))) for { y := v.Args[1] @@ -36495,7 +31541,6 @@ func rewriteValueARM64_OpRsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x64 x y) - // cond: // result: (SRA (SignExt32to64 x) (CSEL {OpARM64LessThanU} y (Const64 [63]) (CMPconst [64] y))) for { y := v.Args[1] @@ -36522,7 +31567,6 @@ func rewriteValueARM64_OpRsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x8 x y) - // cond: // result: (SRA (SignExt32to64 x) (CSEL {OpARM64LessThanU} (ZeroExt8to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt8to64 y)))) for { y := v.Args[1] @@ -36553,7 +31597,6 @@ func rewriteValueARM64_OpRsh64Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL x (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -36583,7 +31626,6 @@ func rewriteValueARM64_OpRsh64Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL x (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -36612,7 +31654,6 @@ func rewriteValueARM64_OpRsh64Ux32_0(v *Value) bool { func rewriteValueARM64_OpRsh64Ux64_0(v *Value) bool { b := v.Block // match: (Rsh64Ux64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL x y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -36638,7 +31679,6 @@ func rewriteValueARM64_OpRsh64Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL x (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -36668,7 +31708,6 @@ func rewriteValueARM64_OpRsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x16 x y) - // cond: // result: (SRA x (CSEL {OpARM64LessThanU} (ZeroExt16to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt16to64 y)))) for { y := v.Args[1] @@ -36697,7 +31736,6 @@ func rewriteValueARM64_OpRsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x32 x y) - // cond: // result: (SRA x (CSEL {OpARM64LessThanU} (ZeroExt32to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt32to64 y)))) for { y := v.Args[1] @@ -36725,7 +31763,6 @@ func rewriteValueARM64_OpRsh64x32_0(v *Value) bool { func rewriteValueARM64_OpRsh64x64_0(v *Value) bool { b := v.Block // match: (Rsh64x64 x y) - // cond: // result: (SRA x (CSEL {OpARM64LessThanU} y (Const64 [63]) (CMPconst [64] y))) for { y := v.Args[1] @@ -36750,7 +31787,6 @@ func rewriteValueARM64_OpRsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x8 x y) - // cond: // result: (SRA x (CSEL {OpARM64LessThanU} (ZeroExt8to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt8to64 y)))) for { y := v.Args[1] @@ -36779,7 +31815,6 @@ func rewriteValueARM64_OpRsh8Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux16 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt8to64 x) (ZeroExt16to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt16to64 y))) for { t := v.Type @@ -36811,7 +31846,6 @@ func rewriteValueARM64_OpRsh8Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux32 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt8to64 x) (ZeroExt32to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt32to64 y))) for { t := v.Type @@ -36843,7 +31877,6 @@ func rewriteValueARM64_OpRsh8Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux64 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt8to64 x) y) (Const64 [0]) (CMPconst [64] y)) for { t := v.Type @@ -36871,7 +31904,6 @@ func rewriteValueARM64_OpRsh8Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux8 x y) - // cond: // result: (CSEL {OpARM64LessThanU} (SRL (ZeroExt8to64 x) (ZeroExt8to64 y)) (Const64 [0]) (CMPconst [64] (ZeroExt8to64 y))) for { t := v.Type @@ -36903,7 +31935,6 @@ func rewriteValueARM64_OpRsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x16 x y) - // cond: // result: (SRA (SignExt8to64 x) (CSEL {OpARM64LessThanU} (ZeroExt16to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt16to64 y)))) for { y := v.Args[1] @@ -36934,7 +31965,6 @@ func rewriteValueARM64_OpRsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x32 x y) - // cond: // result: (SRA (SignExt8to64 x) (CSEL {OpARM64LessThanU} (ZeroExt32to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt32to64 y)))) for { y := v.Args[1] @@ -36965,7 +31995,6 @@ func rewriteValueARM64_OpRsh8x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x64 x y) - // cond: // result: (SRA (SignExt8to64 x) (CSEL {OpARM64LessThanU} y (Const64 [63]) (CMPconst [64] y))) for { y := v.Args[1] @@ -36992,7 +32021,6 @@ func rewriteValueARM64_OpRsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x8 x y) - // cond: // result: (SRA (SignExt8to64 x) (CSEL {OpARM64LessThanU} (ZeroExt8to64 y) (Const64 [63]) (CMPconst [64] (ZeroExt8to64 y)))) for { y := v.Args[1] @@ -37023,7 +32051,6 @@ func rewriteValueARM64_OpSelect0_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select0 (Add64carry x y c)) - // cond: // result: (Select0 (ADCSflags x y (Select1 (ADDSconstflags [-1] c)))) for { v_0 := v.Args[0] @@ -37048,7 +32075,6 @@ func rewriteValueARM64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Sub64borrow x y bo)) - // cond: // result: (Select0 (SBCSflags x y (Select1 (NEGSflags bo)))) for { v_0 := v.Args[0] @@ -37077,7 +32103,6 @@ func rewriteValueARM64_OpSelect1_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select1 (Add64carry x y c)) - // cond: // result: (ADCzerocarry (Select1 (ADCSflags x y (Select1 (ADDSconstflags [-1] c))))) for { v_0 := v.Args[0] @@ -37104,7 +32129,6 @@ func rewriteValueARM64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Sub64borrow x y bo)) - // cond: // result: (NEG (NGCzerocarry (Select1 (SBCSflags x y (Select1 (NEGSflags bo)))))) for { v_0 := v.Args[0] @@ -37135,7 +32159,6 @@ func rewriteValueARM64_OpSelect1_0(v *Value) bool { } func rewriteValueARM64_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -37146,7 +32169,6 @@ func rewriteValueARM64_OpSignExt16to32_0(v *Value) bool { } func rewriteValueARM64_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -37157,7 +32179,6 @@ func rewriteValueARM64_OpSignExt16to64_0(v *Value) bool { } func rewriteValueARM64_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 x) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -37168,7 +32189,6 @@ func rewriteValueARM64_OpSignExt32to64_0(v *Value) bool { } func rewriteValueARM64_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -37179,7 +32199,6 @@ func rewriteValueARM64_OpSignExt8to16_0(v *Value) bool { } func rewriteValueARM64_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -37190,7 +32209,6 @@ func rewriteValueARM64_OpSignExt8to32_0(v *Value) bool { } func rewriteValueARM64_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -37202,7 +32220,6 @@ func rewriteValueARM64_OpSignExt8to64_0(v *Value) bool { func rewriteValueARM64_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRAconst (NEG x) [63]) for { t := v.Type @@ -37217,7 +32234,6 @@ func rewriteValueARM64_OpSlicemask_0(v *Value) bool { } func rewriteValueARM64_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (FSQRTD x) for { x := v.Args[0] @@ -37228,7 +32244,6 @@ func rewriteValueARM64_OpSqrt_0(v *Value) bool { } func rewriteValueARM64_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -37348,7 +32363,6 @@ func rewriteValueARM64_OpStore_0(v *Value) bool { } func rewriteValueARM64_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -37361,7 +32375,6 @@ func rewriteValueARM64_OpSub16_0(v *Value) bool { } func rewriteValueARM64_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -37374,7 +32387,6 @@ func rewriteValueARM64_OpSub32_0(v *Value) bool { } func rewriteValueARM64_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (FSUBS x y) for { y := v.Args[1] @@ -37387,7 +32399,6 @@ func rewriteValueARM64_OpSub32F_0(v *Value) bool { } func rewriteValueARM64_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -37400,7 +32411,6 @@ func rewriteValueARM64_OpSub64_0(v *Value) bool { } func rewriteValueARM64_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (FSUBD x y) for { y := v.Args[1] @@ -37413,7 +32423,6 @@ func rewriteValueARM64_OpSub64F_0(v *Value) bool { } func rewriteValueARM64_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -37426,7 +32435,6 @@ func rewriteValueARM64_OpSub8_0(v *Value) bool { } func rewriteValueARM64_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -37439,7 +32447,6 @@ func rewriteValueARM64_OpSubPtr_0(v *Value) bool { } func rewriteValueARM64_OpTrunc_0(v *Value) bool { // match: (Trunc x) - // cond: // result: (FRINTZD x) for { x := v.Args[0] @@ -37450,7 +32457,6 @@ func rewriteValueARM64_OpTrunc_0(v *Value) bool { } func rewriteValueARM64_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -37462,7 +32468,6 @@ func rewriteValueARM64_OpTrunc16to8_0(v *Value) bool { } func rewriteValueARM64_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -37474,7 +32479,6 @@ func rewriteValueARM64_OpTrunc32to16_0(v *Value) bool { } func rewriteValueARM64_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -37486,7 +32490,6 @@ func rewriteValueARM64_OpTrunc32to8_0(v *Value) bool { } func rewriteValueARM64_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 x) - // cond: // result: x for { x := v.Args[0] @@ -37498,7 +32501,6 @@ func rewriteValueARM64_OpTrunc64to16_0(v *Value) bool { } func rewriteValueARM64_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 x) - // cond: // result: x for { x := v.Args[0] @@ -37510,7 +32512,6 @@ func rewriteValueARM64_OpTrunc64to32_0(v *Value) bool { } func rewriteValueARM64_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 x) - // cond: // result: x for { x := v.Args[0] @@ -37522,7 +32523,6 @@ func rewriteValueARM64_OpTrunc64to8_0(v *Value) bool { } func rewriteValueARM64_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -37539,7 +32539,6 @@ func rewriteValueARM64_OpWB_0(v *Value) bool { } func rewriteValueARM64_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -37552,7 +32551,6 @@ func rewriteValueARM64_OpXor16_0(v *Value) bool { } func rewriteValueARM64_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -37565,7 +32563,6 @@ func rewriteValueARM64_OpXor32_0(v *Value) bool { } func rewriteValueARM64_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -37578,7 +32575,6 @@ func rewriteValueARM64_OpXor64_0(v *Value) bool { } func rewriteValueARM64_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -37593,7 +32589,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -37606,7 +32601,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [1] ptr mem) - // cond: // result: (MOVBstore ptr (MOVDconst [0]) mem) for { if v.AuxInt != 1 { @@ -37623,7 +32617,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [2] ptr mem) - // cond: // result: (MOVHstore ptr (MOVDconst [0]) mem) for { if v.AuxInt != 2 { @@ -37640,7 +32633,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [4] ptr mem) - // cond: // result: (MOVWstore ptr (MOVDconst [0]) mem) for { if v.AuxInt != 4 { @@ -37657,7 +32649,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [8] ptr mem) - // cond: // result: (MOVDstore ptr (MOVDconst [0]) mem) for { if v.AuxInt != 8 { @@ -37674,7 +32665,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [3] ptr mem) - // cond: // result: (MOVBstore [2] ptr (MOVDconst [0]) (MOVHstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 3 { @@ -37698,7 +32688,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [5] ptr mem) - // cond: // result: (MOVBstore [4] ptr (MOVDconst [0]) (MOVWstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 5 { @@ -37722,7 +32711,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [6] ptr mem) - // cond: // result: (MOVHstore [4] ptr (MOVDconst [0]) (MOVWstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 6 { @@ -37746,7 +32734,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [7] ptr mem) - // cond: // result: (MOVBstore [6] ptr (MOVDconst [0]) (MOVHstore [4] ptr (MOVDconst [0]) (MOVWstore ptr (MOVDconst [0]) mem))) for { if v.AuxInt != 7 { @@ -37777,7 +32764,6 @@ func rewriteValueARM64_OpZero_0(v *Value) bool { return true } // match: (Zero [9] ptr mem) - // cond: // result: (MOVBstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 9 { @@ -37806,7 +32792,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [10] ptr mem) - // cond: // result: (MOVHstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 10 { @@ -37830,7 +32815,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [11] ptr mem) - // cond: // result: (MOVBstore [10] ptr (MOVDconst [0]) (MOVHstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem))) for { if v.AuxInt != 11 { @@ -37861,7 +32845,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [12] ptr mem) - // cond: // result: (MOVWstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem)) for { if v.AuxInt != 12 { @@ -37885,7 +32868,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [13] ptr mem) - // cond: // result: (MOVBstore [12] ptr (MOVDconst [0]) (MOVWstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem))) for { if v.AuxInt != 13 { @@ -37916,7 +32898,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [14] ptr mem) - // cond: // result: (MOVHstore [12] ptr (MOVDconst [0]) (MOVWstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem))) for { if v.AuxInt != 14 { @@ -37947,7 +32928,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [15] ptr mem) - // cond: // result: (MOVBstore [14] ptr (MOVDconst [0]) (MOVHstore [12] ptr (MOVDconst [0]) (MOVWstore [8] ptr (MOVDconst [0]) (MOVDstore ptr (MOVDconst [0]) mem)))) for { if v.AuxInt != 15 { @@ -37985,7 +32965,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [16] ptr mem) - // cond: // result: (STP [0] ptr (MOVDconst [0]) (MOVDconst [0]) mem) for { if v.AuxInt != 16 { @@ -38006,7 +32985,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [32] ptr mem) - // cond: // result: (STP [16] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [0] ptr (MOVDconst [0]) (MOVDconst [0]) mem)) for { if v.AuxInt != 32 { @@ -38037,7 +33015,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [48] ptr mem) - // cond: // result: (STP [32] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [16] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [0] ptr (MOVDconst [0]) (MOVDconst [0]) mem))) for { if v.AuxInt != 48 { @@ -38078,7 +33055,6 @@ func rewriteValueARM64_OpZero_10(v *Value) bool { return true } // match: (Zero [64] ptr mem) - // cond: // result: (STP [48] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [32] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [16] ptr (MOVDconst [0]) (MOVDconst [0]) (STP [0] ptr (MOVDconst [0]) (MOVDconst [0]) mem)))) for { if v.AuxInt != 64 { @@ -38218,7 +33194,6 @@ func rewriteValueARM64_OpZero_20(v *Value) bool { } func rewriteValueARM64_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -38229,7 +33204,6 @@ func rewriteValueARM64_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueARM64_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -38240,7 +33214,6 @@ func rewriteValueARM64_OpZeroExt16to64_0(v *Value) bool { } func rewriteValueARM64_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 x) - // cond: // result: (MOVWUreg x) for { x := v.Args[0] @@ -38251,7 +33224,6 @@ func rewriteValueARM64_OpZeroExt32to64_0(v *Value) bool { } func rewriteValueARM64_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -38262,7 +33234,6 @@ func rewriteValueARM64_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueARM64_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -38273,7 +33244,6 @@ func rewriteValueARM64_OpZeroExt8to32_0(v *Value) bool { } func rewriteValueARM64_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -38523,7 +33493,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (CMPconst [0] x) yes no) - // cond: // result: (Z x yes no) for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { @@ -38536,7 +33505,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (CMPWconst [0] x) yes no) - // cond: // result: (ZW x yes no) for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { @@ -38689,7 +33657,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -38698,7 +33665,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -38708,7 +33674,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -38718,7 +33683,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -38728,7 +33692,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -38738,7 +33701,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -38749,7 +33711,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64FGE: // match: (FGE (InvertFlags cmp) yes no) - // cond: // result: (FLE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -38760,7 +33721,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64FGT: // match: (FGT (InvertFlags cmp) yes no) - // cond: // result: (FLT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -38771,7 +33731,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64FLE: // match: (FLE (InvertFlags cmp) yes no) - // cond: // result: (FGE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -38782,7 +33741,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64FLT: // match: (FLT (InvertFlags cmp) yes no) - // cond: // result: (FGT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -39141,7 +34099,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (CMPWconst [0] x) yes no) - // cond: // result: (TBZ {int64(31)} x yes no) for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { @@ -39154,7 +34111,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (CMPconst [0] x) yes no) - // cond: // result: (TBZ {int64(63)} x yes no) for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { @@ -39167,7 +34123,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -39176,7 +34131,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -39186,7 +34140,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -39196,7 +34149,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -39205,7 +34157,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -39214,7 +34165,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -39573,7 +34523,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -39583,7 +34532,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -39593,7 +34541,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -39603,7 +34550,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -39612,7 +34558,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -39621,7 +34566,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -39632,7 +34576,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockIf: // match: (If (Equal cc) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpARM64Equal { cc := v.Args[0] @@ -39642,7 +34585,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (NotEqual cc) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpARM64NotEqual { cc := v.Args[0] @@ -39652,7 +34594,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessThan cc) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpARM64LessThan { cc := v.Args[0] @@ -39662,7 +34603,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessThanU cc) yes no) - // cond: // result: (ULT cc yes no) for v.Op == OpARM64LessThanU { cc := v.Args[0] @@ -39672,7 +34612,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessEqual cc) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpARM64LessEqual { cc := v.Args[0] @@ -39682,7 +34621,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessEqualU cc) yes no) - // cond: // result: (ULE cc yes no) for v.Op == OpARM64LessEqualU { cc := v.Args[0] @@ -39692,7 +34630,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterThan cc) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpARM64GreaterThan { cc := v.Args[0] @@ -39702,7 +34639,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterThanU cc) yes no) - // cond: // result: (UGT cc yes no) for v.Op == OpARM64GreaterThanU { cc := v.Args[0] @@ -39712,7 +34648,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterEqual cc) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpARM64GreaterEqual { cc := v.Args[0] @@ -39722,7 +34657,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterEqualU cc) yes no) - // cond: // result: (UGE cc yes no) for v.Op == OpARM64GreaterEqualU { cc := v.Args[0] @@ -39732,7 +34666,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessThanF cc) yes no) - // cond: // result: (FLT cc yes no) for v.Op == OpARM64LessThanF { cc := v.Args[0] @@ -39742,7 +34675,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (LessEqualF cc) yes no) - // cond: // result: (FLE cc yes no) for v.Op == OpARM64LessEqualF { cc := v.Args[0] @@ -39752,7 +34684,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterThanF cc) yes no) - // cond: // result: (FGT cc yes no) for v.Op == OpARM64GreaterThanF { cc := v.Args[0] @@ -39762,7 +34693,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If (GreaterEqualF cc) yes no) - // cond: // result: (FGE cc yes no) for v.Op == OpARM64GreaterEqualF { cc := v.Args[0] @@ -39772,7 +34702,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NZ cond yes no) for { cond := b.Control @@ -40131,7 +35060,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -40140,7 +35068,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -40149,7 +35076,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -40158,7 +35084,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -40168,7 +35093,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -40178,7 +35102,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -40537,7 +35460,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (CMPWconst [0] x) yes no) - // cond: // result: (TBNZ {int64(31)} x yes no) for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { @@ -40550,7 +35472,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (CMPconst [0] x) yes no) - // cond: // result: (TBNZ {int64(63)} x yes no) for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { @@ -40563,7 +35484,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -40573,7 +35493,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -40582,7 +35501,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -40591,7 +35509,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -40601,7 +35518,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -40611,7 +35527,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -40858,7 +35773,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (CMPconst [0] x) yes no) - // cond: // result: (NZ x yes no) for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { @@ -40871,7 +35785,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (CMPWconst [0] x) yes no) - // cond: // result: (NZW x yes no) for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { @@ -41024,7 +35937,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -41034,7 +35946,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -41043,7 +35954,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -41052,7 +35962,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -41061,7 +35970,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -41070,7 +35978,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -41081,7 +35988,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64NZ: // match: (NZ (Equal cc) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpARM64Equal { cc := v.Args[0] @@ -41091,7 +35997,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (NotEqual cc) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpARM64NotEqual { cc := v.Args[0] @@ -41101,7 +36006,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessThan cc) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpARM64LessThan { cc := v.Args[0] @@ -41111,7 +36015,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessThanU cc) yes no) - // cond: // result: (ULT cc yes no) for v.Op == OpARM64LessThanU { cc := v.Args[0] @@ -41121,7 +36024,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessEqual cc) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpARM64LessEqual { cc := v.Args[0] @@ -41131,7 +36033,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessEqualU cc) yes no) - // cond: // result: (ULE cc yes no) for v.Op == OpARM64LessEqualU { cc := v.Args[0] @@ -41141,7 +36042,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterThan cc) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpARM64GreaterThan { cc := v.Args[0] @@ -41151,7 +36051,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterThanU cc) yes no) - // cond: // result: (UGT cc yes no) for v.Op == OpARM64GreaterThanU { cc := v.Args[0] @@ -41161,7 +36060,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterEqual cc) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpARM64GreaterEqual { cc := v.Args[0] @@ -41171,7 +36069,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterEqualU cc) yes no) - // cond: // result: (UGE cc yes no) for v.Op == OpARM64GreaterEqualU { cc := v.Args[0] @@ -41181,7 +36078,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessThanF cc) yes no) - // cond: // result: (FLT cc yes no) for v.Op == OpARM64LessThanF { cc := v.Args[0] @@ -41191,7 +36087,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (LessEqualF cc) yes no) - // cond: // result: (FLE cc yes no) for v.Op == OpARM64LessEqualF { cc := v.Args[0] @@ -41201,7 +36096,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterThanF cc) yes no) - // cond: // result: (FGT cc yes no) for v.Op == OpARM64GreaterThanF { cc := v.Args[0] @@ -41211,7 +36105,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (GreaterEqualF cc) yes no) - // cond: // result: (FGE cc yes no) for v.Op == OpARM64GreaterEqualF { cc := v.Args[0] @@ -41235,7 +36128,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (NZ (MOVDconst [0]) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64MOVDconst { if v.AuxInt != 0 { @@ -41304,7 +36196,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64UGE: // match: (UGE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -41313,7 +36204,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGE (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -41323,7 +36213,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGE (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -41332,7 +36221,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGE (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -41342,7 +36230,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGE (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -41351,7 +36238,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGE (InvertFlags cmp) yes no) - // cond: // result: (ULE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -41362,7 +36248,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64UGT: // match: (UGT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -41372,7 +36257,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGT (FlagLT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -41382,7 +36266,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGT (FlagLT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -41391,7 +36274,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGT (FlagGT_ULT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -41401,7 +36283,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGT (FlagGT_UGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -41410,7 +36291,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (UGT (InvertFlags cmp) yes no) - // cond: // result: (ULT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -41421,7 +36301,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64ULE: // match: (ULE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -41430,7 +36309,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULE (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -41439,7 +36317,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULE (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -41449,7 +36326,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULE (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -41458,7 +36334,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULE (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -41468,7 +36343,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULE (InvertFlags cmp) yes no) - // cond: // result: (UGE cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -41479,7 +36353,6 @@ func rewriteBlockARM64(b *Block) bool { } case BlockARM64ULT: // match: (ULT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst @@ -41489,7 +36362,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULT (FlagLT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst @@ -41498,7 +36370,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULT (FlagLT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst @@ -41508,7 +36379,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULT (FlagGT_ULT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst @@ -41517,7 +36387,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULT (FlagGT_UGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst @@ -41527,7 +36396,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (ULT (InvertFlags cmp) yes no) - // cond: // result: (UGT cmp yes no) for v.Op == OpARM64InvertFlags { cmp := v.Args[0] @@ -41552,7 +36420,6 @@ func rewriteBlockARM64(b *Block) bool { return true } // match: (Z (MOVDconst [0]) yes no) - // cond: // result: (First nil yes no) for v.Op == OpARM64MOVDconst { if v.AuxInt != 0 { diff --git a/src/cmd/compile/internal/ssa/rewriteMIPS.go b/src/cmd/compile/internal/ssa/rewriteMIPS.go index 5ce0ec36f7..98bb5f3168 100644 --- a/src/cmd/compile/internal/ssa/rewriteMIPS.go +++ b/src/cmd/compile/internal/ssa/rewriteMIPS.go @@ -522,7 +522,6 @@ func rewriteValueMIPS(v *Value) bool { } func rewriteValueMIPS_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -535,7 +534,6 @@ func rewriteValueMIPS_OpAdd16_0(v *Value) bool { } func rewriteValueMIPS_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -548,7 +546,6 @@ func rewriteValueMIPS_OpAdd32_0(v *Value) bool { } func rewriteValueMIPS_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (ADDF x y) for { y := v.Args[1] @@ -562,7 +559,6 @@ func rewriteValueMIPS_OpAdd32F_0(v *Value) bool { func rewriteValueMIPS_OpAdd32withcarry_0(v *Value) bool { b := v.Block // match: (Add32withcarry x y c) - // cond: // result: (ADD c (ADD x y)) for { t := v.Type @@ -580,7 +576,6 @@ func rewriteValueMIPS_OpAdd32withcarry_0(v *Value) bool { } func rewriteValueMIPS_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (ADDD x y) for { y := v.Args[1] @@ -593,7 +588,6 @@ func rewriteValueMIPS_OpAdd64F_0(v *Value) bool { } func rewriteValueMIPS_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -606,7 +600,6 @@ func rewriteValueMIPS_OpAdd8_0(v *Value) bool { } func rewriteValueMIPS_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -619,7 +612,6 @@ func rewriteValueMIPS_OpAddPtr_0(v *Value) bool { } func rewriteValueMIPS_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (MOVWaddr {sym} base) for { sym := v.Aux @@ -632,7 +624,6 @@ func rewriteValueMIPS_OpAddr_0(v *Value) bool { } func rewriteValueMIPS_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -645,7 +636,6 @@ func rewriteValueMIPS_OpAnd16_0(v *Value) bool { } func rewriteValueMIPS_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -658,7 +648,6 @@ func rewriteValueMIPS_OpAnd32_0(v *Value) bool { } func rewriteValueMIPS_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -671,7 +660,6 @@ func rewriteValueMIPS_OpAnd8_0(v *Value) bool { } func rewriteValueMIPS_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -684,7 +672,6 @@ func rewriteValueMIPS_OpAndB_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicAdd32_0(v *Value) bool { // match: (AtomicAdd32 ptr val mem) - // cond: // result: (LoweredAtomicAdd ptr val mem) for { mem := v.Args[2] @@ -809,7 +796,6 @@ func rewriteValueMIPS_OpAtomicAnd8_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicCompareAndSwap32_0(v *Value) bool { // match: (AtomicCompareAndSwap32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas ptr old new_ mem) for { mem := v.Args[3] @@ -826,7 +812,6 @@ func rewriteValueMIPS_OpAtomicCompareAndSwap32_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicExchange32_0(v *Value) bool { // match: (AtomicExchange32 ptr val mem) - // cond: // result: (LoweredAtomicExchange ptr val mem) for { mem := v.Args[2] @@ -841,7 +826,6 @@ func rewriteValueMIPS_OpAtomicExchange32_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicLoad32_0(v *Value) bool { // match: (AtomicLoad32 ptr mem) - // cond: // result: (LoweredAtomicLoad ptr mem) for { mem := v.Args[1] @@ -854,7 +838,6 @@ func rewriteValueMIPS_OpAtomicLoad32_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicLoadPtr_0(v *Value) bool { // match: (AtomicLoadPtr ptr mem) - // cond: // result: (LoweredAtomicLoad ptr mem) for { mem := v.Args[1] @@ -940,7 +923,6 @@ func rewriteValueMIPS_OpAtomicOr8_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicStore32_0(v *Value) bool { // match: (AtomicStore32 ptr val mem) - // cond: // result: (LoweredAtomicStore ptr val mem) for { mem := v.Args[2] @@ -955,7 +937,6 @@ func rewriteValueMIPS_OpAtomicStore32_0(v *Value) bool { } func rewriteValueMIPS_OpAtomicStorePtrNoWB_0(v *Value) bool { // match: (AtomicStorePtrNoWB ptr val mem) - // cond: // result: (LoweredAtomicStore ptr val mem) for { mem := v.Args[2] @@ -971,7 +952,6 @@ func rewriteValueMIPS_OpAtomicStorePtrNoWB_0(v *Value) bool { func rewriteValueMIPS_OpAvg32u_0(v *Value) bool { b := v.Block // match: (Avg32u x y) - // cond: // result: (ADD (SRLconst (SUB x y) [1]) y) for { t := v.Type @@ -993,7 +973,6 @@ func rewriteValueMIPS_OpBitLen32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen32 x) - // cond: // result: (SUB (MOVWconst [32]) (CLZ x)) for { t := v.Type @@ -1010,7 +989,6 @@ func rewriteValueMIPS_OpBitLen32_0(v *Value) bool { } func rewriteValueMIPS_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -1027,7 +1005,6 @@ func rewriteValueMIPS_OpClosureCall_0(v *Value) bool { } func rewriteValueMIPS_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (NORconst [0] x) for { x := v.Args[0] @@ -1039,7 +1016,6 @@ func rewriteValueMIPS_OpCom16_0(v *Value) bool { } func rewriteValueMIPS_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (NORconst [0] x) for { x := v.Args[0] @@ -1051,7 +1027,6 @@ func rewriteValueMIPS_OpCom32_0(v *Value) bool { } func rewriteValueMIPS_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (NORconst [0] x) for { x := v.Args[0] @@ -1063,7 +1038,6 @@ func rewriteValueMIPS_OpCom8_0(v *Value) bool { } func rewriteValueMIPS_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -1074,7 +1048,6 @@ func rewriteValueMIPS_OpConst16_0(v *Value) bool { } func rewriteValueMIPS_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -1085,7 +1058,6 @@ func rewriteValueMIPS_OpConst32_0(v *Value) bool { } func rewriteValueMIPS_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (MOVFconst [val]) for { val := v.AuxInt @@ -1096,7 +1068,6 @@ func rewriteValueMIPS_OpConst32F_0(v *Value) bool { } func rewriteValueMIPS_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1107,7 +1078,6 @@ func rewriteValueMIPS_OpConst64F_0(v *Value) bool { } func rewriteValueMIPS_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVWconst [val]) for { val := v.AuxInt @@ -1118,7 +1088,6 @@ func rewriteValueMIPS_OpConst8_0(v *Value) bool { } func rewriteValueMIPS_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVWconst [b]) for { b := v.AuxInt @@ -1129,7 +1098,6 @@ func rewriteValueMIPS_OpConstBool_0(v *Value) bool { } func rewriteValueMIPS_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVWconst [0]) for { v.reset(OpMIPSMOVWconst) @@ -1141,7 +1109,6 @@ func rewriteValueMIPS_OpCtz32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz32 x) - // cond: // result: (SUB (MOVWconst [32]) (CLZ (SUBconst [1] (AND x (NEG x))))) for { t := v.Type @@ -1166,7 +1133,6 @@ func rewriteValueMIPS_OpCtz32_0(v *Value) bool { } func rewriteValueMIPS_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -1177,7 +1143,6 @@ func rewriteValueMIPS_OpCtz32NonZero_0(v *Value) bool { } func rewriteValueMIPS_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (TRUNCFW x) for { x := v.Args[0] @@ -1188,7 +1153,6 @@ func rewriteValueMIPS_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueMIPS_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (MOVFD x) for { x := v.Args[0] @@ -1199,7 +1163,6 @@ func rewriteValueMIPS_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueMIPS_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (MOVWF x) for { x := v.Args[0] @@ -1210,7 +1173,6 @@ func rewriteValueMIPS_OpCvt32to32F_0(v *Value) bool { } func rewriteValueMIPS_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (MOVWD x) for { x := v.Args[0] @@ -1221,7 +1183,6 @@ func rewriteValueMIPS_OpCvt32to64F_0(v *Value) bool { } func rewriteValueMIPS_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (TRUNCDW x) for { x := v.Args[0] @@ -1232,7 +1193,6 @@ func rewriteValueMIPS_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueMIPS_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (MOVDF x) for { x := v.Args[0] @@ -1245,7 +1205,6 @@ func rewriteValueMIPS_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (Select1 (DIV (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -1266,7 +1225,6 @@ func rewriteValueMIPS_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (Select1 (DIVU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -1287,7 +1245,6 @@ func rewriteValueMIPS_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 x y) - // cond: // result: (Select1 (DIV x y)) for { y := v.Args[1] @@ -1302,7 +1259,6 @@ func rewriteValueMIPS_OpDiv32_0(v *Value) bool { } func rewriteValueMIPS_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (DIVF x y) for { y := v.Args[1] @@ -1317,7 +1273,6 @@ func rewriteValueMIPS_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (Select1 (DIVU x y)) for { y := v.Args[1] @@ -1332,7 +1287,6 @@ func rewriteValueMIPS_OpDiv32u_0(v *Value) bool { } func rewriteValueMIPS_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (DIVD x y) for { y := v.Args[1] @@ -1347,7 +1301,6 @@ func rewriteValueMIPS_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (Select1 (DIV (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -1368,7 +1321,6 @@ func rewriteValueMIPS_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (Select1 (DIVU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -1389,7 +1341,6 @@ func rewriteValueMIPS_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (SGTUconst [1] (XOR (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -1411,7 +1362,6 @@ func rewriteValueMIPS_OpEq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32 x y) - // cond: // result: (SGTUconst [1] (XOR x y)) for { y := v.Args[1] @@ -1428,7 +1378,6 @@ func rewriteValueMIPS_OpEq32_0(v *Value) bool { func rewriteValueMIPS_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (FPFlagTrue (CMPEQF x y)) for { y := v.Args[1] @@ -1444,7 +1393,6 @@ func rewriteValueMIPS_OpEq32F_0(v *Value) bool { func rewriteValueMIPS_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (FPFlagTrue (CMPEQD x y)) for { y := v.Args[1] @@ -1461,7 +1409,6 @@ func rewriteValueMIPS_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (SGTUconst [1] (XOR (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -1483,7 +1430,6 @@ func rewriteValueMIPS_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (XORconst [1] (XOR x y)) for { y := v.Args[1] @@ -1501,7 +1447,6 @@ func rewriteValueMIPS_OpEqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqPtr x y) - // cond: // result: (SGTUconst [1] (XOR x y)) for { y := v.Args[1] @@ -1519,7 +1464,6 @@ func rewriteValueMIPS_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (XORconst [1] (SGT (SignExt16to32 y) (SignExt16to32 x))) for { y := v.Args[1] @@ -1541,7 +1485,6 @@ func rewriteValueMIPS_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (XORconst [1] (SGTU (ZeroExt16to32 y) (ZeroExt16to32 x))) for { y := v.Args[1] @@ -1563,7 +1506,6 @@ func rewriteValueMIPS_OpGeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32 x y) - // cond: // result: (XORconst [1] (SGT y x)) for { y := v.Args[1] @@ -1580,7 +1522,6 @@ func rewriteValueMIPS_OpGeq32_0(v *Value) bool { func rewriteValueMIPS_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (FPFlagTrue (CMPGEF x y)) for { y := v.Args[1] @@ -1597,7 +1538,6 @@ func rewriteValueMIPS_OpGeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32U x y) - // cond: // result: (XORconst [1] (SGTU y x)) for { y := v.Args[1] @@ -1614,7 +1554,6 @@ func rewriteValueMIPS_OpGeq32U_0(v *Value) bool { func rewriteValueMIPS_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (FPFlagTrue (CMPGED x y)) for { y := v.Args[1] @@ -1631,7 +1570,6 @@ func rewriteValueMIPS_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (XORconst [1] (SGT (SignExt8to32 y) (SignExt8to32 x))) for { y := v.Args[1] @@ -1653,7 +1591,6 @@ func rewriteValueMIPS_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (XORconst [1] (SGTU (ZeroExt8to32 y) (ZeroExt8to32 x))) for { y := v.Args[1] @@ -1673,7 +1610,6 @@ func rewriteValueMIPS_OpGeq8U_0(v *Value) bool { } func rewriteValueMIPS_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpMIPSLoweredGetCallerPC) @@ -1682,7 +1618,6 @@ func rewriteValueMIPS_OpGetCallerPC_0(v *Value) bool { } func rewriteValueMIPS_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpMIPSLoweredGetCallerSP) @@ -1691,7 +1626,6 @@ func rewriteValueMIPS_OpGetCallerSP_0(v *Value) bool { } func rewriteValueMIPS_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpMIPSLoweredGetClosurePtr) @@ -1702,7 +1636,6 @@ func rewriteValueMIPS_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (SGT (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -1721,7 +1654,6 @@ func rewriteValueMIPS_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (SGTU (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -1738,7 +1670,6 @@ func rewriteValueMIPS_OpGreater16U_0(v *Value) bool { } func rewriteValueMIPS_OpGreater32_0(v *Value) bool { // match: (Greater32 x y) - // cond: // result: (SGT x y) for { y := v.Args[1] @@ -1752,7 +1683,6 @@ func rewriteValueMIPS_OpGreater32_0(v *Value) bool { func rewriteValueMIPS_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (FPFlagTrue (CMPGTF x y)) for { y := v.Args[1] @@ -1767,7 +1697,6 @@ func rewriteValueMIPS_OpGreater32F_0(v *Value) bool { } func rewriteValueMIPS_OpGreater32U_0(v *Value) bool { // match: (Greater32U x y) - // cond: // result: (SGTU x y) for { y := v.Args[1] @@ -1781,7 +1710,6 @@ func rewriteValueMIPS_OpGreater32U_0(v *Value) bool { func rewriteValueMIPS_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (FPFlagTrue (CMPGTD x y)) for { y := v.Args[1] @@ -1798,7 +1726,6 @@ func rewriteValueMIPS_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (SGT (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -1817,7 +1744,6 @@ func rewriteValueMIPS_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (SGTU (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -1836,7 +1762,6 @@ func rewriteValueMIPS_OpHmul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32 x y) - // cond: // result: (Select0 (MULT x y)) for { y := v.Args[1] @@ -1853,7 +1778,6 @@ func rewriteValueMIPS_OpHmul32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32u x y) - // cond: // result: (Select0 (MULTU x y)) for { y := v.Args[1] @@ -1868,7 +1792,6 @@ func rewriteValueMIPS_OpHmul32u_0(v *Value) bool { } func rewriteValueMIPS_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -1883,7 +1806,6 @@ func rewriteValueMIPS_OpInterCall_0(v *Value) bool { } func rewriteValueMIPS_OpIsInBounds_0(v *Value) bool { // match: (IsInBounds idx len) - // cond: // result: (SGTU len idx) for { len := v.Args[1] @@ -1898,7 +1820,6 @@ func rewriteValueMIPS_OpIsNonNil_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsNonNil ptr) - // cond: // result: (SGTU ptr (MOVWconst [0])) for { ptr := v.Args[0] @@ -1914,7 +1835,6 @@ func rewriteValueMIPS_OpIsSliceInBounds_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsSliceInBounds idx len) - // cond: // result: (XORconst [1] (SGTU idx len)) for { len := v.Args[1] @@ -1932,7 +1852,6 @@ func rewriteValueMIPS_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (XORconst [1] (SGT (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -1954,7 +1873,6 @@ func rewriteValueMIPS_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (XORconst [1] (SGTU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -1976,7 +1894,6 @@ func rewriteValueMIPS_OpLeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32 x y) - // cond: // result: (XORconst [1] (SGT x y)) for { y := v.Args[1] @@ -1993,7 +1910,6 @@ func rewriteValueMIPS_OpLeq32_0(v *Value) bool { func rewriteValueMIPS_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (FPFlagTrue (CMPGEF y x)) for { y := v.Args[1] @@ -2010,7 +1926,6 @@ func rewriteValueMIPS_OpLeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32U x y) - // cond: // result: (XORconst [1] (SGTU x y)) for { y := v.Args[1] @@ -2027,7 +1942,6 @@ func rewriteValueMIPS_OpLeq32U_0(v *Value) bool { func rewriteValueMIPS_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (FPFlagTrue (CMPGED y x)) for { y := v.Args[1] @@ -2044,7 +1958,6 @@ func rewriteValueMIPS_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (XORconst [1] (SGT (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -2066,7 +1979,6 @@ func rewriteValueMIPS_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (XORconst [1] (SGTU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -2088,7 +2000,6 @@ func rewriteValueMIPS_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (SGT (SignExt16to32 y) (SignExt16to32 x)) for { y := v.Args[1] @@ -2107,7 +2018,6 @@ func rewriteValueMIPS_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (SGTU (ZeroExt16to32 y) (ZeroExt16to32 x)) for { y := v.Args[1] @@ -2124,7 +2034,6 @@ func rewriteValueMIPS_OpLess16U_0(v *Value) bool { } func rewriteValueMIPS_OpLess32_0(v *Value) bool { // match: (Less32 x y) - // cond: // result: (SGT y x) for { y := v.Args[1] @@ -2138,7 +2047,6 @@ func rewriteValueMIPS_OpLess32_0(v *Value) bool { func rewriteValueMIPS_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (FPFlagTrue (CMPGTF y x)) for { y := v.Args[1] @@ -2153,7 +2061,6 @@ func rewriteValueMIPS_OpLess32F_0(v *Value) bool { } func rewriteValueMIPS_OpLess32U_0(v *Value) bool { // match: (Less32U x y) - // cond: // result: (SGTU y x) for { y := v.Args[1] @@ -2167,7 +2074,6 @@ func rewriteValueMIPS_OpLess32U_0(v *Value) bool { func rewriteValueMIPS_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (FPFlagTrue (CMPGTD y x)) for { y := v.Args[1] @@ -2184,7 +2090,6 @@ func rewriteValueMIPS_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (SGT (SignExt8to32 y) (SignExt8to32 x)) for { y := v.Args[1] @@ -2203,7 +2108,6 @@ func rewriteValueMIPS_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (SGTU (ZeroExt8to32 y) (ZeroExt8to32 x)) for { y := v.Args[1] @@ -2343,7 +2247,6 @@ func rewriteValueMIPS_OpLoad_0(v *Value) bool { } func rewriteValueMIPS_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVWaddr {sym} base) for { sym := v.Aux @@ -2359,7 +2262,6 @@ func rewriteValueMIPS_OpLsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x16 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -2388,7 +2290,6 @@ func rewriteValueMIPS_OpLsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x32 x y) - // cond: // result: (CMOVZ (SLL x y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -2452,7 +2353,6 @@ func rewriteValueMIPS_OpLsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x8 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -2481,7 +2381,6 @@ func rewriteValueMIPS_OpLsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x16 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -2510,7 +2409,6 @@ func rewriteValueMIPS_OpLsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x32 x y) - // cond: // result: (CMOVZ (SLL x y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -2574,7 +2472,6 @@ func rewriteValueMIPS_OpLsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x8 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -2603,7 +2500,6 @@ func rewriteValueMIPS_OpLsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x16 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -2632,7 +2528,6 @@ func rewriteValueMIPS_OpLsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x32 x y) - // cond: // result: (CMOVZ (SLL x y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -2696,7 +2591,6 @@ func rewriteValueMIPS_OpLsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x8 x y) - // cond: // result: (CMOVZ (SLL x (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -2723,7 +2617,6 @@ func rewriteValueMIPS_OpLsh8x8_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSADD_0(v *Value) bool { // match: (ADD x (MOVWconst [c])) - // cond: // result: (ADDconst [c] x) for { _ = v.Args[1] @@ -2739,7 +2632,6 @@ func rewriteValueMIPS_OpMIPSADD_0(v *Value) bool { return true } // match: (ADD (MOVWconst [c]) x) - // cond: // result: (ADDconst [c] x) for { x := v.Args[1] @@ -2754,7 +2646,6 @@ func rewriteValueMIPS_OpMIPSADD_0(v *Value) bool { return true } // match: (ADD x (NEG y)) - // cond: // result: (SUB x y) for { _ = v.Args[1] @@ -2770,7 +2661,6 @@ func rewriteValueMIPS_OpMIPSADD_0(v *Value) bool { return true } // match: (ADD (NEG y) x) - // cond: // result: (SUB x y) for { x := v.Args[1] @@ -2788,7 +2678,6 @@ func rewriteValueMIPS_OpMIPSADD_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { // match: (ADDconst [off1] (MOVWaddr [off2] {sym} ptr)) - // cond: // result: (MOVWaddr [off1+off2] {sym} ptr) for { off1 := v.AuxInt @@ -2806,7 +2695,6 @@ func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { return true } // match: (ADDconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -2819,7 +2707,6 @@ func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(c+d))]) for { c := v.AuxInt @@ -2833,7 +2720,6 @@ func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -2849,7 +2735,6 @@ func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [int64(int32(c-d))] x) for { c := v.AuxInt @@ -2869,7 +2754,6 @@ func rewriteValueMIPS_OpMIPSADDconst_0(v *Value) bool { func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { b := v.Block // match: (AND x (MOVWconst [c])) - // cond: // result: (ANDconst [c] x) for { _ = v.Args[1] @@ -2885,7 +2769,6 @@ func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { return true } // match: (AND (MOVWconst [c]) x) - // cond: // result: (ANDconst [c] x) for { x := v.Args[1] @@ -2900,7 +2783,6 @@ func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { return true } // match: (AND x x) - // cond: // result: x for { x := v.Args[1] @@ -2913,23 +2795,16 @@ func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { return true } // match: (AND (SGTUconst [1] x) (SGTUconst [1] y)) - // cond: // result: (SGTUconst [1] (OR x y)) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSSGTUconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpMIPSSGTUconst || v_0.AuxInt != 1 { break } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSSGTUconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpMIPSSGTUconst || v_1.AuxInt != 1 { break } y := v_1.Args[0] @@ -2942,23 +2817,16 @@ func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { return true } // match: (AND (SGTUconst [1] y) (SGTUconst [1] x)) - // cond: // result: (SGTUconst [1] (OR x y)) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSSGTUconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpMIPSSGTUconst || v_0.AuxInt != 1 { break } y := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSSGTUconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpMIPSSGTUconst || v_1.AuxInt != 1 { break } x := v_1.Args[0] @@ -2974,7 +2842,6 @@ func rewriteValueMIPS_OpMIPSAND_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSANDconst_0(v *Value) bool { // match: (ANDconst [0] _) - // cond: // result: (MOVWconst [0]) for { if v.AuxInt != 0 { @@ -2985,7 +2852,6 @@ func rewriteValueMIPS_OpMIPSANDconst_0(v *Value) bool { return true } // match: (ANDconst [-1] x) - // cond: // result: x for { if v.AuxInt != -1 { @@ -2998,7 +2864,6 @@ func rewriteValueMIPS_OpMIPSANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c&d]) for { c := v.AuxInt @@ -3012,7 +2877,6 @@ func rewriteValueMIPS_OpMIPSANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c&d] x) for { c := v.AuxInt @@ -3031,16 +2895,12 @@ func rewriteValueMIPS_OpMIPSANDconst_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSCMOVZ_0(v *Value) bool { // match: (CMOVZ _ f (MOVWconst [0])) - // cond: // result: f for { _ = v.Args[2] f := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpMIPSMOVWconst { - break - } - if v_2.AuxInt != 0 { + if v_2.Op != OpMIPSMOVWconst || v_2.AuxInt != 0 { break } v.reset(OpCopy) @@ -3068,16 +2928,12 @@ func rewriteValueMIPS_OpMIPSCMOVZ_0(v *Value) bool { return true } // match: (CMOVZ a (MOVWconst [0]) c) - // cond: // result: (CMOVZzero a c) for { c := v.Args[2] a := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSCMOVZzero) @@ -3089,15 +2945,11 @@ func rewriteValueMIPS_OpMIPSCMOVZ_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSCMOVZzero_0(v *Value) bool { // match: (CMOVZzero _ (MOVWconst [0])) - // cond: // result: (MOVWconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -3150,16 +3002,12 @@ func rewriteValueMIPS_OpMIPSLoweredAtomicAdd_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSLoweredAtomicStore_0(v *Value) bool { // match: (LoweredAtomicStore ptr (MOVWconst [0]) mem) - // cond: // result: (LoweredAtomicStorezero ptr mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSLoweredAtomicStorezero) @@ -3246,7 +3094,6 @@ func rewriteValueMIPS_OpMIPSMOVBUload_0(v *Value) bool { func rewriteValueMIPS_OpMIPSMOVBUreg_0(v *Value) bool { b := v.Block // match: (MOVBUreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -3259,7 +3106,6 @@ func rewriteValueMIPS_OpMIPSMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -3297,7 +3143,6 @@ func rewriteValueMIPS_OpMIPSMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&0xff] x) for { v_0 := v.Args[0] @@ -3312,7 +3157,6 @@ func rewriteValueMIPS_OpMIPSMOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(uint8(c))]) for { v_0 := v.Args[0] @@ -3403,7 +3247,6 @@ func rewriteValueMIPS_OpMIPSMOVBload_0(v *Value) bool { func rewriteValueMIPS_OpMIPSMOVBreg_0(v *Value) bool { b := v.Block // match: (MOVBreg x:(MOVBload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -3416,7 +3259,6 @@ func rewriteValueMIPS_OpMIPSMOVBreg_0(v *Value) bool { return true } // match: (MOVBreg x:(MOVBreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -3472,7 +3314,6 @@ func rewriteValueMIPS_OpMIPSMOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int8(c))]) for { v_0 := v.Args[0] @@ -3539,7 +3380,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWconst [0]) mem) - // cond: // result: (MOVBstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -3547,10 +3387,7 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSMOVBstorezero) @@ -3561,7 +3398,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3582,7 +3418,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3603,7 +3438,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3624,7 +3458,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3645,7 +3478,6 @@ func rewriteValueMIPS_OpMIPSMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4052,7 +3884,6 @@ func rewriteValueMIPS_OpMIPSMOVHUload_0(v *Value) bool { func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { b := v.Block // match: (MOVHUreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4065,7 +3896,6 @@ func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4078,7 +3908,6 @@ func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4090,7 +3919,6 @@ func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4128,7 +3956,6 @@ func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (ANDconst [c] x)) - // cond: // result: (ANDconst [c&0xffff] x) for { v_0 := v.Args[0] @@ -4143,7 +3970,6 @@ func rewriteValueMIPS_OpMIPSMOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -4234,7 +4060,6 @@ func rewriteValueMIPS_OpMIPSMOVHload_0(v *Value) bool { func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { b := v.Block // match: (MOVHreg x:(MOVBload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4247,7 +4072,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4260,7 +4084,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHload _ _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4273,7 +4096,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4285,7 +4107,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4297,7 +4118,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHreg _)) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -4353,7 +4173,6 @@ func rewriteValueMIPS_OpMIPSMOVHreg_0(v *Value) bool { return true } // match: (MOVHreg (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -4420,7 +4239,6 @@ func rewriteValueMIPS_OpMIPSMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWconst [0]) mem) - // cond: // result: (MOVHstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -4428,10 +4246,7 @@ func rewriteValueMIPS_OpMIPSMOVHstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSMOVHstorezero) @@ -4442,7 +4257,6 @@ func rewriteValueMIPS_OpMIPSMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4463,7 +4277,6 @@ func rewriteValueMIPS_OpMIPSMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4484,7 +4297,6 @@ func rewriteValueMIPS_OpMIPSMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4645,7 +4457,6 @@ func rewriteValueMIPS_OpMIPSMOVWreg_0(v *Value) bool { return true } // match: (MOVWreg (MOVWconst [c])) - // cond: // result: (MOVWconst [c]) for { v_0 := v.Args[0] @@ -4712,7 +4523,6 @@ func rewriteValueMIPS_OpMIPSMOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWconst [0]) mem) - // cond: // result: (MOVWstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -4720,10 +4530,7 @@ func rewriteValueMIPS_OpMIPSMOVWstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSMOVWstorezero) @@ -4734,7 +4541,6 @@ func rewriteValueMIPS_OpMIPSMOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4808,15 +4614,11 @@ func rewriteValueMIPS_OpMIPSMOVWstorezero_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { // match: (MUL (MOVWconst [0]) _) - // cond: // result: (MOVWconst [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVWconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpMIPSMOVWconst || v_0.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -4824,15 +4626,11 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL _ (MOVWconst [0])) - // cond: // result: (MOVWconst [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -4840,15 +4638,11 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVWconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpMIPSMOVWconst || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -4857,16 +4651,12 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL x (MOVWconst [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -4875,15 +4665,11 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [-1]) x) - // cond: // result: (NEG x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVWconst { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpMIPSMOVWconst || v_0.AuxInt != -1 { break } v.reset(OpMIPSNEG) @@ -4891,16 +4677,12 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL x (MOVWconst [-1])) - // cond: // result: (NEG x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != -1 { break } v.reset(OpMIPSNEG) @@ -4945,7 +4727,6 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [c]) (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -4964,7 +4745,6 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { return true } // match: (MUL (MOVWconst [d]) (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int32(c)*int32(d))]) for { _ = v.Args[1] @@ -4986,7 +4766,6 @@ func rewriteValueMIPS_OpMIPSMUL_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSNEG_0(v *Value) bool { // match: (NEG (MOVWconst [c])) - // cond: // result: (MOVWconst [int64(int32(-c))]) for { v_0 := v.Args[0] @@ -5002,7 +4781,6 @@ func rewriteValueMIPS_OpMIPSNEG_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSNOR_0(v *Value) bool { // match: (NOR x (MOVWconst [c])) - // cond: // result: (NORconst [c] x) for { _ = v.Args[1] @@ -5018,7 +4796,6 @@ func rewriteValueMIPS_OpMIPSNOR_0(v *Value) bool { return true } // match: (NOR (MOVWconst [c]) x) - // cond: // result: (NORconst [c] x) for { x := v.Args[1] @@ -5036,7 +4813,6 @@ func rewriteValueMIPS_OpMIPSNOR_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSNORconst_0(v *Value) bool { // match: (NORconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [^(c|d)]) for { c := v.AuxInt @@ -5054,7 +4830,6 @@ func rewriteValueMIPS_OpMIPSNORconst_0(v *Value) bool { func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { b := v.Block // match: (OR x (MOVWconst [c])) - // cond: // result: (ORconst [c] x) for { _ = v.Args[1] @@ -5070,7 +4845,6 @@ func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { return true } // match: (OR (MOVWconst [c]) x) - // cond: // result: (ORconst [c] x) for { x := v.Args[1] @@ -5085,7 +4859,6 @@ func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { return true } // match: (OR x x) - // cond: // result: x for { x := v.Args[1] @@ -5098,7 +4871,6 @@ func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { return true } // match: (OR (SGTUzero x) (SGTUzero y)) - // cond: // result: (SGTUzero (OR x y)) for { _ = v.Args[1] @@ -5120,7 +4892,6 @@ func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { return true } // match: (OR (SGTUzero y) (SGTUzero x)) - // cond: // result: (SGTUzero (OR x y)) for { _ = v.Args[1] @@ -5145,7 +4916,6 @@ func rewriteValueMIPS_OpMIPSOR_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSORconst_0(v *Value) bool { // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5158,7 +4928,6 @@ func rewriteValueMIPS_OpMIPSORconst_0(v *Value) bool { return true } // match: (ORconst [-1] _) - // cond: // result: (MOVWconst [-1]) for { if v.AuxInt != -1 { @@ -5169,7 +4938,6 @@ func rewriteValueMIPS_OpMIPSORconst_0(v *Value) bool { return true } // match: (ORconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c|d]) for { c := v.AuxInt @@ -5183,7 +4951,6 @@ func rewriteValueMIPS_OpMIPSORconst_0(v *Value) bool { return true } // match: (ORconst [c] (ORconst [d] x)) - // cond: // result: (ORconst [c|d] x) for { c := v.AuxInt @@ -5202,7 +4969,6 @@ func rewriteValueMIPS_OpMIPSORconst_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSGT_0(v *Value) bool { // match: (SGT (MOVWconst [c]) x) - // cond: // result: (SGTconst [c] x) for { x := v.Args[1] @@ -5217,16 +4983,12 @@ func rewriteValueMIPS_OpMIPSSGT_0(v *Value) bool { return true } // match: (SGT x (MOVWconst [0])) - // cond: // result: (SGTzero x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSSGTzero) @@ -5237,7 +4999,6 @@ func rewriteValueMIPS_OpMIPSSGT_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSGTU_0(v *Value) bool { // match: (SGTU (MOVWconst [c]) x) - // cond: // result: (SGTUconst [c] x) for { x := v.Args[1] @@ -5252,16 +5013,12 @@ func rewriteValueMIPS_OpMIPSSGTU_0(v *Value) bool { return true } // match: (SGTU x (MOVWconst [0])) - // cond: // result: (SGTUzero x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPSMOVWconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPSMOVWconst || v_1.AuxInt != 0 { break } v.reset(OpMIPSSGTUzero) @@ -5311,10 +5068,7 @@ func rewriteValueMIPS_OpMIPSSGTUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVBUreg { - break - } - if !(0xff < uint32(c)) { + if v_0.Op != OpMIPSMOVBUreg || !(0xff < uint32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5327,10 +5081,7 @@ func rewriteValueMIPS_OpMIPSSGTUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVHUreg { - break - } - if !(0xffff < uint32(c)) { + if v_0.Op != OpMIPSMOVHUreg || !(0xffff < uint32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5449,10 +5200,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVBreg { - break - } - if !(0x7f < int32(c)) { + if v_0.Op != OpMIPSMOVBreg || !(0x7f < int32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5465,10 +5213,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVBreg { - break - } - if !(int32(c) <= -0x80) { + if v_0.Op != OpMIPSMOVBreg || !(int32(c) <= -0x80) { break } v.reset(OpMIPSMOVWconst) @@ -5481,10 +5226,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVBUreg { - break - } - if !(0xff < int32(c)) { + if v_0.Op != OpMIPSMOVBUreg || !(0xff < int32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5497,10 +5239,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVBUreg { - break - } - if !(int32(c) < 0) { + if v_0.Op != OpMIPSMOVBUreg || !(int32(c) < 0) { break } v.reset(OpMIPSMOVWconst) @@ -5513,10 +5252,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVHreg { - break - } - if !(0x7fff < int32(c)) { + if v_0.Op != OpMIPSMOVHreg || !(0x7fff < int32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5529,10 +5265,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVHreg { - break - } - if !(int32(c) <= -0x8000) { + if v_0.Op != OpMIPSMOVHreg || !(int32(c) <= -0x8000) { break } v.reset(OpMIPSMOVWconst) @@ -5545,10 +5278,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVHUreg { - break - } - if !(0xffff < int32(c)) { + if v_0.Op != OpMIPSMOVHUreg || !(0xffff < int32(c)) { break } v.reset(OpMIPSMOVWconst) @@ -5561,10 +5291,7 @@ func rewriteValueMIPS_OpMIPSSGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVHUreg { - break - } - if !(int32(c) < 0) { + if v_0.Op != OpMIPSMOVHUreg || !(int32(c) < 0) { break } v.reset(OpMIPSMOVWconst) @@ -5664,7 +5391,6 @@ func rewriteValueMIPS_OpMIPSSLL_0(v *Value) bool { return true } // match: (SLL x (MOVWconst [c])) - // cond: // result: (SLLconst x [c]) for { _ = v.Args[1] @@ -5683,7 +5409,6 @@ func rewriteValueMIPS_OpMIPSSLL_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSLLconst_0(v *Value) bool { // match: (SLLconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(uint32(d)<>uint32(c))]) for { c := v.AuxInt @@ -5772,7 +5495,6 @@ func rewriteValueMIPS_OpMIPSSRL_0(v *Value) bool { return true } // match: (SRL x (MOVWconst [c])) - // cond: // result: (SRLconst x [c]) for { _ = v.Args[1] @@ -5791,7 +5513,6 @@ func rewriteValueMIPS_OpMIPSSRL_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSRLconst_0(v *Value) bool { // match: (SRLconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(uint32(d)>>uint32(c))]) for { c := v.AuxInt @@ -5808,7 +5529,6 @@ func rewriteValueMIPS_OpMIPSSRLconst_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSUB_0(v *Value) bool { // match: (SUB x (MOVWconst [c])) - // cond: // result: (SUBconst [c] x) for { _ = v.Args[1] @@ -5824,7 +5544,6 @@ func rewriteValueMIPS_OpMIPSSUB_0(v *Value) bool { return true } // match: (SUB x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -5836,15 +5555,11 @@ func rewriteValueMIPS_OpMIPSSUB_0(v *Value) bool { return true } // match: (SUB (MOVWconst [0]) x) - // cond: // result: (NEG x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPSMOVWconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpMIPSMOVWconst || v_0.AuxInt != 0 { break } v.reset(OpMIPSNEG) @@ -5855,7 +5570,6 @@ func rewriteValueMIPS_OpMIPSSUB_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSSUBconst_0(v *Value) bool { // match: (SUBconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5868,7 +5582,6 @@ func rewriteValueMIPS_OpMIPSSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [int64(int32(d-c))]) for { c := v.AuxInt @@ -5882,7 +5595,6 @@ func rewriteValueMIPS_OpMIPSSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (SUBconst [d] x)) - // cond: // result: (ADDconst [int64(int32(-c-d))] x) for { c := v.AuxInt @@ -5898,7 +5610,6 @@ func rewriteValueMIPS_OpMIPSSUBconst_0(v *Value) bool { return true } // match: (SUBconst [c] (ADDconst [d] x)) - // cond: // result: (ADDconst [int64(int32(-c+d))] x) for { c := v.AuxInt @@ -5917,7 +5628,6 @@ func rewriteValueMIPS_OpMIPSSUBconst_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSXOR_0(v *Value) bool { // match: (XOR x (MOVWconst [c])) - // cond: // result: (XORconst [c] x) for { _ = v.Args[1] @@ -5933,7 +5643,6 @@ func rewriteValueMIPS_OpMIPSXOR_0(v *Value) bool { return true } // match: (XOR (MOVWconst [c]) x) - // cond: // result: (XORconst [c] x) for { x := v.Args[1] @@ -5948,7 +5657,6 @@ func rewriteValueMIPS_OpMIPSXOR_0(v *Value) bool { return true } // match: (XOR x x) - // cond: // result: (MOVWconst [0]) for { x := v.Args[1] @@ -5963,7 +5671,6 @@ func rewriteValueMIPS_OpMIPSXOR_0(v *Value) bool { } func rewriteValueMIPS_OpMIPSXORconst_0(v *Value) bool { // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5976,7 +5683,6 @@ func rewriteValueMIPS_OpMIPSXORconst_0(v *Value) bool { return true } // match: (XORconst [-1] x) - // cond: // result: (NORconst [0] x) for { if v.AuxInt != -1 { @@ -5989,7 +5695,6 @@ func rewriteValueMIPS_OpMIPSXORconst_0(v *Value) bool { return true } // match: (XORconst [c] (MOVWconst [d])) - // cond: // result: (MOVWconst [c^d]) for { c := v.AuxInt @@ -6003,7 +5708,6 @@ func rewriteValueMIPS_OpMIPSXORconst_0(v *Value) bool { return true } // match: (XORconst [c] (XORconst [d] x)) - // cond: // result: (XORconst [c^d] x) for { c := v.AuxInt @@ -6024,7 +5728,6 @@ func rewriteValueMIPS_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (Select0 (DIV (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -6045,7 +5748,6 @@ func rewriteValueMIPS_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (Select0 (DIVU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -6066,7 +5768,6 @@ func rewriteValueMIPS_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (Select0 (DIV x y)) for { y := v.Args[1] @@ -6083,7 +5784,6 @@ func rewriteValueMIPS_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (Select0 (DIVU x y)) for { y := v.Args[1] @@ -6100,7 +5800,6 @@ func rewriteValueMIPS_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (Select0 (DIV (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -6121,7 +5820,6 @@ func rewriteValueMIPS_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (Select0 (DIVU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -6142,7 +5840,6 @@ func rewriteValueMIPS_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -6155,7 +5852,6 @@ func rewriteValueMIPS_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBUload src mem) mem) for { if v.AuxInt != 1 { @@ -6197,7 +5893,6 @@ func rewriteValueMIPS_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem)) for { if v.AuxInt != 2 { @@ -6280,7 +5975,6 @@ func rewriteValueMIPS_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVBstore [3] dst (MOVBUload [3] src mem) (MOVBstore [2] dst (MOVBUload [2] src mem) (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem)))) for { if v.AuxInt != 4 { @@ -6326,7 +6020,6 @@ func rewriteValueMIPS_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBUload [2] src mem) (MOVBstore [1] dst (MOVBUload [1] src mem) (MOVBstore dst (MOVBUload src mem) mem))) for { if v.AuxInt != 3 { @@ -6609,7 +6302,6 @@ func rewriteValueMIPS_OpMove_10(v *Value) bool { } func rewriteValueMIPS_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -6622,7 +6314,6 @@ func rewriteValueMIPS_OpMul16_0(v *Value) bool { } func rewriteValueMIPS_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -6635,7 +6326,6 @@ func rewriteValueMIPS_OpMul32_0(v *Value) bool { } func rewriteValueMIPS_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (MULF x y) for { y := v.Args[1] @@ -6648,7 +6338,6 @@ func rewriteValueMIPS_OpMul32F_0(v *Value) bool { } func rewriteValueMIPS_OpMul32uhilo_0(v *Value) bool { // match: (Mul32uhilo x y) - // cond: // result: (MULTU x y) for { y := v.Args[1] @@ -6661,7 +6350,6 @@ func rewriteValueMIPS_OpMul32uhilo_0(v *Value) bool { } func rewriteValueMIPS_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (MULD x y) for { y := v.Args[1] @@ -6674,7 +6362,6 @@ func rewriteValueMIPS_OpMul64F_0(v *Value) bool { } func rewriteValueMIPS_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MUL x y) for { y := v.Args[1] @@ -6687,7 +6374,6 @@ func rewriteValueMIPS_OpMul8_0(v *Value) bool { } func rewriteValueMIPS_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -6698,7 +6384,6 @@ func rewriteValueMIPS_OpNeg16_0(v *Value) bool { } func rewriteValueMIPS_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -6709,7 +6394,6 @@ func rewriteValueMIPS_OpNeg32_0(v *Value) bool { } func rewriteValueMIPS_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (NEGF x) for { x := v.Args[0] @@ -6720,7 +6404,6 @@ func rewriteValueMIPS_OpNeg32F_0(v *Value) bool { } func rewriteValueMIPS_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (NEGD x) for { x := v.Args[0] @@ -6731,7 +6414,6 @@ func rewriteValueMIPS_OpNeg64F_0(v *Value) bool { } func rewriteValueMIPS_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -6744,7 +6426,6 @@ func rewriteValueMIPS_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (SGTU (XOR (ZeroExt16to32 x) (ZeroExt16to32 y)) (MOVWconst [0])) for { y := v.Args[1] @@ -6768,7 +6449,6 @@ func rewriteValueMIPS_OpNeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq32 x y) - // cond: // result: (SGTU (XOR x y) (MOVWconst [0])) for { y := v.Args[1] @@ -6787,7 +6467,6 @@ func rewriteValueMIPS_OpNeq32_0(v *Value) bool { func rewriteValueMIPS_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (FPFlagFalse (CMPEQF x y)) for { y := v.Args[1] @@ -6803,7 +6482,6 @@ func rewriteValueMIPS_OpNeq32F_0(v *Value) bool { func rewriteValueMIPS_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (FPFlagFalse (CMPEQD x y)) for { y := v.Args[1] @@ -6820,7 +6498,6 @@ func rewriteValueMIPS_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (SGTU (XOR (ZeroExt8to32 x) (ZeroExt8to32 y)) (MOVWconst [0])) for { y := v.Args[1] @@ -6842,7 +6519,6 @@ func rewriteValueMIPS_OpNeq8_0(v *Value) bool { } func rewriteValueMIPS_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -6857,7 +6533,6 @@ func rewriteValueMIPS_OpNeqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqPtr x y) - // cond: // result: (SGTU (XOR x y) (MOVWconst [0])) for { y := v.Args[1] @@ -6875,7 +6550,6 @@ func rewriteValueMIPS_OpNeqPtr_0(v *Value) bool { } func rewriteValueMIPS_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -6888,7 +6562,6 @@ func rewriteValueMIPS_OpNilCheck_0(v *Value) bool { } func rewriteValueMIPS_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORconst [1] x) for { x := v.Args[0] @@ -6900,7 +6573,6 @@ func rewriteValueMIPS_OpNot_0(v *Value) bool { } func rewriteValueMIPS_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr:(SP)) - // cond: // result: (MOVWaddr [off] ptr) for { off := v.AuxInt @@ -6914,7 +6586,6 @@ func rewriteValueMIPS_OpOffPtr_0(v *Value) bool { return true } // match: (OffPtr [off] ptr) - // cond: // result: (ADDconst [off] ptr) for { off := v.AuxInt @@ -6927,7 +6598,6 @@ func rewriteValueMIPS_OpOffPtr_0(v *Value) bool { } func rewriteValueMIPS_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -6940,7 +6610,6 @@ func rewriteValueMIPS_OpOr16_0(v *Value) bool { } func rewriteValueMIPS_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -6953,7 +6622,6 @@ func rewriteValueMIPS_OpOr32_0(v *Value) bool { } func rewriteValueMIPS_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -6966,7 +6634,6 @@ func rewriteValueMIPS_OpOr8_0(v *Value) bool { } func rewriteValueMIPS_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7101,7 +6768,6 @@ func rewriteValueMIPS_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVWconst [c])) - // cond: // result: (Or16 (Lsh16x32 x (MOVWconst [c&15])) (Rsh16Ux32 x (MOVWconst [-c&15]))) for { t := v.Type @@ -7133,7 +6799,6 @@ func rewriteValueMIPS_OpRotateLeft32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft32 x (MOVWconst [c])) - // cond: // result: (Or32 (Lsh32x32 x (MOVWconst [c&31])) (Rsh32Ux32 x (MOVWconst [-c&31]))) for { t := v.Type @@ -7165,7 +6830,6 @@ func rewriteValueMIPS_OpRotateLeft64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft64 x (MOVWconst [c])) - // cond: // result: (Or64 (Lsh64x32 x (MOVWconst [c&63])) (Rsh64Ux32 x (MOVWconst [-c&63]))) for { t := v.Type @@ -7197,7 +6861,6 @@ func rewriteValueMIPS_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVWconst [c])) - // cond: // result: (Or8 (Lsh8x32 x (MOVWconst [c&7])) (Rsh8Ux32 x (MOVWconst [-c&7]))) for { t := v.Type @@ -7227,7 +6890,6 @@ func rewriteValueMIPS_OpRotateLeft8_0(v *Value) bool { } func rewriteValueMIPS_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -7239,7 +6901,6 @@ func rewriteValueMIPS_OpRound32F_0(v *Value) bool { } func rewriteValueMIPS_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -7253,7 +6914,6 @@ func rewriteValueMIPS_OpRsh16Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux16 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt16to32 x) (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -7284,7 +6944,6 @@ func rewriteValueMIPS_OpRsh16Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux32 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt16to32 x) y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -7355,7 +7014,6 @@ func rewriteValueMIPS_OpRsh16Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux8 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt16to32 x) (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -7386,7 +7044,6 @@ func rewriteValueMIPS_OpRsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x16 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ (ZeroExt16to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt16to32 y)))) for { y := v.Args[1] @@ -7416,7 +7073,6 @@ func rewriteValueMIPS_OpRsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x32 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ y (MOVWconst [-1]) (SGTUconst [32] y))) for { y := v.Args[1] @@ -7491,7 +7147,6 @@ func rewriteValueMIPS_OpRsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x8 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ (ZeroExt8to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt8to32 y)))) for { y := v.Args[1] @@ -7521,7 +7176,6 @@ func rewriteValueMIPS_OpRsh32Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux16 x y) - // cond: // result: (CMOVZ (SRL x (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -7550,7 +7204,6 @@ func rewriteValueMIPS_OpRsh32Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux32 x y) - // cond: // result: (CMOVZ (SRL x y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -7614,7 +7267,6 @@ func rewriteValueMIPS_OpRsh32Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux8 x y) - // cond: // result: (CMOVZ (SRL x (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -7643,7 +7295,6 @@ func rewriteValueMIPS_OpRsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x16 x y) - // cond: // result: (SRA x ( CMOVZ (ZeroExt16to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt16to32 y)))) for { y := v.Args[1] @@ -7671,7 +7322,6 @@ func rewriteValueMIPS_OpRsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x32 x y) - // cond: // result: (SRA x ( CMOVZ y (MOVWconst [-1]) (SGTUconst [32] y))) for { y := v.Args[1] @@ -7736,7 +7386,6 @@ func rewriteValueMIPS_OpRsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x8 x y) - // cond: // result: (SRA x ( CMOVZ (ZeroExt8to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt8to32 y)))) for { y := v.Args[1] @@ -7764,7 +7413,6 @@ func rewriteValueMIPS_OpRsh8Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux16 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt8to32 x) (ZeroExt16to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt16to32 y))) for { t := v.Type @@ -7795,7 +7443,6 @@ func rewriteValueMIPS_OpRsh8Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux32 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt8to32 x) y) (MOVWconst [0]) (SGTUconst [32] y)) for { t := v.Type @@ -7866,7 +7513,6 @@ func rewriteValueMIPS_OpRsh8Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux8 x y) - // cond: // result: (CMOVZ (SRL (ZeroExt8to32 x) (ZeroExt8to32 y) ) (MOVWconst [0]) (SGTUconst [32] (ZeroExt8to32 y))) for { t := v.Type @@ -7897,7 +7543,6 @@ func rewriteValueMIPS_OpRsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x16 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ (ZeroExt16to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt16to32 y)))) for { y := v.Args[1] @@ -7927,7 +7572,6 @@ func rewriteValueMIPS_OpRsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x32 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ y (MOVWconst [-1]) (SGTUconst [32] y))) for { y := v.Args[1] @@ -8002,7 +7646,6 @@ func rewriteValueMIPS_OpRsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x8 x y) - // cond: // result: (SRA (SignExt16to32 x) ( CMOVZ (ZeroExt8to32 y) (MOVWconst [-1]) (SGTUconst [32] (ZeroExt8to32 y)))) for { y := v.Args[1] @@ -8032,7 +7675,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select0 (Add32carry x y)) - // cond: // result: (ADD x y) for { v_0 := v.Args[0] @@ -8049,7 +7691,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Sub32carry x y)) - // cond: // result: (SUB x y) for { v_0 := v.Args[0] @@ -8066,7 +7707,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU (MOVWconst [0]) _)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8075,10 +7715,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -8086,7 +7723,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU _ (MOVWconst [0]))) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8095,10 +7731,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != 0 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -8106,7 +7739,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU (MOVWconst [1]) _)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8115,10 +7747,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != 1 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != 1 { break } v.reset(OpMIPSMOVWconst) @@ -8126,7 +7755,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU _ (MOVWconst [1]))) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8135,10 +7763,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != 1 { break } v.reset(OpMIPSMOVWconst) @@ -8146,7 +7771,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU (MOVWconst [-1]) x)) - // cond: // result: (CMOVZ (ADDconst [-1] x) (MOVWconst [0]) x) for { v_0 := v.Args[0] @@ -8155,10 +7779,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != -1 { break } v.reset(OpMIPSCMOVZ) @@ -8173,7 +7794,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (MULTU x (MOVWconst [-1]))) - // cond: // result: (CMOVZ (ADDconst [-1] x) (MOVWconst [0]) x) for { v_0 := v.Args[0] @@ -8183,10 +7803,7 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != -1 { break } v.reset(OpMIPSCMOVZ) @@ -8249,7 +7866,6 @@ func rewriteValueMIPS_OpSelect0_0(v *Value) bool { } func rewriteValueMIPS_OpSelect0_10(v *Value) bool { // match: (Select0 (MULTU (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [(c*d)>>32]) for { v_0 := v.Args[0] @@ -8272,7 +7888,6 @@ func rewriteValueMIPS_OpSelect0_10(v *Value) bool { return true } // match: (Select0 (MULTU (MOVWconst [d]) (MOVWconst [c]))) - // cond: // result: (MOVWconst [(c*d)>>32]) for { v_0 := v.Args[0] @@ -8295,7 +7910,6 @@ func rewriteValueMIPS_OpSelect0_10(v *Value) bool { return true } // match: (Select0 (DIV (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(c)%int32(d))]) for { v_0 := v.Args[0] @@ -8318,7 +7932,6 @@ func rewriteValueMIPS_OpSelect0_10(v *Value) bool { return true } // match: (Select0 (DIVU (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)%uint32(d)))]) for { v_0 := v.Args[0] @@ -8346,7 +7959,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select1 (Add32carry x y)) - // cond: // result: (SGTU x (ADD x y)) for { v_0 := v.Args[0] @@ -8366,7 +7978,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Sub32carry x y)) - // cond: // result: (SGTU (SUB x y) x) for { v_0 := v.Args[0] @@ -8386,7 +7997,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU (MOVWconst [0]) _)) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8395,10 +8005,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { } _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -8406,7 +8013,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU _ (MOVWconst [0]))) - // cond: // result: (MOVWconst [0]) for { v_0 := v.Args[0] @@ -8415,10 +8021,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != 0 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != 0 { break } v.reset(OpMIPSMOVWconst) @@ -8426,7 +8029,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU (MOVWconst [1]) x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -8435,10 +8037,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != 1 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -8447,7 +8046,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU x (MOVWconst [1]))) - // cond: // result: x for { v_0 := v.Args[0] @@ -8457,10 +8055,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -8469,7 +8064,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU (MOVWconst [-1]) x)) - // cond: // result: (NEG x) for { v_0 := v.Args[0] @@ -8478,10 +8072,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPSMOVWconst { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpMIPSMOVWconst || v_0_0.AuxInt != -1 { break } v.reset(OpMIPSNEG) @@ -8490,7 +8081,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULTU x (MOVWconst [-1]))) - // cond: // result: (NEG x) for { v_0 := v.Args[0] @@ -8500,10 +8090,7 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPSMOVWconst { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpMIPSMOVWconst || v_0_1.AuxInt != -1 { break } v.reset(OpMIPSNEG) @@ -8560,7 +8147,6 @@ func rewriteValueMIPS_OpSelect1_0(v *Value) bool { } func rewriteValueMIPS_OpSelect1_10(v *Value) bool { // match: (Select1 (MULTU (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)*uint32(d)))]) for { v_0 := v.Args[0] @@ -8583,7 +8169,6 @@ func rewriteValueMIPS_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULTU (MOVWconst [d]) (MOVWconst [c]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)*uint32(d)))]) for { v_0 := v.Args[0] @@ -8606,7 +8191,6 @@ func rewriteValueMIPS_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (DIV (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(c)/int32(d))]) for { v_0 := v.Args[0] @@ -8629,7 +8213,6 @@ func rewriteValueMIPS_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (DIVU (MOVWconst [c]) (MOVWconst [d]))) - // cond: // result: (MOVWconst [int64(int32(uint32(c)/uint32(d)))]) for { v_0 := v.Args[0] @@ -8655,7 +8238,6 @@ func rewriteValueMIPS_OpSelect1_10(v *Value) bool { } func rewriteValueMIPS_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -8666,7 +8248,6 @@ func rewriteValueMIPS_OpSignExt16to32_0(v *Value) bool { } func rewriteValueMIPS_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -8677,7 +8258,6 @@ func rewriteValueMIPS_OpSignExt8to16_0(v *Value) bool { } func rewriteValueMIPS_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -8688,7 +8268,6 @@ func rewriteValueMIPS_OpSignExt8to32_0(v *Value) bool { } func rewriteValueMIPS_OpSignmask_0(v *Value) bool { // match: (Signmask x) - // cond: // result: (SRAconst x [31]) for { x := v.Args[0] @@ -8701,7 +8280,6 @@ func rewriteValueMIPS_OpSignmask_0(v *Value) bool { func rewriteValueMIPS_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRAconst (NEG x) [31]) for { t := v.Type @@ -8716,7 +8294,6 @@ func rewriteValueMIPS_OpSlicemask_0(v *Value) bool { } func rewriteValueMIPS_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (SQRTD x) for { x := v.Args[0] @@ -8727,7 +8304,6 @@ func rewriteValueMIPS_OpSqrt_0(v *Value) bool { } func rewriteValueMIPS_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -8830,7 +8406,6 @@ func rewriteValueMIPS_OpStore_0(v *Value) bool { } func rewriteValueMIPS_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -8843,7 +8418,6 @@ func rewriteValueMIPS_OpSub16_0(v *Value) bool { } func rewriteValueMIPS_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -8856,7 +8430,6 @@ func rewriteValueMIPS_OpSub32_0(v *Value) bool { } func rewriteValueMIPS_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (SUBF x y) for { y := v.Args[1] @@ -8870,7 +8443,6 @@ func rewriteValueMIPS_OpSub32F_0(v *Value) bool { func rewriteValueMIPS_OpSub32withcarry_0(v *Value) bool { b := v.Block // match: (Sub32withcarry x y c) - // cond: // result: (SUB (SUB x y) c) for { t := v.Type @@ -8888,7 +8460,6 @@ func rewriteValueMIPS_OpSub32withcarry_0(v *Value) bool { } func rewriteValueMIPS_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (SUBD x y) for { y := v.Args[1] @@ -8901,7 +8472,6 @@ func rewriteValueMIPS_OpSub64F_0(v *Value) bool { } func rewriteValueMIPS_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -8914,7 +8484,6 @@ func rewriteValueMIPS_OpSub8_0(v *Value) bool { } func rewriteValueMIPS_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -8927,7 +8496,6 @@ func rewriteValueMIPS_OpSubPtr_0(v *Value) bool { } func rewriteValueMIPS_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -8939,7 +8507,6 @@ func rewriteValueMIPS_OpTrunc16to8_0(v *Value) bool { } func rewriteValueMIPS_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -8951,7 +8518,6 @@ func rewriteValueMIPS_OpTrunc32to16_0(v *Value) bool { } func rewriteValueMIPS_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -8963,7 +8529,6 @@ func rewriteValueMIPS_OpTrunc32to8_0(v *Value) bool { } func rewriteValueMIPS_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -8980,7 +8545,6 @@ func rewriteValueMIPS_OpWB_0(v *Value) bool { } func rewriteValueMIPS_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -8993,7 +8557,6 @@ func rewriteValueMIPS_OpXor16_0(v *Value) bool { } func rewriteValueMIPS_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9006,7 +8569,6 @@ func rewriteValueMIPS_OpXor32_0(v *Value) bool { } func rewriteValueMIPS_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9021,7 +8583,6 @@ func rewriteValueMIPS_OpZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -9034,7 +8595,6 @@ func rewriteValueMIPS_OpZero_0(v *Value) bool { return true } // match: (Zero [1] ptr mem) - // cond: // result: (MOVBstore ptr (MOVWconst [0]) mem) for { if v.AuxInt != 1 { @@ -9072,7 +8632,6 @@ func rewriteValueMIPS_OpZero_0(v *Value) bool { return true } // match: (Zero [2] ptr mem) - // cond: // result: (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem)) for { if v.AuxInt != 2 { @@ -9147,7 +8706,6 @@ func rewriteValueMIPS_OpZero_0(v *Value) bool { return true } // match: (Zero [4] ptr mem) - // cond: // result: (MOVBstore [3] ptr (MOVWconst [0]) (MOVBstore [2] ptr (MOVWconst [0]) (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem)))) for { if v.AuxInt != 4 { @@ -9186,7 +8744,6 @@ func rewriteValueMIPS_OpZero_0(v *Value) bool { return true } // match: (Zero [3] ptr mem) - // cond: // result: (MOVBstore [2] ptr (MOVWconst [0]) (MOVBstore [1] ptr (MOVWconst [0]) (MOVBstore [0] ptr (MOVWconst [0]) mem))) for { if v.AuxInt != 3 { @@ -9392,7 +8949,6 @@ func rewriteValueMIPS_OpZero_10(v *Value) bool { } func rewriteValueMIPS_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -9403,7 +8959,6 @@ func rewriteValueMIPS_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueMIPS_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -9414,7 +8969,6 @@ func rewriteValueMIPS_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueMIPS_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -9427,7 +8981,6 @@ func rewriteValueMIPS_OpZeromask_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zeromask x) - // cond: // result: (NEG (SGTU x (MOVWconst [0]))) for { x := v.Args[0] @@ -9446,7 +8999,6 @@ func rewriteBlockMIPS(b *Block) bool { switch b.Kind { case BlockMIPSEQ: // match: (EQ (FPFlagTrue cmp) yes no) - // cond: // result: (FPF cmp yes no) for v.Op == OpMIPSFPFlagTrue { cmp := v.Args[0] @@ -9456,7 +9008,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (FPFlagFalse cmp) yes no) - // cond: // result: (FPT cmp yes no) for v.Op == OpMIPSFPFlagFalse { cmp := v.Args[0] @@ -9466,7 +9017,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGT _ _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9483,7 +9033,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTU _ _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9500,7 +9049,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTconst _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9516,7 +9064,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTUconst _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9532,7 +9079,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTzero _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9548,7 +9094,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTUzero _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9564,7 +9109,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (SGTUconst [1] x) yes no) - // cond: // result: (NE x yes no) for v.Op == OpMIPSSGTUconst { if v.AuxInt != 1 { @@ -9577,7 +9121,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (SGTUzero x) yes no) - // cond: // result: (EQ x yes no) for v.Op == OpMIPSSGTUzero { x := v.Args[0] @@ -9587,7 +9130,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (SGTconst [0] x) yes no) - // cond: // result: (GEZ x yes no) for v.Op == OpMIPSSGTconst { if v.AuxInt != 0 { @@ -9600,7 +9142,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (SGTzero x) yes no) - // cond: // result: (LEZ x yes no) for v.Op == OpMIPSSGTzero { x := v.Args[0] @@ -9610,7 +9151,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (EQ (MOVWconst [0]) yes no) - // cond: // result: (First nil yes no) for v.Op == OpMIPSMOVWconst { if v.AuxInt != 0 { @@ -9693,7 +9233,6 @@ func rewriteBlockMIPS(b *Block) bool { } case BlockIf: // match: (If cond yes no) - // cond: // result: (NE cond yes no) for { cond := b.Control @@ -9760,7 +9299,6 @@ func rewriteBlockMIPS(b *Block) bool { } case BlockMIPSNE: // match: (NE (FPFlagTrue cmp) yes no) - // cond: // result: (FPT cmp yes no) for v.Op == OpMIPSFPFlagTrue { cmp := v.Args[0] @@ -9770,7 +9308,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (FPFlagFalse cmp) yes no) - // cond: // result: (FPF cmp yes no) for v.Op == OpMIPSFPFlagFalse { cmp := v.Args[0] @@ -9780,7 +9317,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGT _ _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9797,7 +9333,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTU _ _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9814,7 +9349,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTconst _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9830,7 +9364,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTUconst _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9846,7 +9379,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTzero _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9862,7 +9394,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTUzero _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { @@ -9878,7 +9409,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (SGTUconst [1] x) yes no) - // cond: // result: (EQ x yes no) for v.Op == OpMIPSSGTUconst { if v.AuxInt != 1 { @@ -9891,7 +9421,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (SGTUzero x) yes no) - // cond: // result: (NE x yes no) for v.Op == OpMIPSSGTUzero { x := v.Args[0] @@ -9901,7 +9430,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (SGTconst [0] x) yes no) - // cond: // result: (LTZ x yes no) for v.Op == OpMIPSSGTconst { if v.AuxInt != 0 { @@ -9914,7 +9442,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (SGTzero x) yes no) - // cond: // result: (GTZ x yes no) for v.Op == OpMIPSSGTzero { x := v.Args[0] @@ -9924,7 +9451,6 @@ func rewriteBlockMIPS(b *Block) bool { return true } // match: (NE (MOVWconst [0]) yes no) - // cond: // result: (First nil no yes) for v.Op == OpMIPSMOVWconst { if v.AuxInt != 0 { diff --git a/src/cmd/compile/internal/ssa/rewriteMIPS64.go b/src/cmd/compile/internal/ssa/rewriteMIPS64.go index a5a58b9bbe..1be27697aa 100644 --- a/src/cmd/compile/internal/ssa/rewriteMIPS64.go +++ b/src/cmd/compile/internal/ssa/rewriteMIPS64.go @@ -618,7 +618,6 @@ func rewriteValueMIPS64(v *Value) bool { } func rewriteValueMIPS64_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADDV x y) for { y := v.Args[1] @@ -631,7 +630,6 @@ func rewriteValueMIPS64_OpAdd16_0(v *Value) bool { } func rewriteValueMIPS64_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADDV x y) for { y := v.Args[1] @@ -644,7 +642,6 @@ func rewriteValueMIPS64_OpAdd32_0(v *Value) bool { } func rewriteValueMIPS64_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (ADDF x y) for { y := v.Args[1] @@ -657,7 +654,6 @@ func rewriteValueMIPS64_OpAdd32F_0(v *Value) bool { } func rewriteValueMIPS64_OpAdd64_0(v *Value) bool { // match: (Add64 x y) - // cond: // result: (ADDV x y) for { y := v.Args[1] @@ -670,7 +666,6 @@ func rewriteValueMIPS64_OpAdd64_0(v *Value) bool { } func rewriteValueMIPS64_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (ADDD x y) for { y := v.Args[1] @@ -683,7 +678,6 @@ func rewriteValueMIPS64_OpAdd64F_0(v *Value) bool { } func rewriteValueMIPS64_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADDV x y) for { y := v.Args[1] @@ -696,7 +690,6 @@ func rewriteValueMIPS64_OpAdd8_0(v *Value) bool { } func rewriteValueMIPS64_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADDV x y) for { y := v.Args[1] @@ -709,7 +702,6 @@ func rewriteValueMIPS64_OpAddPtr_0(v *Value) bool { } func rewriteValueMIPS64_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (MOVVaddr {sym} base) for { sym := v.Aux @@ -722,7 +714,6 @@ func rewriteValueMIPS64_OpAddr_0(v *Value) bool { } func rewriteValueMIPS64_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -735,7 +726,6 @@ func rewriteValueMIPS64_OpAnd16_0(v *Value) bool { } func rewriteValueMIPS64_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -748,7 +738,6 @@ func rewriteValueMIPS64_OpAnd32_0(v *Value) bool { } func rewriteValueMIPS64_OpAnd64_0(v *Value) bool { // match: (And64 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -761,7 +750,6 @@ func rewriteValueMIPS64_OpAnd64_0(v *Value) bool { } func rewriteValueMIPS64_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -774,7 +762,6 @@ func rewriteValueMIPS64_OpAnd8_0(v *Value) bool { } func rewriteValueMIPS64_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -787,7 +774,6 @@ func rewriteValueMIPS64_OpAndB_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicAdd32_0(v *Value) bool { // match: (AtomicAdd32 ptr val mem) - // cond: // result: (LoweredAtomicAdd32 ptr val mem) for { mem := v.Args[2] @@ -802,7 +788,6 @@ func rewriteValueMIPS64_OpAtomicAdd32_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicAdd64_0(v *Value) bool { // match: (AtomicAdd64 ptr val mem) - // cond: // result: (LoweredAtomicAdd64 ptr val mem) for { mem := v.Args[2] @@ -817,7 +802,6 @@ func rewriteValueMIPS64_OpAtomicAdd64_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicCompareAndSwap32_0(v *Value) bool { // match: (AtomicCompareAndSwap32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas32 ptr old new_ mem) for { mem := v.Args[3] @@ -834,7 +818,6 @@ func rewriteValueMIPS64_OpAtomicCompareAndSwap32_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicCompareAndSwap64_0(v *Value) bool { // match: (AtomicCompareAndSwap64 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas64 ptr old new_ mem) for { mem := v.Args[3] @@ -851,7 +834,6 @@ func rewriteValueMIPS64_OpAtomicCompareAndSwap64_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicExchange32_0(v *Value) bool { // match: (AtomicExchange32 ptr val mem) - // cond: // result: (LoweredAtomicExchange32 ptr val mem) for { mem := v.Args[2] @@ -866,7 +848,6 @@ func rewriteValueMIPS64_OpAtomicExchange32_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicExchange64_0(v *Value) bool { // match: (AtomicExchange64 ptr val mem) - // cond: // result: (LoweredAtomicExchange64 ptr val mem) for { mem := v.Args[2] @@ -881,7 +862,6 @@ func rewriteValueMIPS64_OpAtomicExchange64_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicLoad32_0(v *Value) bool { // match: (AtomicLoad32 ptr mem) - // cond: // result: (LoweredAtomicLoad32 ptr mem) for { mem := v.Args[1] @@ -894,7 +874,6 @@ func rewriteValueMIPS64_OpAtomicLoad32_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicLoad64_0(v *Value) bool { // match: (AtomicLoad64 ptr mem) - // cond: // result: (LoweredAtomicLoad64 ptr mem) for { mem := v.Args[1] @@ -907,7 +886,6 @@ func rewriteValueMIPS64_OpAtomicLoad64_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicLoad8_0(v *Value) bool { // match: (AtomicLoad8 ptr mem) - // cond: // result: (LoweredAtomicLoad8 ptr mem) for { mem := v.Args[1] @@ -920,7 +898,6 @@ func rewriteValueMIPS64_OpAtomicLoad8_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicLoadPtr_0(v *Value) bool { // match: (AtomicLoadPtr ptr mem) - // cond: // result: (LoweredAtomicLoad64 ptr mem) for { mem := v.Args[1] @@ -933,7 +910,6 @@ func rewriteValueMIPS64_OpAtomicLoadPtr_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicStore32_0(v *Value) bool { // match: (AtomicStore32 ptr val mem) - // cond: // result: (LoweredAtomicStore32 ptr val mem) for { mem := v.Args[2] @@ -948,7 +924,6 @@ func rewriteValueMIPS64_OpAtomicStore32_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicStore64_0(v *Value) bool { // match: (AtomicStore64 ptr val mem) - // cond: // result: (LoweredAtomicStore64 ptr val mem) for { mem := v.Args[2] @@ -963,7 +938,6 @@ func rewriteValueMIPS64_OpAtomicStore64_0(v *Value) bool { } func rewriteValueMIPS64_OpAtomicStorePtrNoWB_0(v *Value) bool { // match: (AtomicStorePtrNoWB ptr val mem) - // cond: // result: (LoweredAtomicStore64 ptr val mem) for { mem := v.Args[2] @@ -979,7 +953,6 @@ func rewriteValueMIPS64_OpAtomicStorePtrNoWB_0(v *Value) bool { func rewriteValueMIPS64_OpAvg64u_0(v *Value) bool { b := v.Block // match: (Avg64u x y) - // cond: // result: (ADDV (SRLVconst (SUBV x y) [1]) y) for { t := v.Type @@ -999,7 +972,6 @@ func rewriteValueMIPS64_OpAvg64u_0(v *Value) bool { } func rewriteValueMIPS64_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -1018,7 +990,6 @@ func rewriteValueMIPS64_OpCom16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com16 x) - // cond: // result: (NOR (MOVVconst [0]) x) for { x := v.Args[0] @@ -1034,7 +1005,6 @@ func rewriteValueMIPS64_OpCom32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com32 x) - // cond: // result: (NOR (MOVVconst [0]) x) for { x := v.Args[0] @@ -1050,7 +1020,6 @@ func rewriteValueMIPS64_OpCom64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com64 x) - // cond: // result: (NOR (MOVVconst [0]) x) for { x := v.Args[0] @@ -1066,7 +1035,6 @@ func rewriteValueMIPS64_OpCom8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com8 x) - // cond: // result: (NOR (MOVVconst [0]) x) for { x := v.Args[0] @@ -1080,7 +1048,6 @@ func rewriteValueMIPS64_OpCom8_0(v *Value) bool { } func rewriteValueMIPS64_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVVconst [val]) for { val := v.AuxInt @@ -1091,7 +1058,6 @@ func rewriteValueMIPS64_OpConst16_0(v *Value) bool { } func rewriteValueMIPS64_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVVconst [val]) for { val := v.AuxInt @@ -1102,7 +1068,6 @@ func rewriteValueMIPS64_OpConst32_0(v *Value) bool { } func rewriteValueMIPS64_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (MOVFconst [val]) for { val := v.AuxInt @@ -1113,7 +1078,6 @@ func rewriteValueMIPS64_OpConst32F_0(v *Value) bool { } func rewriteValueMIPS64_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (MOVVconst [val]) for { val := v.AuxInt @@ -1124,7 +1088,6 @@ func rewriteValueMIPS64_OpConst64_0(v *Value) bool { } func rewriteValueMIPS64_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1135,7 +1098,6 @@ func rewriteValueMIPS64_OpConst64F_0(v *Value) bool { } func rewriteValueMIPS64_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVVconst [val]) for { val := v.AuxInt @@ -1146,7 +1108,6 @@ func rewriteValueMIPS64_OpConst8_0(v *Value) bool { } func rewriteValueMIPS64_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVVconst [b]) for { b := v.AuxInt @@ -1157,7 +1118,6 @@ func rewriteValueMIPS64_OpConstBool_0(v *Value) bool { } func rewriteValueMIPS64_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVVconst [0]) for { v.reset(OpMIPS64MOVVconst) @@ -1167,7 +1127,6 @@ func rewriteValueMIPS64_OpConstNil_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (TRUNCFW x) for { x := v.Args[0] @@ -1178,7 +1137,6 @@ func rewriteValueMIPS64_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 x) - // cond: // result: (TRUNCFV x) for { x := v.Args[0] @@ -1189,7 +1147,6 @@ func rewriteValueMIPS64_OpCvt32Fto64_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (MOVFD x) for { x := v.Args[0] @@ -1200,7 +1157,6 @@ func rewriteValueMIPS64_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (MOVWF x) for { x := v.Args[0] @@ -1211,7 +1167,6 @@ func rewriteValueMIPS64_OpCvt32to32F_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (MOVWD x) for { x := v.Args[0] @@ -1222,7 +1177,6 @@ func rewriteValueMIPS64_OpCvt32to64F_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (TRUNCDW x) for { x := v.Args[0] @@ -1233,7 +1187,6 @@ func rewriteValueMIPS64_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (MOVDF x) for { x := v.Args[0] @@ -1244,7 +1197,6 @@ func rewriteValueMIPS64_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 x) - // cond: // result: (TRUNCDV x) for { x := v.Args[0] @@ -1255,7 +1207,6 @@ func rewriteValueMIPS64_OpCvt64Fto64_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F x) - // cond: // result: (MOVVF x) for { x := v.Args[0] @@ -1266,7 +1217,6 @@ func rewriteValueMIPS64_OpCvt64to32F_0(v *Value) bool { } func rewriteValueMIPS64_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F x) - // cond: // result: (MOVVD x) for { x := v.Args[0] @@ -1279,7 +1229,6 @@ func rewriteValueMIPS64_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (Select1 (DIVV (SignExt16to64 x) (SignExt16to64 y))) for { y := v.Args[1] @@ -1300,7 +1249,6 @@ func rewriteValueMIPS64_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (Select1 (DIVVU (ZeroExt16to64 x) (ZeroExt16to64 y))) for { y := v.Args[1] @@ -1321,7 +1269,6 @@ func rewriteValueMIPS64_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 x y) - // cond: // result: (Select1 (DIVV (SignExt32to64 x) (SignExt32to64 y))) for { y := v.Args[1] @@ -1340,7 +1287,6 @@ func rewriteValueMIPS64_OpDiv32_0(v *Value) bool { } func rewriteValueMIPS64_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (DIVF x y) for { y := v.Args[1] @@ -1355,7 +1301,6 @@ func rewriteValueMIPS64_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (Select1 (DIVVU (ZeroExt32to64 x) (ZeroExt32to64 y))) for { y := v.Args[1] @@ -1376,7 +1321,6 @@ func rewriteValueMIPS64_OpDiv64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div64 x y) - // cond: // result: (Select1 (DIVV x y)) for { y := v.Args[1] @@ -1391,7 +1335,6 @@ func rewriteValueMIPS64_OpDiv64_0(v *Value) bool { } func rewriteValueMIPS64_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (DIVD x y) for { y := v.Args[1] @@ -1406,7 +1349,6 @@ func rewriteValueMIPS64_OpDiv64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div64u x y) - // cond: // result: (Select1 (DIVVU x y)) for { y := v.Args[1] @@ -1423,7 +1365,6 @@ func rewriteValueMIPS64_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (Select1 (DIVV (SignExt8to64 x) (SignExt8to64 y))) for { y := v.Args[1] @@ -1444,7 +1385,6 @@ func rewriteValueMIPS64_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (Select1 (DIVVU (ZeroExt8to64 x) (ZeroExt8to64 y))) for { y := v.Args[1] @@ -1465,7 +1405,6 @@ func rewriteValueMIPS64_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (SGTU (MOVVconst [1]) (XOR (ZeroExt16to64 x) (ZeroExt16to64 y))) for { y := v.Args[1] @@ -1489,7 +1428,6 @@ func rewriteValueMIPS64_OpEq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32 x y) - // cond: // result: (SGTU (MOVVconst [1]) (XOR (ZeroExt32to64 x) (ZeroExt32to64 y))) for { y := v.Args[1] @@ -1512,7 +1450,6 @@ func rewriteValueMIPS64_OpEq32_0(v *Value) bool { func rewriteValueMIPS64_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (FPFlagTrue (CMPEQF x y)) for { y := v.Args[1] @@ -1529,7 +1466,6 @@ func rewriteValueMIPS64_OpEq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq64 x y) - // cond: // result: (SGTU (MOVVconst [1]) (XOR x y)) for { y := v.Args[1] @@ -1548,7 +1484,6 @@ func rewriteValueMIPS64_OpEq64_0(v *Value) bool { func rewriteValueMIPS64_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (FPFlagTrue (CMPEQD x y)) for { y := v.Args[1] @@ -1565,7 +1500,6 @@ func rewriteValueMIPS64_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (SGTU (MOVVconst [1]) (XOR (ZeroExt8to64 x) (ZeroExt8to64 y))) for { y := v.Args[1] @@ -1589,7 +1523,6 @@ func rewriteValueMIPS64_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (XOR (MOVVconst [1]) (XOR x y)) for { y := v.Args[1] @@ -1609,7 +1542,6 @@ func rewriteValueMIPS64_OpEqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqPtr x y) - // cond: // result: (SGTU (MOVVconst [1]) (XOR x y)) for { y := v.Args[1] @@ -1629,7 +1561,6 @@ func rewriteValueMIPS64_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt16to64 y) (SignExt16to64 x))) for { y := v.Args[1] @@ -1653,7 +1584,6 @@ func rewriteValueMIPS64_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt16to64 y) (ZeroExt16to64 x))) for { y := v.Args[1] @@ -1677,7 +1607,6 @@ func rewriteValueMIPS64_OpGeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt32to64 y) (SignExt32to64 x))) for { y := v.Args[1] @@ -1700,7 +1629,6 @@ func rewriteValueMIPS64_OpGeq32_0(v *Value) bool { func rewriteValueMIPS64_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (FPFlagTrue (CMPGEF x y)) for { y := v.Args[1] @@ -1717,7 +1645,6 @@ func rewriteValueMIPS64_OpGeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt32to64 y) (ZeroExt32to64 x))) for { y := v.Args[1] @@ -1741,7 +1668,6 @@ func rewriteValueMIPS64_OpGeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT y x)) for { y := v.Args[1] @@ -1760,7 +1686,6 @@ func rewriteValueMIPS64_OpGeq64_0(v *Value) bool { func rewriteValueMIPS64_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (FPFlagTrue (CMPGED x y)) for { y := v.Args[1] @@ -1777,7 +1702,6 @@ func rewriteValueMIPS64_OpGeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU y x)) for { y := v.Args[1] @@ -1797,7 +1721,6 @@ func rewriteValueMIPS64_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt8to64 y) (SignExt8to64 x))) for { y := v.Args[1] @@ -1821,7 +1744,6 @@ func rewriteValueMIPS64_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt8to64 y) (ZeroExt8to64 x))) for { y := v.Args[1] @@ -1843,7 +1765,6 @@ func rewriteValueMIPS64_OpGeq8U_0(v *Value) bool { } func rewriteValueMIPS64_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpMIPS64LoweredGetCallerPC) @@ -1852,7 +1773,6 @@ func rewriteValueMIPS64_OpGetCallerPC_0(v *Value) bool { } func rewriteValueMIPS64_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpMIPS64LoweredGetCallerSP) @@ -1861,7 +1781,6 @@ func rewriteValueMIPS64_OpGetCallerSP_0(v *Value) bool { } func rewriteValueMIPS64_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpMIPS64LoweredGetClosurePtr) @@ -1872,7 +1791,6 @@ func rewriteValueMIPS64_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (SGT (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -1891,7 +1809,6 @@ func rewriteValueMIPS64_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (SGTU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -1910,7 +1827,6 @@ func rewriteValueMIPS64_OpGreater32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32 x y) - // cond: // result: (SGT (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -1928,7 +1844,6 @@ func rewriteValueMIPS64_OpGreater32_0(v *Value) bool { func rewriteValueMIPS64_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (FPFlagTrue (CMPGTF x y)) for { y := v.Args[1] @@ -1945,7 +1860,6 @@ func rewriteValueMIPS64_OpGreater32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32U x y) - // cond: // result: (SGTU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -1962,7 +1876,6 @@ func rewriteValueMIPS64_OpGreater32U_0(v *Value) bool { } func rewriteValueMIPS64_OpGreater64_0(v *Value) bool { // match: (Greater64 x y) - // cond: // result: (SGT x y) for { y := v.Args[1] @@ -1976,7 +1889,6 @@ func rewriteValueMIPS64_OpGreater64_0(v *Value) bool { func rewriteValueMIPS64_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (FPFlagTrue (CMPGTD x y)) for { y := v.Args[1] @@ -1991,7 +1903,6 @@ func rewriteValueMIPS64_OpGreater64F_0(v *Value) bool { } func rewriteValueMIPS64_OpGreater64U_0(v *Value) bool { // match: (Greater64U x y) - // cond: // result: (SGTU x y) for { y := v.Args[1] @@ -2006,7 +1917,6 @@ func rewriteValueMIPS64_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (SGT (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -2025,7 +1935,6 @@ func rewriteValueMIPS64_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (SGTU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2044,7 +1953,6 @@ func rewriteValueMIPS64_OpHmul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32 x y) - // cond: // result: (SRAVconst (Select1 (MULV (SignExt32to64 x) (SignExt32to64 y))) [32]) for { y := v.Args[1] @@ -2068,7 +1976,6 @@ func rewriteValueMIPS64_OpHmul32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32u x y) - // cond: // result: (SRLVconst (Select1 (MULVU (ZeroExt32to64 x) (ZeroExt32to64 y))) [32]) for { y := v.Args[1] @@ -2092,7 +1999,6 @@ func rewriteValueMIPS64_OpHmul64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul64 x y) - // cond: // result: (Select0 (MULV x y)) for { y := v.Args[1] @@ -2109,7 +2015,6 @@ func rewriteValueMIPS64_OpHmul64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul64u x y) - // cond: // result: (Select0 (MULVU x y)) for { y := v.Args[1] @@ -2124,7 +2029,6 @@ func rewriteValueMIPS64_OpHmul64u_0(v *Value) bool { } func rewriteValueMIPS64_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -2139,7 +2043,6 @@ func rewriteValueMIPS64_OpInterCall_0(v *Value) bool { } func rewriteValueMIPS64_OpIsInBounds_0(v *Value) bool { // match: (IsInBounds idx len) - // cond: // result: (SGTU len idx) for { len := v.Args[1] @@ -2154,7 +2057,6 @@ func rewriteValueMIPS64_OpIsNonNil_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsNonNil ptr) - // cond: // result: (SGTU ptr (MOVVconst [0])) for { ptr := v.Args[0] @@ -2170,7 +2072,6 @@ func rewriteValueMIPS64_OpIsSliceInBounds_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsSliceInBounds idx len) - // cond: // result: (XOR (MOVVconst [1]) (SGTU idx len)) for { len := v.Args[1] @@ -2190,7 +2091,6 @@ func rewriteValueMIPS64_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt16to64 x) (SignExt16to64 y))) for { y := v.Args[1] @@ -2214,7 +2114,6 @@ func rewriteValueMIPS64_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt16to64 x) (ZeroExt16to64 y))) for { y := v.Args[1] @@ -2238,7 +2137,6 @@ func rewriteValueMIPS64_OpLeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt32to64 x) (SignExt32to64 y))) for { y := v.Args[1] @@ -2261,7 +2159,6 @@ func rewriteValueMIPS64_OpLeq32_0(v *Value) bool { func rewriteValueMIPS64_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (FPFlagTrue (CMPGEF y x)) for { y := v.Args[1] @@ -2278,7 +2175,6 @@ func rewriteValueMIPS64_OpLeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt32to64 x) (ZeroExt32to64 y))) for { y := v.Args[1] @@ -2302,7 +2198,6 @@ func rewriteValueMIPS64_OpLeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT x y)) for { y := v.Args[1] @@ -2321,7 +2216,6 @@ func rewriteValueMIPS64_OpLeq64_0(v *Value) bool { func rewriteValueMIPS64_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (FPFlagTrue (CMPGED y x)) for { y := v.Args[1] @@ -2338,7 +2232,6 @@ func rewriteValueMIPS64_OpLeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU x y)) for { y := v.Args[1] @@ -2358,7 +2251,6 @@ func rewriteValueMIPS64_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (XOR (MOVVconst [1]) (SGT (SignExt8to64 x) (SignExt8to64 y))) for { y := v.Args[1] @@ -2382,7 +2274,6 @@ func rewriteValueMIPS64_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (XOR (MOVVconst [1]) (SGTU (ZeroExt8to64 x) (ZeroExt8to64 y))) for { y := v.Args[1] @@ -2406,7 +2297,6 @@ func rewriteValueMIPS64_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (SGT (SignExt16to64 y) (SignExt16to64 x)) for { y := v.Args[1] @@ -2425,7 +2315,6 @@ func rewriteValueMIPS64_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (SGTU (ZeroExt16to64 y) (ZeroExt16to64 x)) for { y := v.Args[1] @@ -2444,7 +2333,6 @@ func rewriteValueMIPS64_OpLess32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32 x y) - // cond: // result: (SGT (SignExt32to64 y) (SignExt32to64 x)) for { y := v.Args[1] @@ -2462,7 +2350,6 @@ func rewriteValueMIPS64_OpLess32_0(v *Value) bool { func rewriteValueMIPS64_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (FPFlagTrue (CMPGTF y x)) for { y := v.Args[1] @@ -2479,7 +2366,6 @@ func rewriteValueMIPS64_OpLess32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32U x y) - // cond: // result: (SGTU (ZeroExt32to64 y) (ZeroExt32to64 x)) for { y := v.Args[1] @@ -2496,7 +2382,6 @@ func rewriteValueMIPS64_OpLess32U_0(v *Value) bool { } func rewriteValueMIPS64_OpLess64_0(v *Value) bool { // match: (Less64 x y) - // cond: // result: (SGT y x) for { y := v.Args[1] @@ -2510,7 +2395,6 @@ func rewriteValueMIPS64_OpLess64_0(v *Value) bool { func rewriteValueMIPS64_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (FPFlagTrue (CMPGTD y x)) for { y := v.Args[1] @@ -2525,7 +2409,6 @@ func rewriteValueMIPS64_OpLess64F_0(v *Value) bool { } func rewriteValueMIPS64_OpLess64U_0(v *Value) bool { // match: (Less64U x y) - // cond: // result: (SGTU y x) for { y := v.Args[1] @@ -2540,7 +2423,6 @@ func rewriteValueMIPS64_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (SGT (SignExt8to64 y) (SignExt8to64 x)) for { y := v.Args[1] @@ -2559,7 +2441,6 @@ func rewriteValueMIPS64_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (SGTU (ZeroExt8to64 y) (ZeroExt8to64 x)) for { y := v.Args[1] @@ -2729,7 +2610,6 @@ func rewriteValueMIPS64_OpLoad_0(v *Value) bool { } func rewriteValueMIPS64_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVVaddr {sym} base) for { sym := v.Aux @@ -2745,7 +2625,6 @@ func rewriteValueMIPS64_OpLsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SLLV x (ZeroExt16to64 y))) for { t := v.Type @@ -2775,7 +2654,6 @@ func rewriteValueMIPS64_OpLsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SLLV x (ZeroExt32to64 y))) for { t := v.Type @@ -2805,7 +2683,6 @@ func rewriteValueMIPS64_OpLsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SLLV x y)) for { t := v.Type @@ -2831,7 +2708,6 @@ func rewriteValueMIPS64_OpLsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SLLV x (ZeroExt8to64 y))) for { t := v.Type @@ -2861,7 +2737,6 @@ func rewriteValueMIPS64_OpLsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SLLV x (ZeroExt16to64 y))) for { t := v.Type @@ -2891,7 +2766,6 @@ func rewriteValueMIPS64_OpLsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SLLV x (ZeroExt32to64 y))) for { t := v.Type @@ -2921,7 +2795,6 @@ func rewriteValueMIPS64_OpLsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SLLV x y)) for { t := v.Type @@ -2947,7 +2820,6 @@ func rewriteValueMIPS64_OpLsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SLLV x (ZeroExt8to64 y))) for { t := v.Type @@ -2977,7 +2849,6 @@ func rewriteValueMIPS64_OpLsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SLLV x (ZeroExt16to64 y))) for { t := v.Type @@ -3007,7 +2878,6 @@ func rewriteValueMIPS64_OpLsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SLLV x (ZeroExt32to64 y))) for { t := v.Type @@ -3037,7 +2907,6 @@ func rewriteValueMIPS64_OpLsh64x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SLLV x y)) for { t := v.Type @@ -3063,7 +2932,6 @@ func rewriteValueMIPS64_OpLsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SLLV x (ZeroExt8to64 y))) for { t := v.Type @@ -3093,7 +2961,6 @@ func rewriteValueMIPS64_OpLsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SLLV x (ZeroExt16to64 y))) for { t := v.Type @@ -3123,7 +2990,6 @@ func rewriteValueMIPS64_OpLsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SLLV x (ZeroExt32to64 y))) for { t := v.Type @@ -3153,7 +3019,6 @@ func rewriteValueMIPS64_OpLsh8x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SLLV x y)) for { t := v.Type @@ -3179,7 +3044,6 @@ func rewriteValueMIPS64_OpLsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SLLV x (ZeroExt8to64 y))) for { t := v.Type @@ -3244,7 +3108,6 @@ func rewriteValueMIPS64_OpMIPS64ADDV_0(v *Value) bool { return true } // match: (ADDV x (NEGV y)) - // cond: // result: (SUBV x y) for { _ = v.Args[1] @@ -3260,7 +3123,6 @@ func rewriteValueMIPS64_OpMIPS64ADDV_0(v *Value) bool { return true } // match: (ADDV (NEGV y) x) - // cond: // result: (SUBV x y) for { x := v.Args[1] @@ -3278,7 +3140,6 @@ func rewriteValueMIPS64_OpMIPS64ADDV_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64ADDVconst_0(v *Value) bool { // match: (ADDVconst [off1] (MOVVaddr [off2] {sym} ptr)) - // cond: // result: (MOVVaddr [off1+off2] {sym} ptr) for { off1 := v.AuxInt @@ -3296,7 +3157,6 @@ func rewriteValueMIPS64_OpMIPS64ADDVconst_0(v *Value) bool { return true } // match: (ADDVconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -3309,7 +3169,6 @@ func rewriteValueMIPS64_OpMIPS64ADDVconst_0(v *Value) bool { return true } // match: (ADDVconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [c+d]) for { c := v.AuxInt @@ -3401,7 +3260,6 @@ func rewriteValueMIPS64_OpMIPS64AND_0(v *Value) bool { return true } // match: (AND x x) - // cond: // result: x for { x := v.Args[1] @@ -3417,7 +3275,6 @@ func rewriteValueMIPS64_OpMIPS64AND_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64ANDconst_0(v *Value) bool { // match: (ANDconst [0] _) - // cond: // result: (MOVVconst [0]) for { if v.AuxInt != 0 { @@ -3428,7 +3285,6 @@ func rewriteValueMIPS64_OpMIPS64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [-1] x) - // cond: // result: x for { if v.AuxInt != -1 { @@ -3441,7 +3297,6 @@ func rewriteValueMIPS64_OpMIPS64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [c&d]) for { c := v.AuxInt @@ -3455,7 +3310,6 @@ func rewriteValueMIPS64_OpMIPS64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c&d] x) for { c := v.AuxInt @@ -3520,16 +3374,12 @@ func rewriteValueMIPS64_OpMIPS64LoweredAtomicAdd64_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64LoweredAtomicStore32_0(v *Value) bool { // match: (LoweredAtomicStore32 ptr (MOVVconst [0]) mem) - // cond: // result: (LoweredAtomicStorezero32 ptr mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64LoweredAtomicStorezero32) @@ -3541,16 +3391,12 @@ func rewriteValueMIPS64_OpMIPS64LoweredAtomicStore32_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64LoweredAtomicStore64_0(v *Value) bool { // match: (LoweredAtomicStore64 ptr (MOVVconst [0]) mem) - // cond: // result: (LoweredAtomicStorezero64 ptr mem) for { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64LoweredAtomicStorezero64) @@ -3612,7 +3458,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBUload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVBUreg_0(v *Value) bool { // match: (MOVBUreg x:(MOVBUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -3625,7 +3470,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg x:(MOVBUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -3637,7 +3481,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBUreg_0(v *Value) bool { return true } // match: (MOVBUreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(uint8(c))]) for { v_0 := v.Args[0] @@ -3703,7 +3546,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVBreg_0(v *Value) bool { // match: (MOVBreg x:(MOVBload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -3716,7 +3558,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg x:(MOVBreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -3728,7 +3569,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(int8(c))]) for { v_0 := v.Args[0] @@ -3795,7 +3635,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVVconst [0]) mem) - // cond: // result: (MOVBstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -3803,10 +3642,7 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVBstorezero) @@ -3817,7 +3653,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3838,7 +3673,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3859,7 +3693,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3880,7 +3713,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3901,7 +3733,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -3922,7 +3753,6 @@ func rewriteValueMIPS64_OpMIPS64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4254,7 +4084,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHUload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVHUreg_0(v *Value) bool { // match: (MOVHUreg x:(MOVBUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4267,7 +4096,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4280,7 +4108,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVBUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4292,7 +4119,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg x:(MOVHUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4304,7 +4130,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHUreg_0(v *Value) bool { return true } // match: (MOVHUreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -4370,7 +4195,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { // match: (MOVHreg x:(MOVBload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4383,7 +4207,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4396,7 +4219,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4409,7 +4231,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4421,7 +4242,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVBUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4433,7 +4253,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg x:(MOVHreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4445,7 +4264,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -4512,7 +4330,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVVconst [0]) mem) - // cond: // result: (MOVHstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -4520,10 +4337,7 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVHstorezero) @@ -4534,7 +4348,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4555,7 +4368,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4576,7 +4388,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4597,7 +4408,6 @@ func rewriteValueMIPS64_OpMIPS64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -4733,7 +4543,6 @@ func rewriteValueMIPS64_OpMIPS64MOVVreg_0(v *Value) bool { return true } // match: (MOVVreg (MOVVconst [c])) - // cond: // result: (MOVVconst [c]) for { v_0 := v.Args[0] @@ -4800,7 +4609,6 @@ func rewriteValueMIPS64_OpMIPS64MOVVstore_0(v *Value) bool { return true } // match: (MOVVstore [off] {sym} ptr (MOVVconst [0]) mem) - // cond: // result: (MOVVstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -4808,10 +4616,7 @@ func rewriteValueMIPS64_OpMIPS64MOVVstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVVstorezero) @@ -4925,7 +4730,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { // match: (MOVWUreg x:(MOVBUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4938,7 +4742,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4951,7 +4754,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVWUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4964,7 +4766,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVBUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4976,7 +4777,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVHUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -4988,7 +4788,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg x:(MOVWUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5000,7 +4799,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWUreg_0(v *Value) bool { return true } // match: (MOVWUreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(uint32(c))]) for { v_0 := v.Args[0] @@ -5066,7 +4864,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWload_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { // match: (MOVWreg x:(MOVBload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5079,7 +4876,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5092,7 +4888,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5105,7 +4900,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHUload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5118,7 +4912,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVWload _ _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5131,7 +4924,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5143,7 +4935,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVBUreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5155,7 +4946,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5167,7 +4957,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVHreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5179,7 +4968,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg x:(MOVWreg _)) - // cond: // result: (MOVVreg x) for { x := v.Args[0] @@ -5194,7 +4982,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWreg_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64MOVWreg_10(v *Value) bool { // match: (MOVWreg (MOVVconst [c])) - // cond: // result: (MOVVconst [int64(int32(c))]) for { v_0 := v.Args[0] @@ -5261,7 +5048,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVVconst [0]) mem) - // cond: // result: (MOVWstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -5269,10 +5055,7 @@ func rewriteValueMIPS64_OpMIPS64MOVWstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVWstorezero) @@ -5283,7 +5066,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -5304,7 +5086,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWUreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -5378,7 +5159,6 @@ func rewriteValueMIPS64_OpMIPS64MOVWstorezero_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64NEGV_0(v *Value) bool { // match: (NEGV (MOVVconst [c])) - // cond: // result: (MOVVconst [-c]) for { v_0 := v.Args[0] @@ -5434,7 +5214,6 @@ func rewriteValueMIPS64_OpMIPS64NOR_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64NORconst_0(v *Value) bool { // match: (NORconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [^(c|d)]) for { c := v.AuxInt @@ -5488,7 +5267,6 @@ func rewriteValueMIPS64_OpMIPS64OR_0(v *Value) bool { return true } // match: (OR x x) - // cond: // result: x for { x := v.Args[1] @@ -5504,7 +5282,6 @@ func rewriteValueMIPS64_OpMIPS64OR_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64ORconst_0(v *Value) bool { // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5517,7 +5294,6 @@ func rewriteValueMIPS64_OpMIPS64ORconst_0(v *Value) bool { return true } // match: (ORconst [-1] _) - // cond: // result: (MOVVconst [-1]) for { if v.AuxInt != -1 { @@ -5528,7 +5304,6 @@ func rewriteValueMIPS64_OpMIPS64ORconst_0(v *Value) bool { return true } // match: (ORconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [c|d]) for { c := v.AuxInt @@ -5645,10 +5420,7 @@ func rewriteValueMIPS64_OpMIPS64SGTUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVBUreg { - break - } - if !(0xff < uint64(c)) { + if v_0.Op != OpMIPS64MOVBUreg || !(0xff < uint64(c)) { break } v.reset(OpMIPS64MOVVconst) @@ -5661,10 +5433,7 @@ func rewriteValueMIPS64_OpMIPS64SGTUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVHUreg { - break - } - if !(0xffff < uint64(c)) { + if v_0.Op != OpMIPS64MOVHUreg || !(0xffff < uint64(c)) { break } v.reset(OpMIPS64MOVVconst) @@ -5748,10 +5517,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVBreg { - break - } - if !(0x7f < c) { + if v_0.Op != OpMIPS64MOVBreg || !(0x7f < c) { break } v.reset(OpMIPS64MOVVconst) @@ -5764,10 +5530,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVBreg { - break - } - if !(c <= -0x80) { + if v_0.Op != OpMIPS64MOVBreg || !(c <= -0x80) { break } v.reset(OpMIPS64MOVVconst) @@ -5780,10 +5543,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVBUreg { - break - } - if !(0xff < c) { + if v_0.Op != OpMIPS64MOVBUreg || !(0xff < c) { break } v.reset(OpMIPS64MOVVconst) @@ -5796,10 +5556,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVBUreg { - break - } - if !(c < 0) { + if v_0.Op != OpMIPS64MOVBUreg || !(c < 0) { break } v.reset(OpMIPS64MOVVconst) @@ -5812,10 +5569,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVHreg { - break - } - if !(0x7fff < c) { + if v_0.Op != OpMIPS64MOVHreg || !(0x7fff < c) { break } v.reset(OpMIPS64MOVVconst) @@ -5828,10 +5582,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVHreg { - break - } - if !(c <= -0x8000) { + if v_0.Op != OpMIPS64MOVHreg || !(c <= -0x8000) { break } v.reset(OpMIPS64MOVVconst) @@ -5844,10 +5595,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVHUreg { - break - } - if !(0xffff < c) { + if v_0.Op != OpMIPS64MOVHUreg || !(0xffff < c) { break } v.reset(OpMIPS64MOVVconst) @@ -5860,10 +5608,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVHUreg { - break - } - if !(c < 0) { + if v_0.Op != OpMIPS64MOVHUreg || !(c < 0) { break } v.reset(OpMIPS64MOVVconst) @@ -5879,10 +5624,7 @@ func rewriteValueMIPS64_OpMIPS64SGTconst_10(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVWUreg { - break - } - if !(c < 0) { + if v_0.Op != OpMIPS64MOVWUreg || !(c < 0) { break } v.reset(OpMIPS64MOVVconst) @@ -5944,7 +5686,6 @@ func rewriteValueMIPS64_OpMIPS64SLLV_0(v *Value) bool { return true } // match: (SLLV x (MOVVconst [c])) - // cond: // result: (SLLVconst x [c]) for { _ = v.Args[1] @@ -5963,7 +5704,6 @@ func rewriteValueMIPS64_OpMIPS64SLLV_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64SLLVconst_0(v *Value) bool { // match: (SLLVconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [d<>uint64(c)]) for { c := v.AuxInt @@ -6052,7 +5790,6 @@ func rewriteValueMIPS64_OpMIPS64SRLV_0(v *Value) bool { return true } // match: (SRLV x (MOVVconst [c])) - // cond: // result: (SRLVconst x [c]) for { _ = v.Args[1] @@ -6071,7 +5808,6 @@ func rewriteValueMIPS64_OpMIPS64SRLV_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64SRLVconst_0(v *Value) bool { // match: (SRLVconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [int64(uint64(d)>>uint64(c))]) for { c := v.AuxInt @@ -6107,7 +5843,6 @@ func rewriteValueMIPS64_OpMIPS64SUBV_0(v *Value) bool { return true } // match: (SUBV x x) - // cond: // result: (MOVVconst [0]) for { x := v.Args[1] @@ -6119,15 +5854,11 @@ func rewriteValueMIPS64_OpMIPS64SUBV_0(v *Value) bool { return true } // match: (SUBV (MOVVconst [0]) x) - // cond: // result: (NEGV x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpMIPS64MOVVconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpMIPS64MOVVconst || v_0.AuxInt != 0 { break } v.reset(OpMIPS64NEGV) @@ -6138,7 +5869,6 @@ func rewriteValueMIPS64_OpMIPS64SUBV_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64SUBVconst_0(v *Value) bool { // match: (SUBVconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -6151,7 +5881,6 @@ func rewriteValueMIPS64_OpMIPS64SUBVconst_0(v *Value) bool { return true } // match: (SUBVconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [d-c]) for { c := v.AuxInt @@ -6243,7 +5972,6 @@ func rewriteValueMIPS64_OpMIPS64XOR_0(v *Value) bool { return true } // match: (XOR x x) - // cond: // result: (MOVVconst [0]) for { x := v.Args[1] @@ -6258,7 +5986,6 @@ func rewriteValueMIPS64_OpMIPS64XOR_0(v *Value) bool { } func rewriteValueMIPS64_OpMIPS64XORconst_0(v *Value) bool { // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -6271,7 +5998,6 @@ func rewriteValueMIPS64_OpMIPS64XORconst_0(v *Value) bool { return true } // match: (XORconst [-1] x) - // cond: // result: (NORconst [0] x) for { if v.AuxInt != -1 { @@ -6284,7 +6010,6 @@ func rewriteValueMIPS64_OpMIPS64XORconst_0(v *Value) bool { return true } // match: (XORconst [c] (MOVVconst [d])) - // cond: // result: (MOVVconst [c^d]) for { c := v.AuxInt @@ -6322,7 +6047,6 @@ func rewriteValueMIPS64_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (Select0 (DIVV (SignExt16to64 x) (SignExt16to64 y))) for { y := v.Args[1] @@ -6343,7 +6067,6 @@ func rewriteValueMIPS64_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (Select0 (DIVVU (ZeroExt16to64 x) (ZeroExt16to64 y))) for { y := v.Args[1] @@ -6364,7 +6087,6 @@ func rewriteValueMIPS64_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (Select0 (DIVV (SignExt32to64 x) (SignExt32to64 y))) for { y := v.Args[1] @@ -6385,7 +6107,6 @@ func rewriteValueMIPS64_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (Select0 (DIVVU (ZeroExt32to64 x) (ZeroExt32to64 y))) for { y := v.Args[1] @@ -6406,7 +6127,6 @@ func rewriteValueMIPS64_OpMod64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64 x y) - // cond: // result: (Select0 (DIVV x y)) for { y := v.Args[1] @@ -6423,7 +6143,6 @@ func rewriteValueMIPS64_OpMod64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64u x y) - // cond: // result: (Select0 (DIVVU x y)) for { y := v.Args[1] @@ -6440,7 +6159,6 @@ func rewriteValueMIPS64_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (Select0 (DIVV (SignExt8to64 x) (SignExt8to64 y))) for { y := v.Args[1] @@ -6461,7 +6179,6 @@ func rewriteValueMIPS64_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (Select0 (DIVVU (ZeroExt8to64 x) (ZeroExt8to64 y))) for { y := v.Args[1] @@ -6482,7 +6199,6 @@ func rewriteValueMIPS64_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -6495,7 +6211,6 @@ func rewriteValueMIPS64_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBload src mem) mem) for { if v.AuxInt != 1 { @@ -6537,7 +6252,6 @@ func rewriteValueMIPS64_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVBstore [1] dst (MOVBload [1] src mem) (MOVBstore dst (MOVBload src mem) mem)) for { if v.AuxInt != 2 { @@ -6620,7 +6334,6 @@ func rewriteValueMIPS64_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVBstore [3] dst (MOVBload [3] src mem) (MOVBstore [2] dst (MOVBload [2] src mem) (MOVBstore [1] dst (MOVBload [1] src mem) (MOVBstore dst (MOVBload src mem) mem)))) for { if v.AuxInt != 4 { @@ -6777,7 +6490,6 @@ func rewriteValueMIPS64_OpMove_10(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBload [2] src mem) (MOVBstore [1] dst (MOVBload [1] src mem) (MOVBstore dst (MOVBload src mem) mem))) for { if v.AuxInt != 3 { @@ -7016,7 +6728,6 @@ func rewriteValueMIPS64_OpMul16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul16 x y) - // cond: // result: (Select1 (MULVU x y)) for { y := v.Args[1] @@ -7033,7 +6744,6 @@ func rewriteValueMIPS64_OpMul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul32 x y) - // cond: // result: (Select1 (MULVU x y)) for { y := v.Args[1] @@ -7048,7 +6758,6 @@ func rewriteValueMIPS64_OpMul32_0(v *Value) bool { } func rewriteValueMIPS64_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (MULF x y) for { y := v.Args[1] @@ -7063,7 +6772,6 @@ func rewriteValueMIPS64_OpMul64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul64 x y) - // cond: // result: (Select1 (MULVU x y)) for { y := v.Args[1] @@ -7078,7 +6786,6 @@ func rewriteValueMIPS64_OpMul64_0(v *Value) bool { } func rewriteValueMIPS64_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (MULD x y) for { y := v.Args[1] @@ -7093,7 +6800,6 @@ func rewriteValueMIPS64_OpMul8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul8 x y) - // cond: // result: (Select1 (MULVU x y)) for { y := v.Args[1] @@ -7108,7 +6814,6 @@ func rewriteValueMIPS64_OpMul8_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEGV x) for { x := v.Args[0] @@ -7119,7 +6824,6 @@ func rewriteValueMIPS64_OpNeg16_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEGV x) for { x := v.Args[0] @@ -7130,7 +6834,6 @@ func rewriteValueMIPS64_OpNeg32_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (NEGF x) for { x := v.Args[0] @@ -7141,7 +6844,6 @@ func rewriteValueMIPS64_OpNeg32F_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg64_0(v *Value) bool { // match: (Neg64 x) - // cond: // result: (NEGV x) for { x := v.Args[0] @@ -7152,7 +6854,6 @@ func rewriteValueMIPS64_OpNeg64_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (NEGD x) for { x := v.Args[0] @@ -7163,7 +6864,6 @@ func rewriteValueMIPS64_OpNeg64F_0(v *Value) bool { } func rewriteValueMIPS64_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEGV x) for { x := v.Args[0] @@ -7176,7 +6876,6 @@ func rewriteValueMIPS64_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (SGTU (XOR (ZeroExt16to32 x) (ZeroExt16to64 y)) (MOVVconst [0])) for { y := v.Args[1] @@ -7200,7 +6899,6 @@ func rewriteValueMIPS64_OpNeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq32 x y) - // cond: // result: (SGTU (XOR (ZeroExt32to64 x) (ZeroExt32to64 y)) (MOVVconst [0])) for { y := v.Args[1] @@ -7223,7 +6921,6 @@ func rewriteValueMIPS64_OpNeq32_0(v *Value) bool { func rewriteValueMIPS64_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (FPFlagFalse (CMPEQF x y)) for { y := v.Args[1] @@ -7240,7 +6937,6 @@ func rewriteValueMIPS64_OpNeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq64 x y) - // cond: // result: (SGTU (XOR x y) (MOVVconst [0])) for { y := v.Args[1] @@ -7259,7 +6955,6 @@ func rewriteValueMIPS64_OpNeq64_0(v *Value) bool { func rewriteValueMIPS64_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (FPFlagFalse (CMPEQD x y)) for { y := v.Args[1] @@ -7276,7 +6971,6 @@ func rewriteValueMIPS64_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (SGTU (XOR (ZeroExt8to64 x) (ZeroExt8to64 y)) (MOVVconst [0])) for { y := v.Args[1] @@ -7298,7 +6992,6 @@ func rewriteValueMIPS64_OpNeq8_0(v *Value) bool { } func rewriteValueMIPS64_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -7313,7 +7006,6 @@ func rewriteValueMIPS64_OpNeqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqPtr x y) - // cond: // result: (SGTU (XOR x y) (MOVVconst [0])) for { y := v.Args[1] @@ -7331,7 +7023,6 @@ func rewriteValueMIPS64_OpNeqPtr_0(v *Value) bool { } func rewriteValueMIPS64_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -7344,7 +7035,6 @@ func rewriteValueMIPS64_OpNilCheck_0(v *Value) bool { } func rewriteValueMIPS64_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORconst [1] x) for { x := v.Args[0] @@ -7356,7 +7046,6 @@ func rewriteValueMIPS64_OpNot_0(v *Value) bool { } func rewriteValueMIPS64_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr:(SP)) - // cond: // result: (MOVVaddr [off] ptr) for { off := v.AuxInt @@ -7370,7 +7059,6 @@ func rewriteValueMIPS64_OpOffPtr_0(v *Value) bool { return true } // match: (OffPtr [off] ptr) - // cond: // result: (ADDVconst [off] ptr) for { off := v.AuxInt @@ -7383,7 +7071,6 @@ func rewriteValueMIPS64_OpOffPtr_0(v *Value) bool { } func rewriteValueMIPS64_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7396,7 +7083,6 @@ func rewriteValueMIPS64_OpOr16_0(v *Value) bool { } func rewriteValueMIPS64_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7409,7 +7095,6 @@ func rewriteValueMIPS64_OpOr32_0(v *Value) bool { } func rewriteValueMIPS64_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7422,7 +7107,6 @@ func rewriteValueMIPS64_OpOr64_0(v *Value) bool { } func rewriteValueMIPS64_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7435,7 +7119,6 @@ func rewriteValueMIPS64_OpOr8_0(v *Value) bool { } func rewriteValueMIPS64_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -7507,7 +7190,6 @@ func rewriteValueMIPS64_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVVconst [c])) - // cond: // result: (Or16 (Lsh16x64 x (MOVVconst [c&15])) (Rsh16Ux64 x (MOVVconst [-c&15]))) for { t := v.Type @@ -7539,7 +7221,6 @@ func rewriteValueMIPS64_OpRotateLeft32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft32 x (MOVVconst [c])) - // cond: // result: (Or32 (Lsh32x64 x (MOVVconst [c&31])) (Rsh32Ux64 x (MOVVconst [-c&31]))) for { t := v.Type @@ -7571,7 +7252,6 @@ func rewriteValueMIPS64_OpRotateLeft64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft64 x (MOVVconst [c])) - // cond: // result: (Or64 (Lsh64x64 x (MOVVconst [c&63])) (Rsh64Ux64 x (MOVVconst [-c&63]))) for { t := v.Type @@ -7603,7 +7283,6 @@ func rewriteValueMIPS64_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVVconst [c])) - // cond: // result: (Or8 (Lsh8x64 x (MOVVconst [c&7])) (Rsh8Ux64 x (MOVVconst [-c&7]))) for { t := v.Type @@ -7633,7 +7312,6 @@ func rewriteValueMIPS64_OpRotateLeft8_0(v *Value) bool { } func rewriteValueMIPS64_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -7645,7 +7323,6 @@ func rewriteValueMIPS64_OpRound32F_0(v *Value) bool { } func rewriteValueMIPS64_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -7659,7 +7336,6 @@ func rewriteValueMIPS64_OpRsh16Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SRLV (ZeroExt16to64 x) (ZeroExt16to64 y))) for { t := v.Type @@ -7691,7 +7367,6 @@ func rewriteValueMIPS64_OpRsh16Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SRLV (ZeroExt16to64 x) (ZeroExt32to64 y))) for { t := v.Type @@ -7723,7 +7398,6 @@ func rewriteValueMIPS64_OpRsh16Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SRLV (ZeroExt16to64 x) y)) for { t := v.Type @@ -7751,7 +7425,6 @@ func rewriteValueMIPS64_OpRsh16Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SRLV (ZeroExt16to64 x) (ZeroExt8to64 y))) for { t := v.Type @@ -7783,7 +7456,6 @@ func rewriteValueMIPS64_OpRsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x16 x y) - // cond: // result: (SRAV (SignExt16to64 x) (OR (NEGV (SGTU (ZeroExt16to64 y) (MOVVconst [63]))) (ZeroExt16to64 y))) for { t := v.Type @@ -7815,7 +7487,6 @@ func rewriteValueMIPS64_OpRsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x32 x y) - // cond: // result: (SRAV (SignExt16to64 x) (OR (NEGV (SGTU (ZeroExt32to64 y) (MOVVconst [63]))) (ZeroExt32to64 y))) for { t := v.Type @@ -7847,7 +7518,6 @@ func rewriteValueMIPS64_OpRsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x64 x y) - // cond: // result: (SRAV (SignExt16to64 x) (OR (NEGV (SGTU y (MOVVconst [63]))) y)) for { t := v.Type @@ -7875,7 +7545,6 @@ func rewriteValueMIPS64_OpRsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x8 x y) - // cond: // result: (SRAV (SignExt16to64 x) (OR (NEGV (SGTU (ZeroExt8to64 y) (MOVVconst [63]))) (ZeroExt8to64 y))) for { t := v.Type @@ -7907,7 +7576,6 @@ func rewriteValueMIPS64_OpRsh32Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SRLV (ZeroExt32to64 x) (ZeroExt16to64 y))) for { t := v.Type @@ -7939,7 +7607,6 @@ func rewriteValueMIPS64_OpRsh32Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SRLV (ZeroExt32to64 x) (ZeroExt32to64 y))) for { t := v.Type @@ -7971,7 +7638,6 @@ func rewriteValueMIPS64_OpRsh32Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SRLV (ZeroExt32to64 x) y)) for { t := v.Type @@ -7999,7 +7665,6 @@ func rewriteValueMIPS64_OpRsh32Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SRLV (ZeroExt32to64 x) (ZeroExt8to64 y))) for { t := v.Type @@ -8031,7 +7696,6 @@ func rewriteValueMIPS64_OpRsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x16 x y) - // cond: // result: (SRAV (SignExt32to64 x) (OR (NEGV (SGTU (ZeroExt16to64 y) (MOVVconst [63]))) (ZeroExt16to64 y))) for { t := v.Type @@ -8063,7 +7727,6 @@ func rewriteValueMIPS64_OpRsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x32 x y) - // cond: // result: (SRAV (SignExt32to64 x) (OR (NEGV (SGTU (ZeroExt32to64 y) (MOVVconst [63]))) (ZeroExt32to64 y))) for { t := v.Type @@ -8095,7 +7758,6 @@ func rewriteValueMIPS64_OpRsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x64 x y) - // cond: // result: (SRAV (SignExt32to64 x) (OR (NEGV (SGTU y (MOVVconst [63]))) y)) for { t := v.Type @@ -8123,7 +7785,6 @@ func rewriteValueMIPS64_OpRsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x8 x y) - // cond: // result: (SRAV (SignExt32to64 x) (OR (NEGV (SGTU (ZeroExt8to64 y) (MOVVconst [63]))) (ZeroExt8to64 y))) for { t := v.Type @@ -8155,7 +7816,6 @@ func rewriteValueMIPS64_OpRsh64Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SRLV x (ZeroExt16to64 y))) for { t := v.Type @@ -8185,7 +7845,6 @@ func rewriteValueMIPS64_OpRsh64Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SRLV x (ZeroExt32to64 y))) for { t := v.Type @@ -8215,7 +7874,6 @@ func rewriteValueMIPS64_OpRsh64Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SRLV x y)) for { t := v.Type @@ -8241,7 +7899,6 @@ func rewriteValueMIPS64_OpRsh64Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SRLV x (ZeroExt8to64 y))) for { t := v.Type @@ -8271,7 +7928,6 @@ func rewriteValueMIPS64_OpRsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x16 x y) - // cond: // result: (SRAV x (OR (NEGV (SGTU (ZeroExt16to64 y) (MOVVconst [63]))) (ZeroExt16to64 y))) for { t := v.Type @@ -8301,7 +7957,6 @@ func rewriteValueMIPS64_OpRsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x32 x y) - // cond: // result: (SRAV x (OR (NEGV (SGTU (ZeroExt32to64 y) (MOVVconst [63]))) (ZeroExt32to64 y))) for { t := v.Type @@ -8331,7 +7986,6 @@ func rewriteValueMIPS64_OpRsh64x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x64 x y) - // cond: // result: (SRAV x (OR (NEGV (SGTU y (MOVVconst [63]))) y)) for { t := v.Type @@ -8357,7 +8011,6 @@ func rewriteValueMIPS64_OpRsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x8 x y) - // cond: // result: (SRAV x (OR (NEGV (SGTU (ZeroExt8to64 y) (MOVVconst [63]))) (ZeroExt8to64 y))) for { t := v.Type @@ -8387,7 +8040,6 @@ func rewriteValueMIPS64_OpRsh8Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux16 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt16to64 y))) (SRLV (ZeroExt8to64 x) (ZeroExt16to64 y))) for { t := v.Type @@ -8419,7 +8071,6 @@ func rewriteValueMIPS64_OpRsh8Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux32 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt32to64 y))) (SRLV (ZeroExt8to64 x) (ZeroExt32to64 y))) for { t := v.Type @@ -8451,7 +8102,6 @@ func rewriteValueMIPS64_OpRsh8Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux64 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) y)) (SRLV (ZeroExt8to64 x) y)) for { t := v.Type @@ -8479,7 +8129,6 @@ func rewriteValueMIPS64_OpRsh8Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux8 x y) - // cond: // result: (AND (NEGV (SGTU (MOVVconst [64]) (ZeroExt8to64 y))) (SRLV (ZeroExt8to64 x) (ZeroExt8to64 y))) for { t := v.Type @@ -8511,7 +8160,6 @@ func rewriteValueMIPS64_OpRsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x16 x y) - // cond: // result: (SRAV (SignExt8to64 x) (OR (NEGV (SGTU (ZeroExt16to64 y) (MOVVconst [63]))) (ZeroExt16to64 y))) for { t := v.Type @@ -8543,7 +8191,6 @@ func rewriteValueMIPS64_OpRsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x32 x y) - // cond: // result: (SRAV (SignExt8to64 x) (OR (NEGV (SGTU (ZeroExt32to64 y) (MOVVconst [63]))) (ZeroExt32to64 y))) for { t := v.Type @@ -8575,7 +8222,6 @@ func rewriteValueMIPS64_OpRsh8x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x64 x y) - // cond: // result: (SRAV (SignExt8to64 x) (OR (NEGV (SGTU y (MOVVconst [63]))) y)) for { t := v.Type @@ -8603,7 +8249,6 @@ func rewriteValueMIPS64_OpRsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x8 x y) - // cond: // result: (SRAV (SignExt8to64 x) (OR (NEGV (SGTU (ZeroExt8to64 y) (MOVVconst [63]))) (ZeroExt8to64 y))) for { t := v.Type @@ -8633,7 +8278,6 @@ func rewriteValueMIPS64_OpRsh8x8_0(v *Value) bool { } func rewriteValueMIPS64_OpSelect0_0(v *Value) bool { // match: (Select0 (DIVVU _ (MOVVconst [1]))) - // cond: // result: (MOVVconst [0]) for { v_0 := v.Args[0] @@ -8642,10 +8286,7 @@ func rewriteValueMIPS64_OpSelect0_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 1 { break } v.reset(OpMIPS64MOVVconst) @@ -8676,7 +8317,6 @@ func rewriteValueMIPS64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (DIVV (MOVVconst [c]) (MOVVconst [d]))) - // cond: // result: (MOVVconst [c%d]) for { v_0 := v.Args[0] @@ -8699,7 +8339,6 @@ func rewriteValueMIPS64_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (DIVVU (MOVVconst [c]) (MOVVconst [d]))) - // cond: // result: (MOVVconst [int64(uint64(c)%uint64(d))]) for { v_0 := v.Args[0] @@ -8725,7 +8364,6 @@ func rewriteValueMIPS64_OpSelect0_0(v *Value) bool { } func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { // match: (Select1 (MULVU x (MOVVconst [-1]))) - // cond: // result: (NEGV x) for { v_0 := v.Args[0] @@ -8735,10 +8373,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != -1 { break } v.reset(OpMIPS64NEGV) @@ -8746,7 +8381,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [-1]) x)) - // cond: // result: (NEGV x) for { v_0 := v.Args[0] @@ -8755,10 +8389,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != -1 { break } v.reset(OpMIPS64NEGV) @@ -8766,7 +8397,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU _ (MOVVconst [0]))) - // cond: // result: (MOVVconst [0]) for { v_0 := v.Args[0] @@ -8775,10 +8405,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 0 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVVconst) @@ -8786,7 +8413,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [0]) _)) - // cond: // result: (MOVVconst [0]) for { v_0 := v.Args[0] @@ -8795,10 +8421,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != 0 { break } v.reset(OpMIPS64MOVVconst) @@ -8806,7 +8429,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU x (MOVVconst [1]))) - // cond: // result: x for { v_0 := v.Args[0] @@ -8816,10 +8438,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -8828,7 +8447,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [1]) x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -8837,10 +8455,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != 1 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -8894,7 +8509,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [-1]) x)) - // cond: // result: (NEGV x) for { v_0 := v.Args[0] @@ -8903,10 +8517,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != -1 { break } v.reset(OpMIPS64NEGV) @@ -8914,7 +8525,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (MULVU x (MOVVconst [-1]))) - // cond: // result: (NEGV x) for { v_0 := v.Args[0] @@ -8924,10 +8534,7 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != -1 { break } v.reset(OpMIPS64NEGV) @@ -8938,7 +8545,6 @@ func rewriteValueMIPS64_OpSelect1_0(v *Value) bool { } func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { // match: (Select1 (MULVU (MOVVconst [0]) _)) - // cond: // result: (MOVVconst [0]) for { v_0 := v.Args[0] @@ -8947,10 +8553,7 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { } _ = v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != 0 { break } v.reset(OpMIPS64MOVVconst) @@ -8958,7 +8561,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULVU _ (MOVVconst [0]))) - // cond: // result: (MOVVconst [0]) for { v_0 := v.Args[0] @@ -8967,10 +8569,7 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { } _ = v_0.Args[1] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 0 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 0 { break } v.reset(OpMIPS64MOVVconst) @@ -8978,7 +8577,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [1]) x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -8987,10 +8585,7 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpMIPS64MOVVconst { - break - } - if v_0_0.AuxInt != 1 { + if v_0_0.Op != OpMIPS64MOVVconst || v_0_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -8999,7 +8594,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULVU x (MOVVconst [1]))) - // cond: // result: x for { v_0 := v.Args[0] @@ -9009,10 +8603,7 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -9066,7 +8657,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (DIVVU x (MOVVconst [1]))) - // cond: // result: x for { v_0 := v.Args[0] @@ -9076,10 +8666,7 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpMIPS64MOVVconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpMIPS64MOVVconst || v_0_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -9111,7 +8698,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [c]) (MOVVconst [d]))) - // cond: // result: (MOVVconst [c*d]) for { v_0 := v.Args[0] @@ -9134,7 +8720,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { return true } // match: (Select1 (MULVU (MOVVconst [d]) (MOVVconst [c]))) - // cond: // result: (MOVVconst [c*d]) for { v_0 := v.Args[0] @@ -9160,7 +8745,6 @@ func rewriteValueMIPS64_OpSelect1_10(v *Value) bool { } func rewriteValueMIPS64_OpSelect1_20(v *Value) bool { // match: (Select1 (DIVV (MOVVconst [c]) (MOVVconst [d]))) - // cond: // result: (MOVVconst [c/d]) for { v_0 := v.Args[0] @@ -9183,7 +8767,6 @@ func rewriteValueMIPS64_OpSelect1_20(v *Value) bool { return true } // match: (Select1 (DIVVU (MOVVconst [c]) (MOVVconst [d]))) - // cond: // result: (MOVVconst [int64(uint64(c)/uint64(d))]) for { v_0 := v.Args[0] @@ -9209,7 +8792,6 @@ func rewriteValueMIPS64_OpSelect1_20(v *Value) bool { } func rewriteValueMIPS64_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -9220,7 +8802,6 @@ func rewriteValueMIPS64_OpSignExt16to32_0(v *Value) bool { } func rewriteValueMIPS64_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -9231,7 +8812,6 @@ func rewriteValueMIPS64_OpSignExt16to64_0(v *Value) bool { } func rewriteValueMIPS64_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 x) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -9242,7 +8822,6 @@ func rewriteValueMIPS64_OpSignExt32to64_0(v *Value) bool { } func rewriteValueMIPS64_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -9253,7 +8832,6 @@ func rewriteValueMIPS64_OpSignExt8to16_0(v *Value) bool { } func rewriteValueMIPS64_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -9264,7 +8842,6 @@ func rewriteValueMIPS64_OpSignExt8to32_0(v *Value) bool { } func rewriteValueMIPS64_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -9276,7 +8853,6 @@ func rewriteValueMIPS64_OpSignExt8to64_0(v *Value) bool { func rewriteValueMIPS64_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRAVconst (NEGV x) [63]) for { t := v.Type @@ -9291,7 +8867,6 @@ func rewriteValueMIPS64_OpSlicemask_0(v *Value) bool { } func rewriteValueMIPS64_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (SQRTD x) for { x := v.Args[0] @@ -9302,7 +8877,6 @@ func rewriteValueMIPS64_OpSqrt_0(v *Value) bool { } func rewriteValueMIPS64_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -9422,7 +8996,6 @@ func rewriteValueMIPS64_OpStore_0(v *Value) bool { } func rewriteValueMIPS64_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUBV x y) for { y := v.Args[1] @@ -9435,7 +9008,6 @@ func rewriteValueMIPS64_OpSub16_0(v *Value) bool { } func rewriteValueMIPS64_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUBV x y) for { y := v.Args[1] @@ -9448,7 +9020,6 @@ func rewriteValueMIPS64_OpSub32_0(v *Value) bool { } func rewriteValueMIPS64_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (SUBF x y) for { y := v.Args[1] @@ -9461,7 +9032,6 @@ func rewriteValueMIPS64_OpSub32F_0(v *Value) bool { } func rewriteValueMIPS64_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (SUBV x y) for { y := v.Args[1] @@ -9474,7 +9044,6 @@ func rewriteValueMIPS64_OpSub64_0(v *Value) bool { } func rewriteValueMIPS64_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (SUBD x y) for { y := v.Args[1] @@ -9487,7 +9056,6 @@ func rewriteValueMIPS64_OpSub64F_0(v *Value) bool { } func rewriteValueMIPS64_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUBV x y) for { y := v.Args[1] @@ -9500,7 +9068,6 @@ func rewriteValueMIPS64_OpSub8_0(v *Value) bool { } func rewriteValueMIPS64_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUBV x y) for { y := v.Args[1] @@ -9513,7 +9080,6 @@ func rewriteValueMIPS64_OpSubPtr_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -9525,7 +9091,6 @@ func rewriteValueMIPS64_OpTrunc16to8_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -9537,7 +9102,6 @@ func rewriteValueMIPS64_OpTrunc32to16_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -9549,7 +9113,6 @@ func rewriteValueMIPS64_OpTrunc32to8_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 x) - // cond: // result: x for { x := v.Args[0] @@ -9561,7 +9124,6 @@ func rewriteValueMIPS64_OpTrunc64to16_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 x) - // cond: // result: x for { x := v.Args[0] @@ -9573,7 +9135,6 @@ func rewriteValueMIPS64_OpTrunc64to32_0(v *Value) bool { } func rewriteValueMIPS64_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 x) - // cond: // result: x for { x := v.Args[0] @@ -9585,7 +9146,6 @@ func rewriteValueMIPS64_OpTrunc64to8_0(v *Value) bool { } func rewriteValueMIPS64_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -9602,7 +9162,6 @@ func rewriteValueMIPS64_OpWB_0(v *Value) bool { } func rewriteValueMIPS64_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9615,7 +9174,6 @@ func rewriteValueMIPS64_OpXor16_0(v *Value) bool { } func rewriteValueMIPS64_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9628,7 +9186,6 @@ func rewriteValueMIPS64_OpXor32_0(v *Value) bool { } func rewriteValueMIPS64_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9641,7 +9198,6 @@ func rewriteValueMIPS64_OpXor64_0(v *Value) bool { } func rewriteValueMIPS64_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -9656,7 +9212,6 @@ func rewriteValueMIPS64_OpZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -9669,7 +9224,6 @@ func rewriteValueMIPS64_OpZero_0(v *Value) bool { return true } // match: (Zero [1] ptr mem) - // cond: // result: (MOVBstore ptr (MOVVconst [0]) mem) for { if v.AuxInt != 1 { @@ -9707,7 +9261,6 @@ func rewriteValueMIPS64_OpZero_0(v *Value) bool { return true } // match: (Zero [2] ptr mem) - // cond: // result: (MOVBstore [1] ptr (MOVVconst [0]) (MOVBstore [0] ptr (MOVVconst [0]) mem)) for { if v.AuxInt != 2 { @@ -9782,7 +9335,6 @@ func rewriteValueMIPS64_OpZero_0(v *Value) bool { return true } // match: (Zero [4] ptr mem) - // cond: // result: (MOVBstore [3] ptr (MOVVconst [0]) (MOVBstore [2] ptr (MOVVconst [0]) (MOVBstore [1] ptr (MOVVconst [0]) (MOVBstore [0] ptr (MOVVconst [0]) mem)))) for { if v.AuxInt != 4 { @@ -9920,7 +9472,6 @@ func rewriteValueMIPS64_OpZero_10(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Zero [3] ptr mem) - // cond: // result: (MOVBstore [2] ptr (MOVVconst [0]) (MOVBstore [1] ptr (MOVVconst [0]) (MOVBstore [0] ptr (MOVVconst [0]) mem))) for { if v.AuxInt != 3 { @@ -10130,7 +9681,6 @@ func rewriteValueMIPS64_OpZero_10(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -10141,7 +9691,6 @@ func rewriteValueMIPS64_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 x) - // cond: // result: (MOVHUreg x) for { x := v.Args[0] @@ -10152,7 +9701,6 @@ func rewriteValueMIPS64_OpZeroExt16to64_0(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 x) - // cond: // result: (MOVWUreg x) for { x := v.Args[0] @@ -10163,7 +9711,6 @@ func rewriteValueMIPS64_OpZeroExt32to64_0(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -10174,7 +9721,6 @@ func rewriteValueMIPS64_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -10185,7 +9731,6 @@ func rewriteValueMIPS64_OpZeroExt8to32_0(v *Value) bool { } func rewriteValueMIPS64_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 x) - // cond: // result: (MOVBUreg x) for { x := v.Args[0] @@ -10199,7 +9744,6 @@ func rewriteBlockMIPS64(b *Block) bool { switch b.Kind { case BlockMIPS64EQ: // match: (EQ (FPFlagTrue cmp) yes no) - // cond: // result: (FPF cmp yes no) for v.Op == OpMIPS64FPFlagTrue { cmp := v.Args[0] @@ -10209,7 +9753,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (FPFlagFalse cmp) yes no) - // cond: // result: (FPT cmp yes no) for v.Op == OpMIPS64FPFlagFalse { cmp := v.Args[0] @@ -10219,7 +9762,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGT _ _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10236,7 +9778,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTU _ _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10253,7 +9794,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTconst _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10269,7 +9809,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (XORconst [1] cmp:(SGTUconst _)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10285,7 +9824,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (SGTUconst [1] x) yes no) - // cond: // result: (NE x yes no) for v.Op == OpMIPS64SGTUconst { if v.AuxInt != 1 { @@ -10298,16 +9836,12 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (SGTU x (MOVVconst [0])) yes no) - // cond: // result: (EQ x yes no) for v.Op == OpMIPS64SGTU { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } b.Kind = BlockMIPS64EQ @@ -10316,7 +9850,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (SGTconst [0] x) yes no) - // cond: // result: (GEZ x yes no) for v.Op == OpMIPS64SGTconst { if v.AuxInt != 0 { @@ -10329,16 +9862,12 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (SGT x (MOVVconst [0])) yes no) - // cond: // result: (LEZ x yes no) for v.Op == OpMIPS64SGT { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } b.Kind = BlockMIPS64LEZ @@ -10347,7 +9876,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (EQ (MOVVconst [0]) yes no) - // cond: // result: (First nil yes no) for v.Op == OpMIPS64MOVVconst { if v.AuxInt != 0 { @@ -10430,7 +9958,6 @@ func rewriteBlockMIPS64(b *Block) bool { } case BlockIf: // match: (If cond yes no) - // cond: // result: (NE cond yes no) for { cond := b.Control @@ -10497,7 +10024,6 @@ func rewriteBlockMIPS64(b *Block) bool { } case BlockMIPS64NE: // match: (NE (FPFlagTrue cmp) yes no) - // cond: // result: (FPT cmp yes no) for v.Op == OpMIPS64FPFlagTrue { cmp := v.Args[0] @@ -10507,7 +10033,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (FPFlagFalse cmp) yes no) - // cond: // result: (FPF cmp yes no) for v.Op == OpMIPS64FPFlagFalse { cmp := v.Args[0] @@ -10517,7 +10042,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGT _ _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10534,7 +10058,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTU _ _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10551,7 +10074,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTconst _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10567,7 +10089,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (XORconst [1] cmp:(SGTUconst _)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { @@ -10583,7 +10104,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (SGTUconst [1] x) yes no) - // cond: // result: (EQ x yes no) for v.Op == OpMIPS64SGTUconst { if v.AuxInt != 1 { @@ -10596,16 +10116,12 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (SGTU x (MOVVconst [0])) yes no) - // cond: // result: (NE x yes no) for v.Op == OpMIPS64SGTU { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } b.Kind = BlockMIPS64NE @@ -10614,7 +10130,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (SGTconst [0] x) yes no) - // cond: // result: (LTZ x yes no) for v.Op == OpMIPS64SGTconst { if v.AuxInt != 0 { @@ -10627,16 +10142,12 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (SGT x (MOVVconst [0])) yes no) - // cond: // result: (GTZ x yes no) for v.Op == OpMIPS64SGT { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpMIPS64MOVVconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpMIPS64MOVVconst || v_1.AuxInt != 0 { break } b.Kind = BlockMIPS64GTZ @@ -10645,7 +10156,6 @@ func rewriteBlockMIPS64(b *Block) bool { return true } // match: (NE (MOVVconst [0]) yes no) - // cond: // result: (First nil no yes) for v.Op == OpMIPS64MOVVconst { if v.AuxInt != 0 { diff --git a/src/cmd/compile/internal/ssa/rewritePPC64.go b/src/cmd/compile/internal/ssa/rewritePPC64.go index 33b2bc057f..4d2dfc1074 100644 --- a/src/cmd/compile/internal/ssa/rewritePPC64.go +++ b/src/cmd/compile/internal/ssa/rewritePPC64.go @@ -722,7 +722,6 @@ func rewriteValuePPC64(v *Value) bool { } func rewriteValuePPC64_OpAbs_0(v *Value) bool { // match: (Abs x) - // cond: // result: (FABS x) for { x := v.Args[0] @@ -733,7 +732,6 @@ func rewriteValuePPC64_OpAbs_0(v *Value) bool { } func rewriteValuePPC64_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -746,7 +744,6 @@ func rewriteValuePPC64_OpAdd16_0(v *Value) bool { } func rewriteValuePPC64_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -759,7 +756,6 @@ func rewriteValuePPC64_OpAdd32_0(v *Value) bool { } func rewriteValuePPC64_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (FADDS x y) for { y := v.Args[1] @@ -772,7 +768,6 @@ func rewriteValuePPC64_OpAdd32F_0(v *Value) bool { } func rewriteValuePPC64_OpAdd64_0(v *Value) bool { // match: (Add64 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -785,7 +780,6 @@ func rewriteValuePPC64_OpAdd64_0(v *Value) bool { } func rewriteValuePPC64_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (FADD x y) for { y := v.Args[1] @@ -798,7 +792,6 @@ func rewriteValuePPC64_OpAdd64F_0(v *Value) bool { } func rewriteValuePPC64_OpAdd64carry_0(v *Value) bool { // match: (Add64carry x y c) - // cond: // result: (LoweredAdd64Carry x y c) for { c := v.Args[2] @@ -813,7 +806,6 @@ func rewriteValuePPC64_OpAdd64carry_0(v *Value) bool { } func rewriteValuePPC64_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -826,7 +818,6 @@ func rewriteValuePPC64_OpAdd8_0(v *Value) bool { } func rewriteValuePPC64_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -839,7 +830,6 @@ func rewriteValuePPC64_OpAddPtr_0(v *Value) bool { } func rewriteValuePPC64_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -852,7 +842,6 @@ func rewriteValuePPC64_OpAddr_0(v *Value) bool { } func rewriteValuePPC64_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -865,7 +854,6 @@ func rewriteValuePPC64_OpAnd16_0(v *Value) bool { } func rewriteValuePPC64_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -878,7 +866,6 @@ func rewriteValuePPC64_OpAnd32_0(v *Value) bool { } func rewriteValuePPC64_OpAnd64_0(v *Value) bool { // match: (And64 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -891,7 +878,6 @@ func rewriteValuePPC64_OpAnd64_0(v *Value) bool { } func rewriteValuePPC64_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -904,7 +890,6 @@ func rewriteValuePPC64_OpAnd8_0(v *Value) bool { } func rewriteValuePPC64_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -917,7 +902,6 @@ func rewriteValuePPC64_OpAndB_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicAdd32_0(v *Value) bool { // match: (AtomicAdd32 ptr val mem) - // cond: // result: (LoweredAtomicAdd32 ptr val mem) for { mem := v.Args[2] @@ -932,7 +916,6 @@ func rewriteValuePPC64_OpAtomicAdd32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicAdd64_0(v *Value) bool { // match: (AtomicAdd64 ptr val mem) - // cond: // result: (LoweredAtomicAdd64 ptr val mem) for { mem := v.Args[2] @@ -947,7 +930,6 @@ func rewriteValuePPC64_OpAtomicAdd64_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicAnd8_0(v *Value) bool { // match: (AtomicAnd8 ptr val mem) - // cond: // result: (LoweredAtomicAnd8 ptr val mem) for { mem := v.Args[2] @@ -962,7 +944,6 @@ func rewriteValuePPC64_OpAtomicAnd8_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicCompareAndSwap32_0(v *Value) bool { // match: (AtomicCompareAndSwap32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas32 [1] ptr old new_ mem) for { mem := v.Args[3] @@ -980,7 +961,6 @@ func rewriteValuePPC64_OpAtomicCompareAndSwap32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicCompareAndSwap64_0(v *Value) bool { // match: (AtomicCompareAndSwap64 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas64 [1] ptr old new_ mem) for { mem := v.Args[3] @@ -998,7 +978,6 @@ func rewriteValuePPC64_OpAtomicCompareAndSwap64_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicCompareAndSwapRel32_0(v *Value) bool { // match: (AtomicCompareAndSwapRel32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas32 [0] ptr old new_ mem) for { mem := v.Args[3] @@ -1016,7 +995,6 @@ func rewriteValuePPC64_OpAtomicCompareAndSwapRel32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicExchange32_0(v *Value) bool { // match: (AtomicExchange32 ptr val mem) - // cond: // result: (LoweredAtomicExchange32 ptr val mem) for { mem := v.Args[2] @@ -1031,7 +1009,6 @@ func rewriteValuePPC64_OpAtomicExchange32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicExchange64_0(v *Value) bool { // match: (AtomicExchange64 ptr val mem) - // cond: // result: (LoweredAtomicExchange64 ptr val mem) for { mem := v.Args[2] @@ -1046,7 +1023,6 @@ func rewriteValuePPC64_OpAtomicExchange64_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicLoad32_0(v *Value) bool { // match: (AtomicLoad32 ptr mem) - // cond: // result: (LoweredAtomicLoad32 [1] ptr mem) for { mem := v.Args[1] @@ -1060,7 +1036,6 @@ func rewriteValuePPC64_OpAtomicLoad32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicLoad64_0(v *Value) bool { // match: (AtomicLoad64 ptr mem) - // cond: // result: (LoweredAtomicLoad64 [1] ptr mem) for { mem := v.Args[1] @@ -1074,7 +1049,6 @@ func rewriteValuePPC64_OpAtomicLoad64_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicLoad8_0(v *Value) bool { // match: (AtomicLoad8 ptr mem) - // cond: // result: (LoweredAtomicLoad8 [1] ptr mem) for { mem := v.Args[1] @@ -1088,7 +1062,6 @@ func rewriteValuePPC64_OpAtomicLoad8_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicLoadAcq32_0(v *Value) bool { // match: (AtomicLoadAcq32 ptr mem) - // cond: // result: (LoweredAtomicLoad32 [0] ptr mem) for { mem := v.Args[1] @@ -1102,7 +1075,6 @@ func rewriteValuePPC64_OpAtomicLoadAcq32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicLoadPtr_0(v *Value) bool { // match: (AtomicLoadPtr ptr mem) - // cond: // result: (LoweredAtomicLoadPtr [1] ptr mem) for { mem := v.Args[1] @@ -1116,7 +1088,6 @@ func rewriteValuePPC64_OpAtomicLoadPtr_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicOr8_0(v *Value) bool { // match: (AtomicOr8 ptr val mem) - // cond: // result: (LoweredAtomicOr8 ptr val mem) for { mem := v.Args[2] @@ -1131,7 +1102,6 @@ func rewriteValuePPC64_OpAtomicOr8_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicStore32_0(v *Value) bool { // match: (AtomicStore32 ptr val mem) - // cond: // result: (LoweredAtomicStore32 [1] ptr val mem) for { mem := v.Args[2] @@ -1147,7 +1117,6 @@ func rewriteValuePPC64_OpAtomicStore32_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicStore64_0(v *Value) bool { // match: (AtomicStore64 ptr val mem) - // cond: // result: (LoweredAtomicStore64 [1] ptr val mem) for { mem := v.Args[2] @@ -1163,7 +1132,6 @@ func rewriteValuePPC64_OpAtomicStore64_0(v *Value) bool { } func rewriteValuePPC64_OpAtomicStoreRel32_0(v *Value) bool { // match: (AtomicStoreRel32 ptr val mem) - // cond: // result: (LoweredAtomicStore32 [0] ptr val mem) for { mem := v.Args[2] @@ -1180,7 +1148,6 @@ func rewriteValuePPC64_OpAtomicStoreRel32_0(v *Value) bool { func rewriteValuePPC64_OpAvg64u_0(v *Value) bool { b := v.Block // match: (Avg64u x y) - // cond: // result: (ADD (SRDconst (SUB x y) [1]) y) for { t := v.Type @@ -1202,7 +1169,6 @@ func rewriteValuePPC64_OpBitLen32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen32 x) - // cond: // result: (SUB (MOVDconst [32]) (CNTLZW x)) for { x := v.Args[0] @@ -1220,7 +1186,6 @@ func rewriteValuePPC64_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (SUB (MOVDconst [64]) (CNTLZD x)) for { x := v.Args[0] @@ -1236,7 +1201,6 @@ func rewriteValuePPC64_OpBitLen64_0(v *Value) bool { } func rewriteValuePPC64_OpCeil_0(v *Value) bool { // match: (Ceil x) - // cond: // result: (FCEIL x) for { x := v.Args[0] @@ -1247,7 +1211,6 @@ func rewriteValuePPC64_OpCeil_0(v *Value) bool { } func rewriteValuePPC64_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -1264,7 +1227,6 @@ func rewriteValuePPC64_OpClosureCall_0(v *Value) bool { } func rewriteValuePPC64_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (NOR x x) for { x := v.Args[0] @@ -1276,7 +1238,6 @@ func rewriteValuePPC64_OpCom16_0(v *Value) bool { } func rewriteValuePPC64_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (NOR x x) for { x := v.Args[0] @@ -1288,7 +1249,6 @@ func rewriteValuePPC64_OpCom32_0(v *Value) bool { } func rewriteValuePPC64_OpCom64_0(v *Value) bool { // match: (Com64 x) - // cond: // result: (NOR x x) for { x := v.Args[0] @@ -1300,7 +1260,6 @@ func rewriteValuePPC64_OpCom64_0(v *Value) bool { } func rewriteValuePPC64_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (NOR x x) for { x := v.Args[0] @@ -1353,7 +1312,6 @@ func rewriteValuePPC64_OpCondSelect_0(v *Value) bool { } func rewriteValuePPC64_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1364,7 +1322,6 @@ func rewriteValuePPC64_OpConst16_0(v *Value) bool { } func rewriteValuePPC64_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1375,7 +1332,6 @@ func rewriteValuePPC64_OpConst32_0(v *Value) bool { } func rewriteValuePPC64_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (FMOVSconst [val]) for { val := v.AuxInt @@ -1386,7 +1342,6 @@ func rewriteValuePPC64_OpConst32F_0(v *Value) bool { } func rewriteValuePPC64_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1397,7 +1352,6 @@ func rewriteValuePPC64_OpConst64_0(v *Value) bool { } func rewriteValuePPC64_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (FMOVDconst [val]) for { val := v.AuxInt @@ -1408,7 +1362,6 @@ func rewriteValuePPC64_OpConst64F_0(v *Value) bool { } func rewriteValuePPC64_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1419,7 +1372,6 @@ func rewriteValuePPC64_OpConst8_0(v *Value) bool { } func rewriteValuePPC64_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVDconst [b]) for { b := v.AuxInt @@ -1430,7 +1382,6 @@ func rewriteValuePPC64_OpConstBool_0(v *Value) bool { } func rewriteValuePPC64_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVDconst [0]) for { v.reset(OpPPC64MOVDconst) @@ -1440,7 +1391,6 @@ func rewriteValuePPC64_OpConstNil_0(v *Value) bool { } func rewriteValuePPC64_OpCopysign_0(v *Value) bool { // match: (Copysign x y) - // cond: // result: (FCPSGN y x) for { y := v.Args[1] @@ -1455,7 +1405,6 @@ func rewriteValuePPC64_OpCtz16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz16 x) - // cond: // result: (POPCNTW (MOVHZreg (ANDN (ADDconst [-1] x) x))) for { x := v.Args[0] @@ -1496,7 +1445,6 @@ func rewriteValuePPC64_OpCtz32_0(v *Value) bool { return true } // match: (Ctz32 x) - // cond: // result: (CNTTZW (MOVWZreg x)) for { x := v.Args[0] @@ -1509,7 +1457,6 @@ func rewriteValuePPC64_OpCtz32_0(v *Value) bool { } func rewriteValuePPC64_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -1540,7 +1487,6 @@ func rewriteValuePPC64_OpCtz64_0(v *Value) bool { return true } // match: (Ctz64 x) - // cond: // result: (CNTTZD x) for { x := v.Args[0] @@ -1551,7 +1497,6 @@ func rewriteValuePPC64_OpCtz64_0(v *Value) bool { } func rewriteValuePPC64_OpCtz64NonZero_0(v *Value) bool { // match: (Ctz64NonZero x) - // cond: // result: (Ctz64 x) for { x := v.Args[0] @@ -1564,7 +1509,6 @@ func rewriteValuePPC64_OpCtz8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz8 x) - // cond: // result: (POPCNTB (MOVBZreg (ANDN (ADDconst [-1] x) x))) for { x := v.Args[0] @@ -1585,7 +1529,6 @@ func rewriteValuePPC64_OpCvt32Fto32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32Fto32 x) - // cond: // result: (MFVSRD (FCTIWZ x)) for { x := v.Args[0] @@ -1600,7 +1543,6 @@ func rewriteValuePPC64_OpCvt32Fto64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32Fto64 x) - // cond: // result: (MFVSRD (FCTIDZ x)) for { x := v.Args[0] @@ -1613,7 +1555,6 @@ func rewriteValuePPC64_OpCvt32Fto64_0(v *Value) bool { } func rewriteValuePPC64_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: x for { x := v.Args[0] @@ -1627,7 +1568,6 @@ func rewriteValuePPC64_OpCvt32to32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32to32F x) - // cond: // result: (FCFIDS (MTVSRD (SignExt32to64 x))) for { x := v.Args[0] @@ -1644,7 +1584,6 @@ func rewriteValuePPC64_OpCvt32to64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32to64F x) - // cond: // result: (FCFID (MTVSRD (SignExt32to64 x))) for { x := v.Args[0] @@ -1661,7 +1600,6 @@ func rewriteValuePPC64_OpCvt64Fto32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt64Fto32 x) - // cond: // result: (MFVSRD (FCTIWZ x)) for { x := v.Args[0] @@ -1674,7 +1612,6 @@ func rewriteValuePPC64_OpCvt64Fto32_0(v *Value) bool { } func rewriteValuePPC64_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (FRSP x) for { x := v.Args[0] @@ -1687,7 +1624,6 @@ func rewriteValuePPC64_OpCvt64Fto64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt64Fto64 x) - // cond: // result: (MFVSRD (FCTIDZ x)) for { x := v.Args[0] @@ -1702,7 +1638,6 @@ func rewriteValuePPC64_OpCvt64to32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt64to32F x) - // cond: // result: (FCFIDS (MTVSRD x)) for { x := v.Args[0] @@ -1717,7 +1652,6 @@ func rewriteValuePPC64_OpCvt64to64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt64to64F x) - // cond: // result: (FCFID (MTVSRD x)) for { x := v.Args[0] @@ -1732,7 +1666,6 @@ func rewriteValuePPC64_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (DIVW (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -1751,7 +1684,6 @@ func rewriteValuePPC64_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (DIVWU (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -1768,7 +1700,6 @@ func rewriteValuePPC64_OpDiv16u_0(v *Value) bool { } func rewriteValuePPC64_OpDiv32_0(v *Value) bool { // match: (Div32 x y) - // cond: // result: (DIVW x y) for { y := v.Args[1] @@ -1781,7 +1712,6 @@ func rewriteValuePPC64_OpDiv32_0(v *Value) bool { } func rewriteValuePPC64_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (FDIVS x y) for { y := v.Args[1] @@ -1794,7 +1724,6 @@ func rewriteValuePPC64_OpDiv32F_0(v *Value) bool { } func rewriteValuePPC64_OpDiv32u_0(v *Value) bool { // match: (Div32u x y) - // cond: // result: (DIVWU x y) for { y := v.Args[1] @@ -1807,7 +1736,6 @@ func rewriteValuePPC64_OpDiv32u_0(v *Value) bool { } func rewriteValuePPC64_OpDiv64_0(v *Value) bool { // match: (Div64 x y) - // cond: // result: (DIVD x y) for { y := v.Args[1] @@ -1820,7 +1748,6 @@ func rewriteValuePPC64_OpDiv64_0(v *Value) bool { } func rewriteValuePPC64_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (FDIV x y) for { y := v.Args[1] @@ -1833,7 +1760,6 @@ func rewriteValuePPC64_OpDiv64F_0(v *Value) bool { } func rewriteValuePPC64_OpDiv64u_0(v *Value) bool { // match: (Div64u x y) - // cond: // result: (DIVDU x y) for { y := v.Args[1] @@ -1848,7 +1774,6 @@ func rewriteValuePPC64_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (DIVW (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -1867,7 +1792,6 @@ func rewriteValuePPC64_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (DIVWU (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -1906,7 +1830,6 @@ func rewriteValuePPC64_OpEq16_0(v *Value) bool { return true } // match: (Eq16 x y) - // cond: // result: (Equal (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -1926,7 +1849,6 @@ func rewriteValuePPC64_OpEq16_0(v *Value) bool { func rewriteValuePPC64_OpEq32_0(v *Value) bool { b := v.Block // match: (Eq32 x y) - // cond: // result: (Equal (CMPW x y)) for { y := v.Args[1] @@ -1942,7 +1864,6 @@ func rewriteValuePPC64_OpEq32_0(v *Value) bool { func rewriteValuePPC64_OpEq32F_0(v *Value) bool { b := v.Block // match: (Eq32F x y) - // cond: // result: (Equal (FCMPU x y)) for { y := v.Args[1] @@ -1958,7 +1879,6 @@ func rewriteValuePPC64_OpEq32F_0(v *Value) bool { func rewriteValuePPC64_OpEq64_0(v *Value) bool { b := v.Block // match: (Eq64 x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -1974,7 +1894,6 @@ func rewriteValuePPC64_OpEq64_0(v *Value) bool { func rewriteValuePPC64_OpEq64F_0(v *Value) bool { b := v.Block // match: (Eq64F x y) - // cond: // result: (Equal (FCMPU x y)) for { y := v.Args[1] @@ -2011,7 +1930,6 @@ func rewriteValuePPC64_OpEq8_0(v *Value) bool { return true } // match: (Eq8 x y) - // cond: // result: (Equal (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -2032,7 +1950,6 @@ func rewriteValuePPC64_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (ANDconst [1] (EQV x y)) for { y := v.Args[1] @@ -2049,7 +1966,6 @@ func rewriteValuePPC64_OpEqB_0(v *Value) bool { func rewriteValuePPC64_OpEqPtr_0(v *Value) bool { b := v.Block // match: (EqPtr x y) - // cond: // result: (Equal (CMP x y)) for { y := v.Args[1] @@ -2064,7 +1980,6 @@ func rewriteValuePPC64_OpEqPtr_0(v *Value) bool { } func rewriteValuePPC64_OpFloor_0(v *Value) bool { // match: (Floor x) - // cond: // result: (FFLOOR x) for { x := v.Args[0] @@ -2077,7 +1992,6 @@ func rewriteValuePPC64_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (GreaterEqual (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -2098,7 +2012,6 @@ func rewriteValuePPC64_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (GreaterEqual (CMPWU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -2118,7 +2031,6 @@ func rewriteValuePPC64_OpGeq16U_0(v *Value) bool { func rewriteValuePPC64_OpGeq32_0(v *Value) bool { b := v.Block // match: (Geq32 x y) - // cond: // result: (GreaterEqual (CMPW x y)) for { y := v.Args[1] @@ -2134,7 +2046,6 @@ func rewriteValuePPC64_OpGeq32_0(v *Value) bool { func rewriteValuePPC64_OpGeq32F_0(v *Value) bool { b := v.Block // match: (Geq32F x y) - // cond: // result: (FGreaterEqual (FCMPU x y)) for { y := v.Args[1] @@ -2150,7 +2061,6 @@ func rewriteValuePPC64_OpGeq32F_0(v *Value) bool { func rewriteValuePPC64_OpGeq32U_0(v *Value) bool { b := v.Block // match: (Geq32U x y) - // cond: // result: (GreaterEqual (CMPWU x y)) for { y := v.Args[1] @@ -2166,7 +2076,6 @@ func rewriteValuePPC64_OpGeq32U_0(v *Value) bool { func rewriteValuePPC64_OpGeq64_0(v *Value) bool { b := v.Block // match: (Geq64 x y) - // cond: // result: (GreaterEqual (CMP x y)) for { y := v.Args[1] @@ -2182,7 +2091,6 @@ func rewriteValuePPC64_OpGeq64_0(v *Value) bool { func rewriteValuePPC64_OpGeq64F_0(v *Value) bool { b := v.Block // match: (Geq64F x y) - // cond: // result: (FGreaterEqual (FCMPU x y)) for { y := v.Args[1] @@ -2198,7 +2106,6 @@ func rewriteValuePPC64_OpGeq64F_0(v *Value) bool { func rewriteValuePPC64_OpGeq64U_0(v *Value) bool { b := v.Block // match: (Geq64U x y) - // cond: // result: (GreaterEqual (CMPU x y)) for { y := v.Args[1] @@ -2215,7 +2122,6 @@ func rewriteValuePPC64_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (GreaterEqual (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -2236,7 +2142,6 @@ func rewriteValuePPC64_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (GreaterEqual (CMPWU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -2255,7 +2160,6 @@ func rewriteValuePPC64_OpGeq8U_0(v *Value) bool { } func rewriteValuePPC64_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpPPC64LoweredGetCallerPC) @@ -2264,7 +2168,6 @@ func rewriteValuePPC64_OpGetCallerPC_0(v *Value) bool { } func rewriteValuePPC64_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpPPC64LoweredGetCallerSP) @@ -2273,7 +2176,6 @@ func rewriteValuePPC64_OpGetCallerSP_0(v *Value) bool { } func rewriteValuePPC64_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpPPC64LoweredGetClosurePtr) @@ -2284,7 +2186,6 @@ func rewriteValuePPC64_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (GreaterThan (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -2305,7 +2206,6 @@ func rewriteValuePPC64_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (GreaterThan (CMPWU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -2325,7 +2225,6 @@ func rewriteValuePPC64_OpGreater16U_0(v *Value) bool { func rewriteValuePPC64_OpGreater32_0(v *Value) bool { b := v.Block // match: (Greater32 x y) - // cond: // result: (GreaterThan (CMPW x y)) for { y := v.Args[1] @@ -2341,7 +2240,6 @@ func rewriteValuePPC64_OpGreater32_0(v *Value) bool { func rewriteValuePPC64_OpGreater32F_0(v *Value) bool { b := v.Block // match: (Greater32F x y) - // cond: // result: (FGreaterThan (FCMPU x y)) for { y := v.Args[1] @@ -2357,7 +2255,6 @@ func rewriteValuePPC64_OpGreater32F_0(v *Value) bool { func rewriteValuePPC64_OpGreater32U_0(v *Value) bool { b := v.Block // match: (Greater32U x y) - // cond: // result: (GreaterThan (CMPWU x y)) for { y := v.Args[1] @@ -2373,7 +2270,6 @@ func rewriteValuePPC64_OpGreater32U_0(v *Value) bool { func rewriteValuePPC64_OpGreater64_0(v *Value) bool { b := v.Block // match: (Greater64 x y) - // cond: // result: (GreaterThan (CMP x y)) for { y := v.Args[1] @@ -2389,7 +2285,6 @@ func rewriteValuePPC64_OpGreater64_0(v *Value) bool { func rewriteValuePPC64_OpGreater64F_0(v *Value) bool { b := v.Block // match: (Greater64F x y) - // cond: // result: (FGreaterThan (FCMPU x y)) for { y := v.Args[1] @@ -2405,7 +2300,6 @@ func rewriteValuePPC64_OpGreater64F_0(v *Value) bool { func rewriteValuePPC64_OpGreater64U_0(v *Value) bool { b := v.Block // match: (Greater64U x y) - // cond: // result: (GreaterThan (CMPU x y)) for { y := v.Args[1] @@ -2422,7 +2316,6 @@ func rewriteValuePPC64_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (GreaterThan (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -2443,7 +2336,6 @@ func rewriteValuePPC64_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (GreaterThan (CMPWU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -2462,7 +2354,6 @@ func rewriteValuePPC64_OpGreater8U_0(v *Value) bool { } func rewriteValuePPC64_OpHmul32_0(v *Value) bool { // match: (Hmul32 x y) - // cond: // result: (MULHW x y) for { y := v.Args[1] @@ -2475,7 +2366,6 @@ func rewriteValuePPC64_OpHmul32_0(v *Value) bool { } func rewriteValuePPC64_OpHmul32u_0(v *Value) bool { // match: (Hmul32u x y) - // cond: // result: (MULHWU x y) for { y := v.Args[1] @@ -2488,7 +2378,6 @@ func rewriteValuePPC64_OpHmul32u_0(v *Value) bool { } func rewriteValuePPC64_OpHmul64_0(v *Value) bool { // match: (Hmul64 x y) - // cond: // result: (MULHD x y) for { y := v.Args[1] @@ -2501,7 +2390,6 @@ func rewriteValuePPC64_OpHmul64_0(v *Value) bool { } func rewriteValuePPC64_OpHmul64u_0(v *Value) bool { // match: (Hmul64u x y) - // cond: // result: (MULHDU x y) for { y := v.Args[1] @@ -2514,7 +2402,6 @@ func rewriteValuePPC64_OpHmul64u_0(v *Value) bool { } func rewriteValuePPC64_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -2530,7 +2417,6 @@ func rewriteValuePPC64_OpInterCall_0(v *Value) bool { func rewriteValuePPC64_OpIsInBounds_0(v *Value) bool { b := v.Block // match: (IsInBounds idx len) - // cond: // result: (LessThan (CMPU idx len)) for { len := v.Args[1] @@ -2546,7 +2432,6 @@ func rewriteValuePPC64_OpIsInBounds_0(v *Value) bool { func rewriteValuePPC64_OpIsNonNil_0(v *Value) bool { b := v.Block // match: (IsNonNil ptr) - // cond: // result: (NotEqual (CMPconst [0] ptr)) for { ptr := v.Args[0] @@ -2561,7 +2446,6 @@ func rewriteValuePPC64_OpIsNonNil_0(v *Value) bool { func rewriteValuePPC64_OpIsSliceInBounds_0(v *Value) bool { b := v.Block // match: (IsSliceInBounds idx len) - // cond: // result: (LessEqual (CMPU idx len)) for { len := v.Args[1] @@ -2578,7 +2462,6 @@ func rewriteValuePPC64_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (LessEqual (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -2599,7 +2482,6 @@ func rewriteValuePPC64_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (LessEqual (CMPWU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -2619,7 +2501,6 @@ func rewriteValuePPC64_OpLeq16U_0(v *Value) bool { func rewriteValuePPC64_OpLeq32_0(v *Value) bool { b := v.Block // match: (Leq32 x y) - // cond: // result: (LessEqual (CMPW x y)) for { y := v.Args[1] @@ -2635,7 +2516,6 @@ func rewriteValuePPC64_OpLeq32_0(v *Value) bool { func rewriteValuePPC64_OpLeq32F_0(v *Value) bool { b := v.Block // match: (Leq32F x y) - // cond: // result: (FLessEqual (FCMPU x y)) for { y := v.Args[1] @@ -2651,7 +2531,6 @@ func rewriteValuePPC64_OpLeq32F_0(v *Value) bool { func rewriteValuePPC64_OpLeq32U_0(v *Value) bool { b := v.Block // match: (Leq32U x y) - // cond: // result: (LessEqual (CMPWU x y)) for { y := v.Args[1] @@ -2667,7 +2546,6 @@ func rewriteValuePPC64_OpLeq32U_0(v *Value) bool { func rewriteValuePPC64_OpLeq64_0(v *Value) bool { b := v.Block // match: (Leq64 x y) - // cond: // result: (LessEqual (CMP x y)) for { y := v.Args[1] @@ -2683,7 +2561,6 @@ func rewriteValuePPC64_OpLeq64_0(v *Value) bool { func rewriteValuePPC64_OpLeq64F_0(v *Value) bool { b := v.Block // match: (Leq64F x y) - // cond: // result: (FLessEqual (FCMPU x y)) for { y := v.Args[1] @@ -2699,7 +2576,6 @@ func rewriteValuePPC64_OpLeq64F_0(v *Value) bool { func rewriteValuePPC64_OpLeq64U_0(v *Value) bool { b := v.Block // match: (Leq64U x y) - // cond: // result: (LessEqual (CMPU x y)) for { y := v.Args[1] @@ -2716,7 +2592,6 @@ func rewriteValuePPC64_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (LessEqual (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -2737,7 +2612,6 @@ func rewriteValuePPC64_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (LessEqual (CMPWU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -2758,7 +2632,6 @@ func rewriteValuePPC64_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (LessThan (CMPW (SignExt16to32 x) (SignExt16to32 y))) for { y := v.Args[1] @@ -2779,7 +2652,6 @@ func rewriteValuePPC64_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (LessThan (CMPWU (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -2799,7 +2671,6 @@ func rewriteValuePPC64_OpLess16U_0(v *Value) bool { func rewriteValuePPC64_OpLess32_0(v *Value) bool { b := v.Block // match: (Less32 x y) - // cond: // result: (LessThan (CMPW x y)) for { y := v.Args[1] @@ -2815,7 +2686,6 @@ func rewriteValuePPC64_OpLess32_0(v *Value) bool { func rewriteValuePPC64_OpLess32F_0(v *Value) bool { b := v.Block // match: (Less32F x y) - // cond: // result: (FLessThan (FCMPU x y)) for { y := v.Args[1] @@ -2831,7 +2701,6 @@ func rewriteValuePPC64_OpLess32F_0(v *Value) bool { func rewriteValuePPC64_OpLess32U_0(v *Value) bool { b := v.Block // match: (Less32U x y) - // cond: // result: (LessThan (CMPWU x y)) for { y := v.Args[1] @@ -2847,7 +2716,6 @@ func rewriteValuePPC64_OpLess32U_0(v *Value) bool { func rewriteValuePPC64_OpLess64_0(v *Value) bool { b := v.Block // match: (Less64 x y) - // cond: // result: (LessThan (CMP x y)) for { y := v.Args[1] @@ -2863,7 +2731,6 @@ func rewriteValuePPC64_OpLess64_0(v *Value) bool { func rewriteValuePPC64_OpLess64F_0(v *Value) bool { b := v.Block // match: (Less64F x y) - // cond: // result: (FLessThan (FCMPU x y)) for { y := v.Args[1] @@ -2879,7 +2746,6 @@ func rewriteValuePPC64_OpLess64F_0(v *Value) bool { func rewriteValuePPC64_OpLess64U_0(v *Value) bool { b := v.Block // match: (Less64U x y) - // cond: // result: (LessThan (CMPU x y)) for { y := v.Args[1] @@ -2896,7 +2762,6 @@ func rewriteValuePPC64_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (LessThan (CMPW (SignExt8to32 x) (SignExt8to32 y))) for { y := v.Args[1] @@ -2917,7 +2782,6 @@ func rewriteValuePPC64_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (LessThan (CMPWU (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -3093,7 +2957,6 @@ func rewriteValuePPC64_OpLoad_0(v *Value) bool { } func rewriteValuePPC64_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -3123,7 +2986,6 @@ func rewriteValuePPC64_OpLsh16x16_0(v *Value) bool { return true } // match: (Lsh16x16 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -3200,7 +3062,6 @@ func rewriteValuePPC64_OpLsh16x32_0(v *Value) bool { return true } // match: (Lsh16x32 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -3294,7 +3155,6 @@ func rewriteValuePPC64_OpLsh16x64_0(v *Value) bool { return true } // match: (Lsh16x64 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] y)))) for { y := v.Args[1] @@ -3331,7 +3191,6 @@ func rewriteValuePPC64_OpLsh16x8_0(v *Value) bool { return true } // match: (Lsh16x8 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -3370,7 +3229,6 @@ func rewriteValuePPC64_OpLsh32x16_0(v *Value) bool { return true } // match: (Lsh32x16 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -3447,7 +3305,6 @@ func rewriteValuePPC64_OpLsh32x32_0(v *Value) bool { return true } // match: (Lsh32x32 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -3541,7 +3398,6 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x (AND y (MOVDconst [31]))) - // cond: // result: (SLW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -3553,10 +3409,7 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 31 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 31 { break } v.reset(OpPPC64SLW) @@ -3568,7 +3421,6 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x (AND (MOVDconst [31]) y)) - // cond: // result: (SLW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -3579,10 +3431,7 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 31 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 31 { break } v.reset(OpPPC64SLW) @@ -3594,19 +3443,12 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x (ANDconst [31] y)) - // cond: // result: (SLW x (ANDconst [31] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.Int32 { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.Int32 || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -3619,7 +3461,6 @@ func rewriteValuePPC64_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] y)))) for { y := v.Args[1] @@ -3656,7 +3497,6 @@ func rewriteValuePPC64_OpLsh32x8_0(v *Value) bool { return true } // match: (Lsh32x8 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -3695,7 +3535,6 @@ func rewriteValuePPC64_OpLsh64x16_0(v *Value) bool { return true } // match: (Lsh64x16 x y) - // cond: // result: (SLD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -3772,7 +3611,6 @@ func rewriteValuePPC64_OpLsh64x32_0(v *Value) bool { return true } // match: (Lsh64x32 x y) - // cond: // result: (SLD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -3866,7 +3704,6 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x (AND y (MOVDconst [63]))) - // cond: // result: (SLD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -3878,10 +3715,7 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 63 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 63 { break } v.reset(OpPPC64SLD) @@ -3893,7 +3727,6 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x (AND (MOVDconst [63]) y)) - // cond: // result: (SLD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -3904,10 +3737,7 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 63 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 63 { break } v.reset(OpPPC64SLD) @@ -3919,19 +3749,12 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x (ANDconst [63] y)) - // cond: // result: (SLD x (ANDconst [63] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.Int64 { - break - } - if v_1.AuxInt != 63 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.Int64 || v_1.AuxInt != 63 { break } y := v_1.Args[0] @@ -3944,7 +3767,6 @@ func rewriteValuePPC64_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x y) - // cond: // result: (SLD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] y)))) for { y := v.Args[1] @@ -3981,7 +3803,6 @@ func rewriteValuePPC64_OpLsh64x8_0(v *Value) bool { return true } // match: (Lsh64x8 x y) - // cond: // result: (SLD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -4020,7 +3841,6 @@ func rewriteValuePPC64_OpLsh8x16_0(v *Value) bool { return true } // match: (Lsh8x16 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -4097,7 +3917,6 @@ func rewriteValuePPC64_OpLsh8x32_0(v *Value) bool { return true } // match: (Lsh8x32 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -4191,7 +4010,6 @@ func rewriteValuePPC64_OpLsh8x64_0(v *Value) bool { return true } // match: (Lsh8x64 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] y)))) for { y := v.Args[1] @@ -4228,7 +4046,6 @@ func rewriteValuePPC64_OpLsh8x8_0(v *Value) bool { return true } // match: (Lsh8x8 x y) - // cond: // result: (SLW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -4253,7 +4070,6 @@ func rewriteValuePPC64_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (Mod32 (SignExt16to32 x) (SignExt16to32 y)) for { y := v.Args[1] @@ -4272,7 +4088,6 @@ func rewriteValuePPC64_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (Mod32u (ZeroExt16to32 x) (ZeroExt16to32 y)) for { y := v.Args[1] @@ -4291,7 +4106,6 @@ func rewriteValuePPC64_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (SUB x (MULLW y (DIVW x y))) for { y := v.Args[1] @@ -4312,7 +4126,6 @@ func rewriteValuePPC64_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (SUB x (MULLW y (DIVWU x y))) for { y := v.Args[1] @@ -4333,7 +4146,6 @@ func rewriteValuePPC64_OpMod64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64 x y) - // cond: // result: (SUB x (MULLD y (DIVD x y))) for { y := v.Args[1] @@ -4354,7 +4166,6 @@ func rewriteValuePPC64_OpMod64u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod64u x y) - // cond: // result: (SUB x (MULLD y (DIVDU x y))) for { y := v.Args[1] @@ -4375,7 +4186,6 @@ func rewriteValuePPC64_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (Mod32 (SignExt8to32 x) (SignExt8to32 y)) for { y := v.Args[1] @@ -4394,7 +4204,6 @@ func rewriteValuePPC64_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (Mod32u (ZeroExt8to32 x) (ZeroExt8to32 y)) for { y := v.Args[1] @@ -4413,7 +4222,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -4426,7 +4234,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBZload src mem) mem) for { if v.AuxInt != 1 { @@ -4445,7 +4252,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVHstore dst (MOVHZload src mem) mem) for { if v.AuxInt != 2 { @@ -4464,7 +4270,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVWstore dst (MOVWZload src mem) mem) for { if v.AuxInt != 4 { @@ -4506,7 +4311,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (MOVWstore [4] dst (MOVWZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem)) for { if v.AuxInt != 8 { @@ -4534,7 +4338,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBZload [2] src mem) (MOVHstore dst (MOVHload src mem) mem)) for { if v.AuxInt != 3 { @@ -4562,7 +4365,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (MOVBstore [4] dst (MOVBZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem)) for { if v.AuxInt != 5 { @@ -4590,7 +4392,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (MOVHstore [4] dst (MOVHZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem)) for { if v.AuxInt != 6 { @@ -4618,7 +4419,6 @@ func rewriteValuePPC64_OpMove_0(v *Value) bool { return true } // match: (Move [7] dst src mem) - // cond: // result: (MOVBstore [6] dst (MOVBZload [6] src mem) (MOVHstore [4] dst (MOVHZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem))) for { if v.AuxInt != 7 { @@ -4679,7 +4479,6 @@ func rewriteValuePPC64_OpMove_10(v *Value) bool { } func rewriteValuePPC64_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4692,7 +4491,6 @@ func rewriteValuePPC64_OpMul16_0(v *Value) bool { } func rewriteValuePPC64_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4705,7 +4503,6 @@ func rewriteValuePPC64_OpMul32_0(v *Value) bool { } func rewriteValuePPC64_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (FMULS x y) for { y := v.Args[1] @@ -4718,7 +4515,6 @@ func rewriteValuePPC64_OpMul32F_0(v *Value) bool { } func rewriteValuePPC64_OpMul64_0(v *Value) bool { // match: (Mul64 x y) - // cond: // result: (MULLD x y) for { y := v.Args[1] @@ -4731,7 +4527,6 @@ func rewriteValuePPC64_OpMul64_0(v *Value) bool { } func rewriteValuePPC64_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (FMUL x y) for { y := v.Args[1] @@ -4744,7 +4539,6 @@ func rewriteValuePPC64_OpMul64F_0(v *Value) bool { } func rewriteValuePPC64_OpMul64uhilo_0(v *Value) bool { // match: (Mul64uhilo x y) - // cond: // result: (LoweredMuluhilo x y) for { y := v.Args[1] @@ -4757,7 +4551,6 @@ func rewriteValuePPC64_OpMul64uhilo_0(v *Value) bool { } func rewriteValuePPC64_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4770,7 +4563,6 @@ func rewriteValuePPC64_OpMul8_0(v *Value) bool { } func rewriteValuePPC64_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -4781,7 +4573,6 @@ func rewriteValuePPC64_OpNeg16_0(v *Value) bool { } func rewriteValuePPC64_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -4792,7 +4583,6 @@ func rewriteValuePPC64_OpNeg32_0(v *Value) bool { } func rewriteValuePPC64_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (FNEG x) for { x := v.Args[0] @@ -4803,7 +4593,6 @@ func rewriteValuePPC64_OpNeg32F_0(v *Value) bool { } func rewriteValuePPC64_OpNeg64_0(v *Value) bool { // match: (Neg64 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -4814,7 +4603,6 @@ func rewriteValuePPC64_OpNeg64_0(v *Value) bool { } func rewriteValuePPC64_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (FNEG x) for { x := v.Args[0] @@ -4825,7 +4613,6 @@ func rewriteValuePPC64_OpNeg64F_0(v *Value) bool { } func rewriteValuePPC64_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -4858,7 +4645,6 @@ func rewriteValuePPC64_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 x y) - // cond: // result: (NotEqual (CMPW (ZeroExt16to32 x) (ZeroExt16to32 y))) for { y := v.Args[1] @@ -4878,7 +4664,6 @@ func rewriteValuePPC64_OpNeq16_0(v *Value) bool { func rewriteValuePPC64_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x y) - // cond: // result: (NotEqual (CMPW x y)) for { y := v.Args[1] @@ -4894,7 +4679,6 @@ func rewriteValuePPC64_OpNeq32_0(v *Value) bool { func rewriteValuePPC64_OpNeq32F_0(v *Value) bool { b := v.Block // match: (Neq32F x y) - // cond: // result: (NotEqual (FCMPU x y)) for { y := v.Args[1] @@ -4910,7 +4694,6 @@ func rewriteValuePPC64_OpNeq32F_0(v *Value) bool { func rewriteValuePPC64_OpNeq64_0(v *Value) bool { b := v.Block // match: (Neq64 x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -4926,7 +4709,6 @@ func rewriteValuePPC64_OpNeq64_0(v *Value) bool { func rewriteValuePPC64_OpNeq64F_0(v *Value) bool { b := v.Block // match: (Neq64F x y) - // cond: // result: (NotEqual (FCMPU x y)) for { y := v.Args[1] @@ -4963,7 +4745,6 @@ func rewriteValuePPC64_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 x y) - // cond: // result: (NotEqual (CMPW (ZeroExt8to32 x) (ZeroExt8to32 y))) for { y := v.Args[1] @@ -4982,7 +4763,6 @@ func rewriteValuePPC64_OpNeq8_0(v *Value) bool { } func rewriteValuePPC64_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -4996,7 +4776,6 @@ func rewriteValuePPC64_OpNeqB_0(v *Value) bool { func rewriteValuePPC64_OpNeqPtr_0(v *Value) bool { b := v.Block // match: (NeqPtr x y) - // cond: // result: (NotEqual (CMP x y)) for { y := v.Args[1] @@ -5011,7 +4790,6 @@ func rewriteValuePPC64_OpNeqPtr_0(v *Value) bool { } func rewriteValuePPC64_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -5024,7 +4802,6 @@ func rewriteValuePPC64_OpNilCheck_0(v *Value) bool { } func rewriteValuePPC64_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORconst [1] x) for { x := v.Args[0] @@ -5038,7 +4815,6 @@ func rewriteValuePPC64_OpOffPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (OffPtr [off] ptr) - // cond: // result: (ADD (MOVDconst [off]) ptr) for { off := v.AuxInt @@ -5053,7 +4829,6 @@ func rewriteValuePPC64_OpOffPtr_0(v *Value) bool { } func rewriteValuePPC64_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5066,7 +4841,6 @@ func rewriteValuePPC64_OpOr16_0(v *Value) bool { } func rewriteValuePPC64_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5079,7 +4853,6 @@ func rewriteValuePPC64_OpOr32_0(v *Value) bool { } func rewriteValuePPC64_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5092,7 +4865,6 @@ func rewriteValuePPC64_OpOr64_0(v *Value) bool { } func rewriteValuePPC64_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5105,7 +4877,6 @@ func rewriteValuePPC64_OpOr8_0(v *Value) bool { } func rewriteValuePPC64_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5135,10 +4906,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -5162,10 +4930,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -5189,10 +4954,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -5216,10 +4978,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -5228,7 +4987,6 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { return true } // match: (ADD (SLD x (ANDconst [63] y)) (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y)))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -5239,13 +4997,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int64 { - break - } - if v_0_1.AuxInt != 63 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int64 || v_0_1.AuxInt != 63 { break } y := v_0_1.Args[0] @@ -5258,31 +5010,16 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 64 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 64 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 63 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 63 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -5291,7 +5028,6 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { return true } // match: (ADD (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) (SLD x (ANDconst [63] y))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -5302,28 +5038,16 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 64 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 64 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 63 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 63 { break } y := v_0_1_1.Args[0] @@ -5336,16 +5060,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int64 { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int64 || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -5354,7 +5069,6 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { return true } // match: (ADD (SLW x (ANDconst [31] y)) (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y)))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -5365,13 +5079,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int32 { - break - } - if v_0_1.AuxInt != 31 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int32 || v_0_1.AuxInt != 31 { break } y := v_0_1.Args[0] @@ -5384,31 +5092,16 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 32 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 31 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 31 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -5417,7 +5110,6 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { return true } // match: (ADD (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) (SLW x (ANDconst [31] y))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -5428,28 +5120,16 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 32 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 31 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 31 { break } y := v_0_1_1.Args[0] @@ -5462,16 +5142,7 @@ func rewriteValuePPC64_OpPPC64ADD_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int32 { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int32 || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -5539,7 +5210,6 @@ func rewriteValuePPC64_OpPPC64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5552,7 +5222,6 @@ func rewriteValuePPC64_OpPPC64ADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (MOVDaddr [d] {sym} x)) - // cond: // result: (MOVDaddr [c+d] {sym} x) for { c := v.AuxInt @@ -5573,7 +5242,6 @@ func rewriteValuePPC64_OpPPC64ADDconst_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { // match: (AND x (NOR y y)) - // cond: // result: (ANDN x y) for { _ = v.Args[1] @@ -5592,7 +5260,6 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { return true } // match: (AND (NOR y y) x) - // cond: // result: (ANDN x y) for { x := v.Args[1] @@ -5610,7 +5277,6 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { return true } // match: (AND (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c&d]) for { _ = v.Args[1] @@ -5629,7 +5295,6 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { return true } // match: (AND (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c&d]) for { _ = v.Args[1] @@ -5695,10 +5360,7 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { } c := v_0.AuxInt y := v.Args[1] - if y.Op != OpPPC64MOVWZreg { - break - } - if !(c&0xFFFFFFFF == 0xFFFFFFFF) { + if y.Op != OpPPC64MOVWZreg || !(c&0xFFFFFFFF == 0xFFFFFFFF) { break } v.reset(OpCopy) @@ -5729,15 +5391,11 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { return true } // match: (AND (MOVDconst [0xFFFFFFFF]) y:(MOVWreg x)) - // cond: // result: (MOVWZreg x) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpPPC64MOVDconst { - break - } - if v_0.AuxInt != 0xFFFFFFFF { + if v_0.Op != OpPPC64MOVDconst || v_0.AuxInt != 0xFFFFFFFF { break } y := v.Args[1] @@ -5750,7 +5408,6 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { return true } // match: (AND y:(MOVWreg x) (MOVDconst [0xFFFFFFFF])) - // cond: // result: (MOVWZreg x) for { _ = v.Args[1] @@ -5760,10 +5417,7 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { } x := y.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != 0xFFFFFFFF { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != 0xFFFFFFFF { break } v.reset(OpPPC64MOVWZreg) @@ -5774,7 +5428,6 @@ func rewriteValuePPC64_OpPPC64AND_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64AND_10(v *Value) bool { // match: (AND (MOVDconst [c]) x:(MOVBZload _ _)) - // cond: // result: (ANDconst [c&0xFF] x) for { _ = v.Args[1] @@ -5794,7 +5447,6 @@ func rewriteValuePPC64_OpPPC64AND_10(v *Value) bool { return true } // match: (AND x:(MOVBZload _ _) (MOVDconst [c])) - // cond: // result: (ANDconst [c&0xFF] x) for { _ = v.Args[1] @@ -5814,7 +5466,6 @@ func rewriteValuePPC64_OpPPC64AND_10(v *Value) bool { return true } // match: (AND x:(MOVBZload _ _) (MOVDconst [c])) - // cond: // result: (ANDconst [c&0xFF] x) for { _ = v.Args[1] @@ -5834,7 +5485,6 @@ func rewriteValuePPC64_OpPPC64AND_10(v *Value) bool { return true } // match: (AND (MOVDconst [c]) x:(MOVBZload _ _)) - // cond: // result: (ANDconst [c&0xFF] x) for { _ = v.Args[1] @@ -5857,7 +5507,6 @@ func rewriteValuePPC64_OpPPC64AND_10(v *Value) bool { } func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c&d] x) for { c := v.AuxInt @@ -5873,7 +5522,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [-1] x) - // cond: // result: x for { if v.AuxInt != -1 { @@ -5886,7 +5534,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [0] _) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -5902,10 +5549,7 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { for { c := v.AuxInt y := v.Args[0] - if y.Op != OpPPC64MOVBZreg { - break - } - if !(c&0xFF == 0xFF) { + if y.Op != OpPPC64MOVBZreg || !(c&0xFF == 0xFF) { break } v.reset(OpCopy) @@ -5914,7 +5558,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [0xFF] y:(MOVBreg _)) - // cond: // result: y for { if v.AuxInt != 0xFF { @@ -5935,10 +5578,7 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { for { c := v.AuxInt y := v.Args[0] - if y.Op != OpPPC64MOVHZreg { - break - } - if !(c&0xFFFF == 0xFFFF) { + if y.Op != OpPPC64MOVHZreg || !(c&0xFFFF == 0xFFFF) { break } v.reset(OpCopy) @@ -5947,7 +5587,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [0xFFFF] y:(MOVHreg _)) - // cond: // result: y for { if v.AuxInt != 0xFFFF { @@ -5963,7 +5602,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVBreg x)) - // cond: // result: (ANDconst [c&0xFF] x) for { c := v.AuxInt @@ -5978,7 +5616,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVBZreg x)) - // cond: // result: (ANDconst [c&0xFF] x) for { c := v.AuxInt @@ -5993,7 +5630,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVHreg x)) - // cond: // result: (ANDconst [c&0xFFFF] x) for { c := v.AuxInt @@ -6011,7 +5647,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ANDconst_10(v *Value) bool { // match: (ANDconst [c] (MOVHZreg x)) - // cond: // result: (ANDconst [c&0xFFFF] x) for { c := v.AuxInt @@ -6026,7 +5661,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_10(v *Value) bool { return true } // match: (ANDconst [c] (MOVWreg x)) - // cond: // result: (ANDconst [c&0xFFFFFFFF] x) for { c := v.AuxInt @@ -6041,7 +5675,6 @@ func rewriteValuePPC64_OpPPC64ANDconst_10(v *Value) bool { return true } // match: (ANDconst [c] (MOVWZreg x)) - // cond: // result: (ANDconst [c&0xFFFFFFFF] x) for { c := v.AuxInt @@ -6197,7 +5830,6 @@ func rewriteValuePPC64_OpPPC64CMPUconst_0(v *Value) bool { func rewriteValuePPC64_OpPPC64CMPW_0(v *Value) bool { b := v.Block // match: (CMPW x (MOVWreg y)) - // cond: // result: (CMPW x y) for { _ = v.Args[1] @@ -6213,7 +5845,6 @@ func rewriteValuePPC64_OpPPC64CMPW_0(v *Value) bool { return true } // match: (CMPW (MOVWreg x) y) - // cond: // result: (CMPW x y) for { y := v.Args[1] @@ -6271,7 +5902,6 @@ func rewriteValuePPC64_OpPPC64CMPW_0(v *Value) bool { func rewriteValuePPC64_OpPPC64CMPWU_0(v *Value) bool { b := v.Block // match: (CMPWU x (MOVWZreg y)) - // cond: // result: (CMPWU x y) for { _ = v.Args[1] @@ -6287,7 +5917,6 @@ func rewriteValuePPC64_OpPPC64CMPWU_0(v *Value) bool { return true } // match: (CMPWU (MOVWZreg x) y) - // cond: // result: (CMPWU x y) for { y := v.Args[1] @@ -6499,7 +6128,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Equal (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -6511,7 +6139,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { return true } // match: (Equal (FlagLT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6523,7 +6150,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { return true } // match: (Equal (FlagGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -6535,7 +6161,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { return true } // match: (Equal (InvertFlags x)) - // cond: // result: (Equal x) for { v_0 := v.Args[0] @@ -6548,7 +6173,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { return true } // match: (Equal cmp) - // cond: // result: (ISELB [2] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -6563,7 +6187,6 @@ func rewriteValuePPC64_OpPPC64Equal_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FABS_0(v *Value) bool { // match: (FABS (FMOVDconst [x])) - // cond: // result: (FMOVDconst [auxFrom64F(math.Abs(auxTo64F(x)))]) for { v_0 := v.Args[0] @@ -6579,7 +6202,6 @@ func rewriteValuePPC64_OpPPC64FABS_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FADD_0(v *Value) bool { // match: (FADD (FMUL x y) z) - // cond: // result: (FMADD x y z) for { z := v.Args[1] @@ -6596,7 +6218,6 @@ func rewriteValuePPC64_OpPPC64FADD_0(v *Value) bool { return true } // match: (FADD z (FMUL x y)) - // cond: // result: (FMADD x y z) for { _ = v.Args[1] @@ -6617,7 +6238,6 @@ func rewriteValuePPC64_OpPPC64FADD_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FADDS_0(v *Value) bool { // match: (FADDS (FMULS x y) z) - // cond: // result: (FMADDS x y z) for { z := v.Args[1] @@ -6634,7 +6254,6 @@ func rewriteValuePPC64_OpPPC64FADDS_0(v *Value) bool { return true } // match: (FADDS z (FMULS x y)) - // cond: // result: (FMADDS x y z) for { _ = v.Args[1] @@ -6655,7 +6274,6 @@ func rewriteValuePPC64_OpPPC64FADDS_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FCEIL_0(v *Value) bool { // match: (FCEIL (FMOVDconst [x])) - // cond: // result: (FMOVDconst [auxFrom64F(math.Ceil(auxTo64F(x)))]) for { v_0 := v.Args[0] @@ -6671,7 +6289,6 @@ func rewriteValuePPC64_OpPPC64FCEIL_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FFLOOR_0(v *Value) bool { // match: (FFLOOR (FMOVDconst [x])) - // cond: // result: (FMOVDconst [auxFrom64F(math.Floor(auxTo64F(x)))]) for { v_0 := v.Args[0] @@ -6689,7 +6306,6 @@ func rewriteValuePPC64_OpPPC64FGreaterEqual_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (FGreaterEqual cmp) - // cond: // result: (ISEL [2] (MOVDconst [1]) (ISELB [1] (MOVDconst [1]) cmp) cmp) for { cmp := v.Args[0] @@ -6713,7 +6329,6 @@ func rewriteValuePPC64_OpPPC64FGreaterThan_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (FGreaterThan cmp) - // cond: // result: (ISELB [1] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -6730,7 +6345,6 @@ func rewriteValuePPC64_OpPPC64FLessEqual_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (FLessEqual cmp) - // cond: // result: (ISEL [2] (MOVDconst [1]) (ISELB [0] (MOVDconst [1]) cmp) cmp) for { cmp := v.Args[0] @@ -6754,7 +6368,6 @@ func rewriteValuePPC64_OpPPC64FLessThan_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (FLessThan cmp) - // cond: // result: (ISELB [0] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -6769,7 +6382,6 @@ func rewriteValuePPC64_OpPPC64FLessThan_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FMOVDload_0(v *Value) bool { // match: (FMOVDload [off] {sym} ptr (MOVDstore [off] {sym} ptr x _)) - // cond: // result: (MTVSRD x) for { off := v.AuxInt @@ -6777,13 +6389,7 @@ func rewriteValuePPC64_OpPPC64FMOVDload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpPPC64MOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -6846,7 +6452,6 @@ func rewriteValuePPC64_OpPPC64FMOVDload_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FMOVDstore_0(v *Value) bool { // match: (FMOVDstore [off] {sym} ptr (MTVSRD x) mem) - // cond: // result: (MOVDstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -7025,7 +6630,6 @@ func rewriteValuePPC64_OpPPC64FMOVSstore_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FNEG_0(v *Value) bool { // match: (FNEG (FABS x)) - // cond: // result: (FNABS x) for { v_0 := v.Args[0] @@ -7038,7 +6642,6 @@ func rewriteValuePPC64_OpPPC64FNEG_0(v *Value) bool { return true } // match: (FNEG (FNABS x)) - // cond: // result: (FABS x) for { v_0 := v.Args[0] @@ -7054,7 +6657,6 @@ func rewriteValuePPC64_OpPPC64FNEG_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FSQRT_0(v *Value) bool { // match: (FSQRT (FMOVDconst [x])) - // cond: // result: (FMOVDconst [auxFrom64F(math.Sqrt(auxTo64F(x)))]) for { v_0 := v.Args[0] @@ -7070,7 +6672,6 @@ func rewriteValuePPC64_OpPPC64FSQRT_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FSUB_0(v *Value) bool { // match: (FSUB (FMUL x y) z) - // cond: // result: (FMSUB x y z) for { z := v.Args[1] @@ -7090,7 +6691,6 @@ func rewriteValuePPC64_OpPPC64FSUB_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FSUBS_0(v *Value) bool { // match: (FSUBS (FMULS x y) z) - // cond: // result: (FMSUBS x y z) for { z := v.Args[1] @@ -7110,7 +6710,6 @@ func rewriteValuePPC64_OpPPC64FSUBS_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64FTRUNC_0(v *Value) bool { // match: (FTRUNC (FMOVDconst [x])) - // cond: // result: (FMOVDconst [auxFrom64F(math.Trunc(auxTo64F(x)))]) for { v_0 := v.Args[0] @@ -7128,7 +6727,6 @@ func rewriteValuePPC64_OpPPC64GreaterEqual_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (GreaterEqual (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -7140,7 +6738,6 @@ func rewriteValuePPC64_OpPPC64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagLT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -7152,7 +6749,6 @@ func rewriteValuePPC64_OpPPC64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (FlagGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -7164,7 +6760,6 @@ func rewriteValuePPC64_OpPPC64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual (InvertFlags x)) - // cond: // result: (LessEqual x) for { v_0 := v.Args[0] @@ -7177,7 +6772,6 @@ func rewriteValuePPC64_OpPPC64GreaterEqual_0(v *Value) bool { return true } // match: (GreaterEqual cmp) - // cond: // result: (ISELB [4] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -7194,7 +6788,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (GreaterThan (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -7206,7 +6799,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagLT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -7218,7 +6810,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (FlagGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -7230,7 +6821,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan (InvertFlags x)) - // cond: // result: (LessThan x) for { v_0 := v.Args[0] @@ -7243,7 +6833,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { return true } // match: (GreaterThan cmp) - // cond: // result: (ISELB [1] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -7258,7 +6847,6 @@ func rewriteValuePPC64_OpPPC64GreaterThan_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { // match: (ISEL [2] x _ (FlagEQ)) - // cond: // result: x for { if v.AuxInt != 2 { @@ -7276,7 +6864,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [2] _ y (FlagLT)) - // cond: // result: y for { if v.AuxInt != 2 { @@ -7294,7 +6881,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [2] _ y (FlagGT)) - // cond: // result: y for { if v.AuxInt != 2 { @@ -7312,7 +6898,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [6] _ y (FlagEQ)) - // cond: // result: y for { if v.AuxInt != 6 { @@ -7330,7 +6915,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [6] x _ (FlagLT)) - // cond: // result: x for { if v.AuxInt != 6 { @@ -7348,7 +6932,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [6] x _ (FlagGT)) - // cond: // result: x for { if v.AuxInt != 6 { @@ -7366,7 +6949,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [0] _ y (FlagEQ)) - // cond: // result: y for { if v.AuxInt != 0 { @@ -7384,7 +6966,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [0] _ y (FlagGT)) - // cond: // result: y for { if v.AuxInt != 0 { @@ -7402,7 +6983,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [0] x _ (FlagLT)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -7420,7 +7000,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { return true } // match: (ISEL [5] _ x (FlagEQ)) - // cond: // result: x for { if v.AuxInt != 5 { @@ -7441,7 +7020,6 @@ func rewriteValuePPC64_OpPPC64ISEL_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { // match: (ISEL [5] _ x (FlagLT)) - // cond: // result: x for { if v.AuxInt != 5 { @@ -7459,7 +7037,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [5] y _ (FlagGT)) - // cond: // result: y for { if v.AuxInt != 5 { @@ -7477,7 +7054,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [1] _ y (FlagEQ)) - // cond: // result: y for { if v.AuxInt != 1 { @@ -7495,7 +7071,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [1] _ y (FlagLT)) - // cond: // result: y for { if v.AuxInt != 1 { @@ -7513,7 +7088,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [1] x _ (FlagGT)) - // cond: // result: x for { if v.AuxInt != 1 { @@ -7531,7 +7105,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [4] x _ (FlagEQ)) - // cond: // result: x for { if v.AuxInt != 4 { @@ -7549,7 +7122,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [4] x _ (FlagGT)) - // cond: // result: x for { if v.AuxInt != 4 { @@ -7567,7 +7139,6 @@ func rewriteValuePPC64_OpPPC64ISEL_10(v *Value) bool { return true } // match: (ISEL [4] _ y (FlagLT)) - // cond: // result: y for { if v.AuxInt != 4 { @@ -7660,7 +7231,6 @@ func rewriteValuePPC64_OpPPC64ISEL_20(v *Value) bool { } func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { // match: (ISELB [0] _ (FlagLT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 0 { @@ -7676,7 +7246,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [0] _ (FlagGT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -7692,7 +7261,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [0] _ (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -7708,7 +7276,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [1] _ (FlagGT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 1 { @@ -7724,7 +7291,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [1] _ (FlagLT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 1 { @@ -7740,7 +7306,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [1] _ (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 1 { @@ -7756,7 +7321,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [2] _ (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 2 { @@ -7772,7 +7336,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [2] _ (FlagLT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 2 { @@ -7788,7 +7351,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [2] _ (FlagGT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 2 { @@ -7804,7 +7366,6 @@ func rewriteValuePPC64_OpPPC64ISELB_0(v *Value) bool { return true } // match: (ISELB [4] _ (FlagLT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 4 { @@ -7825,7 +7386,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ISELB [4] _ (FlagGT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 4 { @@ -7841,7 +7401,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [4] _ (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 4 { @@ -7857,7 +7416,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [5] _ (FlagGT)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 5 { @@ -7873,7 +7431,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [5] _ (FlagLT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 5 { @@ -7889,7 +7446,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [5] _ (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 5 { @@ -7905,7 +7461,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [6] _ (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 6 { @@ -7921,7 +7476,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [6] _ (FlagLT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 6 { @@ -7937,7 +7491,6 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { return true } // match: (ISELB [6] _ (FlagGT)) - // cond: // result: (MOVDconst [1]) for { if v.AuxInt != 6 { @@ -7959,10 +7512,7 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { n := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpPPC64MOVDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpPPC64MOVDconst || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -7988,10 +7538,7 @@ func rewriteValuePPC64_OpPPC64ISELB_10(v *Value) bool { n := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpPPC64MOVDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpPPC64MOVDconst || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -8022,10 +7569,7 @@ func rewriteValuePPC64_OpPPC64ISELB_20(v *Value) bool { n := v.AuxInt _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpPPC64MOVDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpPPC64MOVDconst || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -8050,7 +7594,6 @@ func rewriteValuePPC64_OpPPC64LessEqual_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (LessEqual (FlagEQ)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -8062,7 +7605,6 @@ func rewriteValuePPC64_OpPPC64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagLT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -8074,7 +7616,6 @@ func rewriteValuePPC64_OpPPC64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (FlagGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -8086,7 +7627,6 @@ func rewriteValuePPC64_OpPPC64LessEqual_0(v *Value) bool { return true } // match: (LessEqual (InvertFlags x)) - // cond: // result: (GreaterEqual x) for { v_0 := v.Args[0] @@ -8099,7 +7639,6 @@ func rewriteValuePPC64_OpPPC64LessEqual_0(v *Value) bool { return true } // match: (LessEqual cmp) - // cond: // result: (ISELB [5] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -8116,7 +7655,6 @@ func rewriteValuePPC64_OpPPC64LessThan_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (LessThan (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -8128,7 +7666,6 @@ func rewriteValuePPC64_OpPPC64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagLT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -8140,7 +7677,6 @@ func rewriteValuePPC64_OpPPC64LessThan_0(v *Value) bool { return true } // match: (LessThan (FlagGT)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -8152,7 +7688,6 @@ func rewriteValuePPC64_OpPPC64LessThan_0(v *Value) bool { return true } // match: (LessThan (InvertFlags x)) - // cond: // result: (GreaterThan x) for { v_0 := v.Args[0] @@ -8165,7 +7700,6 @@ func rewriteValuePPC64_OpPPC64LessThan_0(v *Value) bool { return true } // match: (LessThan cmp) - // cond: // result: (ISELB [0] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -8182,7 +7716,6 @@ func rewriteValuePPC64_OpPPC64MFVSRD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (MFVSRD (FMOVDconst [c])) - // cond: // result: (MOVDconst [c]) for { v_0 := v.Args[0] @@ -8359,7 +7892,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { return true } // match: (MOVBZreg (SRWconst [c] (MOVBZreg x))) - // cond: // result: (SRWconst [c] (MOVBZreg x)) for { v_0 := v.Args[0] @@ -8434,7 +7966,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { return true } // match: (MOVBZreg y:(MOVBZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -8447,7 +7978,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { return true } // match: (MOVBZreg (MOVBreg x)) - // cond: // result: (MOVBZreg x) for { v_0 := v.Args[0] @@ -8460,7 +7990,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { return true } // match: (MOVBZreg x:(MOVBZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -8474,7 +8003,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { return true } // match: (MOVBZreg x:(MOVBZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -8508,7 +8036,6 @@ func rewriteValuePPC64_OpPPC64MOVBZreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVBZreg_10(v *Value) bool { // match: (MOVBZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint8(c))]) for { v_0 := v.Args[0] @@ -8543,7 +8070,6 @@ func rewriteValuePPC64_OpPPC64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (SRAWconst [c] (MOVBreg x))) - // cond: // result: (SRAWconst [c] (MOVBreg x)) for { v_0 := v.Args[0] @@ -8654,7 +8180,6 @@ func rewriteValuePPC64_OpPPC64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg y:(MOVBreg _)) - // cond: // result: y for { y := v.Args[0] @@ -8667,7 +8192,6 @@ func rewriteValuePPC64_OpPPC64MOVBreg_0(v *Value) bool { return true } // match: (MOVBreg (MOVBZreg x)) - // cond: // result: (MOVBreg x) for { v_0 := v.Args[0] @@ -8700,7 +8224,6 @@ func rewriteValuePPC64_OpPPC64MOVBreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVBreg_10(v *Value) bool { // match: (MOVBreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int8(c))]) for { v_0 := v.Args[0] @@ -8767,7 +8290,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVBstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -8775,10 +8297,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpPPC64MOVBstorezero) @@ -8813,7 +8332,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8834,7 +8352,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBZreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8855,7 +8372,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8876,7 +8392,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVHZreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8897,7 +8412,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -8918,7 +8432,6 @@ func rewriteValuePPC64_OpPPC64MOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -9081,10 +8594,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRWconst { - break - } - if v_1.AuxInt != 24 { + if v_1.Op != OpPPC64SRWconst || v_1.AuxInt != 24 { break } w := v_1.Args[0] @@ -9101,16 +8611,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRWconst { - break - } - if x0_1.AuxInt != 16 { - break - } - if w != x0_1.Args[0] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { + if x0_1.Op != OpPPC64SRWconst || x0_1.AuxInt != 16 || w != x0_1.Args[0] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { break } v.reset(OpPPC64MOVHstore) @@ -9133,10 +8634,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRDconst { - break - } - if v_1.AuxInt != 24 { + if v_1.Op != OpPPC64SRDconst || v_1.AuxInt != 24 { break } w := v_1.Args[0] @@ -9153,16 +8651,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRDconst { - break - } - if x0_1.AuxInt != 16 { - break - } - if w != x0_1.Args[0] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { + if x0_1.Op != OpPPC64SRDconst || x0_1.AuxInt != 16 || w != x0_1.Args[0] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { break } v.reset(OpPPC64MOVHstore) @@ -9185,10 +8674,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRWconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpPPC64SRWconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] @@ -9201,13 +8687,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } mem := x0.Args[2] - if p != x0.Args[0] { - break - } - if w != x0.Args[1] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { + if p != x0.Args[0] || w != x0.Args[1] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { break } v.reset(OpPPC64MOVHstore) @@ -9227,10 +8707,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRDconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpPPC64SRDconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] @@ -9243,13 +8720,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } mem := x0.Args[2] - if p != x0.Args[0] { - break - } - if w != x0.Args[1] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { + if p != x0.Args[0] || w != x0.Args[1] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { break } v.reset(OpPPC64MOVHstore) @@ -9282,13 +8753,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRWconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpPPC64SRWconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] @@ -9304,13 +8769,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpPPC64SRWconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpPPC64SRWconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] @@ -9326,16 +8785,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpPPC64SRWconst { - break - } - if x2_1.AuxInt != 24 { - break - } - if w != x2_1.Args[0] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && clobber(x0) && clobber(x1) && clobber(x2)) { + if x2_1.Op != OpPPC64SRWconst || x2_1.AuxInt != 24 || w != x2_1.Args[0] || !(!config.BigEndian && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && clobber(x0) && clobber(x1) && clobber(x2)) { break } v.reset(OpPPC64MOVWBRstore) @@ -9370,16 +8820,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_10(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRWconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { + if x0_1.Op != OpPPC64SRWconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+1 && clobber(x0)) { break } v.reset(OpPPC64MOVHBRstore) @@ -9407,10 +8848,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRDconst { - break - } - if v_1.AuxInt != 56 { + if v_1.Op != OpPPC64SRDconst || v_1.AuxInt != 56 { break } w := v_1.Args[0] @@ -9427,13 +8865,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRDconst { - break - } - if x0_1.AuxInt != 48 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpPPC64SRDconst || x0_1.AuxInt != 48 || w != x0_1.Args[0] { break } x1 := x0.Args[2] @@ -9449,13 +8881,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpPPC64SRDconst { - break - } - if x1_1.AuxInt != 40 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpPPC64SRDconst || x1_1.AuxInt != 40 || w != x1_1.Args[0] { break } x2 := x1.Args[2] @@ -9471,13 +8897,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpPPC64SRDconst { - break - } - if x2_1.AuxInt != 32 { - break - } - if w != x2_1.Args[0] { + if x2_1.Op != OpPPC64SRDconst || x2_1.AuxInt != 32 || w != x2_1.Args[0] { break } x3 := x2.Args[2] @@ -9489,13 +8909,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } mem := x3.Args[2] - if p != x3.Args[0] { - break - } - if w != x3.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3)) { + if p != x3.Args[0] || w != x3.Args[1] || !(!config.BigEndian && i0%4 == 0 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3)) { break } v.reset(OpPPC64MOVDstore) @@ -9528,13 +8942,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x0_1 := x0.Args[1] - if x0_1.Op != OpPPC64SRDconst { - break - } - if x0_1.AuxInt != 8 { - break - } - if w != x0_1.Args[0] { + if x0_1.Op != OpPPC64SRDconst || x0_1.AuxInt != 8 || w != x0_1.Args[0] { break } x1 := x0.Args[2] @@ -9550,13 +8958,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x1_1 := x1.Args[1] - if x1_1.Op != OpPPC64SRDconst { - break - } - if x1_1.AuxInt != 16 { - break - } - if w != x1_1.Args[0] { + if x1_1.Op != OpPPC64SRDconst || x1_1.AuxInt != 16 || w != x1_1.Args[0] { break } x2 := x1.Args[2] @@ -9572,13 +8974,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x2_1 := x2.Args[1] - if x2_1.Op != OpPPC64SRDconst { - break - } - if x2_1.AuxInt != 24 { - break - } - if w != x2_1.Args[0] { + if x2_1.Op != OpPPC64SRDconst || x2_1.AuxInt != 24 || w != x2_1.Args[0] { break } x3 := x2.Args[2] @@ -9594,13 +8990,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x3_1 := x3.Args[1] - if x3_1.Op != OpPPC64SRDconst { - break - } - if x3_1.AuxInt != 32 { - break - } - if w != x3_1.Args[0] { + if x3_1.Op != OpPPC64SRDconst || x3_1.AuxInt != 32 || w != x3_1.Args[0] { break } x4 := x3.Args[2] @@ -9616,13 +9006,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x4_1 := x4.Args[1] - if x4_1.Op != OpPPC64SRDconst { - break - } - if x4_1.AuxInt != 40 { - break - } - if w != x4_1.Args[0] { + if x4_1.Op != OpPPC64SRDconst || x4_1.AuxInt != 40 || w != x4_1.Args[0] { break } x5 := x4.Args[2] @@ -9638,13 +9022,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x5_1 := x5.Args[1] - if x5_1.Op != OpPPC64SRDconst { - break - } - if x5_1.AuxInt != 48 { - break - } - if w != x5_1.Args[0] { + if x5_1.Op != OpPPC64SRDconst || x5_1.AuxInt != 48 || w != x5_1.Args[0] { break } x6 := x5.Args[2] @@ -9660,16 +9038,7 @@ func rewriteValuePPC64_OpPPC64MOVBstore_20(v *Value) bool { break } x6_1 := x6.Args[1] - if x6_1.Op != OpPPC64SRDconst { - break - } - if x6_1.AuxInt != 56 { - break - } - if w != x6_1.Args[0] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { + if x6_1.Op != OpPPC64SRDconst || x6_1.AuxInt != 56 || w != x6_1.Args[0] || !(!config.BigEndian && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6)) { break } v.reset(OpPPC64MOVDBRstore) @@ -9732,7 +9101,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVBreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -9755,7 +9123,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVBZreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -9778,7 +9145,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVHreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -9801,7 +9167,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVHZreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -9824,7 +9189,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVWreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -9847,7 +9211,6 @@ func rewriteValuePPC64_OpPPC64MOVBstoreidx_0(v *Value) bool { return true } // match: (MOVBstoreidx [off] {sym} ptr idx (MOVWZreg x) mem) - // cond: // result: (MOVBstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -10064,7 +9427,6 @@ func rewriteValuePPC64_OpPPC64MOVBstorezero_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVDload_0(v *Value) bool { // match: (MOVDload [off] {sym} ptr (FMOVDstore [off] {sym} ptr x _)) - // cond: // result: (MFVSRD x) for { off := v.AuxInt @@ -10072,13 +9434,7 @@ func rewriteValuePPC64_OpPPC64MOVDload_0(v *Value) bool { _ = v.Args[1] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64FMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpPPC64FMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -10208,7 +9564,6 @@ func rewriteValuePPC64_OpPPC64MOVDloadidx_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVDstore_0(v *Value) bool { // match: (MOVDstore [off] {sym} ptr (MFVSRD x) mem) - // cond: // result: (FMOVDstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -10280,7 +9635,6 @@ func rewriteValuePPC64_OpPPC64MOVDstore_0(v *Value) bool { return true } // match: (MOVDstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVDstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -10288,10 +9642,7 @@ func rewriteValuePPC64_OpPPC64MOVDstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpPPC64MOVDstorezero) @@ -10426,7 +9777,6 @@ func rewriteValuePPC64_OpPPC64MOVDstorezero_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVHBRstore_0(v *Value) bool { // match: (MOVHBRstore {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHBRstore {sym} ptr x mem) for { sym := v.Aux @@ -10445,7 +9795,6 @@ func rewriteValuePPC64_OpPPC64MOVHBRstore_0(v *Value) bool { return true } // match: (MOVHBRstore {sym} ptr (MOVHZreg x) mem) - // cond: // result: (MOVHBRstore {sym} ptr x mem) for { sym := v.Aux @@ -10464,7 +9813,6 @@ func rewriteValuePPC64_OpPPC64MOVHBRstore_0(v *Value) bool { return true } // match: (MOVHBRstore {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVHBRstore {sym} ptr x mem) for { sym := v.Aux @@ -10483,7 +9831,6 @@ func rewriteValuePPC64_OpPPC64MOVHBRstore_0(v *Value) bool { return true } // match: (MOVHBRstore {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVHBRstore {sym} ptr x mem) for { sym := v.Aux @@ -10641,7 +9988,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg (SRWconst [c] (MOVBZreg x))) - // cond: // result: (SRWconst [c] (MOVBZreg x)) for { v_0 := v.Args[0] @@ -10662,7 +10008,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg (SRWconst [c] (MOVHZreg x))) - // cond: // result: (SRWconst [c] (MOVHZreg x)) for { v_0 := v.Args[0] @@ -10737,7 +10082,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg y:(MOVHZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -10750,7 +10094,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg y:(MOVBZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -10763,7 +10106,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg y:(MOVHBRload _ _)) - // cond: // result: y for { y := v.Args[0] @@ -10777,7 +10119,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { return true } // match: (MOVHZreg y:(MOVHreg x)) - // cond: // result: (MOVHZreg x) for { y := v.Args[0] @@ -10793,7 +10134,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVHZreg_10(v *Value) bool { // match: (MOVHZreg x:(MOVBZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -10807,7 +10147,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg x:(MOVBZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -10821,7 +10160,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg x:(MOVHZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -10835,7 +10173,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg x:(MOVHZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -10866,7 +10203,6 @@ func rewriteValuePPC64_OpPPC64MOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -11018,7 +10354,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg (SRAWconst [c] (MOVBreg x))) - // cond: // result: (SRAWconst [c] (MOVBreg x)) for { v_0 := v.Args[0] @@ -11039,7 +10374,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg (SRAWconst [c] (MOVHreg x))) - // cond: // result: (SRAWconst [c] (MOVHreg x)) for { v_0 := v.Args[0] @@ -11150,7 +10484,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg y:(MOVHreg _)) - // cond: // result: y for { y := v.Args[0] @@ -11163,7 +10496,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_0(v *Value) bool { return true } // match: (MOVHreg y:(MOVBreg _)) - // cond: // result: y for { y := v.Args[0] @@ -11179,7 +10511,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVHreg_10(v *Value) bool { // match: (MOVHreg y:(MOVHZreg x)) - // cond: // result: (MOVHreg x) for { y := v.Args[0] @@ -11192,7 +10523,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_10(v *Value) bool { return true } // match: (MOVHreg x:(MOVHload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -11206,7 +10536,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_10(v *Value) bool { return true } // match: (MOVHreg x:(MOVHloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -11237,7 +10566,6 @@ func rewriteValuePPC64_OpPPC64MOVHreg_10(v *Value) bool { return true } // match: (MOVHreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -11306,7 +10634,6 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVHstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -11314,10 +10641,7 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpPPC64MOVHstorezero) @@ -11352,7 +10676,6 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11373,7 +10696,6 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHZreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11394,7 +10716,6 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11415,7 +10736,6 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11444,10 +10764,7 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRWconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpPPC64SRWconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] @@ -11460,13 +10777,7 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { break } mem := x0.Args[2] - if p != x0.Args[0] { - break - } - if w != x0.Args[1] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+2 && clobber(x0)) { + if p != x0.Args[0] || w != x0.Args[1] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+2 && clobber(x0)) { break } v.reset(OpPPC64MOVWstore) @@ -11486,10 +10797,7 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SRDconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpPPC64SRDconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] @@ -11502,13 +10810,7 @@ func rewriteValuePPC64_OpPPC64MOVHstore_0(v *Value) bool { break } mem := x0.Args[2] - if p != x0.Args[0] { - break - } - if w != x0.Args[1] { - break - } - if !(!config.BigEndian && x0.Uses == 1 && i1 == i0+2 && clobber(x0)) { + if p != x0.Args[0] || w != x0.Args[1] || !(!config.BigEndian && x0.Uses == 1 && i1 == i0+2 && clobber(x0)) { break } v.reset(OpPPC64MOVWstore) @@ -11567,7 +10869,6 @@ func rewriteValuePPC64_OpPPC64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx [off] {sym} ptr idx (MOVHreg x) mem) - // cond: // result: (MOVHstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -11590,7 +10891,6 @@ func rewriteValuePPC64_OpPPC64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx [off] {sym} ptr idx (MOVHZreg x) mem) - // cond: // result: (MOVHstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -11613,7 +10913,6 @@ func rewriteValuePPC64_OpPPC64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx [off] {sym} ptr idx (MOVWreg x) mem) - // cond: // result: (MOVHstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -11636,7 +10935,6 @@ func rewriteValuePPC64_OpPPC64MOVHstoreidx_0(v *Value) bool { return true } // match: (MOVHstoreidx [off] {sym} ptr idx (MOVWZreg x) mem) - // cond: // result: (MOVHstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -11712,7 +11010,6 @@ func rewriteValuePPC64_OpPPC64MOVHstorezero_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVWBRstore_0(v *Value) bool { // match: (MOVWBRstore {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWBRstore {sym} ptr x mem) for { sym := v.Aux @@ -11731,7 +11028,6 @@ func rewriteValuePPC64_OpPPC64MOVWBRstore_0(v *Value) bool { return true } // match: (MOVWBRstore {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVWBRstore {sym} ptr x mem) for { sym := v.Aux @@ -11933,7 +11229,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { return true } // match: (MOVWZreg (SRWconst [c] (MOVBZreg x))) - // cond: // result: (SRWconst [c] (MOVBZreg x)) for { v_0 := v.Args[0] @@ -11954,7 +11249,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { return true } // match: (MOVWZreg (SRWconst [c] (MOVHZreg x))) - // cond: // result: (SRWconst [c] (MOVHZreg x)) for { v_0 := v.Args[0] @@ -11975,7 +11269,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { return true } // match: (MOVWZreg (SRWconst [c] (MOVWZreg x))) - // cond: // result: (SRWconst [c] (MOVWZreg x)) for { v_0 := v.Args[0] @@ -12032,7 +11325,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { return true } // match: (MOVWZreg y:(MOVWZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12045,7 +11337,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { return true } // match: (MOVWZreg y:(MOVHZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12061,7 +11352,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { // match: (MOVWZreg y:(MOVBZreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12074,7 +11364,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg y:(MOVHBRload _ _)) - // cond: // result: y for { y := v.Args[0] @@ -12088,7 +11377,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg y:(MOVWBRload _ _)) - // cond: // result: y for { y := v.Args[0] @@ -12102,7 +11390,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg y:(MOVWreg x)) - // cond: // result: (MOVWZreg x) for { y := v.Args[0] @@ -12115,7 +11402,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVBZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12129,7 +11415,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVBZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12143,7 +11428,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVHZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12157,7 +11441,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVHZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12171,7 +11454,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVWZload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12185,7 +11467,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg x:(MOVWZloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12219,7 +11500,6 @@ func rewriteValuePPC64_OpPPC64MOVWZreg_20(v *Value) bool { return true } // match: (MOVWZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint32(c))]) for { v_0 := v.Args[0] @@ -12415,7 +11695,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg (SRAWconst [c] (MOVBreg x))) - // cond: // result: (SRAWconst [c] (MOVBreg x)) for { v_0 := v.Args[0] @@ -12436,7 +11715,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg (SRAWconst [c] (MOVHreg x))) - // cond: // result: (SRAWconst [c] (MOVHreg x)) for { v_0 := v.Args[0] @@ -12457,7 +11735,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg (SRAWconst [c] (MOVWreg x))) - // cond: // result: (SRAWconst [c] (MOVWreg x)) for { v_0 := v.Args[0] @@ -12532,7 +11809,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_0(v *Value) bool { return true } // match: (MOVWreg y:(MOVWreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12548,7 +11824,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { // match: (MOVWreg y:(MOVHreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12561,7 +11836,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg y:(MOVBreg _)) - // cond: // result: y for { y := v.Args[0] @@ -12574,7 +11848,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg y:(MOVWZreg x)) - // cond: // result: (MOVWreg x) for { y := v.Args[0] @@ -12587,7 +11860,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVHload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12601,7 +11873,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVHloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12615,7 +11886,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVWload _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12629,7 +11899,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg x:(MOVWloadidx _ _ _)) - // cond: // result: x for { x := v.Args[0] @@ -12660,7 +11929,6 @@ func rewriteValuePPC64_OpPPC64MOVWreg_10(v *Value) bool { return true } // match: (MOVWreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int32(c))]) for { v_0 := v.Args[0] @@ -12727,7 +11995,6 @@ func rewriteValuePPC64_OpPPC64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVDconst [0]) mem) - // cond: // result: (MOVWstorezero [off] {sym} ptr mem) for { off := v.AuxInt @@ -12735,10 +12002,7 @@ func rewriteValuePPC64_OpPPC64MOVWstore_0(v *Value) bool { mem := v.Args[2] ptr := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != 0 { break } v.reset(OpPPC64MOVWstorezero) @@ -12773,7 +12037,6 @@ func rewriteValuePPC64_OpPPC64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -12794,7 +12057,6 @@ func rewriteValuePPC64_OpPPC64MOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -12862,7 +12124,6 @@ func rewriteValuePPC64_OpPPC64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx [off] {sym} ptr idx (MOVWreg x) mem) - // cond: // result: (MOVWstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -12885,7 +12146,6 @@ func rewriteValuePPC64_OpPPC64MOVWstoreidx_0(v *Value) bool { return true } // match: (MOVWstoreidx [off] {sym} ptr idx (MOVWZreg x) mem) - // cond: // result: (MOVWstoreidx [off] {sym} ptr idx x mem) for { off := v.AuxInt @@ -12963,7 +12223,6 @@ func rewriteValuePPC64_OpPPC64MTVSRD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (MTVSRD (MOVDconst [c])) - // cond: // result: (FMOVDconst [c]) for { v_0 := v.Args[0] @@ -13030,7 +12289,6 @@ func rewriteValuePPC64_OpPPC64NotEqual_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NotEqual (FlagEQ)) - // cond: // result: (MOVDconst [0]) for { v_0 := v.Args[0] @@ -13042,7 +12300,6 @@ func rewriteValuePPC64_OpPPC64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagLT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -13054,7 +12311,6 @@ func rewriteValuePPC64_OpPPC64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (FlagGT)) - // cond: // result: (MOVDconst [1]) for { v_0 := v.Args[0] @@ -13066,7 +12322,6 @@ func rewriteValuePPC64_OpPPC64NotEqual_0(v *Value) bool { return true } // match: (NotEqual (InvertFlags x)) - // cond: // result: (NotEqual x) for { v_0 := v.Args[0] @@ -13079,7 +12334,6 @@ func rewriteValuePPC64_OpPPC64NotEqual_0(v *Value) bool { return true } // match: (NotEqual cmp) - // cond: // result: (ISELB [6] (MOVDconst [1]) cmp) for { cmp := v.Args[0] @@ -13111,10 +12365,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -13138,10 +12389,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -13165,10 +12413,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -13192,10 +12437,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -13204,7 +12446,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (SLD x (ANDconst [63] y)) (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y)))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -13215,13 +12456,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int64 { - break - } - if v_0_1.AuxInt != 63 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int64 || v_0_1.AuxInt != 63 { break } y := v_0_1.Args[0] @@ -13234,31 +12469,16 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 64 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 64 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 63 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 63 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -13267,7 +12487,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) (SLD x (ANDconst [63] y))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -13278,28 +12497,16 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 64 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 64 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 63 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 63 { break } y := v_0_1_1.Args[0] @@ -13312,16 +12519,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int64 { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int64 || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -13330,7 +12528,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (SLW x (ANDconst [31] y)) (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y)))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -13341,13 +12538,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int32 { - break - } - if v_0_1.AuxInt != 31 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int32 || v_0_1.AuxInt != 31 { break } y := v_0_1.Args[0] @@ -13360,31 +12551,16 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 32 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 31 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 31 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -13393,7 +12569,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) (SLW x (ANDconst [31] y))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -13404,28 +12579,16 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 32 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 31 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 31 { break } y := v_0_1_1.Args[0] @@ -13438,16 +12601,7 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int32 { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int32 || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -13456,7 +12610,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c|d]) for { _ = v.Args[1] @@ -13475,7 +12628,6 @@ func rewriteValuePPC64_OpPPC64OR_0(v *Value) bool { return true } // match: (OR (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c|d]) for { _ = v.Args[1] @@ -13551,10 +12703,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o1 := v.Args[1] - if o1.Op != OpPPC64SLWconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLWconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13566,13 +12715,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13592,10 +12735,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { t := v.Type _ = v.Args[1] o1 := v.Args[0] - if o1.Op != OpPPC64SLWconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLWconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13615,13 +12755,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13649,10 +12783,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o1 := v.Args[1] - if o1.Op != OpPPC64SLDconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLDconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13664,13 +12795,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13690,10 +12815,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { t := v.Type _ = v.Args[1] o1 := v.Args[0] - if o1.Op != OpPPC64SLDconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLDconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13713,13 +12835,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13747,10 +12863,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o1 := v.Args[1] - if o1.Op != OpPPC64SLWconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLWconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13762,13 +12875,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13790,10 +12897,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { t := v.Type _ = v.Args[1] o1 := v.Args[0] - if o1.Op != OpPPC64SLWconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLWconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13813,13 +12917,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13849,10 +12947,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o1 := v.Args[1] - if o1.Op != OpPPC64SLDconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLDconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13864,13 +12959,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13892,10 +12981,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { t := v.Type _ = v.Args[1] o1 := v.Args[0] - if o1.Op != OpPPC64SLDconst { - break - } - if o1.AuxInt != 8 { + if o1.Op != OpPPC64SLDconst || o1.AuxInt != 8 { break } x1 := o1.Args[0] @@ -13915,13 +13001,7 @@ func rewriteValuePPC64_OpPPC64OR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && o1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(o1)) { break } b = mergePoint(b, x0, x1) @@ -13975,13 +13055,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { break } b = mergePoint(b, x0, x1) @@ -14032,13 +13106,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { break } b = mergePoint(b, x0, x1) @@ -14089,13 +13157,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { break } b = mergePoint(b, x0, x1) @@ -14146,13 +13208,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && n1%8 == 0 && n2 == n1+8 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1)) { break } b = mergePoint(b, x0, x1) @@ -14177,10 +13233,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14192,18 +13245,12 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14215,10 +13262,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := o0.Args[1] @@ -14230,13 +13274,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14256,10 +13294,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14271,10 +13306,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] @@ -14287,17 +13319,11 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14309,13 +13335,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14335,18 +13355,12 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14366,17 +13380,11 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14388,13 +13396,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14414,10 +13416,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] @@ -14430,10 +13429,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14445,17 +13441,11 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14467,13 +13457,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14493,10 +13477,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14508,18 +13489,12 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14531,10 +13506,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := o0.Args[1] @@ -14546,13 +13518,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14572,10 +13538,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14587,10 +13550,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] @@ -14603,17 +13563,11 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14625,13 +13579,7 @@ func rewriteValuePPC64_OpPPC64OR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14657,18 +13605,12 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14688,17 +13630,11 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14710,13 +13646,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14736,10 +13666,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] @@ -14752,10 +13679,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14767,17 +13691,11 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { + if p != x1.Args[0] || mem != x1.Args[1] { break } - if mem != x1.Args[1] { - break - } - s1 := v.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + s1 := v.Args[1] + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14789,13 +13707,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14815,10 +13727,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14830,18 +13739,12 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14853,38 +13756,20 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := o0.Args[1] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14906,10 +13791,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -14921,43 +13803,25 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] x0 := o0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -14969,13 +13833,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -14997,18 +13855,12 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15020,35 +13872,20 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] x0 := o0.Args[1] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15060,13 +13897,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15088,36 +13919,24 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] x0 := o0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } mem := x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt s := x0_0.Aux p := x0_0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15129,17 +13948,11 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15151,13 +13964,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15179,10 +13986,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15194,18 +13998,12 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15217,38 +14015,20 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := o0.Args[1] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15270,10 +14050,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] s1 := v.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15285,43 +14062,25 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] x0 := o0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15333,13 +14092,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15361,18 +14114,12 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15384,35 +14131,20 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] x0 := o0.Args[1] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15424,13 +14156,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15452,36 +14178,24 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] x0 := o0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } mem := x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt s := x0_0.Aux p := x0_0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 16 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 16 { break } x1 := s0.Args[0] @@ -15493,17 +14207,11 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := v.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 24 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 24 { break } x2 := s1.Args[0] @@ -15515,13 +14223,7 @@ func rewriteValuePPC64_OpPPC64OR_30(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15557,18 +14259,12 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -15580,45 +14276,24 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15648,50 +14323,29 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -15703,13 +14357,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15731,18 +14379,12 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -15754,35 +14396,20 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] s1 := o0.Args[1] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] { break } x0 := v.Args[1] @@ -15794,13 +14421,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15822,43 +14443,28 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLWconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLWconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } mem := x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt s := x2_0.Aux p := x2_0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -15870,10 +14476,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := v.Args[1] @@ -15885,13 +14488,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -15921,18 +14518,12 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -15944,45 +14535,24 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16012,50 +14582,29 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -16067,13 +14616,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16095,18 +14638,12 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -16118,35 +14655,20 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } _ = x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt - if x2_0.Aux != s { - break - } - if p != x2_0.Args[0] { - break - } - if mem != x2.Args[1] { + if x2_0.Aux != s || p != x2_0.Args[0] || mem != x2.Args[1] { break } x0 := v.Args[1] @@ -16158,13 +14680,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16186,43 +14702,28 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 16 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 16 { break } x2 := s1.Args[0] - if x2.Op != OpPPC64MOVHBRload { - break - } - if x2.Type != t { + if x2.Op != OpPPC64MOVHBRload || x2.Type != t { break } mem := x2.Args[1] x2_0 := x2.Args[0] - if x2_0.Op != OpPPC64MOVDaddr { - break - } - if x2_0.Type != typ.Uintptr { + if x2_0.Op != OpPPC64MOVDaddr || x2_0.Type != typ.Uintptr { break } i0 := x2_0.AuxInt s := x2_0.Aux p := x2_0.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 8 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 8 { break } x1 := s0.Args[0] @@ -16234,10 +14735,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } x0 := v.Args[1] @@ -16249,13 +14747,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16277,10 +14769,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] s2 := v.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 32 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 32 { break } x2 := s2.Args[0] @@ -16292,18 +14781,12 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 40 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 40 { break } x1 := s1.Args[0] @@ -16315,45 +14798,24 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 48 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 48 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i0 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16378,10 +14840,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { t := v.Type _ = v.Args[1] s2 := v.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 32 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 32 { break } x2 := s2.Args[0] @@ -16393,50 +14852,29 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 48 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 48 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i0 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 40 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 40 { break } x1 := s1.Args[0] @@ -16448,13 +14886,7 @@ func rewriteValuePPC64_OpPPC64OR_40(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16485,18 +14917,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 40 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 40 { break } x1 := s1.Args[0] @@ -16508,42 +14934,24 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 48 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 48 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i0 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s2 := v.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 32 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 32 { break } x2 := s2.Args[0] @@ -16555,13 +14963,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16586,43 +14988,28 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 48 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 48 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } mem := x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i0 := x0_0.AuxInt s := x0_0.Aux p := x0_0.Args[0] s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 40 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 40 { break } x1 := s1.Args[0] @@ -16634,17 +15021,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s2 := v.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 32 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 32 { break } x2 := s2.Args[0] @@ -16656,13 +15037,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i2 == i0+2 && i3 == i0+3 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16687,10 +15062,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s2 := v.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 56 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 56 { break } x2 := s2.Args[0] @@ -16702,18 +15074,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -16725,45 +15091,24 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16788,10 +15133,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s2 := v.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 56 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 56 { break } x2 := s2.Args[0] @@ -16803,50 +15145,29 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -16858,13 +15179,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16889,18 +15204,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -16912,42 +15221,24 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] s0 := o0.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } _ = x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt - if x0_0.Aux != s { - break - } - if p != x0_0.Args[0] { - break - } - if mem != x0.Args[1] { + if x0_0.Aux != s || p != x0_0.Args[0] || mem != x0.Args[1] { break } s2 := v.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 56 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 56 { break } x2 := s2.Args[0] @@ -16959,13 +15250,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -16990,43 +15275,28 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s0 := o0.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x0 := s0.Args[0] - if x0.Op != OpPPC64MOVHBRload { - break - } - if x0.Type != t { + if x0.Op != OpPPC64MOVHBRload || x0.Type != t { break } mem := x0.Args[1] x0_0 := x0.Args[0] - if x0_0.Op != OpPPC64MOVDaddr { - break - } - if x0_0.Type != typ.Uintptr { + if x0_0.Op != OpPPC64MOVDaddr || x0_0.Type != typ.Uintptr { break } i2 := x0_0.AuxInt s := x0_0.Aux p := x0_0.Args[0] s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -17038,17 +15308,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s2 := v.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 56 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 56 { break } x2 := s2.Args[0] @@ -17060,13 +15324,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && o0.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && mergePoint(b, x0, x1, x2) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(o0)) { break } b = mergePoint(b, x0, x1, x2) @@ -17091,10 +15349,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17106,18 +15361,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17129,25 +15378,16 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17159,25 +15399,16 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17189,10 +15420,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -17204,13 +15432,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17230,10 +15452,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17245,18 +15464,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17268,25 +15481,16 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17298,17 +15502,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -17321,17 +15519,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17343,13 +15535,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17369,10 +15555,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17384,18 +15567,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17407,33 +15584,21 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17445,10 +15610,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -17460,17 +15622,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17482,13 +15638,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17508,10 +15658,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17523,18 +15670,12 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17546,25 +15687,16 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -17577,17 +15709,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17599,17 +15725,11 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17621,13 +15741,7 @@ func rewriteValuePPC64_OpPPC64OR_50(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17652,10 +15766,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17667,26 +15778,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17698,25 +15800,16 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17728,10 +15821,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -17743,17 +15833,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17765,13 +15849,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17791,10 +15869,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17806,26 +15881,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -17837,17 +15903,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -17860,17 +15920,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17882,17 +15936,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -17904,13 +15952,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -17930,10 +15972,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -17945,34 +15984,22 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -17984,10 +16011,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -17999,17 +16023,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18021,17 +16039,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18043,13 +16055,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18069,10 +16075,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] s6 := v.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18084,26 +16087,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -18116,17 +16110,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18138,17 +16126,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18160,17 +16142,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18182,13 +16158,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18208,18 +16178,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18231,18 +16195,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18254,25 +16212,16 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18284,10 +16233,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -18299,17 +16245,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18321,13 +16261,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18347,18 +16281,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18370,18 +16298,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18393,17 +16315,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -18416,17 +16332,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18438,17 +16348,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18460,13 +16364,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18486,18 +16384,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18509,26 +16401,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18540,10 +16423,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -18555,17 +16435,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18577,17 +16451,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18599,13 +16467,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18625,18 +16487,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s5 := o5.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18648,18 +16504,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -18672,17 +16522,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18694,17 +16538,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18716,17 +16554,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18738,13 +16570,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18764,26 +16590,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18795,18 +16612,12 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18818,10 +16629,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x0 := o3.Args[1] @@ -18833,17 +16641,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18855,17 +16657,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -18877,13 +16673,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -18903,26 +16693,17 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s4 := o4.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -18934,10 +16715,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -18950,17 +16728,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -18972,17 +16744,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -18994,17 +16760,11 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -19016,13 +16776,7 @@ func rewriteValuePPC64_OpPPC64OR_60(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -19048,34 +16802,22 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s3 := o3.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -19095,17 +16837,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { + if p != x0.Args[0] || mem != x0.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -19117,17 +16853,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -19139,17 +16869,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -19161,13 +16885,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -19187,26 +16905,17 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] @@ -19219,10 +16928,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] s3 := o3.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x4 := s3.Args[0] @@ -19234,17 +16940,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s4 := o4.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 40 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 40 { break } x5 := s4.Args[0] @@ -19256,17 +16956,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s5 := o5.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 48 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 48 { break } x6 := s5.Args[0] @@ -19278,17 +16972,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } s6 := v.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 56 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 56 { break } x7 := s6.Args[0] @@ -19300,13 +16988,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i0%4 == 0 && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x0.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s3.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x0, x4, x5, x6, x7) != nil && clobber(x0) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(s3) && clobber(s4) && clobber(s5) && clobber(s6) && clobber(o3) && clobber(o4) && clobber(o5)) { break } b = mergePoint(b, x0, x4, x5, x6, x7) @@ -19326,10 +17008,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -19341,18 +17020,12 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -19364,25 +17037,16 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -19394,25 +17058,16 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -19424,35 +17079,20 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x4_0.Args[0] || mem != x4.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -19474,10 +17114,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -19489,18 +17126,12 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -19512,25 +17143,16 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -19542,47 +17164,29 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -19594,13 +17198,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x3.Args[0] || mem != x3.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -19622,10 +17220,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -19637,18 +17232,12 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -19660,33 +17249,21 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -19698,39 +17275,24 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -19742,13 +17304,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -19770,10 +17326,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -19785,18 +17338,12 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -19808,55 +17355,34 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -19868,17 +17394,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -19890,13 +17410,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x2.Args[0] || mem != x2.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -19918,10 +17432,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -19933,26 +17444,17 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -19964,25 +17466,16 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -19994,39 +17487,24 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20038,13 +17516,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20066,10 +17538,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20081,26 +17550,17 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20112,47 +17572,29 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20164,17 +17606,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20186,13 +17622,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20214,10 +17644,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20229,34 +17656,22 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20268,39 +17683,24 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20312,17 +17712,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20334,13 +17728,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20362,10 +17750,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { t := v.Type _ = v.Args[1] s0 := v.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20377,56 +17762,35 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] o0 := v.Args[1] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20438,17 +17802,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20460,17 +17818,11 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20482,13 +17834,7 @@ func rewriteValuePPC64_OpPPC64OR_70(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20516,18 +17862,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20539,18 +17879,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20562,25 +17896,16 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20592,39 +17917,24 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20636,13 +17946,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20664,18 +17968,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20687,18 +17985,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20710,47 +18002,29 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20762,17 +18036,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20784,13 +18052,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20812,18 +18074,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20835,26 +18091,17 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -20866,39 +18113,24 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -20910,17 +18142,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -20932,13 +18158,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -20960,18 +18180,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] s1 := o0.Args[0] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -20983,48 +18197,30 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] o1 := o0.Args[1] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -21036,17 +18232,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -21058,17 +18248,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -21080,13 +18264,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -21108,26 +18286,17 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -21139,18 +18308,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -21162,39 +18325,24 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -21206,17 +18354,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -21228,13 +18370,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -21256,26 +18392,17 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] s2 := o1.Args[0] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -21287,40 +18414,25 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x2.Args[1] p := x2.Args[0] o2 := o1.Args[1] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -21332,17 +18444,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -21354,17 +18460,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -21376,13 +18476,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -21404,34 +18498,22 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] s3 := o2.Args[0] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -21443,32 +18525,20 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x3.Args[1] p := x3.Args[0] x4 := o2.Args[1] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } _ = x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt - if p != x4_0.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4_0.Args[0] || mem != x4.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -21480,17 +18550,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -21502,17 +18566,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -21524,13 +18582,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -21552,51 +18604,33 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { t := v.Type _ = v.Args[1] o0 := v.Args[0] - if o0.Op != OpPPC64OR { - break - } - if o0.Type != t { + if o0.Op != OpPPC64OR || o0.Type != t { break } _ = o0.Args[1] o1 := o0.Args[0] - if o1.Op != OpPPC64OR { - break - } - if o1.Type != t { + if o1.Op != OpPPC64OR || o1.Type != t { break } _ = o1.Args[1] o2 := o1.Args[0] - if o2.Op != OpPPC64OR { - break - } - if o2.Type != t { + if o2.Op != OpPPC64OR || o2.Type != t { break } _ = o2.Args[1] x4 := o2.Args[0] - if x4.Op != OpPPC64MOVWBRload { - break - } - if x4.Type != t { + if x4.Op != OpPPC64MOVWBRload || x4.Type != t { break } mem := x4.Args[1] x4_0 := x4.Args[0] - if x4_0.Op != OpPPC64MOVDaddr { - break - } - if x4_0.Type != typ.Uintptr { + if x4_0.Op != OpPPC64MOVDaddr || x4_0.Type != typ.Uintptr { break } i4 := x4_0.AuxInt p := x4_0.Args[0] s3 := o2.Args[1] - if s3.Op != OpPPC64SLDconst { - break - } - if s3.AuxInt != 32 { + if s3.Op != OpPPC64SLDconst || s3.AuxInt != 32 { break } x3 := s3.Args[0] @@ -21606,17 +18640,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { i3 := x3.AuxInt s := x3.Aux _ = x3.Args[1] - if p != x3.Args[0] { - break - } - if mem != x3.Args[1] { + if p != x3.Args[0] || mem != x3.Args[1] { break } s2 := o1.Args[1] - if s2.Op != OpPPC64SLDconst { - break - } - if s2.AuxInt != 40 { + if s2.Op != OpPPC64SLDconst || s2.AuxInt != 40 { break } x2 := s2.Args[0] @@ -21628,17 +18656,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x2.Args[1] - if p != x2.Args[0] { - break - } - if mem != x2.Args[1] { + if p != x2.Args[0] || mem != x2.Args[1] { break } s1 := o0.Args[1] - if s1.Op != OpPPC64SLDconst { - break - } - if s1.AuxInt != 48 { + if s1.Op != OpPPC64SLDconst || s1.AuxInt != 48 { break } x1 := s1.Args[0] @@ -21650,17 +18672,11 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { + if p != x1.Args[0] || mem != x1.Args[1] { break } s0 := v.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 56 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 56 { break } x0 := s0.Args[0] @@ -21672,13 +18688,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(!config.BigEndian && i1 == i0+1 && i2 == i0+2 && i3 == i0+3 && i4 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && x2.Uses == 1 && x3.Uses == 1 && x4.Uses == 1 && o0.Uses == 1 && o1.Uses == 1 && o2.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && s2.Uses == 1 && s3.Uses == 1 && mergePoint(b, x0, x1, x2, x3, x4) != nil && clobber(x0) && clobber(x1) && clobber(x2) && clobber(x3) && clobber(x4) && clobber(o0) && clobber(o1) && clobber(o2) && clobber(s0) && clobber(s1) && clobber(s2) && clobber(s3)) { break } b = mergePoint(b, x0, x1, x2, x3, x4) @@ -21708,18 +18718,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -21731,25 +18735,16 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -21761,25 +18756,16 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -21791,45 +18777,24 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -21859,18 +18824,12 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -21882,25 +18841,16 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -21912,57 +18862,33 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -21974,13 +18900,7 @@ func rewriteValuePPC64_OpPPC64OR_80(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22016,18 +18936,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22039,33 +18953,21 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22077,49 +18979,28 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22131,13 +19012,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22167,18 +19042,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22190,65 +19059,38 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22260,17 +19102,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22282,13 +19118,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22318,26 +19148,17 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22349,25 +19170,16 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22379,49 +19191,28 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22433,13 +19224,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22469,26 +19254,17 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22500,57 +19276,33 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22562,17 +19314,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22584,13 +19330,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22620,34 +19360,22 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22659,49 +19387,28 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22713,17 +19420,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22735,13 +19436,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22771,66 +19466,39 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22842,17 +19510,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22864,17 +19526,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22886,13 +19542,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -22914,18 +19564,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -22937,18 +19581,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -22960,25 +19598,16 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -22990,42 +19619,24 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } x7 := v.Args[1] @@ -23037,13 +19648,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23065,18 +19670,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23088,18 +19687,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23111,57 +19704,33 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23173,10 +19742,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x7 := v.Args[1] @@ -23188,13 +19754,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23216,18 +19776,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23239,26 +19793,17 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23270,49 +19815,28 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23324,10 +19848,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } x7 := v.Args[1] @@ -23339,13 +19860,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23367,18 +19882,12 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23390,58 +19899,34 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23453,17 +19938,11 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23475,10 +19954,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } x7 := v.Args[1] @@ -23490,13 +19966,7 @@ func rewriteValuePPC64_OpPPC64OR_90(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23524,26 +19994,17 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23555,18 +20016,12 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23578,49 +20033,28 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23632,10 +20066,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -23647,13 +20078,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23675,26 +20100,17 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23706,50 +20122,29 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23761,17 +20156,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23783,10 +20172,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -23798,13 +20184,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23826,34 +20206,22 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -23865,42 +20233,24 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x4.Args[1] p := x4.Args[0] s0 := o3.Args[1] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -23912,17 +20262,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -23934,10 +20278,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -23949,13 +20290,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -23977,59 +20312,38 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLWconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLWconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } mem := x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt s := x3_0.Aux p := x3_0.Args[0] s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24041,17 +20355,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24063,17 +20371,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24085,10 +20387,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -24100,13 +20399,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24136,18 +20429,12 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24159,25 +20446,16 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24189,25 +20467,16 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24219,45 +20488,24 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24287,18 +20535,12 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24310,25 +20552,16 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24340,57 +20573,33 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24402,13 +20611,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x4.Args[0] || mem != x4.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24438,18 +20641,12 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24461,33 +20658,21 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24499,49 +20684,28 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24553,13 +20717,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24589,18 +20747,12 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24612,65 +20764,38 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24682,17 +20807,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24704,13 +20823,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x5.Args[0] || mem != x5.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24740,26 +20853,17 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24771,25 +20875,16 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24801,49 +20896,28 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -24855,13 +20929,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -24891,26 +20959,17 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -24922,57 +20981,33 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -24984,17 +21019,11 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25006,13 +21035,7 @@ func rewriteValuePPC64_OpPPC64OR_100(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25048,34 +21071,22 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25087,49 +21098,28 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { - break - } - x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { - break - } - _ = x3.Args[1] - x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { - break - } - i0 := x3_0.AuxInt - if x3_0.Aux != s { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } - if p != x3_0.Args[0] { + x3 := s0.Args[0] + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } - if mem != x3.Args[1] { + _ = x3.Args[1] + x3_0 := x3.Args[0] + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } - s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { + i0 := x3_0.AuxInt + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } - if s5.AuxInt != 16 { + s5 := o4.Args[1] + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25141,17 +21131,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25163,13 +21147,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25199,66 +21177,39 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x7.Args[1] p := x7.Args[0] o5 := v.Args[1] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25270,17 +21221,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25292,17 +21237,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25314,13 +21253,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x6.Args[0] || mem != x6.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25342,18 +21275,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25365,18 +21292,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25388,25 +21309,16 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25418,42 +21330,24 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } x7 := v.Args[1] @@ -25465,13 +21359,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25493,18 +21381,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25516,18 +21398,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25539,57 +21415,33 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25601,10 +21453,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } x7 := v.Args[1] @@ -25616,13 +21465,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25644,18 +21487,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25667,26 +21504,17 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25698,49 +21526,28 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25752,10 +21559,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } x7 := v.Args[1] @@ -25767,13 +21571,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25795,18 +21593,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] s6 := o5.Args[0] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -25818,58 +21610,34 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x6.Args[1] p := x6.Args[0] o4 := o5.Args[1] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -25881,17 +21649,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25903,10 +21665,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } x7 := v.Args[1] @@ -25918,13 +21677,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -25946,26 +21699,17 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -25977,18 +21721,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -26000,49 +21738,28 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -26054,10 +21771,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -26069,13 +21783,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -26097,26 +21805,17 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] s5 := o4.Args[0] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -26128,50 +21827,29 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x5.Args[1] p := x5.Args[0] o3 := o4.Args[1] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -26183,17 +21861,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -26205,10 +21877,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -26220,13 +21889,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -26248,34 +21911,22 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s4 := o3.Args[0] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -26287,42 +21938,24 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { mem := x4.Args[1] p := x4.Args[0] s0 := o3.Args[1] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } _ = x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt - if x3_0.Aux != s { - break - } - if p != x3_0.Args[0] { - break - } - if mem != x3.Args[1] { + if x3_0.Aux != s || p != x3_0.Args[0] || mem != x3.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -26334,17 +21967,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -26356,10 +21983,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -26371,13 +21995,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -26399,59 +22017,38 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { t := v.Type _ = v.Args[1] o5 := v.Args[0] - if o5.Op != OpPPC64OR { - break - } - if o5.Type != t { + if o5.Op != OpPPC64OR || o5.Type != t { break } _ = o5.Args[1] o4 := o5.Args[0] - if o4.Op != OpPPC64OR { - break - } - if o4.Type != t { + if o4.Op != OpPPC64OR || o4.Type != t { break } _ = o4.Args[1] o3 := o4.Args[0] - if o3.Op != OpPPC64OR { - break - } - if o3.Type != t { + if o3.Op != OpPPC64OR || o3.Type != t { break } _ = o3.Args[1] s0 := o3.Args[0] - if s0.Op != OpPPC64SLDconst { - break - } - if s0.AuxInt != 32 { + if s0.Op != OpPPC64SLDconst || s0.AuxInt != 32 { break } x3 := s0.Args[0] - if x3.Op != OpPPC64MOVWBRload { - break - } - if x3.Type != t { + if x3.Op != OpPPC64MOVWBRload || x3.Type != t { break } mem := x3.Args[1] x3_0 := x3.Args[0] - if x3_0.Op != OpPPC64MOVDaddr { - break - } - if x3_0.Type != typ.Uintptr { + if x3_0.Op != OpPPC64MOVDaddr || x3_0.Type != typ.Uintptr { break } i0 := x3_0.AuxInt s := x3_0.Aux p := x3_0.Args[0] s4 := o3.Args[1] - if s4.Op != OpPPC64SLDconst { - break - } - if s4.AuxInt != 24 { + if s4.Op != OpPPC64SLDconst || s4.AuxInt != 24 { break } x4 := s4.Args[0] @@ -26463,17 +22060,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x4.Args[1] - if p != x4.Args[0] { - break - } - if mem != x4.Args[1] { + if p != x4.Args[0] || mem != x4.Args[1] { break } s5 := o4.Args[1] - if s5.Op != OpPPC64SLDconst { - break - } - if s5.AuxInt != 16 { + if s5.Op != OpPPC64SLDconst || s5.AuxInt != 16 { break } x5 := s5.Args[0] @@ -26485,17 +22076,11 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x5.Args[1] - if p != x5.Args[0] { - break - } - if mem != x5.Args[1] { + if p != x5.Args[0] || mem != x5.Args[1] { break } s6 := o5.Args[1] - if s6.Op != OpPPC64SLDconst { - break - } - if s6.AuxInt != 8 { + if s6.Op != OpPPC64SLDconst || s6.AuxInt != 8 { break } x6 := s6.Args[0] @@ -26507,10 +22092,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x6.Args[1] - if p != x6.Args[0] { - break - } - if mem != x6.Args[1] { + if p != x6.Args[0] || mem != x6.Args[1] { break } x7 := v.Args[1] @@ -26522,13 +22104,7 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { break } _ = x7.Args[1] - if p != x7.Args[0] { - break - } - if mem != x7.Args[1] { - break - } - if !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { + if p != x7.Args[0] || mem != x7.Args[1] || !(!config.BigEndian && i4 == i0+4 && i5 == i0+5 && i6 == i0+6 && i7 == i0+7 && x3.Uses == 1 && x4.Uses == 1 && x5.Uses == 1 && x6.Uses == 1 && x7.Uses == 1 && o3.Uses == 1 && o4.Uses == 1 && o5.Uses == 1 && s0.Uses == 1 && s4.Uses == 1 && s5.Uses == 1 && s6.Uses == 1 && mergePoint(b, x3, x4, x5, x6, x7) != nil && clobber(x3) && clobber(x4) && clobber(x5) && clobber(x6) && clobber(x7) && clobber(o3) && clobber(o4) && clobber(o5) && clobber(s0) && clobber(s4) && clobber(s5) && clobber(s6)) { break } b = mergePoint(b, x3, x4, x5, x6, x7) @@ -26547,16 +22123,12 @@ func rewriteValuePPC64_OpPPC64OR_110(v *Value) bool { } func rewriteValuePPC64_OpPPC64ORN_0(v *Value) bool { // match: (ORN x (MOVDconst [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64MOVDconst { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpPPC64MOVDconst || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -26568,7 +22140,6 @@ func rewriteValuePPC64_OpPPC64ORN_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ORconst_0(v *Value) bool { // match: (ORconst [c] (ORconst [d] x)) - // cond: // result: (ORconst [c|d] x) for { c := v.AuxInt @@ -26584,7 +22155,6 @@ func rewriteValuePPC64_OpPPC64ORconst_0(v *Value) bool { return true } // match: (ORconst [-1] _) - // cond: // result: (MOVDconst [-1]) for { if v.AuxInt != -1 { @@ -26595,7 +22165,6 @@ func rewriteValuePPC64_OpPPC64ORconst_0(v *Value) bool { return true } // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -26611,7 +22180,6 @@ func rewriteValuePPC64_OpPPC64ORconst_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ROTL_0(v *Value) bool { // match: (ROTL x (MOVDconst [c])) - // cond: // result: (ROTLconst x [c&63]) for { _ = v.Args[1] @@ -26630,7 +22198,6 @@ func rewriteValuePPC64_OpPPC64ROTL_0(v *Value) bool { } func rewriteValuePPC64_OpPPC64ROTLW_0(v *Value) bool { // match: (ROTLW x (MOVDconst [c])) - // cond: // result: (ROTLWconst x [c&31]) for { _ = v.Args[1] @@ -26688,10 +22255,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -26715,10 +22279,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpPPC64ROTLconst) @@ -26742,10 +22303,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -26769,10 +22327,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpPPC64ROTLWconst) @@ -26781,7 +22336,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (SLD x (ANDconst [63] y)) (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y)))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -26792,13 +22346,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int64 { - break - } - if v_0_1.AuxInt != 63 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int64 || v_0_1.AuxInt != 63 { break } y := v_0_1.Args[0] @@ -26811,31 +22359,16 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 64 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 64 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 63 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 63 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -26844,7 +22377,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) (SLD x (ANDconst [63] y))) - // cond: // result: (ROTL x y) for { _ = v.Args[1] @@ -26855,28 +22387,16 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 64 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 64 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 63 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 63 { break } y := v_0_1_1.Args[0] @@ -26889,16 +22409,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int64 { - break - } - if v_1_1.AuxInt != 63 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int64 || v_1_1.AuxInt != 63 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTL) @@ -26907,7 +22418,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (SLW x (ANDconst [31] y)) (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y)))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -26918,13 +22428,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64ANDconst { - break - } - if v_0_1.Type != typ.Int32 { - break - } - if v_0_1.AuxInt != 31 { + if v_0_1.Op != OpPPC64ANDconst || v_0_1.Type != typ.Int32 || v_0_1.AuxInt != 31 { break } y := v_0_1.Args[0] @@ -26937,31 +22441,16 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64SUB { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64SUB || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 32 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 32 { break } v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1_1.Type != typ.UInt { - break - } - if v_1_1_1.AuxInt != 31 { - break - } - if y != v_1_1_1.Args[0] { + if v_1_1_1.Op != OpPPC64ANDconst || v_1_1_1.Type != typ.UInt || v_1_1_1.AuxInt != 31 || y != v_1_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -26970,7 +22459,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) (SLW x (ANDconst [31] y))) - // cond: // result: (ROTLW x y) for { _ = v.Args[1] @@ -26981,28 +22469,16 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpPPC64SUB { - break - } - if v_0_1.Type != typ.UInt { + if v_0_1.Op != OpPPC64SUB || v_0_1.Type != typ.UInt { break } _ = v_0_1.Args[1] v_0_1_0 := v_0_1.Args[0] - if v_0_1_0.Op != OpPPC64MOVDconst { - break - } - if v_0_1_0.AuxInt != 32 { + if v_0_1_0.Op != OpPPC64MOVDconst || v_0_1_0.AuxInt != 32 { break } v_0_1_1 := v_0_1.Args[1] - if v_0_1_1.Op != OpPPC64ANDconst { - break - } - if v_0_1_1.Type != typ.UInt { - break - } - if v_0_1_1.AuxInt != 31 { + if v_0_1_1.Op != OpPPC64ANDconst || v_0_1_1.Type != typ.UInt || v_0_1_1.AuxInt != 31 { break } y := v_0_1_1.Args[0] @@ -27015,16 +22491,7 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.Int32 { - break - } - if v_1_1.AuxInt != 31 { - break - } - if y != v_1_1.Args[0] { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.Int32 || v_1_1.AuxInt != 31 || y != v_1_1.Args[0] { break } v.reset(OpPPC64ROTLW) @@ -27033,7 +22500,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c^d]) for { _ = v.Args[1] @@ -27052,7 +22518,6 @@ func rewriteValuePPC64_OpPPC64XOR_0(v *Value) bool { return true } // match: (XOR (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c^d]) for { _ = v.Args[1] @@ -27114,7 +22579,6 @@ func rewriteValuePPC64_OpPPC64XOR_10(v *Value) bool { } func rewriteValuePPC64_OpPPC64XORconst_0(v *Value) bool { // match: (XORconst [c] (XORconst [d] x)) - // cond: // result: (XORconst [c^d] x) for { c := v.AuxInt @@ -27130,7 +22594,6 @@ func rewriteValuePPC64_OpPPC64XORconst_0(v *Value) bool { return true } // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -27205,7 +22668,6 @@ func rewriteValuePPC64_OpPopCount16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount16 x) - // cond: // result: (POPCNTW (MOVHZreg x)) for { x := v.Args[0] @@ -27220,7 +22682,6 @@ func rewriteValuePPC64_OpPopCount32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount32 x) - // cond: // result: (POPCNTW (MOVWZreg x)) for { x := v.Args[0] @@ -27233,7 +22694,6 @@ func rewriteValuePPC64_OpPopCount32_0(v *Value) bool { } func rewriteValuePPC64_OpPopCount64_0(v *Value) bool { // match: (PopCount64 x) - // cond: // result: (POPCNTD x) for { x := v.Args[0] @@ -27246,7 +22706,6 @@ func rewriteValuePPC64_OpPopCount8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount8 x) - // cond: // result: (POPCNTB (MOVBZreg x)) for { x := v.Args[0] @@ -27261,7 +22720,6 @@ func rewriteValuePPC64_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVDconst [c])) - // cond: // result: (Or16 (Lsh16x64 x (MOVDconst [c&15])) (Rsh16Ux64 x (MOVDconst [-c&15]))) for { t := v.Type @@ -27291,7 +22749,6 @@ func rewriteValuePPC64_OpRotateLeft16_0(v *Value) bool { } func rewriteValuePPC64_OpRotateLeft32_0(v *Value) bool { // match: (RotateLeft32 x (MOVDconst [c])) - // cond: // result: (ROTLWconst [c&31] x) for { _ = v.Args[1] @@ -27307,7 +22764,6 @@ func rewriteValuePPC64_OpRotateLeft32_0(v *Value) bool { return true } // match: (RotateLeft32 x y) - // cond: // result: (ROTLW x y) for { y := v.Args[1] @@ -27320,7 +22776,6 @@ func rewriteValuePPC64_OpRotateLeft32_0(v *Value) bool { } func rewriteValuePPC64_OpRotateLeft64_0(v *Value) bool { // match: (RotateLeft64 x (MOVDconst [c])) - // cond: // result: (ROTLconst [c&63] x) for { _ = v.Args[1] @@ -27336,7 +22791,6 @@ func rewriteValuePPC64_OpRotateLeft64_0(v *Value) bool { return true } // match: (RotateLeft64 x y) - // cond: // result: (ROTL x y) for { y := v.Args[1] @@ -27351,7 +22805,6 @@ func rewriteValuePPC64_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVDconst [c])) - // cond: // result: (Or8 (Lsh8x64 x (MOVDconst [c&7])) (Rsh8Ux64 x (MOVDconst [-c&7]))) for { t := v.Type @@ -27381,7 +22834,6 @@ func rewriteValuePPC64_OpRotateLeft8_0(v *Value) bool { } func rewriteValuePPC64_OpRound_0(v *Value) bool { // match: (Round x) - // cond: // result: (FROUND x) for { x := v.Args[0] @@ -27392,7 +22844,6 @@ func rewriteValuePPC64_OpRound_0(v *Value) bool { } func rewriteValuePPC64_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: (LoweredRound32F x) for { x := v.Args[0] @@ -27403,7 +22854,6 @@ func rewriteValuePPC64_OpRound32F_0(v *Value) bool { } func rewriteValuePPC64_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: (LoweredRound64F x) for { x := v.Args[0] @@ -27432,7 +22882,6 @@ func rewriteValuePPC64_OpRsh16Ux16_0(v *Value) bool { return true } // match: (Rsh16Ux16 x y) - // cond: // result: (SRW (ZeroExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -27517,7 +22966,6 @@ func rewriteValuePPC64_OpRsh16Ux32_0(v *Value) bool { return true } // match: (Rsh16Ux32 x y) - // cond: // result: (SRW (ZeroExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -27619,7 +23067,6 @@ func rewriteValuePPC64_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 x y) - // cond: // result: (SRW (ZeroExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] y)))) for { y := v.Args[1] @@ -27660,7 +23107,6 @@ func rewriteValuePPC64_OpRsh16Ux8_0(v *Value) bool { return true } // match: (Rsh16Ux8 x y) - // cond: // result: (SRW (ZeroExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -27703,7 +23149,6 @@ func rewriteValuePPC64_OpRsh16x16_0(v *Value) bool { return true } // match: (Rsh16x16 x y) - // cond: // result: (SRAW (SignExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -27788,7 +23233,6 @@ func rewriteValuePPC64_OpRsh16x32_0(v *Value) bool { return true } // match: (Rsh16x32 x y) - // cond: // result: (SRAW (SignExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -27894,7 +23338,6 @@ func rewriteValuePPC64_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 x y) - // cond: // result: (SRAW (SignExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] y)))) for { y := v.Args[1] @@ -27935,7 +23378,6 @@ func rewriteValuePPC64_OpRsh16x8_0(v *Value) bool { return true } // match: (Rsh16x8 x y) - // cond: // result: (SRAW (SignExt16to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-16] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -27976,7 +23418,6 @@ func rewriteValuePPC64_OpRsh32Ux16_0(v *Value) bool { return true } // match: (Rsh32Ux16 x y) - // cond: // result: (SRW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -28053,7 +23494,6 @@ func rewriteValuePPC64_OpRsh32Ux32_0(v *Value) bool { return true } // match: (Rsh32Ux32 x y) - // cond: // result: (SRW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -28147,7 +23587,6 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (AND y (MOVDconst [31]))) - // cond: // result: (SRW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -28159,10 +23598,7 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 31 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 31 { break } v.reset(OpPPC64SRW) @@ -28174,7 +23610,6 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (AND (MOVDconst [31]) y)) - // cond: // result: (SRW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -28185,10 +23620,7 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 31 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 31 { break } v.reset(OpPPC64SRW) @@ -28200,19 +23632,12 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (ANDconst [31] y)) - // cond: // result: (SRW x (ANDconst [31] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.UInt { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.UInt || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -28225,34 +23650,21 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (SUB (MOVDconst [32]) (ANDconst [31] y))) - // cond: // result: (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.UInt { - break - } - if v_1_1.AuxInt != 31 { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.UInt || v_1_1.AuxInt != 31 { break } y := v_1_1.Args[0] @@ -28270,40 +23682,27 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (SUB (MOVDconst [32]) (AND y (MOVDconst [31])))) - // cond: // result: (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] y := v_1_1.Args[0] v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1_1.AuxInt != 31 { + if v_1_1_1.Op != OpPPC64MOVDconst || v_1_1_1.AuxInt != 31 { break } v.reset(OpPPC64SRW) @@ -28320,39 +23719,26 @@ func rewriteValuePPC64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (SUB (MOVDconst [32]) (AND (MOVDconst [31]) y))) - // cond: // result: (SRW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } y := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 31 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 31 { break } v.reset(OpPPC64SRW) @@ -28374,7 +23760,6 @@ func rewriteValuePPC64_OpRsh32Ux64_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux64 x y) - // cond: // result: (SRW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] y)))) for { y := v.Args[1] @@ -28411,7 +23796,6 @@ func rewriteValuePPC64_OpRsh32Ux8_0(v *Value) bool { return true } // match: (Rsh32Ux8 x y) - // cond: // result: (SRW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -28450,7 +23834,6 @@ func rewriteValuePPC64_OpRsh32x16_0(v *Value) bool { return true } // match: (Rsh32x16 x y) - // cond: // result: (SRAW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -28527,7 +23910,6 @@ func rewriteValuePPC64_OpRsh32x32_0(v *Value) bool { return true } // match: (Rsh32x32 x y) - // cond: // result: (SRAW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -28623,7 +24005,6 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (AND y (MOVDconst [31]))) - // cond: // result: (SRAW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -28635,10 +24016,7 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 31 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 31 { break } v.reset(OpPPC64SRAW) @@ -28650,7 +24028,6 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (AND (MOVDconst [31]) y)) - // cond: // result: (SRAW x (ANDconst [31] y)) for { _ = v.Args[1] @@ -28661,10 +24038,7 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 31 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 31 { break } v.reset(OpPPC64SRAW) @@ -28676,19 +24050,12 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (ANDconst [31] y)) - // cond: // result: (SRAW x (ANDconst [31] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.UInt { - break - } - if v_1.AuxInt != 31 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.UInt || v_1.AuxInt != 31 { break } y := v_1.Args[0] @@ -28701,34 +24068,21 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (SUB (MOVDconst [32]) (ANDconst [31] y))) - // cond: // result: (SRAW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.UInt { - break - } - if v_1_1.AuxInt != 31 { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.UInt || v_1_1.AuxInt != 31 { break } y := v_1_1.Args[0] @@ -28746,40 +24100,27 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (SUB (MOVDconst [32]) (AND y (MOVDconst [31])))) - // cond: // result: (SRAW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] y := v_1_1.Args[0] v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1_1.AuxInt != 31 { + if v_1_1_1.Op != OpPPC64MOVDconst || v_1_1_1.AuxInt != 31 { break } v.reset(OpPPC64SRAW) @@ -28796,39 +24137,26 @@ func rewriteValuePPC64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (SUB (MOVDconst [32]) (AND (MOVDconst [31]) y))) - // cond: // result: (SRAW x (SUB (MOVDconst [32]) (ANDconst [31] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 32 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 32 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } y := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 31 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 31 { break } v.reset(OpPPC64SRAW) @@ -28850,7 +24178,6 @@ func rewriteValuePPC64_OpRsh32x64_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x64 x y) - // cond: // result: (SRAW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] y)))) for { y := v.Args[1] @@ -28887,7 +24214,6 @@ func rewriteValuePPC64_OpRsh32x8_0(v *Value) bool { return true } // match: (Rsh32x8 x y) - // cond: // result: (SRAW x (ORN y (MaskIfNotCarry (ADDconstForCarry [-32] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -28926,7 +24252,6 @@ func rewriteValuePPC64_OpRsh64Ux16_0(v *Value) bool { return true } // match: (Rsh64Ux16 x y) - // cond: // result: (SRD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -29003,7 +24328,6 @@ func rewriteValuePPC64_OpRsh64Ux32_0(v *Value) bool { return true } // match: (Rsh64Ux32 x y) - // cond: // result: (SRD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -29097,7 +24421,6 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (AND y (MOVDconst [63]))) - // cond: // result: (SRD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -29109,10 +24432,7 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 63 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 63 { break } v.reset(OpPPC64SRD) @@ -29124,7 +24444,6 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (AND (MOVDconst [63]) y)) - // cond: // result: (SRD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -29135,10 +24454,7 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 63 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 63 { break } v.reset(OpPPC64SRD) @@ -29150,19 +24466,12 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (ANDconst [63] y)) - // cond: // result: (SRD x (ANDconst [63] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.UInt { - break - } - if v_1.AuxInt != 63 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.UInt || v_1.AuxInt != 63 { break } y := v_1.Args[0] @@ -29175,34 +24484,21 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (SUB (MOVDconst [64]) (ANDconst [63] y))) - // cond: // result: (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.UInt { - break - } - if v_1_1.AuxInt != 63 { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.UInt || v_1_1.AuxInt != 63 { break } y := v_1_1.Args[0] @@ -29220,40 +24516,27 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (SUB (MOVDconst [64]) (AND y (MOVDconst [63])))) - // cond: // result: (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] y := v_1_1.Args[0] v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1_1.AuxInt != 63 { + if v_1_1_1.Op != OpPPC64MOVDconst || v_1_1_1.AuxInt != 63 { break } v.reset(OpPPC64SRD) @@ -29270,39 +24553,26 @@ func rewriteValuePPC64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (SUB (MOVDconst [64]) (AND (MOVDconst [63]) y))) - // cond: // result: (SRD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } y := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 63 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 63 { break } v.reset(OpPPC64SRD) @@ -29324,7 +24594,6 @@ func rewriteValuePPC64_OpRsh64Ux64_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux64 x y) - // cond: // result: (SRD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] y)))) for { y := v.Args[1] @@ -29361,7 +24630,6 @@ func rewriteValuePPC64_OpRsh64Ux8_0(v *Value) bool { return true } // match: (Rsh64Ux8 x y) - // cond: // result: (SRD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -29400,7 +24668,6 @@ func rewriteValuePPC64_OpRsh64x16_0(v *Value) bool { return true } // match: (Rsh64x16 x y) - // cond: // result: (SRAD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -29477,7 +24744,6 @@ func rewriteValuePPC64_OpRsh64x32_0(v *Value) bool { return true } // match: (Rsh64x32 x y) - // cond: // result: (SRAD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -29573,7 +24839,6 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (AND y (MOVDconst [63]))) - // cond: // result: (SRAD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -29585,10 +24850,7 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { _ = v_1.Args[1] y := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1.AuxInt != 63 { + if v_1_1.Op != OpPPC64MOVDconst || v_1_1.AuxInt != 63 { break } v.reset(OpPPC64SRAD) @@ -29600,7 +24862,6 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (AND (MOVDconst [63]) y)) - // cond: // result: (SRAD x (ANDconst [63] y)) for { _ = v.Args[1] @@ -29611,10 +24872,7 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { } y := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 63 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 63 { break } v.reset(OpPPC64SRAD) @@ -29626,19 +24884,12 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (ANDconst [63] y)) - // cond: // result: (SRAD x (ANDconst [63] y)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64ANDconst { - break - } - if v_1.Type != typ.UInt { - break - } - if v_1.AuxInt != 63 { + if v_1.Op != OpPPC64ANDconst || v_1.Type != typ.UInt || v_1.AuxInt != 63 { break } y := v_1.Args[0] @@ -29651,34 +24902,21 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (SUB (MOVDconst [64]) (ANDconst [63] y))) - // cond: // result: (SRAD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64ANDconst { - break - } - if v_1_1.Type != typ.UInt { - break - } - if v_1_1.AuxInt != 63 { + if v_1_1.Op != OpPPC64ANDconst || v_1_1.Type != typ.UInt || v_1_1.AuxInt != 63 { break } y := v_1_1.Args[0] @@ -29696,40 +24934,27 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (SUB (MOVDconst [64]) (AND y (MOVDconst [63])))) - // cond: // result: (SRAD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } _ = v_1_1.Args[1] y := v_1_1.Args[0] v_1_1_1 := v_1_1.Args[1] - if v_1_1_1.Op != OpPPC64MOVDconst { - break - } - if v_1_1_1.AuxInt != 63 { + if v_1_1_1.Op != OpPPC64MOVDconst || v_1_1_1.AuxInt != 63 { break } v.reset(OpPPC64SRAD) @@ -29746,39 +24971,26 @@ func rewriteValuePPC64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (SUB (MOVDconst [64]) (AND (MOVDconst [63]) y))) - // cond: // result: (SRAD x (SUB (MOVDconst [64]) (ANDconst [63] y))) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpPPC64SUB { - break - } - if v_1.Type != typ.UInt { + if v_1.Op != OpPPC64SUB || v_1.Type != typ.UInt { break } _ = v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_0.AuxInt != 64 { + if v_1_0.Op != OpPPC64MOVDconst || v_1_0.AuxInt != 64 { break } v_1_1 := v_1.Args[1] - if v_1_1.Op != OpPPC64AND { - break - } - if v_1_1.Type != typ.UInt { + if v_1_1.Op != OpPPC64AND || v_1_1.Type != typ.UInt { break } y := v_1_1.Args[1] v_1_1_0 := v_1_1.Args[0] - if v_1_1_0.Op != OpPPC64MOVDconst { - break - } - if v_1_1_0.AuxInt != 63 { + if v_1_1_0.Op != OpPPC64MOVDconst || v_1_1_0.AuxInt != 63 { break } v.reset(OpPPC64SRAD) @@ -29800,7 +25012,6 @@ func rewriteValuePPC64_OpRsh64x64_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x64 x y) - // cond: // result: (SRAD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] y)))) for { y := v.Args[1] @@ -29837,7 +25048,6 @@ func rewriteValuePPC64_OpRsh64x8_0(v *Value) bool { return true } // match: (Rsh64x8 x y) - // cond: // result: (SRAD x (ORN y (MaskIfNotCarry (ADDconstForCarry [-64] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -29878,7 +25088,6 @@ func rewriteValuePPC64_OpRsh8Ux16_0(v *Value) bool { return true } // match: (Rsh8Ux16 x y) - // cond: // result: (SRW (ZeroExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -29963,7 +25172,6 @@ func rewriteValuePPC64_OpRsh8Ux32_0(v *Value) bool { return true } // match: (Rsh8Ux32 x y) - // cond: // result: (SRW (ZeroExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -30065,7 +25273,6 @@ func rewriteValuePPC64_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 x y) - // cond: // result: (SRW (ZeroExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] y)))) for { y := v.Args[1] @@ -30106,7 +25313,6 @@ func rewriteValuePPC64_OpRsh8Ux8_0(v *Value) bool { return true } // match: (Rsh8Ux8 x y) - // cond: // result: (SRW (ZeroExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -30149,7 +25355,6 @@ func rewriteValuePPC64_OpRsh8x16_0(v *Value) bool { return true } // match: (Rsh8x16 x y) - // cond: // result: (SRAW (SignExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt16to64 y))))) for { y := v.Args[1] @@ -30234,7 +25439,6 @@ func rewriteValuePPC64_OpRsh8x32_0(v *Value) bool { return true } // match: (Rsh8x32 x y) - // cond: // result: (SRAW (SignExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt32to64 y))))) for { y := v.Args[1] @@ -30340,7 +25544,6 @@ func rewriteValuePPC64_OpRsh8x64_0(v *Value) bool { return true } // match: (Rsh8x64 x y) - // cond: // result: (SRAW (SignExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] y)))) for { y := v.Args[1] @@ -30381,7 +25584,6 @@ func rewriteValuePPC64_OpRsh8x8_0(v *Value) bool { return true } // match: (Rsh8x8 x y) - // cond: // result: (SRAW (SignExt8to32 x) (ORN y (MaskIfNotCarry (ADDconstForCarry [-8] (ZeroExt8to64 y))))) for { y := v.Args[1] @@ -30406,7 +25608,6 @@ func rewriteValuePPC64_OpRsh8x8_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -30417,7 +25618,6 @@ func rewriteValuePPC64_OpSignExt16to32_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -30428,7 +25628,6 @@ func rewriteValuePPC64_OpSignExt16to64_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 x) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -30439,7 +25638,6 @@ func rewriteValuePPC64_OpSignExt32to64_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -30450,7 +25648,6 @@ func rewriteValuePPC64_OpSignExt8to16_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -30461,7 +25658,6 @@ func rewriteValuePPC64_OpSignExt8to32_0(v *Value) bool { } func rewriteValuePPC64_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -30473,7 +25669,6 @@ func rewriteValuePPC64_OpSignExt8to64_0(v *Value) bool { func rewriteValuePPC64_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRADconst (NEG x) [63]) for { t := v.Type @@ -30488,7 +25683,6 @@ func rewriteValuePPC64_OpSlicemask_0(v *Value) bool { } func rewriteValuePPC64_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (FSQRT x) for { x := v.Args[0] @@ -30499,7 +25693,6 @@ func rewriteValuePPC64_OpSqrt_0(v *Value) bool { } func rewriteValuePPC64_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -30636,7 +25829,6 @@ func rewriteValuePPC64_OpStore_0(v *Value) bool { } func rewriteValuePPC64_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -30649,7 +25841,6 @@ func rewriteValuePPC64_OpSub16_0(v *Value) bool { } func rewriteValuePPC64_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -30662,7 +25853,6 @@ func rewriteValuePPC64_OpSub32_0(v *Value) bool { } func rewriteValuePPC64_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (FSUBS x y) for { y := v.Args[1] @@ -30675,7 +25865,6 @@ func rewriteValuePPC64_OpSub32F_0(v *Value) bool { } func rewriteValuePPC64_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -30688,7 +25877,6 @@ func rewriteValuePPC64_OpSub64_0(v *Value) bool { } func rewriteValuePPC64_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (FSUB x y) for { y := v.Args[1] @@ -30701,7 +25889,6 @@ func rewriteValuePPC64_OpSub64F_0(v *Value) bool { } func rewriteValuePPC64_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -30714,7 +25901,6 @@ func rewriteValuePPC64_OpSub8_0(v *Value) bool { } func rewriteValuePPC64_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -30727,7 +25913,6 @@ func rewriteValuePPC64_OpSubPtr_0(v *Value) bool { } func rewriteValuePPC64_OpTrunc_0(v *Value) bool { // match: (Trunc x) - // cond: // result: (FTRUNC x) for { x := v.Args[0] @@ -30751,7 +25936,6 @@ func rewriteValuePPC64_OpTrunc16to8_0(v *Value) bool { return true } // match: (Trunc16to8 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -30775,7 +25959,6 @@ func rewriteValuePPC64_OpTrunc32to16_0(v *Value) bool { return true } // match: (Trunc32to16 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -30799,7 +25982,6 @@ func rewriteValuePPC64_OpTrunc32to8_0(v *Value) bool { return true } // match: (Trunc32to8 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -30823,7 +26005,6 @@ func rewriteValuePPC64_OpTrunc64to16_0(v *Value) bool { return true } // match: (Trunc64to16 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -30847,7 +26028,6 @@ func rewriteValuePPC64_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 x) - // cond: // result: (MOVWZreg x) for { x := v.Args[0] @@ -30871,7 +26051,6 @@ func rewriteValuePPC64_OpTrunc64to8_0(v *Value) bool { return true } // match: (Trunc64to8 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -30882,7 +26061,6 @@ func rewriteValuePPC64_OpTrunc64to8_0(v *Value) bool { } func rewriteValuePPC64_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -30899,7 +26077,6 @@ func rewriteValuePPC64_OpWB_0(v *Value) bool { } func rewriteValuePPC64_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -30912,7 +26089,6 @@ func rewriteValuePPC64_OpXor16_0(v *Value) bool { } func rewriteValuePPC64_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -30925,7 +26101,6 @@ func rewriteValuePPC64_OpXor32_0(v *Value) bool { } func rewriteValuePPC64_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -30938,7 +26113,6 @@ func rewriteValuePPC64_OpXor64_0(v *Value) bool { } func rewriteValuePPC64_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -30952,7 +26126,6 @@ func rewriteValuePPC64_OpXor8_0(v *Value) bool { func rewriteValuePPC64_OpZero_0(v *Value) bool { b := v.Block // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -30965,7 +26138,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [1] destptr mem) - // cond: // result: (MOVBstorezero destptr mem) for { if v.AuxInt != 1 { @@ -30979,7 +26151,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [2] destptr mem) - // cond: // result: (MOVHstorezero destptr mem) for { if v.AuxInt != 2 { @@ -30993,7 +26164,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [3] destptr mem) - // cond: // result: (MOVBstorezero [2] destptr (MOVHstorezero destptr mem)) for { if v.AuxInt != 3 { @@ -31011,7 +26181,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [4] destptr mem) - // cond: // result: (MOVWstorezero destptr mem) for { if v.AuxInt != 4 { @@ -31025,7 +26194,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [5] destptr mem) - // cond: // result: (MOVBstorezero [4] destptr (MOVWstorezero destptr mem)) for { if v.AuxInt != 5 { @@ -31043,7 +26211,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [6] destptr mem) - // cond: // result: (MOVHstorezero [4] destptr (MOVWstorezero destptr mem)) for { if v.AuxInt != 6 { @@ -31061,7 +26228,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [7] destptr mem) - // cond: // result: (MOVBstorezero [6] destptr (MOVHstorezero [4] destptr (MOVWstorezero destptr mem))) for { if v.AuxInt != 7 { @@ -31101,7 +26267,6 @@ func rewriteValuePPC64_OpZero_0(v *Value) bool { return true } // match: (Zero [8] destptr mem) - // cond: // result: (MOVWstorezero [4] destptr (MOVWstorezero [0] destptr mem)) for { if v.AuxInt != 8 { @@ -31228,7 +26393,6 @@ func rewriteValuePPC64_OpZero_10(v *Value) bool { return true } // match: (Zero [s] ptr mem) - // cond: // result: (LoweredZero [s] ptr mem) for { s := v.AuxInt @@ -31243,7 +26407,6 @@ func rewriteValuePPC64_OpZero_10(v *Value) bool { } func rewriteValuePPC64_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -31254,7 +26417,6 @@ func rewriteValuePPC64_OpZeroExt16to32_0(v *Value) bool { } func rewriteValuePPC64_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -31265,7 +26427,6 @@ func rewriteValuePPC64_OpZeroExt16to64_0(v *Value) bool { } func rewriteValuePPC64_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 x) - // cond: // result: (MOVWZreg x) for { x := v.Args[0] @@ -31276,7 +26437,6 @@ func rewriteValuePPC64_OpZeroExt32to64_0(v *Value) bool { } func rewriteValuePPC64_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -31287,7 +26447,6 @@ func rewriteValuePPC64_OpZeroExt8to16_0(v *Value) bool { } func rewriteValuePPC64_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -31298,7 +26457,6 @@ func rewriteValuePPC64_OpZeroExt8to32_0(v *Value) bool { } func rewriteValuePPC64_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -31312,7 +26470,6 @@ func rewriteBlockPPC64(b *Block) bool { switch b.Kind { case BlockPPC64EQ: // match: (EQ (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (EQ (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -31333,7 +26490,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (EQ (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -31354,7 +26510,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -31363,7 +26518,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -31373,7 +26527,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -31383,7 +26536,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -31393,7 +26545,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (EQ (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -31414,7 +26565,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (EQ (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (EQ (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -31508,7 +26658,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockPPC64GE: // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -31517,7 +26666,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GE (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -31527,7 +26675,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GE (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -31536,7 +26683,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -31546,7 +26692,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GE (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (GE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -31567,7 +26712,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GE (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (GE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -31661,7 +26805,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockPPC64GT: // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -31671,7 +26814,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GT (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -31681,7 +26823,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GT (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -31690,7 +26831,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -31700,7 +26840,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GT (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (GT (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -31721,7 +26860,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (GT (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (GT (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -31815,7 +26953,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockIf: // match: (If (Equal cc) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpPPC64Equal { cc := v.Args[0] @@ -31825,7 +26962,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (NotEqual cc) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpPPC64NotEqual { cc := v.Args[0] @@ -31835,7 +26971,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (LessThan cc) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpPPC64LessThan { cc := v.Args[0] @@ -31845,7 +26980,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (LessEqual cc) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpPPC64LessEqual { cc := v.Args[0] @@ -31855,7 +26989,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (GreaterThan cc) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpPPC64GreaterThan { cc := v.Args[0] @@ -31865,7 +26998,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (GreaterEqual cc) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpPPC64GreaterEqual { cc := v.Args[0] @@ -31875,7 +27007,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (FLessThan cc) yes no) - // cond: // result: (FLT cc yes no) for v.Op == OpPPC64FLessThan { cc := v.Args[0] @@ -31885,7 +27016,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (FLessEqual cc) yes no) - // cond: // result: (FLE cc yes no) for v.Op == OpPPC64FLessEqual { cc := v.Args[0] @@ -31895,7 +27025,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (FGreaterThan cc) yes no) - // cond: // result: (FGT cc yes no) for v.Op == OpPPC64FGreaterThan { cc := v.Args[0] @@ -31905,7 +27034,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If (FGreaterEqual cc) yes no) - // cond: // result: (FGE cc yes no) for v.Op == OpPPC64FGreaterEqual { cc := v.Args[0] @@ -31915,7 +27043,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NE (CMPWconst [0] cond) yes no) for { cond := b.Control @@ -31929,7 +27056,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockPPC64LE: // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -31938,7 +27064,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LE (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -31947,7 +27072,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LE (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -31957,7 +27081,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -31967,7 +27090,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LE (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (LE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -31988,7 +27110,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LE (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (LE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32082,7 +27203,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockPPC64LT: // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -32092,7 +27212,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LT (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -32101,7 +27220,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LT (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -32111,7 +27229,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -32121,7 +27238,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LT (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (LT (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -32142,7 +27258,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (LT (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (LT (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32236,7 +27351,6 @@ func rewriteBlockPPC64(b *Block) bool { } case BlockPPC64NE: // match: (NE (CMPWconst [0] (Equal cc)) yes no) - // cond: // result: (EQ cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32253,7 +27367,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (NotEqual cc)) yes no) - // cond: // result: (NE cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32270,7 +27383,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (LessThan cc)) yes no) - // cond: // result: (LT cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32287,7 +27399,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (LessEqual cc)) yes no) - // cond: // result: (LE cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32304,7 +27415,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (GreaterThan cc)) yes no) - // cond: // result: (GT cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32321,7 +27431,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (GreaterEqual cc)) yes no) - // cond: // result: (GE cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32338,7 +27447,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (FLessThan cc)) yes no) - // cond: // result: (FLT cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32355,7 +27463,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (FLessEqual cc)) yes no) - // cond: // result: (FLE cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32372,7 +27479,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (FGreaterThan cc)) yes no) - // cond: // result: (FGT cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32389,7 +27495,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (FGreaterEqual cc)) yes no) - // cond: // result: (FGE cc yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32406,7 +27511,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (NE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -32427,7 +27531,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (NE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { @@ -32448,7 +27551,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst @@ -32458,7 +27560,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst @@ -32467,7 +27568,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst @@ -32476,7 +27576,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] @@ -32486,7 +27585,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (NE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { @@ -32507,7 +27605,6 @@ func rewriteBlockPPC64(b *Block) bool { return true } // match: (NE (CMPWconst [0] (ANDconst [c] x)) yes no) - // cond: // result: (NE (ANDCCconst [c] x) yes no) for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { diff --git a/src/cmd/compile/internal/ssa/rewriteS390X.go b/src/cmd/compile/internal/ssa/rewriteS390X.go index 264bf255ce..08787d77f4 100644 --- a/src/cmd/compile/internal/ssa/rewriteS390X.go +++ b/src/cmd/compile/internal/ssa/rewriteS390X.go @@ -814,7 +814,6 @@ func rewriteValueS390X(v *Value) bool { } func rewriteValueS390X_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (ADDW x y) for { y := v.Args[1] @@ -827,7 +826,6 @@ func rewriteValueS390X_OpAdd16_0(v *Value) bool { } func rewriteValueS390X_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (ADDW x y) for { y := v.Args[1] @@ -840,7 +838,6 @@ func rewriteValueS390X_OpAdd32_0(v *Value) bool { } func rewriteValueS390X_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (FADDS x y) for { y := v.Args[1] @@ -853,7 +850,6 @@ func rewriteValueS390X_OpAdd32F_0(v *Value) bool { } func rewriteValueS390X_OpAdd64_0(v *Value) bool { // match: (Add64 x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -866,7 +862,6 @@ func rewriteValueS390X_OpAdd64_0(v *Value) bool { } func rewriteValueS390X_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (FADD x y) for { y := v.Args[1] @@ -879,7 +874,6 @@ func rewriteValueS390X_OpAdd64F_0(v *Value) bool { } func rewriteValueS390X_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (ADDW x y) for { y := v.Args[1] @@ -892,7 +886,6 @@ func rewriteValueS390X_OpAdd8_0(v *Value) bool { } func rewriteValueS390X_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (ADD x y) for { y := v.Args[1] @@ -905,7 +898,6 @@ func rewriteValueS390X_OpAddPtr_0(v *Value) bool { } func rewriteValueS390X_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -918,7 +910,6 @@ func rewriteValueS390X_OpAddr_0(v *Value) bool { } func rewriteValueS390X_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (ANDW x y) for { y := v.Args[1] @@ -931,7 +922,6 @@ func rewriteValueS390X_OpAnd16_0(v *Value) bool { } func rewriteValueS390X_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (ANDW x y) for { y := v.Args[1] @@ -944,7 +934,6 @@ func rewriteValueS390X_OpAnd32_0(v *Value) bool { } func rewriteValueS390X_OpAnd64_0(v *Value) bool { // match: (And64 x y) - // cond: // result: (AND x y) for { y := v.Args[1] @@ -957,7 +946,6 @@ func rewriteValueS390X_OpAnd64_0(v *Value) bool { } func rewriteValueS390X_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (ANDW x y) for { y := v.Args[1] @@ -970,7 +958,6 @@ func rewriteValueS390X_OpAnd8_0(v *Value) bool { } func rewriteValueS390X_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (ANDW x y) for { y := v.Args[1] @@ -985,7 +972,6 @@ func rewriteValueS390X_OpAtomicAdd32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (AtomicAdd32 ptr val mem) - // cond: // result: (AddTupleFirst32 val (LAA ptr val mem)) for { mem := v.Args[2] @@ -1005,7 +991,6 @@ func rewriteValueS390X_OpAtomicAdd64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (AtomicAdd64 ptr val mem) - // cond: // result: (AddTupleFirst64 val (LAAG ptr val mem)) for { mem := v.Args[2] @@ -1023,7 +1008,6 @@ func rewriteValueS390X_OpAtomicAdd64_0(v *Value) bool { } func rewriteValueS390X_OpAtomicCompareAndSwap32_0(v *Value) bool { // match: (AtomicCompareAndSwap32 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas32 ptr old new_ mem) for { mem := v.Args[3] @@ -1040,7 +1024,6 @@ func rewriteValueS390X_OpAtomicCompareAndSwap32_0(v *Value) bool { } func rewriteValueS390X_OpAtomicCompareAndSwap64_0(v *Value) bool { // match: (AtomicCompareAndSwap64 ptr old new_ mem) - // cond: // result: (LoweredAtomicCas64 ptr old new_ mem) for { mem := v.Args[3] @@ -1057,7 +1040,6 @@ func rewriteValueS390X_OpAtomicCompareAndSwap64_0(v *Value) bool { } func rewriteValueS390X_OpAtomicExchange32_0(v *Value) bool { // match: (AtomicExchange32 ptr val mem) - // cond: // result: (LoweredAtomicExchange32 ptr val mem) for { mem := v.Args[2] @@ -1072,7 +1054,6 @@ func rewriteValueS390X_OpAtomicExchange32_0(v *Value) bool { } func rewriteValueS390X_OpAtomicExchange64_0(v *Value) bool { // match: (AtomicExchange64 ptr val mem) - // cond: // result: (LoweredAtomicExchange64 ptr val mem) for { mem := v.Args[2] @@ -1087,7 +1068,6 @@ func rewriteValueS390X_OpAtomicExchange64_0(v *Value) bool { } func rewriteValueS390X_OpAtomicLoad32_0(v *Value) bool { // match: (AtomicLoad32 ptr mem) - // cond: // result: (MOVWZatomicload ptr mem) for { mem := v.Args[1] @@ -1100,7 +1080,6 @@ func rewriteValueS390X_OpAtomicLoad32_0(v *Value) bool { } func rewriteValueS390X_OpAtomicLoad64_0(v *Value) bool { // match: (AtomicLoad64 ptr mem) - // cond: // result: (MOVDatomicload ptr mem) for { mem := v.Args[1] @@ -1113,7 +1092,6 @@ func rewriteValueS390X_OpAtomicLoad64_0(v *Value) bool { } func rewriteValueS390X_OpAtomicLoad8_0(v *Value) bool { // match: (AtomicLoad8 ptr mem) - // cond: // result: (MOVBZatomicload ptr mem) for { mem := v.Args[1] @@ -1126,7 +1104,6 @@ func rewriteValueS390X_OpAtomicLoad8_0(v *Value) bool { } func rewriteValueS390X_OpAtomicLoadAcq32_0(v *Value) bool { // match: (AtomicLoadAcq32 ptr mem) - // cond: // result: (MOVWZatomicload ptr mem) for { mem := v.Args[1] @@ -1139,7 +1116,6 @@ func rewriteValueS390X_OpAtomicLoadAcq32_0(v *Value) bool { } func rewriteValueS390X_OpAtomicLoadPtr_0(v *Value) bool { // match: (AtomicLoadPtr ptr mem) - // cond: // result: (MOVDatomicload ptr mem) for { mem := v.Args[1] @@ -1153,7 +1129,6 @@ func rewriteValueS390X_OpAtomicLoadPtr_0(v *Value) bool { func rewriteValueS390X_OpAtomicStore32_0(v *Value) bool { b := v.Block // match: (AtomicStore32 ptr val mem) - // cond: // result: (SYNC (MOVWatomicstore ptr val mem)) for { mem := v.Args[2] @@ -1171,7 +1146,6 @@ func rewriteValueS390X_OpAtomicStore32_0(v *Value) bool { func rewriteValueS390X_OpAtomicStore64_0(v *Value) bool { b := v.Block // match: (AtomicStore64 ptr val mem) - // cond: // result: (SYNC (MOVDatomicstore ptr val mem)) for { mem := v.Args[2] @@ -1189,7 +1163,6 @@ func rewriteValueS390X_OpAtomicStore64_0(v *Value) bool { func rewriteValueS390X_OpAtomicStorePtrNoWB_0(v *Value) bool { b := v.Block // match: (AtomicStorePtrNoWB ptr val mem) - // cond: // result: (SYNC (MOVDatomicstore ptr val mem)) for { mem := v.Args[2] @@ -1206,7 +1179,6 @@ func rewriteValueS390X_OpAtomicStorePtrNoWB_0(v *Value) bool { } func rewriteValueS390X_OpAtomicStoreRel32_0(v *Value) bool { // match: (AtomicStoreRel32 ptr val mem) - // cond: // result: (MOVWatomicstore ptr val mem) for { mem := v.Args[2] @@ -1222,7 +1194,6 @@ func rewriteValueS390X_OpAtomicStoreRel32_0(v *Value) bool { func rewriteValueS390X_OpAvg64u_0(v *Value) bool { b := v.Block // match: (Avg64u x y) - // cond: // result: (ADD (SRDconst (SUB x y) [1]) y) for { t := v.Type @@ -1244,7 +1215,6 @@ func rewriteValueS390X_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (SUB (MOVDconst [64]) (FLOGR x)) for { x := v.Args[0] @@ -1260,7 +1230,6 @@ func rewriteValueS390X_OpBitLen64_0(v *Value) bool { } func rewriteValueS390X_OpBswap32_0(v *Value) bool { // match: (Bswap32 x) - // cond: // result: (MOVWBR x) for { x := v.Args[0] @@ -1271,7 +1240,6 @@ func rewriteValueS390X_OpBswap32_0(v *Value) bool { } func rewriteValueS390X_OpBswap64_0(v *Value) bool { // match: (Bswap64 x) - // cond: // result: (MOVDBR x) for { x := v.Args[0] @@ -1282,7 +1250,6 @@ func rewriteValueS390X_OpBswap64_0(v *Value) bool { } func rewriteValueS390X_OpCeil_0(v *Value) bool { // match: (Ceil x) - // cond: // result: (FIDBR [6] x) for { x := v.Args[0] @@ -1294,7 +1261,6 @@ func rewriteValueS390X_OpCeil_0(v *Value) bool { } func rewriteValueS390X_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (CALLclosure [argwid] entry closure mem) for { argwid := v.AuxInt @@ -1311,7 +1277,6 @@ func rewriteValueS390X_OpClosureCall_0(v *Value) bool { } func rewriteValueS390X_OpCom16_0(v *Value) bool { // match: (Com16 x) - // cond: // result: (NOTW x) for { x := v.Args[0] @@ -1322,7 +1287,6 @@ func rewriteValueS390X_OpCom16_0(v *Value) bool { } func rewriteValueS390X_OpCom32_0(v *Value) bool { // match: (Com32 x) - // cond: // result: (NOTW x) for { x := v.Args[0] @@ -1333,7 +1297,6 @@ func rewriteValueS390X_OpCom32_0(v *Value) bool { } func rewriteValueS390X_OpCom64_0(v *Value) bool { // match: (Com64 x) - // cond: // result: (NOT x) for { x := v.Args[0] @@ -1344,7 +1307,6 @@ func rewriteValueS390X_OpCom64_0(v *Value) bool { } func rewriteValueS390X_OpCom8_0(v *Value) bool { // match: (Com8 x) - // cond: // result: (NOTW x) for { x := v.Args[0] @@ -1355,7 +1317,6 @@ func rewriteValueS390X_OpCom8_0(v *Value) bool { } func rewriteValueS390X_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1366,7 +1327,6 @@ func rewriteValueS390X_OpConst16_0(v *Value) bool { } func rewriteValueS390X_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1377,7 +1337,6 @@ func rewriteValueS390X_OpConst32_0(v *Value) bool { } func rewriteValueS390X_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (FMOVSconst [val]) for { val := v.AuxInt @@ -1388,7 +1347,6 @@ func rewriteValueS390X_OpConst32F_0(v *Value) bool { } func rewriteValueS390X_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1399,7 +1357,6 @@ func rewriteValueS390X_OpConst64_0(v *Value) bool { } func rewriteValueS390X_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (FMOVDconst [val]) for { val := v.AuxInt @@ -1410,7 +1367,6 @@ func rewriteValueS390X_OpConst64F_0(v *Value) bool { } func rewriteValueS390X_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (MOVDconst [val]) for { val := v.AuxInt @@ -1421,7 +1377,6 @@ func rewriteValueS390X_OpConst8_0(v *Value) bool { } func rewriteValueS390X_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (MOVDconst [b]) for { b := v.AuxInt @@ -1432,7 +1387,6 @@ func rewriteValueS390X_OpConstBool_0(v *Value) bool { } func rewriteValueS390X_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (MOVDconst [0]) for { v.reset(OpS390XMOVDconst) @@ -1444,7 +1398,6 @@ func rewriteValueS390X_OpCtz32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz32 x) - // cond: // result: (SUB (MOVDconst [64]) (FLOGR (MOVWZreg (ANDW (SUBWconst [1] x) (NOTW x))))) for { t := v.Type @@ -1471,7 +1424,6 @@ func rewriteValueS390X_OpCtz32_0(v *Value) bool { } func rewriteValueS390X_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (Ctz32 x) for { x := v.Args[0] @@ -1484,7 +1436,6 @@ func rewriteValueS390X_OpCtz64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz64 x) - // cond: // result: (SUB (MOVDconst [64]) (FLOGR (AND (SUBconst [1] x) (NOT x)))) for { t := v.Type @@ -1509,7 +1460,6 @@ func rewriteValueS390X_OpCtz64_0(v *Value) bool { } func rewriteValueS390X_OpCtz64NonZero_0(v *Value) bool { // match: (Ctz64NonZero x) - // cond: // result: (Ctz64 x) for { x := v.Args[0] @@ -1520,7 +1470,6 @@ func rewriteValueS390X_OpCtz64NonZero_0(v *Value) bool { } func rewriteValueS390X_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (CFEBRA x) for { x := v.Args[0] @@ -1531,7 +1480,6 @@ func rewriteValueS390X_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueS390X_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 x) - // cond: // result: (CGEBRA x) for { x := v.Args[0] @@ -1542,7 +1490,6 @@ func rewriteValueS390X_OpCvt32Fto64_0(v *Value) bool { } func rewriteValueS390X_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (LDEBR x) for { x := v.Args[0] @@ -1553,7 +1500,6 @@ func rewriteValueS390X_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueS390X_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F x) - // cond: // result: (CEFBRA x) for { x := v.Args[0] @@ -1564,7 +1510,6 @@ func rewriteValueS390X_OpCvt32to32F_0(v *Value) bool { } func rewriteValueS390X_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F x) - // cond: // result: (CDFBRA x) for { x := v.Args[0] @@ -1575,7 +1520,6 @@ func rewriteValueS390X_OpCvt32to64F_0(v *Value) bool { } func rewriteValueS390X_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (CFDBRA x) for { x := v.Args[0] @@ -1586,7 +1530,6 @@ func rewriteValueS390X_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueS390X_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (LEDBR x) for { x := v.Args[0] @@ -1597,7 +1540,6 @@ func rewriteValueS390X_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueS390X_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 x) - // cond: // result: (CGDBRA x) for { x := v.Args[0] @@ -1608,7 +1550,6 @@ func rewriteValueS390X_OpCvt64Fto64_0(v *Value) bool { } func rewriteValueS390X_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F x) - // cond: // result: (CEGBRA x) for { x := v.Args[0] @@ -1619,7 +1560,6 @@ func rewriteValueS390X_OpCvt64to32F_0(v *Value) bool { } func rewriteValueS390X_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F x) - // cond: // result: (CDGBRA x) for { x := v.Args[0] @@ -1632,7 +1572,6 @@ func rewriteValueS390X_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (DIVW (MOVHreg x) (MOVHreg y)) for { y := v.Args[1] @@ -1651,7 +1590,6 @@ func rewriteValueS390X_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (DIVWU (MOVHZreg x) (MOVHZreg y)) for { y := v.Args[1] @@ -1670,7 +1608,6 @@ func rewriteValueS390X_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 x y) - // cond: // result: (DIVW (MOVWreg x) y) for { y := v.Args[1] @@ -1685,7 +1622,6 @@ func rewriteValueS390X_OpDiv32_0(v *Value) bool { } func rewriteValueS390X_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (FDIVS x y) for { y := v.Args[1] @@ -1700,7 +1636,6 @@ func rewriteValueS390X_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (DIVWU (MOVWZreg x) y) for { y := v.Args[1] @@ -1715,7 +1650,6 @@ func rewriteValueS390X_OpDiv32u_0(v *Value) bool { } func rewriteValueS390X_OpDiv64_0(v *Value) bool { // match: (Div64 x y) - // cond: // result: (DIVD x y) for { y := v.Args[1] @@ -1728,7 +1662,6 @@ func rewriteValueS390X_OpDiv64_0(v *Value) bool { } func rewriteValueS390X_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (FDIV x y) for { y := v.Args[1] @@ -1741,7 +1674,6 @@ func rewriteValueS390X_OpDiv64F_0(v *Value) bool { } func rewriteValueS390X_OpDiv64u_0(v *Value) bool { // match: (Div64u x y) - // cond: // result: (DIVDU x y) for { y := v.Args[1] @@ -1756,7 +1688,6 @@ func rewriteValueS390X_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (DIVW (MOVBreg x) (MOVBreg y)) for { y := v.Args[1] @@ -1775,7 +1706,6 @@ func rewriteValueS390X_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (DIVWU (MOVBZreg x) (MOVBZreg y)) for { y := v.Args[1] @@ -1794,7 +1724,6 @@ func rewriteValueS390X_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -1821,7 +1750,6 @@ func rewriteValueS390X_OpEq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32 x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -1844,7 +1772,6 @@ func rewriteValueS390X_OpEq32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32F x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (FCMPS x y)) for { y := v.Args[1] @@ -1867,7 +1794,6 @@ func rewriteValueS390X_OpEq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq64 x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -1890,7 +1816,6 @@ func rewriteValueS390X_OpEq64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq64F x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (FCMP x y)) for { y := v.Args[1] @@ -1913,7 +1838,6 @@ func rewriteValueS390X_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -1940,7 +1864,6 @@ func rewriteValueS390X_OpEqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqB x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -1967,7 +1890,6 @@ func rewriteValueS390X_OpEqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqPtr x y) - // cond: // result: (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -1988,7 +1910,6 @@ func rewriteValueS390X_OpEqPtr_0(v *Value) bool { } func rewriteValueS390X_OpFloor_0(v *Value) bool { // match: (Floor x) - // cond: // result: (FIDBR [7] x) for { x := v.Args[0] @@ -2002,7 +1923,6 @@ func rewriteValueS390X_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -2029,7 +1949,6 @@ func rewriteValueS390X_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVHZreg x) (MOVHZreg y))) for { y := v.Args[1] @@ -2056,7 +1975,6 @@ func rewriteValueS390X_OpGeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32 x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -2079,7 +1997,6 @@ func rewriteValueS390X_OpGeq32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32F x y) - // cond: // result: (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMPS x y)) for { y := v.Args[1] @@ -2102,7 +2019,6 @@ func rewriteValueS390X_OpGeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32U x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPWU x y)) for { y := v.Args[1] @@ -2125,7 +2041,6 @@ func rewriteValueS390X_OpGeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64 x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -2148,7 +2063,6 @@ func rewriteValueS390X_OpGeq64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64F x y) - // cond: // result: (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMP x y)) for { y := v.Args[1] @@ -2171,7 +2085,6 @@ func rewriteValueS390X_OpGeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64U x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPU x y)) for { y := v.Args[1] @@ -2194,7 +2107,6 @@ func rewriteValueS390X_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -2221,7 +2133,6 @@ func rewriteValueS390X_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (MOVDGE (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVBZreg x) (MOVBZreg y))) for { y := v.Args[1] @@ -2246,7 +2157,6 @@ func rewriteValueS390X_OpGeq8U_0(v *Value) bool { } func rewriteValueS390X_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpS390XLoweredGetCallerPC) @@ -2255,7 +2165,6 @@ func rewriteValueS390X_OpGetCallerPC_0(v *Value) bool { } func rewriteValueS390X_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpS390XLoweredGetCallerSP) @@ -2264,7 +2173,6 @@ func rewriteValueS390X_OpGetCallerSP_0(v *Value) bool { } func rewriteValueS390X_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpS390XLoweredGetClosurePtr) @@ -2273,7 +2181,6 @@ func rewriteValueS390X_OpGetClosurePtr_0(v *Value) bool { } func rewriteValueS390X_OpGetG_0(v *Value) bool { // match: (GetG mem) - // cond: // result: (LoweredGetG mem) for { mem := v.Args[0] @@ -2286,7 +2193,6 @@ func rewriteValueS390X_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -2313,7 +2219,6 @@ func rewriteValueS390X_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVHZreg x) (MOVHZreg y))) for { y := v.Args[1] @@ -2340,7 +2245,6 @@ func rewriteValueS390X_OpGreater32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32 x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -2363,7 +2267,6 @@ func rewriteValueS390X_OpGreater32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32F x y) - // cond: // result: (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMPS x y)) for { y := v.Args[1] @@ -2386,7 +2289,6 @@ func rewriteValueS390X_OpGreater32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32U x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPWU x y)) for { y := v.Args[1] @@ -2409,7 +2311,6 @@ func rewriteValueS390X_OpGreater64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater64 x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -2432,7 +2333,6 @@ func rewriteValueS390X_OpGreater64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater64F x y) - // cond: // result: (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMP x y)) for { y := v.Args[1] @@ -2455,7 +2355,6 @@ func rewriteValueS390X_OpGreater64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater64U x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPU x y)) for { y := v.Args[1] @@ -2478,7 +2377,6 @@ func rewriteValueS390X_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -2505,7 +2403,6 @@ func rewriteValueS390X_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (MOVDGT (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVBZreg x) (MOVBZreg y))) for { y := v.Args[1] @@ -2532,7 +2429,6 @@ func rewriteValueS390X_OpHmul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32 x y) - // cond: // result: (SRDconst [32] (MULLD (MOVWreg x) (MOVWreg y))) for { y := v.Args[1] @@ -2554,7 +2450,6 @@ func rewriteValueS390X_OpHmul32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Hmul32u x y) - // cond: // result: (SRDconst [32] (MULLD (MOVWZreg x) (MOVWZreg y))) for { y := v.Args[1] @@ -2574,7 +2469,6 @@ func rewriteValueS390X_OpHmul32u_0(v *Value) bool { } func rewriteValueS390X_OpHmul64_0(v *Value) bool { // match: (Hmul64 x y) - // cond: // result: (MULHD x y) for { y := v.Args[1] @@ -2587,7 +2481,6 @@ func rewriteValueS390X_OpHmul64_0(v *Value) bool { } func rewriteValueS390X_OpHmul64u_0(v *Value) bool { // match: (Hmul64u x y) - // cond: // result: (MULHDU x y) for { y := v.Args[1] @@ -2600,7 +2493,6 @@ func rewriteValueS390X_OpHmul64u_0(v *Value) bool { } func rewriteValueS390X_OpITab_0(v *Value) bool { // match: (ITab (Load ptr mem)) - // cond: // result: (MOVDload ptr mem) for { v_0 := v.Args[0] @@ -2618,7 +2510,6 @@ func rewriteValueS390X_OpITab_0(v *Value) bool { } func rewriteValueS390X_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (CALLinter [argwid] entry mem) for { argwid := v.AuxInt @@ -2635,7 +2526,6 @@ func rewriteValueS390X_OpIsInBounds_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsInBounds idx len) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPU idx len)) for { len := v.Args[1] @@ -2658,7 +2548,6 @@ func rewriteValueS390X_OpIsNonNil_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsNonNil p) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMPconst p [0])) for { p := v.Args[0] @@ -2680,7 +2569,6 @@ func rewriteValueS390X_OpIsSliceInBounds_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsSliceInBounds idx len) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPU idx len)) for { len := v.Args[1] @@ -2703,7 +2591,6 @@ func rewriteValueS390X_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -2730,7 +2617,6 @@ func rewriteValueS390X_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVHZreg x) (MOVHZreg y))) for { y := v.Args[1] @@ -2757,7 +2643,6 @@ func rewriteValueS390X_OpLeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32 x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -2780,7 +2665,6 @@ func rewriteValueS390X_OpLeq32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32F x y) - // cond: // result: (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMPS y x)) for { y := v.Args[1] @@ -2803,7 +2687,6 @@ func rewriteValueS390X_OpLeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32U x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPWU x y)) for { y := v.Args[1] @@ -2826,7 +2709,6 @@ func rewriteValueS390X_OpLeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64 x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -2849,7 +2731,6 @@ func rewriteValueS390X_OpLeq64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64F x y) - // cond: // result: (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMP y x)) for { y := v.Args[1] @@ -2872,7 +2753,6 @@ func rewriteValueS390X_OpLeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64U x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPU x y)) for { y := v.Args[1] @@ -2895,7 +2775,6 @@ func rewriteValueS390X_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -2922,7 +2801,6 @@ func rewriteValueS390X_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (MOVDLE (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVBZreg x) (MOVBZreg y))) for { y := v.Args[1] @@ -2949,7 +2827,6 @@ func rewriteValueS390X_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -2976,7 +2853,6 @@ func rewriteValueS390X_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVHZreg x) (MOVHZreg y))) for { y := v.Args[1] @@ -3003,7 +2879,6 @@ func rewriteValueS390X_OpLess32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32 x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -3026,7 +2901,6 @@ func rewriteValueS390X_OpLess32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32F x y) - // cond: // result: (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMPS y x)) for { y := v.Args[1] @@ -3049,7 +2923,6 @@ func rewriteValueS390X_OpLess32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32U x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPWU x y)) for { y := v.Args[1] @@ -3072,7 +2945,6 @@ func rewriteValueS390X_OpLess64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less64 x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -3095,7 +2967,6 @@ func rewriteValueS390X_OpLess64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less64F x y) - // cond: // result: (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) (FCMP y x)) for { y := v.Args[1] @@ -3118,7 +2989,6 @@ func rewriteValueS390X_OpLess64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less64U x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPU x y)) for { y := v.Args[1] @@ -3141,7 +3011,6 @@ func rewriteValueS390X_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -3168,7 +3037,6 @@ func rewriteValueS390X_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (MOVDLT (MOVDconst [0]) (MOVDconst [1]) (CMPWU (MOVBZreg x) (MOVBZreg y))) for { y := v.Args[1] @@ -3331,7 +3199,6 @@ func rewriteValueS390X_OpLoad_0(v *Value) bool { } func rewriteValueS390X_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (MOVDaddr {sym} base) for { sym := v.Aux @@ -3361,7 +3228,6 @@ func rewriteValueS390X_OpLsh16x16_0(v *Value) bool { return true } // match: (Lsh16x16 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -3403,7 +3269,6 @@ func rewriteValueS390X_OpLsh16x32_0(v *Value) bool { return true } // match: (Lsh16x32 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -3443,7 +3308,6 @@ func rewriteValueS390X_OpLsh16x64_0(v *Value) bool { return true } // match: (Lsh16x64 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -3483,7 +3347,6 @@ func rewriteValueS390X_OpLsh16x8_0(v *Value) bool { return true } // match: (Lsh16x8 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -3525,7 +3388,6 @@ func rewriteValueS390X_OpLsh32x16_0(v *Value) bool { return true } // match: (Lsh32x16 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -3567,7 +3429,6 @@ func rewriteValueS390X_OpLsh32x32_0(v *Value) bool { return true } // match: (Lsh32x32 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -3607,7 +3468,6 @@ func rewriteValueS390X_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -3647,7 +3507,6 @@ func rewriteValueS390X_OpLsh32x8_0(v *Value) bool { return true } // match: (Lsh32x8 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -3689,7 +3548,6 @@ func rewriteValueS390X_OpLsh64x16_0(v *Value) bool { return true } // match: (Lsh64x16 x y) - // cond: // result: (MOVDGE (SLD x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -3731,7 +3589,6 @@ func rewriteValueS390X_OpLsh64x32_0(v *Value) bool { return true } // match: (Lsh64x32 x y) - // cond: // result: (MOVDGE (SLD x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -3771,7 +3628,6 @@ func rewriteValueS390X_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x y) - // cond: // result: (MOVDGE (SLD x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -3811,7 +3667,6 @@ func rewriteValueS390X_OpLsh64x8_0(v *Value) bool { return true } // match: (Lsh64x8 x y) - // cond: // result: (MOVDGE (SLD x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -3853,7 +3708,6 @@ func rewriteValueS390X_OpLsh8x16_0(v *Value) bool { return true } // match: (Lsh8x16 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -3895,7 +3749,6 @@ func rewriteValueS390X_OpLsh8x32_0(v *Value) bool { return true } // match: (Lsh8x32 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -3935,7 +3788,6 @@ func rewriteValueS390X_OpLsh8x64_0(v *Value) bool { return true } // match: (Lsh8x64 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -3975,7 +3827,6 @@ func rewriteValueS390X_OpLsh8x8_0(v *Value) bool { return true } // match: (Lsh8x8 x y) - // cond: // result: (MOVDGE (SLW x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -4003,7 +3854,6 @@ func rewriteValueS390X_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (MODW (MOVHreg x) (MOVHreg y)) for { y := v.Args[1] @@ -4022,7 +3872,6 @@ func rewriteValueS390X_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (MODWU (MOVHZreg x) (MOVHZreg y)) for { y := v.Args[1] @@ -4041,7 +3890,6 @@ func rewriteValueS390X_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (MODW (MOVWreg x) y) for { y := v.Args[1] @@ -4058,7 +3906,6 @@ func rewriteValueS390X_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (MODWU (MOVWZreg x) y) for { y := v.Args[1] @@ -4073,7 +3920,6 @@ func rewriteValueS390X_OpMod32u_0(v *Value) bool { } func rewriteValueS390X_OpMod64_0(v *Value) bool { // match: (Mod64 x y) - // cond: // result: (MODD x y) for { y := v.Args[1] @@ -4086,7 +3932,6 @@ func rewriteValueS390X_OpMod64_0(v *Value) bool { } func rewriteValueS390X_OpMod64u_0(v *Value) bool { // match: (Mod64u x y) - // cond: // result: (MODDU x y) for { y := v.Args[1] @@ -4101,7 +3946,6 @@ func rewriteValueS390X_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (MODW (MOVBreg x) (MOVBreg y)) for { y := v.Args[1] @@ -4120,7 +3964,6 @@ func rewriteValueS390X_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (MODWU (MOVBZreg x) (MOVBZreg y)) for { y := v.Args[1] @@ -4139,7 +3982,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -4152,7 +3994,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (MOVBstore dst (MOVBZload src mem) mem) for { if v.AuxInt != 1 { @@ -4171,7 +4012,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (MOVHstore dst (MOVHZload src mem) mem) for { if v.AuxInt != 2 { @@ -4190,7 +4030,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (MOVWstore dst (MOVWZload src mem) mem) for { if v.AuxInt != 4 { @@ -4209,7 +4048,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (MOVDstore dst (MOVDload src mem) mem) for { if v.AuxInt != 8 { @@ -4228,7 +4066,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [16] dst src mem) - // cond: // result: (MOVDstore [8] dst (MOVDload [8] src mem) (MOVDstore dst (MOVDload src mem) mem)) for { if v.AuxInt != 16 { @@ -4256,7 +4093,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [24] dst src mem) - // cond: // result: (MOVDstore [16] dst (MOVDload [16] src mem) (MOVDstore [8] dst (MOVDload [8] src mem) (MOVDstore dst (MOVDload src mem) mem))) for { if v.AuxInt != 24 { @@ -4293,7 +4129,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (MOVBstore [2] dst (MOVBZload [2] src mem) (MOVHstore dst (MOVHZload src mem) mem)) for { if v.AuxInt != 3 { @@ -4321,7 +4156,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (MOVBstore [4] dst (MOVBZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem)) for { if v.AuxInt != 5 { @@ -4349,7 +4183,6 @@ func rewriteValueS390X_OpMove_0(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (MOVHstore [4] dst (MOVHZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem)) for { if v.AuxInt != 6 { @@ -4382,7 +4215,6 @@ func rewriteValueS390X_OpMove_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [7] dst src mem) - // cond: // result: (MOVBstore [6] dst (MOVBZload [6] src mem) (MOVHstore [4] dst (MOVHZload [4] src mem) (MOVWstore dst (MOVWZload src mem) mem))) for { if v.AuxInt != 7 { @@ -4548,7 +4380,6 @@ func rewriteValueS390X_OpMove_10(v *Value) bool { } func rewriteValueS390X_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4561,7 +4392,6 @@ func rewriteValueS390X_OpMul16_0(v *Value) bool { } func rewriteValueS390X_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4574,7 +4404,6 @@ func rewriteValueS390X_OpMul32_0(v *Value) bool { } func rewriteValueS390X_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (FMULS x y) for { y := v.Args[1] @@ -4587,7 +4416,6 @@ func rewriteValueS390X_OpMul32F_0(v *Value) bool { } func rewriteValueS390X_OpMul64_0(v *Value) bool { // match: (Mul64 x y) - // cond: // result: (MULLD x y) for { y := v.Args[1] @@ -4600,7 +4428,6 @@ func rewriteValueS390X_OpMul64_0(v *Value) bool { } func rewriteValueS390X_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (FMUL x y) for { y := v.Args[1] @@ -4613,7 +4440,6 @@ func rewriteValueS390X_OpMul64F_0(v *Value) bool { } func rewriteValueS390X_OpMul64uhilo_0(v *Value) bool { // match: (Mul64uhilo x y) - // cond: // result: (MLGR x y) for { y := v.Args[1] @@ -4626,7 +4452,6 @@ func rewriteValueS390X_OpMul64uhilo_0(v *Value) bool { } func rewriteValueS390X_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (MULLW x y) for { y := v.Args[1] @@ -4639,7 +4464,6 @@ func rewriteValueS390X_OpMul8_0(v *Value) bool { } func rewriteValueS390X_OpNeg16_0(v *Value) bool { // match: (Neg16 x) - // cond: // result: (NEGW x) for { x := v.Args[0] @@ -4650,7 +4474,6 @@ func rewriteValueS390X_OpNeg16_0(v *Value) bool { } func rewriteValueS390X_OpNeg32_0(v *Value) bool { // match: (Neg32 x) - // cond: // result: (NEGW x) for { x := v.Args[0] @@ -4661,7 +4484,6 @@ func rewriteValueS390X_OpNeg32_0(v *Value) bool { } func rewriteValueS390X_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (FNEGS x) for { x := v.Args[0] @@ -4672,7 +4494,6 @@ func rewriteValueS390X_OpNeg32F_0(v *Value) bool { } func rewriteValueS390X_OpNeg64_0(v *Value) bool { // match: (Neg64 x) - // cond: // result: (NEG x) for { x := v.Args[0] @@ -4683,7 +4504,6 @@ func rewriteValueS390X_OpNeg64_0(v *Value) bool { } func rewriteValueS390X_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (FNEG x) for { x := v.Args[0] @@ -4694,7 +4514,6 @@ func rewriteValueS390X_OpNeg64F_0(v *Value) bool { } func rewriteValueS390X_OpNeg8_0(v *Value) bool { // match: (Neg8 x) - // cond: // result: (NEGW x) for { x := v.Args[0] @@ -4707,7 +4526,6 @@ func rewriteValueS390X_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVHreg x) (MOVHreg y))) for { y := v.Args[1] @@ -4734,7 +4552,6 @@ func rewriteValueS390X_OpNeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq32 x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMPW x y)) for { y := v.Args[1] @@ -4757,7 +4574,6 @@ func rewriteValueS390X_OpNeq32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq32F x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (FCMPS x y)) for { y := v.Args[1] @@ -4780,7 +4596,6 @@ func rewriteValueS390X_OpNeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq64 x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -4803,7 +4618,6 @@ func rewriteValueS390X_OpNeq64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq64F x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (FCMP x y)) for { y := v.Args[1] @@ -4826,7 +4640,6 @@ func rewriteValueS390X_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -4853,7 +4666,6 @@ func rewriteValueS390X_OpNeqB_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqB x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMPW (MOVBreg x) (MOVBreg y))) for { y := v.Args[1] @@ -4880,7 +4692,6 @@ func rewriteValueS390X_OpNeqPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqPtr x y) - // cond: // result: (MOVDNE (MOVDconst [0]) (MOVDconst [1]) (CMP x y)) for { y := v.Args[1] @@ -4901,7 +4712,6 @@ func rewriteValueS390X_OpNeqPtr_0(v *Value) bool { } func rewriteValueS390X_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -4914,7 +4724,6 @@ func rewriteValueS390X_OpNilCheck_0(v *Value) bool { } func rewriteValueS390X_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (XORWconst [1] x) for { x := v.Args[0] @@ -4928,7 +4737,6 @@ func rewriteValueS390X_OpOffPtr_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (OffPtr [off] ptr:(SP)) - // cond: // result: (MOVDaddr [off] ptr) for { off := v.AuxInt @@ -4956,7 +4764,6 @@ func rewriteValueS390X_OpOffPtr_0(v *Value) bool { return true } // match: (OffPtr [off] ptr) - // cond: // result: (ADD (MOVDconst [off]) ptr) for { off := v.AuxInt @@ -4971,7 +4778,6 @@ func rewriteValueS390X_OpOffPtr_0(v *Value) bool { } func rewriteValueS390X_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (ORW x y) for { y := v.Args[1] @@ -4984,7 +4790,6 @@ func rewriteValueS390X_OpOr16_0(v *Value) bool { } func rewriteValueS390X_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (ORW x y) for { y := v.Args[1] @@ -4997,7 +4802,6 @@ func rewriteValueS390X_OpOr32_0(v *Value) bool { } func rewriteValueS390X_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (OR x y) for { y := v.Args[1] @@ -5010,7 +4814,6 @@ func rewriteValueS390X_OpOr64_0(v *Value) bool { } func rewriteValueS390X_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (ORW x y) for { y := v.Args[1] @@ -5023,7 +4826,6 @@ func rewriteValueS390X_OpOr8_0(v *Value) bool { } func rewriteValueS390X_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (ORW x y) for { y := v.Args[1] @@ -5095,7 +4897,6 @@ func rewriteValueS390X_OpPopCount16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount16 x) - // cond: // result: (MOVBZreg (SumBytes2 (POPCNT x))) for { x := v.Args[0] @@ -5112,7 +4913,6 @@ func rewriteValueS390X_OpPopCount32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount32 x) - // cond: // result: (MOVBZreg (SumBytes4 (POPCNT x))) for { x := v.Args[0] @@ -5129,7 +4929,6 @@ func rewriteValueS390X_OpPopCount64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount64 x) - // cond: // result: (MOVBZreg (SumBytes8 (POPCNT x))) for { x := v.Args[0] @@ -5146,7 +4945,6 @@ func rewriteValueS390X_OpPopCount8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount8 x) - // cond: // result: (POPCNT (MOVBZreg x)) for { x := v.Args[0] @@ -5161,7 +4959,6 @@ func rewriteValueS390X_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (MOVDconst [c])) - // cond: // result: (Or16 (Lsh16x64 x (MOVDconst [c&15])) (Rsh16Ux64 x (MOVDconst [-c&15]))) for { t := v.Type @@ -5191,7 +4988,6 @@ func rewriteValueS390X_OpRotateLeft16_0(v *Value) bool { } func rewriteValueS390X_OpRotateLeft32_0(v *Value) bool { // match: (RotateLeft32 x y) - // cond: // result: (RLL x y) for { y := v.Args[1] @@ -5204,7 +5000,6 @@ func rewriteValueS390X_OpRotateLeft32_0(v *Value) bool { } func rewriteValueS390X_OpRotateLeft64_0(v *Value) bool { // match: (RotateLeft64 x y) - // cond: // result: (RLLG x y) for { y := v.Args[1] @@ -5219,7 +5014,6 @@ func rewriteValueS390X_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (MOVDconst [c])) - // cond: // result: (Or8 (Lsh8x64 x (MOVDconst [c&7])) (Rsh8Ux64 x (MOVDconst [-c&7]))) for { t := v.Type @@ -5249,7 +5043,6 @@ func rewriteValueS390X_OpRotateLeft8_0(v *Value) bool { } func rewriteValueS390X_OpRound_0(v *Value) bool { // match: (Round x) - // cond: // result: (FIDBR [1] x) for { x := v.Args[0] @@ -5261,7 +5054,6 @@ func rewriteValueS390X_OpRound_0(v *Value) bool { } func rewriteValueS390X_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: (LoweredRound32F x) for { x := v.Args[0] @@ -5272,7 +5064,6 @@ func rewriteValueS390X_OpRound32F_0(v *Value) bool { } func rewriteValueS390X_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: (LoweredRound64F x) for { x := v.Args[0] @@ -5283,7 +5074,6 @@ func rewriteValueS390X_OpRound64F_0(v *Value) bool { } func rewriteValueS390X_OpRoundToEven_0(v *Value) bool { // match: (RoundToEven x) - // cond: // result: (FIDBR [4] x) for { x := v.Args[0] @@ -5313,7 +5103,6 @@ func rewriteValueS390X_OpRsh16Ux16_0(v *Value) bool { return true } // match: (Rsh16Ux16 x y) - // cond: // result: (MOVDGE (SRW (MOVHZreg x) y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -5359,7 +5148,6 @@ func rewriteValueS390X_OpRsh16Ux32_0(v *Value) bool { return true } // match: (Rsh16Ux32 x y) - // cond: // result: (MOVDGE (SRW (MOVHZreg x) y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -5403,7 +5191,6 @@ func rewriteValueS390X_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 x y) - // cond: // result: (MOVDGE (SRW (MOVHZreg x) y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -5447,7 +5234,6 @@ func rewriteValueS390X_OpRsh16Ux8_0(v *Value) bool { return true } // match: (Rsh16Ux8 x y) - // cond: // result: (MOVDGE (SRW (MOVHZreg x) y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -5493,7 +5279,6 @@ func rewriteValueS390X_OpRsh16x16_0(v *Value) bool { return true } // match: (Rsh16x16 x y) - // cond: // result: (SRAW (MOVHreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVHZreg y) [64]))) for { y := v.Args[1] @@ -5537,7 +5322,6 @@ func rewriteValueS390X_OpRsh16x32_0(v *Value) bool { return true } // match: (Rsh16x32 x y) - // cond: // result: (SRAW (MOVHreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst y [64]))) for { y := v.Args[1] @@ -5579,7 +5363,6 @@ func rewriteValueS390X_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 x y) - // cond: // result: (SRAW (MOVHreg x) (MOVDGE y (MOVDconst [63]) (CMPUconst y [64]))) for { y := v.Args[1] @@ -5621,7 +5404,6 @@ func rewriteValueS390X_OpRsh16x8_0(v *Value) bool { return true } // match: (Rsh16x8 x y) - // cond: // result: (SRAW (MOVHreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVBZreg y) [64]))) for { y := v.Args[1] @@ -5663,7 +5445,6 @@ func rewriteValueS390X_OpRsh32Ux16_0(v *Value) bool { return true } // match: (Rsh32Ux16 x y) - // cond: // result: (MOVDGE (SRW x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -5705,7 +5486,6 @@ func rewriteValueS390X_OpRsh32Ux32_0(v *Value) bool { return true } // match: (Rsh32Ux32 x y) - // cond: // result: (MOVDGE (SRW x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -5745,7 +5525,6 @@ func rewriteValueS390X_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x y) - // cond: // result: (MOVDGE (SRW x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -5785,7 +5564,6 @@ func rewriteValueS390X_OpRsh32Ux8_0(v *Value) bool { return true } // match: (Rsh32Ux8 x y) - // cond: // result: (MOVDGE (SRW x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -5827,7 +5605,6 @@ func rewriteValueS390X_OpRsh32x16_0(v *Value) bool { return true } // match: (Rsh32x16 x y) - // cond: // result: (SRAW x (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVHZreg y) [64]))) for { y := v.Args[1] @@ -5866,7 +5643,6 @@ func rewriteValueS390X_OpRsh32x32_0(v *Value) bool { return true } // match: (Rsh32x32 x y) - // cond: // result: (SRAW x (MOVDGE y (MOVDconst [63]) (CMPWUconst y [64]))) for { y := v.Args[1] @@ -5903,7 +5679,6 @@ func rewriteValueS390X_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x y) - // cond: // result: (SRAW x (MOVDGE y (MOVDconst [63]) (CMPUconst y [64]))) for { y := v.Args[1] @@ -5941,7 +5716,6 @@ func rewriteValueS390X_OpRsh32x8_0(v *Value) bool { return true } // match: (Rsh32x8 x y) - // cond: // result: (SRAW x (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVBZreg y) [64]))) for { y := v.Args[1] @@ -5981,7 +5755,6 @@ func rewriteValueS390X_OpRsh64Ux16_0(v *Value) bool { return true } // match: (Rsh64Ux16 x y) - // cond: // result: (MOVDGE (SRD x y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -6023,7 +5796,6 @@ func rewriteValueS390X_OpRsh64Ux32_0(v *Value) bool { return true } // match: (Rsh64Ux32 x y) - // cond: // result: (MOVDGE (SRD x y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -6063,7 +5835,6 @@ func rewriteValueS390X_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x y) - // cond: // result: (MOVDGE (SRD x y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -6103,7 +5874,6 @@ func rewriteValueS390X_OpRsh64Ux8_0(v *Value) bool { return true } // match: (Rsh64Ux8 x y) - // cond: // result: (MOVDGE (SRD x y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -6145,7 +5915,6 @@ func rewriteValueS390X_OpRsh64x16_0(v *Value) bool { return true } // match: (Rsh64x16 x y) - // cond: // result: (SRAD x (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVHZreg y) [64]))) for { y := v.Args[1] @@ -6184,7 +5953,6 @@ func rewriteValueS390X_OpRsh64x32_0(v *Value) bool { return true } // match: (Rsh64x32 x y) - // cond: // result: (SRAD x (MOVDGE y (MOVDconst [63]) (CMPWUconst y [64]))) for { y := v.Args[1] @@ -6221,7 +5989,6 @@ func rewriteValueS390X_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x y) - // cond: // result: (SRAD x (MOVDGE y (MOVDconst [63]) (CMPUconst y [64]))) for { y := v.Args[1] @@ -6259,7 +6026,6 @@ func rewriteValueS390X_OpRsh64x8_0(v *Value) bool { return true } // match: (Rsh64x8 x y) - // cond: // result: (SRAD x (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVBZreg y) [64]))) for { y := v.Args[1] @@ -6301,7 +6067,6 @@ func rewriteValueS390X_OpRsh8Ux16_0(v *Value) bool { return true } // match: (Rsh8Ux16 x y) - // cond: // result: (MOVDGE (SRW (MOVBZreg x) y) (MOVDconst [0]) (CMPWUconst (MOVHZreg y) [64])) for { t := v.Type @@ -6347,7 +6112,6 @@ func rewriteValueS390X_OpRsh8Ux32_0(v *Value) bool { return true } // match: (Rsh8Ux32 x y) - // cond: // result: (MOVDGE (SRW (MOVBZreg x) y) (MOVDconst [0]) (CMPWUconst y [64])) for { t := v.Type @@ -6391,7 +6155,6 @@ func rewriteValueS390X_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 x y) - // cond: // result: (MOVDGE (SRW (MOVBZreg x) y) (MOVDconst [0]) (CMPUconst y [64])) for { t := v.Type @@ -6435,7 +6198,6 @@ func rewriteValueS390X_OpRsh8Ux8_0(v *Value) bool { return true } // match: (Rsh8Ux8 x y) - // cond: // result: (MOVDGE (SRW (MOVBZreg x) y) (MOVDconst [0]) (CMPWUconst (MOVBZreg y) [64])) for { t := v.Type @@ -6481,7 +6243,6 @@ func rewriteValueS390X_OpRsh8x16_0(v *Value) bool { return true } // match: (Rsh8x16 x y) - // cond: // result: (SRAW (MOVBreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVHZreg y) [64]))) for { y := v.Args[1] @@ -6525,7 +6286,6 @@ func rewriteValueS390X_OpRsh8x32_0(v *Value) bool { return true } // match: (Rsh8x32 x y) - // cond: // result: (SRAW (MOVBreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst y [64]))) for { y := v.Args[1] @@ -6567,7 +6327,6 @@ func rewriteValueS390X_OpRsh8x64_0(v *Value) bool { return true } // match: (Rsh8x64 x y) - // cond: // result: (SRAW (MOVBreg x) (MOVDGE y (MOVDconst [63]) (CMPUconst y [64]))) for { y := v.Args[1] @@ -6609,7 +6368,6 @@ func rewriteValueS390X_OpRsh8x8_0(v *Value) bool { return true } // match: (Rsh8x8 x y) - // cond: // result: (SRAW (MOVBreg x) (MOVDGE y (MOVDconst [63]) (CMPWUconst (MOVBZreg y) [64]))) for { y := v.Args[1] @@ -6687,10 +6445,7 @@ func rewriteValueS390X_OpS390XADD_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -6714,10 +6469,7 @@ func rewriteValueS390X_OpS390XADD_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -6771,7 +6523,6 @@ func rewriteValueS390X_OpS390XADD_0(v *Value) bool { return true } // match: (ADD x (NEG y)) - // cond: // result: (SUB x y) for { _ = v.Args[1] @@ -6787,7 +6538,6 @@ func rewriteValueS390X_OpS390XADD_0(v *Value) bool { return true } // match: (ADD (NEG y) x) - // cond: // result: (SUB x y) for { x := v.Args[1] @@ -6954,7 +6704,6 @@ func rewriteValueS390X_OpS390XADDC_0(v *Value) bool { } func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { // match: (ADDE x y (FlagEQ)) - // cond: // result: (ADDC x y) for { _ = v.Args[2] @@ -6970,7 +6719,6 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { return true } // match: (ADDE x y (FlagLT)) - // cond: // result: (ADDC x y) for { _ = v.Args[2] @@ -6986,7 +6734,6 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { return true } // match: (ADDE x y (Select1 (ADDCconst [-1] (Select0 (ADDE (MOVDconst [0]) (MOVDconst [0]) c))))) - // cond: // result: (ADDE x y c) for { _ = v.Args[2] @@ -6997,10 +6744,7 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { break } v_2_0 := v_2.Args[0] - if v_2_0.Op != OpS390XADDCconst { - break - } - if v_2_0.AuxInt != -1 { + if v_2_0.Op != OpS390XADDCconst || v_2_0.AuxInt != -1 { break } v_2_0_0 := v_2_0.Args[0] @@ -7013,17 +6757,11 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { } c := v_2_0_0_0.Args[2] v_2_0_0_0_0 := v_2_0_0_0.Args[0] - if v_2_0_0_0_0.Op != OpS390XMOVDconst { - break - } - if v_2_0_0_0_0.AuxInt != 0 { + if v_2_0_0_0_0.Op != OpS390XMOVDconst || v_2_0_0_0_0.AuxInt != 0 { break } v_2_0_0_0_1 := v_2_0_0_0.Args[1] - if v_2_0_0_0_1.Op != OpS390XMOVDconst { - break - } - if v_2_0_0_0_1.AuxInt != 0 { + if v_2_0_0_0_1.Op != OpS390XMOVDconst || v_2_0_0_0_1.AuxInt != 0 { break } v.reset(OpS390XADDE) @@ -7033,7 +6771,6 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { return true } // match: (ADDE x y (Select1 (ADDCconst [-1] (Select0 (ADDE (MOVDconst [0]) (MOVDconst [0]) c))))) - // cond: // result: (ADDE x y c) for { _ = v.Args[2] @@ -7044,10 +6781,7 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { break } v_2_0 := v_2.Args[0] - if v_2_0.Op != OpS390XADDCconst { - break - } - if v_2_0.AuxInt != -1 { + if v_2_0.Op != OpS390XADDCconst || v_2_0.AuxInt != -1 { break } v_2_0_0 := v_2_0.Args[0] @@ -7060,17 +6794,11 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { } c := v_2_0_0_0.Args[2] v_2_0_0_0_0 := v_2_0_0_0.Args[0] - if v_2_0_0_0_0.Op != OpS390XMOVDconst { - break - } - if v_2_0_0_0_0.AuxInt != 0 { + if v_2_0_0_0_0.Op != OpS390XMOVDconst || v_2_0_0_0_0.AuxInt != 0 { break } v_2_0_0_0_1 := v_2_0_0_0.Args[1] - if v_2_0_0_0_1.Op != OpS390XMOVDconst { - break - } - if v_2_0_0_0_1.AuxInt != 0 { + if v_2_0_0_0_1.Op != OpS390XMOVDconst || v_2_0_0_0_1.AuxInt != 0 { break } v.reset(OpS390XADDE) @@ -7083,7 +6811,6 @@ func rewriteValueS390X_OpS390XADDE_0(v *Value) bool { } func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { // match: (ADDW x (MOVDconst [c])) - // cond: // result: (ADDWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -7099,7 +6826,6 @@ func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { return true } // match: (ADDW (MOVDconst [c]) x) - // cond: // result: (ADDWconst [int64(int32(c))] x) for { x := v.Args[1] @@ -7129,10 +6855,7 @@ func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -7156,10 +6879,7 @@ func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -7168,7 +6888,6 @@ func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { return true } // match: (ADDW x (NEGW y)) - // cond: // result: (SUBW x y) for { _ = v.Args[1] @@ -7184,7 +6903,6 @@ func rewriteValueS390X_OpS390XADDW_0(v *Value) bool { return true } // match: (ADDW (NEGW y) x) - // cond: // result: (SUBW x y) for { x := v.Args[1] @@ -7431,7 +7149,6 @@ func rewriteValueS390X_OpS390XADDWconst_0(v *Value) bool { return true } // match: (ADDWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(c+d))]) for { c := v.AuxInt @@ -7445,7 +7162,6 @@ func rewriteValueS390X_OpS390XADDWconst_0(v *Value) bool { return true } // match: (ADDWconst [c] (ADDWconst [d] x)) - // cond: // result: (ADDWconst [int64(int32(c+d))] x) for { c := v.AuxInt @@ -7529,10 +7245,7 @@ func rewriteValueS390X_OpS390XADDconst_0(v *Value) bool { d := v_0.AuxInt s := v_0.Aux x := v_0.Args[0] - if x.Op != OpSB { - break - } - if !(((c+d)&1 == 0) && is32Bit(c+d)) { + if x.Op != OpSB || !(((c+d)&1 == 0) && is32Bit(c+d)) { break } v.reset(OpS390XMOVDaddr) @@ -7586,7 +7299,6 @@ func rewriteValueS390X_OpS390XADDconst_0(v *Value) bool { return true } // match: (ADDconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -7599,7 +7311,6 @@ func rewriteValueS390X_OpS390XADDconst_0(v *Value) bool { return true } // match: (ADDconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c+d]) for { c := v.AuxInt @@ -7646,13 +7357,7 @@ func rewriteValueS390X_OpS390XADDload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -7803,16 +7508,12 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND x (MOVDconst [0xFF])) - // cond: // result: (MOVBZreg x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 0xFF { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 0xFF { break } v.reset(OpS390XMOVBZreg) @@ -7820,15 +7521,11 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND (MOVDconst [0xFF]) x) - // cond: // result: (MOVBZreg x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0xFF { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0xFF { break } v.reset(OpS390XMOVBZreg) @@ -7836,16 +7533,12 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND x (MOVDconst [0xFFFF])) - // cond: // result: (MOVHZreg x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 0xFFFF { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 0xFFFF { break } v.reset(OpS390XMOVHZreg) @@ -7853,15 +7546,11 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND (MOVDconst [0xFFFF]) x) - // cond: // result: (MOVHZreg x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0xFFFF { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0xFFFF { break } v.reset(OpS390XMOVHZreg) @@ -7869,16 +7558,12 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND x (MOVDconst [0xFFFFFFFF])) - // cond: // result: (MOVWZreg x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 0xFFFFFFFF { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 0xFFFFFFFF { break } v.reset(OpS390XMOVWZreg) @@ -7886,15 +7571,11 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { return true } // match: (AND (MOVDconst [0xFFFFFFFF]) x) - // cond: // result: (MOVWZreg x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0xFFFFFFFF { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0xFFFFFFFF { break } v.reset(OpS390XMOVWZreg) @@ -7905,7 +7586,6 @@ func rewriteValueS390X_OpS390XAND_0(v *Value) bool { } func rewriteValueS390X_OpS390XAND_10(v *Value) bool { // match: (AND (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c&d]) for { _ = v.Args[1] @@ -7924,7 +7604,6 @@ func rewriteValueS390X_OpS390XAND_10(v *Value) bool { return true } // match: (AND (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c&d]) for { _ = v.Args[1] @@ -7943,7 +7622,6 @@ func rewriteValueS390X_OpS390XAND_10(v *Value) bool { return true } // match: (AND x x) - // cond: // result: x for { x := v.Args[1] @@ -8065,7 +7743,6 @@ func rewriteValueS390X_OpS390XAND_10(v *Value) bool { } func rewriteValueS390X_OpS390XANDW_0(v *Value) bool { // match: (ANDW x (MOVDconst [c])) - // cond: // result: (ANDWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -8081,7 +7758,6 @@ func rewriteValueS390X_OpS390XANDW_0(v *Value) bool { return true } // match: (ANDW (MOVDconst [c]) x) - // cond: // result: (ANDWconst [int64(int32(c))] x) for { x := v.Args[1] @@ -8096,7 +7772,6 @@ func rewriteValueS390X_OpS390XANDW_0(v *Value) bool { return true } // match: (ANDW x x) - // cond: // result: x for { x := v.Args[1] @@ -8327,7 +8002,6 @@ func rewriteValueS390X_OpS390XANDW_10(v *Value) bool { } func rewriteValueS390X_OpS390XANDWconst_0(v *Value) bool { // match: (ANDWconst [c] (ANDWconst [d] x)) - // cond: // result: (ANDWconst [c & d] x) for { c := v.AuxInt @@ -8343,7 +8017,6 @@ func rewriteValueS390X_OpS390XANDWconst_0(v *Value) bool { return true } // match: (ANDWconst [0xFF] x) - // cond: // result: (MOVBZreg x) for { if v.AuxInt != 0xFF { @@ -8355,7 +8028,6 @@ func rewriteValueS390X_OpS390XANDWconst_0(v *Value) bool { return true } // match: (ANDWconst [0xFFFF] x) - // cond: // result: (MOVHZreg x) for { if v.AuxInt != 0xFFFF { @@ -8393,7 +8065,6 @@ func rewriteValueS390X_OpS390XANDWconst_0(v *Value) bool { return true } // match: (ANDWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c&d]) for { c := v.AuxInt @@ -8464,7 +8135,6 @@ func rewriteValueS390X_OpS390XANDWload_0(v *Value) bool { } func rewriteValueS390X_OpS390XANDconst_0(v *Value) bool { // match: (ANDconst [c] (ANDconst [d] x)) - // cond: // result: (ANDconst [c & d] x) for { c := v.AuxInt @@ -8480,7 +8150,6 @@ func rewriteValueS390X_OpS390XANDconst_0(v *Value) bool { return true } // match: (ANDconst [0] _) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -8491,7 +8160,6 @@ func rewriteValueS390X_OpS390XANDconst_0(v *Value) bool { return true } // match: (ANDconst [-1] x) - // cond: // result: x for { if v.AuxInt != -1 { @@ -8504,7 +8172,6 @@ func rewriteValueS390X_OpS390XANDconst_0(v *Value) bool { return true } // match: (ANDconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c&d]) for { c := v.AuxInt @@ -8532,13 +8199,7 @@ func rewriteValueS390X_OpS390XANDload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -8759,7 +8420,6 @@ func rewriteValueS390X_OpS390XCMPUconst_0(v *Value) bool { return true } // match: (CMPUconst (MOVWZreg x) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -8774,7 +8434,6 @@ func rewriteValueS390X_OpS390XCMPUconst_0(v *Value) bool { return true } // match: (CMPUconst x:(MOVHreg _) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -8788,7 +8447,6 @@ func rewriteValueS390X_OpS390XCMPUconst_0(v *Value) bool { return true } // match: (CMPUconst x:(MOVHZreg _) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -8802,7 +8460,6 @@ func rewriteValueS390X_OpS390XCMPUconst_0(v *Value) bool { return true } // match: (CMPUconst x:(MOVBreg _) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -8816,7 +8473,6 @@ func rewriteValueS390X_OpS390XCMPUconst_0(v *Value) bool { return true } // match: (CMPUconst x:(MOVBZreg _) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -8881,7 +8537,6 @@ func rewriteValueS390X_OpS390XCMPUconst_10(v *Value) bool { func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { b := v.Block // match: (CMPW x (MOVDconst [c])) - // cond: // result: (CMPWconst x [int64(int32(c))]) for { _ = v.Args[1] @@ -8897,7 +8552,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { return true } // match: (CMPW (MOVDconst [c]) x) - // cond: // result: (InvertFlags (CMPWconst x [int64(int32(c))])) for { x := v.Args[1] @@ -8914,7 +8568,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { return true } // match: (CMPW x (MOVWreg y)) - // cond: // result: (CMPW x y) for { _ = v.Args[1] @@ -8930,7 +8583,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { return true } // match: (CMPW x (MOVWZreg y)) - // cond: // result: (CMPW x y) for { _ = v.Args[1] @@ -8946,7 +8598,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { return true } // match: (CMPW (MOVWreg x) y) - // cond: // result: (CMPW x y) for { y := v.Args[1] @@ -8961,7 +8612,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { return true } // match: (CMPW (MOVWZreg x) y) - // cond: // result: (CMPW x y) for { y := v.Args[1] @@ -8980,7 +8630,6 @@ func rewriteValueS390X_OpS390XCMPW_0(v *Value) bool { func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { b := v.Block // match: (CMPWU x (MOVDconst [c])) - // cond: // result: (CMPWUconst x [int64(int32(c))]) for { _ = v.Args[1] @@ -8996,7 +8645,6 @@ func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { return true } // match: (CMPWU (MOVDconst [c]) x) - // cond: // result: (InvertFlags (CMPWUconst x [int64(int32(c))])) for { x := v.Args[1] @@ -9013,7 +8661,6 @@ func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { return true } // match: (CMPWU x (MOVWreg y)) - // cond: // result: (CMPWU x y) for { _ = v.Args[1] @@ -9029,7 +8676,6 @@ func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { return true } // match: (CMPWU x (MOVWZreg y)) - // cond: // result: (CMPWU x y) for { _ = v.Args[1] @@ -9045,7 +8691,6 @@ func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { return true } // match: (CMPWU (MOVWreg x) y) - // cond: // result: (CMPWU x y) for { y := v.Args[1] @@ -9060,7 +8705,6 @@ func rewriteValueS390X_OpS390XCMPWU_0(v *Value) bool { return true } // match: (CMPWU (MOVWZreg x) y) - // cond: // result: (CMPWU x y) for { y := v.Args[1] @@ -9131,10 +8775,7 @@ func rewriteValueS390X_OpS390XCMPWUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpS390XMOVBZreg { - break - } - if !(0xff < c) { + if v_0.Op != OpS390XMOVBZreg || !(0xff < c) { break } v.reset(OpS390XFlagLT) @@ -9146,10 +8787,7 @@ func rewriteValueS390X_OpS390XCMPWUconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpS390XMOVHZreg { - break - } - if !(0xffff < c) { + if v_0.Op != OpS390XMOVHZreg || !(0xffff < c) { break } v.reset(OpS390XFlagLT) @@ -9188,7 +8826,6 @@ func rewriteValueS390X_OpS390XCMPWUconst_0(v *Value) bool { return true } // match: (CMPWUconst (MOVWreg x) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -9203,7 +8840,6 @@ func rewriteValueS390X_OpS390XCMPWUconst_0(v *Value) bool { return true } // match: (CMPWUconst (MOVWZreg x) [c]) - // cond: // result: (CMPWUconst x [c]) for { c := v.AuxInt @@ -9274,10 +8910,7 @@ func rewriteValueS390X_OpS390XCMPWconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpS390XMOVBZreg { - break - } - if !(0xff < c) { + if v_0.Op != OpS390XMOVBZreg || !(0xff < c) { break } v.reset(OpS390XFlagLT) @@ -9289,10 +8922,7 @@ func rewriteValueS390X_OpS390XCMPWconst_0(v *Value) bool { for { c := v.AuxInt v_0 := v.Args[0] - if v_0.Op != OpS390XMOVHZreg { - break - } - if !(0xffff < c) { + if v_0.Op != OpS390XMOVHZreg || !(0xffff < c) { break } v.reset(OpS390XFlagLT) @@ -9349,7 +8979,6 @@ func rewriteValueS390X_OpS390XCMPWconst_0(v *Value) bool { return true } // match: (CMPWconst (MOVWreg x) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9364,7 +8993,6 @@ func rewriteValueS390X_OpS390XCMPWconst_0(v *Value) bool { return true } // match: (CMPWconst (MOVWZreg x) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9446,7 +9074,6 @@ func rewriteValueS390X_OpS390XCMPconst_0(v *Value) bool { return true } // match: (CMPconst (MOVWreg x) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9461,7 +9088,6 @@ func rewriteValueS390X_OpS390XCMPconst_0(v *Value) bool { return true } // match: (CMPconst x:(MOVHreg _) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9475,7 +9101,6 @@ func rewriteValueS390X_OpS390XCMPconst_0(v *Value) bool { return true } // match: (CMPconst x:(MOVHZreg _) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9489,7 +9114,6 @@ func rewriteValueS390X_OpS390XCMPconst_0(v *Value) bool { return true } // match: (CMPconst x:(MOVBreg _) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9503,7 +9127,6 @@ func rewriteValueS390X_OpS390XCMPconst_0(v *Value) bool { return true } // match: (CMPconst x:(MOVBZreg _) [c]) - // cond: // result: (CMPWconst x [c]) for { c := v.AuxInt @@ -9624,7 +9247,6 @@ func rewriteValueS390X_OpS390XCPSDR_0(v *Value) bool { } func rewriteValueS390X_OpS390XFADD_0(v *Value) bool { // match: (FADD (FMUL y z) x) - // cond: // result: (FMADD x y z) for { x := v.Args[1] @@ -9641,7 +9263,6 @@ func rewriteValueS390X_OpS390XFADD_0(v *Value) bool { return true } // match: (FADD x (FMUL y z)) - // cond: // result: (FMADD x y z) for { _ = v.Args[1] @@ -9662,7 +9283,6 @@ func rewriteValueS390X_OpS390XFADD_0(v *Value) bool { } func rewriteValueS390X_OpS390XFADDS_0(v *Value) bool { // match: (FADDS (FMULS y z) x) - // cond: // result: (FMADDS x y z) for { x := v.Args[1] @@ -9679,7 +9299,6 @@ func rewriteValueS390X_OpS390XFADDS_0(v *Value) bool { return true } // match: (FADDS x (FMULS y z)) - // cond: // result: (FMADDS x y z) for { _ = v.Args[1] @@ -9708,13 +9327,7 @@ func rewriteValueS390X_OpS390XFMOVDload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -9736,13 +9349,7 @@ func rewriteValueS390X_OpS390XFMOVDload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XFMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XFMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -10083,13 +9690,7 @@ func rewriteValueS390X_OpS390XFMOVSload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XFMOVSstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XFMOVSstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -10422,7 +10023,6 @@ func rewriteValueS390X_OpS390XFMOVSstoreidx_0(v *Value) bool { } func rewriteValueS390X_OpS390XFNEG_0(v *Value) bool { // match: (FNEG (LPDFR x)) - // cond: // result: (LNDFR x) for { v_0 := v.Args[0] @@ -10435,7 +10035,6 @@ func rewriteValueS390X_OpS390XFNEG_0(v *Value) bool { return true } // match: (FNEG (LNDFR x)) - // cond: // result: (LPDFR x) for { v_0 := v.Args[0] @@ -10451,7 +10050,6 @@ func rewriteValueS390X_OpS390XFNEG_0(v *Value) bool { } func rewriteValueS390X_OpS390XFNEGS_0(v *Value) bool { // match: (FNEGS (LPDFR x)) - // cond: // result: (LNDFR x) for { v_0 := v.Args[0] @@ -10464,7 +10062,6 @@ func rewriteValueS390X_OpS390XFNEGS_0(v *Value) bool { return true } // match: (FNEGS (LNDFR x)) - // cond: // result: (LPDFR x) for { v_0 := v.Args[0] @@ -10480,7 +10077,6 @@ func rewriteValueS390X_OpS390XFNEGS_0(v *Value) bool { } func rewriteValueS390X_OpS390XFSUB_0(v *Value) bool { // match: (FSUB (FMUL y z) x) - // cond: // result: (FMSUB x y z) for { x := v.Args[1] @@ -10500,7 +10096,6 @@ func rewriteValueS390X_OpS390XFSUB_0(v *Value) bool { } func rewriteValueS390X_OpS390XFSUBS_0(v *Value) bool { // match: (FSUBS (FMULS y z) x) - // cond: // result: (FMSUBS x y z) for { x := v.Args[1] @@ -10521,22 +10116,15 @@ func rewriteValueS390X_OpS390XFSUBS_0(v *Value) bool { func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { b := v.Block // match: (LDGR (SRDconst [1] (SLDconst [1] x))) - // cond: // result: (LPDFR (LDGR x)) for { t := v.Type v_0 := v.Args[0] - if v_0.Op != OpS390XSRDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpS390XSRDconst || v_0.AuxInt != 1 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XSLDconst { - break - } - if v_0_0.AuxInt != 1 { + if v_0_0.Op != OpS390XSLDconst || v_0_0.AuxInt != 1 { break } x := v_0_0.Args[0] @@ -10547,7 +10135,6 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { return true } // match: (LDGR (OR (MOVDconst [-1<<63]) x)) - // cond: // result: (LNDFR (LDGR x)) for { t := v.Type @@ -10557,10 +10144,7 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != -1<<63 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != -1<<63 { break } v.reset(OpS390XLNDFR) @@ -10570,7 +10154,6 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { return true } // match: (LDGR (OR x (MOVDconst [-1<<63]))) - // cond: // result: (LNDFR (LDGR x)) for { t := v.Type @@ -10581,10 +10164,7 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != -1<<63 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != -1<<63 { break } v.reset(OpS390XLNDFR) @@ -10607,10 +10187,7 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { sym := x.Aux mem := x.Args[2] x_0 := x.Args[0] - if x_0.Op != OpS390XMOVDconst { - break - } - if x_0.AuxInt != -1<<63 { + if x_0.Op != OpS390XMOVDconst || x_0.AuxInt != -1<<63 { break } ptr := x.Args[1] @@ -10632,7 +10209,6 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { return true } // match: (LDGR (LGDR x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -10649,7 +10225,6 @@ func rewriteValueS390X_OpS390XLDGR_0(v *Value) bool { } func rewriteValueS390X_OpS390XLEDBR_0(v *Value) bool { // match: (LEDBR (LPDFR (LDEBR x))) - // cond: // result: (LPDFR x) for { v_0 := v.Args[0] @@ -10666,7 +10241,6 @@ func rewriteValueS390X_OpS390XLEDBR_0(v *Value) bool { return true } // match: (LEDBR (LNDFR (LDEBR x))) - // cond: // result: (LNDFR x) for { v_0 := v.Args[0] @@ -10686,7 +10260,6 @@ func rewriteValueS390X_OpS390XLEDBR_0(v *Value) bool { } func rewriteValueS390X_OpS390XLGDR_0(v *Value) bool { // match: (LGDR (LDGR x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -10703,7 +10276,6 @@ func rewriteValueS390X_OpS390XLGDR_0(v *Value) bool { } func rewriteValueS390X_OpS390XLoweredRound32F_0(v *Value) bool { // match: (LoweredRound32F x:(FMOVSconst)) - // cond: // result: x for { x := v.Args[0] @@ -10719,7 +10291,6 @@ func rewriteValueS390X_OpS390XLoweredRound32F_0(v *Value) bool { } func rewriteValueS390X_OpS390XLoweredRound64F_0(v *Value) bool { // match: (LoweredRound64F x:(FMOVDconst)) - // cond: // result: x for { x := v.Args[0] @@ -10743,13 +10314,7 @@ func rewriteValueS390X_OpS390XMOVBZload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVBstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVBstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -11189,7 +10754,6 @@ func rewriteValueS390X_OpS390XMOVBZreg_10(v *Value) bool { return true } // match: (MOVBZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64( uint8(c))]) for { v_0 := v.Args[0] @@ -11423,7 +10987,6 @@ func rewriteValueS390X_OpS390XMOVBZreg_20(v *Value) bool { return true } // match: (MOVBZreg (ANDWconst [m] x)) - // cond: // result: (MOVWZreg (ANDWconst [int64( uint8(m))] x)) for { v_0 := v.Args[0] @@ -11451,13 +11014,7 @@ func rewriteValueS390X_OpS390XMOVBload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVBstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVBstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -11898,7 +11455,6 @@ func rewriteValueS390X_OpS390XMOVBreg_10(v *Value) bool { return true } // match: (MOVBreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64( int8(c))]) for { v_0 := v.Args[0] @@ -11934,7 +11490,6 @@ func rewriteValueS390X_OpS390XMOVBreg_10(v *Value) bool { } func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { // match: (MOVBstore [off] {sym} ptr (MOVBreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -11955,7 +11510,6 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { return true } // match: (MOVBstore [off] {sym} ptr (MOVBZreg x) mem) - // cond: // result: (MOVBstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -12113,13 +11667,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12127,16 +11675,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRDconst { - break - } - if x_1.AuxInt != 8 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRDconst || x_1.AuxInt != 8 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstore) @@ -12162,13 +11701,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12176,16 +11709,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRDconst { - break - } - if x_1.AuxInt != j+8 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRDconst || x_1.AuxInt != j+8 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstore) @@ -12206,13 +11730,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12220,16 +11738,7 @@ func rewriteValueS390X_OpS390XMOVBstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRWconst { - break - } - if x_1.AuxInt != 8 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRWconst || x_1.AuxInt != 8 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstore) @@ -12258,13 +11767,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12272,16 +11775,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRWconst { - break - } - if x_1.AuxInt != j+8 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRWconst || x_1.AuxInt != j+8 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstore) @@ -12301,31 +11795,16 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRDconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpS390XSRDconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstore) @@ -12351,13 +11830,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12365,16 +11838,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstore) @@ -12394,31 +11858,16 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRWconst { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpS390XSRWconst || v_1.AuxInt != 8 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstore) @@ -12444,13 +11893,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVBstore { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstore || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[2] @@ -12458,16 +11901,7 @@ func rewriteValueS390X_OpS390XMOVBstore_10(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstore) @@ -12545,10 +11979,7 @@ func rewriteValueS390X_OpS390XMOVBstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+1 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(OpS390XMOVHstoreconst) @@ -12680,33 +12111,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12729,33 +12142,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12778,33 +12173,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12827,33 +12204,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12881,33 +12240,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12935,33 +12276,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -12992,33 +12315,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13046,33 +12351,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13095,33 +12382,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13144,33 +12413,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13193,33 +12444,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13242,33 +12475,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13296,33 +12511,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13350,33 +12547,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13404,33 +12583,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13458,33 +12619,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+8 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+8 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHstoreidx) @@ -13509,34 +12652,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13558,34 +12683,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13607,34 +12714,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13656,34 +12745,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13711,33 +12782,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13765,33 +12818,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13819,33 +12854,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13873,33 +12890,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13921,34 +12920,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -13970,34 +12951,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_20(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14022,34 +12985,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14071,34 +13016,16 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 8 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 8 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14126,33 +13053,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14180,33 +13089,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14234,33 +13125,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14288,33 +13161,15 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVBstoreidx { - break - } - if x.AuxInt != i-1 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVBstoreidx || x.AuxInt != i-1 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-8 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-8 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVHBRstoreidx) @@ -14330,7 +13185,6 @@ func rewriteValueS390X_OpS390XMOVBstoreidx_30(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDEQ_0(v *Value) bool { // match: (MOVDEQ x y (InvertFlags cmp)) - // cond: // result: (MOVDEQ x y cmp) for { _ = v.Args[2] @@ -14348,7 +13202,6 @@ func rewriteValueS390X_OpS390XMOVDEQ_0(v *Value) bool { return true } // match: (MOVDEQ _ x (FlagEQ)) - // cond: // result: x for { _ = v.Args[2] @@ -14363,7 +13216,6 @@ func rewriteValueS390X_OpS390XMOVDEQ_0(v *Value) bool { return true } // match: (MOVDEQ y _ (FlagLT)) - // cond: // result: y for { _ = v.Args[2] @@ -14378,7 +13230,6 @@ func rewriteValueS390X_OpS390XMOVDEQ_0(v *Value) bool { return true } // match: (MOVDEQ y _ (FlagGT)) - // cond: // result: y for { _ = v.Args[2] @@ -14396,7 +13247,6 @@ func rewriteValueS390X_OpS390XMOVDEQ_0(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDGE_0(v *Value) bool { // match: (MOVDGE x y (InvertFlags cmp)) - // cond: // result: (MOVDLE x y cmp) for { _ = v.Args[2] @@ -14414,7 +13264,6 @@ func rewriteValueS390X_OpS390XMOVDGE_0(v *Value) bool { return true } // match: (MOVDGE _ x (FlagEQ)) - // cond: // result: x for { _ = v.Args[2] @@ -14429,7 +13278,6 @@ func rewriteValueS390X_OpS390XMOVDGE_0(v *Value) bool { return true } // match: (MOVDGE y _ (FlagLT)) - // cond: // result: y for { _ = v.Args[2] @@ -14444,7 +13292,6 @@ func rewriteValueS390X_OpS390XMOVDGE_0(v *Value) bool { return true } // match: (MOVDGE _ x (FlagGT)) - // cond: // result: x for { _ = v.Args[2] @@ -14462,7 +13309,6 @@ func rewriteValueS390X_OpS390XMOVDGE_0(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDGT_0(v *Value) bool { // match: (MOVDGT x y (InvertFlags cmp)) - // cond: // result: (MOVDLT x y cmp) for { _ = v.Args[2] @@ -14480,7 +13326,6 @@ func rewriteValueS390X_OpS390XMOVDGT_0(v *Value) bool { return true } // match: (MOVDGT y _ (FlagEQ)) - // cond: // result: y for { _ = v.Args[2] @@ -14495,7 +13340,6 @@ func rewriteValueS390X_OpS390XMOVDGT_0(v *Value) bool { return true } // match: (MOVDGT y _ (FlagLT)) - // cond: // result: y for { _ = v.Args[2] @@ -14510,7 +13354,6 @@ func rewriteValueS390X_OpS390XMOVDGT_0(v *Value) bool { return true } // match: (MOVDGT _ x (FlagGT)) - // cond: // result: x for { _ = v.Args[2] @@ -14528,7 +13371,6 @@ func rewriteValueS390X_OpS390XMOVDGT_0(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDLE_0(v *Value) bool { // match: (MOVDLE x y (InvertFlags cmp)) - // cond: // result: (MOVDGE x y cmp) for { _ = v.Args[2] @@ -14546,7 +13388,6 @@ func rewriteValueS390X_OpS390XMOVDLE_0(v *Value) bool { return true } // match: (MOVDLE _ x (FlagEQ)) - // cond: // result: x for { _ = v.Args[2] @@ -14561,7 +13402,6 @@ func rewriteValueS390X_OpS390XMOVDLE_0(v *Value) bool { return true } // match: (MOVDLE _ x (FlagLT)) - // cond: // result: x for { _ = v.Args[2] @@ -14576,7 +13416,6 @@ func rewriteValueS390X_OpS390XMOVDLE_0(v *Value) bool { return true } // match: (MOVDLE y _ (FlagGT)) - // cond: // result: y for { _ = v.Args[2] @@ -14594,7 +13433,6 @@ func rewriteValueS390X_OpS390XMOVDLE_0(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDLT_0(v *Value) bool { // match: (MOVDLT x y (InvertFlags cmp)) - // cond: // result: (MOVDGT x y cmp) for { _ = v.Args[2] @@ -14612,7 +13450,6 @@ func rewriteValueS390X_OpS390XMOVDLT_0(v *Value) bool { return true } // match: (MOVDLT y _ (FlagEQ)) - // cond: // result: y for { _ = v.Args[2] @@ -14627,7 +13464,6 @@ func rewriteValueS390X_OpS390XMOVDLT_0(v *Value) bool { return true } // match: (MOVDLT _ x (FlagLT)) - // cond: // result: x for { _ = v.Args[2] @@ -14642,7 +13478,6 @@ func rewriteValueS390X_OpS390XMOVDLT_0(v *Value) bool { return true } // match: (MOVDLT y _ (FlagGT)) - // cond: // result: y for { _ = v.Args[2] @@ -14660,7 +13495,6 @@ func rewriteValueS390X_OpS390XMOVDLT_0(v *Value) bool { } func rewriteValueS390X_OpS390XMOVDNE_0(v *Value) bool { // match: (MOVDNE x y (InvertFlags cmp)) - // cond: // result: (MOVDNE x y cmp) for { _ = v.Args[2] @@ -14678,7 +13512,6 @@ func rewriteValueS390X_OpS390XMOVDNE_0(v *Value) bool { return true } // match: (MOVDNE y _ (FlagEQ)) - // cond: // result: y for { _ = v.Args[2] @@ -14693,7 +13526,6 @@ func rewriteValueS390X_OpS390XMOVDNE_0(v *Value) bool { return true } // match: (MOVDNE _ x (FlagLT)) - // cond: // result: x for { _ = v.Args[2] @@ -14708,7 +13540,6 @@ func rewriteValueS390X_OpS390XMOVDNE_0(v *Value) bool { return true } // match: (MOVDNE _ x (FlagGT)) - // cond: // result: x for { _ = v.Args[2] @@ -14833,13 +13664,7 @@ func rewriteValueS390X_OpS390XMOVDload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -14862,13 +13687,7 @@ func rewriteValueS390X_OpS390XMOVDload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XFMOVDstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XFMOVDstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -15224,13 +14043,7 @@ func rewriteValueS390X_OpS390XMOVDstore_0(v *Value) bool { p := v.Args[0] w1 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVDstore { - break - } - if x.AuxInt != i-8 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVDstore || x.AuxInt != i-8 || x.Aux != s { break } mem := x.Args[2] @@ -15260,13 +14073,7 @@ func rewriteValueS390X_OpS390XMOVDstore_0(v *Value) bool { p := v.Args[0] w2 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XSTMG2 { - break - } - if x.AuxInt != i-16 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTMG2 || x.AuxInt != i-16 || x.Aux != s { break } mem := x.Args[3] @@ -15298,13 +14105,7 @@ func rewriteValueS390X_OpS390XMOVDstore_0(v *Value) bool { p := v.Args[0] w3 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XSTMG3 { - break - } - if x.AuxInt != i-24 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTMG3 || x.AuxInt != i-24 || x.Aux != s { break } mem := x.Args[4] @@ -15501,31 +14302,16 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRDconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpS390XSRDconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHBRstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstore) @@ -15551,13 +14337,7 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHBRstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -15565,16 +14345,7 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstore) @@ -15594,31 +14365,16 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRWconst { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpS390XSRWconst || v_1.AuxInt != 16 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHBRstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstore) @@ -15644,13 +14400,7 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHBRstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -15658,16 +14408,7 @@ func rewriteValueS390X_OpS390XMOVHBRstore_0(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstore) @@ -15691,34 +14432,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -15740,34 +14463,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -15789,34 +14494,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -15838,34 +14525,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -15893,33 +14562,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -15947,33 +14598,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16001,33 +14634,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16055,33 +14670,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16103,34 +14700,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16152,34 +14731,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16204,34 +14765,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16253,34 +14796,16 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRWconst { - break - } - if v_2.AuxInt != 16 { + if v_2.Op != OpS390XSRWconst || v_2.AuxInt != 16 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16308,33 +14833,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16362,33 +14869,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16416,33 +14905,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16470,33 +14941,15 @@ func rewriteValueS390X_OpS390XMOVHBRstoreidx_10(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHBRstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHBRstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRWconst { - break - } - if w0.AuxInt != j-16 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRWconst || w0.AuxInt != j-16 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWBRstoreidx) @@ -16520,13 +14973,7 @@ func rewriteValueS390X_OpS390XMOVHZload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVHstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVHstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -17002,7 +15449,6 @@ func rewriteValueS390X_OpS390XMOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -17015,7 +15461,6 @@ func rewriteValueS390X_OpS390XMOVHZreg_10(v *Value) bool { return true } // match: (MOVHZreg (ANDWconst [m] x)) - // cond: // result: (MOVWZreg (ANDWconst [int64(uint16(m))] x)) for { v_0 := v.Args[0] @@ -17043,13 +15488,7 @@ func rewriteValueS390X_OpS390XMOVHload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVHstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVHstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -17576,7 +16015,6 @@ func rewriteValueS390X_OpS390XMOVHreg_10(v *Value) bool { return true } // match: (MOVHreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int16(c))]) for { v_0 := v.Args[0] @@ -17612,7 +16050,6 @@ func rewriteValueS390X_OpS390XMOVHreg_10(v *Value) bool { } func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { // match: (MOVHstore [off] {sym} ptr (MOVHreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -17633,7 +16070,6 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { return true } // match: (MOVHstore [off] {sym} ptr (MOVHZreg x) mem) - // cond: // result: (MOVHstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -17792,13 +16228,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -17806,16 +16236,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRDconst { - break - } - if x_1.AuxInt != 16 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRDconst || x_1.AuxInt != 16 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstore) @@ -17841,13 +16262,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -17855,16 +16270,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRDconst { - break - } - if x_1.AuxInt != j+16 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRDconst || x_1.AuxInt != j+16 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstore) @@ -17885,13 +16291,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { p := v.Args[0] w := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -17899,16 +16299,7 @@ func rewriteValueS390X_OpS390XMOVHstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRWconst { - break - } - if x_1.AuxInt != 16 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRWconst || x_1.AuxInt != 16 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstore) @@ -17937,13 +16328,7 @@ func rewriteValueS390X_OpS390XMOVHstore_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVHstore { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstore || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[2] @@ -17951,16 +16336,7 @@ func rewriteValueS390X_OpS390XMOVHstore_10(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRWconst { - break - } - if x_1.AuxInt != j+16 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRWconst || x_1.AuxInt != j+16 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstore) @@ -18040,10 +16416,7 @@ func rewriteValueS390X_OpS390XMOVHstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+2 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(OpS390XMOVWstore) @@ -18178,33 +16551,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18227,33 +16582,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18276,33 +16613,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18325,33 +16644,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18379,33 +16680,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18433,33 +16716,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18490,33 +16755,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18544,33 +16791,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18593,33 +16822,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18642,33 +16853,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18691,33 +16884,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18740,33 +16915,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != 16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != 16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18794,33 +16951,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18848,33 +16987,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18902,33 +17023,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -18956,33 +17059,15 @@ func rewriteValueS390X_OpS390XMOVHstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVHstoreidx { - break - } - if x.AuxInt != i-2 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVHstoreidx || x.AuxInt != i-2 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRWconst { - break - } - if x_2.AuxInt != j+16 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRWconst || x_2.AuxInt != j+16 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVWstoreidx) @@ -19006,31 +17091,16 @@ func rewriteValueS390X_OpS390XMOVWBRstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRDconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpS390XSRDconst || v_1.AuxInt != 32 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVWBRstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstore) @@ -19056,13 +17126,7 @@ func rewriteValueS390X_OpS390XMOVWBRstore_0(v *Value) bool { j := v_1.AuxInt w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVWBRstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] @@ -19070,16 +17134,7 @@ func rewriteValueS390X_OpS390XMOVWBRstore_0(v *Value) bool { break } w0 := x.Args[1] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstore) @@ -19103,34 +17158,16 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 32 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 32 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19152,34 +17189,16 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { p := v.Args[0] idx := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 32 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 32 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19201,34 +17220,16 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 32 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 32 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || idx != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19250,34 +17251,16 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { idx := v.Args[0] p := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XSRDconst { - break - } - if v_2.AuxInt != 32 { + if v_2.Op != OpS390XSRDconst || v_2.AuxInt != 32 { break } w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { - break - } - if w != x.Args[2] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if idx != x.Args[0] || p != x.Args[1] || w != x.Args[2] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19305,33 +17288,15 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19359,33 +17324,15 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19413,33 +17360,15 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19467,33 +17396,15 @@ func rewriteValueS390X_OpS390XMOVWBRstoreidx_0(v *Value) bool { j := v_2.AuxInt w := v_2.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWBRstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWBRstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } w0 := x.Args[2] - if w0.Op != OpS390XSRDconst { - break - } - if w0.AuxInt != j-32 { - break - } - if w != w0.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if w0.Op != OpS390XSRDconst || w0.AuxInt != j-32 || w != w0.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDBRstoreidx) @@ -19517,13 +17428,7 @@ func rewriteValueS390X_OpS390XMOVWZload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVWstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVWstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -20033,7 +17938,6 @@ func rewriteValueS390X_OpS390XMOVWZreg_10(v *Value) bool { return true } // match: (MOVWZreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(uint32(c))]) for { v_0 := v.Args[0] @@ -20057,13 +17961,7 @@ func rewriteValueS390X_OpS390XMOVWload_0(v *Value) bool { _ = v.Args[1] ptr1 := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVWstore { - break - } - if v_1.AuxInt != off { - break - } - if v_1.Aux != sym { + if v_1.Op != OpS390XMOVWstore || v_1.AuxInt != off || v_1.Aux != sym { break } _ = v_1.Args[2] @@ -20679,7 +18577,6 @@ func rewriteValueS390X_OpS390XMOVWreg_20(v *Value) bool { return true } // match: (MOVWreg (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int32(c))]) for { v_0 := v.Args[0] @@ -20695,7 +18592,6 @@ func rewriteValueS390X_OpS390XMOVWreg_20(v *Value) bool { } func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { // match: (MOVWstore [off] {sym} ptr (MOVWreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -20716,7 +18612,6 @@ func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { return true } // match: (MOVWstore [off] {sym} ptr (MOVWZreg x) mem) - // cond: // result: (MOVWstore [off] {sym} ptr x mem) for { off := v.AuxInt @@ -20874,31 +18769,16 @@ func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { _ = v.Args[2] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRDconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpS390XSRDconst || v_1.AuxInt != 32 { break } w := v_1.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVWstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] - if p != x.Args[0] { - break - } - if w != x.Args[1] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if p != x.Args[0] || w != x.Args[1] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstore) @@ -20924,13 +18804,7 @@ func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[2] - if x.Op != OpS390XMOVWstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] @@ -20938,16 +18812,7 @@ func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { break } x_1 := x.Args[1] - if x_1.Op != OpS390XSRDconst { - break - } - if x_1.AuxInt != j+32 { - break - } - if w != x_1.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { + if x_1.Op != OpS390XSRDconst || x_1.AuxInt != j+32 || w != x_1.Args[0] || !(p.Op != OpSB && x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstore) @@ -20968,13 +18833,7 @@ func rewriteValueS390X_OpS390XMOVWstore_0(v *Value) bool { p := v.Args[0] w1 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XMOVWstore { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstore || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[2] @@ -21007,13 +18866,7 @@ func rewriteValueS390X_OpS390XMOVWstore_10(v *Value) bool { p := v.Args[0] w2 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XSTM2 { - break - } - if x.AuxInt != i-8 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTM2 || x.AuxInt != i-8 || x.Aux != s { break } mem := x.Args[3] @@ -21045,13 +18898,7 @@ func rewriteValueS390X_OpS390XMOVWstore_10(v *Value) bool { p := v.Args[0] w3 := v.Args[1] x := v.Args[2] - if x.Op != OpS390XSTM3 { - break - } - if x.AuxInt != i-12 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTM3 || x.AuxInt != i-12 || x.Aux != s { break } mem := x.Args[4] @@ -21144,10 +18991,7 @@ func rewriteValueS390X_OpS390XMOVWstoreconst_0(v *Value) bool { break } mem := x.Args[1] - if p != x.Args[0] { - break - } - if !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+4 == ValAndOff(c).Off() && clobber(x)) { + if p != x.Args[0] || !(p.Op != OpSB && x.Uses == 1 && ValAndOff(a).Off()+4 == ValAndOff(c).Off() && clobber(x)) { break } v.reset(OpS390XMOVDstore) @@ -21282,33 +19126,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21331,33 +19157,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { idx := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21380,33 +19188,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21429,33 +19219,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { p := v.Args[1] w := v.Args[2] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != 32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != 32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21483,33 +19255,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21537,33 +19291,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_0(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21594,33 +19330,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if p != x.Args[0] { - break - } - if idx != x.Args[1] { + if p != x.Args[0] || idx != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21648,33 +19366,15 @@ func rewriteValueS390X_OpS390XMOVWstoreidx_10(v *Value) bool { j := w0.AuxInt w := w0.Args[0] x := v.Args[3] - if x.Op != OpS390XMOVWstoreidx { - break - } - if x.AuxInt != i-4 { - break - } - if x.Aux != s { + if x.Op != OpS390XMOVWstoreidx || x.AuxInt != i-4 || x.Aux != s { break } mem := x.Args[3] - if idx != x.Args[0] { - break - } - if p != x.Args[1] { + if idx != x.Args[0] || p != x.Args[1] { break } x_2 := x.Args[2] - if x_2.Op != OpS390XSRDconst { - break - } - if x_2.AuxInt != j+32 { - break - } - if w != x_2.Args[0] { - break - } - if !(x.Uses == 1 && clobber(x)) { + if x_2.Op != OpS390XSRDconst || x_2.AuxInt != j+32 || w != x_2.Args[0] || !(x.Uses == 1 && clobber(x)) { break } v.reset(OpS390XMOVDstoreidx) @@ -21837,7 +19537,6 @@ func rewriteValueS390X_OpS390XMULLD_0(v *Value) bool { func rewriteValueS390X_OpS390XMULLDconst_0(v *Value) bool { b := v.Block // match: (MULLDconst [-1] x) - // cond: // result: (NEG x) for { if v.AuxInt != -1 { @@ -21849,7 +19548,6 @@ func rewriteValueS390X_OpS390XMULLDconst_0(v *Value) bool { return true } // match: (MULLDconst [0] _) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -21860,7 +19558,6 @@ func rewriteValueS390X_OpS390XMULLDconst_0(v *Value) bool { return true } // match: (MULLDconst [1] x) - // cond: // result: x for { if v.AuxInt != 1 { @@ -21921,7 +19618,6 @@ func rewriteValueS390X_OpS390XMULLDconst_0(v *Value) bool { return true } // match: (MULLDconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c*d]) for { c := v.AuxInt @@ -21949,13 +19645,7 @@ func rewriteValueS390X_OpS390XMULLDload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -22026,7 +19716,6 @@ func rewriteValueS390X_OpS390XMULLDload_0(v *Value) bool { } func rewriteValueS390X_OpS390XMULLW_0(v *Value) bool { // match: (MULLW x (MOVDconst [c])) - // cond: // result: (MULLWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -22042,7 +19731,6 @@ func rewriteValueS390X_OpS390XMULLW_0(v *Value) bool { return true } // match: (MULLW (MOVDconst [c]) x) - // cond: // result: (MULLWconst [int64(int32(c))] x) for { x := v.Args[1] @@ -22273,7 +19961,6 @@ func rewriteValueS390X_OpS390XMULLW_0(v *Value) bool { func rewriteValueS390X_OpS390XMULLWconst_0(v *Value) bool { b := v.Block // match: (MULLWconst [-1] x) - // cond: // result: (NEGW x) for { if v.AuxInt != -1 { @@ -22285,7 +19972,6 @@ func rewriteValueS390X_OpS390XMULLWconst_0(v *Value) bool { return true } // match: (MULLWconst [0] _) - // cond: // result: (MOVDconst [0]) for { if v.AuxInt != 0 { @@ -22296,7 +19982,6 @@ func rewriteValueS390X_OpS390XMULLWconst_0(v *Value) bool { return true } // match: (MULLWconst [1] x) - // cond: // result: x for { if v.AuxInt != 1 { @@ -22357,7 +20042,6 @@ func rewriteValueS390X_OpS390XMULLWconst_0(v *Value) bool { return true } // match: (MULLWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(c*d))]) for { c := v.AuxInt @@ -22428,7 +20112,6 @@ func rewriteValueS390X_OpS390XMULLWload_0(v *Value) bool { } func rewriteValueS390X_OpS390XNEG_0(v *Value) bool { // match: (NEG (MOVDconst [c])) - // cond: // result: (MOVDconst [-c]) for { v_0 := v.Args[0] @@ -22466,7 +20149,6 @@ func rewriteValueS390X_OpS390XNEG_0(v *Value) bool { } func rewriteValueS390X_OpS390XNEGW_0(v *Value) bool { // match: (NEGW (MOVDconst [c])) - // cond: // result: (MOVDconst [int64(int32(-c))]) for { v_0 := v.Args[0] @@ -22571,10 +20253,7 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -22598,10 +20277,7 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -22610,15 +20286,11 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { return true } // match: (OR (MOVDconst [-1<<63]) (LGDR x)) - // cond: // result: (LGDR (LNDFR x)) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != -1<<63 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != -1<<63 { break } v_1 := v.Args[1] @@ -22635,7 +20307,6 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { return true } // match: (OR (LGDR x) (MOVDconst [-1<<63])) - // cond: // result: (LGDR (LNDFR x)) for { _ = v.Args[1] @@ -22646,10 +20317,7 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { t := v_0.Type x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != -1<<63 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != -1<<63 { break } v.reset(OpS390XLGDR) @@ -22660,22 +20328,15 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { return true } // match: (OR (SLDconst [63] (SRDconst [63] (LGDR x))) (LGDR (LPDFR y))) - // cond: // result: (LGDR (CPSDR y x)) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XSLDconst { - break - } - if v_0.AuxInt != 63 { + if v_0.Op != OpS390XSLDconst || v_0.AuxInt != 63 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XSRDconst { - break - } - if v_0_0.AuxInt != 63 { + if v_0_0.Op != OpS390XSRDconst || v_0_0.AuxInt != 63 { break } v_0_0_0 := v_0_0.Args[0] @@ -22701,7 +20362,6 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { return true } // match: (OR (LGDR (LPDFR y)) (SLDconst [63] (SRDconst [63] (LGDR x)))) - // cond: // result: (LGDR (CPSDR y x)) for { _ = v.Args[1] @@ -22716,17 +20376,11 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { t := v_0_0.Type y := v_0_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSLDconst { - break - } - if v_1.AuxInt != 63 { + if v_1.Op != OpS390XSLDconst || v_1.AuxInt != 63 { break } v_1_0 := v_1.Args[0] - if v_1_0.Op != OpS390XSRDconst { - break - } - if v_1_0.AuxInt != 63 { + if v_1_0.Op != OpS390XSRDconst || v_1_0.AuxInt != 63 { break } v_1_0_0 := v_1_0.Args[0] @@ -22747,17 +20401,11 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpS390XSLDconst { - break - } - if v_0.AuxInt != 63 { + if v_0.Op != OpS390XSLDconst || v_0.AuxInt != 63 { break } v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XSRDconst { - break - } - if v_0_0.AuxInt != 63 { + if v_0_0.Op != OpS390XSRDconst || v_0_0.AuxInt != 63 { break } v_0_0_0 := v_0_0.Args[0] @@ -22793,17 +20441,11 @@ func rewriteValueS390X_OpS390XOR_0(v *Value) bool { } c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpS390XSLDconst { - break - } - if v_1.AuxInt != 63 { + if v_1.Op != OpS390XSLDconst || v_1.AuxInt != 63 { break } v_1_0 := v_1.Args[0] - if v_1_0.Op != OpS390XSRDconst { - break - } - if v_1_0.AuxInt != 63 { + if v_1_0.Op != OpS390XSRDconst || v_1_0.AuxInt != 63 { break } v_1_0_0 := v_1_0.Args[0] @@ -22829,7 +20471,6 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (OR (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c|d]) for { _ = v.Args[1] @@ -22848,7 +20489,6 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { return true } // match: (OR (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c|d]) for { _ = v.Args[1] @@ -22867,7 +20507,6 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { return true } // match: (OR x x) - // cond: // result: x for { x := v.Args[1] @@ -22999,10 +20638,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23014,13 +20650,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23039,10 +20669,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23062,13 +20689,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23095,10 +20716,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -23110,13 +20728,7 @@ func rewriteValueS390X_OpS390XOR_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23140,10 +20752,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -23163,13 +20772,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23196,10 +20799,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -23211,13 +20811,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23236,10 +20830,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -23259,13 +20850,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23315,13 +20900,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23378,13 +20957,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23440,13 +21013,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23503,13 +21070,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23565,13 +21126,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23628,13 +21183,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23690,13 +21239,7 @@ func rewriteValueS390X_OpS390XOR_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23758,13 +21301,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -23798,10 +21335,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23813,16 +21347,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23851,10 +21376,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23866,16 +21388,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23904,10 +21417,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23919,16 +21429,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -23957,10 +21458,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -23972,16 +21470,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24001,10 +21490,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -24025,16 +21511,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24054,10 +21531,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -24078,16 +21552,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24107,10 +21572,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -24131,16 +21593,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24160,10 +21613,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -24184,16 +21634,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24222,10 +21663,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24237,16 +21675,7 @@ func rewriteValueS390X_OpS390XOR_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24280,10 +21709,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24295,16 +21721,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24333,10 +21750,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24348,16 +21762,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24386,10 +21791,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24401,16 +21803,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24430,10 +21823,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24454,16 +21844,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24483,10 +21864,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24507,16 +21885,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24536,10 +21905,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24560,16 +21926,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24589,10 +21946,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -24613,16 +21967,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24651,10 +21996,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24666,16 +22008,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24704,10 +22037,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24719,16 +22049,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24757,10 +22078,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24772,16 +22090,7 @@ func rewriteValueS390X_OpS390XOR_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24815,10 +22124,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24830,16 +22136,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24859,10 +22156,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24883,16 +22177,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24912,10 +22197,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24936,16 +22218,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -24965,10 +22238,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -24989,16 +22259,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -25018,10 +22279,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } x0 := sh.Args[0] @@ -25042,16 +22300,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -25103,16 +22352,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25170,16 +22410,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25237,16 +22468,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25304,16 +22526,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25372,16 +22585,7 @@ func rewriteValueS390X_OpS390XOR_50(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25445,16 +22649,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25513,16 +22708,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25581,16 +22767,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25648,16 +22825,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25715,16 +22883,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25783,151 +22942,66 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) - v1.AuxInt = j1 - v2 := b.NewValue0(v.Pos, OpS390XMOVHZloadidx, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (OR or:(OR y s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} idx p mem))) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} p idx mem))) - // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j1] (MOVHZloadidx [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpS390XOR { - break - } - _ = or.Args[1] - y := or.Args[0] - s1 := or.Args[1] - if s1.Op != OpS390XSLDconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpS390XMOVBZloadidx { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] - s0 := v.Args[1] - if s0.Op != OpS390XSLDconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpS390XMOVBZloadidx { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) - v1.AuxInt = j1 - v2 := b.NewValue0(v.Pos, OpS390XMOVHZloadidx, typ.UInt16) - v2.AuxInt = i0 - v2.Aux = s - v2.AddArg(p) - v2.AddArg(idx) - v2.AddArg(mem) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (OR or:(OR s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} p idx mem)) y) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} idx p mem))) - // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j1] (MOVHZloadidx [i0] {s} p idx mem)) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpS390XOR { - break - } - y := or.Args[1] - s1 := or.Args[0] - if s1.Op != OpS390XSLDconst { - break - } - j1 := s1.AuxInt - x1 := s1.Args[0] - if x1.Op != OpS390XMOVBZloadidx { - break - } - i1 := x1.AuxInt - s := x1.Aux - mem := x1.Args[2] - p := x1.Args[0] - idx := x1.Args[1] - s0 := v.Args[1] - if s0.Op != OpS390XSLDconst { - break - } - j0 := s0.AuxInt - x0 := s0.Args[0] - if x0.Op != OpS390XMOVBZloadidx { - break - } - i0 := x0.AuxInt - if x0.Aux != s { - break - } - _ = x0.Args[2] - if idx != x0.Args[0] { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if p != x0.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) + v1.AuxInt = j1 + v2 := b.NewValue0(v.Pos, OpS390XMOVHZloadidx, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (OR or:(OR y s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} idx p mem))) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} p idx mem))) + // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j1] (MOVHZloadidx [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpS390XOR { + break + } + _ = or.Args[1] + y := or.Args[0] + s1 := or.Args[1] + if s1.Op != OpS390XSLDconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpS390XMOVBZloadidx { break } - if mem != x0.Args[2] { + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + s0 := v.Args[1] + if s0.Op != OpS390XSLDconst { break } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpS390XMOVBZloadidx { + break + } + i0 := x0.AuxInt + if x0.Aux != s { + break + } + _ = x0.Args[2] + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -25947,7 +23021,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { v0.AddArg(y) return true } - // match: (OR or:(OR s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} idx p mem)) y) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} idx p mem))) + // match: (OR or:(OR s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} p idx mem)) y) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} idx p mem))) // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j1] (MOVHZloadidx [i0] {s} p idx mem)) y) for { @@ -25969,8 +23043,8 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { i1 := x1.AuxInt s := x1.Aux mem := x1.Args[2] - idx := x1.Args[0] - p := x1.Args[1] + p := x1.Args[0] + idx := x1.Args[1] s0 := v.Args[1] if s0.Op != OpS390XSLDconst { break @@ -25985,16 +23059,65 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if p != x0.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) + v1.AuxInt = j1 + v2 := b.NewValue0(v.Pos, OpS390XMOVHZloadidx, typ.UInt16) + v2.AuxInt = i0 + v2.Aux = s + v2.AddArg(p) + v2.AddArg(idx) + v2.AddArg(mem) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (OR or:(OR s1:(SLDconst [j1] x1:(MOVBZloadidx [i1] {s} idx p mem)) y) s0:(SLDconst [j0] x0:(MOVBZloadidx [i0] {s} idx p mem))) + // cond: i1 == i0+1 && j1 == j0-8 && j1 % 16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j1] (MOVHZloadidx [i0] {s} p idx mem)) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpS390XOR { break } - if mem != x0.Args[2] { + y := or.Args[1] + s1 := or.Args[0] + if s1.Op != OpS390XSLDconst { + break + } + j1 := s1.AuxInt + x1 := s1.Args[0] + if x1.Op != OpS390XMOVBZloadidx { break } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + i1 := x1.AuxInt + s := x1.Aux + mem := x1.Args[2] + idx := x1.Args[0] + p := x1.Args[1] + s0 := v.Args[1] + if s0.Op != OpS390XSLDconst { + break + } + j0 := s0.AuxInt + x0 := s0.Args[0] + if x0.Op != OpS390XMOVBZloadidx { + break + } + i0 := x0.AuxInt + if x0.Aux != s { + break + } + _ = x0.Args[2] + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26053,16 +23176,7 @@ func rewriteValueS390X_OpS390XOR_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26126,16 +23240,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26193,16 +23298,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26260,16 +23356,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26327,16 +23414,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26394,16 +23472,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26462,16 +23531,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26530,16 +23590,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26598,16 +23649,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26666,16 +23708,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26733,16 +23766,7 @@ func rewriteValueS390X_OpS390XOR_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26805,16 +23829,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26873,16 +23888,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -26941,16 +23947,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27008,16 +24005,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27075,16 +24063,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27143,16 +24122,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27211,16 +24181,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0-16 && j1%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27254,10 +24215,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -27269,13 +24227,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27296,10 +24248,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -27319,13 +24268,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27358,10 +24301,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -27377,13 +24317,7 @@ func rewriteValueS390X_OpS390XOR_80(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27409,10 +24343,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -27440,13 +24371,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27479,10 +24404,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -27498,13 +24420,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27523,10 +24439,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -27554,13 +24467,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -27610,13 +24517,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27675,13 +24576,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27739,13 +24634,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27804,13 +24693,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27876,13 +24759,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -27949,13 +24826,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -28021,13 +24892,7 @@ func rewriteValueS390X_OpS390XOR_90(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -28099,13 +24964,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -28141,10 +25000,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28156,16 +25012,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28196,10 +25043,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28211,16 +25055,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28251,10 +25086,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28266,16 +25098,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28306,10 +25129,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28321,16 +25141,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28352,10 +25163,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28376,16 +25184,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28407,10 +25206,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28431,16 +25227,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28462,10 +25249,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28486,16 +25270,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28517,10 +25292,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -28541,16 +25313,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28585,10 +25348,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28604,16 +25364,7 @@ func rewriteValueS390X_OpS390XOR_100(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28653,10 +25404,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28672,16 +25420,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28716,10 +25455,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28735,16 +25471,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28779,10 +25506,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28798,16 +25522,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28829,10 +25544,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28861,16 +25573,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28892,10 +25595,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28924,16 +25624,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -28955,10 +25646,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -28987,16 +25675,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29018,10 +25697,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -29050,16 +25726,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29094,10 +25761,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29113,16 +25777,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29155,10 +25810,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29174,16 +25826,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29216,10 +25859,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29235,16 +25875,7 @@ func rewriteValueS390X_OpS390XOR_110(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29282,10 +25913,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29301,16 +25929,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29330,10 +25949,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29362,16 +25978,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29391,10 +25998,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29423,16 +26027,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29452,10 +26047,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29484,16 +26076,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29513,10 +26096,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLDconst { - break - } - if sh.AuxInt != 32 { + if sh.Op != OpS390XSLDconst || sh.AuxInt != 32 { break } r1 := sh.Args[0] @@ -29545,16 +26125,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+4 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -29606,16 +26177,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29675,16 +26237,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29744,16 +26297,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29813,16 +26357,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29883,16 +26418,7 @@ func rewriteValueS390X_OpS390XOR_120(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -29958,16 +26484,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30028,16 +26545,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30098,16 +26606,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30167,16 +26666,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30236,16 +26726,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30306,16 +26787,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30376,16 +26848,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30445,16 +26908,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30514,16 +26968,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30584,16 +27029,7 @@ func rewriteValueS390X_OpS390XOR_130(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30659,16 +27095,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30736,16 +27163,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30813,16 +27231,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30890,16 +27299,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -30967,16 +27367,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31045,16 +27436,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31123,16 +27505,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31201,16 +27574,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31279,16 +27643,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31356,16 +27711,7 @@ func rewriteValueS390X_OpS390XOR_140(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31438,16 +27784,7 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31516,171 +27853,76 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpS390XMOVWZreg, typ.UInt64) - v3 := b.NewValue0(v.Pos, OpS390XMOVWBRloadidx, typ.Int32) - v3.AuxInt = i0 - v3.Aux = s - v3.AddArg(p) - v3.AddArg(idx) - v3.AddArg(mem) - v2.AddArg(v3) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (OR or:(OR y s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} idx p mem)))) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} p idx mem)))) - // cond: i1 == i0+2 && j1 == j0+16 && j0 % 32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j0] (MOVWZreg (MOVWBRloadidx [i0] {s} p idx mem))) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpS390XOR { - break - } - _ = or.Args[1] - y := or.Args[0] - s0 := or.Args[1] - if s0.Op != OpS390XSLDconst { - break - } - j0 := s0.AuxInt - r0 := s0.Args[0] - if r0.Op != OpS390XMOVHZreg { - break - } - x0 := r0.Args[0] - if x0.Op != OpS390XMOVHBRloadidx { - break - } - i0 := x0.AuxInt - s := x0.Aux - mem := x0.Args[2] - idx := x0.Args[0] - p := x0.Args[1] - s1 := v.Args[1] - if s1.Op != OpS390XSLDconst { - break - } - j1 := s1.AuxInt - r1 := s1.Args[0] - if r1.Op != OpS390XMOVHZreg { - break - } - x1 := r1.Args[0] - if x1.Op != OpS390XMOVHBRloadidx { - break - } - i1 := x1.AuxInt - if x1.Aux != s { - break - } - _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { - break - } - b = mergePoint(b, x0, x1, y) - v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) - v.reset(OpCopy) - v.AddArg(v0) - v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) - v1.AuxInt = j0 - v2 := b.NewValue0(v.Pos, OpS390XMOVWZreg, typ.UInt64) - v3 := b.NewValue0(v.Pos, OpS390XMOVWBRloadidx, typ.Int32) - v3.AuxInt = i0 - v3.Aux = s - v3.AddArg(p) - v3.AddArg(idx) - v3.AddArg(mem) - v2.AddArg(v3) - v1.AddArg(v2) - v0.AddArg(v1) - v0.AddArg(y) - return true - } - // match: (OR or:(OR s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} p idx mem))) y) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} idx p mem)))) - // cond: i1 == i0+2 && j1 == j0+16 && j0 % 32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or) - // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j0] (MOVWZreg (MOVWBRloadidx [i0] {s} p idx mem))) y) - for { - _ = v.Args[1] - or := v.Args[0] - if or.Op != OpS390XOR { - break - } - y := or.Args[1] - s0 := or.Args[0] - if s0.Op != OpS390XSLDconst { - break - } - j0 := s0.AuxInt - r0 := s0.Args[0] - if r0.Op != OpS390XMOVHZreg { - break - } - x0 := r0.Args[0] - if x0.Op != OpS390XMOVHBRloadidx { - break - } - i0 := x0.AuxInt - s := x0.Aux - mem := x0.Args[2] - p := x0.Args[0] - idx := x0.Args[1] - s1 := v.Args[1] - if s1.Op != OpS390XSLDconst { - break - } - j1 := s1.AuxInt - r1 := s1.Args[0] - if r1.Op != OpS390XMOVHZreg { - break - } - x1 := r1.Args[0] - if x1.Op != OpS390XMOVHBRloadidx { - break - } - i1 := x1.AuxInt - if x1.Aux != s { - break - } - _ = x1.Args[2] - if idx != x1.Args[0] { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } - if p != x1.Args[1] { + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpS390XMOVWZreg, typ.UInt64) + v3 := b.NewValue0(v.Pos, OpS390XMOVWBRloadidx, typ.Int32) + v3.AuxInt = i0 + v3.Aux = s + v3.AddArg(p) + v3.AddArg(idx) + v3.AddArg(mem) + v2.AddArg(v3) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (OR or:(OR y s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} idx p mem)))) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} p idx mem)))) + // cond: i1 == i0+2 && j1 == j0+16 && j0 % 32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j0] (MOVWZreg (MOVWBRloadidx [i0] {s} p idx mem))) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpS390XOR { break } - if mem != x1.Args[2] { + _ = or.Args[1] + y := or.Args[0] + s0 := or.Args[1] + if s0.Op != OpS390XSLDconst { break } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + j0 := s0.AuxInt + r0 := s0.Args[0] + if r0.Op != OpS390XMOVHZreg { + break + } + x0 := r0.Args[0] + if x0.Op != OpS390XMOVHBRloadidx { + break + } + i0 := x0.AuxInt + s := x0.Aux + mem := x0.Args[2] + idx := x0.Args[0] + p := x0.Args[1] + s1 := v.Args[1] + if s1.Op != OpS390XSLDconst { + break + } + j1 := s1.AuxInt + r1 := s1.Args[0] + if r1.Op != OpS390XMOVHZreg { + break + } + x1 := r1.Args[0] + if x1.Op != OpS390XMOVHBRloadidx { + break + } + i1 := x1.AuxInt + if x1.Aux != s { + break + } + _ = x1.Args[2] + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31702,7 +27944,7 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { v0.AddArg(y) return true } - // match: (OR or:(OR s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} idx p mem))) y) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} idx p mem)))) + // match: (OR or:(OR s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} p idx mem))) y) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} idx p mem)))) // cond: i1 == i0+2 && j1 == j0+16 && j0 % 32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or) // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j0] (MOVWZreg (MOVWBRloadidx [i0] {s} p idx mem))) y) for { @@ -31728,8 +27970,8 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { i0 := x0.AuxInt s := x0.Aux mem := x0.Args[2] - idx := x0.Args[0] - p := x0.Args[1] + p := x0.Args[0] + idx := x0.Args[1] s1 := v.Args[1] if s1.Op != OpS390XSLDconst { break @@ -31748,16 +27990,75 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + break + } + b = mergePoint(b, x0, x1, y) + v0 := b.NewValue0(v.Pos, OpS390XOR, v.Type) + v.reset(OpCopy) + v.AddArg(v0) + v1 := b.NewValue0(v.Pos, OpS390XSLDconst, v.Type) + v1.AuxInt = j0 + v2 := b.NewValue0(v.Pos, OpS390XMOVWZreg, typ.UInt64) + v3 := b.NewValue0(v.Pos, OpS390XMOVWBRloadidx, typ.Int32) + v3.AuxInt = i0 + v3.Aux = s + v3.AddArg(p) + v3.AddArg(idx) + v3.AddArg(mem) + v2.AddArg(v3) + v1.AddArg(v2) + v0.AddArg(v1) + v0.AddArg(y) + return true + } + // match: (OR or:(OR s0:(SLDconst [j0] r0:(MOVHZreg x0:(MOVHBRloadidx [i0] {s} idx p mem))) y) s1:(SLDconst [j1] r1:(MOVHZreg x1:(MOVHBRloadidx [i1] {s} idx p mem)))) + // cond: i1 == i0+2 && j1 == j0+16 && j0 % 32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b,x0,x1,y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or) + // result: @mergePoint(b,x0,x1,y) (OR (SLDconst [j0] (MOVWZreg (MOVWBRloadidx [i0] {s} p idx mem))) y) + for { + _ = v.Args[1] + or := v.Args[0] + if or.Op != OpS390XOR { + break + } + y := or.Args[1] + s0 := or.Args[0] + if s0.Op != OpS390XSLDconst { + break + } + j0 := s0.AuxInt + r0 := s0.Args[0] + if r0.Op != OpS390XMOVHZreg { + break + } + x0 := r0.Args[0] + if x0.Op != OpS390XMOVHBRloadidx { + break + } + i0 := x0.AuxInt + s := x0.Aux + mem := x0.Args[2] + idx := x0.Args[0] + p := x0.Args[1] + s1 := v.Args[1] + if s1.Op != OpS390XSLDconst { + break + } + j1 := s1.AuxInt + r1 := s1.Args[0] + if r1.Op != OpS390XMOVHZreg { break } - if p != x1.Args[1] { + x1 := r1.Args[0] + if x1.Op != OpS390XMOVHBRloadidx { break } - if mem != x1.Args[2] { + i1 := x1.AuxInt + if x1.Aux != s { break } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + _ = x1.Args[2] + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31826,16 +28127,7 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31904,16 +28196,7 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && j1 == j0+16 && j0%32 == 0 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -31939,7 +28222,6 @@ func rewriteValueS390X_OpS390XOR_150(v *Value) bool { } func rewriteValueS390X_OpS390XORW_0(v *Value) bool { // match: (ORW x (MOVDconst [c])) - // cond: // result: (ORWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -31955,7 +28237,6 @@ func rewriteValueS390X_OpS390XORW_0(v *Value) bool { return true } // match: (ORW (MOVDconst [c]) x) - // cond: // result: (ORWconst [int64(int32(c))] x) for { x := v.Args[1] @@ -31985,10 +28266,7 @@ func rewriteValueS390X_OpS390XORW_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -32012,10 +28290,7 @@ func rewriteValueS390X_OpS390XORW_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -32024,7 +28299,6 @@ func rewriteValueS390X_OpS390XORW_0(v *Value) bool { return true } // match: (ORW x x) - // cond: // result: x for { x := v.Args[1] @@ -32267,10 +28541,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32282,13 +28553,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32307,10 +28572,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32330,13 +28592,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32363,10 +28619,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { mem := x1.Args[1] p := x1.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -32378,13 +28631,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32403,10 +28650,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -32426,13 +28670,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32482,13 +28720,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32545,13 +28777,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32607,13 +28833,7 @@ func rewriteValueS390X_OpS390XORW_10(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32675,13 +28895,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -32715,10 +28929,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32730,16 +28941,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32768,10 +28970,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32783,16 +28982,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32821,10 +29011,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32836,16 +29023,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32874,10 +29052,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32889,16 +29064,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32918,10 +29084,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32942,16 +29105,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -32971,10 +29125,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -32995,16 +29146,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33024,10 +29166,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -33048,16 +29187,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33077,10 +29207,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x0 := sh.Args[0] @@ -33101,16 +29228,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33139,10 +29257,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33154,16 +29269,7 @@ func rewriteValueS390X_OpS390XORW_20(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33197,10 +29303,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33212,16 +29315,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33250,10 +29344,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { p := x1.Args[0] idx := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33265,16 +29356,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33303,10 +29385,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { idx := x1.Args[0] p := x1.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33318,16 +29397,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33347,10 +29417,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33371,16 +29438,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33400,10 +29458,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33424,16 +29479,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33453,10 +29499,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33477,16 +29520,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33506,10 +29540,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } x0 := sh.Args[0] @@ -33530,16 +29561,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && p.Op != OpSB && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -33591,16 +29613,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33658,16 +29671,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33725,16 +29729,7 @@ func rewriteValueS390X_OpS390XORW_30(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33797,16 +29792,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33865,16 +29851,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -33933,16 +29910,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34001,16 +29969,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34069,16 +30028,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34136,16 +30086,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34203,16 +30144,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34271,16 +30203,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34339,16 +30262,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34406,16 +30320,7 @@ func rewriteValueS390X_OpS390XORW_40(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34478,16 +30383,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34546,16 +30442,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34614,16 +30501,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+1 && j1 == j0-8 && j1%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34657,10 +30535,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -34672,13 +30547,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -34699,10 +30568,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -34722,13 +30588,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -34761,10 +30621,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { mem := x0.Args[1] p := x0.Args[0] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -34780,13 +30637,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -34805,10 +30656,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -34836,13 +30684,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -34892,13 +30734,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -34957,13 +30793,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x0.Args[1] - if p != x0.Args[0] { - break - } - if mem != x0.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || mem != x0.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -35021,13 +30851,7 @@ func rewriteValueS390X_OpS390XORW_50(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -35091,13 +30915,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[1] - if p != x1.Args[0] { - break - } - if mem != x1.Args[1] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || mem != x1.Args[1] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -35133,10 +30951,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35148,16 +30963,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35188,10 +30994,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35203,16 +31006,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35243,10 +31037,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35258,16 +31049,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35298,10 +31080,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35313,16 +31092,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35344,10 +31114,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35368,16 +31135,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35399,10 +31157,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35423,16 +31178,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35454,10 +31200,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35478,16 +31221,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35509,10 +31243,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 8 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 8 { break } x1 := sh.Args[0] @@ -35533,16 +31264,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && x0.Uses == 1 && x1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35577,10 +31299,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35596,16 +31315,7 @@ func rewriteValueS390X_OpS390XORW_60(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35643,10 +31353,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35662,16 +31369,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35704,10 +31402,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { p := x0.Args[0] idx := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35723,16 +31418,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35765,10 +31451,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { idx := x0.Args[0] p := x0.Args[1] sh := v.Args[1] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35784,16 +31467,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35813,10 +31487,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35845,16 +31516,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35874,10 +31536,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35906,16 +31565,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35935,10 +31585,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -35967,16 +31614,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -35996,10 +31634,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { for { _ = v.Args[1] sh := v.Args[0] - if sh.Op != OpS390XSLWconst { - break - } - if sh.AuxInt != 16 { + if sh.Op != OpS390XSLWconst || sh.AuxInt != 16 { break } r1 := sh.Args[0] @@ -36028,16 +31663,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(i1 == i0+2 && x0.Uses == 1 && x1.Uses == 1 && r0.Uses == 1 && r1.Uses == 1 && sh.Uses == 1 && mergePoint(b, x0, x1) != nil && clobber(x0) && clobber(x1) && clobber(r0) && clobber(r1) && clobber(sh)) { break } b = mergePoint(b, x0, x1) @@ -36089,16 +31715,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36158,16 +31775,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36227,16 +31835,7 @@ func rewriteValueS390X_OpS390XORW_70(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36301,16 +31900,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36371,16 +31961,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36441,16 +32022,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x0.Args[2] - if p != x0.Args[0] { - break - } - if idx != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x0.Args[0] || idx != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36511,16 +32083,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36581,16 +32144,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x0.Args[2] - if idx != x0.Args[0] { - break - } - if p != x0.Args[1] { - break - } - if mem != x0.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x0.Args[0] || p != x0.Args[1] || mem != x0.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36650,16 +32204,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36719,16 +32264,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36789,16 +32325,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36859,16 +32386,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x1.Args[2] - if p != x1.Args[0] { - break - } - if idx != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if p != x1.Args[0] || idx != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -36928,16 +32446,7 @@ func rewriteValueS390X_OpS390XORW_80(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -37002,16 +32511,7 @@ func rewriteValueS390X_OpS390XORW_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -37072,16 +32572,7 @@ func rewriteValueS390X_OpS390XORW_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -37142,16 +32633,7 @@ func rewriteValueS390X_OpS390XORW_90(v *Value) bool { break } _ = x1.Args[2] - if idx != x1.Args[0] { - break - } - if p != x1.Args[1] { - break - } - if mem != x1.Args[2] { - break - } - if !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { + if idx != x1.Args[0] || p != x1.Args[1] || mem != x1.Args[2] || !(p.Op != OpSB && i1 == i0+1 && j1 == j0+8 && j0%16 == 0 && x0.Uses == 1 && x1.Uses == 1 && s0.Uses == 1 && s1.Uses == 1 && or.Uses == 1 && mergePoint(b, x0, x1, y) != nil && clobber(x0) && clobber(x1) && clobber(s0) && clobber(s1) && clobber(or)) { break } b = mergePoint(b, x0, x1, y) @@ -37203,7 +32685,6 @@ func rewriteValueS390X_OpS390XORWconst_0(v *Value) bool { return true } // match: (ORWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c|d]) for { c := v.AuxInt @@ -37274,7 +32755,6 @@ func rewriteValueS390X_OpS390XORWload_0(v *Value) bool { } func rewriteValueS390X_OpS390XORconst_0(v *Value) bool { // match: (ORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -37287,7 +32767,6 @@ func rewriteValueS390X_OpS390XORconst_0(v *Value) bool { return true } // match: (ORconst [-1] _) - // cond: // result: (MOVDconst [-1]) for { if v.AuxInt != -1 { @@ -37298,7 +32777,6 @@ func rewriteValueS390X_OpS390XORconst_0(v *Value) bool { return true } // match: (ORconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c|d]) for { c := v.AuxInt @@ -37326,13 +32804,7 @@ func rewriteValueS390X_OpS390XORload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -37403,7 +32875,6 @@ func rewriteValueS390X_OpS390XORload_0(v *Value) bool { } func rewriteValueS390X_OpS390XRLL_0(v *Value) bool { // match: (RLL x (MOVDconst [c])) - // cond: // result: (RLLconst x [c&31]) for { _ = v.Args[1] @@ -37422,7 +32893,6 @@ func rewriteValueS390X_OpS390XRLL_0(v *Value) bool { } func rewriteValueS390X_OpS390XRLLG_0(v *Value) bool { // match: (RLLG x (MOVDconst [c])) - // cond: // result: (RLLGconst x [c&63]) for { _ = v.Args[1] @@ -37443,7 +32913,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SLD x (MOVDconst [c])) - // cond: // result: (SLDconst x [c&63]) for { _ = v.Args[1] @@ -37459,7 +32928,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (AND (MOVDconst [c]) y)) - // cond: // result: (SLD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37483,7 +32951,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (AND y (MOVDconst [c]))) - // cond: // result: (SLD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37528,7 +32995,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVWreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37544,7 +33010,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVHreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37560,7 +33025,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVBreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37576,7 +33040,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVWZreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37592,7 +33055,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVHZreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37608,7 +33070,6 @@ func rewriteValueS390X_OpS390XSLD_0(v *Value) bool { return true } // match: (SLD x (MOVBZreg y)) - // cond: // result: (SLD x y) for { _ = v.Args[1] @@ -37629,7 +33090,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SLW x (MOVDconst [c])) - // cond: // result: (SLWconst x [c&63]) for { _ = v.Args[1] @@ -37645,7 +33105,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (AND (MOVDconst [c]) y)) - // cond: // result: (SLW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37669,7 +33128,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (AND y (MOVDconst [c]))) - // cond: // result: (SLW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37714,7 +33172,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVWreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37730,7 +33187,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVHreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37746,7 +33202,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVBreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37762,7 +33217,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVWZreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37778,7 +33232,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVHZreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37794,7 +33247,6 @@ func rewriteValueS390X_OpS390XSLW_0(v *Value) bool { return true } // match: (SLW x (MOVBZreg y)) - // cond: // result: (SLW x y) for { _ = v.Args[1] @@ -37815,7 +33267,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SRAD x (MOVDconst [c])) - // cond: // result: (SRADconst x [c&63]) for { _ = v.Args[1] @@ -37831,7 +33282,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (AND (MOVDconst [c]) y)) - // cond: // result: (SRAD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37855,7 +33305,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (AND y (MOVDconst [c]))) - // cond: // result: (SRAD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -37900,7 +33349,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVWreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37916,7 +33364,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVHreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37932,7 +33379,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVBreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37948,7 +33394,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVWZreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37964,7 +33409,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVHZreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37980,7 +33424,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { return true } // match: (SRAD x (MOVBZreg y)) - // cond: // result: (SRAD x y) for { _ = v.Args[1] @@ -37999,7 +33442,6 @@ func rewriteValueS390X_OpS390XSRAD_0(v *Value) bool { } func rewriteValueS390X_OpS390XSRADconst_0(v *Value) bool { // match: (SRADconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [d>>uint64(c)]) for { c := v.AuxInt @@ -38018,7 +33460,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SRAW x (MOVDconst [c])) - // cond: // result: (SRAWconst x [c&63]) for { _ = v.Args[1] @@ -38034,7 +33475,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (AND (MOVDconst [c]) y)) - // cond: // result: (SRAW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38058,7 +33498,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (AND y (MOVDconst [c]))) - // cond: // result: (SRAW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38103,7 +33542,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVWreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38119,7 +33557,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVHreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38135,7 +33572,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVBreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38151,7 +33587,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVWZreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38167,7 +33602,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVHZreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38183,7 +33617,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { return true } // match: (SRAW x (MOVBZreg y)) - // cond: // result: (SRAW x y) for { _ = v.Args[1] @@ -38202,7 +33635,6 @@ func rewriteValueS390X_OpS390XSRAW_0(v *Value) bool { } func rewriteValueS390X_OpS390XSRAWconst_0(v *Value) bool { // match: (SRAWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [int64(int32(d))>>uint64(c)]) for { c := v.AuxInt @@ -38221,7 +33653,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SRD x (MOVDconst [c])) - // cond: // result: (SRDconst x [c&63]) for { _ = v.Args[1] @@ -38237,7 +33668,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (AND (MOVDconst [c]) y)) - // cond: // result: (SRD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38261,7 +33691,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (AND y (MOVDconst [c]))) - // cond: // result: (SRD x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38306,7 +33735,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVWreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38322,7 +33750,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVHreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38338,7 +33765,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVBreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38354,7 +33780,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVWZreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38370,7 +33795,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVHZreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38386,7 +33810,6 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { return true } // match: (SRD x (MOVBZreg y)) - // cond: // result: (SRD x y) for { _ = v.Args[1] @@ -38406,17 +33829,13 @@ func rewriteValueS390X_OpS390XSRD_0(v *Value) bool { func rewriteValueS390X_OpS390XSRDconst_0(v *Value) bool { b := v.Block // match: (SRDconst [1] (SLDconst [1] (LGDR x))) - // cond: // result: (LGDR (LPDFR x)) for { if v.AuxInt != 1 { break } v_0 := v.Args[0] - if v_0.Op != OpS390XSLDconst { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpS390XSLDconst || v_0.AuxInt != 1 { break } v_0_0 := v_0.Args[0] @@ -38438,7 +33857,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SRW x (MOVDconst [c])) - // cond: // result: (SRWconst x [c&63]) for { _ = v.Args[1] @@ -38454,7 +33872,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (AND (MOVDconst [c]) y)) - // cond: // result: (SRW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38478,7 +33895,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (AND y (MOVDconst [c]))) - // cond: // result: (SRW x (ANDWconst [c&63] y)) for { _ = v.Args[1] @@ -38523,7 +33939,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVWreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38539,7 +33954,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVHreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38555,7 +33969,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVBreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38571,7 +33984,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVWZreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38587,7 +33999,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVHZreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38603,7 +34014,6 @@ func rewriteValueS390X_OpS390XSRW_0(v *Value) bool { return true } // match: (SRW x (MOVBZreg y)) - // cond: // result: (SRW x y) for { _ = v.Args[1] @@ -38632,13 +34042,7 @@ func rewriteValueS390X_OpS390XSTM2_0(v *Value) bool { w2 := v.Args[1] w3 := v.Args[2] x := v.Args[3] - if x.Op != OpS390XSTM2 { - break - } - if x.AuxInt != i-8 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTM2 || x.AuxInt != i-8 || x.Aux != s { break } mem := x.Args[3] @@ -38662,7 +34066,6 @@ func rewriteValueS390X_OpS390XSTM2_0(v *Value) bool { return true } // match: (STM2 [i] {s} p (SRDconst [32] x) x mem) - // cond: // result: (MOVDstore [i] {s} p x mem) for { i := v.AuxInt @@ -38670,10 +34073,7 @@ func rewriteValueS390X_OpS390XSTM2_0(v *Value) bool { mem := v.Args[3] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpS390XSRDconst { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpS390XSRDconst || v_1.AuxInt != 32 { break } x := v_1.Args[0] @@ -38702,13 +34102,7 @@ func rewriteValueS390X_OpS390XSTMG2_0(v *Value) bool { w2 := v.Args[1] w3 := v.Args[2] x := v.Args[3] - if x.Op != OpS390XSTMG2 { - break - } - if x.AuxInt != i-16 { - break - } - if x.Aux != s { + if x.Op != OpS390XSTMG2 || x.AuxInt != i-16 || x.Aux != s { break } mem := x.Args[3] @@ -38775,7 +34169,6 @@ func rewriteValueS390X_OpS390XSUB_0(v *Value) bool { return true } // match: (SUB x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -38817,7 +34210,6 @@ func rewriteValueS390X_OpS390XSUB_0(v *Value) bool { } func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { // match: (SUBE x y (FlagGT)) - // cond: // result: (SUBC x y) for { _ = v.Args[2] @@ -38833,7 +34225,6 @@ func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { return true } // match: (SUBE x y (FlagOV)) - // cond: // result: (SUBC x y) for { _ = v.Args[2] @@ -38849,7 +34240,6 @@ func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { return true } // match: (SUBE x y (Select1 (SUBC (MOVDconst [0]) (NEG (Select0 (SUBE (MOVDconst [0]) (MOVDconst [0]) c)))))) - // cond: // result: (SUBE x y c) for { _ = v.Args[2] @@ -38865,10 +34255,7 @@ func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { } _ = v_2_0.Args[1] v_2_0_0 := v_2_0.Args[0] - if v_2_0_0.Op != OpS390XMOVDconst { - break - } - if v_2_0_0.AuxInt != 0 { + if v_2_0_0.Op != OpS390XMOVDconst || v_2_0_0.AuxInt != 0 { break } v_2_0_1 := v_2_0.Args[1] @@ -38885,17 +34272,11 @@ func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { } c := v_2_0_1_0_0.Args[2] v_2_0_1_0_0_0 := v_2_0_1_0_0.Args[0] - if v_2_0_1_0_0_0.Op != OpS390XMOVDconst { - break - } - if v_2_0_1_0_0_0.AuxInt != 0 { + if v_2_0_1_0_0_0.Op != OpS390XMOVDconst || v_2_0_1_0_0_0.AuxInt != 0 { break } v_2_0_1_0_0_1 := v_2_0_1_0_0.Args[1] - if v_2_0_1_0_0_1.Op != OpS390XMOVDconst { - break - } - if v_2_0_1_0_0_1.AuxInt != 0 { + if v_2_0_1_0_0_1.Op != OpS390XMOVDconst || v_2_0_1_0_0_1.AuxInt != 0 { break } v.reset(OpS390XSUBE) @@ -38909,7 +34290,6 @@ func rewriteValueS390X_OpS390XSUBE_0(v *Value) bool { func rewriteValueS390X_OpS390XSUBW_0(v *Value) bool { b := v.Block // match: (SUBW x (MOVDconst [c])) - // cond: // result: (SUBWconst x [int64(int32(c))]) for { _ = v.Args[1] @@ -38925,7 +34305,6 @@ func rewriteValueS390X_OpS390XSUBW_0(v *Value) bool { return true } // match: (SUBW (MOVDconst [c]) x) - // cond: // result: (NEGW (SUBWconst x [int64(int32(c))])) for { x := v.Args[1] @@ -38942,7 +34321,6 @@ func rewriteValueS390X_OpS390XSUBW_0(v *Value) bool { return true } // match: (SUBW x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -39025,7 +34403,6 @@ func rewriteValueS390X_OpS390XSUBWconst_0(v *Value) bool { return true } // match: (SUBWconst [c] x) - // cond: // result: (ADDWconst [int64(int32(-c))] x) for { c := v.AuxInt @@ -39092,7 +34469,6 @@ func rewriteValueS390X_OpS390XSUBWload_0(v *Value) bool { } func rewriteValueS390X_OpS390XSUBconst_0(v *Value) bool { // match: (SUBconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -39119,7 +34495,6 @@ func rewriteValueS390X_OpS390XSUBconst_0(v *Value) bool { return true } // match: (SUBconst (MOVDconst [d]) [c]) - // cond: // result: (MOVDconst [d-c]) for { c := v.AuxInt @@ -39166,13 +34541,7 @@ func rewriteValueS390X_OpS390XSUBload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -39245,7 +34614,6 @@ func rewriteValueS390X_OpS390XSumBytes2_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SumBytes2 x) - // cond: // result: (ADDW (SRWconst x [8]) x) for { x := v.Args[0] @@ -39262,7 +34630,6 @@ func rewriteValueS390X_OpS390XSumBytes4_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SumBytes4 x) - // cond: // result: (SumBytes2 (ADDW (SRWconst x [16]) x)) for { x := v.Args[0] @@ -39281,7 +34648,6 @@ func rewriteValueS390X_OpS390XSumBytes8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SumBytes8 x) - // cond: // result: (SumBytes4 (ADDW (SRDconst x [32]) x)) for { x := v.Args[0] @@ -39350,10 +34716,7 @@ func rewriteValueS390X_OpS390XXOR_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -39377,10 +34740,7 @@ func rewriteValueS390X_OpS390XXOR_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 64-c) { + if x != v_1.Args[0] || !(d == 64-c) { break } v.reset(OpS390XRLLGconst) @@ -39389,7 +34749,6 @@ func rewriteValueS390X_OpS390XXOR_0(v *Value) bool { return true } // match: (XOR (MOVDconst [c]) (MOVDconst [d])) - // cond: // result: (MOVDconst [c^d]) for { _ = v.Args[1] @@ -39408,7 +34767,6 @@ func rewriteValueS390X_OpS390XXOR_0(v *Value) bool { return true } // match: (XOR (MOVDconst [d]) (MOVDconst [c])) - // cond: // result: (MOVDconst [c^d]) for { _ = v.Args[1] @@ -39427,7 +34785,6 @@ func rewriteValueS390X_OpS390XXOR_0(v *Value) bool { return true } // match: (XOR x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -39551,7 +34908,6 @@ func rewriteValueS390X_OpS390XXOR_10(v *Value) bool { } func rewriteValueS390X_OpS390XXORW_0(v *Value) bool { // match: (XORW x (MOVDconst [c])) - // cond: // result: (XORWconst [int64(int32(c))] x) for { _ = v.Args[1] @@ -39567,7 +34923,6 @@ func rewriteValueS390X_OpS390XXORW_0(v *Value) bool { return true } // match: (XORW (MOVDconst [c]) x) - // cond: // result: (XORWconst [int64(int32(c))] x) for { x := v.Args[1] @@ -39597,10 +34952,7 @@ func rewriteValueS390X_OpS390XXORW_0(v *Value) bool { break } d := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -39624,10 +34976,7 @@ func rewriteValueS390X_OpS390XXORW_0(v *Value) bool { break } c := v_1.AuxInt - if x != v_1.Args[0] { - break - } - if !(d == 32-c) { + if x != v_1.Args[0] || !(d == 32-c) { break } v.reset(OpS390XRLLconst) @@ -39636,7 +34985,6 @@ func rewriteValueS390X_OpS390XXORW_0(v *Value) bool { return true } // match: (XORW x x) - // cond: // result: (MOVDconst [0]) for { x := v.Args[1] @@ -39880,7 +35228,6 @@ func rewriteValueS390X_OpS390XXORWconst_0(v *Value) bool { return true } // match: (XORWconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c^d]) for { c := v.AuxInt @@ -39951,7 +35298,6 @@ func rewriteValueS390X_OpS390XXORWload_0(v *Value) bool { } func rewriteValueS390X_OpS390XXORconst_0(v *Value) bool { // match: (XORconst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -39964,7 +35310,6 @@ func rewriteValueS390X_OpS390XXORconst_0(v *Value) bool { return true } // match: (XORconst [c] (MOVDconst [d])) - // cond: // result: (MOVDconst [c^d]) for { c := v.AuxInt @@ -39992,13 +35337,7 @@ func rewriteValueS390X_OpS390XXORload_0(v *Value) bool { x := v.Args[0] ptr1 := v.Args[1] v_2 := v.Args[2] - if v_2.Op != OpS390XFMOVDstore { - break - } - if v_2.AuxInt != off { - break - } - if v_2.Aux != sym { + if v_2.Op != OpS390XFMOVDstore || v_2.AuxInt != off || v_2.Aux != sym { break } _ = v_2.Args[2] @@ -40071,7 +35410,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select0 (Add64carry x y c)) - // cond: // result: (Select0 (ADDE x y (Select1 (ADDCconst c [-1])))) for { v_0 := v.Args[0] @@ -40096,7 +35434,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (Sub64borrow x y c)) - // cond: // result: (Select0 (SUBE x y (Select1 (SUBC (MOVDconst [0]) c)))) for { v_0 := v.Args[0] @@ -40123,7 +35460,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (AddTupleFirst32 val tuple)) - // cond: // result: (ADDW val (Select0 tuple)) for { t := v.Type @@ -40141,7 +35477,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (AddTupleFirst64 val tuple)) - // cond: // result: (ADD val (Select0 tuple)) for { t := v.Type @@ -40159,7 +35494,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (ADDCconst (MOVDconst [c]) [d])) - // cond: // result: (MOVDconst [c+d]) for { v_0 := v.Args[0] @@ -40177,7 +35511,6 @@ func rewriteValueS390X_OpSelect0_0(v *Value) bool { return true } // match: (Select0 (SUBC (MOVDconst [c]) (MOVDconst [d]))) - // cond: // result: (MOVDconst [c-d]) for { v_0 := v.Args[0] @@ -40205,7 +35538,6 @@ func rewriteValueS390X_OpSelect1_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Select1 (Add64carry x y c)) - // cond: // result: (Select0 (ADDE (MOVDconst [0]) (MOVDconst [0]) (Select1 (ADDE x y (Select1 (ADDCconst c [-1])))))) for { v_0 := v.Args[0] @@ -40240,7 +35572,6 @@ func rewriteValueS390X_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (Sub64borrow x y c)) - // cond: // result: (NEG (Select0 (SUBE (MOVDconst [0]) (MOVDconst [0]) (Select1 (SUBE x y (Select1 (SUBC (MOVDconst [0]) c))))))) for { v_0 := v.Args[0] @@ -40278,7 +35609,6 @@ func rewriteValueS390X_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (AddTupleFirst32 _ tuple)) - // cond: // result: (Select1 tuple) for { v_0 := v.Args[0] @@ -40291,7 +35621,6 @@ func rewriteValueS390X_OpSelect1_0(v *Value) bool { return true } // match: (Select1 (AddTupleFirst64 _ tuple)) - // cond: // result: (Select1 tuple) for { v_0 := v.Args[0] @@ -40397,7 +35726,6 @@ func rewriteValueS390X_OpSelect1_0(v *Value) bool { } func rewriteValueS390X_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -40408,7 +35736,6 @@ func rewriteValueS390X_OpSignExt16to32_0(v *Value) bool { } func rewriteValueS390X_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 x) - // cond: // result: (MOVHreg x) for { x := v.Args[0] @@ -40419,7 +35746,6 @@ func rewriteValueS390X_OpSignExt16to64_0(v *Value) bool { } func rewriteValueS390X_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 x) - // cond: // result: (MOVWreg x) for { x := v.Args[0] @@ -40430,7 +35756,6 @@ func rewriteValueS390X_OpSignExt32to64_0(v *Value) bool { } func rewriteValueS390X_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -40441,7 +35766,6 @@ func rewriteValueS390X_OpSignExt8to16_0(v *Value) bool { } func rewriteValueS390X_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -40452,7 +35776,6 @@ func rewriteValueS390X_OpSignExt8to32_0(v *Value) bool { } func rewriteValueS390X_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 x) - // cond: // result: (MOVBreg x) for { x := v.Args[0] @@ -40464,7 +35787,6 @@ func rewriteValueS390X_OpSignExt8to64_0(v *Value) bool { func rewriteValueS390X_OpSlicemask_0(v *Value) bool { b := v.Block // match: (Slicemask x) - // cond: // result: (SRADconst (NEG x) [63]) for { t := v.Type @@ -40479,7 +35801,6 @@ func rewriteValueS390X_OpSlicemask_0(v *Value) bool { } func rewriteValueS390X_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (FSQRT x) for { x := v.Args[0] @@ -40490,7 +35811,6 @@ func rewriteValueS390X_OpSqrt_0(v *Value) bool { } func rewriteValueS390X_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (CALLstatic [argwid] {target} mem) for { argwid := v.AuxInt @@ -40610,7 +35930,6 @@ func rewriteValueS390X_OpStore_0(v *Value) bool { } func rewriteValueS390X_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (SUBW x y) for { y := v.Args[1] @@ -40623,7 +35942,6 @@ func rewriteValueS390X_OpSub16_0(v *Value) bool { } func rewriteValueS390X_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (SUBW x y) for { y := v.Args[1] @@ -40636,7 +35954,6 @@ func rewriteValueS390X_OpSub32_0(v *Value) bool { } func rewriteValueS390X_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (FSUBS x y) for { y := v.Args[1] @@ -40649,7 +35966,6 @@ func rewriteValueS390X_OpSub32F_0(v *Value) bool { } func rewriteValueS390X_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -40662,7 +35978,6 @@ func rewriteValueS390X_OpSub64_0(v *Value) bool { } func rewriteValueS390X_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (FSUB x y) for { y := v.Args[1] @@ -40675,7 +35990,6 @@ func rewriteValueS390X_OpSub64F_0(v *Value) bool { } func rewriteValueS390X_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (SUBW x y) for { y := v.Args[1] @@ -40688,7 +36002,6 @@ func rewriteValueS390X_OpSub8_0(v *Value) bool { } func rewriteValueS390X_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (SUB x y) for { y := v.Args[1] @@ -40701,7 +36014,6 @@ func rewriteValueS390X_OpSubPtr_0(v *Value) bool { } func rewriteValueS390X_OpTrunc_0(v *Value) bool { // match: (Trunc x) - // cond: // result: (FIDBR [5] x) for { x := v.Args[0] @@ -40713,7 +36025,6 @@ func rewriteValueS390X_OpTrunc_0(v *Value) bool { } func rewriteValueS390X_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -40725,7 +36036,6 @@ func rewriteValueS390X_OpTrunc16to8_0(v *Value) bool { } func rewriteValueS390X_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -40737,7 +36047,6 @@ func rewriteValueS390X_OpTrunc32to16_0(v *Value) bool { } func rewriteValueS390X_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -40749,7 +36058,6 @@ func rewriteValueS390X_OpTrunc32to8_0(v *Value) bool { } func rewriteValueS390X_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 x) - // cond: // result: x for { x := v.Args[0] @@ -40761,7 +36069,6 @@ func rewriteValueS390X_OpTrunc64to16_0(v *Value) bool { } func rewriteValueS390X_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 x) - // cond: // result: x for { x := v.Args[0] @@ -40773,7 +36080,6 @@ func rewriteValueS390X_OpTrunc64to32_0(v *Value) bool { } func rewriteValueS390X_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 x) - // cond: // result: x for { x := v.Args[0] @@ -40785,7 +36091,6 @@ func rewriteValueS390X_OpTrunc64to8_0(v *Value) bool { } func rewriteValueS390X_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -40802,7 +36107,6 @@ func rewriteValueS390X_OpWB_0(v *Value) bool { } func rewriteValueS390X_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (XORW x y) for { y := v.Args[1] @@ -40815,7 +36119,6 @@ func rewriteValueS390X_OpXor16_0(v *Value) bool { } func rewriteValueS390X_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (XORW x y) for { y := v.Args[1] @@ -40828,7 +36131,6 @@ func rewriteValueS390X_OpXor32_0(v *Value) bool { } func rewriteValueS390X_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (XOR x y) for { y := v.Args[1] @@ -40841,7 +36143,6 @@ func rewriteValueS390X_OpXor64_0(v *Value) bool { } func rewriteValueS390X_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (XORW x y) for { y := v.Args[1] @@ -40855,7 +36156,6 @@ func rewriteValueS390X_OpXor8_0(v *Value) bool { func rewriteValueS390X_OpZero_0(v *Value) bool { b := v.Block // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -40868,7 +36168,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [1] destptr mem) - // cond: // result: (MOVBstoreconst [0] destptr mem) for { if v.AuxInt != 1 { @@ -40883,7 +36182,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [2] destptr mem) - // cond: // result: (MOVHstoreconst [0] destptr mem) for { if v.AuxInt != 2 { @@ -40898,7 +36196,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [4] destptr mem) - // cond: // result: (MOVWstoreconst [0] destptr mem) for { if v.AuxInt != 4 { @@ -40913,7 +36210,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [8] destptr mem) - // cond: // result: (MOVDstoreconst [0] destptr mem) for { if v.AuxInt != 8 { @@ -40928,7 +36224,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [3] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,2)] destptr (MOVHstoreconst [0] destptr mem)) for { if v.AuxInt != 3 { @@ -40947,7 +36242,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [5] destptr mem) - // cond: // result: (MOVBstoreconst [makeValAndOff(0,4)] destptr (MOVWstoreconst [0] destptr mem)) for { if v.AuxInt != 5 { @@ -40966,7 +36260,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [6] destptr mem) - // cond: // result: (MOVHstoreconst [makeValAndOff(0,4)] destptr (MOVWstoreconst [0] destptr mem)) for { if v.AuxInt != 6 { @@ -40985,7 +36278,6 @@ func rewriteValueS390X_OpZero_0(v *Value) bool { return true } // match: (Zero [7] destptr mem) - // cond: // result: (MOVWstoreconst [makeValAndOff(0,3)] destptr (MOVWstoreconst [0] destptr mem)) for { if v.AuxInt != 7 { @@ -41047,7 +36339,6 @@ func rewriteValueS390X_OpZero_10(v *Value) bool { } func rewriteValueS390X_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -41058,7 +36349,6 @@ func rewriteValueS390X_OpZeroExt16to32_0(v *Value) bool { } func rewriteValueS390X_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 x) - // cond: // result: (MOVHZreg x) for { x := v.Args[0] @@ -41069,7 +36359,6 @@ func rewriteValueS390X_OpZeroExt16to64_0(v *Value) bool { } func rewriteValueS390X_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 x) - // cond: // result: (MOVWZreg x) for { x := v.Args[0] @@ -41080,7 +36369,6 @@ func rewriteValueS390X_OpZeroExt32to64_0(v *Value) bool { } func rewriteValueS390X_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -41091,7 +36379,6 @@ func rewriteValueS390X_OpZeroExt8to16_0(v *Value) bool { } func rewriteValueS390X_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -41102,7 +36389,6 @@ func rewriteValueS390X_OpZeroExt8to32_0(v *Value) bool { } func rewriteValueS390X_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 x) - // cond: // result: (MOVBZreg x) for { x := v.Args[0] @@ -41118,7 +36404,6 @@ func rewriteBlockS390X(b *Block) bool { switch b.Kind { case BlockS390XEQ: // match: (EQ (InvertFlags cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41128,7 +36413,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (EQ (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41137,7 +36421,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (EQ (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41147,7 +36430,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (EQ (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst @@ -41158,7 +36440,6 @@ func rewriteBlockS390X(b *Block) bool { } case BlockS390XGE: // match: (GE (InvertFlags cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41168,7 +36449,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41177,7 +36457,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GE (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41187,7 +36466,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GE (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst @@ -41197,7 +36475,6 @@ func rewriteBlockS390X(b *Block) bool { } case BlockS390XGT: // match: (GT (InvertFlags cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41207,7 +36484,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41217,7 +36493,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GT (FlagLT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41227,7 +36502,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (GT (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst @@ -41237,22 +36511,15 @@ func rewriteBlockS390X(b *Block) bool { } case BlockIf: // match: (If (MOVDLT (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpS390XMOVDLT { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XLT @@ -41261,22 +36528,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDLE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpS390XMOVDLE { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XLE @@ -41285,22 +36545,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDGT (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpS390XMOVDGT { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XGT @@ -41309,22 +36562,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDGE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpS390XMOVDGE { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XGE @@ -41333,22 +36579,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpS390XMOVDEQ { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XEQ @@ -41357,22 +36596,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDNE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpS390XMOVDNE { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XNE @@ -41381,22 +36613,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (GTF cmp yes no) for v.Op == OpS390XMOVDGTnoinv { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XGTF @@ -41405,22 +36630,15 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) - // cond: // result: (GEF cmp yes no) for v.Op == OpS390XMOVDGEnoinv { cmp := v.Args[2] v_0 := v.Args[0] - if v_0.Op != OpS390XMOVDconst { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpS390XMOVDconst || v_0.AuxInt != 0 { break } v_1 := v.Args[1] - if v_1.Op != OpS390XMOVDconst { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpS390XMOVDconst || v_1.AuxInt != 1 { break } b.Kind = BlockS390XGEF @@ -41429,7 +36647,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (If cond yes no) - // cond: // result: (NE (CMPWconst [0] (MOVBZreg cond)) yes no) for { cond := b.Control @@ -41445,7 +36662,6 @@ func rewriteBlockS390X(b *Block) bool { } case BlockS390XLE: // match: (LE (InvertFlags cmp) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41455,7 +36671,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LE (FlagEQ) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41464,7 +36679,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LE (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41473,7 +36687,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LE (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst @@ -41484,7 +36697,6 @@ func rewriteBlockS390X(b *Block) bool { } case BlockS390XLT: // match: (LT (InvertFlags cmp) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41494,7 +36706,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LT (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41504,7 +36715,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LT (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41513,7 +36723,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (LT (FlagGT) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst @@ -41524,7 +36733,6 @@ func rewriteBlockS390X(b *Block) bool { } case BlockS390XNE: // match: (NE (CMPWconst [0] (MOVDLT (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (LT cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41536,17 +36744,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XLT @@ -41555,7 +36757,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDLE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (LE cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41567,17 +36768,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XLE @@ -41586,7 +36781,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDGT (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (GT cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41598,17 +36792,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XGT @@ -41617,7 +36805,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDGE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (GE cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41629,17 +36816,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XGE @@ -41648,7 +36829,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (EQ cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41660,17 +36840,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XEQ @@ -41679,7 +36853,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDNE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41691,17 +36864,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XNE @@ -41710,7 +36877,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (GTF cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41722,17 +36888,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XGTF @@ -41741,7 +36901,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (CMPWconst [0] (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) - // cond: // result: (GEF cmp yes no) for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { @@ -41753,17 +36912,11 @@ func rewriteBlockS390X(b *Block) bool { } cmp := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpS390XMOVDconst { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpS390XMOVDconst || v_0_0.AuxInt != 0 { break } v_0_1 := v_0.Args[1] - if v_0_1.Op != OpS390XMOVDconst { - break - } - if v_0_1.AuxInt != 1 { + if v_0_1.Op != OpS390XMOVDconst || v_0_1.AuxInt != 1 { break } b.Kind = BlockS390XGEF @@ -41772,7 +36925,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (InvertFlags cmp) yes no) - // cond: // result: (NE cmp yes no) for v.Op == OpS390XInvertFlags { cmp := v.Args[0] @@ -41782,7 +36934,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (FlagEQ) yes no) - // cond: // result: (First nil no yes) for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst @@ -41792,7 +36943,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (FlagLT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagLT { b.Kind = BlockFirst @@ -41801,7 +36951,6 @@ func rewriteBlockS390X(b *Block) bool { return true } // match: (NE (FlagGT) yes no) - // cond: // result: (First nil yes no) for v.Op == OpS390XFlagGT { b.Kind = BlockFirst diff --git a/src/cmd/compile/internal/ssa/rewriteWasm.go b/src/cmd/compile/internal/ssa/rewriteWasm.go index f424bcf2e6..a7f3f39753 100644 --- a/src/cmd/compile/internal/ssa/rewriteWasm.go +++ b/src/cmd/compile/internal/ssa/rewriteWasm.go @@ -579,7 +579,6 @@ func rewriteValueWasm(v *Value) bool { } func rewriteValueWasm_OpAbs_0(v *Value) bool { // match: (Abs x) - // cond: // result: (F64Abs x) for { x := v.Args[0] @@ -590,7 +589,6 @@ func rewriteValueWasm_OpAbs_0(v *Value) bool { } func rewriteValueWasm_OpAdd16_0(v *Value) bool { // match: (Add16 x y) - // cond: // result: (I64Add x y) for { y := v.Args[1] @@ -603,7 +601,6 @@ func rewriteValueWasm_OpAdd16_0(v *Value) bool { } func rewriteValueWasm_OpAdd32_0(v *Value) bool { // match: (Add32 x y) - // cond: // result: (I64Add x y) for { y := v.Args[1] @@ -616,7 +613,6 @@ func rewriteValueWasm_OpAdd32_0(v *Value) bool { } func rewriteValueWasm_OpAdd32F_0(v *Value) bool { // match: (Add32F x y) - // cond: // result: (F32Add x y) for { y := v.Args[1] @@ -629,7 +625,6 @@ func rewriteValueWasm_OpAdd32F_0(v *Value) bool { } func rewriteValueWasm_OpAdd64_0(v *Value) bool { // match: (Add64 x y) - // cond: // result: (I64Add x y) for { y := v.Args[1] @@ -642,7 +637,6 @@ func rewriteValueWasm_OpAdd64_0(v *Value) bool { } func rewriteValueWasm_OpAdd64F_0(v *Value) bool { // match: (Add64F x y) - // cond: // result: (F64Add x y) for { y := v.Args[1] @@ -655,7 +649,6 @@ func rewriteValueWasm_OpAdd64F_0(v *Value) bool { } func rewriteValueWasm_OpAdd8_0(v *Value) bool { // match: (Add8 x y) - // cond: // result: (I64Add x y) for { y := v.Args[1] @@ -668,7 +661,6 @@ func rewriteValueWasm_OpAdd8_0(v *Value) bool { } func rewriteValueWasm_OpAddPtr_0(v *Value) bool { // match: (AddPtr x y) - // cond: // result: (I64Add x y) for { y := v.Args[1] @@ -681,7 +673,6 @@ func rewriteValueWasm_OpAddPtr_0(v *Value) bool { } func rewriteValueWasm_OpAddr_0(v *Value) bool { // match: (Addr {sym} base) - // cond: // result: (LoweredAddr {sym} base) for { sym := v.Aux @@ -694,7 +685,6 @@ func rewriteValueWasm_OpAddr_0(v *Value) bool { } func rewriteValueWasm_OpAnd16_0(v *Value) bool { // match: (And16 x y) - // cond: // result: (I64And x y) for { y := v.Args[1] @@ -707,7 +697,6 @@ func rewriteValueWasm_OpAnd16_0(v *Value) bool { } func rewriteValueWasm_OpAnd32_0(v *Value) bool { // match: (And32 x y) - // cond: // result: (I64And x y) for { y := v.Args[1] @@ -720,7 +709,6 @@ func rewriteValueWasm_OpAnd32_0(v *Value) bool { } func rewriteValueWasm_OpAnd64_0(v *Value) bool { // match: (And64 x y) - // cond: // result: (I64And x y) for { y := v.Args[1] @@ -733,7 +721,6 @@ func rewriteValueWasm_OpAnd64_0(v *Value) bool { } func rewriteValueWasm_OpAnd8_0(v *Value) bool { // match: (And8 x y) - // cond: // result: (I64And x y) for { y := v.Args[1] @@ -746,7 +733,6 @@ func rewriteValueWasm_OpAnd8_0(v *Value) bool { } func rewriteValueWasm_OpAndB_0(v *Value) bool { // match: (AndB x y) - // cond: // result: (I64And x y) for { y := v.Args[1] @@ -761,7 +747,6 @@ func rewriteValueWasm_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (I64Sub (I64Const [64]) (I64Clz x)) for { x := v.Args[0] @@ -777,7 +762,6 @@ func rewriteValueWasm_OpBitLen64_0(v *Value) bool { } func rewriteValueWasm_OpCeil_0(v *Value) bool { // match: (Ceil x) - // cond: // result: (F64Ceil x) for { x := v.Args[0] @@ -788,7 +772,6 @@ func rewriteValueWasm_OpCeil_0(v *Value) bool { } func rewriteValueWasm_OpClosureCall_0(v *Value) bool { // match: (ClosureCall [argwid] entry closure mem) - // cond: // result: (LoweredClosureCall [argwid] entry closure mem) for { argwid := v.AuxInt @@ -807,7 +790,6 @@ func rewriteValueWasm_OpCom16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com16 x) - // cond: // result: (I64Xor x (I64Const [-1])) for { x := v.Args[0] @@ -823,7 +805,6 @@ func rewriteValueWasm_OpCom32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com32 x) - // cond: // result: (I64Xor x (I64Const [-1])) for { x := v.Args[0] @@ -839,7 +820,6 @@ func rewriteValueWasm_OpCom64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com64 x) - // cond: // result: (I64Xor x (I64Const [-1])) for { x := v.Args[0] @@ -855,7 +835,6 @@ func rewriteValueWasm_OpCom8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com8 x) - // cond: // result: (I64Xor x (I64Const [-1])) for { x := v.Args[0] @@ -869,7 +848,6 @@ func rewriteValueWasm_OpCom8_0(v *Value) bool { } func rewriteValueWasm_OpCondSelect_0(v *Value) bool { // match: (CondSelect x y cond) - // cond: // result: (Select x y cond) for { t := v.Type @@ -886,7 +864,6 @@ func rewriteValueWasm_OpCondSelect_0(v *Value) bool { } func rewriteValueWasm_OpConst16_0(v *Value) bool { // match: (Const16 [val]) - // cond: // result: (I64Const [val]) for { val := v.AuxInt @@ -897,7 +874,6 @@ func rewriteValueWasm_OpConst16_0(v *Value) bool { } func rewriteValueWasm_OpConst32_0(v *Value) bool { // match: (Const32 [val]) - // cond: // result: (I64Const [val]) for { val := v.AuxInt @@ -908,7 +884,6 @@ func rewriteValueWasm_OpConst32_0(v *Value) bool { } func rewriteValueWasm_OpConst32F_0(v *Value) bool { // match: (Const32F [val]) - // cond: // result: (F32Const [val]) for { val := v.AuxInt @@ -919,7 +894,6 @@ func rewriteValueWasm_OpConst32F_0(v *Value) bool { } func rewriteValueWasm_OpConst64_0(v *Value) bool { // match: (Const64 [val]) - // cond: // result: (I64Const [val]) for { val := v.AuxInt @@ -930,7 +904,6 @@ func rewriteValueWasm_OpConst64_0(v *Value) bool { } func rewriteValueWasm_OpConst64F_0(v *Value) bool { // match: (Const64F [val]) - // cond: // result: (F64Const [val]) for { val := v.AuxInt @@ -941,7 +914,6 @@ func rewriteValueWasm_OpConst64F_0(v *Value) bool { } func rewriteValueWasm_OpConst8_0(v *Value) bool { // match: (Const8 [val]) - // cond: // result: (I64Const [val]) for { val := v.AuxInt @@ -952,7 +924,6 @@ func rewriteValueWasm_OpConst8_0(v *Value) bool { } func rewriteValueWasm_OpConstBool_0(v *Value) bool { // match: (ConstBool [b]) - // cond: // result: (I64Const [b]) for { b := v.AuxInt @@ -963,7 +934,6 @@ func rewriteValueWasm_OpConstBool_0(v *Value) bool { } func rewriteValueWasm_OpConstNil_0(v *Value) bool { // match: (ConstNil) - // cond: // result: (I64Const [0]) for { v.reset(OpWasmI64Const) @@ -973,7 +943,6 @@ func rewriteValueWasm_OpConstNil_0(v *Value) bool { } func rewriteValueWasm_OpConvert_0(v *Value) bool { // match: (Convert x mem) - // cond: // result: (LoweredConvert x mem) for { t := v.Type @@ -988,7 +957,6 @@ func rewriteValueWasm_OpConvert_0(v *Value) bool { } func rewriteValueWasm_OpCopysign_0(v *Value) bool { // match: (Copysign x y) - // cond: // result: (F64Copysign x y) for { y := v.Args[1] @@ -1003,7 +971,6 @@ func rewriteValueWasm_OpCtz16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz16 x) - // cond: // result: (I64Ctz (I64Or x (I64Const [0x10000]))) for { x := v.Args[0] @@ -1019,7 +986,6 @@ func rewriteValueWasm_OpCtz16_0(v *Value) bool { } func rewriteValueWasm_OpCtz16NonZero_0(v *Value) bool { // match: (Ctz16NonZero x) - // cond: // result: (I64Ctz x) for { x := v.Args[0] @@ -1032,7 +998,6 @@ func rewriteValueWasm_OpCtz32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz32 x) - // cond: // result: (I64Ctz (I64Or x (I64Const [0x100000000]))) for { x := v.Args[0] @@ -1048,7 +1013,6 @@ func rewriteValueWasm_OpCtz32_0(v *Value) bool { } func rewriteValueWasm_OpCtz32NonZero_0(v *Value) bool { // match: (Ctz32NonZero x) - // cond: // result: (I64Ctz x) for { x := v.Args[0] @@ -1059,7 +1023,6 @@ func rewriteValueWasm_OpCtz32NonZero_0(v *Value) bool { } func rewriteValueWasm_OpCtz64_0(v *Value) bool { // match: (Ctz64 x) - // cond: // result: (I64Ctz x) for { x := v.Args[0] @@ -1070,7 +1033,6 @@ func rewriteValueWasm_OpCtz64_0(v *Value) bool { } func rewriteValueWasm_OpCtz64NonZero_0(v *Value) bool { // match: (Ctz64NonZero x) - // cond: // result: (I64Ctz x) for { x := v.Args[0] @@ -1083,7 +1045,6 @@ func rewriteValueWasm_OpCtz8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz8 x) - // cond: // result: (I64Ctz (I64Or x (I64Const [0x100]))) for { x := v.Args[0] @@ -1099,7 +1060,6 @@ func rewriteValueWasm_OpCtz8_0(v *Value) bool { } func rewriteValueWasm_OpCtz8NonZero_0(v *Value) bool { // match: (Ctz8NonZero x) - // cond: // result: (I64Ctz x) for { x := v.Args[0] @@ -1110,7 +1070,6 @@ func rewriteValueWasm_OpCtz8NonZero_0(v *Value) bool { } func rewriteValueWasm_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 x) - // cond: // result: (I64TruncSatF32S x) for { x := v.Args[0] @@ -1121,7 +1080,6 @@ func rewriteValueWasm_OpCvt32Fto32_0(v *Value) bool { } func rewriteValueWasm_OpCvt32Fto32U_0(v *Value) bool { // match: (Cvt32Fto32U x) - // cond: // result: (I64TruncSatF32U x) for { x := v.Args[0] @@ -1132,7 +1090,6 @@ func rewriteValueWasm_OpCvt32Fto32U_0(v *Value) bool { } func rewriteValueWasm_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 x) - // cond: // result: (I64TruncSatF32S x) for { x := v.Args[0] @@ -1143,7 +1100,6 @@ func rewriteValueWasm_OpCvt32Fto64_0(v *Value) bool { } func rewriteValueWasm_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F x) - // cond: // result: (F64PromoteF32 x) for { x := v.Args[0] @@ -1154,7 +1110,6 @@ func rewriteValueWasm_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValueWasm_OpCvt32Fto64U_0(v *Value) bool { // match: (Cvt32Fto64U x) - // cond: // result: (I64TruncSatF32U x) for { x := v.Args[0] @@ -1167,7 +1122,6 @@ func rewriteValueWasm_OpCvt32Uto32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32Uto32F x) - // cond: // result: (F32ConvertI64U (ZeroExt32to64 x)) for { x := v.Args[0] @@ -1182,7 +1136,6 @@ func rewriteValueWasm_OpCvt32Uto64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32Uto64F x) - // cond: // result: (F64ConvertI64U (ZeroExt32to64 x)) for { x := v.Args[0] @@ -1197,7 +1150,6 @@ func rewriteValueWasm_OpCvt32to32F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32to32F x) - // cond: // result: (F32ConvertI64S (SignExt32to64 x)) for { x := v.Args[0] @@ -1212,7 +1164,6 @@ func rewriteValueWasm_OpCvt32to64F_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Cvt32to64F x) - // cond: // result: (F64ConvertI64S (SignExt32to64 x)) for { x := v.Args[0] @@ -1225,7 +1176,6 @@ func rewriteValueWasm_OpCvt32to64F_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 x) - // cond: // result: (I64TruncSatF64S x) for { x := v.Args[0] @@ -1236,7 +1186,6 @@ func rewriteValueWasm_OpCvt64Fto32_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F x) - // cond: // result: (F32DemoteF64 x) for { x := v.Args[0] @@ -1247,7 +1196,6 @@ func rewriteValueWasm_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Fto32U_0(v *Value) bool { // match: (Cvt64Fto32U x) - // cond: // result: (I64TruncSatF64U x) for { x := v.Args[0] @@ -1258,7 +1206,6 @@ func rewriteValueWasm_OpCvt64Fto32U_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 x) - // cond: // result: (I64TruncSatF64S x) for { x := v.Args[0] @@ -1269,7 +1216,6 @@ func rewriteValueWasm_OpCvt64Fto64_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Fto64U_0(v *Value) bool { // match: (Cvt64Fto64U x) - // cond: // result: (I64TruncSatF64U x) for { x := v.Args[0] @@ -1280,7 +1226,6 @@ func rewriteValueWasm_OpCvt64Fto64U_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Uto32F_0(v *Value) bool { // match: (Cvt64Uto32F x) - // cond: // result: (F32ConvertI64U x) for { x := v.Args[0] @@ -1291,7 +1236,6 @@ func rewriteValueWasm_OpCvt64Uto32F_0(v *Value) bool { } func rewriteValueWasm_OpCvt64Uto64F_0(v *Value) bool { // match: (Cvt64Uto64F x) - // cond: // result: (F64ConvertI64U x) for { x := v.Args[0] @@ -1302,7 +1246,6 @@ func rewriteValueWasm_OpCvt64Uto64F_0(v *Value) bool { } func rewriteValueWasm_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F x) - // cond: // result: (F32ConvertI64S x) for { x := v.Args[0] @@ -1313,7 +1256,6 @@ func rewriteValueWasm_OpCvt64to32F_0(v *Value) bool { } func rewriteValueWasm_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F x) - // cond: // result: (F64ConvertI64S x) for { x := v.Args[0] @@ -1326,7 +1268,6 @@ func rewriteValueWasm_OpDiv16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16 x y) - // cond: // result: (I64DivS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -1345,7 +1286,6 @@ func rewriteValueWasm_OpDiv16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div16u x y) - // cond: // result: (I64DivU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -1364,7 +1304,6 @@ func rewriteValueWasm_OpDiv32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32 x y) - // cond: // result: (I64DivS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -1381,7 +1320,6 @@ func rewriteValueWasm_OpDiv32_0(v *Value) bool { } func rewriteValueWasm_OpDiv32F_0(v *Value) bool { // match: (Div32F x y) - // cond: // result: (F32Div x y) for { y := v.Args[1] @@ -1396,7 +1334,6 @@ func rewriteValueWasm_OpDiv32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div32u x y) - // cond: // result: (I64DivU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -1413,7 +1350,6 @@ func rewriteValueWasm_OpDiv32u_0(v *Value) bool { } func rewriteValueWasm_OpDiv64_0(v *Value) bool { // match: (Div64 x y) - // cond: // result: (I64DivS x y) for { y := v.Args[1] @@ -1426,7 +1362,6 @@ func rewriteValueWasm_OpDiv64_0(v *Value) bool { } func rewriteValueWasm_OpDiv64F_0(v *Value) bool { // match: (Div64F x y) - // cond: // result: (F64Div x y) for { y := v.Args[1] @@ -1439,7 +1374,6 @@ func rewriteValueWasm_OpDiv64F_0(v *Value) bool { } func rewriteValueWasm_OpDiv64u_0(v *Value) bool { // match: (Div64u x y) - // cond: // result: (I64DivU x y) for { y := v.Args[1] @@ -1454,7 +1388,6 @@ func rewriteValueWasm_OpDiv8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8 x y) - // cond: // result: (I64DivS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -1473,7 +1406,6 @@ func rewriteValueWasm_OpDiv8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Div8u x y) - // cond: // result: (I64DivU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -1492,7 +1424,6 @@ func rewriteValueWasm_OpEq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq16 x y) - // cond: // result: (I64Eq (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -1511,7 +1442,6 @@ func rewriteValueWasm_OpEq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32 x y) - // cond: // result: (I64Eq (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -1528,7 +1458,6 @@ func rewriteValueWasm_OpEq32_0(v *Value) bool { } func rewriteValueWasm_OpEq32F_0(v *Value) bool { // match: (Eq32F x y) - // cond: // result: (F32Eq x y) for { y := v.Args[1] @@ -1541,7 +1470,6 @@ func rewriteValueWasm_OpEq32F_0(v *Value) bool { } func rewriteValueWasm_OpEq64_0(v *Value) bool { // match: (Eq64 x y) - // cond: // result: (I64Eq x y) for { y := v.Args[1] @@ -1554,7 +1482,6 @@ func rewriteValueWasm_OpEq64_0(v *Value) bool { } func rewriteValueWasm_OpEq64F_0(v *Value) bool { // match: (Eq64F x y) - // cond: // result: (F64Eq x y) for { y := v.Args[1] @@ -1569,7 +1496,6 @@ func rewriteValueWasm_OpEq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq8 x y) - // cond: // result: (I64Eq (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -1586,7 +1512,6 @@ func rewriteValueWasm_OpEq8_0(v *Value) bool { } func rewriteValueWasm_OpEqB_0(v *Value) bool { // match: (EqB x y) - // cond: // result: (I64Eq x y) for { y := v.Args[1] @@ -1599,7 +1524,6 @@ func rewriteValueWasm_OpEqB_0(v *Value) bool { } func rewriteValueWasm_OpEqPtr_0(v *Value) bool { // match: (EqPtr x y) - // cond: // result: (I64Eq x y) for { y := v.Args[1] @@ -1612,7 +1536,6 @@ func rewriteValueWasm_OpEqPtr_0(v *Value) bool { } func rewriteValueWasm_OpFloor_0(v *Value) bool { // match: (Floor x) - // cond: // result: (F64Floor x) for { x := v.Args[0] @@ -1625,7 +1548,6 @@ func rewriteValueWasm_OpGeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16 x y) - // cond: // result: (I64GeS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -1644,7 +1566,6 @@ func rewriteValueWasm_OpGeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq16U x y) - // cond: // result: (I64GeU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -1663,7 +1584,6 @@ func rewriteValueWasm_OpGeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32 x y) - // cond: // result: (I64GeS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -1680,7 +1600,6 @@ func rewriteValueWasm_OpGeq32_0(v *Value) bool { } func rewriteValueWasm_OpGeq32F_0(v *Value) bool { // match: (Geq32F x y) - // cond: // result: (F32Ge x y) for { y := v.Args[1] @@ -1695,7 +1614,6 @@ func rewriteValueWasm_OpGeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq32U x y) - // cond: // result: (I64GeU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -1712,7 +1630,6 @@ func rewriteValueWasm_OpGeq32U_0(v *Value) bool { } func rewriteValueWasm_OpGeq64_0(v *Value) bool { // match: (Geq64 x y) - // cond: // result: (I64GeS x y) for { y := v.Args[1] @@ -1725,7 +1642,6 @@ func rewriteValueWasm_OpGeq64_0(v *Value) bool { } func rewriteValueWasm_OpGeq64F_0(v *Value) bool { // match: (Geq64F x y) - // cond: // result: (F64Ge x y) for { y := v.Args[1] @@ -1738,7 +1654,6 @@ func rewriteValueWasm_OpGeq64F_0(v *Value) bool { } func rewriteValueWasm_OpGeq64U_0(v *Value) bool { // match: (Geq64U x y) - // cond: // result: (I64GeU x y) for { y := v.Args[1] @@ -1753,7 +1668,6 @@ func rewriteValueWasm_OpGeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8 x y) - // cond: // result: (I64GeS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -1772,7 +1686,6 @@ func rewriteValueWasm_OpGeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq8U x y) - // cond: // result: (I64GeU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -1789,7 +1702,6 @@ func rewriteValueWasm_OpGeq8U_0(v *Value) bool { } func rewriteValueWasm_OpGetCallerPC_0(v *Value) bool { // match: (GetCallerPC) - // cond: // result: (LoweredGetCallerPC) for { v.reset(OpWasmLoweredGetCallerPC) @@ -1798,7 +1710,6 @@ func rewriteValueWasm_OpGetCallerPC_0(v *Value) bool { } func rewriteValueWasm_OpGetCallerSP_0(v *Value) bool { // match: (GetCallerSP) - // cond: // result: (LoweredGetCallerSP) for { v.reset(OpWasmLoweredGetCallerSP) @@ -1807,7 +1718,6 @@ func rewriteValueWasm_OpGetCallerSP_0(v *Value) bool { } func rewriteValueWasm_OpGetClosurePtr_0(v *Value) bool { // match: (GetClosurePtr) - // cond: // result: (LoweredGetClosurePtr) for { v.reset(OpWasmLoweredGetClosurePtr) @@ -1818,7 +1728,6 @@ func rewriteValueWasm_OpGreater16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16 x y) - // cond: // result: (I64GtS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -1837,7 +1746,6 @@ func rewriteValueWasm_OpGreater16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater16U x y) - // cond: // result: (I64GtU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -1856,7 +1764,6 @@ func rewriteValueWasm_OpGreater32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32 x y) - // cond: // result: (I64GtS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -1873,7 +1780,6 @@ func rewriteValueWasm_OpGreater32_0(v *Value) bool { } func rewriteValueWasm_OpGreater32F_0(v *Value) bool { // match: (Greater32F x y) - // cond: // result: (F32Gt x y) for { y := v.Args[1] @@ -1888,7 +1794,6 @@ func rewriteValueWasm_OpGreater32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater32U x y) - // cond: // result: (I64GtU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -1905,7 +1810,6 @@ func rewriteValueWasm_OpGreater32U_0(v *Value) bool { } func rewriteValueWasm_OpGreater64_0(v *Value) bool { // match: (Greater64 x y) - // cond: // result: (I64GtS x y) for { y := v.Args[1] @@ -1918,7 +1822,6 @@ func rewriteValueWasm_OpGreater64_0(v *Value) bool { } func rewriteValueWasm_OpGreater64F_0(v *Value) bool { // match: (Greater64F x y) - // cond: // result: (F64Gt x y) for { y := v.Args[1] @@ -1931,7 +1834,6 @@ func rewriteValueWasm_OpGreater64F_0(v *Value) bool { } func rewriteValueWasm_OpGreater64U_0(v *Value) bool { // match: (Greater64U x y) - // cond: // result: (I64GtU x y) for { y := v.Args[1] @@ -1946,7 +1848,6 @@ func rewriteValueWasm_OpGreater8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8 x y) - // cond: // result: (I64GtS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -1965,7 +1866,6 @@ func rewriteValueWasm_OpGreater8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater8U x y) - // cond: // result: (I64GtU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -1982,7 +1882,6 @@ func rewriteValueWasm_OpGreater8U_0(v *Value) bool { } func rewriteValueWasm_OpInterCall_0(v *Value) bool { // match: (InterCall [argwid] entry mem) - // cond: // result: (LoweredInterCall [argwid] entry mem) for { argwid := v.AuxInt @@ -1997,7 +1896,6 @@ func rewriteValueWasm_OpInterCall_0(v *Value) bool { } func rewriteValueWasm_OpIsInBounds_0(v *Value) bool { // match: (IsInBounds idx len) - // cond: // result: (I64LtU idx len) for { len := v.Args[1] @@ -2012,7 +1910,6 @@ func rewriteValueWasm_OpIsNonNil_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (IsNonNil p) - // cond: // result: (I64Eqz (I64Eqz p)) for { p := v.Args[0] @@ -2025,7 +1922,6 @@ func rewriteValueWasm_OpIsNonNil_0(v *Value) bool { } func rewriteValueWasm_OpIsSliceInBounds_0(v *Value) bool { // match: (IsSliceInBounds idx len) - // cond: // result: (I64LeU idx len) for { len := v.Args[1] @@ -2040,7 +1936,6 @@ func rewriteValueWasm_OpLeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16 x y) - // cond: // result: (I64LeS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -2059,7 +1954,6 @@ func rewriteValueWasm_OpLeq16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq16U x y) - // cond: // result: (I64LeU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2078,7 +1972,6 @@ func rewriteValueWasm_OpLeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32 x y) - // cond: // result: (I64LeS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -2095,7 +1988,6 @@ func rewriteValueWasm_OpLeq32_0(v *Value) bool { } func rewriteValueWasm_OpLeq32F_0(v *Value) bool { // match: (Leq32F x y) - // cond: // result: (F32Le x y) for { y := v.Args[1] @@ -2110,7 +2002,6 @@ func rewriteValueWasm_OpLeq32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq32U x y) - // cond: // result: (I64LeU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2127,7 +2018,6 @@ func rewriteValueWasm_OpLeq32U_0(v *Value) bool { } func rewriteValueWasm_OpLeq64_0(v *Value) bool { // match: (Leq64 x y) - // cond: // result: (I64LeS x y) for { y := v.Args[1] @@ -2140,7 +2030,6 @@ func rewriteValueWasm_OpLeq64_0(v *Value) bool { } func rewriteValueWasm_OpLeq64F_0(v *Value) bool { // match: (Leq64F x y) - // cond: // result: (F64Le x y) for { y := v.Args[1] @@ -2153,7 +2042,6 @@ func rewriteValueWasm_OpLeq64F_0(v *Value) bool { } func rewriteValueWasm_OpLeq64U_0(v *Value) bool { // match: (Leq64U x y) - // cond: // result: (I64LeU x y) for { y := v.Args[1] @@ -2168,7 +2056,6 @@ func rewriteValueWasm_OpLeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8 x y) - // cond: // result: (I64LeS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -2187,7 +2074,6 @@ func rewriteValueWasm_OpLeq8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq8U x y) - // cond: // result: (I64LeU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2206,7 +2092,6 @@ func rewriteValueWasm_OpLess16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16 x y) - // cond: // result: (I64LtS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -2225,7 +2110,6 @@ func rewriteValueWasm_OpLess16U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less16U x y) - // cond: // result: (I64LtU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2244,7 +2128,6 @@ func rewriteValueWasm_OpLess32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32 x y) - // cond: // result: (I64LtS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -2261,7 +2144,6 @@ func rewriteValueWasm_OpLess32_0(v *Value) bool { } func rewriteValueWasm_OpLess32F_0(v *Value) bool { // match: (Less32F x y) - // cond: // result: (F32Lt x y) for { y := v.Args[1] @@ -2276,7 +2158,6 @@ func rewriteValueWasm_OpLess32U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less32U x y) - // cond: // result: (I64LtU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2293,7 +2174,6 @@ func rewriteValueWasm_OpLess32U_0(v *Value) bool { } func rewriteValueWasm_OpLess64_0(v *Value) bool { // match: (Less64 x y) - // cond: // result: (I64LtS x y) for { y := v.Args[1] @@ -2306,7 +2186,6 @@ func rewriteValueWasm_OpLess64_0(v *Value) bool { } func rewriteValueWasm_OpLess64F_0(v *Value) bool { // match: (Less64F x y) - // cond: // result: (F64Lt x y) for { y := v.Args[1] @@ -2319,7 +2198,6 @@ func rewriteValueWasm_OpLess64F_0(v *Value) bool { } func rewriteValueWasm_OpLess64U_0(v *Value) bool { // match: (Less64U x y) - // cond: // result: (I64LtU x y) for { y := v.Args[1] @@ -2334,7 +2212,6 @@ func rewriteValueWasm_OpLess8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8 x y) - // cond: // result: (I64LtS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -2353,7 +2230,6 @@ func rewriteValueWasm_OpLess8U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less8U x y) - // cond: // result: (I64LtU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2508,7 +2384,6 @@ func rewriteValueWasm_OpLoad_0(v *Value) bool { } func rewriteValueWasm_OpLocalAddr_0(v *Value) bool { // match: (LocalAddr {sym} base _) - // cond: // result: (LoweredAddr {sym} base) for { sym := v.Aux @@ -2524,7 +2399,6 @@ func rewriteValueWasm_OpLsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x16 x y) - // cond: // result: (Lsh64x64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2541,7 +2415,6 @@ func rewriteValueWasm_OpLsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x32 x y) - // cond: // result: (Lsh64x64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2556,7 +2429,6 @@ func rewriteValueWasm_OpLsh16x32_0(v *Value) bool { } func rewriteValueWasm_OpLsh16x64_0(v *Value) bool { // match: (Lsh16x64 x y) - // cond: // result: (Lsh64x64 x y) for { y := v.Args[1] @@ -2571,7 +2443,6 @@ func rewriteValueWasm_OpLsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x8 x y) - // cond: // result: (Lsh64x64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2588,7 +2459,6 @@ func rewriteValueWasm_OpLsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x16 x y) - // cond: // result: (Lsh64x64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2605,7 +2475,6 @@ func rewriteValueWasm_OpLsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x32 x y) - // cond: // result: (Lsh64x64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2620,7 +2489,6 @@ func rewriteValueWasm_OpLsh32x32_0(v *Value) bool { } func rewriteValueWasm_OpLsh32x64_0(v *Value) bool { // match: (Lsh32x64 x y) - // cond: // result: (Lsh64x64 x y) for { y := v.Args[1] @@ -2635,7 +2503,6 @@ func rewriteValueWasm_OpLsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x8 x y) - // cond: // result: (Lsh64x64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2652,7 +2519,6 @@ func rewriteValueWasm_OpLsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x16 x y) - // cond: // result: (Lsh64x64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2669,7 +2535,6 @@ func rewriteValueWasm_OpLsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x32 x y) - // cond: // result: (Lsh64x64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2738,7 +2603,6 @@ func rewriteValueWasm_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x y) - // cond: // result: (Select (I64Shl x y) (I64Const [0]) (I64LtU y (I64Const [64]))) for { y := v.Args[1] @@ -2764,7 +2628,6 @@ func rewriteValueWasm_OpLsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x8 x y) - // cond: // result: (Lsh64x64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2781,7 +2644,6 @@ func rewriteValueWasm_OpLsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x16 x y) - // cond: // result: (Lsh64x64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2798,7 +2660,6 @@ func rewriteValueWasm_OpLsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x32 x y) - // cond: // result: (Lsh64x64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2813,7 +2674,6 @@ func rewriteValueWasm_OpLsh8x32_0(v *Value) bool { } func rewriteValueWasm_OpLsh8x64_0(v *Value) bool { // match: (Lsh8x64 x y) - // cond: // result: (Lsh64x64 x y) for { y := v.Args[1] @@ -2828,7 +2688,6 @@ func rewriteValueWasm_OpLsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x8 x y) - // cond: // result: (Lsh64x64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2845,7 +2704,6 @@ func rewriteValueWasm_OpMod16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16 x y) - // cond: // result: (I64RemS (SignExt16to64 x) (SignExt16to64 y)) for { y := v.Args[1] @@ -2864,7 +2722,6 @@ func rewriteValueWasm_OpMod16u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod16u x y) - // cond: // result: (I64RemU (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -2883,7 +2740,6 @@ func rewriteValueWasm_OpMod32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32 x y) - // cond: // result: (I64RemS (SignExt32to64 x) (SignExt32to64 y)) for { y := v.Args[1] @@ -2902,7 +2758,6 @@ func rewriteValueWasm_OpMod32u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod32u x y) - // cond: // result: (I64RemU (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -2919,7 +2774,6 @@ func rewriteValueWasm_OpMod32u_0(v *Value) bool { } func rewriteValueWasm_OpMod64_0(v *Value) bool { // match: (Mod64 x y) - // cond: // result: (I64RemS x y) for { y := v.Args[1] @@ -2932,7 +2786,6 @@ func rewriteValueWasm_OpMod64_0(v *Value) bool { } func rewriteValueWasm_OpMod64u_0(v *Value) bool { // match: (Mod64u x y) - // cond: // result: (I64RemU x y) for { y := v.Args[1] @@ -2947,7 +2800,6 @@ func rewriteValueWasm_OpMod8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8 x y) - // cond: // result: (I64RemS (SignExt8to64 x) (SignExt8to64 y)) for { y := v.Args[1] @@ -2966,7 +2818,6 @@ func rewriteValueWasm_OpMod8u_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mod8u x y) - // cond: // result: (I64RemU (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -2985,7 +2836,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Move [0] _ _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -2998,7 +2848,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [1] dst src mem) - // cond: // result: (I64Store8 dst (I64Load8U src mem) mem) for { if v.AuxInt != 1 { @@ -3017,7 +2866,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [2] dst src mem) - // cond: // result: (I64Store16 dst (I64Load16U src mem) mem) for { if v.AuxInt != 2 { @@ -3036,7 +2884,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [4] dst src mem) - // cond: // result: (I64Store32 dst (I64Load32U src mem) mem) for { if v.AuxInt != 4 { @@ -3055,7 +2902,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [8] dst src mem) - // cond: // result: (I64Store dst (I64Load src mem) mem) for { if v.AuxInt != 8 { @@ -3074,7 +2920,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [16] dst src mem) - // cond: // result: (I64Store [8] dst (I64Load [8] src mem) (I64Store dst (I64Load src mem) mem)) for { if v.AuxInt != 16 { @@ -3102,7 +2947,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [3] dst src mem) - // cond: // result: (I64Store8 [2] dst (I64Load8U [2] src mem) (I64Store16 dst (I64Load16U src mem) mem)) for { if v.AuxInt != 3 { @@ -3130,7 +2974,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [5] dst src mem) - // cond: // result: (I64Store8 [4] dst (I64Load8U [4] src mem) (I64Store32 dst (I64Load32U src mem) mem)) for { if v.AuxInt != 5 { @@ -3158,7 +3001,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [6] dst src mem) - // cond: // result: (I64Store16 [4] dst (I64Load16U [4] src mem) (I64Store32 dst (I64Load32U src mem) mem)) for { if v.AuxInt != 6 { @@ -3186,7 +3028,6 @@ func rewriteValueWasm_OpMove_0(v *Value) bool { return true } // match: (Move [7] dst src mem) - // cond: // result: (I64Store32 [3] dst (I64Load32U [3] src mem) (I64Store32 dst (I64Load32U src mem) mem)) for { if v.AuxInt != 7 { @@ -3340,7 +3181,6 @@ func rewriteValueWasm_OpMove_10(v *Value) bool { } func rewriteValueWasm_OpMul16_0(v *Value) bool { // match: (Mul16 x y) - // cond: // result: (I64Mul x y) for { y := v.Args[1] @@ -3353,7 +3193,6 @@ func rewriteValueWasm_OpMul16_0(v *Value) bool { } func rewriteValueWasm_OpMul32_0(v *Value) bool { // match: (Mul32 x y) - // cond: // result: (I64Mul x y) for { y := v.Args[1] @@ -3366,7 +3205,6 @@ func rewriteValueWasm_OpMul32_0(v *Value) bool { } func rewriteValueWasm_OpMul32F_0(v *Value) bool { // match: (Mul32F x y) - // cond: // result: (F32Mul x y) for { y := v.Args[1] @@ -3379,7 +3217,6 @@ func rewriteValueWasm_OpMul32F_0(v *Value) bool { } func rewriteValueWasm_OpMul64_0(v *Value) bool { // match: (Mul64 x y) - // cond: // result: (I64Mul x y) for { y := v.Args[1] @@ -3392,7 +3229,6 @@ func rewriteValueWasm_OpMul64_0(v *Value) bool { } func rewriteValueWasm_OpMul64F_0(v *Value) bool { // match: (Mul64F x y) - // cond: // result: (F64Mul x y) for { y := v.Args[1] @@ -3405,7 +3241,6 @@ func rewriteValueWasm_OpMul64F_0(v *Value) bool { } func rewriteValueWasm_OpMul8_0(v *Value) bool { // match: (Mul8 x y) - // cond: // result: (I64Mul x y) for { y := v.Args[1] @@ -3420,7 +3255,6 @@ func rewriteValueWasm_OpNeg16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg16 x) - // cond: // result: (I64Sub (I64Const [0]) x) for { x := v.Args[0] @@ -3436,7 +3270,6 @@ func rewriteValueWasm_OpNeg32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg32 x) - // cond: // result: (I64Sub (I64Const [0]) x) for { x := v.Args[0] @@ -3450,7 +3283,6 @@ func rewriteValueWasm_OpNeg32_0(v *Value) bool { } func rewriteValueWasm_OpNeg32F_0(v *Value) bool { // match: (Neg32F x) - // cond: // result: (F32Neg x) for { x := v.Args[0] @@ -3463,7 +3295,6 @@ func rewriteValueWasm_OpNeg64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg64 x) - // cond: // result: (I64Sub (I64Const [0]) x) for { x := v.Args[0] @@ -3477,7 +3308,6 @@ func rewriteValueWasm_OpNeg64_0(v *Value) bool { } func rewriteValueWasm_OpNeg64F_0(v *Value) bool { // match: (Neg64F x) - // cond: // result: (F64Neg x) for { x := v.Args[0] @@ -3490,7 +3320,6 @@ func rewriteValueWasm_OpNeg8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neg8 x) - // cond: // result: (I64Sub (I64Const [0]) x) for { x := v.Args[0] @@ -3506,7 +3335,6 @@ func rewriteValueWasm_OpNeq16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq16 x y) - // cond: // result: (I64Ne (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -3525,7 +3353,6 @@ func rewriteValueWasm_OpNeq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq32 x y) - // cond: // result: (I64Ne (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -3542,7 +3369,6 @@ func rewriteValueWasm_OpNeq32_0(v *Value) bool { } func rewriteValueWasm_OpNeq32F_0(v *Value) bool { // match: (Neq32F x y) - // cond: // result: (F32Ne x y) for { y := v.Args[1] @@ -3555,7 +3381,6 @@ func rewriteValueWasm_OpNeq32F_0(v *Value) bool { } func rewriteValueWasm_OpNeq64_0(v *Value) bool { // match: (Neq64 x y) - // cond: // result: (I64Ne x y) for { y := v.Args[1] @@ -3568,7 +3393,6 @@ func rewriteValueWasm_OpNeq64_0(v *Value) bool { } func rewriteValueWasm_OpNeq64F_0(v *Value) bool { // match: (Neq64F x y) - // cond: // result: (F64Ne x y) for { y := v.Args[1] @@ -3583,7 +3407,6 @@ func rewriteValueWasm_OpNeq8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq8 x y) - // cond: // result: (I64Ne (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -3600,7 +3423,6 @@ func rewriteValueWasm_OpNeq8_0(v *Value) bool { } func rewriteValueWasm_OpNeqB_0(v *Value) bool { // match: (NeqB x y) - // cond: // result: (I64Ne x y) for { y := v.Args[1] @@ -3613,7 +3435,6 @@ func rewriteValueWasm_OpNeqB_0(v *Value) bool { } func rewriteValueWasm_OpNeqPtr_0(v *Value) bool { // match: (NeqPtr x y) - // cond: // result: (I64Ne x y) for { y := v.Args[1] @@ -3626,7 +3447,6 @@ func rewriteValueWasm_OpNeqPtr_0(v *Value) bool { } func rewriteValueWasm_OpNilCheck_0(v *Value) bool { // match: (NilCheck ptr mem) - // cond: // result: (LoweredNilCheck ptr mem) for { mem := v.Args[1] @@ -3639,7 +3459,6 @@ func rewriteValueWasm_OpNilCheck_0(v *Value) bool { } func rewriteValueWasm_OpNot_0(v *Value) bool { // match: (Not x) - // cond: // result: (I64Eqz x) for { x := v.Args[0] @@ -3650,7 +3469,6 @@ func rewriteValueWasm_OpNot_0(v *Value) bool { } func rewriteValueWasm_OpOffPtr_0(v *Value) bool { // match: (OffPtr [off] ptr) - // cond: // result: (I64AddConst [off] ptr) for { off := v.AuxInt @@ -3663,7 +3481,6 @@ func rewriteValueWasm_OpOffPtr_0(v *Value) bool { } func rewriteValueWasm_OpOr16_0(v *Value) bool { // match: (Or16 x y) - // cond: // result: (I64Or x y) for { y := v.Args[1] @@ -3676,7 +3493,6 @@ func rewriteValueWasm_OpOr16_0(v *Value) bool { } func rewriteValueWasm_OpOr32_0(v *Value) bool { // match: (Or32 x y) - // cond: // result: (I64Or x y) for { y := v.Args[1] @@ -3689,7 +3505,6 @@ func rewriteValueWasm_OpOr32_0(v *Value) bool { } func rewriteValueWasm_OpOr64_0(v *Value) bool { // match: (Or64 x y) - // cond: // result: (I64Or x y) for { y := v.Args[1] @@ -3702,7 +3517,6 @@ func rewriteValueWasm_OpOr64_0(v *Value) bool { } func rewriteValueWasm_OpOr8_0(v *Value) bool { // match: (Or8 x y) - // cond: // result: (I64Or x y) for { y := v.Args[1] @@ -3715,7 +3529,6 @@ func rewriteValueWasm_OpOr8_0(v *Value) bool { } func rewriteValueWasm_OpOrB_0(v *Value) bool { // match: (OrB x y) - // cond: // result: (I64Or x y) for { y := v.Args[1] @@ -3730,7 +3543,6 @@ func rewriteValueWasm_OpPopCount16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount16 x) - // cond: // result: (I64Popcnt (ZeroExt16to64 x)) for { x := v.Args[0] @@ -3745,7 +3557,6 @@ func rewriteValueWasm_OpPopCount32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount32 x) - // cond: // result: (I64Popcnt (ZeroExt32to64 x)) for { x := v.Args[0] @@ -3758,7 +3569,6 @@ func rewriteValueWasm_OpPopCount32_0(v *Value) bool { } func rewriteValueWasm_OpPopCount64_0(v *Value) bool { // match: (PopCount64 x) - // cond: // result: (I64Popcnt x) for { x := v.Args[0] @@ -3771,7 +3581,6 @@ func rewriteValueWasm_OpPopCount8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (PopCount8 x) - // cond: // result: (I64Popcnt (ZeroExt8to64 x)) for { x := v.Args[0] @@ -3786,7 +3595,6 @@ func rewriteValueWasm_OpRotateLeft16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft16 x (I64Const [c])) - // cond: // result: (Or16 (Lsh16x64 x (I64Const [c&15])) (Rsh16Ux64 x (I64Const [-c&15]))) for { t := v.Type @@ -3816,7 +3624,6 @@ func rewriteValueWasm_OpRotateLeft16_0(v *Value) bool { } func rewriteValueWasm_OpRotateLeft32_0(v *Value) bool { // match: (RotateLeft32 x y) - // cond: // result: (I32Rotl x y) for { y := v.Args[1] @@ -3829,7 +3636,6 @@ func rewriteValueWasm_OpRotateLeft32_0(v *Value) bool { } func rewriteValueWasm_OpRotateLeft64_0(v *Value) bool { // match: (RotateLeft64 x y) - // cond: // result: (I64Rotl x y) for { y := v.Args[1] @@ -3844,7 +3650,6 @@ func rewriteValueWasm_OpRotateLeft8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (RotateLeft8 x (I64Const [c])) - // cond: // result: (Or8 (Lsh8x64 x (I64Const [c&7])) (Rsh8Ux64 x (I64Const [-c&7]))) for { t := v.Type @@ -3874,7 +3679,6 @@ func rewriteValueWasm_OpRotateLeft8_0(v *Value) bool { } func rewriteValueWasm_OpRound32F_0(v *Value) bool { // match: (Round32F x) - // cond: // result: x for { x := v.Args[0] @@ -3886,7 +3690,6 @@ func rewriteValueWasm_OpRound32F_0(v *Value) bool { } func rewriteValueWasm_OpRound64F_0(v *Value) bool { // match: (Round64F x) - // cond: // result: x for { x := v.Args[0] @@ -3898,7 +3701,6 @@ func rewriteValueWasm_OpRound64F_0(v *Value) bool { } func rewriteValueWasm_OpRoundToEven_0(v *Value) bool { // match: (RoundToEven x) - // cond: // result: (F64Nearest x) for { x := v.Args[0] @@ -3911,7 +3713,6 @@ func rewriteValueWasm_OpRsh16Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux16 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -3930,7 +3731,6 @@ func rewriteValueWasm_OpRsh16Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux32 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt16to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -3949,7 +3749,6 @@ func rewriteValueWasm_OpRsh16Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux64 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt16to64 x) y) for { y := v.Args[1] @@ -3966,7 +3765,6 @@ func rewriteValueWasm_OpRsh16Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux8 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt16to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -3985,7 +3783,6 @@ func rewriteValueWasm_OpRsh16x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x16 x y) - // cond: // result: (Rsh64x64 (SignExt16to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4004,7 +3801,6 @@ func rewriteValueWasm_OpRsh16x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x32 x y) - // cond: // result: (Rsh64x64 (SignExt16to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4023,7 +3819,6 @@ func rewriteValueWasm_OpRsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x64 x y) - // cond: // result: (Rsh64x64 (SignExt16to64 x) y) for { y := v.Args[1] @@ -4040,7 +3835,6 @@ func rewriteValueWasm_OpRsh16x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x8 x y) - // cond: // result: (Rsh64x64 (SignExt16to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4059,7 +3853,6 @@ func rewriteValueWasm_OpRsh32Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux16 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt32to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4078,7 +3871,6 @@ func rewriteValueWasm_OpRsh32Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux32 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4097,7 +3889,6 @@ func rewriteValueWasm_OpRsh32Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux64 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt32to64 x) y) for { y := v.Args[1] @@ -4114,7 +3905,6 @@ func rewriteValueWasm_OpRsh32Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux8 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt32to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4133,7 +3923,6 @@ func rewriteValueWasm_OpRsh32x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x16 x y) - // cond: // result: (Rsh64x64 (SignExt32to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4152,7 +3941,6 @@ func rewriteValueWasm_OpRsh32x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x32 x y) - // cond: // result: (Rsh64x64 (SignExt32to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4171,7 +3959,6 @@ func rewriteValueWasm_OpRsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x64 x y) - // cond: // result: (Rsh64x64 (SignExt32to64 x) y) for { y := v.Args[1] @@ -4188,7 +3975,6 @@ func rewriteValueWasm_OpRsh32x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x8 x y) - // cond: // result: (Rsh64x64 (SignExt32to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4207,7 +3993,6 @@ func rewriteValueWasm_OpRsh64Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux16 x y) - // cond: // result: (Rsh64Ux64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4224,7 +4009,6 @@ func rewriteValueWasm_OpRsh64Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux32 x y) - // cond: // result: (Rsh64Ux64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4293,7 +4077,6 @@ func rewriteValueWasm_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x y) - // cond: // result: (Select (I64ShrU x y) (I64Const [0]) (I64LtU y (I64Const [64]))) for { y := v.Args[1] @@ -4319,7 +4102,6 @@ func rewriteValueWasm_OpRsh64Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux8 x y) - // cond: // result: (Rsh64Ux64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4336,7 +4118,6 @@ func rewriteValueWasm_OpRsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x16 x y) - // cond: // result: (Rsh64x64 x (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4353,7 +4134,6 @@ func rewriteValueWasm_OpRsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x32 x y) - // cond: // result: (Rsh64x64 x (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4426,7 +4206,6 @@ func rewriteValueWasm_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x y) - // cond: // result: (I64ShrS x (Select y (I64Const [63]) (I64LtU y (I64Const [64])))) for { y := v.Args[1] @@ -4452,7 +4231,6 @@ func rewriteValueWasm_OpRsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x8 x y) - // cond: // result: (Rsh64x64 x (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4469,7 +4247,6 @@ func rewriteValueWasm_OpRsh8Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux16 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt8to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4488,7 +4265,6 @@ func rewriteValueWasm_OpRsh8Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux32 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt8to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4507,7 +4283,6 @@ func rewriteValueWasm_OpRsh8Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux64 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt8to64 x) y) for { y := v.Args[1] @@ -4524,7 +4299,6 @@ func rewriteValueWasm_OpRsh8Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux8 x y) - // cond: // result: (Rsh64Ux64 (ZeroExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4543,7 +4317,6 @@ func rewriteValueWasm_OpRsh8x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x16 x y) - // cond: // result: (Rsh64x64 (SignExt8to64 x) (ZeroExt16to64 y)) for { y := v.Args[1] @@ -4562,7 +4335,6 @@ func rewriteValueWasm_OpRsh8x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x32 x y) - // cond: // result: (Rsh64x64 (SignExt8to64 x) (ZeroExt32to64 y)) for { y := v.Args[1] @@ -4581,7 +4353,6 @@ func rewriteValueWasm_OpRsh8x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x64 x y) - // cond: // result: (Rsh64x64 (SignExt8to64 x) y) for { y := v.Args[1] @@ -4598,7 +4369,6 @@ func rewriteValueWasm_OpRsh8x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8x8 x y) - // cond: // result: (Rsh64x64 (SignExt8to64 x) (ZeroExt8to64 y)) for { y := v.Args[1] @@ -4617,7 +4387,6 @@ func rewriteValueWasm_OpSignExt16to32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt16to32 x:(I64Load16S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4643,7 +4412,6 @@ func rewriteValueWasm_OpSignExt16to32_0(v *Value) bool { return true } // match: (SignExt16to32 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [48])) (I64Const [48])) for { x := v.Args[0] @@ -4664,7 +4432,6 @@ func rewriteValueWasm_OpSignExt16to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt16to64 x:(I64Load16S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4690,7 +4457,6 @@ func rewriteValueWasm_OpSignExt16to64_0(v *Value) bool { return true } // match: (SignExt16to64 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [48])) (I64Const [48])) for { x := v.Args[0] @@ -4711,7 +4477,6 @@ func rewriteValueWasm_OpSignExt32to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt32to64 x:(I64Load32S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4737,7 +4502,6 @@ func rewriteValueWasm_OpSignExt32to64_0(v *Value) bool { return true } // match: (SignExt32to64 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [32])) (I64Const [32])) for { x := v.Args[0] @@ -4758,7 +4522,6 @@ func rewriteValueWasm_OpSignExt8to16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt8to16 x:(I64Load8S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4784,7 +4547,6 @@ func rewriteValueWasm_OpSignExt8to16_0(v *Value) bool { return true } // match: (SignExt8to16 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [56])) (I64Const [56])) for { x := v.Args[0] @@ -4805,7 +4567,6 @@ func rewriteValueWasm_OpSignExt8to32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt8to32 x:(I64Load8S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4831,7 +4592,6 @@ func rewriteValueWasm_OpSignExt8to32_0(v *Value) bool { return true } // match: (SignExt8to32 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [56])) (I64Const [56])) for { x := v.Args[0] @@ -4852,7 +4612,6 @@ func rewriteValueWasm_OpSignExt8to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt8to64 x:(I64Load8S _ _)) - // cond: // result: x for { x := v.Args[0] @@ -4878,7 +4637,6 @@ func rewriteValueWasm_OpSignExt8to64_0(v *Value) bool { return true } // match: (SignExt8to64 x) - // cond: // result: (I64ShrS (I64Shl x (I64Const [56])) (I64Const [56])) for { x := v.Args[0] @@ -4899,7 +4657,6 @@ func rewriteValueWasm_OpSlicemask_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Slicemask x) - // cond: // result: (I64ShrS (I64Sub (I64Const [0]) x) (I64Const [63])) for { x := v.Args[0] @@ -4918,7 +4675,6 @@ func rewriteValueWasm_OpSlicemask_0(v *Value) bool { } func rewriteValueWasm_OpSqrt_0(v *Value) bool { // match: (Sqrt x) - // cond: // result: (F64Sqrt x) for { x := v.Args[0] @@ -4929,7 +4685,6 @@ func rewriteValueWasm_OpSqrt_0(v *Value) bool { } func rewriteValueWasm_OpStaticCall_0(v *Value) bool { // match: (StaticCall [argwid] {target} mem) - // cond: // result: (LoweredStaticCall [argwid] {target} mem) for { argwid := v.AuxInt @@ -5049,7 +4804,6 @@ func rewriteValueWasm_OpStore_0(v *Value) bool { } func rewriteValueWasm_OpSub16_0(v *Value) bool { // match: (Sub16 x y) - // cond: // result: (I64Sub x y) for { y := v.Args[1] @@ -5062,7 +4816,6 @@ func rewriteValueWasm_OpSub16_0(v *Value) bool { } func rewriteValueWasm_OpSub32_0(v *Value) bool { // match: (Sub32 x y) - // cond: // result: (I64Sub x y) for { y := v.Args[1] @@ -5075,7 +4828,6 @@ func rewriteValueWasm_OpSub32_0(v *Value) bool { } func rewriteValueWasm_OpSub32F_0(v *Value) bool { // match: (Sub32F x y) - // cond: // result: (F32Sub x y) for { y := v.Args[1] @@ -5088,7 +4840,6 @@ func rewriteValueWasm_OpSub32F_0(v *Value) bool { } func rewriteValueWasm_OpSub64_0(v *Value) bool { // match: (Sub64 x y) - // cond: // result: (I64Sub x y) for { y := v.Args[1] @@ -5101,7 +4852,6 @@ func rewriteValueWasm_OpSub64_0(v *Value) bool { } func rewriteValueWasm_OpSub64F_0(v *Value) bool { // match: (Sub64F x y) - // cond: // result: (F64Sub x y) for { y := v.Args[1] @@ -5114,7 +4864,6 @@ func rewriteValueWasm_OpSub64F_0(v *Value) bool { } func rewriteValueWasm_OpSub8_0(v *Value) bool { // match: (Sub8 x y) - // cond: // result: (I64Sub x y) for { y := v.Args[1] @@ -5127,7 +4876,6 @@ func rewriteValueWasm_OpSub8_0(v *Value) bool { } func rewriteValueWasm_OpSubPtr_0(v *Value) bool { // match: (SubPtr x y) - // cond: // result: (I64Sub x y) for { y := v.Args[1] @@ -5140,7 +4888,6 @@ func rewriteValueWasm_OpSubPtr_0(v *Value) bool { } func rewriteValueWasm_OpTrunc_0(v *Value) bool { // match: (Trunc x) - // cond: // result: (F64Trunc x) for { x := v.Args[0] @@ -5151,7 +4898,6 @@ func rewriteValueWasm_OpTrunc_0(v *Value) bool { } func rewriteValueWasm_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 x) - // cond: // result: x for { x := v.Args[0] @@ -5163,7 +4909,6 @@ func rewriteValueWasm_OpTrunc16to8_0(v *Value) bool { } func rewriteValueWasm_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 x) - // cond: // result: x for { x := v.Args[0] @@ -5175,7 +4920,6 @@ func rewriteValueWasm_OpTrunc32to16_0(v *Value) bool { } func rewriteValueWasm_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 x) - // cond: // result: x for { x := v.Args[0] @@ -5187,7 +4931,6 @@ func rewriteValueWasm_OpTrunc32to8_0(v *Value) bool { } func rewriteValueWasm_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 x) - // cond: // result: x for { x := v.Args[0] @@ -5199,7 +4942,6 @@ func rewriteValueWasm_OpTrunc64to16_0(v *Value) bool { } func rewriteValueWasm_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 x) - // cond: // result: x for { x := v.Args[0] @@ -5211,7 +4953,6 @@ func rewriteValueWasm_OpTrunc64to32_0(v *Value) bool { } func rewriteValueWasm_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 x) - // cond: // result: x for { x := v.Args[0] @@ -5223,7 +4964,6 @@ func rewriteValueWasm_OpTrunc64to8_0(v *Value) bool { } func rewriteValueWasm_OpWB_0(v *Value) bool { // match: (WB {fn} destptr srcptr mem) - // cond: // result: (LoweredWB {fn} destptr srcptr mem) for { fn := v.Aux @@ -5242,7 +4982,6 @@ func rewriteValueWasm_OpWasmF64Add_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (F64Add (F64Const [x]) (F64Const [y])) - // cond: // result: (F64Const [auxFrom64F(auxTo64F(x) + auxTo64F(y))]) for { _ = v.Args[1] @@ -5261,7 +5000,6 @@ func rewriteValueWasm_OpWasmF64Add_0(v *Value) bool { return true } // match: (F64Add (F64Const [x]) y) - // cond: // result: (F64Add y (F64Const [x])) for { y := v.Args[1] @@ -5283,7 +5021,6 @@ func rewriteValueWasm_OpWasmF64Mul_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (F64Mul (F64Const [x]) (F64Const [y])) - // cond: // result: (F64Const [auxFrom64F(auxTo64F(x) * auxTo64F(y))]) for { _ = v.Args[1] @@ -5302,7 +5039,6 @@ func rewriteValueWasm_OpWasmF64Mul_0(v *Value) bool { return true } // match: (F64Mul (F64Const [x]) y) - // cond: // result: (F64Mul y (F64Const [x])) for { y := v.Args[1] @@ -5324,7 +5060,6 @@ func rewriteValueWasm_OpWasmI64Add_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (I64Add (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x + y]) for { _ = v.Args[1] @@ -5343,7 +5078,6 @@ func rewriteValueWasm_OpWasmI64Add_0(v *Value) bool { return true } // match: (I64Add (I64Const [x]) y) - // cond: // result: (I64Add y (I64Const [x])) for { y := v.Args[1] @@ -5360,7 +5094,6 @@ func rewriteValueWasm_OpWasmI64Add_0(v *Value) bool { return true } // match: (I64Add x (I64Const [y])) - // cond: // result: (I64AddConst [y] x) for { _ = v.Args[1] @@ -5379,7 +5112,6 @@ func rewriteValueWasm_OpWasmI64Add_0(v *Value) bool { } func rewriteValueWasm_OpWasmI64AddConst_0(v *Value) bool { // match: (I64AddConst [0] x) - // cond: // result: x for { if v.AuxInt != 0 { @@ -5418,7 +5150,6 @@ func rewriteValueWasm_OpWasmI64And_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (I64And (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x & y]) for { _ = v.Args[1] @@ -5437,7 +5168,6 @@ func rewriteValueWasm_OpWasmI64And_0(v *Value) bool { return true } // match: (I64And (I64Const [x]) y) - // cond: // result: (I64And y (I64Const [x])) for { y := v.Args[1] @@ -5503,7 +5233,6 @@ func rewriteValueWasm_OpWasmI64Eq_0(v *Value) bool { return true } // match: (I64Eq (I64Const [x]) y) - // cond: // result: (I64Eq y (I64Const [x])) for { y := v.Args[1] @@ -5520,16 +5249,12 @@ func rewriteValueWasm_OpWasmI64Eq_0(v *Value) bool { return true } // match: (I64Eq x (I64Const [0])) - // cond: // result: (I64Eqz x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpWasmI64Const { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpWasmI64Const || v_1.AuxInt != 0 { break } v.reset(OpWasmI64Eqz) @@ -5540,7 +5265,6 @@ func rewriteValueWasm_OpWasmI64Eq_0(v *Value) bool { } func rewriteValueWasm_OpWasmI64Eqz_0(v *Value) bool { // match: (I64Eqz (I64Eqz (I64Eqz x))) - // cond: // result: (I64Eqz x) for { v_0 := v.Args[0] @@ -5595,10 +5319,7 @@ func rewriteValueWasm_OpWasmI64Load_0(v *Value) bool { off2 := v_0.AuxInt sym := v_0.Aux v_0_0 := v_0.Args[0] - if v_0_0.Op != OpSB { - break - } - if !(symIsRO(sym) && isU32Bit(off+off2)) { + if v_0_0.Op != OpSB || !(symIsRO(sym) && isU32Bit(off+off2)) { break } v.reset(OpWasmI64Const) @@ -5668,10 +5389,7 @@ func rewriteValueWasm_OpWasmI64Load16U_0(v *Value) bool { off2 := v_0.AuxInt sym := v_0.Aux v_0_0 := v_0.Args[0] - if v_0_0.Op != OpSB { - break - } - if !(symIsRO(sym) && isU32Bit(off+off2)) { + if v_0_0.Op != OpSB || !(symIsRO(sym) && isU32Bit(off+off2)) { break } v.reset(OpWasmI64Const) @@ -5741,10 +5459,7 @@ func rewriteValueWasm_OpWasmI64Load32U_0(v *Value) bool { off2 := v_0.AuxInt sym := v_0.Aux v_0_0 := v_0.Args[0] - if v_0_0.Op != OpSB { - break - } - if !(symIsRO(sym) && isU32Bit(off+off2)) { + if v_0_0.Op != OpSB || !(symIsRO(sym) && isU32Bit(off+off2)) { break } v.reset(OpWasmI64Const) @@ -5812,10 +5527,7 @@ func rewriteValueWasm_OpWasmI64Load8U_0(v *Value) bool { off2 := v_0.AuxInt sym := v_0.Aux v_0_0 := v_0.Args[0] - if v_0_0.Op != OpSB { - break - } - if !(symIsRO(sym) && isU32Bit(off+off2)) { + if v_0_0.Op != OpSB || !(symIsRO(sym) && isU32Bit(off+off2)) { break } v.reset(OpWasmI64Const) @@ -5828,7 +5540,6 @@ func rewriteValueWasm_OpWasmI64Mul_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (I64Mul (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x * y]) for { _ = v.Args[1] @@ -5847,7 +5558,6 @@ func rewriteValueWasm_OpWasmI64Mul_0(v *Value) bool { return true } // match: (I64Mul (I64Const [x]) y) - // cond: // result: (I64Mul y (I64Const [x])) for { y := v.Args[1] @@ -5913,7 +5623,6 @@ func rewriteValueWasm_OpWasmI64Ne_0(v *Value) bool { return true } // match: (I64Ne (I64Const [x]) y) - // cond: // result: (I64Ne y (I64Const [x])) for { y := v.Args[1] @@ -5930,16 +5639,12 @@ func rewriteValueWasm_OpWasmI64Ne_0(v *Value) bool { return true } // match: (I64Ne x (I64Const [0])) - // cond: // result: (I64Eqz (I64Eqz x)) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpWasmI64Const { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpWasmI64Const || v_1.AuxInt != 0 { break } v.reset(OpWasmI64Eqz) @@ -5954,7 +5659,6 @@ func rewriteValueWasm_OpWasmI64Or_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (I64Or (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x | y]) for { _ = v.Args[1] @@ -5973,7 +5677,6 @@ func rewriteValueWasm_OpWasmI64Or_0(v *Value) bool { return true } // match: (I64Or (I64Const [x]) y) - // cond: // result: (I64Or y (I64Const [x])) for { y := v.Args[1] @@ -5993,7 +5696,6 @@ func rewriteValueWasm_OpWasmI64Or_0(v *Value) bool { } func rewriteValueWasm_OpWasmI64Shl_0(v *Value) bool { // match: (I64Shl (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x << uint64(y)]) for { _ = v.Args[1] @@ -6015,7 +5717,6 @@ func rewriteValueWasm_OpWasmI64Shl_0(v *Value) bool { } func rewriteValueWasm_OpWasmI64ShrS_0(v *Value) bool { // match: (I64ShrS (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x >> uint64(y)]) for { _ = v.Args[1] @@ -6037,7 +5738,6 @@ func rewriteValueWasm_OpWasmI64ShrS_0(v *Value) bool { } func rewriteValueWasm_OpWasmI64ShrU_0(v *Value) bool { // match: (I64ShrU (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [int64(uint64(x) >> uint64(y))]) for { _ = v.Args[1] @@ -6165,7 +5865,6 @@ func rewriteValueWasm_OpWasmI64Xor_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (I64Xor (I64Const [x]) (I64Const [y])) - // cond: // result: (I64Const [x ^ y]) for { _ = v.Args[1] @@ -6184,7 +5883,6 @@ func rewriteValueWasm_OpWasmI64Xor_0(v *Value) bool { return true } // match: (I64Xor (I64Const [x]) y) - // cond: // result: (I64Xor y (I64Const [x])) for { y := v.Args[1] @@ -6204,7 +5902,6 @@ func rewriteValueWasm_OpWasmI64Xor_0(v *Value) bool { } func rewriteValueWasm_OpXor16_0(v *Value) bool { // match: (Xor16 x y) - // cond: // result: (I64Xor x y) for { y := v.Args[1] @@ -6217,7 +5914,6 @@ func rewriteValueWasm_OpXor16_0(v *Value) bool { } func rewriteValueWasm_OpXor32_0(v *Value) bool { // match: (Xor32 x y) - // cond: // result: (I64Xor x y) for { y := v.Args[1] @@ -6230,7 +5926,6 @@ func rewriteValueWasm_OpXor32_0(v *Value) bool { } func rewriteValueWasm_OpXor64_0(v *Value) bool { // match: (Xor64 x y) - // cond: // result: (I64Xor x y) for { y := v.Args[1] @@ -6243,7 +5938,6 @@ func rewriteValueWasm_OpXor64_0(v *Value) bool { } func rewriteValueWasm_OpXor8_0(v *Value) bool { // match: (Xor8 x y) - // cond: // result: (I64Xor x y) for { y := v.Args[1] @@ -6258,7 +5952,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [0] _ mem) - // cond: // result: mem for { if v.AuxInt != 0 { @@ -6271,7 +5964,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [1] destptr mem) - // cond: // result: (I64Store8 destptr (I64Const [0]) mem) for { if v.AuxInt != 1 { @@ -6288,7 +5980,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [2] destptr mem) - // cond: // result: (I64Store16 destptr (I64Const [0]) mem) for { if v.AuxInt != 2 { @@ -6305,7 +5996,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [4] destptr mem) - // cond: // result: (I64Store32 destptr (I64Const [0]) mem) for { if v.AuxInt != 4 { @@ -6322,7 +6012,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [8] destptr mem) - // cond: // result: (I64Store destptr (I64Const [0]) mem) for { if v.AuxInt != 8 { @@ -6339,7 +6028,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [3] destptr mem) - // cond: // result: (I64Store8 [2] destptr (I64Const [0]) (I64Store16 destptr (I64Const [0]) mem)) for { if v.AuxInt != 3 { @@ -6363,7 +6051,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [5] destptr mem) - // cond: // result: (I64Store8 [4] destptr (I64Const [0]) (I64Store32 destptr (I64Const [0]) mem)) for { if v.AuxInt != 5 { @@ -6387,7 +6074,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [6] destptr mem) - // cond: // result: (I64Store16 [4] destptr (I64Const [0]) (I64Store32 destptr (I64Const [0]) mem)) for { if v.AuxInt != 6 { @@ -6411,7 +6097,6 @@ func rewriteValueWasm_OpZero_0(v *Value) bool { return true } // match: (Zero [7] destptr mem) - // cond: // result: (I64Store32 [3] destptr (I64Const [0]) (I64Store32 destptr (I64Const [0]) mem)) for { if v.AuxInt != 7 { @@ -6465,7 +6150,6 @@ func rewriteValueWasm_OpZero_10(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Zero [16] destptr mem) - // cond: // result: (I64Store [8] destptr (I64Const [0]) (I64Store destptr (I64Const [0]) mem)) for { if v.AuxInt != 16 { @@ -6489,7 +6173,6 @@ func rewriteValueWasm_OpZero_10(v *Value) bool { return true } // match: (Zero [24] destptr mem) - // cond: // result: (I64Store [16] destptr (I64Const [0]) (I64Store [8] destptr (I64Const [0]) (I64Store destptr (I64Const [0]) mem))) for { if v.AuxInt != 24 { @@ -6520,7 +6203,6 @@ func rewriteValueWasm_OpZero_10(v *Value) bool { return true } // match: (Zero [32] destptr mem) - // cond: // result: (I64Store [24] destptr (I64Const [0]) (I64Store [16] destptr (I64Const [0]) (I64Store [8] destptr (I64Const [0]) (I64Store destptr (I64Const [0]) mem)))) for { if v.AuxInt != 32 { @@ -6579,7 +6261,6 @@ func rewriteValueWasm_OpZeroExt16to32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt16to32 x:(I64Load16U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6593,7 +6274,6 @@ func rewriteValueWasm_OpZeroExt16to32_0(v *Value) bool { return true } // match: (ZeroExt16to32 x) - // cond: // result: (I64And x (I64Const [0xffff])) for { x := v.Args[0] @@ -6609,7 +6289,6 @@ func rewriteValueWasm_OpZeroExt16to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt16to64 x:(I64Load16U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6623,7 +6302,6 @@ func rewriteValueWasm_OpZeroExt16to64_0(v *Value) bool { return true } // match: (ZeroExt16to64 x) - // cond: // result: (I64And x (I64Const [0xffff])) for { x := v.Args[0] @@ -6639,7 +6317,6 @@ func rewriteValueWasm_OpZeroExt32to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt32to64 x:(I64Load32U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6653,7 +6330,6 @@ func rewriteValueWasm_OpZeroExt32to64_0(v *Value) bool { return true } // match: (ZeroExt32to64 x) - // cond: // result: (I64And x (I64Const [0xffffffff])) for { x := v.Args[0] @@ -6669,7 +6345,6 @@ func rewriteValueWasm_OpZeroExt8to16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt8to16 x:(I64Load8U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6683,7 +6358,6 @@ func rewriteValueWasm_OpZeroExt8to16_0(v *Value) bool { return true } // match: (ZeroExt8to16 x) - // cond: // result: (I64And x (I64Const [0xff])) for { x := v.Args[0] @@ -6699,7 +6373,6 @@ func rewriteValueWasm_OpZeroExt8to32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt8to32 x:(I64Load8U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6713,7 +6386,6 @@ func rewriteValueWasm_OpZeroExt8to32_0(v *Value) bool { return true } // match: (ZeroExt8to32 x) - // cond: // result: (I64And x (I64Const [0xff])) for { x := v.Args[0] @@ -6729,7 +6401,6 @@ func rewriteValueWasm_OpZeroExt8to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt8to64 x:(I64Load8U _ _)) - // cond: // result: x for { x := v.Args[0] @@ -6743,7 +6414,6 @@ func rewriteValueWasm_OpZeroExt8to64_0(v *Value) bool { return true } // match: (ZeroExt8to64 x) - // cond: // result: (I64And x (I64Const [0xff])) for { x := v.Args[0] diff --git a/src/cmd/compile/internal/ssa/rewritedec.go b/src/cmd/compile/internal/ssa/rewritedec.go index 389e69213d..ca29f1cf17 100644 --- a/src/cmd/compile/internal/ssa/rewritedec.go +++ b/src/cmd/compile/internal/ssa/rewritedec.go @@ -34,7 +34,6 @@ func rewriteValuedec(v *Value) bool { } func rewriteValuedec_OpComplexImag_0(v *Value) bool { // match: (ComplexImag (ComplexMake _ imag)) - // cond: // result: imag for { v_0 := v.Args[0] @@ -51,7 +50,6 @@ func rewriteValuedec_OpComplexImag_0(v *Value) bool { } func rewriteValuedec_OpComplexReal_0(v *Value) bool { // match: (ComplexReal (ComplexMake real _)) - // cond: // result: real for { v_0 := v.Args[0] @@ -69,7 +67,6 @@ func rewriteValuedec_OpComplexReal_0(v *Value) bool { } func rewriteValuedec_OpIData_0(v *Value) bool { // match: (IData (IMake _ data)) - // cond: // result: data for { v_0 := v.Args[0] @@ -86,7 +83,6 @@ func rewriteValuedec_OpIData_0(v *Value) bool { } func rewriteValuedec_OpITab_0(v *Value) bool { // match: (ITab (IMake itab _)) - // cond: // result: itab for { v_0 := v.Args[0] @@ -237,7 +233,6 @@ func rewriteValuedec_OpLoad_0(v *Value) bool { } func rewriteValuedec_OpSliceCap_0(v *Value) bool { // match: (SliceCap (SliceMake _ _ cap)) - // cond: // result: cap for { v_0 := v.Args[0] @@ -254,7 +249,6 @@ func rewriteValuedec_OpSliceCap_0(v *Value) bool { } func rewriteValuedec_OpSliceLen_0(v *Value) bool { // match: (SliceLen (SliceMake _ len _)) - // cond: // result: len for { v_0 := v.Args[0] @@ -272,7 +266,6 @@ func rewriteValuedec_OpSliceLen_0(v *Value) bool { } func rewriteValuedec_OpSlicePtr_0(v *Value) bool { // match: (SlicePtr (SliceMake ptr _ _)) - // cond: // result: ptr for { v_0 := v.Args[0] @@ -355,7 +348,6 @@ func rewriteValuedec_OpStore_0(v *Value) bool { return true } // match: (Store dst (StringMake ptr len) mem) - // cond: // result: (Store {typ.Int} (OffPtr [config.PtrSize] dst) len (Store {typ.BytePtr} dst ptr mem)) for { mem := v.Args[2] @@ -382,7 +374,6 @@ func rewriteValuedec_OpStore_0(v *Value) bool { return true } // match: (Store dst (SliceMake ptr len cap) mem) - // cond: // result: (Store {typ.Int} (OffPtr [2*config.PtrSize] dst) cap (Store {typ.Int} (OffPtr [config.PtrSize] dst) len (Store {typ.BytePtr} dst ptr mem))) for { mem := v.Args[2] @@ -418,7 +409,6 @@ func rewriteValuedec_OpStore_0(v *Value) bool { return true } // match: (Store dst (IMake itab data) mem) - // cond: // result: (Store {typ.BytePtr} (OffPtr [config.PtrSize] dst) data (Store {typ.Uintptr} dst itab mem)) for { mem := v.Args[2] @@ -448,7 +438,6 @@ func rewriteValuedec_OpStore_0(v *Value) bool { } func rewriteValuedec_OpStringLen_0(v *Value) bool { // match: (StringLen (StringMake _ len)) - // cond: // result: len for { v_0 := v.Args[0] @@ -465,7 +454,6 @@ func rewriteValuedec_OpStringLen_0(v *Value) bool { } func rewriteValuedec_OpStringPtr_0(v *Value) bool { // match: (StringPtr (StringMake ptr _)) - // cond: // result: ptr for { v_0 := v.Args[0] diff --git a/src/cmd/compile/internal/ssa/rewritedec64.go b/src/cmd/compile/internal/ssa/rewritedec64.go index 3c15ddefdd..34645ce00b 100644 --- a/src/cmd/compile/internal/ssa/rewritedec64.go +++ b/src/cmd/compile/internal/ssa/rewritedec64.go @@ -130,7 +130,6 @@ func rewriteValuedec64_OpAdd64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Add64 x y) - // cond: // result: (Int64Make (Add32withcarry (Int64Hi x) (Int64Hi y) (Select1 (Add32carry (Int64Lo x) (Int64Lo y)))) (Select0 (Add32carry (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -171,7 +170,6 @@ func rewriteValuedec64_OpAnd64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (And64 x y) - // cond: // result: (Int64Make (And32 (Int64Hi x) (Int64Hi y)) (And32 (Int64Lo x) (Int64Lo y))) for { y := v.Args[1] @@ -286,7 +284,6 @@ func rewriteValuedec64_OpBitLen64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (BitLen64 x) - // cond: // result: (Add32 (BitLen32 (Int64Hi x)) (BitLen32 (Or32 (Int64Lo x) (Zeromask (Int64Hi x))))) for { x := v.Args[0] @@ -316,7 +313,6 @@ func rewriteValuedec64_OpBswap64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Bswap64 x) - // cond: // result: (Int64Make (Bswap32 (Int64Lo x)) (Bswap32 (Int64Hi x))) for { x := v.Args[0] @@ -338,7 +334,6 @@ func rewriteValuedec64_OpCom64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Com64 x) - // cond: // result: (Int64Make (Com32 (Int64Hi x)) (Com32 (Int64Lo x))) for { x := v.Args[0] @@ -401,7 +396,6 @@ func rewriteValuedec64_OpCtz64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Ctz64 x) - // cond: // result: (Add32 (Ctz32 (Int64Lo x)) (And32 (Com32 (Zeromask (Int64Lo x))) (Ctz32 (Int64Hi x)))) for { x := v.Args[0] @@ -431,7 +425,6 @@ func rewriteValuedec64_OpCtz64_0(v *Value) bool { } func rewriteValuedec64_OpCtz64NonZero_0(v *Value) bool { // match: (Ctz64NonZero x) - // cond: // result: (Ctz64 x) for { x := v.Args[0] @@ -444,7 +437,6 @@ func rewriteValuedec64_OpEq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq64 x y) - // cond: // result: (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Eq32 (Int64Lo x) (Int64Lo y))) for { y := v.Args[1] @@ -473,7 +465,6 @@ func rewriteValuedec64_OpGeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64 x y) - // cond: // result: (OrB (Greater32 (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Geq32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -512,7 +503,6 @@ func rewriteValuedec64_OpGeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Geq64U x y) - // cond: // result: (OrB (Greater32U (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Geq32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -551,7 +541,6 @@ func rewriteValuedec64_OpGreater64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater64 x y) - // cond: // result: (OrB (Greater32 (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Greater32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -590,7 +579,6 @@ func rewriteValuedec64_OpGreater64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Greater64U x y) - // cond: // result: (OrB (Greater32U (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Greater32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -627,7 +615,6 @@ func rewriteValuedec64_OpGreater64U_0(v *Value) bool { } func rewriteValuedec64_OpInt64Hi_0(v *Value) bool { // match: (Int64Hi (Int64Make hi _)) - // cond: // result: hi for { v_0 := v.Args[0] @@ -645,7 +632,6 @@ func rewriteValuedec64_OpInt64Hi_0(v *Value) bool { } func rewriteValuedec64_OpInt64Lo_0(v *Value) bool { // match: (Int64Lo (Int64Make _ lo)) - // cond: // result: lo for { v_0 := v.Args[0] @@ -664,7 +650,6 @@ func rewriteValuedec64_OpLeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64 x y) - // cond: // result: (OrB (Less32 (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Leq32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -703,7 +688,6 @@ func rewriteValuedec64_OpLeq64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Leq64U x y) - // cond: // result: (OrB (Less32U (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Leq32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -742,7 +726,6 @@ func rewriteValuedec64_OpLess64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less64 x y) - // cond: // result: (OrB (Less32 (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Less32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -781,7 +764,6 @@ func rewriteValuedec64_OpLess64U_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Less64U x y) - // cond: // result: (OrB (Less32U (Int64Hi x) (Int64Hi y)) (AndB (Eq32 (Int64Hi x) (Int64Hi y)) (Less32U (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -944,7 +926,6 @@ func rewriteValuedec64_OpLsh16x64_0(v *Value) bool { return true } // match: (Lsh16x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Lsh16x32 x lo) for { _ = v.Args[1] @@ -955,10 +936,7 @@ func rewriteValuedec64_OpLsh16x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpLsh16x32) @@ -1019,7 +997,6 @@ func rewriteValuedec64_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Lsh32x32 x lo) for { _ = v.Args[1] @@ -1030,10 +1007,7 @@ func rewriteValuedec64_OpLsh32x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpLsh32x32) @@ -1072,7 +1046,6 @@ func rewriteValuedec64_OpLsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x16 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Or32 (Or32 (Lsh32x16 hi s) (Rsh32Ux16 lo (Sub16 (Const16 [32]) s))) (Lsh32x16 lo (Sub16 s (Const16 [32])))) (Lsh32x16 lo s)) for { s := v.Args[1] @@ -1121,7 +1094,6 @@ func rewriteValuedec64_OpLsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x32 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Or32 (Or32 (Lsh32x32 hi s) (Rsh32Ux32 lo (Sub32 (Const32 [32]) s))) (Lsh32x32 lo (Sub32 s (Const32 [32])))) (Lsh32x32 lo s)) for { s := v.Args[1] @@ -1192,7 +1164,6 @@ func rewriteValuedec64_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Lsh64x32 x lo) for { _ = v.Args[1] @@ -1203,10 +1174,7 @@ func rewriteValuedec64_OpLsh64x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpLsh64x32) @@ -1245,7 +1213,6 @@ func rewriteValuedec64_OpLsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x8 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Or32 (Or32 (Lsh32x8 hi s) (Rsh32Ux8 lo (Sub8 (Const8 [32]) s))) (Lsh32x8 lo (Sub8 s (Const8 [32])))) (Lsh32x8 lo s)) for { s := v.Args[1] @@ -1316,7 +1283,6 @@ func rewriteValuedec64_OpLsh8x64_0(v *Value) bool { return true } // match: (Lsh8x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Lsh8x32 x lo) for { _ = v.Args[1] @@ -1327,10 +1293,7 @@ func rewriteValuedec64_OpLsh8x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpLsh8x32) @@ -1369,7 +1332,6 @@ func rewriteValuedec64_OpMul64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul64 x y) - // cond: // result: (Int64Make (Add32 (Mul32 (Int64Lo x) (Int64Hi y)) (Add32 (Mul32 (Int64Hi x) (Int64Lo y)) (Select0 (Mul32uhilo (Int64Lo x) (Int64Lo y))))) (Select1 (Mul32uhilo (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -1421,7 +1383,6 @@ func rewriteValuedec64_OpMul64_0(v *Value) bool { func rewriteValuedec64_OpNeg64_0(v *Value) bool { b := v.Block // match: (Neg64 x) - // cond: // result: (Sub64 (Const64 [0]) x) for { t := v.Type @@ -1438,7 +1399,6 @@ func rewriteValuedec64_OpNeq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Neq64 x y) - // cond: // result: (OrB (Neq32 (Int64Hi x) (Int64Hi y)) (Neq32 (Int64Lo x) (Int64Lo y))) for { y := v.Args[1] @@ -1467,7 +1427,6 @@ func rewriteValuedec64_OpOr64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Or64 x y) - // cond: // result: (Int64Make (Or32 (Int64Hi x) (Int64Hi y)) (Or32 (Int64Lo x) (Int64Lo y))) for { y := v.Args[1] @@ -1518,7 +1477,6 @@ func rewriteValuedec64_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh16Ux32 x lo) for { _ = v.Args[1] @@ -1529,10 +1487,7 @@ func rewriteValuedec64_OpRsh16Ux64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh16Ux32) @@ -1596,7 +1551,6 @@ func rewriteValuedec64_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh16x32 x lo) for { _ = v.Args[1] @@ -1607,10 +1561,7 @@ func rewriteValuedec64_OpRsh16x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh16x32) @@ -1671,7 +1622,6 @@ func rewriteValuedec64_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh32Ux32 x lo) for { _ = v.Args[1] @@ -1682,10 +1632,7 @@ func rewriteValuedec64_OpRsh32Ux64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh32Ux32) @@ -1747,7 +1694,6 @@ func rewriteValuedec64_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh32x32 x lo) for { _ = v.Args[1] @@ -1758,10 +1704,7 @@ func rewriteValuedec64_OpRsh32x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh32x32) @@ -1800,7 +1743,6 @@ func rewriteValuedec64_OpRsh64Ux16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux16 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32Ux16 hi s) (Or32 (Or32 (Rsh32Ux16 lo s) (Lsh32x16 hi (Sub16 (Const16 [32]) s))) (Rsh32Ux16 hi (Sub16 s (Const16 [32]))))) for { s := v.Args[1] @@ -1849,7 +1791,6 @@ func rewriteValuedec64_OpRsh64Ux32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux32 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32Ux32 hi s) (Or32 (Or32 (Rsh32Ux32 lo s) (Lsh32x32 hi (Sub32 (Const32 [32]) s))) (Rsh32Ux32 hi (Sub32 s (Const32 [32]))))) for { s := v.Args[1] @@ -1920,7 +1861,6 @@ func rewriteValuedec64_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh64Ux32 x lo) for { _ = v.Args[1] @@ -1931,10 +1871,7 @@ func rewriteValuedec64_OpRsh64Ux64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh64Ux32) @@ -1973,7 +1910,6 @@ func rewriteValuedec64_OpRsh64Ux8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux8 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32Ux8 hi s) (Or32 (Or32 (Rsh32Ux8 lo s) (Lsh32x8 hi (Sub8 (Const8 [32]) s))) (Rsh32Ux8 hi (Sub8 s (Const8 [32]))))) for { s := v.Args[1] @@ -2022,7 +1958,6 @@ func rewriteValuedec64_OpRsh64x16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x16 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32x16 hi s) (Or32 (Or32 (Rsh32Ux16 lo s) (Lsh32x16 hi (Sub16 (Const16 [32]) s))) (And32 (Rsh32x16 hi (Sub16 s (Const16 [32]))) (Zeromask (ZeroExt16to32 (Rsh16Ux32 s (Const32 [5]))))))) for { s := v.Args[1] @@ -2083,7 +2018,6 @@ func rewriteValuedec64_OpRsh64x32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x32 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32x32 hi s) (Or32 (Or32 (Rsh32Ux32 lo s) (Lsh32x32 hi (Sub32 (Const32 [32]) s))) (And32 (Rsh32x32 hi (Sub32 s (Const32 [32]))) (Zeromask (Rsh32Ux32 s (Const32 [5])))))) for { s := v.Args[1] @@ -2174,7 +2108,6 @@ func rewriteValuedec64_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh64x32 x lo) for { _ = v.Args[1] @@ -2185,10 +2118,7 @@ func rewriteValuedec64_OpRsh64x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh64x32) @@ -2227,7 +2157,6 @@ func rewriteValuedec64_OpRsh64x8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x8 (Int64Make hi lo) s) - // cond: // result: (Int64Make (Rsh32x8 hi s) (Or32 (Or32 (Rsh32Ux8 lo s) (Lsh32x8 hi (Sub8 (Const8 [32]) s))) (And32 (Rsh32x8 hi (Sub8 s (Const8 [32]))) (Zeromask (ZeroExt8to32 (Rsh8Ux32 s (Const32 [5]))))))) for { s := v.Args[1] @@ -2310,7 +2239,6 @@ func rewriteValuedec64_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh8Ux32 x lo) for { _ = v.Args[1] @@ -2321,10 +2249,7 @@ func rewriteValuedec64_OpRsh8Ux64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh8Ux32) @@ -2388,7 +2313,6 @@ func rewriteValuedec64_OpRsh8x64_0(v *Value) bool { return true } // match: (Rsh8x64 x (Int64Make (Const32 [0]) lo)) - // cond: // result: (Rsh8x32 x lo) for { _ = v.Args[1] @@ -2399,10 +2323,7 @@ func rewriteValuedec64_OpRsh8x64_0(v *Value) bool { } lo := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.AuxInt != 0 { + if v_1_0.Op != OpConst32 || v_1_0.AuxInt != 0 { break } v.reset(OpRsh8x32) @@ -2441,7 +2362,6 @@ func rewriteValuedec64_OpSignExt16to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt16to64 x) - // cond: // result: (SignExt32to64 (SignExt16to32 x)) for { x := v.Args[0] @@ -2456,7 +2376,6 @@ func rewriteValuedec64_OpSignExt32to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt32to64 x) - // cond: // result: (Int64Make (Signmask x) x) for { x := v.Args[0] @@ -2472,7 +2391,6 @@ func rewriteValuedec64_OpSignExt8to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (SignExt8to64 x) - // cond: // result: (SignExt32to64 (SignExt8to32 x)) for { x := v.Args[0] @@ -2554,7 +2472,6 @@ func rewriteValuedec64_OpSub64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Sub64 x y) - // cond: // result: (Int64Make (Sub32withcarry (Int64Hi x) (Int64Hi y) (Select1 (Sub32carry (Int64Lo x) (Int64Lo y)))) (Select0 (Sub32carry (Int64Lo x) (Int64Lo y)))) for { y := v.Args[1] @@ -2593,7 +2510,6 @@ func rewriteValuedec64_OpSub64_0(v *Value) bool { } func rewriteValuedec64_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 (Int64Make _ lo)) - // cond: // result: (Trunc32to16 lo) for { v_0 := v.Args[0] @@ -2609,7 +2525,6 @@ func rewriteValuedec64_OpTrunc64to16_0(v *Value) bool { } func rewriteValuedec64_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 (Int64Make _ lo)) - // cond: // result: lo for { v_0 := v.Args[0] @@ -2626,7 +2541,6 @@ func rewriteValuedec64_OpTrunc64to32_0(v *Value) bool { } func rewriteValuedec64_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 (Int64Make _ lo)) - // cond: // result: (Trunc32to8 lo) for { v_0 := v.Args[0] @@ -2644,7 +2558,6 @@ func rewriteValuedec64_OpXor64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Xor64 x y) - // cond: // result: (Int64Make (Xor32 (Int64Hi x) (Int64Hi y)) (Xor32 (Int64Lo x) (Int64Lo y))) for { y := v.Args[1] @@ -2673,7 +2586,6 @@ func rewriteValuedec64_OpZeroExt16to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt16to64 x) - // cond: // result: (ZeroExt32to64 (ZeroExt16to32 x)) for { x := v.Args[0] @@ -2688,7 +2600,6 @@ func rewriteValuedec64_OpZeroExt32to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt32to64 x) - // cond: // result: (Int64Make (Const32 [0]) x) for { x := v.Args[0] @@ -2704,7 +2615,6 @@ func rewriteValuedec64_OpZeroExt8to64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ZeroExt8to64 x) - // cond: // result: (ZeroExt32to64 (ZeroExt8to32 x)) for { x := v.Args[0] diff --git a/src/cmd/compile/internal/ssa/rewritegeneric.go b/src/cmd/compile/internal/ssa/rewritegeneric.go index 8aa07d20db..6c0c91bd77 100644 --- a/src/cmd/compile/internal/ssa/rewritegeneric.go +++ b/src/cmd/compile/internal/ssa/rewritegeneric.go @@ -476,7 +476,6 @@ func rewriteValuegeneric(v *Value) bool { func rewriteValuegeneric_OpAdd16_0(v *Value) bool { b := v.Block // match: (Add16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c+d))]) for { _ = v.Args[1] @@ -495,7 +494,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Const16 [d]) (Const16 [c])) - // cond: // result: (Const16 [int64(int16(c+d))]) for { _ = v.Args[1] @@ -514,7 +512,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 x y) (Mul16 x z)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -542,7 +539,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 y x) (Mul16 x z)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -570,7 +566,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 x y) (Mul16 z x)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -599,7 +594,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 y x) (Mul16 z x)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -628,7 +622,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 x z) (Mul16 x y)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -656,7 +649,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 z x) (Mul16 x y)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -684,7 +676,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 x z) (Mul16 y x)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -713,7 +704,6 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { return true } // match: (Add16 (Mul16 z x) (Mul16 y x)) - // cond: // result: (Mul16 x (Add16 y z)) for { t := v.Type @@ -746,15 +736,11 @@ func rewriteValuegeneric_OpAdd16_0(v *Value) bool { func rewriteValuegeneric_OpAdd16_10(v *Value) bool { b := v.Block // match: (Add16 (Const16 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -763,16 +749,12 @@ func rewriteValuegeneric_OpAdd16_10(v *Value) bool { return true } // match: (Add16 x (Const16 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -781,15 +763,11 @@ func rewriteValuegeneric_OpAdd16_10(v *Value) bool { return true } // match: (Add16 (Const16 [1]) (Com16 x)) - // cond: // result: (Neg16 x) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst16 || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -802,7 +780,6 @@ func rewriteValuegeneric_OpAdd16_10(v *Value) bool { return true } // match: (Add16 (Com16 x) (Const16 [1])) - // cond: // result: (Neg16 x) for { _ = v.Args[1] @@ -812,10 +789,7 @@ func rewriteValuegeneric_OpAdd16_10(v *Value) bool { } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst16 || v_1.AuxInt != 1 { break } v.reset(OpNeg16) @@ -1151,7 +1125,6 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { return true } // match: (Add16 (Const16 [c]) (Add16 (Const16 [d]) x)) - // cond: // result: (Add16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1167,10 +1140,7 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -1182,7 +1152,6 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { return true } // match: (Add16 (Const16 [c]) (Add16 x (Const16 [d]))) - // cond: // result: (Add16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1199,10 +1168,7 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -1214,7 +1180,6 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { return true } // match: (Add16 (Add16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Add16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1230,10 +1195,7 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -1245,7 +1207,6 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { return true } // match: (Add16 (Add16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Add16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1262,10 +1223,7 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -1281,7 +1239,6 @@ func rewriteValuegeneric_OpAdd16_20(v *Value) bool { func rewriteValuegeneric_OpAdd16_30(v *Value) bool { b := v.Block // match: (Add16 (Const16 [c]) (Sub16 (Const16 [d]) x)) - // cond: // result: (Sub16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1297,10 +1254,7 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -1312,7 +1266,6 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { return true } // match: (Add16 (Sub16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Sub16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -1328,10 +1281,7 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -1343,7 +1293,6 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { return true } // match: (Add16 (Const16 [c]) (Sub16 x (Const16 [d]))) - // cond: // result: (Add16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -1360,10 +1309,7 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -1375,7 +1321,6 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { return true } // match: (Add16 (Sub16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Add16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -1392,10 +1337,7 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -1411,7 +1353,6 @@ func rewriteValuegeneric_OpAdd16_30(v *Value) bool { func rewriteValuegeneric_OpAdd32_0(v *Value) bool { b := v.Block // match: (Add32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c+d))]) for { _ = v.Args[1] @@ -1430,7 +1371,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Const32 [d]) (Const32 [c])) - // cond: // result: (Const32 [int64(int32(c+d))]) for { _ = v.Args[1] @@ -1449,7 +1389,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 x y) (Mul32 x z)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1477,7 +1416,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 y x) (Mul32 x z)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1505,7 +1443,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 x y) (Mul32 z x)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1534,7 +1471,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 y x) (Mul32 z x)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1563,7 +1499,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 x z) (Mul32 x y)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1591,7 +1526,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 z x) (Mul32 x y)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1619,7 +1553,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 x z) (Mul32 y x)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1648,7 +1581,6 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { return true } // match: (Add32 (Mul32 z x) (Mul32 y x)) - // cond: // result: (Mul32 x (Add32 y z)) for { t := v.Type @@ -1681,15 +1613,11 @@ func rewriteValuegeneric_OpAdd32_0(v *Value) bool { func rewriteValuegeneric_OpAdd32_10(v *Value) bool { b := v.Block // match: (Add32 (Const32 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -1698,16 +1626,12 @@ func rewriteValuegeneric_OpAdd32_10(v *Value) bool { return true } // match: (Add32 x (Const32 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -1716,15 +1640,11 @@ func rewriteValuegeneric_OpAdd32_10(v *Value) bool { return true } // match: (Add32 (Const32 [1]) (Com32 x)) - // cond: // result: (Neg32 x) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst32 || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -1737,7 +1657,6 @@ func rewriteValuegeneric_OpAdd32_10(v *Value) bool { return true } // match: (Add32 (Com32 x) (Const32 [1])) - // cond: // result: (Neg32 x) for { _ = v.Args[1] @@ -1747,10 +1666,7 @@ func rewriteValuegeneric_OpAdd32_10(v *Value) bool { } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst32 || v_1.AuxInt != 1 { break } v.reset(OpNeg32) @@ -2086,7 +2002,6 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { return true } // match: (Add32 (Const32 [c]) (Add32 (Const32 [d]) x)) - // cond: // result: (Add32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2102,10 +2017,7 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -2117,7 +2029,6 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { return true } // match: (Add32 (Const32 [c]) (Add32 x (Const32 [d]))) - // cond: // result: (Add32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2134,10 +2045,7 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -2149,7 +2057,6 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { return true } // match: (Add32 (Add32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Add32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2165,10 +2072,7 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -2180,7 +2084,6 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { return true } // match: (Add32 (Add32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Add32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2197,10 +2100,7 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -2216,7 +2116,6 @@ func rewriteValuegeneric_OpAdd32_20(v *Value) bool { func rewriteValuegeneric_OpAdd32_30(v *Value) bool { b := v.Block // match: (Add32 (Const32 [c]) (Sub32 (Const32 [d]) x)) - // cond: // result: (Sub32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2232,10 +2131,7 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -2247,7 +2143,6 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { return true } // match: (Add32 (Sub32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Sub32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -2263,10 +2158,7 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -2278,7 +2170,6 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { return true } // match: (Add32 (Const32 [c]) (Sub32 x (Const32 [d]))) - // cond: // result: (Add32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -2295,10 +2186,7 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -2310,7 +2198,6 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { return true } // match: (Add32 (Sub32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Add32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -2327,10 +2214,7 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -2345,7 +2229,6 @@ func rewriteValuegeneric_OpAdd32_30(v *Value) bool { } func rewriteValuegeneric_OpAdd32F_0(v *Value) bool { // match: (Add32F (Const32F [c]) (Const32F [d])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) + auxTo32F(d))]) for { _ = v.Args[1] @@ -2364,7 +2247,6 @@ func rewriteValuegeneric_OpAdd32F_0(v *Value) bool { return true } // match: (Add32F (Const32F [d]) (Const32F [c])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) + auxTo32F(d))]) for { _ = v.Args[1] @@ -2387,7 +2269,6 @@ func rewriteValuegeneric_OpAdd32F_0(v *Value) bool { func rewriteValuegeneric_OpAdd64_0(v *Value) bool { b := v.Block // match: (Add64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c+d]) for { _ = v.Args[1] @@ -2406,7 +2287,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Const64 [d]) (Const64 [c])) - // cond: // result: (Const64 [c+d]) for { _ = v.Args[1] @@ -2425,7 +2305,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 x y) (Mul64 x z)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2453,7 +2332,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 y x) (Mul64 x z)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2481,7 +2359,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 x y) (Mul64 z x)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2510,7 +2387,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 y x) (Mul64 z x)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2539,7 +2415,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 x z) (Mul64 x y)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2567,7 +2442,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 z x) (Mul64 x y)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2595,7 +2469,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 x z) (Mul64 y x)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2624,7 +2497,6 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { return true } // match: (Add64 (Mul64 z x) (Mul64 y x)) - // cond: // result: (Mul64 x (Add64 y z)) for { t := v.Type @@ -2657,15 +2529,11 @@ func rewriteValuegeneric_OpAdd64_0(v *Value) bool { func rewriteValuegeneric_OpAdd64_10(v *Value) bool { b := v.Block // match: (Add64 (Const64 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -2674,16 +2542,12 @@ func rewriteValuegeneric_OpAdd64_10(v *Value) bool { return true } // match: (Add64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -2692,15 +2556,11 @@ func rewriteValuegeneric_OpAdd64_10(v *Value) bool { return true } // match: (Add64 (Const64 [1]) (Com64 x)) - // cond: // result: (Neg64 x) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst64 || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -2713,7 +2573,6 @@ func rewriteValuegeneric_OpAdd64_10(v *Value) bool { return true } // match: (Add64 (Com64 x) (Const64 [1])) - // cond: // result: (Neg64 x) for { _ = v.Args[1] @@ -2723,10 +2582,7 @@ func rewriteValuegeneric_OpAdd64_10(v *Value) bool { } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst64 || v_1.AuxInt != 1 { break } v.reset(OpNeg64) @@ -3062,7 +2918,6 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { return true } // match: (Add64 (Const64 [c]) (Add64 (Const64 [d]) x)) - // cond: // result: (Add64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3078,10 +2933,7 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -3093,7 +2945,6 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { return true } // match: (Add64 (Const64 [c]) (Add64 x (Const64 [d]))) - // cond: // result: (Add64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3110,10 +2961,7 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -3125,7 +2973,6 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { return true } // match: (Add64 (Add64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Add64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3141,10 +2988,7 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -3156,7 +3000,6 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { return true } // match: (Add64 (Add64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Add64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3173,10 +3016,7 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -3192,7 +3032,6 @@ func rewriteValuegeneric_OpAdd64_20(v *Value) bool { func rewriteValuegeneric_OpAdd64_30(v *Value) bool { b := v.Block // match: (Add64 (Const64 [c]) (Sub64 (Const64 [d]) x)) - // cond: // result: (Sub64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3208,10 +3047,7 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -3223,7 +3059,6 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { return true } // match: (Add64 (Sub64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Sub64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -3239,10 +3074,7 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -3254,7 +3086,6 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { return true } // match: (Add64 (Const64 [c]) (Sub64 x (Const64 [d]))) - // cond: // result: (Add64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -3271,10 +3102,7 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -3286,7 +3114,6 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { return true } // match: (Add64 (Sub64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Add64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -3303,10 +3130,7 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -3321,7 +3145,6 @@ func rewriteValuegeneric_OpAdd64_30(v *Value) bool { } func rewriteValuegeneric_OpAdd64F_0(v *Value) bool { // match: (Add64F (Const64F [c]) (Const64F [d])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) + auxTo64F(d))]) for { _ = v.Args[1] @@ -3340,7 +3163,6 @@ func rewriteValuegeneric_OpAdd64F_0(v *Value) bool { return true } // match: (Add64F (Const64F [d]) (Const64F [c])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) + auxTo64F(d))]) for { _ = v.Args[1] @@ -3363,7 +3185,6 @@ func rewriteValuegeneric_OpAdd64F_0(v *Value) bool { func rewriteValuegeneric_OpAdd8_0(v *Value) bool { b := v.Block // match: (Add8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c+d))]) for { _ = v.Args[1] @@ -3382,7 +3203,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Const8 [d]) (Const8 [c])) - // cond: // result: (Const8 [int64(int8(c+d))]) for { _ = v.Args[1] @@ -3401,7 +3221,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 x y) (Mul8 x z)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3429,7 +3248,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 y x) (Mul8 x z)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3457,7 +3275,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 x y) (Mul8 z x)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3486,7 +3303,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 y x) (Mul8 z x)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3515,7 +3331,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 x z) (Mul8 x y)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3543,7 +3358,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 z x) (Mul8 x y)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3571,7 +3385,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 x z) (Mul8 y x)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3600,7 +3413,6 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { return true } // match: (Add8 (Mul8 z x) (Mul8 y x)) - // cond: // result: (Mul8 x (Add8 y z)) for { t := v.Type @@ -3633,15 +3445,11 @@ func rewriteValuegeneric_OpAdd8_0(v *Value) bool { func rewriteValuegeneric_OpAdd8_10(v *Value) bool { b := v.Block // match: (Add8 (Const8 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -3650,16 +3458,12 @@ func rewriteValuegeneric_OpAdd8_10(v *Value) bool { return true } // match: (Add8 x (Const8 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -3668,15 +3472,11 @@ func rewriteValuegeneric_OpAdd8_10(v *Value) bool { return true } // match: (Add8 (Const8 [1]) (Com8 x)) - // cond: // result: (Neg8 x) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst8 || v_0.AuxInt != 1 { break } v_1 := v.Args[1] @@ -3689,7 +3489,6 @@ func rewriteValuegeneric_OpAdd8_10(v *Value) bool { return true } // match: (Add8 (Com8 x) (Const8 [1])) - // cond: // result: (Neg8 x) for { _ = v.Args[1] @@ -3699,10 +3498,7 @@ func rewriteValuegeneric_OpAdd8_10(v *Value) bool { } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst8 || v_1.AuxInt != 1 { break } v.reset(OpNeg8) @@ -4038,7 +3834,6 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { return true } // match: (Add8 (Const8 [c]) (Add8 (Const8 [d]) x)) - // cond: // result: (Add8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4054,10 +3849,7 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -4069,7 +3861,6 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { return true } // match: (Add8 (Const8 [c]) (Add8 x (Const8 [d]))) - // cond: // result: (Add8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4086,10 +3877,7 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -4101,7 +3889,6 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { return true } // match: (Add8 (Add8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Add8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4117,10 +3904,7 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -4132,7 +3916,6 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { return true } // match: (Add8 (Add8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Add8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4149,10 +3932,7 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -4168,7 +3948,6 @@ func rewriteValuegeneric_OpAdd8_20(v *Value) bool { func rewriteValuegeneric_OpAdd8_30(v *Value) bool { b := v.Block // match: (Add8 (Const8 [c]) (Sub8 (Const8 [d]) x)) - // cond: // result: (Sub8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4184,10 +3963,7 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -4199,7 +3975,6 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { return true } // match: (Add8 (Sub8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Sub8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -4215,10 +3990,7 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -4230,7 +4002,6 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { return true } // match: (Add8 (Const8 [c]) (Sub8 x (Const8 [d]))) - // cond: // result: (Add8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -4247,10 +4018,7 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -4262,7 +4030,6 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { return true } // match: (Add8 (Sub8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Add8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -4279,10 +4046,7 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -4297,7 +4061,6 @@ func rewriteValuegeneric_OpAdd8_30(v *Value) bool { } func rewriteValuegeneric_OpAddPtr_0(v *Value) bool { // match: (AddPtr x (Const64 [c])) - // cond: // result: (OffPtr x [c]) for { t := v.Type @@ -4315,7 +4078,6 @@ func rewriteValuegeneric_OpAddPtr_0(v *Value) bool { return true } // match: (AddPtr x (Const32 [c])) - // cond: // result: (OffPtr x [c]) for { t := v.Type @@ -4336,7 +4098,6 @@ func rewriteValuegeneric_OpAddPtr_0(v *Value) bool { } func rewriteValuegeneric_OpAnd16_0(v *Value) bool { // match: (And16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c&d))]) for { _ = v.Args[1] @@ -4355,7 +4116,6 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { return true } // match: (And16 (Const16 [d]) (Const16 [c])) - // cond: // result: (Const16 [int64(int16(c&d))]) for { _ = v.Args[1] @@ -4482,7 +4242,6 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { return true } // match: (And16 x x) - // cond: // result: x for { x := v.Args[1] @@ -4495,15 +4254,11 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { return true } // match: (And16 (Const16 [-1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst16 || v_0.AuxInt != -1 { break } v.reset(OpCopy) @@ -4512,16 +4267,12 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { return true } // match: (And16 x (Const16 [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst16 || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -4530,15 +4281,11 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { return true } // match: (And16 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -4550,15 +4297,11 @@ func rewriteValuegeneric_OpAnd16_0(v *Value) bool { func rewriteValuegeneric_OpAnd16_10(v *Value) bool { b := v.Block // match: (And16 _ (Const16 [0])) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 { break } v.reset(OpConst16) @@ -4566,7 +4309,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { return true } // match: (And16 x (And16 x y)) - // cond: // result: (And16 x y) for { _ = v.Args[1] @@ -4585,7 +4327,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { return true } // match: (And16 x (And16 y x)) - // cond: // result: (And16 x y) for { _ = v.Args[1] @@ -4605,7 +4346,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { return true } // match: (And16 (And16 x y) x) - // cond: // result: (And16 x y) for { x := v.Args[1] @@ -4623,7 +4363,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { return true } // match: (And16 (And16 y x) x) - // cond: // result: (And16 x y) for { x := v.Args[1] @@ -4750,7 +4489,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { return true } // match: (And16 (Const16 [c]) (And16 (Const16 [d]) x)) - // cond: // result: (And16 (Const16 [int64(int16(c&d))]) x) for { _ = v.Args[1] @@ -4766,10 +4504,7 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -4785,7 +4520,6 @@ func rewriteValuegeneric_OpAnd16_10(v *Value) bool { func rewriteValuegeneric_OpAnd16_20(v *Value) bool { b := v.Block // match: (And16 (Const16 [c]) (And16 x (Const16 [d]))) - // cond: // result: (And16 (Const16 [int64(int16(c&d))]) x) for { _ = v.Args[1] @@ -4802,10 +4536,7 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -4817,7 +4548,6 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { return true } // match: (And16 (And16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (And16 (Const16 [int64(int16(c&d))]) x) for { _ = v.Args[1] @@ -4833,10 +4563,7 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -4848,7 +4575,6 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { return true } // match: (And16 (And16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (And16 (Const16 [int64(int16(c&d))]) x) for { _ = v.Args[1] @@ -4865,10 +4591,7 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -4883,7 +4606,6 @@ func rewriteValuegeneric_OpAnd16_20(v *Value) bool { } func rewriteValuegeneric_OpAnd32_0(v *Value) bool { // match: (And32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c&d))]) for { _ = v.Args[1] @@ -4902,7 +4624,6 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { return true } // match: (And32 (Const32 [d]) (Const32 [c])) - // cond: // result: (Const32 [int64(int32(c&d))]) for { _ = v.Args[1] @@ -5029,7 +4750,6 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { return true } // match: (And32 x x) - // cond: // result: x for { x := v.Args[1] @@ -5042,15 +4762,11 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { return true } // match: (And32 (Const32 [-1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst32 || v_0.AuxInt != -1 { break } v.reset(OpCopy) @@ -5059,16 +4775,12 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { return true } // match: (And32 x (Const32 [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst32 || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -5077,15 +4789,11 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { return true } // match: (And32 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -5097,15 +4805,11 @@ func rewriteValuegeneric_OpAnd32_0(v *Value) bool { func rewriteValuegeneric_OpAnd32_10(v *Value) bool { b := v.Block // match: (And32 _ (Const32 [0])) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpConst32) @@ -5113,7 +4817,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { return true } // match: (And32 x (And32 x y)) - // cond: // result: (And32 x y) for { _ = v.Args[1] @@ -5132,7 +4835,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { return true } // match: (And32 x (And32 y x)) - // cond: // result: (And32 x y) for { _ = v.Args[1] @@ -5152,7 +4854,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { return true } // match: (And32 (And32 x y) x) - // cond: // result: (And32 x y) for { x := v.Args[1] @@ -5170,7 +4871,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { return true } // match: (And32 (And32 y x) x) - // cond: // result: (And32 x y) for { x := v.Args[1] @@ -5297,7 +4997,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { return true } // match: (And32 (Const32 [c]) (And32 (Const32 [d]) x)) - // cond: // result: (And32 (Const32 [int64(int32(c&d))]) x) for { _ = v.Args[1] @@ -5313,10 +5012,7 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -5332,7 +5028,6 @@ func rewriteValuegeneric_OpAnd32_10(v *Value) bool { func rewriteValuegeneric_OpAnd32_20(v *Value) bool { b := v.Block // match: (And32 (Const32 [c]) (And32 x (Const32 [d]))) - // cond: // result: (And32 (Const32 [int64(int32(c&d))]) x) for { _ = v.Args[1] @@ -5349,10 +5044,7 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -5364,7 +5056,6 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { return true } // match: (And32 (And32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (And32 (Const32 [int64(int32(c&d))]) x) for { _ = v.Args[1] @@ -5380,10 +5071,7 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -5395,7 +5083,6 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { return true } // match: (And32 (And32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (And32 (Const32 [int64(int32(c&d))]) x) for { _ = v.Args[1] @@ -5412,10 +5099,7 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -5430,7 +5114,6 @@ func rewriteValuegeneric_OpAnd32_20(v *Value) bool { } func rewriteValuegeneric_OpAnd64_0(v *Value) bool { // match: (And64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c&d]) for { _ = v.Args[1] @@ -5449,7 +5132,6 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { return true } // match: (And64 (Const64 [d]) (Const64 [c])) - // cond: // result: (Const64 [c&d]) for { _ = v.Args[1] @@ -5576,7 +5258,6 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { return true } // match: (And64 x x) - // cond: // result: x for { x := v.Args[1] @@ -5589,15 +5270,11 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { return true } // match: (And64 (Const64 [-1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst64 || v_0.AuxInt != -1 { break } v.reset(OpCopy) @@ -5606,16 +5283,12 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { return true } // match: (And64 x (Const64 [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -5624,15 +5297,11 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { return true } // match: (And64 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -5644,15 +5313,11 @@ func rewriteValuegeneric_OpAnd64_0(v *Value) bool { func rewriteValuegeneric_OpAnd64_10(v *Value) bool { b := v.Block // match: (And64 _ (Const64 [0])) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpConst64) @@ -5660,7 +5325,6 @@ func rewriteValuegeneric_OpAnd64_10(v *Value) bool { return true } // match: (And64 x (And64 x y)) - // cond: // result: (And64 x y) for { _ = v.Args[1] @@ -5679,7 +5343,6 @@ func rewriteValuegeneric_OpAnd64_10(v *Value) bool { return true } // match: (And64 x (And64 y x)) - // cond: // result: (And64 x y) for { _ = v.Args[1] @@ -5699,7 +5362,6 @@ func rewriteValuegeneric_OpAnd64_10(v *Value) bool { return true } // match: (And64 (And64 x y) x) - // cond: // result: (And64 x y) for { x := v.Args[1] @@ -5717,7 +5379,6 @@ func rewriteValuegeneric_OpAnd64_10(v *Value) bool { return true } // match: (And64 (And64 y x) x) - // cond: // result: (And64 x y) for { x := v.Args[1] @@ -5954,7 +5615,6 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { return true } // match: (And64 (Const64 [c]) (And64 (Const64 [d]) x)) - // cond: // result: (And64 (Const64 [c&d]) x) for { _ = v.Args[1] @@ -5970,10 +5630,7 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -5985,7 +5642,6 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { return true } // match: (And64 (Const64 [c]) (And64 x (Const64 [d]))) - // cond: // result: (And64 (Const64 [c&d]) x) for { _ = v.Args[1] @@ -6002,10 +5658,7 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -6017,7 +5670,6 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { return true } // match: (And64 (And64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (And64 (Const64 [c&d]) x) for { _ = v.Args[1] @@ -6033,10 +5685,7 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -6048,7 +5697,6 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { return true } // match: (And64 (And64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (And64 (Const64 [c&d]) x) for { _ = v.Args[1] @@ -6065,10 +5713,7 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -6083,7 +5728,6 @@ func rewriteValuegeneric_OpAnd64_20(v *Value) bool { } func rewriteValuegeneric_OpAnd8_0(v *Value) bool { // match: (And8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c&d))]) for { _ = v.Args[1] @@ -6102,7 +5746,6 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { return true } // match: (And8 (Const8 [d]) (Const8 [c])) - // cond: // result: (Const8 [int64(int8(c&d))]) for { _ = v.Args[1] @@ -6229,7 +5872,6 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { return true } // match: (And8 x x) - // cond: // result: x for { x := v.Args[1] @@ -6242,15 +5884,11 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { return true } // match: (And8 (Const8 [-1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst8 || v_0.AuxInt != -1 { break } v.reset(OpCopy) @@ -6259,16 +5897,12 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { return true } // match: (And8 x (Const8 [-1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst8 || v_1.AuxInt != -1 { break } v.reset(OpCopy) @@ -6277,15 +5911,11 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { return true } // match: (And8 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -6297,15 +5927,11 @@ func rewriteValuegeneric_OpAnd8_0(v *Value) bool { func rewriteValuegeneric_OpAnd8_10(v *Value) bool { b := v.Block // match: (And8 _ (Const8 [0])) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 { break } v.reset(OpConst8) @@ -6313,7 +5939,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { return true } // match: (And8 x (And8 x y)) - // cond: // result: (And8 x y) for { _ = v.Args[1] @@ -6332,7 +5957,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { return true } // match: (And8 x (And8 y x)) - // cond: // result: (And8 x y) for { _ = v.Args[1] @@ -6352,7 +5976,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { return true } // match: (And8 (And8 x y) x) - // cond: // result: (And8 x y) for { x := v.Args[1] @@ -6370,7 +5993,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { return true } // match: (And8 (And8 y x) x) - // cond: // result: (And8 x y) for { x := v.Args[1] @@ -6497,7 +6119,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { return true } // match: (And8 (Const8 [c]) (And8 (Const8 [d]) x)) - // cond: // result: (And8 (Const8 [int64(int8(c&d))]) x) for { _ = v.Args[1] @@ -6513,10 +6134,7 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -6532,7 +6150,6 @@ func rewriteValuegeneric_OpAnd8_10(v *Value) bool { func rewriteValuegeneric_OpAnd8_20(v *Value) bool { b := v.Block // match: (And8 (Const8 [c]) (And8 x (Const8 [d]))) - // cond: // result: (And8 (Const8 [int64(int8(c&d))]) x) for { _ = v.Args[1] @@ -6549,10 +6166,7 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -6564,7 +6178,6 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { return true } // match: (And8 (And8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (And8 (Const8 [int64(int8(c&d))]) x) for { _ = v.Args[1] @@ -6580,10 +6193,7 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -6595,7 +6205,6 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { return true } // match: (And8 (And8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (And8 (Const8 [int64(int8(c&d))]) x) for { _ = v.Args[1] @@ -6612,10 +6221,7 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -6630,7 +6236,6 @@ func rewriteValuegeneric_OpAnd8_20(v *Value) bool { } func rewriteValuegeneric_OpArraySelect_0(v *Value) bool { // match: (ArraySelect (ArrayMake1 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -6644,7 +6249,6 @@ func rewriteValuegeneric_OpArraySelect_0(v *Value) bool { return true } // match: (ArraySelect [0] x:(IData _)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -6663,7 +6267,6 @@ func rewriteValuegeneric_OpArraySelect_0(v *Value) bool { } func rewriteValuegeneric_OpCom16_0(v *Value) bool { // match: (Com16 (Com16 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -6677,7 +6280,6 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { return true } // match: (Com16 (Const16 [c])) - // cond: // result: (Const16 [^c]) for { v_0 := v.Args[0] @@ -6690,7 +6292,6 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { return true } // match: (Com16 (Add16 (Const16 [-1]) x)) - // cond: // result: (Neg16 x) for { v_0 := v.Args[0] @@ -6699,10 +6300,7 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst16 { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpConst16 || v_0_0.AuxInt != -1 { break } v.reset(OpNeg16) @@ -6710,7 +6308,6 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { return true } // match: (Com16 (Add16 x (Const16 [-1]))) - // cond: // result: (Neg16 x) for { v_0 := v.Args[0] @@ -6720,10 +6317,7 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst16 { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpConst16 || v_0_1.AuxInt != -1 { break } v.reset(OpNeg16) @@ -6734,7 +6328,6 @@ func rewriteValuegeneric_OpCom16_0(v *Value) bool { } func rewriteValuegeneric_OpCom32_0(v *Value) bool { // match: (Com32 (Com32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -6748,7 +6341,6 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { return true } // match: (Com32 (Const32 [c])) - // cond: // result: (Const32 [^c]) for { v_0 := v.Args[0] @@ -6761,7 +6353,6 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { return true } // match: (Com32 (Add32 (Const32 [-1]) x)) - // cond: // result: (Neg32 x) for { v_0 := v.Args[0] @@ -6770,10 +6361,7 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst32 { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpConst32 || v_0_0.AuxInt != -1 { break } v.reset(OpNeg32) @@ -6781,7 +6369,6 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { return true } // match: (Com32 (Add32 x (Const32 [-1]))) - // cond: // result: (Neg32 x) for { v_0 := v.Args[0] @@ -6791,10 +6378,7 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst32 { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpConst32 || v_0_1.AuxInt != -1 { break } v.reset(OpNeg32) @@ -6805,7 +6389,6 @@ func rewriteValuegeneric_OpCom32_0(v *Value) bool { } func rewriteValuegeneric_OpCom64_0(v *Value) bool { // match: (Com64 (Com64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -6819,7 +6402,6 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { return true } // match: (Com64 (Const64 [c])) - // cond: // result: (Const64 [^c]) for { v_0 := v.Args[0] @@ -6832,7 +6414,6 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { return true } // match: (Com64 (Add64 (Const64 [-1]) x)) - // cond: // result: (Neg64 x) for { v_0 := v.Args[0] @@ -6841,10 +6422,7 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpConst64 || v_0_0.AuxInt != -1 { break } v.reset(OpNeg64) @@ -6852,7 +6430,6 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { return true } // match: (Com64 (Add64 x (Const64 [-1]))) - // cond: // result: (Neg64 x) for { v_0 := v.Args[0] @@ -6862,10 +6439,7 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != -1 { break } v.reset(OpNeg64) @@ -6876,7 +6450,6 @@ func rewriteValuegeneric_OpCom64_0(v *Value) bool { } func rewriteValuegeneric_OpCom8_0(v *Value) bool { // match: (Com8 (Com8 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -6890,7 +6463,6 @@ func rewriteValuegeneric_OpCom8_0(v *Value) bool { return true } // match: (Com8 (Const8 [c])) - // cond: // result: (Const8 [^c]) for { v_0 := v.Args[0] @@ -6903,7 +6475,6 @@ func rewriteValuegeneric_OpCom8_0(v *Value) bool { return true } // match: (Com8 (Add8 (Const8 [-1]) x)) - // cond: // result: (Neg8 x) for { v_0 := v.Args[0] @@ -6912,10 +6483,7 @@ func rewriteValuegeneric_OpCom8_0(v *Value) bool { } x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst8 { - break - } - if v_0_0.AuxInt != -1 { + if v_0_0.Op != OpConst8 || v_0_0.AuxInt != -1 { break } v.reset(OpNeg8) @@ -6923,7 +6491,6 @@ func rewriteValuegeneric_OpCom8_0(v *Value) bool { return true } // match: (Com8 (Add8 x (Const8 [-1]))) - // cond: // result: (Neg8 x) for { v_0 := v.Args[0] @@ -6933,10 +6500,7 @@ func rewriteValuegeneric_OpCom8_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst8 { - break - } - if v_0_1.AuxInt != -1 { + if v_0_1.Op != OpConst8 || v_0_1.AuxInt != -1 { break } v.reset(OpNeg8) @@ -6949,7 +6513,6 @@ func rewriteValuegeneric_OpConstInterface_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (ConstInterface) - // cond: // result: (IMake (ConstNil ) (ConstNil )) for { v.reset(OpIMake) @@ -7081,7 +6644,6 @@ func rewriteValuegeneric_OpConstString_0(v *Value) bool { } func rewriteValuegeneric_OpConvert_0(v *Value) bool { // match: (Convert (Add64 (Convert ptr mem) off) mem) - // cond: // result: (Add64 ptr off) for { mem := v.Args[1] @@ -7105,7 +6667,6 @@ func rewriteValuegeneric_OpConvert_0(v *Value) bool { return true } // match: (Convert (Add64 off (Convert ptr mem)) mem) - // cond: // result: (Add64 ptr off) for { mem := v.Args[1] @@ -7130,7 +6691,6 @@ func rewriteValuegeneric_OpConvert_0(v *Value) bool { return true } // match: (Convert (Add32 (Convert ptr mem) off) mem) - // cond: // result: (Add32 ptr off) for { mem := v.Args[1] @@ -7154,7 +6714,6 @@ func rewriteValuegeneric_OpConvert_0(v *Value) bool { return true } // match: (Convert (Add32 off (Convert ptr mem)) mem) - // cond: // result: (Add32 ptr off) for { mem := v.Args[1] @@ -7179,7 +6738,6 @@ func rewriteValuegeneric_OpConvert_0(v *Value) bool { return true } // match: (Convert (Convert ptr mem) mem) - // cond: // result: ptr for { mem := v.Args[1] @@ -7201,7 +6759,6 @@ func rewriteValuegeneric_OpConvert_0(v *Value) bool { } func rewriteValuegeneric_OpCvt32Fto32_0(v *Value) bool { // match: (Cvt32Fto32 (Const32F [c])) - // cond: // result: (Const32 [int64(int32(auxTo32F(c)))]) for { v_0 := v.Args[0] @@ -7217,7 +6774,6 @@ func rewriteValuegeneric_OpCvt32Fto32_0(v *Value) bool { } func rewriteValuegeneric_OpCvt32Fto64_0(v *Value) bool { // match: (Cvt32Fto64 (Const32F [c])) - // cond: // result: (Const64 [int64(auxTo32F(c))]) for { v_0 := v.Args[0] @@ -7233,7 +6789,6 @@ func rewriteValuegeneric_OpCvt32Fto64_0(v *Value) bool { } func rewriteValuegeneric_OpCvt32Fto64F_0(v *Value) bool { // match: (Cvt32Fto64F (Const32F [c])) - // cond: // result: (Const64F [c]) for { v_0 := v.Args[0] @@ -7249,7 +6804,6 @@ func rewriteValuegeneric_OpCvt32Fto64F_0(v *Value) bool { } func rewriteValuegeneric_OpCvt32to32F_0(v *Value) bool { // match: (Cvt32to32F (Const32 [c])) - // cond: // result: (Const32F [auxFrom32F(float32(int32(c)))]) for { v_0 := v.Args[0] @@ -7265,7 +6819,6 @@ func rewriteValuegeneric_OpCvt32to32F_0(v *Value) bool { } func rewriteValuegeneric_OpCvt32to64F_0(v *Value) bool { // match: (Cvt32to64F (Const32 [c])) - // cond: // result: (Const64F [auxFrom64F(float64(int32(c)))]) for { v_0 := v.Args[0] @@ -7281,7 +6834,6 @@ func rewriteValuegeneric_OpCvt32to64F_0(v *Value) bool { } func rewriteValuegeneric_OpCvt64Fto32_0(v *Value) bool { // match: (Cvt64Fto32 (Const64F [c])) - // cond: // result: (Const32 [int64(int32(auxTo64F(c)))]) for { v_0 := v.Args[0] @@ -7297,7 +6849,6 @@ func rewriteValuegeneric_OpCvt64Fto32_0(v *Value) bool { } func rewriteValuegeneric_OpCvt64Fto32F_0(v *Value) bool { // match: (Cvt64Fto32F (Const64F [c])) - // cond: // result: (Const32F [auxFrom32F(float32(auxTo64F(c)))]) for { v_0 := v.Args[0] @@ -7313,7 +6864,6 @@ func rewriteValuegeneric_OpCvt64Fto32F_0(v *Value) bool { } func rewriteValuegeneric_OpCvt64Fto64_0(v *Value) bool { // match: (Cvt64Fto64 (Const64F [c])) - // cond: // result: (Const64 [int64(auxTo64F(c))]) for { v_0 := v.Args[0] @@ -7329,7 +6879,6 @@ func rewriteValuegeneric_OpCvt64Fto64_0(v *Value) bool { } func rewriteValuegeneric_OpCvt64to32F_0(v *Value) bool { // match: (Cvt64to32F (Const64 [c])) - // cond: // result: (Const32F [auxFrom32F(float32(c))]) for { v_0 := v.Args[0] @@ -7345,7 +6894,6 @@ func rewriteValuegeneric_OpCvt64to32F_0(v *Value) bool { } func rewriteValuegeneric_OpCvt64to64F_0(v *Value) bool { // match: (Cvt64to64F (Const64 [c])) - // cond: // result: (Const64F [auxFrom64F(float64(c))]) for { v_0 := v.Args[0] @@ -7430,17 +6978,13 @@ func rewriteValuegeneric_OpDiv16_0(v *Value) bool { return true } // match: (Div16 x (Const16 [-1<<15])) - // cond: // result: (Rsh16Ux64 (And16 x (Neg16 x)) (Const64 [15])) for { t := v.Type _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != -1<<15 { + if v_1.Op != OpConst16 || v_1.AuxInt != -1<<15 { break } v.reset(OpRsh16Ux64) @@ -7788,17 +7332,13 @@ func rewriteValuegeneric_OpDiv32_0(v *Value) bool { return true } // match: (Div32 x (Const32 [-1<<31])) - // cond: // result: (Rsh32Ux64 (And32 x (Neg32 x)) (Const64 [31])) for { t := v.Type _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != -1<<31 { + if v_1.Op != OpConst32 || v_1.AuxInt != -1<<31 { break } v.reset(OpRsh32Ux64) @@ -7968,7 +7508,6 @@ func rewriteValuegeneric_OpDiv32_0(v *Value) bool { func rewriteValuegeneric_OpDiv32F_0(v *Value) bool { b := v.Block // match: (Div32F (Const32F [c]) (Const32F [d])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) / auxTo32F(d))]) for { _ = v.Args[1] @@ -8307,13 +7846,7 @@ func rewriteValuegeneric_OpDiv64_0(v *Value) bool { _ = v.Args[1] n := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1<<63 { - break - } - if !(isNonNegative(n)) { + if v_1.Op != OpConst64 || v_1.AuxInt != -1<<63 || !(isNonNegative(n)) { break } v.reset(OpConst64) @@ -8345,17 +7878,13 @@ func rewriteValuegeneric_OpDiv64_0(v *Value) bool { return true } // match: (Div64 x (Const64 [-1<<63])) - // cond: // result: (Rsh64Ux64 (And64 x (Neg64 x)) (Const64 [63])) for { t := v.Type _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1<<63 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1<<63 { break } v.reset(OpRsh64Ux64) @@ -8485,7 +8014,6 @@ func rewriteValuegeneric_OpDiv64_0(v *Value) bool { func rewriteValuegeneric_OpDiv64F_0(v *Value) bool { b := v.Block // match: (Div64F (Const64F [c]) (Const64F [d])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) / auxTo64F(d))]) for { _ = v.Args[1] @@ -8575,16 +8103,12 @@ func rewriteValuegeneric_OpDiv64u_0(v *Value) bool { return true } // match: (Div64u n (Const64 [-1<<63])) - // cond: // result: (Rsh64Ux64 n (Const64 [63])) for { _ = v.Args[1] n := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1<<63 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1<<63 { break } v.reset(OpRsh64Ux64) @@ -8756,17 +8280,13 @@ func rewriteValuegeneric_OpDiv8_0(v *Value) bool { return true } // match: (Div8 x (Const8 [-1<<7 ])) - // cond: // result: (Rsh8Ux64 (And8 x (Neg8 x)) (Const64 [7 ])) for { t := v.Type _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != -1<<7 { + if v_1.Op != OpConst8 || v_1.AuxInt != -1<<7 { break } v.reset(OpRsh8Ux64) @@ -8941,7 +8461,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Eq16 x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -8953,7 +8472,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Const16 [c]) (Add16 (Const16 [d]) x)) - // cond: // result: (Eq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -8969,10 +8487,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -8984,7 +8499,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Const16 [c]) (Add16 x (Const16 [d]))) - // cond: // result: (Eq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -9001,10 +8515,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -9016,7 +8527,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Add16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Eq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -9032,10 +8542,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -9047,7 +8554,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Add16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Eq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -9064,10 +8570,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -9079,7 +8582,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -9098,7 +8600,6 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { return true } // match: (Eq16 (Const16 [d]) (Const16 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -9133,13 +8634,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(x.Op != OpConst16 && udivisibleOK(16, c) && !hasSmallRotate(config)) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(x.Op != OpConst16 && udivisibleOK(16, c) && !hasSmallRotate(config)) { break } v.reset(OpEq32) @@ -9162,10 +8657,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v_1 := v.Args[1] @@ -9213,13 +8705,7 @@ func rewriteValuegeneric_OpEq16_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(x.Op != OpConst16 && sdivisibleOK(16, c) && !hasSmallRotate(config)) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(x.Op != OpConst16 && sdivisibleOK(16, c) && !hasSmallRotate(config)) { break } v.reset(OpEq32) @@ -9248,10 +8734,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v_1 := v.Args[1] @@ -9318,10 +8801,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to64 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -9380,10 +8860,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -9447,10 +8924,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to64 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -9509,10 +8983,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -9585,10 +9056,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to64 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -9646,10 +9114,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -9712,10 +9177,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to64 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -9773,10 +9235,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -9850,10 +9309,7 @@ func rewriteValuegeneric_OpEq16_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -9917,10 +9373,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -9984,10 +9437,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -10046,10 +9496,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -10122,10 +9569,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -10183,10 +9627,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -10249,10 +9690,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -10310,10 +9748,7 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -10392,17 +9827,11 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt16to32 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt16to32 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -10466,17 +9895,11 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt16to32 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -10545,17 +9968,11 @@ func rewriteValuegeneric_OpEq16_20(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt16to32 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt16to32 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -10624,17 +10041,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt16to32 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -10712,17 +10123,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt16to32 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt16to32 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -10785,17 +10190,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt16to32 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -10863,17 +10262,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt16to32 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt16to32 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -10936,17 +10329,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt16to32 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -11020,17 +10407,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = v_1_1_0_0_0.Args[1] v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpZeroExt16to32 || x != v_1_1_0_0_0_0.Args[0] { break } v_1_1_0_0_0_1 := v_1_1_0_0_0.Args[1] - if v_1_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_1_0_0_0_1.AuxInt != 16 { + if v_1_1_0_0_0_1.Op != OpConst64 || v_1_1_0_0_0_1.AuxInt != 16 { break } mul := v_1_1_0_0.Args[1] @@ -11044,10 +10425,7 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -11111,17 +10489,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = v_1_1_0_0_0.Args[1] v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpZeroExt16to32 || x != v_1_1_0_0_0_0.Args[0] { break } v_1_1_0_0_0_1 := v_1_1_0_0_0.Args[1] - if v_1_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_1_0_0_0_1.AuxInt != 16 { + if v_1_1_0_0_0_1.Op != OpConst64 || v_1_1_0_0_0_1.AuxInt != 16 { break } mul := v_1_1_0_0.Args[1] @@ -11130,10 +10502,7 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -11197,17 +10566,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = v_1_0_0_0_0.Args[1] v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpZeroExt16to32 || x != v_1_0_0_0_0_0.Args[0] { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 16 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.AuxInt != 16 { break } mul := v_1_0_0_0.Args[1] @@ -11221,10 +10584,7 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -11288,17 +10648,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = v_1_0_0_0_0.Args[1] v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpZeroExt16to32 || x != v_1_0_0_0_0_0.Args[0] { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 16 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.AuxInt != 16 { break } mul := v_1_0_0_0.Args[1] @@ -11307,10 +10661,7 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -11383,17 +10734,11 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } _ = v_0_1_0_0_0.Args[1] v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpZeroExt16to32 || x != v_0_1_0_0_0_0.Args[0] { break } v_0_1_0_0_0_1 := v_0_1_0_0_0.Args[1] - if v_0_1_0_0_0_1.Op != OpConst64 { - break - } - if v_0_1_0_0_0_1.AuxInt != 16 { + if v_0_1_0_0_0_1.Op != OpConst64 || v_0_1_0_0_0_1.AuxInt != 16 { break } mul := v_0_1_0_0.Args[1] @@ -11407,10 +10752,7 @@ func rewriteValuegeneric_OpEq16_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -11478,17 +10820,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_0_1_0_0_0.Args[1] v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpZeroExt16to32 || x != v_0_1_0_0_0_0.Args[0] { break } v_0_1_0_0_0_1 := v_0_1_0_0_0.Args[1] - if v_0_1_0_0_0_1.Op != OpConst64 { - break - } - if v_0_1_0_0_0_1.AuxInt != 16 { + if v_0_1_0_0_0_1.Op != OpConst64 || v_0_1_0_0_0_1.AuxInt != 16 { break } mul := v_0_1_0_0.Args[1] @@ -11497,10 +10833,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -11563,17 +10896,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_0_0_0_0_0.Args[1] v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_0_0_0_0_0_0.Args[0] { + if v_0_0_0_0_0_0.Op != OpZeroExt16to32 || x != v_0_0_0_0_0_0.Args[0] { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 16 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.AuxInt != 16 { break } mul := v_0_0_0_0.Args[1] @@ -11587,102 +10914,90 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt16to32 { + if mul_1.Op != OpZeroExt16to32 || x != mul_1.Args[0] { break } - if x != mul_1.Args[0] { + v_0_0_0_1 := v_0_0_0.Args[1] + if v_0_0_0_1.Op != OpConst64 { + break + } + s := v_0_0_0_1.AuxInt + v_0_1 := v_0.Args[1] + if v_0_1.Op != OpConst16 { + break + } + c := v_0_1.AuxInt + if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(umagic(16, c).m) && s == 16+umagic(16, c).s-1 && x.Op != OpConst16 && udivisibleOK(16, c)) { break } - v_0_0_0_1 := v_0_0_0.Args[1] - if v_0_0_0_1.Op != OpConst64 { - break - } - s := v_0_0_0_1.AuxInt - v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst16 { - break - } - c := v_0_1.AuxInt - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(umagic(16, c).m) && s == 16+umagic(16, c).s-1 && x.Op != OpConst16 && udivisibleOK(16, c)) { - break - } - v.reset(OpLeq16U) - v0 := b.NewValue0(v.Pos, OpRotateLeft16, typ.UInt16) - v1 := b.NewValue0(v.Pos, OpMul16, typ.UInt16) - v2 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) - v2.AuxInt = int64(int16(udivisible(16, c).m)) - v1.AddArg(v2) - v1.AddArg(x) - v0.AddArg(v1) - v3 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) - v3.AuxInt = int64(16 - udivisible(16, c).k) - v0.AddArg(v3) - v.AddArg(v0) - v4 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) - v4.AuxInt = int64(int16(udivisible(16, c).max)) - v.AddArg(v4) - return true - } - // match: (Eq16 (Mul16 (Trunc32to16 (Rsh32Ux64 (Avg32u (Lsh32x64 (ZeroExt16to32 x) (Const64 [16])) mul:(Mul32 (ZeroExt16to32 x) (Const32 [m]))) (Const64 [s]))) (Const16 [c])) x) - // cond: v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(umagic(16,c).m) && s == 16+umagic(16,c).s-1 && x.Op != OpConst16 && udivisibleOK(16,c) - // result: (Leq16U (RotateLeft16 (Mul16 (Const16 [int64(int16(udivisible(16,c).m))]) x) (Const16 [int64(16-udivisible(16,c).k)]) ) (Const16 [int64(int16(udivisible(16,c).max))]) ) - for { - x := v.Args[1] - v_0 := v.Args[0] - if v_0.Op != OpMul16 { - break - } - _ = v_0.Args[1] - v_0_0 := v_0.Args[0] - if v_0_0.Op != OpTrunc32to16 { - break - } - v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpRsh32Ux64 { - break - } - _ = v_0_0_0.Args[1] - v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpAvg32u { - break - } - _ = v_0_0_0_0.Args[1] - v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpLsh32x64 { - break - } - _ = v_0_0_0_0_0.Args[1] - v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpZeroExt16to32 { - break - } - if x != v_0_0_0_0_0_0.Args[0] { - break - } - v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 16 { - break - } - mul := v_0_0_0_0.Args[1] - if mul.Op != OpMul32 { - break - } - _ = mul.Args[1] - mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt16to32 { - break - } - if x != mul_0.Args[0] { - break - } - mul_1 := mul.Args[1] - if mul_1.Op != OpConst32 { - break - } - m := mul_1.AuxInt + v.reset(OpLeq16U) + v0 := b.NewValue0(v.Pos, OpRotateLeft16, typ.UInt16) + v1 := b.NewValue0(v.Pos, OpMul16, typ.UInt16) + v2 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) + v2.AuxInt = int64(int16(udivisible(16, c).m)) + v1.AddArg(v2) + v1.AddArg(x) + v0.AddArg(v1) + v3 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) + v3.AuxInt = int64(16 - udivisible(16, c).k) + v0.AddArg(v3) + v.AddArg(v0) + v4 := b.NewValue0(v.Pos, OpConst16, typ.UInt16) + v4.AuxInt = int64(int16(udivisible(16, c).max)) + v.AddArg(v4) + return true + } + // match: (Eq16 (Mul16 (Trunc32to16 (Rsh32Ux64 (Avg32u (Lsh32x64 (ZeroExt16to32 x) (Const64 [16])) mul:(Mul32 (ZeroExt16to32 x) (Const32 [m]))) (Const64 [s]))) (Const16 [c])) x) + // cond: v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(umagic(16,c).m) && s == 16+umagic(16,c).s-1 && x.Op != OpConst16 && udivisibleOK(16,c) + // result: (Leq16U (RotateLeft16 (Mul16 (Const16 [int64(int16(udivisible(16,c).m))]) x) (Const16 [int64(16-udivisible(16,c).k)]) ) (Const16 [int64(int16(udivisible(16,c).max))]) ) + for { + x := v.Args[1] + v_0 := v.Args[0] + if v_0.Op != OpMul16 { + break + } + _ = v_0.Args[1] + v_0_0 := v_0.Args[0] + if v_0_0.Op != OpTrunc32to16 { + break + } + v_0_0_0 := v_0_0.Args[0] + if v_0_0_0.Op != OpRsh32Ux64 { + break + } + _ = v_0_0_0.Args[1] + v_0_0_0_0 := v_0_0_0.Args[0] + if v_0_0_0_0.Op != OpAvg32u { + break + } + _ = v_0_0_0_0.Args[1] + v_0_0_0_0_0 := v_0_0_0_0.Args[0] + if v_0_0_0_0_0.Op != OpLsh32x64 { + break + } + _ = v_0_0_0_0_0.Args[1] + v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] + if v_0_0_0_0_0_0.Op != OpZeroExt16to32 || x != v_0_0_0_0_0_0.Args[0] { + break + } + v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.AuxInt != 16 { + break + } + mul := v_0_0_0_0.Args[1] + if mul.Op != OpMul32 { + break + } + _ = mul.Args[1] + mul_0 := mul.Args[0] + if mul_0.Op != OpZeroExt16to32 || x != mul_0.Args[0] { + break + } + mul_1 := mul.Args[1] + if mul_1.Op != OpConst32 { + break + } + m := mul_1.AuxInt v_0_0_0_1 := v_0_0_0.Args[1] if v_0_0_0_1.Op != OpConst64 { break @@ -11750,10 +11065,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt16to32 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -11767,20 +11079,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt16to32 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt16to32 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { break } v.reset(OpLeq16U) @@ -11837,10 +11140,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -11859,20 +11159,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt16to32 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt16to32 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { break } v.reset(OpLeq16U) @@ -11929,10 +11220,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt16to32 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -11946,17 +11234,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt16to32 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt16to32 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -12016,10 +11298,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -12038,17 +11317,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt16to32 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt16to32 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -12117,10 +11390,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt16to32 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -12134,20 +11404,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt16to32 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt16to32 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { break } v.reset(OpLeq16U) @@ -12203,10 +11464,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -12225,20 +11483,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt16to32 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt16to32 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(16, c).m) && s == 16+smagic(16, c).s && x.Op != OpConst16 && sdivisibleOK(16, c)) { break } v.reset(OpLeq16U) @@ -12294,10 +11543,7 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt16to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt16to32 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -12311,17 +11557,11 @@ func rewriteValuegeneric_OpEq16_40(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt16to32 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt16to32 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -12385,10 +11625,7 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt16to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt16to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -12407,17 +11644,11 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt16to32 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt16to32 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -12476,18 +11707,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_1_0_0_1 := v_1_0_0.Args[1] - if v_1_0_0_1.Op != OpRsh16Ux64 { - break - } - if v_1_0_0_1.Type != t { + if v_1_0_0_1.Op != OpRsh16Ux64 || v_1_0_0_1.Type != t { break } _ = v_1_0_0_1.Args[1] v_1_0_0_1_0 := v_1_0_0_1.Args[0] - if v_1_0_0_1_0.Op != OpRsh16x64 { - break - } - if v_1_0_0_1_0.Type != t { + if v_1_0_0_1_0.Op != OpRsh16x64 || v_1_0_0_1_0.Type != t { break } _ = v_1_0_0_1_0.Args[1] @@ -12495,42 +11720,21 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_1_0_0_1_0_1 := v_1_0_0_1_0.Args[1] - if v_1_0_0_1_0_1.Op != OpConst64 { - break - } - if v_1_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_1_0_1.AuxInt != 15 { + if v_1_0_0_1_0_1.Op != OpConst64 || v_1_0_0_1_0_1.Type != typ.UInt64 || v_1_0_0_1_0_1.AuxInt != 15 { break } v_1_0_0_1_1 := v_1_0_0_1.Args[1] - if v_1_0_0_1_1.Op != OpConst64 { - break - } - if v_1_0_0_1_1.Type != typ.UInt64 { + if v_1_0_0_1_1.Op != OpConst64 || v_1_0_0_1_1.Type != typ.UInt64 { break } kbar := v_1_0_0_1_1.AuxInt v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 15 && kbar == 16-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 15 && kbar == 16-k) { break } v.reset(OpEq16) @@ -12568,18 +11772,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { t := v_1_0_0.Type _ = v_1_0_0.Args[1] v_1_0_0_0 := v_1_0_0.Args[0] - if v_1_0_0_0.Op != OpRsh16Ux64 { - break - } - if v_1_0_0_0.Type != t { + if v_1_0_0_0.Op != OpRsh16Ux64 || v_1_0_0_0.Type != t { break } _ = v_1_0_0_0.Args[1] v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpRsh16x64 { - break - } - if v_1_0_0_0_0.Type != t { + if v_1_0_0_0_0.Op != OpRsh16x64 || v_1_0_0_0_0.Type != t { break } _ = v_1_0_0_0_0.Args[1] @@ -12587,20 +11785,11 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 15 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.Type != typ.UInt64 || v_1_0_0_0_0_1.AuxInt != 15 { break } v_1_0_0_0_1 := v_1_0_0_0.Args[1] - if v_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_1.Type != typ.UInt64 { + if v_1_0_0_0_1.Op != OpConst64 || v_1_0_0_0_1.Type != typ.UInt64 { break } kbar := v_1_0_0_0_1.AuxInt @@ -12608,24 +11797,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 15 && kbar == 16-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 15 && kbar == 16-k) { break } v.reset(OpEq16) @@ -12665,18 +11842,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_0_0_0_1 := v_0_0_0.Args[1] - if v_0_0_0_1.Op != OpRsh16Ux64 { - break - } - if v_0_0_0_1.Type != t { + if v_0_0_0_1.Op != OpRsh16Ux64 || v_0_0_0_1.Type != t { break } _ = v_0_0_0_1.Args[1] v_0_0_0_1_0 := v_0_0_0_1.Args[0] - if v_0_0_0_1_0.Op != OpRsh16x64 { - break - } - if v_0_0_0_1_0.Type != t { + if v_0_0_0_1_0.Op != OpRsh16x64 || v_0_0_0_1_0.Type != t { break } _ = v_0_0_0_1_0.Args[1] @@ -12684,42 +11855,21 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_0_0_0_1_0_1 := v_0_0_0_1_0.Args[1] - if v_0_0_0_1_0_1.Op != OpConst64 { - break - } - if v_0_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_1_0_1.AuxInt != 15 { + if v_0_0_0_1_0_1.Op != OpConst64 || v_0_0_0_1_0_1.Type != typ.UInt64 || v_0_0_0_1_0_1.AuxInt != 15 { break } v_0_0_0_1_1 := v_0_0_0_1.Args[1] - if v_0_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_0_1_1.Type != typ.UInt64 { + if v_0_0_0_1_1.Op != OpConst64 || v_0_0_0_1_1.Type != typ.UInt64 { break } kbar := v_0_0_0_1_1.AuxInt v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 15 && kbar == 16-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 15 && kbar == 16-k) { break } v.reset(OpEq16) @@ -12756,18 +11906,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { t := v_0_0_0.Type _ = v_0_0_0.Args[1] v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpRsh16Ux64 { - break - } - if v_0_0_0_0.Type != t { + if v_0_0_0_0.Op != OpRsh16Ux64 || v_0_0_0_0.Type != t { break } _ = v_0_0_0_0.Args[1] v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpRsh16x64 { - break - } - if v_0_0_0_0_0.Type != t { + if v_0_0_0_0_0.Op != OpRsh16x64 || v_0_0_0_0_0.Type != t { break } _ = v_0_0_0_0_0.Args[1] @@ -12775,20 +11919,11 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 15 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.Type != typ.UInt64 || v_0_0_0_0_0_1.AuxInt != 15 { break } v_0_0_0_0_1 := v_0_0_0_0.Args[1] - if v_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_1.Type != typ.UInt64 { + if v_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_1.Type != typ.UInt64 { break } kbar := v_0_0_0_0_1.AuxInt @@ -12796,24 +11931,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { break } v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 15 && kbar == 16-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 15 && kbar == 16-k) { break } v.reset(OpEq16) @@ -12840,13 +11963,7 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpEq16) @@ -12860,10 +11977,7 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -12893,24 +12007,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst16 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst16 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst16 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq16) @@ -12937,24 +12039,12 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst16 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst16 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst16 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq16) @@ -12981,25 +12071,13 @@ func rewriteValuegeneric_OpEq16_50(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd16 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd16 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst16 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq16) @@ -13030,24 +12108,12 @@ func rewriteValuegeneric_OpEq16_60(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd16 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd16 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst16 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq16) @@ -13068,7 +12134,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq32 x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -13080,7 +12145,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Const32 [c]) (Add32 (Const32 [d]) x)) - // cond: // result: (Eq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -13096,10 +12160,7 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -13111,7 +12172,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Const32 [c]) (Add32 x (Const32 [d]))) - // cond: // result: (Eq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -13128,10 +12188,7 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -13143,7 +12200,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Add32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Eq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -13159,10 +12215,7 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -13174,7 +12227,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Add32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Eq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -13191,10 +12243,7 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -13206,7 +12255,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -13225,7 +12273,6 @@ func rewriteValuegeneric_OpEq32_0(v *Value) bool { return true } // match: (Eq32 (Const32 [d]) (Const32 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -13743,10 +12790,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpConst32 { - break - } - if mul_0.Type != typ.UInt32 { + if mul_0.Op != OpConst32 || mul_0.Type != typ.UInt32 { break } m := mul_0.AuxInt @@ -13759,10 +12803,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_1_1 := v_1_1.Args[1] @@ -13825,17 +12866,11 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] - if mul_1.Op != OpConst32 { - break - } - if mul_1.Type != typ.UInt32 { + if mul_1.Op != OpConst32 || mul_1.Type != typ.UInt32 { break } m := mul_1.AuxInt @@ -13886,10 +12921,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpConst32 { - break - } - if mul_0.Type != typ.UInt32 { + if mul_0.Op != OpConst32 || mul_0.Type != typ.UInt32 { break } m := mul_0.AuxInt @@ -13902,10 +12934,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_0_1 := v_1_0.Args[1] @@ -13968,17 +12997,11 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] - if mul_1.Op != OpConst32 { - break - } - if mul_1.Type != typ.UInt32 { + if mul_1.Op != OpConst32 || mul_1.Type != typ.UInt32 { break } m := mul_1.AuxInt @@ -14038,10 +13061,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpConst32 { - break - } - if mul_0.Type != typ.UInt32 { + if mul_0.Op != OpConst32 || mul_0.Type != typ.UInt32 { break } m := mul_0.AuxInt @@ -14054,10 +13074,7 @@ func rewriteValuegeneric_OpEq32_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_1_1 := v_0_1.Args[1] @@ -14124,17 +13141,11 @@ func rewriteValuegeneric_OpEq32_20(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] - if mul_1.Op != OpConst32 { - break - } - if mul_1.Type != typ.UInt32 { + if mul_1.Op != OpConst32 || mul_1.Type != typ.UInt32 { break } m := mul_1.AuxInt @@ -14184,10 +13195,7 @@ func rewriteValuegeneric_OpEq32_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpConst32 { - break - } - if mul_0.Type != typ.UInt32 { + if mul_0.Op != OpConst32 || mul_0.Type != typ.UInt32 { break } m := mul_0.AuxInt @@ -14200,10 +13208,7 @@ func rewriteValuegeneric_OpEq32_20(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_0_1 := v_0_0.Args[1] @@ -14265,17 +13270,11 @@ func rewriteValuegeneric_OpEq32_20(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] - if mul_1.Op != OpConst32 { - break - } - if mul_1.Type != typ.UInt32 { + if mul_1.Op != OpConst32 || mul_1.Type != typ.UInt32 { break } m := mul_1.AuxInt @@ -14882,10 +13881,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -14944,10 +13940,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -15011,10 +14004,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -15073,10 +14063,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -15149,10 +14136,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -15210,10 +14194,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -15276,10 +14257,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -15337,10 +14315,7 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -15419,17 +14394,11 @@ func rewriteValuegeneric_OpEq32_30(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt32to64 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt32to64 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -15498,17 +14467,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt32to64 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -15577,17 +14540,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt32to64 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt32to64 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -15651,17 +14608,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt32to64 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -15739,17 +14690,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt32to64 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt32to64 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -15812,17 +14757,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt32to64 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -15890,17 +14829,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_1.Args[1] mul_1_0 := mul_1.Args[0] - if mul_1_0.Op != OpZeroExt32to64 { - break - } - if x != mul_1_0.Args[0] { + if mul_1_0.Op != OpZeroExt32to64 || x != mul_1_0.Args[0] { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -15963,17 +14896,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul_0.Args[1] mul_0_0 := mul_0.Args[0] - if mul_0_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0_0.Args[0] { + if mul_0_0.Op != OpZeroExt32to64 || x != mul_0_0.Args[0] { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -16047,17 +14974,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = v_1_1_0_0_0.Args[1] v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpZeroExt32to64 || x != v_1_1_0_0_0_0.Args[0] { break } v_1_1_0_0_0_1 := v_1_1_0_0_0.Args[1] - if v_1_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_1_0_0_0_1.AuxInt != 32 { + if v_1_1_0_0_0_1.Op != OpConst64 || v_1_1_0_0_0_1.AuxInt != 32 { break } mul := v_1_1_0_0.Args[1] @@ -16071,10 +14992,7 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -16138,17 +15056,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = v_1_1_0_0_0.Args[1] v_1_1_0_0_0_0 := v_1_1_0_0_0.Args[0] - if v_1_1_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_1_1_0_0_0_0.Args[0] { + if v_1_1_0_0_0_0.Op != OpZeroExt32to64 || x != v_1_1_0_0_0_0.Args[0] { break } v_1_1_0_0_0_1 := v_1_1_0_0_0.Args[1] - if v_1_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_1_0_0_0_1.AuxInt != 32 { + if v_1_1_0_0_0_1.Op != OpConst64 || v_1_1_0_0_0_1.AuxInt != 32 { break } mul := v_1_1_0_0.Args[1] @@ -16157,10 +15069,7 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -16224,17 +15133,11 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } _ = v_1_0_0_0_0.Args[1] v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpZeroExt32to64 || x != v_1_0_0_0_0_0.Args[0] { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 32 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.AuxInt != 32 { break } mul := v_1_0_0_0.Args[1] @@ -16248,10 +15151,7 @@ func rewriteValuegeneric_OpEq32_40(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -16320,17 +15220,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_1_0_0_0_0.Args[1] v_1_0_0_0_0_0 := v_1_0_0_0_0.Args[0] - if v_1_0_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_1_0_0_0_0_0.Args[0] { + if v_1_0_0_0_0_0.Op != OpZeroExt32to64 || x != v_1_0_0_0_0_0.Args[0] { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 32 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.AuxInt != 32 { break } mul := v_1_0_0_0.Args[1] @@ -16339,10 +15233,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -16415,17 +15306,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_0_1_0_0_0.Args[1] v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpZeroExt32to64 || x != v_0_1_0_0_0_0.Args[0] { break } v_0_1_0_0_0_1 := v_0_1_0_0_0.Args[1] - if v_0_1_0_0_0_1.Op != OpConst64 { - break - } - if v_0_1_0_0_0_1.AuxInt != 32 { + if v_0_1_0_0_0_1.Op != OpConst64 || v_0_1_0_0_0_1.AuxInt != 32 { break } mul := v_0_1_0_0.Args[1] @@ -16439,10 +15324,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -16505,17 +15387,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_0_1_0_0_0.Args[1] v_0_1_0_0_0_0 := v_0_1_0_0_0.Args[0] - if v_0_1_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_0_1_0_0_0_0.Args[0] { + if v_0_1_0_0_0_0.Op != OpZeroExt32to64 || x != v_0_1_0_0_0_0.Args[0] { break } v_0_1_0_0_0_1 := v_0_1_0_0_0.Args[1] - if v_0_1_0_0_0_1.Op != OpConst64 { - break - } - if v_0_1_0_0_0_1.AuxInt != 32 { + if v_0_1_0_0_0_1.Op != OpConst64 || v_0_1_0_0_0_1.AuxInt != 32 { break } mul := v_0_1_0_0.Args[1] @@ -16524,10 +15400,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -16590,17 +15463,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_0_0_0_0_0.Args[1] v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_0_0_0_0_0_0.Args[0] { + if v_0_0_0_0_0_0.Op != OpZeroExt32to64 || x != v_0_0_0_0_0_0.Args[0] { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 32 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.AuxInt != 32 { break } mul := v_0_0_0_0.Args[1] @@ -16614,10 +15481,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt32to64 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -16680,17 +15544,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_0_0_0_0_0.Args[1] v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpZeroExt32to64 { - break - } - if x != v_0_0_0_0_0_0.Args[0] { + if v_0_0_0_0_0_0.Op != OpZeroExt32to64 || x != v_0_0_0_0_0_0.Args[0] { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 32 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.AuxInt != 32 { break } mul := v_0_0_0_0.Args[1] @@ -16699,10 +15557,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -16777,10 +15632,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt32to64 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -16794,20 +15646,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt32to64 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt32to64 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -16864,10 +15707,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -16886,20 +15726,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt32to64 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt32to64 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -16956,10 +15787,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt32to64 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -16973,17 +15801,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt32to64 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt32to64 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -17043,10 +15865,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -17065,17 +15884,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt32to64 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt32to64 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -17144,10 +15957,7 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt32to64 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -17161,20 +15971,11 @@ func rewriteValuegeneric_OpEq32_50(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt32to64 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt32to64 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -17235,10 +16036,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -17257,20 +16055,11 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt32to64 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt32to64 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(32, c).m) && s == 32+smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -17326,10 +16115,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt32to64 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt32to64 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -17343,17 +16129,11 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt32to64 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt32to64 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -17412,10 +16192,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt32to64 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt32to64 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -17434,17 +16211,11 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt32to64 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt32to64 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -17530,13 +16301,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -17614,13 +16379,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -17693,10 +16452,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -17777,10 +16533,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -17865,13 +16618,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -17948,13 +16695,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m/2)) && s == smagic(32, c).s-1 && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -18026,10 +16767,7 @@ func rewriteValuegeneric_OpEq32_60(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -18114,10 +16852,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -18191,10 +16926,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_1_1_0_0.Args[1] { + if x != mul.Args[1] || x != v_1_1_0_0.Args[1] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -18211,13 +16943,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -18303,13 +17029,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -18395,13 +17115,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -18487,13 +17201,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -18554,10 +17262,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_1_0_0_0.Args[1] { + if x != mul.Args[1] || x != v_1_0_0_0.Args[1] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -18574,10 +17279,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -18666,10 +17368,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -18758,10 +17457,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -18850,10 +17546,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -18926,10 +17619,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_0_1_0_0.Args[1] { + if x != mul.Args[1] || x != v_0_1_0_0.Args[1] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -18946,13 +17636,7 @@ func rewriteValuegeneric_OpEq32_70(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -19042,13 +17726,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -19133,13 +17811,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -19224,13 +17896,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(int32(smagic(32, c).m)) && s == smagic(32, c).s && x.Op != OpConst32 && sdivisibleOK(32, c)) { break } v.reset(OpLeq32U) @@ -19290,10 +17956,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_0_0_0_0.Args[1] { + if x != mul.Args[1] || x != v_0_0_0_0.Args[1] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -19310,10 +17973,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -19401,10 +18061,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -19492,10 +18149,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -19583,10 +18237,7 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -19645,18 +18296,12 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_1_0_0_1 := v_1_0_0.Args[1] - if v_1_0_0_1.Op != OpRsh32Ux64 { - break - } - if v_1_0_0_1.Type != t { + if v_1_0_0_1.Op != OpRsh32Ux64 || v_1_0_0_1.Type != t { break } _ = v_1_0_0_1.Args[1] v_1_0_0_1_0 := v_1_0_0_1.Args[0] - if v_1_0_0_1_0.Op != OpRsh32x64 { - break - } - if v_1_0_0_1_0.Type != t { + if v_1_0_0_1_0.Op != OpRsh32x64 || v_1_0_0_1_0.Type != t { break } _ = v_1_0_0_1_0.Args[1] @@ -19664,42 +18309,21 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_1_0_0_1_0_1 := v_1_0_0_1_0.Args[1] - if v_1_0_0_1_0_1.Op != OpConst64 { - break - } - if v_1_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_1_0_1.AuxInt != 31 { + if v_1_0_0_1_0_1.Op != OpConst64 || v_1_0_0_1_0_1.Type != typ.UInt64 || v_1_0_0_1_0_1.AuxInt != 31 { break } v_1_0_0_1_1 := v_1_0_0_1.Args[1] - if v_1_0_0_1_1.Op != OpConst64 { - break - } - if v_1_0_0_1_1.Type != typ.UInt64 { + if v_1_0_0_1_1.Op != OpConst64 || v_1_0_0_1_1.Type != typ.UInt64 { break } kbar := v_1_0_0_1_1.AuxInt v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 31 && kbar == 32-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 31 && kbar == 32-k) { break } v.reset(OpEq32) @@ -19737,18 +18361,12 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { t := v_1_0_0.Type _ = v_1_0_0.Args[1] v_1_0_0_0 := v_1_0_0.Args[0] - if v_1_0_0_0.Op != OpRsh32Ux64 { - break - } - if v_1_0_0_0.Type != t { + if v_1_0_0_0.Op != OpRsh32Ux64 || v_1_0_0_0.Type != t { break } _ = v_1_0_0_0.Args[1] v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpRsh32x64 { - break - } - if v_1_0_0_0_0.Type != t { + if v_1_0_0_0_0.Op != OpRsh32x64 || v_1_0_0_0_0.Type != t { break } _ = v_1_0_0_0_0.Args[1] @@ -19756,20 +18374,11 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 31 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.Type != typ.UInt64 || v_1_0_0_0_0_1.AuxInt != 31 { break } v_1_0_0_0_1 := v_1_0_0_0.Args[1] - if v_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_1.Type != typ.UInt64 { + if v_1_0_0_0_1.Op != OpConst64 || v_1_0_0_0_1.Type != typ.UInt64 { break } kbar := v_1_0_0_0_1.AuxInt @@ -19777,24 +18386,12 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 31 && kbar == 32-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 31 && kbar == 32-k) { break } v.reset(OpEq32) @@ -19834,18 +18431,12 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_0_1 := v_0_0_0.Args[1] - if v_0_0_0_1.Op != OpRsh32Ux64 { - break - } - if v_0_0_0_1.Type != t { + if v_0_0_0_1.Op != OpRsh32Ux64 || v_0_0_0_1.Type != t { break } _ = v_0_0_0_1.Args[1] v_0_0_0_1_0 := v_0_0_0_1.Args[0] - if v_0_0_0_1_0.Op != OpRsh32x64 { - break - } - if v_0_0_0_1_0.Type != t { + if v_0_0_0_1_0.Op != OpRsh32x64 || v_0_0_0_1_0.Type != t { break } _ = v_0_0_0_1_0.Args[1] @@ -19853,42 +18444,21 @@ func rewriteValuegeneric_OpEq32_80(v *Value) bool { break } v_0_0_0_1_0_1 := v_0_0_0_1_0.Args[1] - if v_0_0_0_1_0_1.Op != OpConst64 { - break - } - if v_0_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_1_0_1.AuxInt != 31 { + if v_0_0_0_1_0_1.Op != OpConst64 || v_0_0_0_1_0_1.Type != typ.UInt64 || v_0_0_0_1_0_1.AuxInt != 31 { break } v_0_0_0_1_1 := v_0_0_0_1.Args[1] - if v_0_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_0_1_1.Type != typ.UInt64 { + if v_0_0_0_1_1.Op != OpConst64 || v_0_0_0_1_1.Type != typ.UInt64 { break } kbar := v_0_0_0_1_1.AuxInt v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 31 && kbar == 32-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 31 && kbar == 32-k) { break } v.reset(OpEq32) @@ -19930,18 +18500,12 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { t := v_0_0_0.Type _ = v_0_0_0.Args[1] v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpRsh32Ux64 { - break - } - if v_0_0_0_0.Type != t { + if v_0_0_0_0.Op != OpRsh32Ux64 || v_0_0_0_0.Type != t { break } _ = v_0_0_0_0.Args[1] v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpRsh32x64 { - break - } - if v_0_0_0_0_0.Type != t { + if v_0_0_0_0_0.Op != OpRsh32x64 || v_0_0_0_0_0.Type != t { break } _ = v_0_0_0_0_0.Args[1] @@ -19949,20 +18513,11 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 31 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.Type != typ.UInt64 || v_0_0_0_0_0_1.AuxInt != 31 { break } v_0_0_0_0_1 := v_0_0_0_0.Args[1] - if v_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_1.Type != typ.UInt64 { + if v_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_1.Type != typ.UInt64 { break } kbar := v_0_0_0_0_1.AuxInt @@ -19970,24 +18525,12 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { break } v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 31 && kbar == 32-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 31 && kbar == 32-k) { break } v.reset(OpEq32) @@ -20014,13 +18557,7 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpEq32) @@ -20034,10 +18571,7 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -20067,24 +18601,12 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst32 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst32 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst32 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq32) @@ -20111,24 +18633,12 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst32 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst32 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst32 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq32) @@ -20155,25 +18665,13 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd32 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst32 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq32) @@ -20200,24 +18698,12 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd32 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst32 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq32) @@ -20236,7 +18722,6 @@ func rewriteValuegeneric_OpEq32_90(v *Value) bool { } func rewriteValuegeneric_OpEq32F_0(v *Value) bool { // match: (Eq32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) == auxTo32F(d))]) for { _ = v.Args[1] @@ -20255,7 +18740,6 @@ func rewriteValuegeneric_OpEq32F_0(v *Value) bool { return true } // match: (Eq32F (Const32F [d]) (Const32F [c])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) == auxTo32F(d))]) for { _ = v.Args[1] @@ -20279,7 +18763,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Eq64 x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -20291,7 +18774,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Const64 [c]) (Add64 (Const64 [d]) x)) - // cond: // result: (Eq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -20307,10 +18789,7 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -20322,7 +18801,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Const64 [c]) (Add64 x (Const64 [d]))) - // cond: // result: (Eq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -20339,10 +18817,7 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -20354,7 +18829,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Add64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Eq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -20370,10 +18844,7 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -20385,7 +18856,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Add64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Eq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -20402,10 +18872,7 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -20417,7 +18884,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -20436,7 +18902,6 @@ func rewriteValuegeneric_OpEq64_0(v *Value) bool { return true } // match: (Eq64 (Const64 [d]) (Const64 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -20967,10 +19432,7 @@ func rewriteValuegeneric_OpEq64_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_1_1 := v_1_1.Args[1] @@ -21033,10 +19495,7 @@ func rewriteValuegeneric_OpEq64_10(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -21104,10 +19563,7 @@ func rewriteValuegeneric_OpEq64_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_1_0_1 := v_1_0.Args[1] @@ -21170,10 +19626,7 @@ func rewriteValuegeneric_OpEq64_10(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -21250,10 +19703,7 @@ func rewriteValuegeneric_OpEq64_10(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_1_1 := v_0_1.Args[1] @@ -21320,10 +19770,7 @@ func rewriteValuegeneric_OpEq64_20(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -21390,10 +19837,7 @@ func rewriteValuegeneric_OpEq64_20(v *Value) bool { break } mul_1_1 := mul_1.Args[1] - if mul_1_1.Op != OpConst64 { - break - } - if mul_1_1.AuxInt != 1 { + if mul_1_1.Op != OpConst64 || mul_1_1.AuxInt != 1 { break } v_0_0_1 := v_0_0.Args[1] @@ -21455,10 +19899,7 @@ func rewriteValuegeneric_OpEq64_20(v *Value) bool { break } mul_0_1 := mul_0.Args[1] - if mul_0_1.Op != OpConst64 { - break - } - if mul_0_1.AuxInt != 1 { + if mul_0_1.Op != OpConst64 || mul_0_1.AuxInt != 1 { break } mul_1 := mul.Args[1] @@ -22086,13 +20527,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22170,13 +20605,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22249,10 +20678,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -22333,10 +20759,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -22421,13 +20844,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22504,13 +20921,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m/2) && s == smagic(64, c).s-1 && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22582,10 +20993,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -22665,10 +21073,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -22742,10 +21147,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_1_1_0_0.Args[1] { + if x != mul.Args[1] || x != v_1_1_0_0.Args[1] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -22762,13 +21164,7 @@ func rewriteValuegeneric_OpEq64_30(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22859,13 +21255,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -22951,13 +21341,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23043,13 +21427,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23110,10 +21488,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_1_0_0_0.Args[1] { + if x != mul.Args[1] || x != v_1_0_0_0.Args[1] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -23130,10 +21505,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -23222,10 +21594,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -23314,10 +21683,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -23406,10 +21772,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 63 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 63 { break } v_1_1 := v_1.Args[1] @@ -23482,10 +21845,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_0_1_0_0.Args[1] { + if x != mul.Args[1] || x != v_0_1_0_0.Args[1] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -23502,13 +21862,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23593,13 +21947,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23684,13 +22032,7 @@ func rewriteValuegeneric_OpEq64_40(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23780,13 +22122,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 63 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 63 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(64, c).m) && s == smagic(64, c).s && x.Op != OpConst64 && sdivisibleOK(64, c)) { break } v.reset(OpLeq64U) @@ -23846,10 +22182,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } m := mul_0.AuxInt - if x != mul.Args[1] { - break - } - if x != v_0_0_0_0.Args[1] { + if x != mul.Args[1] || x != v_0_0_0_0.Args[1] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -23866,10 +22199,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -23957,10 +22287,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -24048,10 +22375,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -24139,10 +22463,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 63 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 63 { break } v_0_1 := v_0.Args[1] @@ -24201,18 +22522,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_1_0_0_1 := v_1_0_0.Args[1] - if v_1_0_0_1.Op != OpRsh64Ux64 { - break - } - if v_1_0_0_1.Type != t { + if v_1_0_0_1.Op != OpRsh64Ux64 || v_1_0_0_1.Type != t { break } _ = v_1_0_0_1.Args[1] v_1_0_0_1_0 := v_1_0_0_1.Args[0] - if v_1_0_0_1_0.Op != OpRsh64x64 { - break - } - if v_1_0_0_1_0.Type != t { + if v_1_0_0_1_0.Op != OpRsh64x64 || v_1_0_0_1_0.Type != t { break } _ = v_1_0_0_1_0.Args[1] @@ -24220,42 +22535,21 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_1_0_0_1_0_1 := v_1_0_0_1_0.Args[1] - if v_1_0_0_1_0_1.Op != OpConst64 { - break - } - if v_1_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_1_0_1.AuxInt != 63 { + if v_1_0_0_1_0_1.Op != OpConst64 || v_1_0_0_1_0_1.Type != typ.UInt64 || v_1_0_0_1_0_1.AuxInt != 63 { break } v_1_0_0_1_1 := v_1_0_0_1.Args[1] - if v_1_0_0_1_1.Op != OpConst64 { - break - } - if v_1_0_0_1_1.Type != typ.UInt64 { + if v_1_0_0_1_1.Op != OpConst64 || v_1_0_0_1_1.Type != typ.UInt64 { break } kbar := v_1_0_0_1_1.AuxInt v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 63 && kbar == 64-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 63 && kbar == 64-k) { break } v.reset(OpEq64) @@ -24293,18 +22587,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { t := v_1_0_0.Type _ = v_1_0_0.Args[1] v_1_0_0_0 := v_1_0_0.Args[0] - if v_1_0_0_0.Op != OpRsh64Ux64 { - break - } - if v_1_0_0_0.Type != t { + if v_1_0_0_0.Op != OpRsh64Ux64 || v_1_0_0_0.Type != t { break } _ = v_1_0_0_0.Args[1] v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpRsh64x64 { - break - } - if v_1_0_0_0_0.Type != t { + if v_1_0_0_0_0.Op != OpRsh64x64 || v_1_0_0_0_0.Type != t { break } _ = v_1_0_0_0_0.Args[1] @@ -24312,20 +22600,11 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 63 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.Type != typ.UInt64 || v_1_0_0_0_0_1.AuxInt != 63 { break } v_1_0_0_0_1 := v_1_0_0_0.Args[1] - if v_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_1.Type != typ.UInt64 { + if v_1_0_0_0_1.Op != OpConst64 || v_1_0_0_0_1.Type != typ.UInt64 { break } kbar := v_1_0_0_0_1.AuxInt @@ -24333,24 +22612,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 63 && kbar == 64-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 63 && kbar == 64-k) { break } v.reset(OpEq64) @@ -24390,18 +22657,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_0_1 := v_0_0_0.Args[1] - if v_0_0_0_1.Op != OpRsh64Ux64 { - break - } - if v_0_0_0_1.Type != t { + if v_0_0_0_1.Op != OpRsh64Ux64 || v_0_0_0_1.Type != t { break } _ = v_0_0_0_1.Args[1] v_0_0_0_1_0 := v_0_0_0_1.Args[0] - if v_0_0_0_1_0.Op != OpRsh64x64 { - break - } - if v_0_0_0_1_0.Type != t { + if v_0_0_0_1_0.Op != OpRsh64x64 || v_0_0_0_1_0.Type != t { break } _ = v_0_0_0_1_0.Args[1] @@ -24409,42 +22670,21 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_0_1_0_1 := v_0_0_0_1_0.Args[1] - if v_0_0_0_1_0_1.Op != OpConst64 { - break - } - if v_0_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_1_0_1.AuxInt != 63 { + if v_0_0_0_1_0_1.Op != OpConst64 || v_0_0_0_1_0_1.Type != typ.UInt64 || v_0_0_0_1_0_1.AuxInt != 63 { break } v_0_0_0_1_1 := v_0_0_0_1.Args[1] - if v_0_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_0_1_1.Type != typ.UInt64 { + if v_0_0_0_1_1.Op != OpConst64 || v_0_0_0_1_1.Type != typ.UInt64 { break } kbar := v_0_0_0_1_1.AuxInt v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 63 && kbar == 64-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 63 && kbar == 64-k) { break } v.reset(OpEq64) @@ -24481,18 +22721,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { t := v_0_0_0.Type _ = v_0_0_0.Args[1] v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpRsh64Ux64 { - break - } - if v_0_0_0_0.Type != t { + if v_0_0_0_0.Op != OpRsh64Ux64 || v_0_0_0_0.Type != t { break } _ = v_0_0_0_0.Args[1] v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpRsh64x64 { - break - } - if v_0_0_0_0_0.Type != t { + if v_0_0_0_0_0.Op != OpRsh64x64 || v_0_0_0_0_0.Type != t { break } _ = v_0_0_0_0_0.Args[1] @@ -24500,20 +22734,11 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 63 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.Type != typ.UInt64 || v_0_0_0_0_0_1.AuxInt != 63 { break } v_0_0_0_0_1 := v_0_0_0_0.Args[1] - if v_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_1.Type != typ.UInt64 { + if v_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_1.Type != typ.UInt64 { break } kbar := v_0_0_0_0_1.AuxInt @@ -24521,24 +22746,12 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { break } v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 63 && kbar == 64-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 63 && kbar == 64-k) { break } v.reset(OpEq64) @@ -24565,13 +22778,7 @@ func rewriteValuegeneric_OpEq64_50(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpEq64) @@ -24589,10 +22796,7 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -24622,24 +22826,12 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst64 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst64 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq64) @@ -24666,24 +22858,12 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst64 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst64 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq64) @@ -24710,25 +22890,13 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd64 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst64 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq64) @@ -24755,24 +22923,12 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd64 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst64 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq64) @@ -24791,7 +22947,6 @@ func rewriteValuegeneric_OpEq64_60(v *Value) bool { } func rewriteValuegeneric_OpEq64F_0(v *Value) bool { // match: (Eq64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) == auxTo64F(d))]) for { _ = v.Args[1] @@ -24810,7 +22965,6 @@ func rewriteValuegeneric_OpEq64F_0(v *Value) bool { return true } // match: (Eq64F (Const64F [d]) (Const64F [c])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) == auxTo64F(d))]) for { _ = v.Args[1] @@ -24835,7 +22989,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { config := b.Func.Config typ := &b.Func.Config.Types // match: (Eq8 x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -24847,7 +23000,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Const8 [c]) (Add8 (Const8 [d]) x)) - // cond: // result: (Eq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -24863,10 +23015,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -24878,7 +23027,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Const8 [c]) (Add8 x (Const8 [d]))) - // cond: // result: (Eq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -24895,10 +23043,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -24910,7 +23055,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Add8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Eq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -24926,10 +23070,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -24941,7 +23082,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Add8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Eq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -24958,10 +23098,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -24973,7 +23110,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -24992,7 +23128,6 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { return true } // match: (Eq8 (Const8 [d]) (Const8 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -25027,13 +23162,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(x.Op != OpConst8 && udivisibleOK(8, c) && !hasSmallRotate(config)) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(x.Op != OpConst8 && udivisibleOK(8, c) && !hasSmallRotate(config)) { break } v.reset(OpEq32) @@ -25056,10 +23185,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v_1 := v.Args[1] @@ -25107,13 +23233,7 @@ func rewriteValuegeneric_OpEq8_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(x.Op != OpConst8 && sdivisibleOK(8, c) && !hasSmallRotate(config)) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(x.Op != OpConst8 && sdivisibleOK(8, c) && !hasSmallRotate(config)) { break } v.reset(OpEq32) @@ -25142,10 +23262,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v_1 := v.Args[1] @@ -25212,10 +23329,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt8to32 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -25274,10 +23388,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -25341,10 +23452,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt8to32 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -25403,10 +23511,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -25479,10 +23584,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt8to32 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -25540,10 +23642,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -25606,10 +23705,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpZeroExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpZeroExt8to32 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -25667,10 +23763,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpZeroExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpZeroExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -25745,10 +23838,7 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt8to32 || x != mul_1.Args[0] { break } v_1_1_0_1 := v_1_1_0.Args[1] @@ -25762,20 +23852,11 @@ func rewriteValuegeneric_OpEq8_10(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt8to32 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt8to32 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { break } v.reset(OpLeq8U) @@ -25837,10 +23918,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -25859,20 +23937,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_1_1_1.Args[1] v_1_1_1_0 := v_1_1_1.Args[0] - if v_1_1_1_0.Op != OpSignExt8to32 { - break - } - if x != v_1_1_1_0.Args[0] { + if v_1_1_1_0.Op != OpSignExt8to32 || x != v_1_1_1_0.Args[0] { break } v_1_1_1_1 := v_1_1_1.Args[1] - if v_1_1_1_1.Op != OpConst64 { - break - } - if v_1_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { + if v_1_1_1_1.Op != OpConst64 || v_1_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { break } v.reset(OpLeq8U) @@ -25929,10 +23998,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt8to32 || x != mul_1.Args[0] { break } v_1_0_0_1 := v_1_0_0.Args[1] @@ -25946,17 +24012,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt8to32 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt8to32 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -26016,10 +24076,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -26038,17 +24095,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_1_0_1.Args[1] v_1_0_1_0 := v_1_0_1.Args[0] - if v_1_0_1_0.Op != OpSignExt8to32 { - break - } - if x != v_1_0_1_0.Args[0] { + if v_1_0_1_0.Op != OpSignExt8to32 || x != v_1_0_1_0.Args[0] { break } v_1_0_1_1 := v_1_0_1.Args[1] - if v_1_0_1_1.Op != OpConst64 { - break - } - if v_1_0_1_1.AuxInt != 31 { + if v_1_0_1_1.Op != OpConst64 || v_1_0_1_1.AuxInt != 31 { break } v_1_1 := v_1.Args[1] @@ -26117,10 +24168,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt8to32 || x != mul_1.Args[0] { break } v_0_1_0_1 := v_0_1_0.Args[1] @@ -26134,20 +24182,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt8to32 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt8to32 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { break } v.reset(OpLeq8U) @@ -26203,10 +24242,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -26225,20 +24261,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_0_1_1.Args[1] v_0_1_1_0 := v_0_1_1.Args[0] - if v_0_1_1_0.Op != OpSignExt8to32 { - break - } - if x != v_0_1_1_0.Args[0] { + if v_0_1_1_0.Op != OpSignExt8to32 || x != v_0_1_1_0.Args[0] { break } v_0_1_1_1 := v_0_1_1.Args[1] - if v_0_1_1_1.Op != OpConst64 { - break - } - if v_0_1_1_1.AuxInt != 31 { - break - } - if !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { + if v_0_1_1_1.Op != OpConst64 || v_0_1_1_1.AuxInt != 31 || !(v.Block.Func.pass.name != "opt" && mul.Uses == 1 && m == int64(smagic(8, c).m) && s == 8+smagic(8, c).s && x.Op != OpConst8 && sdivisibleOK(8, c)) { break } v.reset(OpLeq8U) @@ -26294,10 +24321,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } m := mul_0.AuxInt mul_1 := mul.Args[1] - if mul_1.Op != OpSignExt8to32 { - break - } - if x != mul_1.Args[0] { + if mul_1.Op != OpSignExt8to32 || x != mul_1.Args[0] { break } v_0_0_0_1 := v_0_0_0.Args[1] @@ -26311,17 +24335,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt8to32 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt8to32 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -26380,10 +24398,7 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = mul.Args[1] mul_0 := mul.Args[0] - if mul_0.Op != OpSignExt8to32 { - break - } - if x != mul_0.Args[0] { + if mul_0.Op != OpSignExt8to32 || x != mul_0.Args[0] { break } mul_1 := mul.Args[1] @@ -26402,17 +24417,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { } _ = v_0_0_1.Args[1] v_0_0_1_0 := v_0_0_1.Args[0] - if v_0_0_1_0.Op != OpSignExt8to32 { - break - } - if x != v_0_0_1_0.Args[0] { + if v_0_0_1_0.Op != OpSignExt8to32 || x != v_0_0_1_0.Args[0] { break } v_0_0_1_1 := v_0_0_1.Args[1] - if v_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_1_1.AuxInt != 31 { + if v_0_0_1_1.Op != OpConst64 || v_0_0_1_1.AuxInt != 31 { break } v_0_1 := v_0.Args[1] @@ -26471,18 +24480,12 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_1_0_0_1 := v_1_0_0.Args[1] - if v_1_0_0_1.Op != OpRsh8Ux64 { - break - } - if v_1_0_0_1.Type != t { + if v_1_0_0_1.Op != OpRsh8Ux64 || v_1_0_0_1.Type != t { break } _ = v_1_0_0_1.Args[1] v_1_0_0_1_0 := v_1_0_0_1.Args[0] - if v_1_0_0_1_0.Op != OpRsh8x64 { - break - } - if v_1_0_0_1_0.Type != t { + if v_1_0_0_1_0.Op != OpRsh8x64 || v_1_0_0_1_0.Type != t { break } _ = v_1_0_0_1_0.Args[1] @@ -26490,42 +24493,21 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_1_0_0_1_0_1 := v_1_0_0_1_0.Args[1] - if v_1_0_0_1_0_1.Op != OpConst64 { - break - } - if v_1_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_1_0_1.AuxInt != 7 { + if v_1_0_0_1_0_1.Op != OpConst64 || v_1_0_0_1_0_1.Type != typ.UInt64 || v_1_0_0_1_0_1.AuxInt != 7 { break } v_1_0_0_1_1 := v_1_0_0_1.Args[1] - if v_1_0_0_1_1.Op != OpConst64 { - break - } - if v_1_0_0_1_1.Type != typ.UInt64 { + if v_1_0_0_1_1.Op != OpConst64 || v_1_0_0_1_1.Type != typ.UInt64 { break } kbar := v_1_0_0_1_1.AuxInt v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 7 && kbar == 8-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 7 && kbar == 8-k) { break } v.reset(OpEq8) @@ -26563,18 +24545,12 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { t := v_1_0_0.Type _ = v_1_0_0.Args[1] v_1_0_0_0 := v_1_0_0.Args[0] - if v_1_0_0_0.Op != OpRsh8Ux64 { - break - } - if v_1_0_0_0.Type != t { + if v_1_0_0_0.Op != OpRsh8Ux64 || v_1_0_0_0.Type != t { break } _ = v_1_0_0_0.Args[1] v_1_0_0_0_0 := v_1_0_0_0.Args[0] - if v_1_0_0_0_0.Op != OpRsh8x64 { - break - } - if v_1_0_0_0_0.Type != t { + if v_1_0_0_0_0.Op != OpRsh8x64 || v_1_0_0_0_0.Type != t { break } _ = v_1_0_0_0_0.Args[1] @@ -26582,20 +24558,11 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_1_0_0_0_0_1 := v_1_0_0_0_0.Args[1] - if v_1_0_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_1_0_0_0_0_1.AuxInt != 7 { + if v_1_0_0_0_0_1.Op != OpConst64 || v_1_0_0_0_0_1.Type != typ.UInt64 || v_1_0_0_0_0_1.AuxInt != 7 { break } v_1_0_0_0_1 := v_1_0_0_0.Args[1] - if v_1_0_0_0_1.Op != OpConst64 { - break - } - if v_1_0_0_0_1.Type != typ.UInt64 { + if v_1_0_0_0_1.Op != OpConst64 || v_1_0_0_0_1.Type != typ.UInt64 { break } kbar := v_1_0_0_0_1.AuxInt @@ -26603,24 +24570,12 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_1_0_1 := v_1_0.Args[1] - if v_1_0_1.Op != OpConst64 { - break - } - if v_1_0_1.Type != typ.UInt64 { + if v_1_0_1.Op != OpConst64 || v_1_0_1.Type != typ.UInt64 { break } k := v_1_0_1.AuxInt v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != typ.UInt64 { - break - } - if v_1_1.AuxInt != k { - break - } - if !(k > 0 && k < 7 && kbar == 8-k) { + if v_1_1.Op != OpConst64 || v_1_1.Type != typ.UInt64 || v_1_1.AuxInt != k || !(k > 0 && k < 7 && kbar == 8-k) { break } v.reset(OpEq8) @@ -26660,18 +24615,12 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_0_0_0_1 := v_0_0_0.Args[1] - if v_0_0_0_1.Op != OpRsh8Ux64 { - break - } - if v_0_0_0_1.Type != t { + if v_0_0_0_1.Op != OpRsh8Ux64 || v_0_0_0_1.Type != t { break } _ = v_0_0_0_1.Args[1] v_0_0_0_1_0 := v_0_0_0_1.Args[0] - if v_0_0_0_1_0.Op != OpRsh8x64 { - break - } - if v_0_0_0_1_0.Type != t { + if v_0_0_0_1_0.Op != OpRsh8x64 || v_0_0_0_1_0.Type != t { break } _ = v_0_0_0_1_0.Args[1] @@ -26679,42 +24628,21 @@ func rewriteValuegeneric_OpEq8_20(v *Value) bool { break } v_0_0_0_1_0_1 := v_0_0_0_1_0.Args[1] - if v_0_0_0_1_0_1.Op != OpConst64 { - break - } - if v_0_0_0_1_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_1_0_1.AuxInt != 7 { + if v_0_0_0_1_0_1.Op != OpConst64 || v_0_0_0_1_0_1.Type != typ.UInt64 || v_0_0_0_1_0_1.AuxInt != 7 { break } v_0_0_0_1_1 := v_0_0_0_1.Args[1] - if v_0_0_0_1_1.Op != OpConst64 { - break - } - if v_0_0_0_1_1.Type != typ.UInt64 { + if v_0_0_0_1_1.Op != OpConst64 || v_0_0_0_1_1.Type != typ.UInt64 { break } kbar := v_0_0_0_1_1.AuxInt v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 7 && kbar == 8-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 7 && kbar == 8-k) { break } v.reset(OpEq8) @@ -26756,18 +24684,12 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { t := v_0_0_0.Type _ = v_0_0_0.Args[1] v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpRsh8Ux64 { - break - } - if v_0_0_0_0.Type != t { + if v_0_0_0_0.Op != OpRsh8Ux64 || v_0_0_0_0.Type != t { break } _ = v_0_0_0_0.Args[1] v_0_0_0_0_0 := v_0_0_0_0.Args[0] - if v_0_0_0_0_0.Op != OpRsh8x64 { - break - } - if v_0_0_0_0_0.Type != t { + if v_0_0_0_0_0.Op != OpRsh8x64 || v_0_0_0_0_0.Type != t { break } _ = v_0_0_0_0_0.Args[1] @@ -26775,20 +24697,11 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { break } v_0_0_0_0_0_1 := v_0_0_0_0_0.Args[1] - if v_0_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_0_1.Type != typ.UInt64 { - break - } - if v_0_0_0_0_0_1.AuxInt != 7 { + if v_0_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_0_1.Type != typ.UInt64 || v_0_0_0_0_0_1.AuxInt != 7 { break } v_0_0_0_0_1 := v_0_0_0_0.Args[1] - if v_0_0_0_0_1.Op != OpConst64 { - break - } - if v_0_0_0_0_1.Type != typ.UInt64 { + if v_0_0_0_0_1.Op != OpConst64 || v_0_0_0_0_1.Type != typ.UInt64 { break } kbar := v_0_0_0_0_1.AuxInt @@ -26796,24 +24709,12 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { break } v_0_0_1 := v_0_0.Args[1] - if v_0_0_1.Op != OpConst64 { - break - } - if v_0_0_1.Type != typ.UInt64 { + if v_0_0_1.Op != OpConst64 || v_0_0_1.Type != typ.UInt64 { break } k := v_0_0_1.AuxInt v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != typ.UInt64 { - break - } - if v_0_1.AuxInt != k { - break - } - if !(k > 0 && k < 7 && kbar == 8-k) { + if v_0_1.Op != OpConst64 || v_0_1.Type != typ.UInt64 || v_0_1.AuxInt != k || !(k > 0 && k < 7 && kbar == 8-k) { break } v.reset(OpEq8) @@ -26840,13 +24741,7 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpEq8) @@ -26860,10 +24755,7 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -26893,24 +24785,12 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst8 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst8 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst8 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq8) @@ -26937,24 +24817,12 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst8 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst8 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst8 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq8) @@ -26981,25 +24849,13 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd8 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd8 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst8 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq8) @@ -27026,24 +24882,12 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd8 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd8 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst8 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpNeq8) @@ -27062,7 +24906,6 @@ func rewriteValuegeneric_OpEq8_30(v *Value) bool { } func rewriteValuegeneric_OpEqB_0(v *Value) bool { // match: (EqB (ConstBool [c]) (ConstBool [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27081,7 +24924,6 @@ func rewriteValuegeneric_OpEqB_0(v *Value) bool { return true } // match: (EqB (ConstBool [d]) (ConstBool [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27100,15 +24942,11 @@ func rewriteValuegeneric_OpEqB_0(v *Value) bool { return true } // match: (EqB (ConstBool [0]) x) - // cond: // result: (Not x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConstBool { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConstBool || v_0.AuxInt != 0 { break } v.reset(OpNot) @@ -27116,16 +24954,12 @@ func rewriteValuegeneric_OpEqB_0(v *Value) bool { return true } // match: (EqB x (ConstBool [0])) - // cond: // result: (Not x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConstBool { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConstBool || v_1.AuxInt != 0 { break } v.reset(OpNot) @@ -27133,15 +24967,11 @@ func rewriteValuegeneric_OpEqB_0(v *Value) bool { return true } // match: (EqB (ConstBool [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConstBool { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConstBool || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -27150,16 +24980,12 @@ func rewriteValuegeneric_OpEqB_0(v *Value) bool { return true } // match: (EqB x (ConstBool [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConstBool { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConstBool || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -27173,7 +24999,6 @@ func rewriteValuegeneric_OpEqInter_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqInter x y) - // cond: // result: (EqPtr (ITab x) (ITab y)) for { y := v.Args[1] @@ -27190,7 +25015,6 @@ func rewriteValuegeneric_OpEqInter_0(v *Value) bool { } func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { // match: (EqPtr x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -27202,7 +25026,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (Addr {a} _) (Addr {b} _)) - // cond: // result: (ConstBool [b2i(a == b)]) for { _ = v.Args[1] @@ -27221,7 +25044,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (Addr {b} _) (Addr {a} _)) - // cond: // result: (ConstBool [b2i(a == b)]) for { _ = v.Args[1] @@ -27240,7 +25062,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (Addr {a} _) (OffPtr [o] (Addr {b} _))) - // cond: // result: (ConstBool [b2i(a == b && o == 0)]) for { _ = v.Args[1] @@ -27264,7 +25085,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (OffPtr [o] (Addr {b} _)) (Addr {a} _)) - // cond: // result: (ConstBool [b2i(a == b && o == 0)]) for { _ = v.Args[1] @@ -27288,7 +25108,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (OffPtr [o1] (Addr {a} _)) (OffPtr [o2] (Addr {b} _))) - // cond: // result: (ConstBool [b2i(a == b && o1 == o2)]) for { _ = v.Args[1] @@ -27317,7 +25136,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (OffPtr [o2] (Addr {b} _)) (OffPtr [o1] (Addr {a} _))) - // cond: // result: (ConstBool [b2i(a == b && o1 == o2)]) for { _ = v.Args[1] @@ -27346,7 +25164,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (LocalAddr {a} _ _) (LocalAddr {b} _ _)) - // cond: // result: (ConstBool [b2i(a == b)]) for { _ = v.Args[1] @@ -27367,7 +25184,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (LocalAddr {b} _ _) (LocalAddr {a} _ _)) - // cond: // result: (ConstBool [b2i(a == b)]) for { _ = v.Args[1] @@ -27388,7 +25204,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { return true } // match: (EqPtr (LocalAddr {a} _ _) (OffPtr [o] (LocalAddr {b} _ _))) - // cond: // result: (ConstBool [b2i(a == b && o == 0)]) for { _ = v.Args[1] @@ -27417,7 +25232,6 @@ func rewriteValuegeneric_OpEqPtr_0(v *Value) bool { } func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { // match: (EqPtr (OffPtr [o] (LocalAddr {b} _ _)) (LocalAddr {a} _ _)) - // cond: // result: (ConstBool [b2i(a == b && o == 0)]) for { _ = v.Args[1] @@ -27443,7 +25257,6 @@ func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { return true } // match: (EqPtr (OffPtr [o1] (LocalAddr {a} _ _)) (OffPtr [o2] (LocalAddr {b} _ _))) - // cond: // result: (ConstBool [b2i(a == b && o1 == o2)]) for { _ = v.Args[1] @@ -27474,7 +25287,6 @@ func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { return true } // match: (EqPtr (OffPtr [o2] (LocalAddr {b} _ _)) (OffPtr [o1] (LocalAddr {a} _ _))) - // cond: // result: (ConstBool [b2i(a == b && o1 == o2)]) for { _ = v.Args[1] @@ -27590,7 +25402,6 @@ func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { return true } // match: (EqPtr (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27609,7 +25420,6 @@ func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { return true } // match: (EqPtr (Const32 [d]) (Const32 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27628,7 +25438,6 @@ func rewriteValuegeneric_OpEqPtr_10(v *Value) bool { return true } // match: (EqPtr (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27652,7 +25461,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqPtr (Const64 [d]) (Const64 [c])) - // cond: // result: (ConstBool [b2i(c == d)]) for { _ = v.Args[1] @@ -27671,7 +25479,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (LocalAddr _ _) (Addr _)) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27689,7 +25496,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (Addr _) (LocalAddr _ _)) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27707,7 +25513,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (OffPtr (LocalAddr _ _)) (Addr _)) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27729,7 +25534,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (Addr _) (OffPtr (LocalAddr _ _))) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27751,7 +25555,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (LocalAddr _ _) (OffPtr (Addr _))) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27773,7 +25576,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (OffPtr (Addr _)) (LocalAddr _ _)) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27795,7 +25597,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (OffPtr (LocalAddr _ _)) (OffPtr (Addr _))) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27821,7 +25622,6 @@ func rewriteValuegeneric_OpEqPtr_20(v *Value) bool { return true } // match: (EqPtr (OffPtr (Addr _)) (OffPtr (LocalAddr _ _))) - // cond: // result: (ConstBool [0]) for { _ = v.Args[1] @@ -27893,15 +25693,11 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr (Const32 [0]) p) - // cond: // result: (Not (IsNonNil p)) for { p := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpNot) @@ -27911,16 +25707,12 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr p (Const32 [0])) - // cond: // result: (Not (IsNonNil p)) for { _ = v.Args[1] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpNot) @@ -27930,15 +25722,11 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr (Const64 [0]) p) - // cond: // result: (Not (IsNonNil p)) for { p := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpNot) @@ -27948,16 +25736,12 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr p (Const64 [0])) - // cond: // result: (Not (IsNonNil p)) for { _ = v.Args[1] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpNot) @@ -27967,7 +25751,6 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr (ConstNil) p) - // cond: // result: (Not (IsNonNil p)) for { p := v.Args[1] @@ -27982,7 +25765,6 @@ func rewriteValuegeneric_OpEqPtr_30(v *Value) bool { return true } // match: (EqPtr p (ConstNil)) - // cond: // result: (Not (IsNonNil p)) for { _ = v.Args[1] @@ -28003,7 +25785,6 @@ func rewriteValuegeneric_OpEqSlice_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (EqSlice x y) - // cond: // result: (EqPtr (SlicePtr x) (SlicePtr y)) for { y := v.Args[1] @@ -28020,7 +25801,6 @@ func rewriteValuegeneric_OpEqSlice_0(v *Value) bool { } func rewriteValuegeneric_OpGeq16_0(v *Value) bool { // match: (Geq16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c >= d)]) for { _ = v.Args[1] @@ -28054,13 +25834,7 @@ func rewriteValuegeneric_OpGeq16_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int16(c) >= 0) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(int16(c) >= 0) { break } v.reset(OpConstBool) @@ -28083,13 +25857,7 @@ func rewriteValuegeneric_OpGeq16_0(v *Value) bool { } c := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int16(c) >= 0) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(int16(c) >= 0) { break } v.reset(OpConstBool) @@ -28100,7 +25868,6 @@ func rewriteValuegeneric_OpGeq16_0(v *Value) bool { } func rewriteValuegeneric_OpGeq16U_0(v *Value) bool { // match: (Geq16U (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(uint16(c) >= uint16(d))]) for { _ = v.Args[1] @@ -28122,7 +25889,6 @@ func rewriteValuegeneric_OpGeq16U_0(v *Value) bool { } func rewriteValuegeneric_OpGeq32_0(v *Value) bool { // match: (Geq32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c >= d)]) for { _ = v.Args[1] @@ -28156,13 +25922,7 @@ func rewriteValuegeneric_OpGeq32_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int32(c) >= 0) { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 || !(int32(c) >= 0) { break } v.reset(OpConstBool) @@ -28185,13 +25945,7 @@ func rewriteValuegeneric_OpGeq32_0(v *Value) bool { } c := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int32(c) >= 0) { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 || !(int32(c) >= 0) { break } v.reset(OpConstBool) @@ -28202,7 +25956,6 @@ func rewriteValuegeneric_OpGeq32_0(v *Value) bool { } func rewriteValuegeneric_OpGeq32F_0(v *Value) bool { // match: (Geq32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) >= auxTo32F(d))]) for { _ = v.Args[1] @@ -28224,7 +25977,6 @@ func rewriteValuegeneric_OpGeq32F_0(v *Value) bool { } func rewriteValuegeneric_OpGeq32U_0(v *Value) bool { // match: (Geq32U (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(uint32(c) >= uint32(d))]) for { _ = v.Args[1] @@ -28246,7 +25998,6 @@ func rewriteValuegeneric_OpGeq32U_0(v *Value) bool { } func rewriteValuegeneric_OpGeq64_0(v *Value) bool { // match: (Geq64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c >= d)]) for { _ = v.Args[1] @@ -28280,13 +26031,7 @@ func rewriteValuegeneric_OpGeq64_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int64(c) >= 0) { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 || !(int64(c) >= 0) { break } v.reset(OpConstBool) @@ -28309,13 +26054,7 @@ func rewriteValuegeneric_OpGeq64_0(v *Value) bool { } c := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int64(c) >= 0) { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 || !(int64(c) >= 0) { break } v.reset(OpConstBool) @@ -28338,13 +26077,7 @@ func rewriteValuegeneric_OpGeq64_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(c > 0) { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 || !(c > 0) { break } v.reset(OpConstBool) @@ -28355,7 +26088,6 @@ func rewriteValuegeneric_OpGeq64_0(v *Value) bool { } func rewriteValuegeneric_OpGeq64F_0(v *Value) bool { // match: (Geq64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) >= auxTo64F(d))]) for { _ = v.Args[1] @@ -28377,7 +26109,6 @@ func rewriteValuegeneric_OpGeq64F_0(v *Value) bool { } func rewriteValuegeneric_OpGeq64U_0(v *Value) bool { // match: (Geq64U (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(uint64(c) >= uint64(d))]) for { _ = v.Args[1] @@ -28399,7 +26130,6 @@ func rewriteValuegeneric_OpGeq64U_0(v *Value) bool { } func rewriteValuegeneric_OpGeq8_0(v *Value) bool { // match: (Geq8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c >= d)]) for { _ = v.Args[1] @@ -28433,13 +26163,7 @@ func rewriteValuegeneric_OpGeq8_0(v *Value) bool { } c := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int8(c) >= 0) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(int8(c) >= 0) { break } v.reset(OpConstBool) @@ -28462,13 +26186,7 @@ func rewriteValuegeneric_OpGeq8_0(v *Value) bool { } c := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(int8(c) >= 0) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(int8(c) >= 0) { break } v.reset(OpConstBool) @@ -28479,7 +26197,6 @@ func rewriteValuegeneric_OpGeq8_0(v *Value) bool { } func rewriteValuegeneric_OpGeq8U_0(v *Value) bool { // match: (Geq8U (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(uint8(c) >= uint8(d))]) for { _ = v.Args[1] @@ -28501,7 +26218,6 @@ func rewriteValuegeneric_OpGeq8U_0(v *Value) bool { } func rewriteValuegeneric_OpGreater16_0(v *Value) bool { // match: (Greater16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c > d)]) for { _ = v.Args[1] @@ -28523,7 +26239,6 @@ func rewriteValuegeneric_OpGreater16_0(v *Value) bool { } func rewriteValuegeneric_OpGreater16U_0(v *Value) bool { // match: (Greater16U (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(uint16(c) > uint16(d))]) for { _ = v.Args[1] @@ -28545,7 +26260,6 @@ func rewriteValuegeneric_OpGreater16U_0(v *Value) bool { } func rewriteValuegeneric_OpGreater32_0(v *Value) bool { // match: (Greater32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c > d)]) for { _ = v.Args[1] @@ -28567,7 +26281,6 @@ func rewriteValuegeneric_OpGreater32_0(v *Value) bool { } func rewriteValuegeneric_OpGreater32F_0(v *Value) bool { // match: (Greater32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) > auxTo32F(d))]) for { _ = v.Args[1] @@ -28589,7 +26302,6 @@ func rewriteValuegeneric_OpGreater32F_0(v *Value) bool { } func rewriteValuegeneric_OpGreater32U_0(v *Value) bool { // match: (Greater32U (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(uint32(c) > uint32(d))]) for { _ = v.Args[1] @@ -28611,7 +26323,6 @@ func rewriteValuegeneric_OpGreater32U_0(v *Value) bool { } func rewriteValuegeneric_OpGreater64_0(v *Value) bool { // match: (Greater64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c > d)]) for { _ = v.Args[1] @@ -28633,7 +26344,6 @@ func rewriteValuegeneric_OpGreater64_0(v *Value) bool { } func rewriteValuegeneric_OpGreater64F_0(v *Value) bool { // match: (Greater64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) > auxTo64F(d))]) for { _ = v.Args[1] @@ -28655,7 +26365,6 @@ func rewriteValuegeneric_OpGreater64F_0(v *Value) bool { } func rewriteValuegeneric_OpGreater64U_0(v *Value) bool { // match: (Greater64U (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(uint64(c) > uint64(d))]) for { _ = v.Args[1] @@ -28677,7 +26386,6 @@ func rewriteValuegeneric_OpGreater64U_0(v *Value) bool { } func rewriteValuegeneric_OpGreater8_0(v *Value) bool { // match: (Greater8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c > d)]) for { _ = v.Args[1] @@ -28699,7 +26407,6 @@ func rewriteValuegeneric_OpGreater8_0(v *Value) bool { } func rewriteValuegeneric_OpGreater8U_0(v *Value) bool { // match: (Greater8U (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(uint8(c) > uint8(d))]) for { _ = v.Args[1] @@ -28721,7 +26428,6 @@ func rewriteValuegeneric_OpGreater8U_0(v *Value) bool { } func rewriteValuegeneric_OpIMake_0(v *Value) bool { // match: (IMake typ (StructMake1 val)) - // cond: // result: (IMake typ val) for { _ = v.Args[1] @@ -28737,7 +26443,6 @@ func rewriteValuegeneric_OpIMake_0(v *Value) bool { return true } // match: (IMake typ (ArrayMake1 val)) - // cond: // result: (IMake typ val) for { _ = v.Args[1] @@ -28786,10 +26491,7 @@ func rewriteValuegeneric_OpInterCall_0(v *Value) bool { } itab := v_0_0_0_0_0.Aux v_0_0_0_0_0_0 := v_0_0_0_0_0.Args[0] - if v_0_0_0_0_0_0.Op != OpSB { - break - } - if !(devirt(v, itab, off) != nil) { + if v_0_0_0_0_0_0.Op != OpSB || !(devirt(v, itab, off) != nil) { break } v.reset(OpStaticCall) @@ -28886,7 +26588,6 @@ func rewriteValuegeneric_OpIsInBounds_0(v *Value) bool { return true } // match: (IsInBounds x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -29492,7 +27193,6 @@ func rewriteValuegeneric_OpIsInBounds_20(v *Value) bool { return true } // match: (IsInBounds (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(0 <= c && c < d)]) for { _ = v.Args[1] @@ -29511,7 +27211,6 @@ func rewriteValuegeneric_OpIsInBounds_20(v *Value) bool { return true } // match: (IsInBounds (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(0 <= c && c < d)]) for { _ = v.Args[1] @@ -29530,7 +27229,6 @@ func rewriteValuegeneric_OpIsInBounds_20(v *Value) bool { return true } // match: (IsInBounds (Mod32u _ y) y) - // cond: // result: (ConstBool [1]) for { y := v.Args[1] @@ -29547,7 +27245,6 @@ func rewriteValuegeneric_OpIsInBounds_20(v *Value) bool { return true } // match: (IsInBounds (Mod64u _ y) y) - // cond: // result: (ConstBool [1]) for { y := v.Args[1] @@ -29864,7 +27561,6 @@ func rewriteValuegeneric_OpIsInBounds_30(v *Value) bool { } func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { // match: (IsNonNil (ConstNil)) - // cond: // result: (ConstBool [0]) for { v_0 := v.Args[0] @@ -29876,7 +27572,6 @@ func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { return true } // match: (IsNonNil (Const32 [c])) - // cond: // result: (ConstBool [b2i(c != 0)]) for { v_0 := v.Args[0] @@ -29889,7 +27584,6 @@ func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { return true } // match: (IsNonNil (Const64 [c])) - // cond: // result: (ConstBool [b2i(c != 0)]) for { v_0 := v.Args[0] @@ -29902,7 +27596,6 @@ func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { return true } // match: (IsNonNil (Addr _)) - // cond: // result: (ConstBool [1]) for { v_0 := v.Args[0] @@ -29914,7 +27607,6 @@ func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { return true } // match: (IsNonNil (LocalAddr _ _)) - // cond: // result: (ConstBool [1]) for { v_0 := v.Args[0] @@ -29930,7 +27622,6 @@ func rewriteValuegeneric_OpIsNonNil_0(v *Value) bool { } func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { // match: (IsSliceInBounds x x) - // cond: // result: (ConstBool [1]) for { x := v.Args[1] @@ -30050,15 +27741,11 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { return true } // match: (IsSliceInBounds (Const32 [0]) _) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConstBool) @@ -30066,15 +27753,11 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { return true } // match: (IsSliceInBounds (Const64 [0]) _) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConstBool) @@ -30082,7 +27765,6 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { return true } // match: (IsSliceInBounds (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(0 <= c && c <= d)]) for { _ = v.Args[1] @@ -30101,7 +27783,6 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { return true } // match: (IsSliceInBounds (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(0 <= c && c <= d)]) for { _ = v.Args[1] @@ -30120,7 +27801,6 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { return true } // match: (IsSliceInBounds (SliceLen x) (SliceCap x)) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -30130,10 +27810,7 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { } x := v_0.Args[0] v_1 := v.Args[1] - if v_1.Op != OpSliceCap { - break - } - if x != v_1.Args[0] { + if v_1.Op != OpSliceCap || x != v_1.Args[0] { break } v.reset(OpConstBool) @@ -30144,7 +27821,6 @@ func rewriteValuegeneric_OpIsSliceInBounds_0(v *Value) bool { } func rewriteValuegeneric_OpLeq16_0(v *Value) bool { // match: (Leq16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c <= d)]) for { _ = v.Args[1] @@ -30166,7 +27842,6 @@ func rewriteValuegeneric_OpLeq16_0(v *Value) bool { } func rewriteValuegeneric_OpLeq16U_0(v *Value) bool { // match: (Leq16U (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(uint16(c) <= uint16(d))]) for { _ = v.Args[1] @@ -30188,7 +27863,6 @@ func rewriteValuegeneric_OpLeq16U_0(v *Value) bool { } func rewriteValuegeneric_OpLeq32_0(v *Value) bool { // match: (Leq32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c <= d)]) for { _ = v.Args[1] @@ -30210,7 +27884,6 @@ func rewriteValuegeneric_OpLeq32_0(v *Value) bool { } func rewriteValuegeneric_OpLeq32F_0(v *Value) bool { // match: (Leq32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) <= auxTo32F(d))]) for { _ = v.Args[1] @@ -30232,7 +27905,6 @@ func rewriteValuegeneric_OpLeq32F_0(v *Value) bool { } func rewriteValuegeneric_OpLeq32U_0(v *Value) bool { // match: (Leq32U (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(uint32(c) <= uint32(d))]) for { _ = v.Args[1] @@ -30254,7 +27926,6 @@ func rewriteValuegeneric_OpLeq32U_0(v *Value) bool { } func rewriteValuegeneric_OpLeq64_0(v *Value) bool { // match: (Leq64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c <= d)]) for { _ = v.Args[1] @@ -30276,7 +27947,6 @@ func rewriteValuegeneric_OpLeq64_0(v *Value) bool { } func rewriteValuegeneric_OpLeq64F_0(v *Value) bool { // match: (Leq64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) <= auxTo64F(d))]) for { _ = v.Args[1] @@ -30298,7 +27968,6 @@ func rewriteValuegeneric_OpLeq64F_0(v *Value) bool { } func rewriteValuegeneric_OpLeq64U_0(v *Value) bool { // match: (Leq64U (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(uint64(c) <= uint64(d))]) for { _ = v.Args[1] @@ -30320,7 +27989,6 @@ func rewriteValuegeneric_OpLeq64U_0(v *Value) bool { } func rewriteValuegeneric_OpLeq8_0(v *Value) bool { // match: (Leq8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c <= d)]) for { _ = v.Args[1] @@ -30342,7 +28010,6 @@ func rewriteValuegeneric_OpLeq8_0(v *Value) bool { } func rewriteValuegeneric_OpLeq8U_0(v *Value) bool { // match: (Leq8U (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(uint8(c) <= uint8(d))]) for { _ = v.Args[1] @@ -30364,7 +28031,6 @@ func rewriteValuegeneric_OpLeq8U_0(v *Value) bool { } func rewriteValuegeneric_OpLess16_0(v *Value) bool { // match: (Less16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c < d)]) for { _ = v.Args[1] @@ -30386,7 +28052,6 @@ func rewriteValuegeneric_OpLess16_0(v *Value) bool { } func rewriteValuegeneric_OpLess16U_0(v *Value) bool { // match: (Less16U (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(uint16(c) < uint16(d))]) for { _ = v.Args[1] @@ -30408,7 +28073,6 @@ func rewriteValuegeneric_OpLess16U_0(v *Value) bool { } func rewriteValuegeneric_OpLess32_0(v *Value) bool { // match: (Less32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c < d)]) for { _ = v.Args[1] @@ -30430,7 +28094,6 @@ func rewriteValuegeneric_OpLess32_0(v *Value) bool { } func rewriteValuegeneric_OpLess32F_0(v *Value) bool { // match: (Less32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) < auxTo32F(d))]) for { _ = v.Args[1] @@ -30452,7 +28115,6 @@ func rewriteValuegeneric_OpLess32F_0(v *Value) bool { } func rewriteValuegeneric_OpLess32U_0(v *Value) bool { // match: (Less32U (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(uint32(c) < uint32(d))]) for { _ = v.Args[1] @@ -30474,7 +28136,6 @@ func rewriteValuegeneric_OpLess32U_0(v *Value) bool { } func rewriteValuegeneric_OpLess64_0(v *Value) bool { // match: (Less64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c < d)]) for { _ = v.Args[1] @@ -30496,7 +28157,6 @@ func rewriteValuegeneric_OpLess64_0(v *Value) bool { } func rewriteValuegeneric_OpLess64F_0(v *Value) bool { // match: (Less64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) < auxTo64F(d))]) for { _ = v.Args[1] @@ -30518,7 +28178,6 @@ func rewriteValuegeneric_OpLess64F_0(v *Value) bool { } func rewriteValuegeneric_OpLess64U_0(v *Value) bool { // match: (Less64U (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(uint64(c) < uint64(d))]) for { _ = v.Args[1] @@ -30540,7 +28199,6 @@ func rewriteValuegeneric_OpLess64U_0(v *Value) bool { } func rewriteValuegeneric_OpLess8_0(v *Value) bool { // match: (Less8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c < d)]) for { _ = v.Args[1] @@ -30562,7 +28220,6 @@ func rewriteValuegeneric_OpLess8_0(v *Value) bool { } func rewriteValuegeneric_OpLess8U_0(v *Value) bool { // match: (Less8U (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(uint8(c) < uint8(d))]) for { _ = v.Args[1] @@ -31385,7 +29042,6 @@ func rewriteValuegeneric_OpLoad_20(v *Value) bool { func rewriteValuegeneric_OpLsh16x16_0(v *Value) bool { b := v.Block // match: (Lsh16x16 x (Const16 [c])) - // cond: // result: (Lsh16x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -31404,15 +29060,11 @@ func rewriteValuegeneric_OpLsh16x16_0(v *Value) bool { return true } // match: (Lsh16x16 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -31424,7 +29076,6 @@ func rewriteValuegeneric_OpLsh16x16_0(v *Value) bool { func rewriteValuegeneric_OpLsh16x32_0(v *Value) bool { b := v.Block // match: (Lsh16x32 x (Const32 [c])) - // cond: // result: (Lsh16x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -31443,15 +29094,11 @@ func rewriteValuegeneric_OpLsh16x32_0(v *Value) bool { return true } // match: (Lsh16x32 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -31464,7 +29111,6 @@ func rewriteValuegeneric_OpLsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh16x64 (Const16 [c]) (Const64 [d])) - // cond: // result: (Const16 [int64(int16(c) << uint64(d))]) for { _ = v.Args[1] @@ -31483,16 +29129,12 @@ func rewriteValuegeneric_OpLsh16x64_0(v *Value) bool { return true } // match: (Lsh16x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -31501,15 +29143,11 @@ func rewriteValuegeneric_OpLsh16x64_0(v *Value) bool { return true } // match: (Lsh16x64 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -31611,7 +29249,6 @@ func rewriteValuegeneric_OpLsh16x64_0(v *Value) bool { func rewriteValuegeneric_OpLsh16x8_0(v *Value) bool { b := v.Block // match: (Lsh16x8 x (Const8 [c])) - // cond: // result: (Lsh16x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -31630,15 +29267,11 @@ func rewriteValuegeneric_OpLsh16x8_0(v *Value) bool { return true } // match: (Lsh16x8 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -31650,7 +29283,6 @@ func rewriteValuegeneric_OpLsh16x8_0(v *Value) bool { func rewriteValuegeneric_OpLsh32x16_0(v *Value) bool { b := v.Block // match: (Lsh32x16 x (Const16 [c])) - // cond: // result: (Lsh32x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -31669,15 +29301,11 @@ func rewriteValuegeneric_OpLsh32x16_0(v *Value) bool { return true } // match: (Lsh32x16 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -31689,7 +29317,6 @@ func rewriteValuegeneric_OpLsh32x16_0(v *Value) bool { func rewriteValuegeneric_OpLsh32x32_0(v *Value) bool { b := v.Block // match: (Lsh32x32 x (Const32 [c])) - // cond: // result: (Lsh32x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -31708,15 +29335,11 @@ func rewriteValuegeneric_OpLsh32x32_0(v *Value) bool { return true } // match: (Lsh32x32 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -31729,7 +29352,6 @@ func rewriteValuegeneric_OpLsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh32x64 (Const32 [c]) (Const64 [d])) - // cond: // result: (Const32 [int64(int32(c) << uint64(d))]) for { _ = v.Args[1] @@ -31748,16 +29370,12 @@ func rewriteValuegeneric_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -31766,15 +29384,11 @@ func rewriteValuegeneric_OpLsh32x64_0(v *Value) bool { return true } // match: (Lsh32x64 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -31876,7 +29490,6 @@ func rewriteValuegeneric_OpLsh32x64_0(v *Value) bool { func rewriteValuegeneric_OpLsh32x8_0(v *Value) bool { b := v.Block // match: (Lsh32x8 x (Const8 [c])) - // cond: // result: (Lsh32x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -31895,15 +29508,11 @@ func rewriteValuegeneric_OpLsh32x8_0(v *Value) bool { return true } // match: (Lsh32x8 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -31915,7 +29524,6 @@ func rewriteValuegeneric_OpLsh32x8_0(v *Value) bool { func rewriteValuegeneric_OpLsh64x16_0(v *Value) bool { b := v.Block // match: (Lsh64x16 x (Const16 [c])) - // cond: // result: (Lsh64x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -31934,15 +29542,11 @@ func rewriteValuegeneric_OpLsh64x16_0(v *Value) bool { return true } // match: (Lsh64x16 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -31954,7 +29558,6 @@ func rewriteValuegeneric_OpLsh64x16_0(v *Value) bool { func rewriteValuegeneric_OpLsh64x32_0(v *Value) bool { b := v.Block // match: (Lsh64x32 x (Const32 [c])) - // cond: // result: (Lsh64x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -31973,15 +29576,11 @@ func rewriteValuegeneric_OpLsh64x32_0(v *Value) bool { return true } // match: (Lsh64x32 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -31994,7 +29593,6 @@ func rewriteValuegeneric_OpLsh64x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh64x64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c << uint64(d)]) for { _ = v.Args[1] @@ -32013,16 +29611,12 @@ func rewriteValuegeneric_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -32031,15 +29625,11 @@ func rewriteValuegeneric_OpLsh64x64_0(v *Value) bool { return true } // match: (Lsh64x64 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -32141,7 +29731,6 @@ func rewriteValuegeneric_OpLsh64x64_0(v *Value) bool { func rewriteValuegeneric_OpLsh64x8_0(v *Value) bool { b := v.Block // match: (Lsh64x8 x (Const8 [c])) - // cond: // result: (Lsh64x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -32160,15 +29749,11 @@ func rewriteValuegeneric_OpLsh64x8_0(v *Value) bool { return true } // match: (Lsh64x8 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -32180,7 +29765,6 @@ func rewriteValuegeneric_OpLsh64x8_0(v *Value) bool { func rewriteValuegeneric_OpLsh8x16_0(v *Value) bool { b := v.Block // match: (Lsh8x16 x (Const16 [c])) - // cond: // result: (Lsh8x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -32199,15 +29783,11 @@ func rewriteValuegeneric_OpLsh8x16_0(v *Value) bool { return true } // match: (Lsh8x16 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -32219,7 +29799,6 @@ func rewriteValuegeneric_OpLsh8x16_0(v *Value) bool { func rewriteValuegeneric_OpLsh8x32_0(v *Value) bool { b := v.Block // match: (Lsh8x32 x (Const32 [c])) - // cond: // result: (Lsh8x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -32238,15 +29817,11 @@ func rewriteValuegeneric_OpLsh8x32_0(v *Value) bool { return true } // match: (Lsh8x32 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -32259,7 +29834,6 @@ func rewriteValuegeneric_OpLsh8x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Lsh8x64 (Const8 [c]) (Const64 [d])) - // cond: // result: (Const8 [int64(int8(c) << uint64(d))]) for { _ = v.Args[1] @@ -32278,16 +29852,12 @@ func rewriteValuegeneric_OpLsh8x64_0(v *Value) bool { return true } // match: (Lsh8x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -32296,15 +29866,11 @@ func rewriteValuegeneric_OpLsh8x64_0(v *Value) bool { return true } // match: (Lsh8x64 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -32406,7 +29972,6 @@ func rewriteValuegeneric_OpLsh8x64_0(v *Value) bool { func rewriteValuegeneric_OpLsh8x8_0(v *Value) bool { b := v.Block // match: (Lsh8x8 x (Const8 [c])) - // cond: // result: (Lsh8x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -32425,15 +29990,11 @@ func rewriteValuegeneric_OpLsh8x8_0(v *Value) bool { return true } // match: (Lsh8x8 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -32853,13 +30414,7 @@ func rewriteValuegeneric_OpMod64_0(v *Value) bool { _ = v.Args[1] n := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1<<63 { - break - } - if !(isNonNegative(n)) { + if v_1.Op != OpConst64 || v_1.AuxInt != -1<<63 || !(isNonNegative(n)) { break } v.reset(OpCopy) @@ -32969,17 +30524,13 @@ func rewriteValuegeneric_OpMod64u_0(v *Value) bool { return true } // match: (Mod64u n (Const64 [-1<<63])) - // cond: // result: (And64 n (Const64 [1<<63-1])) for { t := v.Type _ = v.Args[1] n := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1<<63 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1<<63 { break } v.reset(OpAnd64) @@ -33212,13 +30763,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { dst1 := v.Args[0] src := v.Args[1] mem := v.Args[2] - if mem.Op != OpZero { - break - } - if mem.AuxInt != n { - break - } - if mem.Aux != t { + if mem.Op != OpZero || mem.AuxInt != n || mem.Aux != t { break } _ = mem.Args[1] @@ -33247,13 +30792,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { break } mem_0 := mem.Args[0] - if mem_0.Op != OpZero { - break - } - if mem_0.AuxInt != n { - break - } - if mem_0.Aux != t { + if mem_0.Op != OpZero || mem_0.AuxInt != n || mem_0.Aux != t { break } _ = mem_0.Args[1] @@ -33310,13 +30849,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { dst1 := v.Args[0] src1 := v.Args[1] move := v.Args[2] - if move.Op != OpMove { - break - } - if move.AuxInt != n { - break - } - if move.Aux != t { + if move.Op != OpMove || move.AuxInt != n || move.Aux != t { break } mem := move.Args[2] @@ -33347,13 +30880,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { } x := vardef.Aux move := vardef.Args[0] - if move.Op != OpMove { - break - } - if move.AuxInt != n { - break - } - if move.Aux != t { + if move.Op != OpMove || move.AuxInt != n || move.Aux != t { break } mem := move.Args[2] @@ -33382,13 +30909,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { dst1 := v.Args[0] src1 := v.Args[1] zero := v.Args[2] - if zero.Op != OpZero { - break - } - if zero.AuxInt != n { - break - } - if zero.Aux != t { + if zero.Op != OpZero || zero.AuxInt != n || zero.Aux != t { break } mem := zero.Args[1] @@ -33419,13 +30940,7 @@ func rewriteValuegeneric_OpMove_0(v *Value) bool { } x := vardef.Aux zero := vardef.Args[0] - if zero.Op != OpZero { - break - } - if zero.AuxInt != n { - break - } - if zero.Aux != t { + if zero.Op != OpZero || zero.AuxInt != n || zero.Aux != t { break } mem := zero.Args[1] @@ -33976,10 +31491,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p2 := op2.Args[0] d1 := mem.Args[1] mem_2 := mem.Args[2] - if mem_2.Op != OpZero { - break - } - if mem_2.AuxInt != n { + if mem_2.Op != OpZero || mem_2.AuxInt != n { break } t3 := mem_2.Aux @@ -34041,10 +31553,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p3 := mem_2_0.Args[0] d2 := mem_2.Args[1] mem_2_2 := mem_2.Args[2] - if mem_2_2.Op != OpZero { - break - } - if mem_2_2.AuxInt != n { + if mem_2_2.Op != OpZero || mem_2_2.AuxInt != n { break } t4 := mem_2_2.Aux @@ -34128,10 +31637,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p4 := mem_2_2_0.Args[0] d3 := mem_2_2.Args[1] mem_2_2_2 := mem_2_2.Args[2] - if mem_2_2_2.Op != OpZero { - break - } - if mem_2_2_2.AuxInt != n { + if mem_2_2_2.Op != OpZero || mem_2_2_2.AuxInt != n { break } t5 := mem_2_2_2.Aux @@ -34237,10 +31743,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p5 := mem_2_2_2_0.Args[0] d4 := mem_2_2_2.Args[1] mem_2_2_2_2 := mem_2_2_2.Args[2] - if mem_2_2_2_2.Op != OpZero { - break - } - if mem_2_2_2_2.AuxInt != n { + if mem_2_2_2_2.Op != OpZero || mem_2_2_2_2.AuxInt != n { break } t6 := mem_2_2_2_2.Aux @@ -34316,10 +31819,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p2 := op2.Args[0] d1 := mem_0.Args[1] mem_0_2 := mem_0.Args[2] - if mem_0_2.Op != OpZero { - break - } - if mem_0_2.AuxInt != n { + if mem_0_2.Op != OpZero || mem_0_2.AuxInt != n { break } t3 := mem_0_2.Aux @@ -34385,10 +31885,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p3 := mem_0_2_0.Args[0] d2 := mem_0_2.Args[1] mem_0_2_2 := mem_0_2.Args[2] - if mem_0_2_2.Op != OpZero { - break - } - if mem_0_2_2.AuxInt != n { + if mem_0_2_2.Op != OpZero || mem_0_2_2.AuxInt != n { break } t4 := mem_0_2_2.Aux @@ -34476,10 +31973,7 @@ func rewriteValuegeneric_OpMove_10(v *Value) bool { p4 := mem_0_2_2_0.Args[0] d3 := mem_0_2_2.Args[1] mem_0_2_2_2 := mem_0_2_2.Args[2] - if mem_0_2_2_2.Op != OpZero { - break - } - if mem_0_2_2_2.AuxInt != n { + if mem_0_2_2_2.Op != OpZero || mem_0_2_2_2.AuxInt != n { break } t5 := mem_0_2_2_2.Aux @@ -34594,10 +32088,7 @@ func rewriteValuegeneric_OpMove_20(v *Value) bool { p5 := mem_0_2_2_2_0.Args[0] d4 := mem_0_2_2_2.Args[1] mem_0_2_2_2_2 := mem_0_2_2_2.Args[2] - if mem_0_2_2_2_2.Op != OpZero { - break - } - if mem_0_2_2_2_2.AuxInt != n { + if mem_0_2_2_2_2.Op != OpZero || mem_0_2_2_2_2.AuxInt != n { break } t6 := mem_0_2_2_2_2.Aux @@ -34655,10 +32146,7 @@ func rewriteValuegeneric_OpMove_20(v *Value) bool { dst := v.Args[0] tmp1 := v.Args[1] midmem := v.Args[2] - if midmem.Op != OpMove { - break - } - if midmem.AuxInt != s { + if midmem.Op != OpMove || midmem.AuxInt != s { break } t2 := midmem.Aux @@ -34690,10 +32178,7 @@ func rewriteValuegeneric_OpMove_20(v *Value) bool { break } midmem_0 := midmem.Args[0] - if midmem_0.Op != OpMove { - break - } - if midmem_0.AuxInt != s { + if midmem_0.Op != OpMove || midmem_0.AuxInt != s { break } t2 := midmem_0.Aux @@ -34732,7 +32217,6 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c*d))]) for { _ = v.Args[1] @@ -34751,7 +32235,6 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { return true } // match: (Mul16 (Const16 [d]) (Const16 [c])) - // cond: // result: (Const16 [int64(int16(c*d))]) for { _ = v.Args[1] @@ -34770,15 +32253,11 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { return true } // match: (Mul16 (Const16 [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst16 || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -34787,16 +32266,12 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { return true } // match: (Mul16 x (Const16 [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst16 || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -34805,15 +32280,11 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { return true } // match: (Mul16 (Const16 [-1]) x) - // cond: // result: (Neg16 x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst16 || v_0.AuxInt != -1 { break } v.reset(OpNeg16) @@ -34821,16 +32292,12 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { return true } // match: (Mul16 x (Const16 [-1])) - // cond: // result: (Neg16 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst16 || v_1.AuxInt != -1 { break } v.reset(OpNeg16) @@ -34934,15 +32401,11 @@ func rewriteValuegeneric_OpMul16_0(v *Value) bool { func rewriteValuegeneric_OpMul16_10(v *Value) bool { b := v.Block // match: (Mul16 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -34950,15 +32413,11 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { return true } // match: (Mul16 _ (Const16 [0])) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 { break } v.reset(OpConst16) @@ -34966,7 +32425,6 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { return true } // match: (Mul16 (Const16 [c]) (Mul16 (Const16 [d]) x)) - // cond: // result: (Mul16 (Const16 [int64(int16(c*d))]) x) for { _ = v.Args[1] @@ -34982,10 +32440,7 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -34997,7 +32452,6 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { return true } // match: (Mul16 (Const16 [c]) (Mul16 x (Const16 [d]))) - // cond: // result: (Mul16 (Const16 [int64(int16(c*d))]) x) for { _ = v.Args[1] @@ -35014,10 +32468,7 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -35029,7 +32480,6 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { return true } // match: (Mul16 (Mul16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Mul16 (Const16 [int64(int16(c*d))]) x) for { _ = v.Args[1] @@ -35045,10 +32495,7 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -35060,7 +32507,6 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { return true } // match: (Mul16 (Mul16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Mul16 (Const16 [int64(int16(c*d))]) x) for { _ = v.Args[1] @@ -35077,10 +32523,7 @@ func rewriteValuegeneric_OpMul16_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -35097,7 +32540,6 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c*d))]) for { _ = v.Args[1] @@ -35116,7 +32558,6 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { return true } // match: (Mul32 (Const32 [d]) (Const32 [c])) - // cond: // result: (Const32 [int64(int32(c*d))]) for { _ = v.Args[1] @@ -35135,15 +32576,11 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { return true } // match: (Mul32 (Const32 [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst32 || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -35152,16 +32589,12 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { return true } // match: (Mul32 x (Const32 [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst32 || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -35170,15 +32603,11 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { return true } // match: (Mul32 (Const32 [-1]) x) - // cond: // result: (Neg32 x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst32 || v_0.AuxInt != -1 { break } v.reset(OpNeg32) @@ -35186,16 +32615,12 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { return true } // match: (Mul32 x (Const32 [-1])) - // cond: // result: (Neg32 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst32 || v_1.AuxInt != -1 { break } v.reset(OpNeg32) @@ -35299,7 +32724,6 @@ func rewriteValuegeneric_OpMul32_0(v *Value) bool { func rewriteValuegeneric_OpMul32_10(v *Value) bool { b := v.Block // match: (Mul32 (Const32 [c]) (Add32 (Const32 [d]) x)) - // cond: // result: (Add32 (Const32 [int64(int32(c*d))]) (Mul32 (Const32 [c]) x)) for { _ = v.Args[1] @@ -35310,18 +32734,12 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { t := v_0.Type c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAdd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAdd32 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -35338,7 +32756,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Const32 [c]) (Add32 x (Const32 [d]))) - // cond: // result: (Add32 (Const32 [int64(int32(c*d))]) (Mul32 (Const32 [c]) x)) for { _ = v.Args[1] @@ -35349,19 +32766,13 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { t := v_0.Type c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAdd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAdd32 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -35378,7 +32789,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Add32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Add32 (Const32 [int64(int32(c*d))]) (Mul32 (Const32 [c]) x)) for { _ = v.Args[1] @@ -35389,18 +32799,12 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst32 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst32 || v_0_0.Type != t { break } d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -35417,7 +32821,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Add32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Add32 (Const32 [int64(int32(c*d))]) (Mul32 (Const32 [c]) x)) for { _ = v.Args[1] @@ -35429,18 +32832,12 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst32 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst32 || v_0_1.Type != t { break } d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -35457,15 +32854,11 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -35473,15 +32866,11 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 _ (Const32 [0])) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpConst32) @@ -35489,7 +32878,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Const32 [c]) (Mul32 (Const32 [d]) x)) - // cond: // result: (Mul32 (Const32 [int64(int32(c*d))]) x) for { _ = v.Args[1] @@ -35505,10 +32893,7 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -35520,7 +32905,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Const32 [c]) (Mul32 x (Const32 [d]))) - // cond: // result: (Mul32 (Const32 [int64(int32(c*d))]) x) for { _ = v.Args[1] @@ -35537,10 +32921,7 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -35552,7 +32933,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Mul32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Mul32 (Const32 [int64(int32(c*d))]) x) for { _ = v.Args[1] @@ -35568,10 +32948,7 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -35583,7 +32960,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { return true } // match: (Mul32 (Mul32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Mul32 (Const32 [int64(int32(c*d))]) x) for { _ = v.Args[1] @@ -35600,10 +32976,7 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -35618,7 +32991,6 @@ func rewriteValuegeneric_OpMul32_10(v *Value) bool { } func rewriteValuegeneric_OpMul32F_0(v *Value) bool { // match: (Mul32F (Const32F [c]) (Const32F [d])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) * auxTo32F(d))]) for { _ = v.Args[1] @@ -35637,7 +33009,6 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F (Const32F [d]) (Const32F [c])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) * auxTo32F(d))]) for { _ = v.Args[1] @@ -35656,16 +33027,12 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F x (Const32F [auxFrom64F(1)])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32F { - break - } - if v_1.AuxInt != auxFrom64F(1) { + if v_1.Op != OpConst32F || v_1.AuxInt != auxFrom64F(1) { break } v.reset(OpCopy) @@ -35674,15 +33041,11 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F (Const32F [auxFrom64F(1)]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32F { - break - } - if v_0.AuxInt != auxFrom64F(1) { + if v_0.Op != OpConst32F || v_0.AuxInt != auxFrom64F(1) { break } v.reset(OpCopy) @@ -35691,16 +33054,12 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F x (Const32F [auxFrom32F(-1)])) - // cond: // result: (Neg32F x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32F { - break - } - if v_1.AuxInt != auxFrom32F(-1) { + if v_1.Op != OpConst32F || v_1.AuxInt != auxFrom32F(-1) { break } v.reset(OpNeg32F) @@ -35708,15 +33067,11 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F (Const32F [auxFrom32F(-1)]) x) - // cond: // result: (Neg32F x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32F { - break - } - if v_0.AuxInt != auxFrom32F(-1) { + if v_0.Op != OpConst32F || v_0.AuxInt != auxFrom32F(-1) { break } v.reset(OpNeg32F) @@ -35724,16 +33079,12 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F x (Const32F [auxFrom32F(2)])) - // cond: // result: (Add32F x x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32F { - break - } - if v_1.AuxInt != auxFrom32F(2) { + if v_1.Op != OpConst32F || v_1.AuxInt != auxFrom32F(2) { break } v.reset(OpAdd32F) @@ -35742,15 +33093,11 @@ func rewriteValuegeneric_OpMul32F_0(v *Value) bool { return true } // match: (Mul32F (Const32F [auxFrom32F(2)]) x) - // cond: // result: (Add32F x x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32F { - break - } - if v_0.AuxInt != auxFrom32F(2) { + if v_0.Op != OpConst32F || v_0.AuxInt != auxFrom32F(2) { break } v.reset(OpAdd32F) @@ -35764,7 +33111,6 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c*d]) for { _ = v.Args[1] @@ -35783,7 +33129,6 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { return true } // match: (Mul64 (Const64 [d]) (Const64 [c])) - // cond: // result: (Const64 [c*d]) for { _ = v.Args[1] @@ -35802,15 +33147,11 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { return true } // match: (Mul64 (Const64 [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst64 || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -35819,16 +33160,12 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { return true } // match: (Mul64 x (Const64 [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst64 || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -35837,15 +33174,11 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { return true } // match: (Mul64 (Const64 [-1]) x) - // cond: // result: (Neg64 x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst64 || v_0.AuxInt != -1 { break } v.reset(OpNeg64) @@ -35853,16 +33186,12 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { return true } // match: (Mul64 x (Const64 [-1])) - // cond: // result: (Neg64 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1 { break } v.reset(OpNeg64) @@ -35966,7 +33295,6 @@ func rewriteValuegeneric_OpMul64_0(v *Value) bool { func rewriteValuegeneric_OpMul64_10(v *Value) bool { b := v.Block // match: (Mul64 (Const64 [c]) (Add64 (Const64 [d]) x)) - // cond: // result: (Add64 (Const64 [c*d]) (Mul64 (Const64 [c]) x)) for { _ = v.Args[1] @@ -35977,18 +33305,12 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { t := v_0.Type c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAdd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAdd64 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -36005,7 +33327,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Const64 [c]) (Add64 x (Const64 [d]))) - // cond: // result: (Add64 (Const64 [c*d]) (Mul64 (Const64 [c]) x)) for { _ = v.Args[1] @@ -36016,19 +33337,13 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { t := v_0.Type c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAdd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAdd64 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -36045,7 +33360,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Add64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Add64 (Const64 [c*d]) (Mul64 (Const64 [c]) x)) for { _ = v.Args[1] @@ -36056,18 +33370,12 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst64 || v_0_0.Type != t { break } d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -36084,7 +33392,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Add64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Add64 (Const64 [c*d]) (Mul64 (Const64 [c]) x)) for { _ = v.Args[1] @@ -36096,18 +33403,12 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst64 || v_0_1.Type != t { break } d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -36124,15 +33425,11 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -36140,15 +33437,11 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 _ (Const64 [0])) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpConst64) @@ -36156,7 +33449,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Const64 [c]) (Mul64 (Const64 [d]) x)) - // cond: // result: (Mul64 (Const64 [c*d]) x) for { _ = v.Args[1] @@ -36172,10 +33464,7 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -36187,7 +33476,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Const64 [c]) (Mul64 x (Const64 [d]))) - // cond: // result: (Mul64 (Const64 [c*d]) x) for { _ = v.Args[1] @@ -36204,10 +33492,7 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -36219,7 +33504,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Mul64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Mul64 (Const64 [c*d]) x) for { _ = v.Args[1] @@ -36235,10 +33519,7 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -36250,7 +33531,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { return true } // match: (Mul64 (Mul64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Mul64 (Const64 [c*d]) x) for { _ = v.Args[1] @@ -36267,10 +33547,7 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -36285,7 +33562,6 @@ func rewriteValuegeneric_OpMul64_10(v *Value) bool { } func rewriteValuegeneric_OpMul64F_0(v *Value) bool { // match: (Mul64F (Const64F [c]) (Const64F [d])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) * auxTo64F(d))]) for { _ = v.Args[1] @@ -36304,7 +33580,6 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F (Const64F [d]) (Const64F [c])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) * auxTo64F(d))]) for { _ = v.Args[1] @@ -36323,16 +33598,12 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F x (Const64F [auxFrom64F(1)])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64F { - break - } - if v_1.AuxInt != auxFrom64F(1) { + if v_1.Op != OpConst64F || v_1.AuxInt != auxFrom64F(1) { break } v.reset(OpCopy) @@ -36341,15 +33612,11 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F (Const64F [auxFrom64F(1)]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64F { - break - } - if v_0.AuxInt != auxFrom64F(1) { + if v_0.Op != OpConst64F || v_0.AuxInt != auxFrom64F(1) { break } v.reset(OpCopy) @@ -36358,16 +33625,12 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F x (Const64F [auxFrom64F(-1)])) - // cond: // result: (Neg64F x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64F { - break - } - if v_1.AuxInt != auxFrom64F(-1) { + if v_1.Op != OpConst64F || v_1.AuxInt != auxFrom64F(-1) { break } v.reset(OpNeg64F) @@ -36375,15 +33638,11 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F (Const64F [auxFrom64F(-1)]) x) - // cond: // result: (Neg64F x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64F { - break - } - if v_0.AuxInt != auxFrom64F(-1) { + if v_0.Op != OpConst64F || v_0.AuxInt != auxFrom64F(-1) { break } v.reset(OpNeg64F) @@ -36391,16 +33650,12 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F x (Const64F [auxFrom64F(2)])) - // cond: // result: (Add64F x x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64F { - break - } - if v_1.AuxInt != auxFrom64F(2) { + if v_1.Op != OpConst64F || v_1.AuxInt != auxFrom64F(2) { break } v.reset(OpAdd64F) @@ -36409,15 +33664,11 @@ func rewriteValuegeneric_OpMul64F_0(v *Value) bool { return true } // match: (Mul64F (Const64F [auxFrom64F(2)]) x) - // cond: // result: (Add64F x x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64F { - break - } - if v_0.AuxInt != auxFrom64F(2) { + if v_0.Op != OpConst64F || v_0.AuxInt != auxFrom64F(2) { break } v.reset(OpAdd64F) @@ -36431,7 +33682,6 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Mul8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c*d))]) for { _ = v.Args[1] @@ -36450,7 +33700,6 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { return true } // match: (Mul8 (Const8 [d]) (Const8 [c])) - // cond: // result: (Const8 [int64(int8(c*d))]) for { _ = v.Args[1] @@ -36469,15 +33718,11 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { return true } // match: (Mul8 (Const8 [1]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConst8 || v_0.AuxInt != 1 { break } v.reset(OpCopy) @@ -36486,16 +33731,12 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { return true } // match: (Mul8 x (Const8 [1])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConst8 || v_1.AuxInt != 1 { break } v.reset(OpCopy) @@ -36504,15 +33745,11 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { return true } // match: (Mul8 (Const8 [-1]) x) - // cond: // result: (Neg8 x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst8 || v_0.AuxInt != -1 { break } v.reset(OpNeg8) @@ -36520,16 +33757,12 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { return true } // match: (Mul8 x (Const8 [-1])) - // cond: // result: (Neg8 x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst8 || v_1.AuxInt != -1 { break } v.reset(OpNeg8) @@ -36633,15 +33866,11 @@ func rewriteValuegeneric_OpMul8_0(v *Value) bool { func rewriteValuegeneric_OpMul8_10(v *Value) bool { b := v.Block // match: (Mul8 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -36649,15 +33878,11 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { return true } // match: (Mul8 _ (Const8 [0])) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 { break } v.reset(OpConst8) @@ -36665,7 +33890,6 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { return true } // match: (Mul8 (Const8 [c]) (Mul8 (Const8 [d]) x)) - // cond: // result: (Mul8 (Const8 [int64(int8(c*d))]) x) for { _ = v.Args[1] @@ -36681,10 +33905,7 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -36696,7 +33917,6 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { return true } // match: (Mul8 (Const8 [c]) (Mul8 x (Const8 [d]))) - // cond: // result: (Mul8 (Const8 [int64(int8(c*d))]) x) for { _ = v.Args[1] @@ -36713,10 +33933,7 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -36728,7 +33945,6 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { return true } // match: (Mul8 (Mul8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Mul8 (Const8 [int64(int8(c*d))]) x) for { _ = v.Args[1] @@ -36744,10 +33960,7 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -36759,7 +33972,6 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { return true } // match: (Mul8 (Mul8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Mul8 (Const8 [int64(int8(c*d))]) x) for { _ = v.Args[1] @@ -36776,10 +33988,7 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -36795,7 +34004,6 @@ func rewriteValuegeneric_OpMul8_10(v *Value) bool { func rewriteValuegeneric_OpNeg16_0(v *Value) bool { b := v.Block // match: (Neg16 (Const16 [c])) - // cond: // result: (Const16 [int64(-int16(c))]) for { v_0 := v.Args[0] @@ -36808,7 +34016,6 @@ func rewriteValuegeneric_OpNeg16_0(v *Value) bool { return true } // match: (Neg16 (Sub16 x y)) - // cond: // result: (Sub16 y x) for { v_0 := v.Args[0] @@ -36823,7 +34030,6 @@ func rewriteValuegeneric_OpNeg16_0(v *Value) bool { return true } // match: (Neg16 (Neg16 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -36837,7 +34043,6 @@ func rewriteValuegeneric_OpNeg16_0(v *Value) bool { return true } // match: (Neg16 (Com16 x)) - // cond: // result: (Add16 (Const16 [1]) x) for { t := v.Type @@ -36858,7 +34063,6 @@ func rewriteValuegeneric_OpNeg16_0(v *Value) bool { func rewriteValuegeneric_OpNeg32_0(v *Value) bool { b := v.Block // match: (Neg32 (Const32 [c])) - // cond: // result: (Const32 [int64(-int32(c))]) for { v_0 := v.Args[0] @@ -36871,7 +34075,6 @@ func rewriteValuegeneric_OpNeg32_0(v *Value) bool { return true } // match: (Neg32 (Sub32 x y)) - // cond: // result: (Sub32 y x) for { v_0 := v.Args[0] @@ -36886,7 +34089,6 @@ func rewriteValuegeneric_OpNeg32_0(v *Value) bool { return true } // match: (Neg32 (Neg32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -36900,7 +34102,6 @@ func rewriteValuegeneric_OpNeg32_0(v *Value) bool { return true } // match: (Neg32 (Com32 x)) - // cond: // result: (Add32 (Const32 [1]) x) for { t := v.Type @@ -36940,7 +34141,6 @@ func rewriteValuegeneric_OpNeg32F_0(v *Value) bool { func rewriteValuegeneric_OpNeg64_0(v *Value) bool { b := v.Block // match: (Neg64 (Const64 [c])) - // cond: // result: (Const64 [-c]) for { v_0 := v.Args[0] @@ -36953,7 +34153,6 @@ func rewriteValuegeneric_OpNeg64_0(v *Value) bool { return true } // match: (Neg64 (Sub64 x y)) - // cond: // result: (Sub64 y x) for { v_0 := v.Args[0] @@ -36968,7 +34167,6 @@ func rewriteValuegeneric_OpNeg64_0(v *Value) bool { return true } // match: (Neg64 (Neg64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -36982,7 +34180,6 @@ func rewriteValuegeneric_OpNeg64_0(v *Value) bool { return true } // match: (Neg64 (Com64 x)) - // cond: // result: (Add64 (Const64 [1]) x) for { t := v.Type @@ -37022,7 +34219,6 @@ func rewriteValuegeneric_OpNeg64F_0(v *Value) bool { func rewriteValuegeneric_OpNeg8_0(v *Value) bool { b := v.Block // match: (Neg8 (Const8 [c])) - // cond: // result: (Const8 [int64( -int8(c))]) for { v_0 := v.Args[0] @@ -37035,7 +34231,6 @@ func rewriteValuegeneric_OpNeg8_0(v *Value) bool { return true } // match: (Neg8 (Sub8 x y)) - // cond: // result: (Sub8 y x) for { v_0 := v.Args[0] @@ -37050,7 +34245,6 @@ func rewriteValuegeneric_OpNeg8_0(v *Value) bool { return true } // match: (Neg8 (Neg8 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -37064,7 +34258,6 @@ func rewriteValuegeneric_OpNeg8_0(v *Value) bool { return true } // match: (Neg8 (Com8 x)) - // cond: // result: (Add8 (Const8 [1]) x) for { t := v.Type @@ -37085,7 +34278,6 @@ func rewriteValuegeneric_OpNeg8_0(v *Value) bool { func rewriteValuegeneric_OpNeq16_0(v *Value) bool { b := v.Block // match: (Neq16 x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -37097,7 +34289,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Const16 [c]) (Add16 (Const16 [d]) x)) - // cond: // result: (Neq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -37113,10 +34304,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -37128,7 +34316,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Const16 [c]) (Add16 x (Const16 [d]))) - // cond: // result: (Neq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -37145,10 +34332,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -37160,7 +34344,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Add16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Neq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -37176,10 +34359,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -37191,7 +34371,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Add16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Neq16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -37208,10 +34387,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -37223,7 +34399,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Const16 [c]) (Const16 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -37242,7 +34417,6 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { return true } // match: (Neq16 (Const16 [d]) (Const16 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -37272,13 +34446,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpNeq16) @@ -37292,10 +34460,7 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -37325,24 +34490,12 @@ func rewriteValuegeneric_OpNeq16_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst16 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst16 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst16 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq16) @@ -37373,24 +34526,12 @@ func rewriteValuegeneric_OpNeq16_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst16 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst16 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst16 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq16) @@ -37417,25 +34558,13 @@ func rewriteValuegeneric_OpNeq16_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd16 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd16 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst16 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq16) @@ -37462,24 +34591,12 @@ func rewriteValuegeneric_OpNeq16_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd16 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd16 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst16 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq16) @@ -37499,7 +34616,6 @@ func rewriteValuegeneric_OpNeq16_10(v *Value) bool { func rewriteValuegeneric_OpNeq32_0(v *Value) bool { b := v.Block // match: (Neq32 x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -37511,7 +34627,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Const32 [c]) (Add32 (Const32 [d]) x)) - // cond: // result: (Neq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -37527,10 +34642,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -37542,7 +34654,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Const32 [c]) (Add32 x (Const32 [d]))) - // cond: // result: (Neq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -37559,10 +34670,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -37574,7 +34682,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Add32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Neq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -37590,10 +34697,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -37605,7 +34709,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Add32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Neq32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -37622,10 +34725,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -37637,7 +34737,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -37656,7 +34755,6 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { return true } // match: (Neq32 (Const32 [d]) (Const32 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -37686,13 +34784,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpNeq32) @@ -37706,10 +34798,7 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -37739,24 +34828,12 @@ func rewriteValuegeneric_OpNeq32_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst32 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst32 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst32 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq32) @@ -37787,24 +34864,12 @@ func rewriteValuegeneric_OpNeq32_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst32 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst32 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst32 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq32) @@ -37831,25 +34896,13 @@ func rewriteValuegeneric_OpNeq32_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd32 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst32 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq32) @@ -37876,24 +34929,12 @@ func rewriteValuegeneric_OpNeq32_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd32 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd32 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst32 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq32) @@ -37912,7 +34953,6 @@ func rewriteValuegeneric_OpNeq32_10(v *Value) bool { } func rewriteValuegeneric_OpNeq32F_0(v *Value) bool { // match: (Neq32F (Const32F [c]) (Const32F [d])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) != auxTo32F(d))]) for { _ = v.Args[1] @@ -37931,7 +34971,6 @@ func rewriteValuegeneric_OpNeq32F_0(v *Value) bool { return true } // match: (Neq32F (Const32F [d]) (Const32F [c])) - // cond: // result: (ConstBool [b2i(auxTo32F(c) != auxTo32F(d))]) for { _ = v.Args[1] @@ -37954,7 +34993,6 @@ func rewriteValuegeneric_OpNeq32F_0(v *Value) bool { func rewriteValuegeneric_OpNeq64_0(v *Value) bool { b := v.Block // match: (Neq64 x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -37966,7 +35004,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Const64 [c]) (Add64 (Const64 [d]) x)) - // cond: // result: (Neq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -37982,10 +35019,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -37997,7 +35031,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Const64 [c]) (Add64 x (Const64 [d]))) - // cond: // result: (Neq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -38014,10 +35047,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -38029,7 +35059,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Add64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Neq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -38045,10 +35074,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -38060,7 +35086,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Add64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Neq64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -38077,10 +35102,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -38092,7 +35114,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38111,7 +35132,6 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { return true } // match: (Neq64 (Const64 [d]) (Const64 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38141,13 +35161,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpNeq64) @@ -38161,10 +35175,7 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -38194,24 +35205,12 @@ func rewriteValuegeneric_OpNeq64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst64 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst64 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq64) @@ -38242,24 +35241,12 @@ func rewriteValuegeneric_OpNeq64_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst64 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst64 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq64) @@ -38286,25 +35273,13 @@ func rewriteValuegeneric_OpNeq64_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd64 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst64 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq64) @@ -38331,24 +35306,12 @@ func rewriteValuegeneric_OpNeq64_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd64 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd64 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst64 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq64) @@ -38367,7 +35330,6 @@ func rewriteValuegeneric_OpNeq64_10(v *Value) bool { } func rewriteValuegeneric_OpNeq64F_0(v *Value) bool { // match: (Neq64F (Const64F [c]) (Const64F [d])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) != auxTo64F(d))]) for { _ = v.Args[1] @@ -38386,7 +35348,6 @@ func rewriteValuegeneric_OpNeq64F_0(v *Value) bool { return true } // match: (Neq64F (Const64F [d]) (Const64F [c])) - // cond: // result: (ConstBool [b2i(auxTo64F(c) != auxTo64F(d))]) for { _ = v.Args[1] @@ -38409,7 +35370,6 @@ func rewriteValuegeneric_OpNeq64F_0(v *Value) bool { func rewriteValuegeneric_OpNeq8_0(v *Value) bool { b := v.Block // match: (Neq8 x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -38421,7 +35381,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Const8 [c]) (Add8 (Const8 [d]) x)) - // cond: // result: (Neq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -38437,10 +35396,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -38452,7 +35408,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Const8 [c]) (Add8 x (Const8 [d]))) - // cond: // result: (Neq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -38469,10 +35424,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -38484,7 +35436,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Add8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Neq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -38500,10 +35451,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -38515,7 +35463,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Add8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Neq8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -38532,10 +35479,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -38547,7 +35491,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Const8 [c]) (Const8 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38566,7 +35509,6 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { return true } // match: (Neq8 (Const8 [d]) (Const8 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38596,13 +35538,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { y := s.Args[1] x := s.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { - break - } - if !(s.Uses == 1) { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 || !(s.Uses == 1) { break } v.reset(OpNeq8) @@ -38616,10 +35552,7 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } s := v.Args[1] @@ -38649,24 +35582,12 @@ func rewriteValuegeneric_OpNeq8_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst8 { - break - } - if v_0_1.Type != t { + if v_0_1.Op != OpConst8 || v_0_1.Type != t { break } y := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst8 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq8) @@ -38697,24 +35618,12 @@ func rewriteValuegeneric_OpNeq8_10(v *Value) bool { t := v_0.Type x := v_0.Args[1] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst8 { - break - } - if v_0_0.Type != t { + if v_0_0.Op != OpConst8 || v_0_0.Type != t { break } y := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { - break - } - if v_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1.Op != OpConst8 || v_1.Type != t || v_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq8) @@ -38741,25 +35650,13 @@ func rewriteValuegeneric_OpNeq8_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd8 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd8 || v_1.Type != t { break } _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { - break - } - if v_1_1.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_1.Op != OpConst8 || v_1_1.Type != t || v_1_1.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq8) @@ -38786,24 +35683,12 @@ func rewriteValuegeneric_OpNeq8_10(v *Value) bool { t := v_0.Type y := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpAnd8 { - break - } - if v_1.Type != t { + if v_1.Op != OpAnd8 || v_1.Type != t { break } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { - break - } - if v_1_0.AuxInt != y { - break - } - if !(isPowerOfTwo(y)) { + if v_1_0.Op != OpConst8 || v_1_0.Type != t || v_1_0.AuxInt != y || !(isPowerOfTwo(y)) { break } v.reset(OpEq8) @@ -38822,7 +35707,6 @@ func rewriteValuegeneric_OpNeq8_10(v *Value) bool { } func rewriteValuegeneric_OpNeqB_0(v *Value) bool { // match: (NeqB (ConstBool [c]) (ConstBool [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38841,7 +35725,6 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB (ConstBool [d]) (ConstBool [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -38860,15 +35743,11 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB (ConstBool [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConstBool { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConstBool || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -38877,16 +35756,12 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB x (ConstBool [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConstBool { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConstBool || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -38895,15 +35770,11 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB (ConstBool [1]) x) - // cond: // result: (Not x) for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConstBool { - break - } - if v_0.AuxInt != 1 { + if v_0.Op != OpConstBool || v_0.AuxInt != 1 { break } v.reset(OpNot) @@ -38911,16 +35782,12 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB x (ConstBool [1])) - // cond: // result: (Not x) for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConstBool { - break - } - if v_1.AuxInt != 1 { + if v_1.Op != OpConstBool || v_1.AuxInt != 1 { break } v.reset(OpNot) @@ -38928,7 +35795,6 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB (Not x) (Not y)) - // cond: // result: (NeqB x y) for { _ = v.Args[1] @@ -38948,7 +35814,6 @@ func rewriteValuegeneric_OpNeqB_0(v *Value) bool { return true } // match: (NeqB (Not y) (Not x)) - // cond: // result: (NeqB x y) for { _ = v.Args[1] @@ -38973,7 +35838,6 @@ func rewriteValuegeneric_OpNeqInter_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqInter x y) - // cond: // result: (NeqPtr (ITab x) (ITab y)) for { y := v.Args[1] @@ -38990,7 +35854,6 @@ func rewriteValuegeneric_OpNeqInter_0(v *Value) bool { } func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { // match: (NeqPtr x x) - // cond: // result: (ConstBool [0]) for { x := v.Args[1] @@ -39002,7 +35865,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (Addr {a} _) (Addr {b} _)) - // cond: // result: (ConstBool [b2i(a != b)]) for { _ = v.Args[1] @@ -39021,7 +35883,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (Addr {b} _) (Addr {a} _)) - // cond: // result: (ConstBool [b2i(a != b)]) for { _ = v.Args[1] @@ -39040,7 +35901,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (Addr {a} _) (OffPtr [o] (Addr {b} _))) - // cond: // result: (ConstBool [b2i(a != b || o != 0)]) for { _ = v.Args[1] @@ -39064,7 +35924,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (OffPtr [o] (Addr {b} _)) (Addr {a} _)) - // cond: // result: (ConstBool [b2i(a != b || o != 0)]) for { _ = v.Args[1] @@ -39088,7 +35947,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (OffPtr [o1] (Addr {a} _)) (OffPtr [o2] (Addr {b} _))) - // cond: // result: (ConstBool [b2i(a != b || o1 != o2)]) for { _ = v.Args[1] @@ -39117,7 +35975,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (OffPtr [o2] (Addr {b} _)) (OffPtr [o1] (Addr {a} _))) - // cond: // result: (ConstBool [b2i(a != b || o1 != o2)]) for { _ = v.Args[1] @@ -39146,7 +36003,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (LocalAddr {a} _ _) (LocalAddr {b} _ _)) - // cond: // result: (ConstBool [b2i(a != b)]) for { _ = v.Args[1] @@ -39167,7 +36023,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (LocalAddr {b} _ _) (LocalAddr {a} _ _)) - // cond: // result: (ConstBool [b2i(a != b)]) for { _ = v.Args[1] @@ -39188,7 +36043,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { return true } // match: (NeqPtr (LocalAddr {a} _ _) (OffPtr [o] (LocalAddr {b} _ _))) - // cond: // result: (ConstBool [b2i(a != b || o != 0)]) for { _ = v.Args[1] @@ -39217,7 +36071,6 @@ func rewriteValuegeneric_OpNeqPtr_0(v *Value) bool { } func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { // match: (NeqPtr (OffPtr [o] (LocalAddr {b} _ _)) (LocalAddr {a} _ _)) - // cond: // result: (ConstBool [b2i(a != b || o != 0)]) for { _ = v.Args[1] @@ -39243,7 +36096,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { return true } // match: (NeqPtr (OffPtr [o1] (LocalAddr {a} _ _)) (OffPtr [o2] (LocalAddr {b} _ _))) - // cond: // result: (ConstBool [b2i(a != b || o1 != o2)]) for { _ = v.Args[1] @@ -39274,7 +36126,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { return true } // match: (NeqPtr (OffPtr [o2] (LocalAddr {b} _ _)) (OffPtr [o1] (LocalAddr {a} _ _))) - // cond: // result: (ConstBool [b2i(a != b || o1 != o2)]) for { _ = v.Args[1] @@ -39390,7 +36241,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { return true } // match: (NeqPtr (Const32 [c]) (Const32 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -39409,7 +36259,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { return true } // match: (NeqPtr (Const32 [d]) (Const32 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -39428,7 +36277,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { return true } // match: (NeqPtr (Const64 [c]) (Const64 [d])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -39450,7 +36298,6 @@ func rewriteValuegeneric_OpNeqPtr_10(v *Value) bool { } func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { // match: (NeqPtr (Const64 [d]) (Const64 [c])) - // cond: // result: (ConstBool [b2i(c != d)]) for { _ = v.Args[1] @@ -39469,7 +36316,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (LocalAddr _ _) (Addr _)) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39487,7 +36333,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (Addr _) (LocalAddr _ _)) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39505,7 +36350,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (OffPtr (LocalAddr _ _)) (Addr _)) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39527,7 +36371,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (Addr _) (OffPtr (LocalAddr _ _))) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39549,7 +36392,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (LocalAddr _ _) (OffPtr (Addr _))) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39571,7 +36413,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (OffPtr (Addr _)) (LocalAddr _ _)) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39593,7 +36434,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (OffPtr (LocalAddr _ _)) (OffPtr (Addr _))) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39619,7 +36459,6 @@ func rewriteValuegeneric_OpNeqPtr_20(v *Value) bool { return true } // match: (NeqPtr (OffPtr (Addr _)) (OffPtr (LocalAddr _ _))) - // cond: // result: (ConstBool [1]) for { _ = v.Args[1] @@ -39685,15 +36524,11 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr (Const32 [0]) p) - // cond: // result: (IsNonNil p) for { p := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpIsNonNil) @@ -39701,16 +36536,12 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr p (Const32 [0])) - // cond: // result: (IsNonNil p) for { _ = v.Args[1] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpIsNonNil) @@ -39718,15 +36549,11 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr (Const64 [0]) p) - // cond: // result: (IsNonNil p) for { p := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpIsNonNil) @@ -39734,16 +36561,12 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr p (Const64 [0])) - // cond: // result: (IsNonNil p) for { _ = v.Args[1] p := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpIsNonNil) @@ -39751,7 +36574,6 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr (ConstNil) p) - // cond: // result: (IsNonNil p) for { p := v.Args[1] @@ -39764,7 +36586,6 @@ func rewriteValuegeneric_OpNeqPtr_30(v *Value) bool { return true } // match: (NeqPtr p (ConstNil)) - // cond: // result: (IsNonNil p) for { _ = v.Args[1] @@ -39783,7 +36604,6 @@ func rewriteValuegeneric_OpNeqSlice_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (NeqSlice x y) - // cond: // result: (NeqPtr (SlicePtr x) (SlicePtr y)) for { y := v.Args[1] @@ -39803,15 +36623,11 @@ func rewriteValuegeneric_OpNilCheck_0(v *Value) bool { config := b.Func.Config fe := b.Func.fe // match: (NilCheck (GetG mem) mem) - // cond: // result: mem for { mem := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpGetG { - break - } - if mem != v_0.Args[0] { + if v_0.Op != OpGetG || mem != v_0.Args[0] { break } v.reset(OpCopy) @@ -39887,7 +36703,6 @@ func rewriteValuegeneric_OpNilCheck_0(v *Value) bool { } func rewriteValuegeneric_OpNot_0(v *Value) bool { // match: (Not (ConstBool [c])) - // cond: // result: (ConstBool [1-c]) for { v_0 := v.Args[0] @@ -39900,7 +36715,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Eq64 x y)) - // cond: // result: (Neq64 x y) for { v_0 := v.Args[0] @@ -39915,7 +36729,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Eq32 x y)) - // cond: // result: (Neq32 x y) for { v_0 := v.Args[0] @@ -39930,7 +36743,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Eq16 x y)) - // cond: // result: (Neq16 x y) for { v_0 := v.Args[0] @@ -39945,7 +36757,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Eq8 x y)) - // cond: // result: (Neq8 x y) for { v_0 := v.Args[0] @@ -39960,7 +36771,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (EqB x y)) - // cond: // result: (NeqB x y) for { v_0 := v.Args[0] @@ -39975,7 +36785,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Neq64 x y)) - // cond: // result: (Eq64 x y) for { v_0 := v.Args[0] @@ -39990,7 +36799,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Neq32 x y)) - // cond: // result: (Eq32 x y) for { v_0 := v.Args[0] @@ -40005,7 +36813,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Neq16 x y)) - // cond: // result: (Eq16 x y) for { v_0 := v.Args[0] @@ -40020,7 +36827,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { return true } // match: (Not (Neq8 x y)) - // cond: // result: (Eq8 x y) for { v_0 := v.Args[0] @@ -40038,7 +36844,6 @@ func rewriteValuegeneric_OpNot_0(v *Value) bool { } func rewriteValuegeneric_OpNot_10(v *Value) bool { // match: (Not (NeqB x y)) - // cond: // result: (EqB x y) for { v_0 := v.Args[0] @@ -40053,7 +36858,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater64 x y)) - // cond: // result: (Leq64 x y) for { v_0 := v.Args[0] @@ -40068,7 +36872,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater32 x y)) - // cond: // result: (Leq32 x y) for { v_0 := v.Args[0] @@ -40083,7 +36886,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater16 x y)) - // cond: // result: (Leq16 x y) for { v_0 := v.Args[0] @@ -40098,7 +36900,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater8 x y)) - // cond: // result: (Leq8 x y) for { v_0 := v.Args[0] @@ -40113,7 +36914,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater64U x y)) - // cond: // result: (Leq64U x y) for { v_0 := v.Args[0] @@ -40128,7 +36928,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater32U x y)) - // cond: // result: (Leq32U x y) for { v_0 := v.Args[0] @@ -40143,7 +36942,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater16U x y)) - // cond: // result: (Leq16U x y) for { v_0 := v.Args[0] @@ -40158,7 +36956,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Greater8U x y)) - // cond: // result: (Leq8U x y) for { v_0 := v.Args[0] @@ -40173,7 +36970,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { return true } // match: (Not (Geq64 x y)) - // cond: // result: (Less64 x y) for { v_0 := v.Args[0] @@ -40191,7 +36987,6 @@ func rewriteValuegeneric_OpNot_10(v *Value) bool { } func rewriteValuegeneric_OpNot_20(v *Value) bool { // match: (Not (Geq32 x y)) - // cond: // result: (Less32 x y) for { v_0 := v.Args[0] @@ -40206,7 +37001,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq16 x y)) - // cond: // result: (Less16 x y) for { v_0 := v.Args[0] @@ -40221,7 +37015,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq8 x y)) - // cond: // result: (Less8 x y) for { v_0 := v.Args[0] @@ -40236,7 +37029,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq64U x y)) - // cond: // result: (Less64U x y) for { v_0 := v.Args[0] @@ -40251,7 +37043,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq32U x y)) - // cond: // result: (Less32U x y) for { v_0 := v.Args[0] @@ -40266,7 +37057,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq16U x y)) - // cond: // result: (Less16U x y) for { v_0 := v.Args[0] @@ -40281,7 +37071,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Geq8U x y)) - // cond: // result: (Less8U x y) for { v_0 := v.Args[0] @@ -40296,7 +37085,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Less64 x y)) - // cond: // result: (Geq64 x y) for { v_0 := v.Args[0] @@ -40311,7 +37099,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Less32 x y)) - // cond: // result: (Geq32 x y) for { v_0 := v.Args[0] @@ -40326,7 +37113,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { return true } // match: (Not (Less16 x y)) - // cond: // result: (Geq16 x y) for { v_0 := v.Args[0] @@ -40344,7 +37130,6 @@ func rewriteValuegeneric_OpNot_20(v *Value) bool { } func rewriteValuegeneric_OpNot_30(v *Value) bool { // match: (Not (Less8 x y)) - // cond: // result: (Geq8 x y) for { v_0 := v.Args[0] @@ -40359,7 +37144,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Less64U x y)) - // cond: // result: (Geq64U x y) for { v_0 := v.Args[0] @@ -40374,7 +37158,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Less32U x y)) - // cond: // result: (Geq32U x y) for { v_0 := v.Args[0] @@ -40389,7 +37172,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Less16U x y)) - // cond: // result: (Geq16U x y) for { v_0 := v.Args[0] @@ -40404,7 +37186,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Less8U x y)) - // cond: // result: (Geq8U x y) for { v_0 := v.Args[0] @@ -40419,7 +37200,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Leq64 x y)) - // cond: // result: (Greater64 x y) for { v_0 := v.Args[0] @@ -40434,7 +37214,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Leq32 x y)) - // cond: // result: (Greater32 x y) for { v_0 := v.Args[0] @@ -40449,7 +37228,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Leq16 x y)) - // cond: // result: (Greater16 x y) for { v_0 := v.Args[0] @@ -40464,7 +37242,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Leq8 x y)) - // cond: // result: (Greater8 x y) for { v_0 := v.Args[0] @@ -40479,7 +37256,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { return true } // match: (Not (Leq64U x y)) - // cond: // result: (Greater64U x y) for { v_0 := v.Args[0] @@ -40497,7 +37273,6 @@ func rewriteValuegeneric_OpNot_30(v *Value) bool { } func rewriteValuegeneric_OpNot_40(v *Value) bool { // match: (Not (Leq32U x y)) - // cond: // result: (Greater32U x y) for { v_0 := v.Args[0] @@ -40512,7 +37287,6 @@ func rewriteValuegeneric_OpNot_40(v *Value) bool { return true } // match: (Not (Leq16U x y)) - // cond: // result: (Greater16U x y) for { v_0 := v.Args[0] @@ -40527,7 +37301,6 @@ func rewriteValuegeneric_OpNot_40(v *Value) bool { return true } // match: (Not (Leq8U x y)) - // cond: // result: (Greater8U x y) for { v_0 := v.Args[0] @@ -40545,7 +37318,6 @@ func rewriteValuegeneric_OpNot_40(v *Value) bool { } func rewriteValuegeneric_OpOffPtr_0(v *Value) bool { // match: (OffPtr (OffPtr p [b]) [a]) - // cond: // result: (OffPtr p [a+b]) for { a := v.AuxInt @@ -40580,7 +37352,6 @@ func rewriteValuegeneric_OpOffPtr_0(v *Value) bool { } func rewriteValuegeneric_OpOr16_0(v *Value) bool { // match: (Or16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c|d))]) for { _ = v.Args[1] @@ -40599,7 +37370,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 (Const16 [d]) (Const16 [c])) - // cond: // result: (Const16 [int64(int16(c|d))]) for { _ = v.Args[1] @@ -40618,7 +37388,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 x x) - // cond: // result: x for { x := v.Args[1] @@ -40631,15 +37400,11 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 (Const16 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -40648,16 +37413,12 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 x (Const16 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -40666,15 +37427,11 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 (Const16 [-1]) _) - // cond: // result: (Const16 [-1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst16 || v_0.AuxInt != -1 { break } v.reset(OpConst16) @@ -40682,15 +37439,11 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 _ (Const16 [-1])) - // cond: // result: (Const16 [-1]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst16 || v_1.AuxInt != -1 { break } v.reset(OpConst16) @@ -40698,7 +37451,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 x (Or16 x y)) - // cond: // result: (Or16 x y) for { _ = v.Args[1] @@ -40717,7 +37469,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 x (Or16 y x)) - // cond: // result: (Or16 x y) for { _ = v.Args[1] @@ -40737,7 +37488,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { return true } // match: (Or16 (Or16 x y) x) - // cond: // result: (Or16 x y) for { x := v.Args[1] @@ -40759,7 +37509,6 @@ func rewriteValuegeneric_OpOr16_0(v *Value) bool { func rewriteValuegeneric_OpOr16_10(v *Value) bool { b := v.Block // match: (Or16 (Or16 y x) x) - // cond: // result: (Or16 x y) for { x := v.Args[1] @@ -41012,7 +37761,6 @@ func rewriteValuegeneric_OpOr16_10(v *Value) bool { return true } // match: (Or16 (Const16 [c]) (Or16 (Const16 [d]) x)) - // cond: // result: (Or16 (Const16 [int64(int16(c|d))]) x) for { _ = v.Args[1] @@ -41028,10 +37776,7 @@ func rewriteValuegeneric_OpOr16_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -41047,7 +37792,6 @@ func rewriteValuegeneric_OpOr16_10(v *Value) bool { func rewriteValuegeneric_OpOr16_20(v *Value) bool { b := v.Block // match: (Or16 (Const16 [c]) (Or16 x (Const16 [d]))) - // cond: // result: (Or16 (Const16 [int64(int16(c|d))]) x) for { _ = v.Args[1] @@ -41064,10 +37808,7 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -41079,7 +37820,6 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { return true } // match: (Or16 (Or16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Or16 (Const16 [int64(int16(c|d))]) x) for { _ = v.Args[1] @@ -41095,10 +37835,7 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -41110,7 +37847,6 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { return true } // match: (Or16 (Or16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Or16 (Const16 [int64(int16(c|d))]) x) for { _ = v.Args[1] @@ -41127,10 +37863,7 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -41145,7 +37878,6 @@ func rewriteValuegeneric_OpOr16_20(v *Value) bool { } func rewriteValuegeneric_OpOr32_0(v *Value) bool { // match: (Or32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c|d))]) for { _ = v.Args[1] @@ -41164,7 +37896,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 (Const32 [d]) (Const32 [c])) - // cond: // result: (Const32 [int64(int32(c|d))]) for { _ = v.Args[1] @@ -41183,7 +37914,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 x x) - // cond: // result: x for { x := v.Args[1] @@ -41196,15 +37926,11 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 (Const32 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -41213,16 +37939,12 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 x (Const32 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -41231,15 +37953,11 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 (Const32 [-1]) _) - // cond: // result: (Const32 [-1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst32 || v_0.AuxInt != -1 { break } v.reset(OpConst32) @@ -41247,15 +37965,11 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 _ (Const32 [-1])) - // cond: // result: (Const32 [-1]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst32 || v_1.AuxInt != -1 { break } v.reset(OpConst32) @@ -41263,7 +37977,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 x (Or32 x y)) - // cond: // result: (Or32 x y) for { _ = v.Args[1] @@ -41282,7 +37995,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 x (Or32 y x)) - // cond: // result: (Or32 x y) for { _ = v.Args[1] @@ -41302,7 +38014,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { return true } // match: (Or32 (Or32 x y) x) - // cond: // result: (Or32 x y) for { x := v.Args[1] @@ -41324,7 +38035,6 @@ func rewriteValuegeneric_OpOr32_0(v *Value) bool { func rewriteValuegeneric_OpOr32_10(v *Value) bool { b := v.Block // match: (Or32 (Or32 y x) x) - // cond: // result: (Or32 x y) for { x := v.Args[1] @@ -41577,7 +38287,6 @@ func rewriteValuegeneric_OpOr32_10(v *Value) bool { return true } // match: (Or32 (Const32 [c]) (Or32 (Const32 [d]) x)) - // cond: // result: (Or32 (Const32 [int64(int32(c|d))]) x) for { _ = v.Args[1] @@ -41593,10 +38302,7 @@ func rewriteValuegeneric_OpOr32_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -41612,7 +38318,6 @@ func rewriteValuegeneric_OpOr32_10(v *Value) bool { func rewriteValuegeneric_OpOr32_20(v *Value) bool { b := v.Block // match: (Or32 (Const32 [c]) (Or32 x (Const32 [d]))) - // cond: // result: (Or32 (Const32 [int64(int32(c|d))]) x) for { _ = v.Args[1] @@ -41629,10 +38334,7 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -41644,7 +38346,6 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { return true } // match: (Or32 (Or32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Or32 (Const32 [int64(int32(c|d))]) x) for { _ = v.Args[1] @@ -41660,10 +38361,7 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -41675,7 +38373,6 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { return true } // match: (Or32 (Or32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Or32 (Const32 [int64(int32(c|d))]) x) for { _ = v.Args[1] @@ -41692,10 +38389,7 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -41710,7 +38404,6 @@ func rewriteValuegeneric_OpOr32_20(v *Value) bool { } func rewriteValuegeneric_OpOr64_0(v *Value) bool { // match: (Or64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c|d]) for { _ = v.Args[1] @@ -41729,7 +38422,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 (Const64 [d]) (Const64 [c])) - // cond: // result: (Const64 [c|d]) for { _ = v.Args[1] @@ -41748,7 +38440,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 x x) - // cond: // result: x for { x := v.Args[1] @@ -41761,15 +38452,11 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 (Const64 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -41778,16 +38465,12 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -41796,15 +38479,11 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 (Const64 [-1]) _) - // cond: // result: (Const64 [-1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst64 || v_0.AuxInt != -1 { break } v.reset(OpConst64) @@ -41812,15 +38491,11 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 _ (Const64 [-1])) - // cond: // result: (Const64 [-1]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst64 || v_1.AuxInt != -1 { break } v.reset(OpConst64) @@ -41828,7 +38503,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 x (Or64 x y)) - // cond: // result: (Or64 x y) for { _ = v.Args[1] @@ -41847,7 +38521,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 x (Or64 y x)) - // cond: // result: (Or64 x y) for { _ = v.Args[1] @@ -41867,7 +38540,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { return true } // match: (Or64 (Or64 x y) x) - // cond: // result: (Or64 x y) for { x := v.Args[1] @@ -41889,7 +38561,6 @@ func rewriteValuegeneric_OpOr64_0(v *Value) bool { func rewriteValuegeneric_OpOr64_10(v *Value) bool { b := v.Block // match: (Or64 (Or64 y x) x) - // cond: // result: (Or64 x y) for { x := v.Args[1] @@ -42142,7 +38813,6 @@ func rewriteValuegeneric_OpOr64_10(v *Value) bool { return true } // match: (Or64 (Const64 [c]) (Or64 (Const64 [d]) x)) - // cond: // result: (Or64 (Const64 [c|d]) x) for { _ = v.Args[1] @@ -42158,10 +38828,7 @@ func rewriteValuegeneric_OpOr64_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -42177,7 +38844,6 @@ func rewriteValuegeneric_OpOr64_10(v *Value) bool { func rewriteValuegeneric_OpOr64_20(v *Value) bool { b := v.Block // match: (Or64 (Const64 [c]) (Or64 x (Const64 [d]))) - // cond: // result: (Or64 (Const64 [c|d]) x) for { _ = v.Args[1] @@ -42194,10 +38860,7 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -42209,7 +38872,6 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { return true } // match: (Or64 (Or64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Or64 (Const64 [c|d]) x) for { _ = v.Args[1] @@ -42225,10 +38887,7 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -42240,7 +38899,6 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { return true } // match: (Or64 (Or64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Or64 (Const64 [c|d]) x) for { _ = v.Args[1] @@ -42257,10 +38915,7 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -42275,7 +38930,6 @@ func rewriteValuegeneric_OpOr64_20(v *Value) bool { } func rewriteValuegeneric_OpOr8_0(v *Value) bool { // match: (Or8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c|d))]) for { _ = v.Args[1] @@ -42294,7 +38948,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 (Const8 [d]) (Const8 [c])) - // cond: // result: (Const8 [int64(int8(c|d))]) for { _ = v.Args[1] @@ -42313,7 +38966,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 x x) - // cond: // result: x for { x := v.Args[1] @@ -42326,15 +38978,11 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 (Const8 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -42343,16 +38991,12 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 x (Const8 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -42361,15 +39005,11 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 (Const8 [-1]) _) - // cond: // result: (Const8 [-1]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != -1 { + if v_0.Op != OpConst8 || v_0.AuxInt != -1 { break } v.reset(OpConst8) @@ -42377,15 +39017,11 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 _ (Const8 [-1])) - // cond: // result: (Const8 [-1]) for { _ = v.Args[1] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != -1 { + if v_1.Op != OpConst8 || v_1.AuxInt != -1 { break } v.reset(OpConst8) @@ -42393,7 +39029,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 x (Or8 x y)) - // cond: // result: (Or8 x y) for { _ = v.Args[1] @@ -42412,7 +39047,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 x (Or8 y x)) - // cond: // result: (Or8 x y) for { _ = v.Args[1] @@ -42432,7 +39066,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { return true } // match: (Or8 (Or8 x y) x) - // cond: // result: (Or8 x y) for { x := v.Args[1] @@ -42454,7 +39087,6 @@ func rewriteValuegeneric_OpOr8_0(v *Value) bool { func rewriteValuegeneric_OpOr8_10(v *Value) bool { b := v.Block // match: (Or8 (Or8 y x) x) - // cond: // result: (Or8 x y) for { x := v.Args[1] @@ -42707,7 +39339,6 @@ func rewriteValuegeneric_OpOr8_10(v *Value) bool { return true } // match: (Or8 (Const8 [c]) (Or8 (Const8 [d]) x)) - // cond: // result: (Or8 (Const8 [int64(int8(c|d))]) x) for { _ = v.Args[1] @@ -42723,10 +39354,7 @@ func rewriteValuegeneric_OpOr8_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -42742,7 +39370,6 @@ func rewriteValuegeneric_OpOr8_10(v *Value) bool { func rewriteValuegeneric_OpOr8_20(v *Value) bool { b := v.Block // match: (Or8 (Const8 [c]) (Or8 x (Const8 [d]))) - // cond: // result: (Or8 (Const8 [int64(int8(c|d))]) x) for { _ = v.Args[1] @@ -42759,10 +39386,7 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -42774,7 +39398,6 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { return true } // match: (Or8 (Or8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Or8 (Const8 [int64(int8(c|d))]) x) for { _ = v.Args[1] @@ -42790,10 +39413,7 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -42805,7 +39425,6 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { return true } // match: (Or8 (Or8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Or8 (Const8 [int64(int8(c|d))]) x) for { _ = v.Args[1] @@ -42822,10 +39441,7 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -42840,7 +39456,6 @@ func rewriteValuegeneric_OpOr8_20(v *Value) bool { } func rewriteValuegeneric_OpPhi_0(v *Value) bool { // match: (Phi (Const8 [c]) (Const8 [c])) - // cond: // result: (Const8 [c]) for { _ = v.Args[1] @@ -42850,13 +39465,7 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { } c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != c { - break - } - if len(v.Args) != 2 { + if v_1.Op != OpConst8 || v_1.AuxInt != c || len(v.Args) != 2 { break } v.reset(OpConst8) @@ -42864,7 +39473,6 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { return true } // match: (Phi (Const16 [c]) (Const16 [c])) - // cond: // result: (Const16 [c]) for { _ = v.Args[1] @@ -42874,13 +39482,7 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { } c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != c { - break - } - if len(v.Args) != 2 { + if v_1.Op != OpConst16 || v_1.AuxInt != c || len(v.Args) != 2 { break } v.reset(OpConst16) @@ -42888,7 +39490,6 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { return true } // match: (Phi (Const32 [c]) (Const32 [c])) - // cond: // result: (Const32 [c]) for { _ = v.Args[1] @@ -42898,13 +39499,7 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { } c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != c { - break - } - if len(v.Args) != 2 { + if v_1.Op != OpConst32 || v_1.AuxInt != c || len(v.Args) != 2 { break } v.reset(OpConst32) @@ -42912,7 +39507,6 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { return true } // match: (Phi (Const64 [c]) (Const64 [c])) - // cond: // result: (Const64 [c]) for { _ = v.Args[1] @@ -42922,13 +39516,7 @@ func rewriteValuegeneric_OpPhi_0(v *Value) bool { } c := v_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != c { - break - } - if len(v.Args) != 2 { + if v_1.Op != OpConst64 || v_1.AuxInt != c || len(v.Args) != 2 { break } v.reset(OpConst64) @@ -43073,7 +39661,6 @@ func rewriteValuegeneric_OpRotateLeft8_0(v *Value) bool { } func rewriteValuegeneric_OpRound32F_0(v *Value) bool { // match: (Round32F x:(Const32F)) - // cond: // result: x for { x := v.Args[0] @@ -43089,7 +39676,6 @@ func rewriteValuegeneric_OpRound32F_0(v *Value) bool { } func rewriteValuegeneric_OpRound64F_0(v *Value) bool { // match: (Round64F x:(Const64F)) - // cond: // result: x for { x := v.Args[0] @@ -43106,7 +39692,6 @@ func rewriteValuegeneric_OpRound64F_0(v *Value) bool { func rewriteValuegeneric_OpRsh16Ux16_0(v *Value) bool { b := v.Block // match: (Rsh16Ux16 x (Const16 [c])) - // cond: // result: (Rsh16Ux64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -43125,15 +39710,11 @@ func rewriteValuegeneric_OpRsh16Ux16_0(v *Value) bool { return true } // match: (Rsh16Ux16 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43145,7 +39726,6 @@ func rewriteValuegeneric_OpRsh16Ux16_0(v *Value) bool { func rewriteValuegeneric_OpRsh16Ux32_0(v *Value) bool { b := v.Block // match: (Rsh16Ux32 x (Const32 [c])) - // cond: // result: (Rsh16Ux64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -43164,15 +39744,11 @@ func rewriteValuegeneric_OpRsh16Ux32_0(v *Value) bool { return true } // match: (Rsh16Ux32 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43185,7 +39761,6 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16Ux64 (Const16 [c]) (Const64 [d])) - // cond: // result: (Const16 [int64(int16(uint16(c) >> uint64(d)))]) for { _ = v.Args[1] @@ -43204,16 +39779,12 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -43222,15 +39793,11 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43287,7 +39854,6 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 (Rsh16x64 x _) (Const64 [15])) - // cond: // result: (Rsh16Ux64 x (Const64 [15])) for { _ = v.Args[1] @@ -43354,7 +39920,6 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { return true } // match: (Rsh16Ux64 (Lsh16x64 x (Const64 [8])) (Const64 [8])) - // cond: // result: (ZeroExt8to16 (Trunc16to8 x)) for { _ = v.Args[1] @@ -43365,17 +39930,11 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 8 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 8 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpConst64 || v_1.AuxInt != 8 { break } v.reset(OpZeroExt8to16) @@ -43389,7 +39948,6 @@ func rewriteValuegeneric_OpRsh16Ux64_0(v *Value) bool { func rewriteValuegeneric_OpRsh16Ux8_0(v *Value) bool { b := v.Block // match: (Rsh16Ux8 x (Const8 [c])) - // cond: // result: (Rsh16Ux64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -43408,15 +39966,11 @@ func rewriteValuegeneric_OpRsh16Ux8_0(v *Value) bool { return true } // match: (Rsh16Ux8 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43428,7 +39982,6 @@ func rewriteValuegeneric_OpRsh16Ux8_0(v *Value) bool { func rewriteValuegeneric_OpRsh16x16_0(v *Value) bool { b := v.Block // match: (Rsh16x16 x (Const16 [c])) - // cond: // result: (Rsh16x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -43447,15 +40000,11 @@ func rewriteValuegeneric_OpRsh16x16_0(v *Value) bool { return true } // match: (Rsh16x16 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43467,7 +40016,6 @@ func rewriteValuegeneric_OpRsh16x16_0(v *Value) bool { func rewriteValuegeneric_OpRsh16x32_0(v *Value) bool { b := v.Block // match: (Rsh16x32 x (Const32 [c])) - // cond: // result: (Rsh16x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -43486,15 +40034,11 @@ func rewriteValuegeneric_OpRsh16x32_0(v *Value) bool { return true } // match: (Rsh16x32 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43507,7 +40051,6 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh16x64 (Const16 [c]) (Const64 [d])) - // cond: // result: (Const16 [int64(int16(c) >> uint64(d))]) for { _ = v.Args[1] @@ -43526,16 +40069,12 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -43544,15 +40083,11 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43592,7 +40127,6 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { return true } // match: (Rsh16x64 (Lsh16x64 x (Const64 [8])) (Const64 [8])) - // cond: // result: (SignExt8to16 (Trunc16to8 x)) for { _ = v.Args[1] @@ -43603,17 +40137,11 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 8 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 8 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 8 { + if v_1.Op != OpConst64 || v_1.AuxInt != 8 { break } v.reset(OpSignExt8to16) @@ -43627,7 +40155,6 @@ func rewriteValuegeneric_OpRsh16x64_0(v *Value) bool { func rewriteValuegeneric_OpRsh16x8_0(v *Value) bool { b := v.Block // match: (Rsh16x8 x (Const8 [c])) - // cond: // result: (Rsh16x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -43646,15 +40173,11 @@ func rewriteValuegeneric_OpRsh16x8_0(v *Value) bool { return true } // match: (Rsh16x8 (Const16 [0]) _) - // cond: // result: (Const16 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpConst16) @@ -43666,7 +40189,6 @@ func rewriteValuegeneric_OpRsh16x8_0(v *Value) bool { func rewriteValuegeneric_OpRsh32Ux16_0(v *Value) bool { b := v.Block // match: (Rsh32Ux16 x (Const16 [c])) - // cond: // result: (Rsh32Ux64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -43685,15 +40207,11 @@ func rewriteValuegeneric_OpRsh32Ux16_0(v *Value) bool { return true } // match: (Rsh32Ux16 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -43705,7 +40223,6 @@ func rewriteValuegeneric_OpRsh32Ux16_0(v *Value) bool { func rewriteValuegeneric_OpRsh32Ux32_0(v *Value) bool { b := v.Block // match: (Rsh32Ux32 x (Const32 [c])) - // cond: // result: (Rsh32Ux64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -43724,15 +40241,11 @@ func rewriteValuegeneric_OpRsh32Ux32_0(v *Value) bool { return true } // match: (Rsh32Ux32 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -43745,7 +40258,6 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32Ux64 (Const32 [c]) (Const64 [d])) - // cond: // result: (Const32 [int64(int32(uint32(c) >> uint64(d)))]) for { _ = v.Args[1] @@ -43764,16 +40276,12 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -43782,15 +40290,11 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -43847,7 +40351,6 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 (Rsh32x64 x _) (Const64 [31])) - // cond: // result: (Rsh32Ux64 x (Const64 [31])) for { _ = v.Args[1] @@ -43914,7 +40417,6 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 (Lsh32x64 x (Const64 [24])) (Const64 [24])) - // cond: // result: (ZeroExt8to32 (Trunc32to8 x)) for { _ = v.Args[1] @@ -43925,17 +40427,11 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 24 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 24 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 24 { + if v_1.Op != OpConst64 || v_1.AuxInt != 24 { break } v.reset(OpZeroExt8to32) @@ -43945,7 +40441,6 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { return true } // match: (Rsh32Ux64 (Lsh32x64 x (Const64 [16])) (Const64 [16])) - // cond: // result: (ZeroExt16to32 (Trunc32to16 x)) for { _ = v.Args[1] @@ -43956,17 +40451,11 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 16 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 16 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpConst64 || v_1.AuxInt != 16 { break } v.reset(OpZeroExt16to32) @@ -43980,7 +40469,6 @@ func rewriteValuegeneric_OpRsh32Ux64_0(v *Value) bool { func rewriteValuegeneric_OpRsh32Ux8_0(v *Value) bool { b := v.Block // match: (Rsh32Ux8 x (Const8 [c])) - // cond: // result: (Rsh32Ux64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -43999,15 +40487,11 @@ func rewriteValuegeneric_OpRsh32Ux8_0(v *Value) bool { return true } // match: (Rsh32Ux8 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -44019,7 +40503,6 @@ func rewriteValuegeneric_OpRsh32Ux8_0(v *Value) bool { func rewriteValuegeneric_OpRsh32x16_0(v *Value) bool { b := v.Block // match: (Rsh32x16 x (Const16 [c])) - // cond: // result: (Rsh32x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -44038,15 +40521,11 @@ func rewriteValuegeneric_OpRsh32x16_0(v *Value) bool { return true } // match: (Rsh32x16 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -44058,7 +40537,6 @@ func rewriteValuegeneric_OpRsh32x16_0(v *Value) bool { func rewriteValuegeneric_OpRsh32x32_0(v *Value) bool { b := v.Block // match: (Rsh32x32 x (Const32 [c])) - // cond: // result: (Rsh32x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -44077,15 +40555,11 @@ func rewriteValuegeneric_OpRsh32x32_0(v *Value) bool { return true } // match: (Rsh32x32 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -44098,7 +40572,6 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh32x64 (Const32 [c]) (Const64 [d])) - // cond: // result: (Const32 [int64(int32(c) >> uint64(d))]) for { _ = v.Args[1] @@ -44117,16 +40590,12 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -44135,15 +40604,11 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -44183,7 +40648,6 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 (Lsh32x64 x (Const64 [24])) (Const64 [24])) - // cond: // result: (SignExt8to32 (Trunc32to8 x)) for { _ = v.Args[1] @@ -44194,17 +40658,11 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 24 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 24 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 24 { + if v_1.Op != OpConst64 || v_1.AuxInt != 24 { break } v.reset(OpSignExt8to32) @@ -44214,7 +40672,6 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { return true } // match: (Rsh32x64 (Lsh32x64 x (Const64 [16])) (Const64 [16])) - // cond: // result: (SignExt16to32 (Trunc32to16 x)) for { _ = v.Args[1] @@ -44225,17 +40682,11 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 16 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 16 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 16 { + if v_1.Op != OpConst64 || v_1.AuxInt != 16 { break } v.reset(OpSignExt16to32) @@ -44249,7 +40700,6 @@ func rewriteValuegeneric_OpRsh32x64_0(v *Value) bool { func rewriteValuegeneric_OpRsh32x8_0(v *Value) bool { b := v.Block // match: (Rsh32x8 x (Const8 [c])) - // cond: // result: (Rsh32x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -44268,15 +40718,11 @@ func rewriteValuegeneric_OpRsh32x8_0(v *Value) bool { return true } // match: (Rsh32x8 (Const32 [0]) _) - // cond: // result: (Const32 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -44288,7 +40734,6 @@ func rewriteValuegeneric_OpRsh32x8_0(v *Value) bool { func rewriteValuegeneric_OpRsh64Ux16_0(v *Value) bool { b := v.Block // match: (Rsh64Ux16 x (Const16 [c])) - // cond: // result: (Rsh64Ux64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -44307,15 +40752,11 @@ func rewriteValuegeneric_OpRsh64Ux16_0(v *Value) bool { return true } // match: (Rsh64Ux16 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44327,7 +40768,6 @@ func rewriteValuegeneric_OpRsh64Ux16_0(v *Value) bool { func rewriteValuegeneric_OpRsh64Ux32_0(v *Value) bool { b := v.Block // match: (Rsh64Ux32 x (Const32 [c])) - // cond: // result: (Rsh64Ux64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -44346,15 +40786,11 @@ func rewriteValuegeneric_OpRsh64Ux32_0(v *Value) bool { return true } // match: (Rsh64Ux32 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44367,7 +40803,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64Ux64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [int64(uint64(c) >> uint64(d))]) for { _ = v.Args[1] @@ -44386,16 +40821,12 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -44404,15 +40835,11 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44469,7 +40896,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 (Rsh64x64 x _) (Const64 [63])) - // cond: // result: (Rsh64Ux64 x (Const64 [63])) for { _ = v.Args[1] @@ -44536,7 +40962,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 (Lsh64x64 x (Const64 [56])) (Const64 [56])) - // cond: // result: (ZeroExt8to64 (Trunc64to8 x)) for { _ = v.Args[1] @@ -44547,17 +40972,11 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 56 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 56 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 56 { + if v_1.Op != OpConst64 || v_1.AuxInt != 56 { break } v.reset(OpZeroExt8to64) @@ -44567,7 +40986,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 (Lsh64x64 x (Const64 [48])) (Const64 [48])) - // cond: // result: (ZeroExt16to64 (Trunc64to16 x)) for { _ = v.Args[1] @@ -44578,17 +40996,11 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 48 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 48 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 48 { + if v_1.Op != OpConst64 || v_1.AuxInt != 48 { break } v.reset(OpZeroExt16to64) @@ -44598,7 +41010,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { return true } // match: (Rsh64Ux64 (Lsh64x64 x (Const64 [32])) (Const64 [32])) - // cond: // result: (ZeroExt32to64 (Trunc64to32 x)) for { _ = v.Args[1] @@ -44609,17 +41020,11 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 32 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 32 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpConst64 || v_1.AuxInt != 32 { break } v.reset(OpZeroExt32to64) @@ -44633,7 +41038,6 @@ func rewriteValuegeneric_OpRsh64Ux64_0(v *Value) bool { func rewriteValuegeneric_OpRsh64Ux8_0(v *Value) bool { b := v.Block // match: (Rsh64Ux8 x (Const8 [c])) - // cond: // result: (Rsh64Ux64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -44652,15 +41056,11 @@ func rewriteValuegeneric_OpRsh64Ux8_0(v *Value) bool { return true } // match: (Rsh64Ux8 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44672,7 +41072,6 @@ func rewriteValuegeneric_OpRsh64Ux8_0(v *Value) bool { func rewriteValuegeneric_OpRsh64x16_0(v *Value) bool { b := v.Block // match: (Rsh64x16 x (Const16 [c])) - // cond: // result: (Rsh64x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -44691,15 +41090,11 @@ func rewriteValuegeneric_OpRsh64x16_0(v *Value) bool { return true } // match: (Rsh64x16 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44711,7 +41106,6 @@ func rewriteValuegeneric_OpRsh64x16_0(v *Value) bool { func rewriteValuegeneric_OpRsh64x32_0(v *Value) bool { b := v.Block // match: (Rsh64x32 x (Const32 [c])) - // cond: // result: (Rsh64x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -44730,15 +41124,11 @@ func rewriteValuegeneric_OpRsh64x32_0(v *Value) bool { return true } // match: (Rsh64x32 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44751,7 +41141,6 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh64x64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c >> uint64(d)]) for { _ = v.Args[1] @@ -44770,16 +41159,12 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -44788,15 +41173,11 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44836,7 +41217,6 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 (Lsh64x64 x (Const64 [56])) (Const64 [56])) - // cond: // result: (SignExt8to64 (Trunc64to8 x)) for { _ = v.Args[1] @@ -44847,17 +41227,11 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 56 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 56 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 56 { + if v_1.Op != OpConst64 || v_1.AuxInt != 56 { break } v.reset(OpSignExt8to64) @@ -44867,7 +41241,6 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 (Lsh64x64 x (Const64 [48])) (Const64 [48])) - // cond: // result: (SignExt16to64 (Trunc64to16 x)) for { _ = v.Args[1] @@ -44878,17 +41251,11 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 48 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 48 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 48 { + if v_1.Op != OpConst64 || v_1.AuxInt != 48 { break } v.reset(OpSignExt16to64) @@ -44898,7 +41265,6 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { return true } // match: (Rsh64x64 (Lsh64x64 x (Const64 [32])) (Const64 [32])) - // cond: // result: (SignExt32to64 (Trunc64to32 x)) for { _ = v.Args[1] @@ -44909,17 +41275,11 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { _ = v_0.Args[1] x := v_0.Args[0] v_0_1 := v_0.Args[1] - if v_0_1.Op != OpConst64 { - break - } - if v_0_1.AuxInt != 32 { + if v_0_1.Op != OpConst64 || v_0_1.AuxInt != 32 { break } v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 32 { + if v_1.Op != OpConst64 || v_1.AuxInt != 32 { break } v.reset(OpSignExt32to64) @@ -44933,7 +41293,6 @@ func rewriteValuegeneric_OpRsh64x64_0(v *Value) bool { func rewriteValuegeneric_OpRsh64x8_0(v *Value) bool { b := v.Block // match: (Rsh64x8 x (Const8 [c])) - // cond: // result: (Rsh64x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -44952,15 +41311,11 @@ func rewriteValuegeneric_OpRsh64x8_0(v *Value) bool { return true } // match: (Rsh64x8 (Const64 [0]) _) - // cond: // result: (Const64 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -44972,7 +41327,6 @@ func rewriteValuegeneric_OpRsh64x8_0(v *Value) bool { func rewriteValuegeneric_OpRsh8Ux16_0(v *Value) bool { b := v.Block // match: (Rsh8Ux16 x (Const16 [c])) - // cond: // result: (Rsh8Ux64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -44991,15 +41345,11 @@ func rewriteValuegeneric_OpRsh8Ux16_0(v *Value) bool { return true } // match: (Rsh8Ux16 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45011,7 +41361,6 @@ func rewriteValuegeneric_OpRsh8Ux16_0(v *Value) bool { func rewriteValuegeneric_OpRsh8Ux32_0(v *Value) bool { b := v.Block // match: (Rsh8Ux32 x (Const32 [c])) - // cond: // result: (Rsh8Ux64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -45030,15 +41379,11 @@ func rewriteValuegeneric_OpRsh8Ux32_0(v *Value) bool { return true } // match: (Rsh8Ux32 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45051,7 +41396,6 @@ func rewriteValuegeneric_OpRsh8Ux64_0(v *Value) bool { b := v.Block typ := &b.Func.Config.Types // match: (Rsh8Ux64 (Const8 [c]) (Const64 [d])) - // cond: // result: (Const8 [int64(int8(uint8(c) >> uint64(d)))]) for { _ = v.Args[1] @@ -45070,16 +41414,12 @@ func rewriteValuegeneric_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -45088,15 +41428,11 @@ func rewriteValuegeneric_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45153,7 +41489,6 @@ func rewriteValuegeneric_OpRsh8Ux64_0(v *Value) bool { return true } // match: (Rsh8Ux64 (Rsh8x64 x _) (Const64 [7])) - // cond: // result: (Rsh8Ux64 x (Const64 [7] )) for { _ = v.Args[1] @@ -45224,7 +41559,6 @@ func rewriteValuegeneric_OpRsh8Ux64_0(v *Value) bool { func rewriteValuegeneric_OpRsh8Ux8_0(v *Value) bool { b := v.Block // match: (Rsh8Ux8 x (Const8 [c])) - // cond: // result: (Rsh8Ux64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -45243,15 +41577,11 @@ func rewriteValuegeneric_OpRsh8Ux8_0(v *Value) bool { return true } // match: (Rsh8Ux8 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45263,7 +41593,6 @@ func rewriteValuegeneric_OpRsh8Ux8_0(v *Value) bool { func rewriteValuegeneric_OpRsh8x16_0(v *Value) bool { b := v.Block // match: (Rsh8x16 x (Const16 [c])) - // cond: // result: (Rsh8x64 x (Const64 [int64(uint16(c))])) for { t := v.Type @@ -45282,15 +41611,11 @@ func rewriteValuegeneric_OpRsh8x16_0(v *Value) bool { return true } // match: (Rsh8x16 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45302,7 +41627,6 @@ func rewriteValuegeneric_OpRsh8x16_0(v *Value) bool { func rewriteValuegeneric_OpRsh8x32_0(v *Value) bool { b := v.Block // match: (Rsh8x32 x (Const32 [c])) - // cond: // result: (Rsh8x64 x (Const64 [int64(uint32(c))])) for { t := v.Type @@ -45321,15 +41645,11 @@ func rewriteValuegeneric_OpRsh8x32_0(v *Value) bool { return true } // match: (Rsh8x32 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45341,7 +41661,6 @@ func rewriteValuegeneric_OpRsh8x32_0(v *Value) bool { func rewriteValuegeneric_OpRsh8x64_0(v *Value) bool { b := v.Block // match: (Rsh8x64 (Const8 [c]) (Const64 [d])) - // cond: // result: (Const8 [int64(int8(c) >> uint64(d))]) for { _ = v.Args[1] @@ -45360,16 +41679,12 @@ func rewriteValuegeneric_OpRsh8x64_0(v *Value) bool { return true } // match: (Rsh8x64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -45378,15 +41693,11 @@ func rewriteValuegeneric_OpRsh8x64_0(v *Value) bool { return true } // match: (Rsh8x64 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45430,7 +41741,6 @@ func rewriteValuegeneric_OpRsh8x64_0(v *Value) bool { func rewriteValuegeneric_OpRsh8x8_0(v *Value) bool { b := v.Block // match: (Rsh8x8 x (Const8 [c])) - // cond: // result: (Rsh8x64 x (Const64 [int64(uint8(c))])) for { t := v.Type @@ -45449,15 +41759,11 @@ func rewriteValuegeneric_OpRsh8x8_0(v *Value) bool { return true } // match: (Rsh8x8 (Const8 [0]) _) - // cond: // result: (Const8 [0]) for { _ = v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpConst8) @@ -45468,7 +41774,6 @@ func rewriteValuegeneric_OpRsh8x8_0(v *Value) bool { } func rewriteValuegeneric_OpSelect0_0(v *Value) bool { // match: (Select0 (Div128u (Const64 [0]) lo y)) - // cond: // result: (Div64u lo y) for { v_0 := v.Args[0] @@ -45477,10 +41782,7 @@ func rewriteValuegeneric_OpSelect0_0(v *Value) bool { } y := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpConst64 || v_0_0.AuxInt != 0 { break } lo := v_0.Args[1] @@ -45493,7 +41795,6 @@ func rewriteValuegeneric_OpSelect0_0(v *Value) bool { } func rewriteValuegeneric_OpSelect1_0(v *Value) bool { // match: (Select1 (Div128u (Const64 [0]) lo y)) - // cond: // result: (Mod64u lo y) for { v_0 := v.Args[0] @@ -45502,10 +41803,7 @@ func rewriteValuegeneric_OpSelect1_0(v *Value) bool { } y := v_0.Args[2] v_0_0 := v_0.Args[0] - if v_0_0.Op != OpConst64 { - break - } - if v_0_0.AuxInt != 0 { + if v_0_0.Op != OpConst64 || v_0_0.AuxInt != 0 { break } lo := v_0.Args[1] @@ -45518,7 +41816,6 @@ func rewriteValuegeneric_OpSelect1_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt16to32_0(v *Value) bool { // match: (SignExt16to32 (Const16 [c])) - // cond: // result: (Const32 [int64( int16(c))]) for { v_0 := v.Args[0] @@ -45560,7 +41857,6 @@ func rewriteValuegeneric_OpSignExt16to32_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt16to64_0(v *Value) bool { // match: (SignExt16to64 (Const16 [c])) - // cond: // result: (Const64 [int64( int16(c))]) for { v_0 := v.Args[0] @@ -45602,7 +41898,6 @@ func rewriteValuegeneric_OpSignExt16to64_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt32to64_0(v *Value) bool { // match: (SignExt32to64 (Const32 [c])) - // cond: // result: (Const64 [int64( int32(c))]) for { v_0 := v.Args[0] @@ -45644,7 +41939,6 @@ func rewriteValuegeneric_OpSignExt32to64_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt8to16_0(v *Value) bool { // match: (SignExt8to16 (Const8 [c])) - // cond: // result: (Const16 [int64( int8(c))]) for { v_0 := v.Args[0] @@ -45686,7 +41980,6 @@ func rewriteValuegeneric_OpSignExt8to16_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt8to32_0(v *Value) bool { // match: (SignExt8to32 (Const8 [c])) - // cond: // result: (Const32 [int64( int8(c))]) for { v_0 := v.Args[0] @@ -45728,7 +42021,6 @@ func rewriteValuegeneric_OpSignExt8to32_0(v *Value) bool { } func rewriteValuegeneric_OpSignExt8to64_0(v *Value) bool { // match: (SignExt8to64 (Const8 [c])) - // cond: // result: (Const64 [int64( int8(c))]) for { v_0 := v.Args[0] @@ -45770,7 +42062,6 @@ func rewriteValuegeneric_OpSignExt8to64_0(v *Value) bool { } func rewriteValuegeneric_OpSliceCap_0(v *Value) bool { // match: (SliceCap (SliceMake _ _ (Const64 [c]))) - // cond: // result: (Const64 [c]) for { v_0 := v.Args[0] @@ -45790,7 +42081,6 @@ func rewriteValuegeneric_OpSliceCap_0(v *Value) bool { return true } // match: (SliceCap (SliceMake _ _ (Const32 [c]))) - // cond: // result: (Const32 [c]) for { v_0 := v.Args[0] @@ -45810,7 +42100,6 @@ func rewriteValuegeneric_OpSliceCap_0(v *Value) bool { return true } // match: (SliceCap (SliceMake _ _ (SliceCap x))) - // cond: // result: (SliceCap x) for { v_0 := v.Args[0] @@ -45828,7 +42117,6 @@ func rewriteValuegeneric_OpSliceCap_0(v *Value) bool { return true } // match: (SliceCap (SliceMake _ _ (SliceLen x))) - // cond: // result: (SliceLen x) for { v_0 := v.Args[0] @@ -45849,7 +42137,6 @@ func rewriteValuegeneric_OpSliceCap_0(v *Value) bool { } func rewriteValuegeneric_OpSliceLen_0(v *Value) bool { // match: (SliceLen (SliceMake _ (Const64 [c]) _)) - // cond: // result: (Const64 [c]) for { v_0 := v.Args[0] @@ -45869,7 +42156,6 @@ func rewriteValuegeneric_OpSliceLen_0(v *Value) bool { return true } // match: (SliceLen (SliceMake _ (Const32 [c]) _)) - // cond: // result: (Const32 [c]) for { v_0 := v.Args[0] @@ -45889,7 +42175,6 @@ func rewriteValuegeneric_OpSliceLen_0(v *Value) bool { return true } // match: (SliceLen (SliceMake _ (SliceLen x) _)) - // cond: // result: (SliceLen x) for { v_0 := v.Args[0] @@ -45910,7 +42195,6 @@ func rewriteValuegeneric_OpSliceLen_0(v *Value) bool { } func rewriteValuegeneric_OpSlicePtr_0(v *Value) bool { // match: (SlicePtr (SliceMake (SlicePtr x) _ _)) - // cond: // result: (SlicePtr x) for { v_0 := v.Args[0] @@ -45947,14 +42231,10 @@ func rewriteValuegeneric_OpSlicemask_0(v *Value) bool { return true } // match: (Slicemask (Const32 [0])) - // cond: // result: (Const32 [0]) for { v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpConst32) @@ -45978,14 +42258,10 @@ func rewriteValuegeneric_OpSlicemask_0(v *Value) bool { return true } // match: (Slicemask (Const64 [0])) - // cond: // result: (Const64 [0]) for { v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpConst64) @@ -45996,7 +42272,6 @@ func rewriteValuegeneric_OpSlicemask_0(v *Value) bool { } func rewriteValuegeneric_OpSqrt_0(v *Value) bool { // match: (Sqrt (Const64F [c])) - // cond: // result: (Const64F [auxFrom64F(math.Sqrt(auxTo64F(c)))]) for { v_0 := v.Args[0] @@ -46123,10 +42398,7 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { t2 := v_1.Type _ = v_1.Args[1] p2 := v_1.Args[0] - if mem != v_1.Args[1] { - break - } - if !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1)) { + if mem != v_1.Args[1] || !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1)) { break } v.reset(OpCopy) @@ -46155,10 +42427,7 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { t3 := mem.Aux _ = mem.Args[2] p3 := mem.Args[0] - if oldmem != mem.Args[2] { - break - } - if !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3))) { + if oldmem != mem.Args[2] || !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3))) { break } v.reset(OpCopy) @@ -46194,10 +42463,7 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { t4 := mem_2.Aux _ = mem_2.Args[2] p4 := mem_2.Args[0] - if oldmem != mem_2.Args[2] { - break - } - if !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3)) && disjoint(p1, sizeof(t1), p4, sizeof(t4))) { + if oldmem != mem_2.Args[2] || !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3)) && disjoint(p1, sizeof(t1), p4, sizeof(t4))) { break } v.reset(OpCopy) @@ -46240,10 +42506,7 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { t5 := mem_2_2.Aux _ = mem_2_2.Args[2] p5 := mem_2_2.Args[0] - if oldmem != mem_2_2.Args[2] { - break - } - if !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3)) && disjoint(p1, sizeof(t1), p4, sizeof(t4)) && disjoint(p1, sizeof(t1), p5, sizeof(t5))) { + if oldmem != mem_2_2.Args[2] || !(isSamePtr(p1, p2) && t2.Size() == sizeof(t1) && disjoint(p1, sizeof(t1), p3, sizeof(t3)) && disjoint(p1, sizeof(t1), p4, sizeof(t4)) && disjoint(p1, sizeof(t1), p5, sizeof(t5))) { break } v.reset(OpCopy) @@ -46406,7 +42669,6 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { return true } // match: (Store _ (StructMake0) mem) - // cond: // result: mem for { mem := v.Args[2] @@ -46420,7 +42682,6 @@ func rewriteValuegeneric_OpStore_0(v *Value) bool { return true } // match: (Store dst (StructMake1 f0) mem) - // cond: // result: (Store {t.FieldType(0)} (OffPtr [0] dst) f0 mem) for { mem := v.Args[2] @@ -46448,7 +42709,6 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { config := b.Func.Config fe := b.Func.fe // match: (Store dst (StructMake2 f0 f1) mem) - // cond: // result: (Store {t.FieldType(1)} (OffPtr [t.FieldOff(1)] dst) f1 (Store {t.FieldType(0)} (OffPtr [0] dst) f0 mem)) for { mem := v.Args[2] @@ -46479,7 +42739,6 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { return true } // match: (Store dst (StructMake3 f0 f1 f2) mem) - // cond: // result: (Store {t.FieldType(2)} (OffPtr [t.FieldOff(2)] dst) f2 (Store {t.FieldType(1)} (OffPtr [t.FieldOff(1)] dst) f1 (Store {t.FieldType(0)} (OffPtr [0] dst) f0 mem))) for { mem := v.Args[2] @@ -46519,7 +42778,6 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { return true } // match: (Store dst (StructMake4 f0 f1 f2 f3) mem) - // cond: // result: (Store {t.FieldType(3)} (OffPtr [t.FieldOff(3)] dst) f3 (Store {t.FieldType(2)} (OffPtr [t.FieldOff(2)] dst) f2 (Store {t.FieldType(1)} (OffPtr [t.FieldOff(1)] dst) f1 (Store {t.FieldType(0)} (OffPtr [0] dst) f0 mem)))) for { mem := v.Args[2] @@ -46580,10 +42838,7 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { } _ = v_1.Args[1] src := v_1.Args[0] - if mem != v_1.Args[1] { - break - } - if !(!fe.CanSSA(t.(*types.Type))) { + if mem != v_1.Args[1] || !(!fe.CanSSA(t.(*types.Type))) { break } v.reset(OpMove) @@ -46612,10 +42867,7 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { break } x := v_2.Aux - if mem != v_2.Args[0] { - break - } - if !(!fe.CanSSA(t.(*types.Type))) { + if mem != v_2.Args[0] || !(!fe.CanSSA(t.(*types.Type))) { break } v.reset(OpMove) @@ -46630,7 +42882,6 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { return true } // match: (Store _ (ArrayMake0) mem) - // cond: // result: mem for { mem := v.Args[2] @@ -46644,7 +42895,6 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { return true } // match: (Store dst (ArrayMake1 e) mem) - // cond: // result: (Store {e.Type} dst e mem) for { mem := v.Args[2] @@ -46677,10 +42927,7 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { } c := v_0_0.AuxInt v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpSP { - break - } - if mem != v_0.Args[1] { + if v_0_0_0.Op != OpSP || mem != v_0.Args[1] { break } x := v.Args[1] @@ -46712,10 +42959,7 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { } c := v_0_0_0.AuxInt v_0_0_0_0 := v_0_0_0.Args[0] - if v_0_0_0_0.Op != OpSP { - break - } - if mem != v_0_0.Args[1] { + if v_0_0_0_0.Op != OpSP || mem != v_0_0.Args[1] { break } x := v.Args[1] @@ -46747,10 +42991,7 @@ func rewriteValuegeneric_OpStore_10(v *Value) bool { t2 := m2.Aux _ = m2.Args[2] op2 := m2.Args[0] - if op2.Op != OpOffPtr { - break - } - if op2.AuxInt != 0 { + if op2.Op != OpOffPtr || op2.AuxInt != 0 { break } p2 := op2.Args[0] @@ -46814,10 +43055,7 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { t3 := m3.Aux _ = m3.Args[2] op3 := m3.Args[0] - if op3.Op != OpOffPtr { - break - } - if op3.AuxInt != 0 { + if op3.Op != OpOffPtr || op3.AuxInt != 0 { break } p3 := op3.Args[0] @@ -46895,10 +43133,7 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { t4 := m4.Aux _ = m4.Args[2] op4 := m4.Args[0] - if op4.Op != OpOffPtr { - break - } - if op4.AuxInt != 0 { + if op4.Op != OpOffPtr || op4.AuxInt != 0 { break } p4 := op4.Args[0] @@ -46955,10 +43190,7 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { t2 := m2.Aux _ = m2.Args[2] op2 := m2.Args[0] - if op2.Op != OpOffPtr { - break - } - if op2.AuxInt != 0 { + if op2.Op != OpOffPtr || op2.AuxInt != 0 { break } p2 := op2.Args[0] @@ -47018,10 +43250,7 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { t3 := m3.Aux _ = m3.Args[2] op3 := m3.Args[0] - if op3.Op != OpOffPtr { - break - } - if op3.AuxInt != 0 { + if op3.Op != OpOffPtr || op3.AuxInt != 0 { break } p3 := op3.Args[0] @@ -47099,10 +43328,7 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { t4 := m4.Aux _ = m4.Args[2] op4 := m4.Args[0] - if op4.Op != OpOffPtr { - break - } - if op4.AuxInt != 0 { + if op4.Op != OpOffPtr || op4.AuxInt != 0 { break } p4 := op4.Args[0] @@ -47143,7 +43369,6 @@ func rewriteValuegeneric_OpStore_20(v *Value) bool { } func rewriteValuegeneric_OpStringLen_0(v *Value) bool { // match: (StringLen (StringMake _ (Const64 [c]))) - // cond: // result: (Const64 [c]) for { v_0 := v.Args[0] @@ -47166,7 +43391,6 @@ func rewriteValuegeneric_OpStringLen_0(v *Value) bool { } func rewriteValuegeneric_OpStringPtr_0(v *Value) bool { // match: (StringPtr (StringMake (Addr {s} base) _)) - // cond: // result: (Addr {s} base) for { v_0 := v.Args[0] @@ -47191,7 +43415,6 @@ func rewriteValuegeneric_OpStringPtr_0(v *Value) bool { } func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { // match: (StructSelect (StructMake1 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -47205,7 +43428,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [0] (StructMake2 x _)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -47223,7 +43445,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [1] (StructMake2 _ x)) - // cond: // result: x for { if v.AuxInt != 1 { @@ -47240,7 +43461,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [0] (StructMake3 x _ _)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -47258,7 +43478,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [1] (StructMake3 _ x _)) - // cond: // result: x for { if v.AuxInt != 1 { @@ -47276,7 +43495,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [2] (StructMake3 _ _ x)) - // cond: // result: x for { if v.AuxInt != 2 { @@ -47293,7 +43511,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [0] (StructMake4 x _ _ _)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -47311,7 +43528,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [1] (StructMake4 _ x _ _)) - // cond: // result: x for { if v.AuxInt != 1 { @@ -47329,7 +43545,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [2] (StructMake4 _ _ x _)) - // cond: // result: x for { if v.AuxInt != 2 { @@ -47347,7 +43562,6 @@ func rewriteValuegeneric_OpStructSelect_0(v *Value) bool { return true } // match: (StructSelect [3] (StructMake4 _ _ _ x)) - // cond: // result: x for { if v.AuxInt != 3 { @@ -47395,7 +43609,6 @@ func rewriteValuegeneric_OpStructSelect_10(v *Value) bool { return true } // match: (StructSelect [0] x:(IData _)) - // cond: // result: x for { if v.AuxInt != 0 { @@ -47415,7 +43628,6 @@ func rewriteValuegeneric_OpStructSelect_10(v *Value) bool { func rewriteValuegeneric_OpSub16_0(v *Value) bool { b := v.Block // match: (Sub16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c-d))]) for { _ = v.Args[1] @@ -47456,7 +43668,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Mul16 x y) (Mul16 x z)) - // cond: // result: (Mul16 x (Sub16 y z)) for { t := v.Type @@ -47484,7 +43695,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Mul16 y x) (Mul16 x z)) - // cond: // result: (Mul16 x (Sub16 y z)) for { t := v.Type @@ -47512,7 +43722,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Mul16 x y) (Mul16 z x)) - // cond: // result: (Mul16 x (Sub16 y z)) for { t := v.Type @@ -47541,7 +43750,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Mul16 y x) (Mul16 z x)) - // cond: // result: (Mul16 x (Sub16 y z)) for { t := v.Type @@ -47570,7 +43778,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 x x) - // cond: // result: (Const16 [0]) for { x := v.Args[1] @@ -47582,7 +43789,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Add16 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -47600,7 +43806,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Add16 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -47619,7 +43824,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { return true } // match: (Sub16 (Add16 x y) y) - // cond: // result: x for { y := v.Args[1] @@ -47642,7 +43846,6 @@ func rewriteValuegeneric_OpSub16_0(v *Value) bool { func rewriteValuegeneric_OpSub16_10(v *Value) bool { b := v.Block // match: (Sub16 (Add16 y x) y) - // cond: // result: x for { y := v.Args[1] @@ -47715,7 +43918,6 @@ func rewriteValuegeneric_OpSub16_10(v *Value) bool { return true } // match: (Sub16 (Const16 [c]) (Sub16 x (Const16 [d]))) - // cond: // result: (Sub16 (Const16 [int64(int16(c+d))]) x) for { _ = v.Args[1] @@ -47732,10 +43934,7 @@ func rewriteValuegeneric_OpSub16_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -47747,7 +43946,6 @@ func rewriteValuegeneric_OpSub16_10(v *Value) bool { return true } // match: (Sub16 (Const16 [c]) (Sub16 (Const16 [d]) x)) - // cond: // result: (Add16 (Const16 [int64(int16(c-d))]) x) for { _ = v.Args[1] @@ -47763,10 +43961,7 @@ func rewriteValuegeneric_OpSub16_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -47782,7 +43977,6 @@ func rewriteValuegeneric_OpSub16_10(v *Value) bool { func rewriteValuegeneric_OpSub32_0(v *Value) bool { b := v.Block // match: (Sub32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c-d))]) for { _ = v.Args[1] @@ -47823,7 +44017,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Mul32 x y) (Mul32 x z)) - // cond: // result: (Mul32 x (Sub32 y z)) for { t := v.Type @@ -47851,7 +44044,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Mul32 y x) (Mul32 x z)) - // cond: // result: (Mul32 x (Sub32 y z)) for { t := v.Type @@ -47879,7 +44071,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Mul32 x y) (Mul32 z x)) - // cond: // result: (Mul32 x (Sub32 y z)) for { t := v.Type @@ -47908,7 +44099,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Mul32 y x) (Mul32 z x)) - // cond: // result: (Mul32 x (Sub32 y z)) for { t := v.Type @@ -47937,7 +44127,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 x x) - // cond: // result: (Const32 [0]) for { x := v.Args[1] @@ -47949,7 +44138,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Add32 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -47967,7 +44155,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Add32 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -47986,7 +44173,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { return true } // match: (Sub32 (Add32 x y) y) - // cond: // result: x for { y := v.Args[1] @@ -48009,7 +44195,6 @@ func rewriteValuegeneric_OpSub32_0(v *Value) bool { func rewriteValuegeneric_OpSub32_10(v *Value) bool { b := v.Block // match: (Sub32 (Add32 y x) y) - // cond: // result: x for { y := v.Args[1] @@ -48082,7 +44267,6 @@ func rewriteValuegeneric_OpSub32_10(v *Value) bool { return true } // match: (Sub32 (Const32 [c]) (Sub32 x (Const32 [d]))) - // cond: // result: (Sub32 (Const32 [int64(int32(c+d))]) x) for { _ = v.Args[1] @@ -48099,10 +44283,7 @@ func rewriteValuegeneric_OpSub32_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -48114,7 +44295,6 @@ func rewriteValuegeneric_OpSub32_10(v *Value) bool { return true } // match: (Sub32 (Const32 [c]) (Sub32 (Const32 [d]) x)) - // cond: // result: (Add32 (Const32 [int64(int32(c-d))]) x) for { _ = v.Args[1] @@ -48130,10 +44310,7 @@ func rewriteValuegeneric_OpSub32_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -48148,7 +44325,6 @@ func rewriteValuegeneric_OpSub32_10(v *Value) bool { } func rewriteValuegeneric_OpSub32F_0(v *Value) bool { // match: (Sub32F (Const32F [c]) (Const32F [d])) - // cond: // result: (Const32F [auxFrom32F(auxTo32F(c) - auxTo32F(d))]) for { _ = v.Args[1] @@ -48171,7 +44347,6 @@ func rewriteValuegeneric_OpSub32F_0(v *Value) bool { func rewriteValuegeneric_OpSub64_0(v *Value) bool { b := v.Block // match: (Sub64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c-d]) for { _ = v.Args[1] @@ -48212,7 +44387,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Mul64 x y) (Mul64 x z)) - // cond: // result: (Mul64 x (Sub64 y z)) for { t := v.Type @@ -48240,7 +44414,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Mul64 y x) (Mul64 x z)) - // cond: // result: (Mul64 x (Sub64 y z)) for { t := v.Type @@ -48268,7 +44441,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Mul64 x y) (Mul64 z x)) - // cond: // result: (Mul64 x (Sub64 y z)) for { t := v.Type @@ -48297,7 +44469,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Mul64 y x) (Mul64 z x)) - // cond: // result: (Mul64 x (Sub64 y z)) for { t := v.Type @@ -48326,7 +44497,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 x x) - // cond: // result: (Const64 [0]) for { x := v.Args[1] @@ -48338,7 +44508,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Add64 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -48356,7 +44525,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Add64 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -48375,7 +44543,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { return true } // match: (Sub64 (Add64 x y) y) - // cond: // result: x for { y := v.Args[1] @@ -48398,7 +44565,6 @@ func rewriteValuegeneric_OpSub64_0(v *Value) bool { func rewriteValuegeneric_OpSub64_10(v *Value) bool { b := v.Block // match: (Sub64 (Add64 y x) y) - // cond: // result: x for { y := v.Args[1] @@ -48471,7 +44637,6 @@ func rewriteValuegeneric_OpSub64_10(v *Value) bool { return true } // match: (Sub64 (Const64 [c]) (Sub64 x (Const64 [d]))) - // cond: // result: (Sub64 (Const64 [c+d]) x) for { _ = v.Args[1] @@ -48488,10 +44653,7 @@ func rewriteValuegeneric_OpSub64_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -48503,7 +44665,6 @@ func rewriteValuegeneric_OpSub64_10(v *Value) bool { return true } // match: (Sub64 (Const64 [c]) (Sub64 (Const64 [d]) x)) - // cond: // result: (Add64 (Const64 [c-d]) x) for { _ = v.Args[1] @@ -48519,10 +44680,7 @@ func rewriteValuegeneric_OpSub64_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -48537,7 +44695,6 @@ func rewriteValuegeneric_OpSub64_10(v *Value) bool { } func rewriteValuegeneric_OpSub64F_0(v *Value) bool { // match: (Sub64F (Const64F [c]) (Const64F [d])) - // cond: // result: (Const64F [auxFrom64F(auxTo64F(c) - auxTo64F(d))]) for { _ = v.Args[1] @@ -48560,7 +44717,6 @@ func rewriteValuegeneric_OpSub64F_0(v *Value) bool { func rewriteValuegeneric_OpSub8_0(v *Value) bool { b := v.Block // match: (Sub8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c-d))]) for { _ = v.Args[1] @@ -48601,7 +44757,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Mul8 x y) (Mul8 x z)) - // cond: // result: (Mul8 x (Sub8 y z)) for { t := v.Type @@ -48629,7 +44784,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Mul8 y x) (Mul8 x z)) - // cond: // result: (Mul8 x (Sub8 y z)) for { t := v.Type @@ -48657,7 +44811,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Mul8 x y) (Mul8 z x)) - // cond: // result: (Mul8 x (Sub8 y z)) for { t := v.Type @@ -48686,7 +44839,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Mul8 y x) (Mul8 z x)) - // cond: // result: (Mul8 x (Sub8 y z)) for { t := v.Type @@ -48715,7 +44867,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 x x) - // cond: // result: (Const8 [0]) for { x := v.Args[1] @@ -48727,7 +44878,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Add8 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -48745,7 +44895,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Add8 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -48764,7 +44913,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { return true } // match: (Sub8 (Add8 x y) y) - // cond: // result: x for { y := v.Args[1] @@ -48787,7 +44935,6 @@ func rewriteValuegeneric_OpSub8_0(v *Value) bool { func rewriteValuegeneric_OpSub8_10(v *Value) bool { b := v.Block // match: (Sub8 (Add8 y x) y) - // cond: // result: x for { y := v.Args[1] @@ -48860,7 +45007,6 @@ func rewriteValuegeneric_OpSub8_10(v *Value) bool { return true } // match: (Sub8 (Const8 [c]) (Sub8 x (Const8 [d]))) - // cond: // result: (Sub8 (Const8 [int64(int8(c+d))]) x) for { _ = v.Args[1] @@ -48877,10 +45023,7 @@ func rewriteValuegeneric_OpSub8_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -48892,7 +45035,6 @@ func rewriteValuegeneric_OpSub8_10(v *Value) bool { return true } // match: (Sub8 (Const8 [c]) (Sub8 (Const8 [d]) x)) - // cond: // result: (Add8 (Const8 [int64(int8(c-d))]) x) for { _ = v.Args[1] @@ -48908,10 +45050,7 @@ func rewriteValuegeneric_OpSub8_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -48926,7 +45065,6 @@ func rewriteValuegeneric_OpSub8_10(v *Value) bool { } func rewriteValuegeneric_OpTrunc16to8_0(v *Value) bool { // match: (Trunc16to8 (Const16 [c])) - // cond: // result: (Const8 [int64(int8(c))]) for { v_0 := v.Args[0] @@ -48939,7 +45077,6 @@ func rewriteValuegeneric_OpTrunc16to8_0(v *Value) bool { return true } // match: (Trunc16to8 (ZeroExt8to16 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -48953,7 +45090,6 @@ func rewriteValuegeneric_OpTrunc16to8_0(v *Value) bool { return true } // match: (Trunc16to8 (SignExt8to16 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49013,7 +45149,6 @@ func rewriteValuegeneric_OpTrunc16to8_0(v *Value) bool { } func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { // match: (Trunc32to16 (Const32 [c])) - // cond: // result: (Const16 [int64(int16(c))]) for { v_0 := v.Args[0] @@ -49026,7 +45161,6 @@ func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { return true } // match: (Trunc32to16 (ZeroExt8to32 x)) - // cond: // result: (ZeroExt8to16 x) for { v_0 := v.Args[0] @@ -49039,7 +45173,6 @@ func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { return true } // match: (Trunc32to16 (ZeroExt16to32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49053,7 +45186,6 @@ func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { return true } // match: (Trunc32to16 (SignExt8to32 x)) - // cond: // result: (SignExt8to16 x) for { v_0 := v.Args[0] @@ -49066,7 +45198,6 @@ func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { return true } // match: (Trunc32to16 (SignExt16to32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49126,7 +45257,6 @@ func rewriteValuegeneric_OpTrunc32to16_0(v *Value) bool { } func rewriteValuegeneric_OpTrunc32to8_0(v *Value) bool { // match: (Trunc32to8 (Const32 [c])) - // cond: // result: (Const8 [int64(int8(c))]) for { v_0 := v.Args[0] @@ -49139,7 +45269,6 @@ func rewriteValuegeneric_OpTrunc32to8_0(v *Value) bool { return true } // match: (Trunc32to8 (ZeroExt8to32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49153,7 +45282,6 @@ func rewriteValuegeneric_OpTrunc32to8_0(v *Value) bool { return true } // match: (Trunc32to8 (SignExt8to32 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49213,7 +45341,6 @@ func rewriteValuegeneric_OpTrunc32to8_0(v *Value) bool { } func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { // match: (Trunc64to16 (Const64 [c])) - // cond: // result: (Const16 [int64(int16(c))]) for { v_0 := v.Args[0] @@ -49226,7 +45353,6 @@ func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { return true } // match: (Trunc64to16 (ZeroExt8to64 x)) - // cond: // result: (ZeroExt8to16 x) for { v_0 := v.Args[0] @@ -49239,7 +45365,6 @@ func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { return true } // match: (Trunc64to16 (ZeroExt16to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49253,7 +45378,6 @@ func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { return true } // match: (Trunc64to16 (SignExt8to64 x)) - // cond: // result: (SignExt8to16 x) for { v_0 := v.Args[0] @@ -49266,7 +45390,6 @@ func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { return true } // match: (Trunc64to16 (SignExt16to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49326,7 +45449,6 @@ func rewriteValuegeneric_OpTrunc64to16_0(v *Value) bool { } func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { // match: (Trunc64to32 (Const64 [c])) - // cond: // result: (Const32 [int64(int32(c))]) for { v_0 := v.Args[0] @@ -49339,7 +45461,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (ZeroExt8to64 x)) - // cond: // result: (ZeroExt8to32 x) for { v_0 := v.Args[0] @@ -49352,7 +45473,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (ZeroExt16to64 x)) - // cond: // result: (ZeroExt16to32 x) for { v_0 := v.Args[0] @@ -49365,7 +45485,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (ZeroExt32to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49379,7 +45498,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (SignExt8to64 x)) - // cond: // result: (SignExt8to32 x) for { v_0 := v.Args[0] @@ -49392,7 +45510,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (SignExt16to64 x)) - // cond: // result: (SignExt16to32 x) for { v_0 := v.Args[0] @@ -49405,7 +45522,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { return true } // match: (Trunc64to32 (SignExt32to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49465,7 +45581,6 @@ func rewriteValuegeneric_OpTrunc64to32_0(v *Value) bool { } func rewriteValuegeneric_OpTrunc64to8_0(v *Value) bool { // match: (Trunc64to8 (Const64 [c])) - // cond: // result: (Const8 [int64(int8(c))]) for { v_0 := v.Args[0] @@ -49478,7 +45593,6 @@ func rewriteValuegeneric_OpTrunc64to8_0(v *Value) bool { return true } // match: (Trunc64to8 (ZeroExt8to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49492,7 +45606,6 @@ func rewriteValuegeneric_OpTrunc64to8_0(v *Value) bool { return true } // match: (Trunc64to8 (SignExt8to64 x)) - // cond: // result: x for { v_0 := v.Args[0] @@ -49553,7 +45666,6 @@ func rewriteValuegeneric_OpTrunc64to8_0(v *Value) bool { func rewriteValuegeneric_OpXor16_0(v *Value) bool { b := v.Block // match: (Xor16 (Const16 [c]) (Const16 [d])) - // cond: // result: (Const16 [int64(int16(c^d))]) for { _ = v.Args[1] @@ -49572,7 +45684,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 (Const16 [d]) (Const16 [c])) - // cond: // result: (Const16 [int64(int16(c^d))]) for { _ = v.Args[1] @@ -49591,7 +45702,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 x x) - // cond: // result: (Const16 [0]) for { x := v.Args[1] @@ -49603,15 +45713,11 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 (Const16 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst16 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst16 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -49620,16 +45726,12 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 x (Const16 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst16 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -49638,7 +45740,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 x (Xor16 x y)) - // cond: // result: y for { _ = v.Args[1] @@ -49657,7 +45758,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 x (Xor16 y x)) - // cond: // result: y for { _ = v.Args[1] @@ -49677,7 +45777,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 (Xor16 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -49695,7 +45794,6 @@ func rewriteValuegeneric_OpXor16_0(v *Value) bool { return true } // match: (Xor16 (Xor16 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -49826,7 +45924,6 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { return true } // match: (Xor16 (Const16 [c]) (Xor16 (Const16 [d]) x)) - // cond: // result: (Xor16 (Const16 [int64(int16(c^d))]) x) for { _ = v.Args[1] @@ -49842,10 +45939,7 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst16 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst16 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -49857,7 +45951,6 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { return true } // match: (Xor16 (Const16 [c]) (Xor16 x (Const16 [d]))) - // cond: // result: (Xor16 (Const16 [int64(int16(c^d))]) x) for { _ = v.Args[1] @@ -49874,10 +45967,7 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst16 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst16 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -49889,7 +45979,6 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { return true } // match: (Xor16 (Xor16 (Const16 [d]) x) (Const16 [c])) - // cond: // result: (Xor16 (Const16 [int64(int16(c^d))]) x) for { _ = v.Args[1] @@ -49905,10 +45994,7 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -49920,7 +46006,6 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { return true } // match: (Xor16 (Xor16 x (Const16 [d])) (Const16 [c])) - // cond: // result: (Xor16 (Const16 [int64(int16(c^d))]) x) for { _ = v.Args[1] @@ -49937,10 +46022,7 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst16 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst16 || v_1.Type != t { break } c := v_1.AuxInt @@ -49956,7 +46038,6 @@ func rewriteValuegeneric_OpXor16_10(v *Value) bool { func rewriteValuegeneric_OpXor32_0(v *Value) bool { b := v.Block // match: (Xor32 (Const32 [c]) (Const32 [d])) - // cond: // result: (Const32 [int64(int32(c^d))]) for { _ = v.Args[1] @@ -49975,7 +46056,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 (Const32 [d]) (Const32 [c])) - // cond: // result: (Const32 [int64(int32(c^d))]) for { _ = v.Args[1] @@ -49994,7 +46074,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 x x) - // cond: // result: (Const32 [0]) for { x := v.Args[1] @@ -50006,15 +46085,11 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 (Const32 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst32 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst32 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -50023,16 +46098,12 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 x (Const32 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst32 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -50041,7 +46112,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 x (Xor32 x y)) - // cond: // result: y for { _ = v.Args[1] @@ -50060,7 +46130,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 x (Xor32 y x)) - // cond: // result: y for { _ = v.Args[1] @@ -50080,7 +46149,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 (Xor32 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -50098,7 +46166,6 @@ func rewriteValuegeneric_OpXor32_0(v *Value) bool { return true } // match: (Xor32 (Xor32 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -50229,7 +46296,6 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { return true } // match: (Xor32 (Const32 [c]) (Xor32 (Const32 [d]) x)) - // cond: // result: (Xor32 (Const32 [int64(int32(c^d))]) x) for { _ = v.Args[1] @@ -50245,10 +46311,7 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst32 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst32 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -50260,7 +46323,6 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { return true } // match: (Xor32 (Const32 [c]) (Xor32 x (Const32 [d]))) - // cond: // result: (Xor32 (Const32 [int64(int32(c^d))]) x) for { _ = v.Args[1] @@ -50277,10 +46339,7 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst32 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst32 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -50292,7 +46351,6 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { return true } // match: (Xor32 (Xor32 (Const32 [d]) x) (Const32 [c])) - // cond: // result: (Xor32 (Const32 [int64(int32(c^d))]) x) for { _ = v.Args[1] @@ -50308,10 +46366,7 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -50323,7 +46378,6 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { return true } // match: (Xor32 (Xor32 x (Const32 [d])) (Const32 [c])) - // cond: // result: (Xor32 (Const32 [int64(int32(c^d))]) x) for { _ = v.Args[1] @@ -50340,10 +46394,7 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst32 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst32 || v_1.Type != t { break } c := v_1.AuxInt @@ -50359,7 +46410,6 @@ func rewriteValuegeneric_OpXor32_10(v *Value) bool { func rewriteValuegeneric_OpXor64_0(v *Value) bool { b := v.Block // match: (Xor64 (Const64 [c]) (Const64 [d])) - // cond: // result: (Const64 [c^d]) for { _ = v.Args[1] @@ -50378,7 +46428,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 (Const64 [d]) (Const64 [c])) - // cond: // result: (Const64 [c^d]) for { _ = v.Args[1] @@ -50397,7 +46446,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 x x) - // cond: // result: (Const64 [0]) for { x := v.Args[1] @@ -50409,15 +46457,11 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 (Const64 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst64 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst64 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -50426,16 +46470,12 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 x (Const64 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst64 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -50444,7 +46484,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 x (Xor64 x y)) - // cond: // result: y for { _ = v.Args[1] @@ -50463,7 +46502,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 x (Xor64 y x)) - // cond: // result: y for { _ = v.Args[1] @@ -50483,7 +46521,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 (Xor64 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -50501,7 +46538,6 @@ func rewriteValuegeneric_OpXor64_0(v *Value) bool { return true } // match: (Xor64 (Xor64 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -50632,7 +46668,6 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { return true } // match: (Xor64 (Const64 [c]) (Xor64 (Const64 [d]) x)) - // cond: // result: (Xor64 (Const64 [c^d]) x) for { _ = v.Args[1] @@ -50648,10 +46683,7 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst64 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst64 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -50663,7 +46695,6 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { return true } // match: (Xor64 (Const64 [c]) (Xor64 x (Const64 [d]))) - // cond: // result: (Xor64 (Const64 [c^d]) x) for { _ = v.Args[1] @@ -50680,10 +46711,7 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst64 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst64 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -50695,7 +46723,6 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { return true } // match: (Xor64 (Xor64 (Const64 [d]) x) (Const64 [c])) - // cond: // result: (Xor64 (Const64 [c^d]) x) for { _ = v.Args[1] @@ -50711,10 +46738,7 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -50726,7 +46750,6 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { return true } // match: (Xor64 (Xor64 x (Const64 [d])) (Const64 [c])) - // cond: // result: (Xor64 (Const64 [c^d]) x) for { _ = v.Args[1] @@ -50743,10 +46766,7 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst64 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst64 || v_1.Type != t { break } c := v_1.AuxInt @@ -50762,7 +46782,6 @@ func rewriteValuegeneric_OpXor64_10(v *Value) bool { func rewriteValuegeneric_OpXor8_0(v *Value) bool { b := v.Block // match: (Xor8 (Const8 [c]) (Const8 [d])) - // cond: // result: (Const8 [int64(int8(c^d))]) for { _ = v.Args[1] @@ -50781,7 +46800,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 (Const8 [d]) (Const8 [c])) - // cond: // result: (Const8 [int64(int8(c^d))]) for { _ = v.Args[1] @@ -50800,7 +46818,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 x x) - // cond: // result: (Const8 [0]) for { x := v.Args[1] @@ -50812,15 +46829,11 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 (Const8 [0]) x) - // cond: // result: x for { x := v.Args[1] v_0 := v.Args[0] - if v_0.Op != OpConst8 { - break - } - if v_0.AuxInt != 0 { + if v_0.Op != OpConst8 || v_0.AuxInt != 0 { break } v.reset(OpCopy) @@ -50829,16 +46842,12 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 x (Const8 [0])) - // cond: // result: x for { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.AuxInt != 0 { + if v_1.Op != OpConst8 || v_1.AuxInt != 0 { break } v.reset(OpCopy) @@ -50847,7 +46856,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 x (Xor8 x y)) - // cond: // result: y for { _ = v.Args[1] @@ -50866,7 +46874,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 x (Xor8 y x)) - // cond: // result: y for { _ = v.Args[1] @@ -50886,7 +46893,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 (Xor8 x y) x) - // cond: // result: y for { x := v.Args[1] @@ -50904,7 +46910,6 @@ func rewriteValuegeneric_OpXor8_0(v *Value) bool { return true } // match: (Xor8 (Xor8 y x) x) - // cond: // result: y for { x := v.Args[1] @@ -51035,7 +47040,6 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { return true } // match: (Xor8 (Const8 [c]) (Xor8 (Const8 [d]) x)) - // cond: // result: (Xor8 (Const8 [int64(int8(c^d))]) x) for { _ = v.Args[1] @@ -51051,10 +47055,7 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { } x := v_1.Args[1] v_1_0 := v_1.Args[0] - if v_1_0.Op != OpConst8 { - break - } - if v_1_0.Type != t { + if v_1_0.Op != OpConst8 || v_1_0.Type != t { break } d := v_1_0.AuxInt @@ -51066,7 +47067,6 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { return true } // match: (Xor8 (Const8 [c]) (Xor8 x (Const8 [d]))) - // cond: // result: (Xor8 (Const8 [int64(int8(c^d))]) x) for { _ = v.Args[1] @@ -51083,10 +47083,7 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { _ = v_1.Args[1] x := v_1.Args[0] v_1_1 := v_1.Args[1] - if v_1_1.Op != OpConst8 { - break - } - if v_1_1.Type != t { + if v_1_1.Op != OpConst8 || v_1_1.Type != t { break } d := v_1_1.AuxInt @@ -51098,7 +47095,6 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { return true } // match: (Xor8 (Xor8 (Const8 [d]) x) (Const8 [c])) - // cond: // result: (Xor8 (Const8 [int64(int8(c^d))]) x) for { _ = v.Args[1] @@ -51114,10 +47110,7 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { t := v_0_0.Type d := v_0_0.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -51129,7 +47122,6 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { return true } // match: (Xor8 (Xor8 x (Const8 [d])) (Const8 [c])) - // cond: // result: (Xor8 (Const8 [int64(int8(c^d))]) x) for { _ = v.Args[1] @@ -51146,10 +47138,7 @@ func rewriteValuegeneric_OpXor8_10(v *Value) bool { t := v_0_1.Type d := v_0_1.AuxInt v_1 := v.Args[1] - if v_1.Op != OpConst8 { - break - } - if v_1.Type != t { + if v_1.Op != OpConst8 || v_1.Type != t { break } c := v_1.AuxInt @@ -51181,13 +47170,7 @@ func rewriteValuegeneric_OpZero_0(v *Value) bool { } c := v_0_0.AuxInt v_0_0_0 := v_0_0.Args[0] - if v_0_0_0.Op != OpSP { - break - } - if mem != v_0.Args[1] { - break - } - if !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize) { + if v_0_0_0.Op != OpSP || mem != v_0.Args[1] || !(mem.Op == OpStaticCall && isSameSym(mem.Aux, "runtime.newobject") && c == config.ctxt.FixedFrameSize()+config.RegSize) { break } v.reset(OpCopy) @@ -51234,13 +47217,7 @@ func rewriteValuegeneric_OpZero_0(v *Value) bool { _ = v.Args[1] dst1 := v.Args[0] move := v.Args[1] - if move.Op != OpMove { - break - } - if move.AuxInt != n { - break - } - if move.Aux != t { + if move.Op != OpMove || move.AuxInt != n || move.Aux != t { break } mem := move.Args[2] @@ -51269,13 +47246,7 @@ func rewriteValuegeneric_OpZero_0(v *Value) bool { } x := vardef.Aux move := vardef.Args[0] - if move.Op != OpMove { - break - } - if move.AuxInt != n { - break - } - if move.Aux != t { + if move.Op != OpMove || move.AuxInt != n || move.Aux != t { break } mem := move.Args[2] @@ -51297,7 +47268,6 @@ func rewriteValuegeneric_OpZero_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt16to32_0(v *Value) bool { // match: (ZeroExt16to32 (Const16 [c])) - // cond: // result: (Const32 [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -51339,7 +47309,6 @@ func rewriteValuegeneric_OpZeroExt16to32_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt16to64_0(v *Value) bool { // match: (ZeroExt16to64 (Const16 [c])) - // cond: // result: (Const64 [int64(uint16(c))]) for { v_0 := v.Args[0] @@ -51381,7 +47350,6 @@ func rewriteValuegeneric_OpZeroExt16to64_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt32to64_0(v *Value) bool { // match: (ZeroExt32to64 (Const32 [c])) - // cond: // result: (Const64 [int64(uint32(c))]) for { v_0 := v.Args[0] @@ -51423,7 +47391,6 @@ func rewriteValuegeneric_OpZeroExt32to64_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt8to16_0(v *Value) bool { // match: (ZeroExt8to16 (Const8 [c])) - // cond: // result: (Const16 [int64( uint8(c))]) for { v_0 := v.Args[0] @@ -51465,7 +47432,6 @@ func rewriteValuegeneric_OpZeroExt8to16_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt8to32_0(v *Value) bool { // match: (ZeroExt8to32 (Const8 [c])) - // cond: // result: (Const32 [int64( uint8(c))]) for { v_0 := v.Args[0] @@ -51507,7 +47473,6 @@ func rewriteValuegeneric_OpZeroExt8to32_0(v *Value) bool { } func rewriteValuegeneric_OpZeroExt8to64_0(v *Value) bool { // match: (ZeroExt8to64 (Const8 [c])) - // cond: // result: (Const64 [int64( uint8(c))]) for { v_0 := v.Args[0] @@ -51552,7 +47517,6 @@ func rewriteBlockgeneric(b *Block) bool { switch b.Kind { case BlockIf: // match: (If (Not cond) yes no) - // cond: // result: (If cond no yes) for v.Op == OpNot { cond := v.Args[0] -- 2.50.0