From: Daniel Martí Date: Wed, 13 Mar 2019 11:57:29 +0000 (+0000) Subject: cmd/compile: reduce rulegen's for loop verbosity X-Git-Tag: go1.13beta1~934 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0fbf6818407366d79a7a388b58718f6c32ef16d2;p=gostls13.git cmd/compile: reduce rulegen's for loop verbosity A lot of the naked for loops begin like: for { v := b.Control if v.Op != OpConstBool { break } ... return true } Instead, write them out in a more compact and readable way: for v.Op == OpConstBool { ... return true } This requires the addition of two bytes.Buffer writers, as this helps us make a decision based on future pieces of generated code. This probably makes rulegen slightly slower, but that's not noticeable; the code generation still takes ~3.5s on my laptop, excluding build time. The "v := b.Control" declaration can be moved to the top of each function. Even though the rules can modify b.Control when firing, they also make the function return, so v can't be used again. While at it, remove three unnecessary lines from the top of each rewriteBlock func. In total, this results in ~4k lines removed from the generated code, and a slight improvement in readability. Change-Id: I317e4c6a4842c64df506f4513375475fad2aeec5 Reviewed-on: https://go-review.googlesource.com/c/go/+/167399 Run-TryBot: Brad Fitzpatrick TryBot-Result: Gobot Gobot Reviewed-by: Keith Randall --- diff --git a/src/cmd/compile/internal/ssa/gen/rulegen.go b/src/cmd/compile/internal/ssa/gen/rulegen.go index 2082ba15c4..4ca6796f7c 100644 --- a/src/cmd/compile/internal/ssa/gen/rulegen.go +++ b/src/cmd/compile/internal/ssa/gen/rulegen.go @@ -217,7 +217,7 @@ func genRulesSuffix(arch arch, suff string) { canFail = false fmt.Fprintf(buf, "for {\n") - pos, matchCanFail := genMatch(buf, arch, match, rule.loc) + pos, _, matchCanFail := genMatch(buf, arch, match, rule.loc) if pos == "" { pos = "v.Pos" } @@ -273,11 +273,10 @@ func genRulesSuffix(arch arch, suff string) { // so we can make this one function with a switch. fmt.Fprintf(w, "func rewriteBlock%s%s(b *Block) bool {\n", arch.name, suff) fmt.Fprintln(w, "config := b.Func.Config") - fmt.Fprintln(w, "_ = config") - fmt.Fprintln(w, "fe := b.Func.fe") - fmt.Fprintln(w, "_ = fe") fmt.Fprintln(w, "typ := &config.Types") fmt.Fprintln(w, "_ = typ") + fmt.Fprintln(w, "v := b.Control") + fmt.Fprintln(w, "_ = v") fmt.Fprintf(w, "switch b.Kind {\n") ops = nil for op := range blockrules { @@ -292,27 +291,26 @@ func genRulesSuffix(arch arch, suff string) { fmt.Fprintf(w, "// cond: %s\n", cond) fmt.Fprintf(w, "// result: %s\n", result) - fmt.Fprintf(w, "for {\n") - _, _, _, aux, s := extract(match) // remove parens, then split + loopw := new(bytes.Buffer) + // check match of control value pos := "" + checkOp := "" if s[0] != "nil" { - fmt.Fprintf(w, "v := b.Control\n") if strings.Contains(s[0], "(") { - pos, _ = genMatch0(w, arch, s[0], "v", map[string]struct{}{}, false, rule.loc) + pos, checkOp, _ = genMatch0(loopw, arch, s[0], "v", map[string]struct{}{}, rule.loc) } else { - fmt.Fprintf(w, "_ = v\n") // in case we don't use v - fmt.Fprintf(w, "%s := b.Control\n", s[0]) + fmt.Fprintf(loopw, "%s := b.Control\n", s[0]) } } if aux != "" { - fmt.Fprintf(w, "%s := b.Aux\n", aux) + fmt.Fprintf(loopw, "%s := b.Aux\n", aux) } if cond != "" { - fmt.Fprintf(w, "if !(%s) {\nbreak\n}\n", cond) + fmt.Fprintf(loopw, "if !(%s) {\nbreak\n}\n", cond) } // Rule matches. Generate result. @@ -338,19 +336,19 @@ func genRulesSuffix(arch arch, suff string) { log.Fatalf("unmatched successors %v in %s", m, rule) } - fmt.Fprintf(w, "b.Kind = %s\n", blockName(outop, arch)) + fmt.Fprintf(loopw, "b.Kind = %s\n", blockName(outop, arch)) if t[0] == "nil" { - fmt.Fprintf(w, "b.SetControl(nil)\n") + fmt.Fprintf(loopw, "b.SetControl(nil)\n") } else { if pos == "" { pos = "v.Pos" } - fmt.Fprintf(w, "b.SetControl(%s)\n", genResult0(w, arch, t[0], new(int), false, false, rule.loc, pos)) + fmt.Fprintf(loopw, "b.SetControl(%s)\n", genResult0(loopw, arch, t[0], new(int), false, false, rule.loc, pos)) } if aux != "" { - fmt.Fprintf(w, "b.Aux = %s\n", aux) + fmt.Fprintf(loopw, "b.Aux = %s\n", aux) } else { - fmt.Fprintln(w, "b.Aux = nil") + fmt.Fprintln(loopw, "b.Aux = nil") } succChanged := false @@ -366,13 +364,20 @@ func genRulesSuffix(arch arch, suff string) { if succs[0] != newsuccs[1] || succs[1] != newsuccs[0] { log.Fatalf("can only handle swapped successors in %s", rule) } - fmt.Fprintln(w, "b.swapSuccessors()") + fmt.Fprintln(loopw, "b.swapSuccessors()") } if *genLog { - fmt.Fprintf(w, "logRule(\"%s\")\n", rule.loc) + fmt.Fprintf(loopw, "logRule(\"%s\")\n", rule.loc) } - fmt.Fprintf(w, "return true\n") + fmt.Fprintf(loopw, "return true\n") + + if checkOp != "" { + fmt.Fprintf(w, "for v.Op == %s {\n", checkOp) + } else { + fmt.Fprintf(w, "for {\n") + } + io.Copy(w, loopw) fmt.Fprintf(w, "}\n") } @@ -398,24 +403,18 @@ func genRulesSuffix(arch arch, suff string) { // genMatch returns the variable whose source position should be used for the // result (or "" if no opinion), and a boolean that reports whether the match can fail. -func genMatch(w io.Writer, arch arch, match string, loc string) (string, bool) { - return genMatch0(w, arch, match, "v", map[string]struct{}{}, true, loc) +func genMatch(w io.Writer, arch arch, match string, loc string) (pos, checkOp string, canFail bool) { + return genMatch0(w, arch, match, "v", map[string]struct{}{}, loc) } -func genMatch0(w io.Writer, arch arch, match, v string, m map[string]struct{}, top bool, loc string) (string, bool) { +func genMatch0(w io.Writer, arch arch, match, v string, m map[string]struct{}, loc string) (pos, checkOp string, canFail bool) { if match[0] != '(' || match[len(match)-1] != ')' { panic("non-compound expr in genMatch0: " + match) } - pos := "" - canFail := false - op, oparch, typ, auxint, aux, args := parseValue(match, arch, loc) - // check op - if !top { - fmt.Fprintf(w, "if %s.Op != Op%s%s {\nbreak\n}\n", v, oparch, op.name) - canFail = true - } + checkOp = fmt.Sprintf("Op%s%s", oparch, op.name) + if op.faultOnNilArg0 || op.faultOnNilArg1 { // Prefer the position of an instruction which could fault. pos = v + ".Pos" @@ -521,8 +520,13 @@ func genMatch0(w io.Writer, arch arch, match, v string, m map[string]struct{}, t if argname == "b" { log.Fatalf("don't name args 'b', it is ambiguous with blocks") } + fmt.Fprintf(w, "%s := %s.Args[%d]\n", argname, v, i) - argPos, argCanFail := genMatch0(w, arch, arg, argname, m, false, loc) + w2 := new(bytes.Buffer) + argPos, argCheckOp, _ := genMatch0(w2, arch, arg, argname, m, loc) + fmt.Fprintf(w, "if %s.Op != %s {\nbreak\n}\n", argname, argCheckOp) + io.Copy(w, w2) + if argPos != "" { // Keep the argument in preference to the parent, as the // argument is normally earlier in program flow. @@ -531,16 +535,14 @@ func genMatch0(w io.Writer, arch arch, match, v string, m map[string]struct{}, t // in the program flow. pos = argPos } - if argCanFail { - canFail = true - } + canFail = true } if op.argLength == -1 { fmt.Fprintf(w, "if len(%s.Args) != %d {\nbreak\n}\n", v, len(args)) canFail = true } - return pos, canFail + return pos, checkOp, canFail } func genResult(w io.Writer, arch arch, result string, loc string, pos string) { diff --git a/src/cmd/compile/internal/ssa/rewrite386.go b/src/cmd/compile/internal/ssa/rewrite386.go index aae0c59300..99f672c54e 100644 --- a/src/cmd/compile/internal/ssa/rewrite386.go +++ b/src/cmd/compile/internal/ssa/rewrite386.go @@ -24477,21 +24477,16 @@ func rewriteValue386_OpZeromask_0(v *Value) bool { } func rewriteBlock386(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case Block386EQ: // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386EQ b.SetControl(cmp) @@ -24501,11 +24496,7 @@ func rewriteBlock386(b *Block) bool { // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24514,11 +24505,7 @@ func rewriteBlock386(b *Block) bool { // match: (EQ (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24528,11 +24515,7 @@ func rewriteBlock386(b *Block) bool { // match: (EQ (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24542,11 +24525,7 @@ func rewriteBlock386(b *Block) bool { // match: (EQ (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24556,11 +24535,7 @@ func rewriteBlock386(b *Block) bool { // match: (EQ (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24571,11 +24546,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386LE b.SetControl(cmp) @@ -24585,11 +24556,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24598,11 +24565,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24612,11 +24575,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24626,11 +24585,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24639,11 +24594,7 @@ func rewriteBlock386(b *Block) bool { // match: (GE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24653,11 +24604,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386LT b.SetControl(cmp) @@ -24667,11 +24614,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24681,11 +24624,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24695,11 +24634,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24709,11 +24644,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24722,11 +24653,7 @@ func rewriteBlock386(b *Block) bool { // match: (GT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24736,11 +24663,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETL cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != Op386SETL { - break - } + for v.Op == Op386SETL { cmp := v.Args[0] b.Kind = Block386LT b.SetControl(cmp) @@ -24750,11 +24673,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETLE cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETLE { - break - } + for v.Op == Op386SETLE { cmp := v.Args[0] b.Kind = Block386LE b.SetControl(cmp) @@ -24764,11 +24683,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETG cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != Op386SETG { - break - } + for v.Op == Op386SETG { cmp := v.Args[0] b.Kind = Block386GT b.SetControl(cmp) @@ -24778,11 +24693,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETGE cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETGE { - break - } + for v.Op == Op386SETGE { cmp := v.Args[0] b.Kind = Block386GE b.SetControl(cmp) @@ -24792,11 +24703,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETEQ cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != Op386SETEQ { - break - } + for v.Op == Op386SETEQ { cmp := v.Args[0] b.Kind = Block386EQ b.SetControl(cmp) @@ -24806,11 +24713,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETNE cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETNE { - break - } + for v.Op == Op386SETNE { cmp := v.Args[0] b.Kind = Block386NE b.SetControl(cmp) @@ -24820,11 +24723,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETB cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != Op386SETB { - break - } + for v.Op == Op386SETB { cmp := v.Args[0] b.Kind = Block386ULT b.SetControl(cmp) @@ -24834,11 +24733,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETBE cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETBE { - break - } + for v.Op == Op386SETBE { cmp := v.Args[0] b.Kind = Block386ULE b.SetControl(cmp) @@ -24848,11 +24743,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETA cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386SETA { - break - } + for v.Op == Op386SETA { cmp := v.Args[0] b.Kind = Block386UGT b.SetControl(cmp) @@ -24862,11 +24753,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETAE cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETAE { - break - } + for v.Op == Op386SETAE { cmp := v.Args[0] b.Kind = Block386UGE b.SetControl(cmp) @@ -24876,11 +24763,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETO cmp) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != Op386SETO { - break - } + for v.Op == Op386SETO { cmp := v.Args[0] b.Kind = Block386OS b.SetControl(cmp) @@ -24890,11 +24773,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETGF cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386SETGF { - break - } + for v.Op == Op386SETGF { cmp := v.Args[0] b.Kind = Block386UGT b.SetControl(cmp) @@ -24904,11 +24783,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETGEF cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386SETGEF { - break - } + for v.Op == Op386SETGEF { cmp := v.Args[0] b.Kind = Block386UGE b.SetControl(cmp) @@ -24918,11 +24793,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETEQF cmp) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != Op386SETEQF { - break - } + for v.Op == Op386SETEQF { cmp := v.Args[0] b.Kind = Block386EQF b.SetControl(cmp) @@ -24932,11 +24803,7 @@ func rewriteBlock386(b *Block) bool { // match: (If (SETNEF cmp) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != Op386SETNEF { - break - } + for v.Op == Op386SETNEF { cmp := v.Args[0] b.Kind = Block386NEF b.SetControl(cmp) @@ -24947,8 +24814,6 @@ func rewriteBlock386(b *Block) bool { // cond: // result: (NE (TESTB cond cond) yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = Block386NE v0 := b.NewValue0(v.Pos, Op386TESTB, types.TypeFlags) @@ -24962,11 +24827,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386GE b.SetControl(cmp) @@ -24976,11 +24837,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -24989,11 +24846,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25002,11 +24855,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25015,11 +24864,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25029,11 +24874,7 @@ func rewriteBlock386(b *Block) bool { // match: (LE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25044,11 +24885,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386GT b.SetControl(cmp) @@ -25058,11 +24895,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25072,11 +24905,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25085,11 +24914,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25098,11 +24923,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25112,11 +24933,7 @@ func rewriteBlock386(b *Block) bool { // match: (LT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25127,11 +24944,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETL { @@ -25153,11 +24966,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETL { @@ -25179,11 +24988,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETLE { @@ -25205,11 +25010,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETLE { @@ -25231,11 +25032,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETG { @@ -25257,11 +25054,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETG { @@ -25283,11 +25076,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGE { @@ -25309,11 +25098,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGE { @@ -25335,11 +25120,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETEQ { @@ -25361,11 +25142,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETEQ { @@ -25387,11 +25164,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETNE { @@ -25413,11 +25186,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETNE { @@ -25439,11 +25208,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETB { @@ -25465,11 +25230,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETB { @@ -25491,11 +25252,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETBE { @@ -25517,11 +25274,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETBE { @@ -25543,11 +25296,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETA { @@ -25569,11 +25318,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETA { @@ -25595,11 +25340,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETAE { @@ -25621,11 +25362,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETAE { @@ -25647,11 +25384,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETO { @@ -25673,11 +25406,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETO { @@ -25699,11 +25428,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGF { @@ -25725,11 +25450,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGF { @@ -25751,11 +25472,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGEF { @@ -25777,11 +25494,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETGEF { @@ -25803,11 +25516,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETEQF { @@ -25829,11 +25538,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETEQF { @@ -25855,11 +25560,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETNEF { @@ -25881,11 +25582,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != Op386TESTB { - break - } + for v.Op == Op386TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != Op386SETNEF { @@ -25907,11 +25604,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386NE b.SetControl(cmp) @@ -25921,11 +25614,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25935,11 +25624,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25948,11 +25633,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25961,11 +25642,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25974,11 +25651,7 @@ func rewriteBlock386(b *Block) bool { // match: (NE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25988,11 +25661,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (InvertFlags cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386ULE b.SetControl(cmp) @@ -26002,11 +25671,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26015,11 +25680,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26029,11 +25690,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26042,11 +25699,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26056,11 +25709,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26070,11 +25719,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (InvertFlags cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386ULT b.SetControl(cmp) @@ -26084,11 +25729,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26098,11 +25739,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26112,11 +25749,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26125,11 +25758,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26139,11 +25768,7 @@ func rewriteBlock386(b *Block) bool { // match: (UGT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26153,11 +25778,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (InvertFlags cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386UGE b.SetControl(cmp) @@ -26167,11 +25788,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26180,11 +25797,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26193,11 +25806,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26207,11 +25816,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26220,11 +25825,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26235,11 +25836,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (InvertFlags cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != Op386InvertFlags { - break - } + for v.Op == Op386InvertFlags { cmp := v.Args[0] b.Kind = Block386UGT b.SetControl(cmp) @@ -26249,11 +25846,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagEQ { - break - } + for v.Op == Op386FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26263,11 +25856,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagLT_ULT { - break - } + for v.Op == Op386FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26276,11 +25865,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagLT_UGT { - break - } + for v.Op == Op386FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26290,11 +25875,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != Op386FlagGT_ULT { - break - } + for v.Op == Op386FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26303,11 +25884,7 @@ func rewriteBlock386(b *Block) bool { // match: (ULT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != Op386FlagGT_UGT { - break - } + for v.Op == Op386FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil diff --git a/src/cmd/compile/internal/ssa/rewrite386splitload.go b/src/cmd/compile/internal/ssa/rewrite386splitload.go index 31ed4d0a41..1eaf2d9d48 100644 --- a/src/cmd/compile/internal/ssa/rewrite386splitload.go +++ b/src/cmd/compile/internal/ssa/rewrite386splitload.go @@ -169,11 +169,10 @@ func rewriteValue386splitload_Op386CMPWload_0(v *Value) bool { } func rewriteBlock386splitload(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64.go b/src/cmd/compile/internal/ssa/rewriteAMD64.go index c377e28170..b17c0a68c1 100644 --- a/src/cmd/compile/internal/ssa/rewriteAMD64.go +++ b/src/cmd/compile/internal/ssa/rewriteAMD64.go @@ -64676,21 +64676,16 @@ func rewriteValueAMD64_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockAMD64(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockAMD64EQ: // match: (EQ (TESTL (SHLL (MOVLconst [1]) x) y)) // cond: !config.nacl // result: (UGE (BTL x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { y := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SHLL { @@ -64718,11 +64713,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL y (SHLL (MOVLconst [1]) x))) // cond: !config.nacl // result: (UGE (BTL x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] y := v.Args[0] v_1 := v.Args[1] @@ -64751,11 +64742,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ (SHLQ (MOVQconst [1]) x) y)) // cond: !config.nacl // result: (UGE (BTQ x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { y := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SHLQ { @@ -64783,11 +64770,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ y (SHLQ (MOVQconst [1]) x))) // cond: !config.nacl // result: (UGE (BTQ x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] y := v.Args[0] v_1 := v.Args[1] @@ -64816,11 +64799,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTLconst [c] x)) // cond: isUint32PowerOfTwo(c) && !config.nacl // result: (UGE (BTLconst [log2uint32(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTLconst { - break - } + for v.Op == OpAMD64TESTLconst { c := v.AuxInt x := v.Args[0] if !(isUint32PowerOfTwo(c) && !config.nacl) { @@ -64837,11 +64816,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQconst [c] x)) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (UGE (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQconst { - break - } + for v.Op == OpAMD64TESTQconst { c := v.AuxInt x := v.Args[0] if !(isUint64PowerOfTwo(c) && !config.nacl) { @@ -64858,11 +64833,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ (MOVQconst [c]) x)) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (UGE (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { x := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64MOVQconst { @@ -64883,11 +64854,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ x (MOVQconst [c]))) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (UGE (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -64909,11 +64876,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z1:(SHLQconst [63] (SHRQconst [63] x)) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHLQconst { @@ -64944,11 +64907,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z2 z1:(SHLQconst [63] (SHRQconst [63] x)))) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -64980,11 +64939,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z1:(SHLLconst [31] (SHRQconst [31] x)) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHLLconst { @@ -65015,11 +64970,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z2 z1:(SHLLconst [31] (SHRQconst [31] x)))) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -65051,11 +65002,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z1:(SHRQconst [63] (SHLQconst [63] x)) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRQconst { @@ -65086,11 +65033,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z2 z1:(SHRQconst [63] (SHLQconst [63] x)))) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -65122,11 +65065,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z1:(SHRLconst [31] (SHLLconst [31] x)) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTLconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRLconst { @@ -65157,11 +65096,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z2 z1:(SHRLconst [31] (SHLLconst [31] x)))) // cond: z1==z2 && !config.nacl // result: (UGE (BTLconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -65193,11 +65128,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z1:(SHRQconst [63] x) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRQconst { @@ -65221,11 +65152,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTQ z2 z1:(SHRQconst [63] x))) // cond: z1==z2 && !config.nacl // result: (UGE (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -65250,11 +65177,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z1:(SHRLconst [31] x) z2)) // cond: z1==z2 && !config.nacl // result: (UGE (BTLconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRLconst { @@ -65278,11 +65201,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (TESTL z2 z1:(SHRLconst [31] x))) // cond: z1==z2 && !config.nacl // result: (UGE (BTLconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -65307,11 +65226,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64EQ b.SetControl(cmp) @@ -65321,11 +65236,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65334,11 +65245,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65348,11 +65255,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65362,11 +65265,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65376,11 +65275,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (EQ (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65391,11 +65286,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64LE b.SetControl(cmp) @@ -65405,11 +65296,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65418,11 +65305,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65432,11 +65315,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65446,11 +65325,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65459,11 +65334,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65473,11 +65344,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64LT b.SetControl(cmp) @@ -65487,11 +65354,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65501,11 +65364,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65515,11 +65374,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65529,11 +65384,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65542,11 +65393,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (GT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65556,11 +65403,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETL cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETL { - break - } + for v.Op == OpAMD64SETL { cmp := v.Args[0] b.Kind = BlockAMD64LT b.SetControl(cmp) @@ -65570,11 +65413,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETLE cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETLE { - break - } + for v.Op == OpAMD64SETLE { cmp := v.Args[0] b.Kind = BlockAMD64LE b.SetControl(cmp) @@ -65584,11 +65423,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETG cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETG { - break - } + for v.Op == OpAMD64SETG { cmp := v.Args[0] b.Kind = BlockAMD64GT b.SetControl(cmp) @@ -65598,11 +65433,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETGE cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETGE { - break - } + for v.Op == OpAMD64SETGE { cmp := v.Args[0] b.Kind = BlockAMD64GE b.SetControl(cmp) @@ -65612,11 +65443,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETEQ cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETEQ { - break - } + for v.Op == OpAMD64SETEQ { cmp := v.Args[0] b.Kind = BlockAMD64EQ b.SetControl(cmp) @@ -65626,11 +65453,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETNE cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETNE { - break - } + for v.Op == OpAMD64SETNE { cmp := v.Args[0] b.Kind = BlockAMD64NE b.SetControl(cmp) @@ -65640,11 +65463,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETB cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETB { - break - } + for v.Op == OpAMD64SETB { cmp := v.Args[0] b.Kind = BlockAMD64ULT b.SetControl(cmp) @@ -65654,11 +65473,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETBE cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETBE { - break - } + for v.Op == OpAMD64SETBE { cmp := v.Args[0] b.Kind = BlockAMD64ULE b.SetControl(cmp) @@ -65668,11 +65483,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETA cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETA { - break - } + for v.Op == OpAMD64SETA { cmp := v.Args[0] b.Kind = BlockAMD64UGT b.SetControl(cmp) @@ -65682,11 +65493,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETAE cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETAE { - break - } + for v.Op == OpAMD64SETAE { cmp := v.Args[0] b.Kind = BlockAMD64UGE b.SetControl(cmp) @@ -65696,11 +65503,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETO cmp) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETO { - break - } + for v.Op == OpAMD64SETO { cmp := v.Args[0] b.Kind = BlockAMD64OS b.SetControl(cmp) @@ -65710,11 +65513,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETGF cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETGF { - break - } + for v.Op == OpAMD64SETGF { cmp := v.Args[0] b.Kind = BlockAMD64UGT b.SetControl(cmp) @@ -65724,11 +65523,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETGEF cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETGEF { - break - } + for v.Op == OpAMD64SETGEF { cmp := v.Args[0] b.Kind = BlockAMD64UGE b.SetControl(cmp) @@ -65738,11 +65533,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETEQF cmp) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETEQF { - break - } + for v.Op == OpAMD64SETEQF { cmp := v.Args[0] b.Kind = BlockAMD64EQF b.SetControl(cmp) @@ -65752,11 +65543,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (If (SETNEF cmp) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64SETNEF { - break - } + for v.Op == OpAMD64SETNEF { cmp := v.Args[0] b.Kind = BlockAMD64NEF b.SetControl(cmp) @@ -65767,8 +65554,6 @@ func rewriteBlockAMD64(b *Block) bool { // cond: // result: (NE (TESTB cond cond) yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockAMD64NE v0 := b.NewValue0(v.Pos, OpAMD64TESTB, types.TypeFlags) @@ -65782,11 +65567,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64GE b.SetControl(cmp) @@ -65796,11 +65577,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65809,11 +65586,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65822,11 +65595,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65835,11 +65604,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65849,11 +65614,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65864,11 +65625,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64GT b.SetControl(cmp) @@ -65878,11 +65635,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65892,11 +65645,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65905,11 +65654,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65918,11 +65663,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65932,11 +65673,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (LT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -65947,11 +65684,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETL { @@ -65973,11 +65706,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETL cmp) (SETL cmp)) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETL { @@ -65999,11 +65728,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETLE { @@ -66025,11 +65750,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETLE cmp) (SETLE cmp)) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETLE { @@ -66051,11 +65772,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETG { @@ -66077,11 +65794,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETG cmp) (SETG cmp)) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETG { @@ -66103,11 +65816,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGE { @@ -66129,11 +65838,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGE cmp) (SETGE cmp)) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGE { @@ -66155,11 +65860,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETEQ { @@ -66181,11 +65882,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETEQ cmp) (SETEQ cmp)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETEQ { @@ -66207,11 +65904,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETNE { @@ -66233,11 +65926,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETNE cmp) (SETNE cmp)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETNE { @@ -66259,11 +65948,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETB { @@ -66285,11 +65970,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETB cmp) (SETB cmp)) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETB { @@ -66311,11 +65992,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETBE { @@ -66337,11 +66014,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETBE cmp) (SETBE cmp)) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETBE { @@ -66363,11 +66036,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETA { @@ -66389,11 +66058,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETA cmp) (SETA cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETA { @@ -66415,11 +66080,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETAE { @@ -66441,11 +66102,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETAE cmp) (SETAE cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETAE { @@ -66467,11 +66124,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETO { @@ -66493,11 +66146,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETO cmp) (SETO cmp)) yes no) // cond: // result: (OS cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETO { @@ -66519,11 +66168,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL (SHLL (MOVLconst [1]) x) y)) // cond: !config.nacl // result: (ULT (BTL x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { y := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SHLL { @@ -66551,11 +66196,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL y (SHLL (MOVLconst [1]) x))) // cond: !config.nacl // result: (ULT (BTL x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] y := v.Args[0] v_1 := v.Args[1] @@ -66584,11 +66225,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ (SHLQ (MOVQconst [1]) x) y)) // cond: !config.nacl // result: (ULT (BTQ x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { y := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SHLQ { @@ -66616,11 +66253,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ y (SHLQ (MOVQconst [1]) x))) // cond: !config.nacl // result: (ULT (BTQ x y)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] y := v.Args[0] v_1 := v.Args[1] @@ -66649,11 +66282,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTLconst [c] x)) // cond: isUint32PowerOfTwo(c) && !config.nacl // result: (ULT (BTLconst [log2uint32(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTLconst { - break - } + for v.Op == OpAMD64TESTLconst { c := v.AuxInt x := v.Args[0] if !(isUint32PowerOfTwo(c) && !config.nacl) { @@ -66670,11 +66299,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQconst [c] x)) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (ULT (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQconst { - break - } + for v.Op == OpAMD64TESTQconst { c := v.AuxInt x := v.Args[0] if !(isUint64PowerOfTwo(c) && !config.nacl) { @@ -66691,11 +66316,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ (MOVQconst [c]) x)) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (ULT (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { x := v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64MOVQconst { @@ -66716,11 +66337,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ x (MOVQconst [c]))) // cond: isUint64PowerOfTwo(c) && !config.nacl // result: (ULT (BTQconst [log2(c)] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -66742,11 +66359,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z1:(SHLQconst [63] (SHRQconst [63] x)) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHLQconst { @@ -66777,11 +66390,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z2 z1:(SHLQconst [63] (SHRQconst [63] x)))) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -66813,11 +66422,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z1:(SHLLconst [31] (SHRQconst [31] x)) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHLLconst { @@ -66848,11 +66453,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z2 z1:(SHLLconst [31] (SHRQconst [31] x)))) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -66884,11 +66485,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z1:(SHRQconst [63] (SHLQconst [63] x)) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRQconst { @@ -66919,11 +66516,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z2 z1:(SHRQconst [63] (SHLQconst [63] x)))) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -66955,11 +66548,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z1:(SHRLconst [31] (SHLLconst [31] x)) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTLconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRLconst { @@ -66990,11 +66579,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z2 z1:(SHRLconst [31] (SHLLconst [31] x)))) // cond: z1==z2 && !config.nacl // result: (ULT (BTLconst [0] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -67026,11 +66611,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z1:(SHRQconst [63] x) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRQconst { @@ -67054,11 +66635,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTQ z2 z1:(SHRQconst [63] x))) // cond: z1==z2 && !config.nacl // result: (ULT (BTQconst [63] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTQ { - break - } + for v.Op == OpAMD64TESTQ { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -67083,11 +66660,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z1:(SHRLconst [31] x) z2)) // cond: z1==z2 && !config.nacl // result: (ULT (BTLconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { z2 := v.Args[1] z1 := v.Args[0] if z1.Op != OpAMD64SHRLconst { @@ -67111,11 +66684,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTL z2 z1:(SHRLconst [31] x))) // cond: z1==z2 && !config.nacl // result: (ULT (BTLconst [31] x)) - for { - v := b.Control - if v.Op != OpAMD64TESTL { - break - } + for v.Op == OpAMD64TESTL { _ = v.Args[1] z2 := v.Args[0] z1 := v.Args[1] @@ -67140,11 +66709,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGF { @@ -67166,11 +66731,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGF cmp) (SETGF cmp)) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGF { @@ -67192,11 +66753,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGEF { @@ -67218,11 +66775,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETGEF cmp) (SETGEF cmp)) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETGEF { @@ -67244,11 +66797,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETEQF { @@ -67270,11 +66819,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETEQF cmp) (SETEQF cmp)) yes no) // cond: // result: (EQF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETEQF { @@ -67296,11 +66841,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETNEF { @@ -67322,11 +66863,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (TESTB (SETNEF cmp) (SETNEF cmp)) yes no) // cond: // result: (NEF cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64TESTB { - break - } + for v.Op == OpAMD64TESTB { _ = v.Args[1] v_0 := v.Args[0] if v_0.Op != OpAMD64SETNEF { @@ -67348,11 +66885,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64NE b.SetControl(cmp) @@ -67362,11 +66895,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67376,11 +66905,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67389,11 +66914,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67402,11 +66923,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67415,11 +66932,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (NE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67429,11 +66942,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (InvertFlags cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64ULE b.SetControl(cmp) @@ -67443,11 +66952,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67456,11 +66961,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67470,11 +66971,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67483,11 +66980,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67497,11 +66990,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67511,11 +67000,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (InvertFlags cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64ULT b.SetControl(cmp) @@ -67525,11 +67010,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67539,11 +67020,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67553,11 +67030,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67566,11 +67039,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67580,11 +67049,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (UGT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67594,11 +67059,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (InvertFlags cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64UGE b.SetControl(cmp) @@ -67608,11 +67069,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67621,11 +67078,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67634,11 +67087,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67648,11 +67097,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67661,11 +67106,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67676,11 +67117,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (InvertFlags cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpAMD64InvertFlags { - break - } + for v.Op == OpAMD64InvertFlags { cmp := v.Args[0] b.Kind = BlockAMD64UGT b.SetControl(cmp) @@ -67690,11 +67127,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagEQ { - break - } + for v.Op == OpAMD64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67704,11 +67137,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_ULT { - break - } + for v.Op == OpAMD64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67717,11 +67146,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagLT_UGT { - break - } + for v.Op == OpAMD64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67731,11 +67156,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_ULT { - break - } + for v.Op == OpAMD64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -67744,11 +67165,7 @@ func rewriteBlockAMD64(b *Block) bool { // match: (ULT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpAMD64FlagGT_UGT { - break - } + for v.Op == OpAMD64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go b/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go index dbd0e031a4..0a0ff2dfbf 100644 --- a/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go +++ b/src/cmd/compile/internal/ssa/rewriteAMD64splitload.go @@ -218,11 +218,10 @@ func rewriteValueAMD64splitload_OpAMD64CMPWload_0(v *Value) bool { } func rewriteBlockAMD64splitload(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewriteARM.go b/src/cmd/compile/internal/ssa/rewriteARM.go index 9d3dbd88f8..1cbde5150e 100644 --- a/src/cmd/compile/internal/ssa/rewriteARM.go +++ b/src/cmd/compile/internal/ssa/rewriteARM.go @@ -21697,21 +21697,16 @@ func rewriteValueARM_OpZeromask_0(v *Value) bool { } func rewriteBlockARM(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockARMEQ: // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -21720,11 +21715,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -21734,11 +21725,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -21748,11 +21735,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -21762,11 +21745,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -21776,11 +21755,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMEQ b.SetControl(cmp) @@ -21790,11 +21765,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (EQ (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21818,11 +21789,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (EQ (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21850,11 +21817,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (EQ (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21878,11 +21841,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21908,11 +21867,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21938,11 +21893,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21968,11 +21919,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -21998,11 +21945,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22028,11 +21971,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22058,11 +21997,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (EQ (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22086,11 +22021,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (EQ (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22118,11 +22049,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (EQ (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22146,11 +22073,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22176,11 +22099,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22206,11 +22125,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22236,11 +22151,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22266,11 +22177,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22296,11 +22203,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22326,11 +22229,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (EQ (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22354,11 +22253,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (EQ (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22382,11 +22277,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22412,11 +22303,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22442,11 +22329,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22472,11 +22355,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22502,11 +22381,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22532,11 +22407,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22562,11 +22433,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (EQ (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22590,11 +22457,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (EQ (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22618,11 +22481,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22648,11 +22507,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22678,11 +22533,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22708,11 +22559,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22738,11 +22585,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22768,11 +22611,7 @@ func rewriteBlockARM(b *Block) bool { // match: (EQ (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (EQ (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22799,11 +22638,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -22812,11 +22647,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -22826,11 +22657,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -22840,11 +22667,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -22853,11 +22676,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -22866,11 +22685,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMLE b.SetControl(cmp) @@ -22880,11 +22695,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (GE (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22908,11 +22719,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (GE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22940,11 +22747,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (GE (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22968,11 +22771,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -22998,11 +22797,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23028,11 +22823,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23058,11 +22849,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23088,11 +22875,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23118,11 +22901,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23148,11 +22927,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (GE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23176,11 +22951,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (GE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23208,11 +22979,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (GE (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23236,11 +23003,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23266,11 +23029,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23296,11 +23055,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23326,11 +23081,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23356,11 +23107,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23386,11 +23133,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23416,11 +23159,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (GE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23444,11 +23183,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (GE (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23472,11 +23207,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23502,11 +23233,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23532,11 +23259,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23562,11 +23285,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23592,11 +23311,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23622,11 +23337,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23652,11 +23363,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (GE (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23680,11 +23387,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (GE (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23708,11 +23411,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23738,11 +23437,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23768,11 +23463,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23798,11 +23489,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23828,11 +23515,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23858,11 +23541,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GE (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GE (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23889,11 +23568,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -23903,11 +23578,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -23917,11 +23588,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -23931,11 +23598,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -23944,11 +23607,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -23957,11 +23616,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMLT b.SetControl(cmp) @@ -23971,11 +23626,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (GT (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -23999,11 +23650,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (GT (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24031,11 +23678,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (GT (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24059,11 +23702,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24089,11 +23728,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24119,11 +23754,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24149,11 +23780,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24179,11 +23806,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24209,11 +23832,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24239,11 +23858,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (GT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24267,11 +23882,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (GT (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24295,11 +23906,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24325,11 +23932,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24355,11 +23958,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24385,11 +23984,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24415,11 +24010,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24445,11 +24036,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24475,11 +24062,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (GT (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24503,11 +24086,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (GT (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24535,11 +24114,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (GT (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24563,11 +24138,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24593,11 +24164,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24623,11 +24190,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24653,11 +24216,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24683,11 +24242,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24713,11 +24268,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24743,11 +24294,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (GT (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24771,11 +24318,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (GT (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24799,11 +24342,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24829,11 +24368,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24859,11 +24394,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24889,11 +24420,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24919,11 +24446,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24949,11 +24472,7 @@ func rewriteBlockARM(b *Block) bool { // match: (GT (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (GT (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -24980,11 +24499,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (Equal cc) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpARMEqual { - break - } + for v.Op == OpARMEqual { cc := v.Args[0] b.Kind = BlockARMEQ b.SetControl(cc) @@ -24994,11 +24509,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (NotEqual cc) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpARMNotEqual { - break - } + for v.Op == OpARMNotEqual { cc := v.Args[0] b.Kind = BlockARMNE b.SetControl(cc) @@ -25008,11 +24519,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (LessThan cc) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpARMLessThan { - break - } + for v.Op == OpARMLessThan { cc := v.Args[0] b.Kind = BlockARMLT b.SetControl(cc) @@ -25022,11 +24529,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (LessThanU cc) yes no) // cond: // result: (ULT cc yes no) - for { - v := b.Control - if v.Op != OpARMLessThanU { - break - } + for v.Op == OpARMLessThanU { cc := v.Args[0] b.Kind = BlockARMULT b.SetControl(cc) @@ -25036,11 +24539,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (LessEqual cc) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpARMLessEqual { - break - } + for v.Op == OpARMLessEqual { cc := v.Args[0] b.Kind = BlockARMLE b.SetControl(cc) @@ -25050,11 +24549,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (LessEqualU cc) yes no) // cond: // result: (ULE cc yes no) - for { - v := b.Control - if v.Op != OpARMLessEqualU { - break - } + for v.Op == OpARMLessEqualU { cc := v.Args[0] b.Kind = BlockARMULE b.SetControl(cc) @@ -25064,11 +24559,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (GreaterThan cc) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpARMGreaterThan { - break - } + for v.Op == OpARMGreaterThan { cc := v.Args[0] b.Kind = BlockARMGT b.SetControl(cc) @@ -25078,11 +24569,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (GreaterThanU cc) yes no) // cond: // result: (UGT cc yes no) - for { - v := b.Control - if v.Op != OpARMGreaterThanU { - break - } + for v.Op == OpARMGreaterThanU { cc := v.Args[0] b.Kind = BlockARMUGT b.SetControl(cc) @@ -25092,11 +24579,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (GreaterEqual cc) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpARMGreaterEqual { - break - } + for v.Op == OpARMGreaterEqual { cc := v.Args[0] b.Kind = BlockARMGE b.SetControl(cc) @@ -25106,11 +24589,7 @@ func rewriteBlockARM(b *Block) bool { // match: (If (GreaterEqualU cc) yes no) // cond: // result: (UGE cc yes no) - for { - v := b.Control - if v.Op != OpARMGreaterEqualU { - break - } + for v.Op == OpARMGreaterEqualU { cc := v.Args[0] b.Kind = BlockARMUGE b.SetControl(cc) @@ -25121,8 +24600,6 @@ func rewriteBlockARM(b *Block) bool { // cond: // result: (NE (CMPconst [0] cond) yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockARMNE v0 := b.NewValue0(v.Pos, OpARMCMPconst, types.TypeFlags) @@ -25136,11 +24613,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25149,11 +24622,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25162,11 +24631,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25175,11 +24640,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25189,11 +24650,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -25203,11 +24660,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMGE b.SetControl(cmp) @@ -25217,11 +24670,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (LE (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25245,11 +24694,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (LE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25277,11 +24722,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (LE (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25305,11 +24746,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25335,11 +24772,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25365,11 +24798,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25395,11 +24824,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25425,11 +24850,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25455,11 +24876,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25485,11 +24902,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (LE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25513,11 +24926,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (LE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25545,11 +24954,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (LE (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25573,11 +24978,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25603,11 +25004,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25633,11 +25030,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25663,11 +25056,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25693,11 +25082,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25723,11 +25108,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25753,11 +25134,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (LE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25781,11 +25158,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (LE (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25809,11 +25182,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25839,11 +25208,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25869,11 +25234,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25899,11 +25260,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25929,11 +25286,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25959,11 +25312,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -25989,11 +25338,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (LE (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26017,11 +25362,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (LE (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26045,11 +25386,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26075,11 +25412,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26105,11 +25438,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26135,11 +25464,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26165,11 +25490,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26195,11 +25516,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LE (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LE (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26226,11 +25543,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26240,11 +25553,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26253,11 +25562,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26266,11 +25571,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26280,11 +25581,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -26294,11 +25591,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMGT b.SetControl(cmp) @@ -26308,11 +25601,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (LT (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26336,11 +25625,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (LT (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26368,11 +25653,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (LT (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26396,11 +25677,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26426,11 +25703,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26456,11 +25729,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26486,11 +25755,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26516,11 +25781,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26546,11 +25807,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26576,11 +25833,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (LT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26604,11 +25857,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (LT (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26636,11 +25885,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (LT (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26664,11 +25909,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26694,11 +25935,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26724,11 +25961,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26754,11 +25987,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26784,11 +26013,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26814,11 +26039,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26844,11 +26065,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (LT (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26872,11 +26089,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (LT (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26900,11 +26113,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26930,11 +26139,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26960,11 +26165,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -26990,11 +26191,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27020,11 +26217,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27050,11 +26243,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27080,11 +26269,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (LT (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27108,11 +26293,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (LT (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27136,11 +26317,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27166,11 +26343,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27196,11 +26369,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27226,11 +26395,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27256,11 +26421,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27286,11 +26447,7 @@ func rewriteBlockARM(b *Block) bool { // match: (LT (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (LT (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27317,11 +26474,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (Equal cc)) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27338,11 +26491,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (NotEqual cc)) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27359,11 +26508,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (LessThan cc)) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27380,11 +26525,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (LessThanU cc)) yes no) // cond: // result: (ULT cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27401,11 +26542,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (LessEqual cc)) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27422,11 +26559,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (LessEqualU cc)) yes no) // cond: // result: (ULE cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27443,11 +26576,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (GreaterThan cc)) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27464,11 +26593,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (GreaterThanU cc)) yes no) // cond: // result: (UGT cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27485,11 +26610,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (GreaterEqual cc)) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27506,11 +26627,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] (GreaterEqualU cc)) yes no) // cond: // result: (UGE cc yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27527,11 +26644,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -27541,11 +26654,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -27554,11 +26663,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -27567,11 +26672,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -27580,11 +26681,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -27593,11 +26690,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMNE b.SetControl(cmp) @@ -27607,11 +26700,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUB x y)) yes no) // cond: l.Uses==1 // result: (NE (CMP x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27635,11 +26724,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(MULS x y a)) yes no) // cond: l.Uses==1 // result: (NE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27667,11 +26752,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBconst [c] x)) yes no) // cond: l.Uses==1 // result: (NE (CMPconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27695,11 +26776,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27725,11 +26802,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27755,11 +26828,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27785,11 +26854,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27815,11 +26880,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27845,11 +26906,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(SUBshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMPshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27875,11 +26932,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADD x y)) yes no) // cond: l.Uses==1 // result: (NE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27903,11 +26956,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(MULA x y a)) yes no) // cond: l.Uses==1 // result: (NE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27935,11 +26984,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDconst [c] x)) yes no) // cond: l.Uses==1 // result: (NE (CMNconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27963,11 +27008,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -27993,11 +27034,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28023,11 +27060,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28053,11 +27086,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28083,11 +27112,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28113,11 +27138,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ADDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (CMNshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28143,11 +27164,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(AND x y)) yes no) // cond: l.Uses==1 // result: (NE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28171,11 +27188,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDconst [c] x)) yes no) // cond: l.Uses==1 // result: (NE (TSTconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28199,11 +27212,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28229,11 +27238,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28259,11 +27264,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28289,11 +27290,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28319,11 +27316,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28349,11 +27342,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(ANDshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TSTshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28379,11 +27368,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XOR x y)) yes no) // cond: l.Uses==1 // result: (NE (TEQ x y) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28407,11 +27392,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORconst [c] x)) yes no) // cond: l.Uses==1 // result: (NE (TEQconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28435,11 +27416,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftLL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftLL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28465,11 +27442,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftRL x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftRL x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28495,11 +27468,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftRA x y [c])) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftRA x y [c]) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28525,11 +27494,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftLLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftLLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28555,11 +27520,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftRLreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftRLreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28585,11 +27546,7 @@ func rewriteBlockARM(b *Block) bool { // match: (NE (CMPconst [0] l:(XORshiftRAreg x y z)) yes no) // cond: l.Uses==1 // result: (NE (TEQshiftRAreg x y z) yes no) - for { - v := b.Control - if v.Op != OpARMCMPconst { - break - } + for v.Op == OpARMCMPconst { if v.AuxInt != 0 { break } @@ -28616,11 +27573,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28629,11 +27582,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28643,11 +27592,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28656,11 +27601,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28670,11 +27611,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28683,11 +27620,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGE (InvertFlags cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMULE b.SetControl(cmp) @@ -28698,11 +27631,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28712,11 +27641,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28726,11 +27651,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28739,11 +27660,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28753,11 +27670,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28766,11 +27679,7 @@ func rewriteBlockARM(b *Block) bool { // match: (UGT (InvertFlags cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMULT b.SetControl(cmp) @@ -28781,11 +27690,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28794,11 +27699,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28807,11 +27708,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28821,11 +27718,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28834,11 +27727,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28848,11 +27737,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULE (InvertFlags cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMUGE b.SetControl(cmp) @@ -28863,11 +27748,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagEQ { - break - } + for v.Op == OpARMFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28877,11 +27758,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagLT_ULT { - break - } + for v.Op == OpARMFlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28890,11 +27767,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagLT_UGT { - break - } + for v.Op == OpARMFlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28904,11 +27777,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARMFlagGT_ULT { - break - } + for v.Op == OpARMFlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28917,11 +27786,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARMFlagGT_UGT { - break - } + for v.Op == OpARMFlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -28931,11 +27796,7 @@ func rewriteBlockARM(b *Block) bool { // match: (ULT (InvertFlags cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpARMInvertFlags { - break - } + for v.Op == OpARMInvertFlags { cmp := v.Args[0] b.Kind = BlockARMUGT b.SetControl(cmp) diff --git a/src/cmd/compile/internal/ssa/rewriteARM64.go b/src/cmd/compile/internal/ssa/rewriteARM64.go index 997439ec90..0f55a6f7d8 100644 --- a/src/cmd/compile/internal/ssa/rewriteARM64.go +++ b/src/cmd/compile/internal/ssa/rewriteARM64.go @@ -38083,21 +38083,16 @@ func rewriteValueARM64_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockARM64(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockARM64EQ: // match: (EQ (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (EQ (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38121,11 +38116,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (EQ (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38149,11 +38140,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (EQ (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38177,11 +38164,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (EQ (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38205,11 +38188,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (EQ (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38233,11 +38212,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (EQ (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38261,11 +38236,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (EQ (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38289,11 +38260,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (EQ (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38317,11 +38284,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (EQ (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -38343,11 +38306,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (EQ (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -38369,11 +38328,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] x) yes no) // cond: // result: (Z x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38386,11 +38341,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] x) yes no) // cond: // result: (ZW x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38403,11 +38354,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (EQ (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38435,11 +38382,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (EQ (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38467,11 +38410,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (EQ (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38499,11 +38438,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (EQ (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38531,11 +38466,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (TSTconst [c] x) yes no) // cond: oneBit(c) // result: (TBZ {ntz(c)} x yes no) - for { - v := b.Control - if v.Op != OpARM64TSTconst { - break - } + for v.Op == OpARM64TSTconst { c := v.AuxInt x := v.Args[0] if !(oneBit(c)) { @@ -38549,11 +38480,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (TSTWconst [c] x) yes no) // cond: oneBit(int64(uint32(c))) // result: (TBZ {ntz(int64(uint32(c)))} x yes no) - for { - v := b.Control - if v.Op != OpARM64TSTWconst { - break - } + for v.Op == OpARM64TSTWconst { c := v.AuxInt x := v.Args[0] if !(oneBit(int64(uint32(c)))) { @@ -38567,11 +38494,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -38580,11 +38503,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -38594,11 +38513,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -38608,11 +38523,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -38622,11 +38533,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -38636,11 +38543,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64EQ b.SetControl(cmp) @@ -38651,11 +38554,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (FGE (InvertFlags cmp) yes no) // cond: // result: (FLE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64FLE b.SetControl(cmp) @@ -38666,11 +38565,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (FGT (InvertFlags cmp) yes no) // cond: // result: (FLT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64FLT b.SetControl(cmp) @@ -38681,11 +38576,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (FLE (InvertFlags cmp) yes no) // cond: // result: (FGE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64FGE b.SetControl(cmp) @@ -38696,11 +38587,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (FLT (InvertFlags cmp) yes no) // cond: // result: (FGT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64FGT b.SetControl(cmp) @@ -38711,11 +38598,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GE (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38739,11 +38622,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38767,11 +38646,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GE (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38795,11 +38670,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GE (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38823,11 +38694,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GE (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38851,11 +38718,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GE (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38879,11 +38742,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (GE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -38907,11 +38766,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (GE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -38935,11 +38790,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (GE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -38961,11 +38812,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (GE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -38987,11 +38834,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (GE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39019,11 +38862,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (GE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39051,11 +38890,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (GE (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39083,11 +38918,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (GE (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39115,11 +38946,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPWconst [0] x) yes no) // cond: // result: (TBZ {int64(31)} x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39132,11 +38959,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (CMPconst [0] x) yes no) // cond: // result: (TBZ {int64(63)} x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39149,11 +38972,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39162,11 +38981,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39176,11 +38991,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39190,11 +39001,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39203,11 +39010,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39216,11 +39019,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64LE b.SetControl(cmp) @@ -39231,11 +39030,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GT (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39259,11 +39054,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GT (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39287,11 +39078,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GT (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39315,11 +39102,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GT (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39343,11 +39126,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GT (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39371,11 +39150,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (GT (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39399,11 +39174,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (GT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39427,11 +39198,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (GT (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39455,11 +39222,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (GT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -39481,11 +39244,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (GT (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -39507,11 +39266,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (GT (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39539,11 +39294,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (GT (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39571,11 +39322,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (GT (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39603,11 +39350,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (GT (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39635,11 +39378,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39649,11 +39388,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39663,11 +39398,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39677,11 +39408,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39690,11 +39417,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -39703,11 +39426,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64LT b.SetControl(cmp) @@ -39718,11 +39437,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (Equal cc) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpARM64Equal { - break - } + for v.Op == OpARM64Equal { cc := v.Args[0] b.Kind = BlockARM64EQ b.SetControl(cc) @@ -39732,11 +39447,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (NotEqual cc) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpARM64NotEqual { - break - } + for v.Op == OpARM64NotEqual { cc := v.Args[0] b.Kind = BlockARM64NE b.SetControl(cc) @@ -39746,11 +39457,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessThan cc) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThan { - break - } + for v.Op == OpARM64LessThan { cc := v.Args[0] b.Kind = BlockARM64LT b.SetControl(cc) @@ -39760,11 +39467,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessThanU cc) yes no) // cond: // result: (ULT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThanU { - break - } + for v.Op == OpARM64LessThanU { cc := v.Args[0] b.Kind = BlockARM64ULT b.SetControl(cc) @@ -39774,11 +39477,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessEqual cc) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqual { - break - } + for v.Op == OpARM64LessEqual { cc := v.Args[0] b.Kind = BlockARM64LE b.SetControl(cc) @@ -39788,11 +39487,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessEqualU cc) yes no) // cond: // result: (ULE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqualU { - break - } + for v.Op == OpARM64LessEqualU { cc := v.Args[0] b.Kind = BlockARM64ULE b.SetControl(cc) @@ -39802,11 +39497,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterThan cc) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThan { - break - } + for v.Op == OpARM64GreaterThan { cc := v.Args[0] b.Kind = BlockARM64GT b.SetControl(cc) @@ -39816,11 +39507,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterThanU cc) yes no) // cond: // result: (UGT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThanU { - break - } + for v.Op == OpARM64GreaterThanU { cc := v.Args[0] b.Kind = BlockARM64UGT b.SetControl(cc) @@ -39830,11 +39517,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterEqual cc) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqual { - break - } + for v.Op == OpARM64GreaterEqual { cc := v.Args[0] b.Kind = BlockARM64GE b.SetControl(cc) @@ -39844,11 +39527,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterEqualU cc) yes no) // cond: // result: (UGE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqualU { - break - } + for v.Op == OpARM64GreaterEqualU { cc := v.Args[0] b.Kind = BlockARM64UGE b.SetControl(cc) @@ -39858,11 +39537,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessThanF cc) yes no) // cond: // result: (FLT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThanF { - break - } + for v.Op == OpARM64LessThanF { cc := v.Args[0] b.Kind = BlockARM64FLT b.SetControl(cc) @@ -39872,11 +39547,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (LessEqualF cc) yes no) // cond: // result: (FLE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqualF { - break - } + for v.Op == OpARM64LessEqualF { cc := v.Args[0] b.Kind = BlockARM64FLE b.SetControl(cc) @@ -39886,11 +39557,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterThanF cc) yes no) // cond: // result: (FGT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThanF { - break - } + for v.Op == OpARM64GreaterThanF { cc := v.Args[0] b.Kind = BlockARM64FGT b.SetControl(cc) @@ -39900,11 +39567,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (If (GreaterEqualF cc) yes no) // cond: // result: (FGE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqualF { - break - } + for v.Op == OpARM64GreaterEqualF { cc := v.Args[0] b.Kind = BlockARM64FGE b.SetControl(cc) @@ -39915,8 +39578,6 @@ func rewriteBlockARM64(b *Block) bool { // cond: // result: (NZ cond yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockARM64NZ b.SetControl(cond) @@ -39927,11 +39588,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LE (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -39955,11 +39612,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -39983,11 +39636,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LE (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40011,11 +39660,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LE (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40039,11 +39684,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LE (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40067,11 +39708,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LE (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40095,11 +39732,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (LE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40123,11 +39756,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (LE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40151,11 +39780,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (LE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -40177,11 +39802,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (LE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -40203,11 +39824,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (LE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40235,11 +39852,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (LE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40267,11 +39880,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (LE (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40299,11 +39908,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (LE (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40331,11 +39936,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40344,11 +39945,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40357,11 +39954,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40370,11 +39963,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40384,11 +39973,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40398,11 +39983,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64GE b.SetControl(cmp) @@ -40413,11 +39994,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LT (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40441,11 +40018,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LT (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40469,11 +40042,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LT (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40497,11 +40066,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LT (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40525,11 +40090,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LT (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40553,11 +40114,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (LT (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40581,11 +40138,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (LT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40609,11 +40162,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (LT (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40637,11 +40186,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (LT (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -40663,11 +40208,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (LT (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -40689,11 +40230,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (LT (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40721,11 +40258,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (LT (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40753,11 +40286,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (LT (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40785,11 +40314,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (LT (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40817,11 +40342,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPWconst [0] x) yes no) // cond: // result: (TBNZ {int64(31)} x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40834,11 +40355,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (CMPconst [0] x) yes no) // cond: // result: (TBNZ {int64(63)} x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40851,11 +40368,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40865,11 +40378,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40878,11 +40387,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40891,11 +40396,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40905,11 +40406,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40919,11 +40416,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64GT b.SetControl(cmp) @@ -40934,11 +40427,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (NE (TSTWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -40962,11 +40451,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (NE (TST x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -40990,11 +40475,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (NE (TSTW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41018,11 +40499,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] x:(ANDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (NE (TSTconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41046,11 +40523,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (NE (CMNconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41074,11 +40547,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] x:(ADDconst [c] y)) yes no) // cond: x.Uses == 1 // result: (NE (CMNWconst [c] y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41102,11 +40571,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (NE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41130,11 +40595,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] z:(ADD x y)) yes no) // cond: z.Uses == 1 // result: (NE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41158,11 +40619,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMP x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (NE (CMN x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMP { - break - } + for v.Op == OpARM64CMP { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -41184,11 +40641,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPW x z:(NEG y)) yes no) // cond: z.Uses == 1 // result: (NE (CMNW x y) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPW { - break - } + for v.Op == OpARM64CMPW { _ = v.Args[1] x := v.Args[0] z := v.Args[1] @@ -41210,11 +40663,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] x) yes no) // cond: // result: (NZ x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41227,11 +40676,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] x) yes no) // cond: // result: (NZW x yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41244,11 +40689,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] z:(MADD a x y)) yes no) // cond: z.Uses==1 // result: (NE (CMN a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41276,11 +40717,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPconst [0] z:(MSUB a x y)) yes no) // cond: z.Uses==1 // result: (NE (CMP a (MUL x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPconst { - break - } + for v.Op == OpARM64CMPconst { if v.AuxInt != 0 { break } @@ -41308,11 +40745,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] z:(MADDW a x y)) yes no) // cond: z.Uses==1 // result: (NE (CMNW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41340,11 +40773,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (CMPWconst [0] z:(MSUBW a x y)) yes no) // cond: z.Uses==1 // result: (NE (CMPW a (MULW x y)) yes no) - for { - v := b.Control - if v.Op != OpARM64CMPWconst { - break - } + for v.Op == OpARM64CMPWconst { if v.AuxInt != 0 { break } @@ -41372,11 +40801,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (TSTconst [c] x) yes no) // cond: oneBit(c) // result: (TBNZ {ntz(c)} x yes no) - for { - v := b.Control - if v.Op != OpARM64TSTconst { - break - } + for v.Op == OpARM64TSTconst { c := v.AuxInt x := v.Args[0] if !(oneBit(c)) { @@ -41390,11 +40815,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (TSTWconst [c] x) yes no) // cond: oneBit(int64(uint32(c))) // result: (TBNZ {ntz(int64(uint32(c)))} x yes no) - for { - v := b.Control - if v.Op != OpARM64TSTWconst { - break - } + for v.Op == OpARM64TSTWconst { c := v.AuxInt x := v.Args[0] if !(oneBit(int64(uint32(c)))) { @@ -41408,11 +40829,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41422,11 +40839,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41435,11 +40848,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41448,11 +40857,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41461,11 +40866,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41474,11 +40875,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64NE b.SetControl(cmp) @@ -41489,11 +40886,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (Equal cc) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpARM64Equal { - break - } + for v.Op == OpARM64Equal { cc := v.Args[0] b.Kind = BlockARM64EQ b.SetControl(cc) @@ -41503,11 +40896,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (NotEqual cc) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpARM64NotEqual { - break - } + for v.Op == OpARM64NotEqual { cc := v.Args[0] b.Kind = BlockARM64NE b.SetControl(cc) @@ -41517,11 +40906,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessThan cc) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThan { - break - } + for v.Op == OpARM64LessThan { cc := v.Args[0] b.Kind = BlockARM64LT b.SetControl(cc) @@ -41531,11 +40916,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessThanU cc) yes no) // cond: // result: (ULT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThanU { - break - } + for v.Op == OpARM64LessThanU { cc := v.Args[0] b.Kind = BlockARM64ULT b.SetControl(cc) @@ -41545,11 +40926,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessEqual cc) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqual { - break - } + for v.Op == OpARM64LessEqual { cc := v.Args[0] b.Kind = BlockARM64LE b.SetControl(cc) @@ -41559,11 +40936,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessEqualU cc) yes no) // cond: // result: (ULE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqualU { - break - } + for v.Op == OpARM64LessEqualU { cc := v.Args[0] b.Kind = BlockARM64ULE b.SetControl(cc) @@ -41573,11 +40946,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterThan cc) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThan { - break - } + for v.Op == OpARM64GreaterThan { cc := v.Args[0] b.Kind = BlockARM64GT b.SetControl(cc) @@ -41587,11 +40956,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterThanU cc) yes no) // cond: // result: (UGT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThanU { - break - } + for v.Op == OpARM64GreaterThanU { cc := v.Args[0] b.Kind = BlockARM64UGT b.SetControl(cc) @@ -41601,11 +40966,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterEqual cc) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqual { - break - } + for v.Op == OpARM64GreaterEqual { cc := v.Args[0] b.Kind = BlockARM64GE b.SetControl(cc) @@ -41615,11 +40976,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterEqualU cc) yes no) // cond: // result: (UGE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqualU { - break - } + for v.Op == OpARM64GreaterEqualU { cc := v.Args[0] b.Kind = BlockARM64UGE b.SetControl(cc) @@ -41629,11 +40986,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessThanF cc) yes no) // cond: // result: (FLT cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessThanF { - break - } + for v.Op == OpARM64LessThanF { cc := v.Args[0] b.Kind = BlockARM64FLT b.SetControl(cc) @@ -41643,11 +40996,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (LessEqualF cc) yes no) // cond: // result: (FLE cc yes no) - for { - v := b.Control - if v.Op != OpARM64LessEqualF { - break - } + for v.Op == OpARM64LessEqualF { cc := v.Args[0] b.Kind = BlockARM64FLE b.SetControl(cc) @@ -41657,11 +41006,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterThan cc) yes no) // cond: // result: (FGT cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterThan { - break - } + for v.Op == OpARM64GreaterThan { cc := v.Args[0] b.Kind = BlockARM64FGT b.SetControl(cc) @@ -41671,11 +41016,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (GreaterEqual cc) yes no) // cond: // result: (FGE cc yes no) - for { - v := b.Control - if v.Op != OpARM64GreaterEqual { - break - } + for v.Op == OpARM64GreaterEqual { cc := v.Args[0] b.Kind = BlockARM64FGE b.SetControl(cc) @@ -41685,11 +41026,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (ANDconst [c] x) yes no) // cond: oneBit(c) // result: (TBNZ {ntz(c)} x yes no) - for { - v := b.Control - if v.Op != OpARM64ANDconst { - break - } + for v.Op == OpARM64ANDconst { c := v.AuxInt x := v.Args[0] if !(oneBit(c)) { @@ -41703,11 +41040,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (MOVDconst [0]) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { if v.AuxInt != 0 { break } @@ -41720,11 +41053,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZ (MOVDconst [c]) yes no) // cond: c != 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(c != 0) { break @@ -41738,11 +41067,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZW (ANDconst [c] x) yes no) // cond: oneBit(int64(uint32(c))) // result: (TBNZ {ntz(int64(uint32(c)))} x yes no) - for { - v := b.Control - if v.Op != OpARM64ANDconst { - break - } + for v.Op == OpARM64ANDconst { c := v.AuxInt x := v.Args[0] if !(oneBit(int64(uint32(c)))) { @@ -41756,11 +41081,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZW (MOVDconst [c]) yes no) // cond: int32(c) == 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(int32(c) == 0) { break @@ -41774,11 +41095,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (NZW (MOVDconst [c]) yes no) // cond: int32(c) != 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(int32(c) != 0) { break @@ -41792,11 +41109,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41805,11 +41118,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41819,11 +41128,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41832,11 +41137,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41846,11 +41147,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41859,11 +41156,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGE (InvertFlags cmp) yes no) // cond: // result: (ULE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64ULE b.SetControl(cmp) @@ -41874,11 +41167,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41888,11 +41177,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (FlagLT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41902,11 +41187,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (FlagLT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41915,11 +41196,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (FlagGT_ULT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41929,11 +41206,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (FlagGT_UGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41942,11 +41215,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (UGT (InvertFlags cmp) yes no) // cond: // result: (ULT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64ULT b.SetControl(cmp) @@ -41957,11 +41226,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41970,11 +41235,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41983,11 +41244,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41997,11 +41254,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42010,11 +41263,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42024,11 +41273,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULE (InvertFlags cmp) yes no) // cond: // result: (UGE cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64UGE b.SetControl(cmp) @@ -42039,11 +41284,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagEQ { - break - } + for v.Op == OpARM64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42053,11 +41294,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (FlagLT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagLT_ULT { - break - } + for v.Op == OpARM64FlagLT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42066,11 +41303,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (FlagLT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagLT_UGT { - break - } + for v.Op == OpARM64FlagLT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42080,11 +41313,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (FlagGT_ULT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64FlagGT_ULT { - break - } + for v.Op == OpARM64FlagGT_ULT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42093,11 +41322,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (FlagGT_UGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64FlagGT_UGT { - break - } + for v.Op == OpARM64FlagGT_UGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -42107,11 +41332,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ULT (InvertFlags cmp) yes no) // cond: // result: (UGT cmp yes no) - for { - v := b.Control - if v.Op != OpARM64InvertFlags { - break - } + for v.Op == OpARM64InvertFlags { cmp := v.Args[0] b.Kind = BlockARM64UGT b.SetControl(cmp) @@ -42122,11 +41343,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (Z (ANDconst [c] x) yes no) // cond: oneBit(c) // result: (TBZ {ntz(c)} x yes no) - for { - v := b.Control - if v.Op != OpARM64ANDconst { - break - } + for v.Op == OpARM64ANDconst { c := v.AuxInt x := v.Args[0] if !(oneBit(c)) { @@ -42140,11 +41357,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (Z (MOVDconst [0]) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { if v.AuxInt != 0 { break } @@ -42156,11 +41369,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (Z (MOVDconst [c]) yes no) // cond: c != 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(c != 0) { break @@ -42175,11 +41384,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ZW (ANDconst [c] x) yes no) // cond: oneBit(int64(uint32(c))) // result: (TBZ {ntz(int64(uint32(c)))} x yes no) - for { - v := b.Control - if v.Op != OpARM64ANDconst { - break - } + for v.Op == OpARM64ANDconst { c := v.AuxInt x := v.Args[0] if !(oneBit(int64(uint32(c)))) { @@ -42193,11 +41398,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ZW (MOVDconst [c]) yes no) // cond: int32(c) == 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(int32(c) == 0) { break @@ -42210,11 +41411,7 @@ func rewriteBlockARM64(b *Block) bool { // match: (ZW (MOVDconst [c]) yes no) // cond: int32(c) != 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpARM64MOVDconst { - break - } + for v.Op == OpARM64MOVDconst { c := v.AuxInt if !(int32(c) != 0) { break diff --git a/src/cmd/compile/internal/ssa/rewriteMIPS.go b/src/cmd/compile/internal/ssa/rewriteMIPS.go index 4c11640616..b597d7c899 100644 --- a/src/cmd/compile/internal/ssa/rewriteMIPS.go +++ b/src/cmd/compile/internal/ssa/rewriteMIPS.go @@ -9317,21 +9317,16 @@ func rewriteValueMIPS_OpZeromask_0(v *Value) bool { } func rewriteBlockMIPS(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockMIPSEQ: // match: (EQ (FPFlagTrue cmp) yes no) // cond: // result: (FPF cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSFPFlagTrue { - break - } + for v.Op == OpMIPSFPFlagTrue { cmp := v.Args[0] b.Kind = BlockMIPSFPF b.SetControl(cmp) @@ -9341,11 +9336,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (FPFlagFalse cmp) yes no) // cond: // result: (FPT cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSFPFlagFalse { - break - } + for v.Op == OpMIPSFPFlagFalse { cmp := v.Args[0] b.Kind = BlockMIPSFPT b.SetControl(cmp) @@ -9355,11 +9346,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGT _ _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9376,11 +9363,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTU _ _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9397,11 +9380,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTconst _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9417,11 +9396,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTUconst _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9437,11 +9412,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTzero _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9457,11 +9428,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTUzero _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9477,11 +9444,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (SGTUconst [1] x) yes no) // cond: // result: (NE x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTUconst { - break - } + for v.Op == OpMIPSSGTUconst { if v.AuxInt != 1 { break } @@ -9494,11 +9457,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (SGTUzero x) yes no) // cond: // result: (EQ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTUzero { - break - } + for v.Op == OpMIPSSGTUzero { x := v.Args[0] b.Kind = BlockMIPSEQ b.SetControl(x) @@ -9508,11 +9467,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (SGTconst [0] x) yes no) // cond: // result: (GEZ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTconst { - break - } + for v.Op == OpMIPSSGTconst { if v.AuxInt != 0 { break } @@ -9525,11 +9480,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (SGTzero x) yes no) // cond: // result: (LEZ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTzero { - break - } + for v.Op == OpMIPSSGTzero { x := v.Args[0] b.Kind = BlockMIPSLEZ b.SetControl(x) @@ -9539,11 +9490,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (MOVWconst [0]) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { if v.AuxInt != 0 { break } @@ -9555,11 +9502,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (EQ (MOVWconst [c]) yes no) // cond: c != 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(c != 0) { break @@ -9574,11 +9517,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (GEZ (MOVWconst [c]) yes no) // cond: int32(c) >= 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) >= 0) { break @@ -9591,11 +9530,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (GEZ (MOVWconst [c]) yes no) // cond: int32(c) < 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) < 0) { break @@ -9610,11 +9545,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (GTZ (MOVWconst [c]) yes no) // cond: int32(c) > 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) > 0) { break @@ -9627,11 +9558,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (GTZ (MOVWconst [c]) yes no) // cond: int32(c) <= 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) <= 0) { break @@ -9647,8 +9574,6 @@ func rewriteBlockMIPS(b *Block) bool { // cond: // result: (NE cond yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockMIPSNE b.SetControl(cond) @@ -9659,11 +9584,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (LEZ (MOVWconst [c]) yes no) // cond: int32(c) <= 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) <= 0) { break @@ -9676,11 +9597,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (LEZ (MOVWconst [c]) yes no) // cond: int32(c) > 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) > 0) { break @@ -9695,11 +9612,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (LTZ (MOVWconst [c]) yes no) // cond: int32(c) < 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) < 0) { break @@ -9712,11 +9625,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (LTZ (MOVWconst [c]) yes no) // cond: int32(c) >= 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(int32(c) >= 0) { break @@ -9731,11 +9640,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (FPFlagTrue cmp) yes no) // cond: // result: (FPT cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSFPFlagTrue { - break - } + for v.Op == OpMIPSFPFlagTrue { cmp := v.Args[0] b.Kind = BlockMIPSFPT b.SetControl(cmp) @@ -9745,11 +9650,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (FPFlagFalse cmp) yes no) // cond: // result: (FPF cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSFPFlagFalse { - break - } + for v.Op == OpMIPSFPFlagFalse { cmp := v.Args[0] b.Kind = BlockMIPSFPF b.SetControl(cmp) @@ -9759,11 +9660,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGT _ _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9780,11 +9677,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTU _ _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9801,11 +9694,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTconst _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9821,11 +9710,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTUconst _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9841,11 +9726,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTzero _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9861,11 +9742,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTUzero _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPSXORconst { - break - } + for v.Op == OpMIPSXORconst { if v.AuxInt != 1 { break } @@ -9881,11 +9758,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (SGTUconst [1] x) yes no) // cond: // result: (EQ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTUconst { - break - } + for v.Op == OpMIPSSGTUconst { if v.AuxInt != 1 { break } @@ -9898,11 +9771,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (SGTUzero x) yes no) // cond: // result: (NE x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTUzero { - break - } + for v.Op == OpMIPSSGTUzero { x := v.Args[0] b.Kind = BlockMIPSNE b.SetControl(x) @@ -9912,11 +9781,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (SGTconst [0] x) yes no) // cond: // result: (LTZ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTconst { - break - } + for v.Op == OpMIPSSGTconst { if v.AuxInt != 0 { break } @@ -9929,11 +9794,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (SGTzero x) yes no) // cond: // result: (GTZ x yes no) - for { - v := b.Control - if v.Op != OpMIPSSGTzero { - break - } + for v.Op == OpMIPSSGTzero { x := v.Args[0] b.Kind = BlockMIPSGTZ b.SetControl(x) @@ -9943,11 +9804,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (MOVWconst [0]) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { if v.AuxInt != 0 { break } @@ -9960,11 +9817,7 @@ func rewriteBlockMIPS(b *Block) bool { // match: (NE (MOVWconst [c]) yes no) // cond: c != 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPSMOVWconst { - break - } + for v.Op == OpMIPSMOVWconst { c := v.AuxInt if !(c != 0) { break diff --git a/src/cmd/compile/internal/ssa/rewriteMIPS64.go b/src/cmd/compile/internal/ssa/rewriteMIPS64.go index d9efa99261..453b81e75f 100644 --- a/src/cmd/compile/internal/ssa/rewriteMIPS64.go +++ b/src/cmd/compile/internal/ssa/rewriteMIPS64.go @@ -10036,21 +10036,16 @@ func rewriteValueMIPS64_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockMIPS64(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockMIPS64EQ: // match: (EQ (FPFlagTrue cmp) yes no) // cond: // result: (FPF cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64FPFlagTrue { - break - } + for v.Op == OpMIPS64FPFlagTrue { cmp := v.Args[0] b.Kind = BlockMIPS64FPF b.SetControl(cmp) @@ -10060,11 +10055,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (FPFlagFalse cmp) yes no) // cond: // result: (FPT cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64FPFlagFalse { - break - } + for v.Op == OpMIPS64FPFlagFalse { cmp := v.Args[0] b.Kind = BlockMIPS64FPT b.SetControl(cmp) @@ -10074,11 +10065,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGT _ _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10095,11 +10082,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTU _ _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10116,11 +10099,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTconst _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10136,11 +10115,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (XORconst [1] cmp:(SGTUconst _)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10156,11 +10131,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (SGTUconst [1] x) yes no) // cond: // result: (NE x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTUconst { - break - } + for v.Op == OpMIPS64SGTUconst { if v.AuxInt != 1 { break } @@ -10173,11 +10144,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (SGTU x (MOVVconst [0])) yes no) // cond: // result: (EQ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTU { - break - } + for v.Op == OpMIPS64SGTU { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -10195,11 +10162,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (SGTconst [0] x) yes no) // cond: // result: (GEZ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTconst { - break - } + for v.Op == OpMIPS64SGTconst { if v.AuxInt != 0 { break } @@ -10212,11 +10175,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (SGT x (MOVVconst [0])) yes no) // cond: // result: (LEZ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGT { - break - } + for v.Op == OpMIPS64SGT { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -10234,11 +10193,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (MOVVconst [0]) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { if v.AuxInt != 0 { break } @@ -10250,11 +10205,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (EQ (MOVVconst [c]) yes no) // cond: c != 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c != 0) { break @@ -10269,11 +10220,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (GEZ (MOVVconst [c]) yes no) // cond: c >= 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c >= 0) { break @@ -10286,11 +10233,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (GEZ (MOVVconst [c]) yes no) // cond: c < 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c < 0) { break @@ -10305,11 +10248,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (GTZ (MOVVconst [c]) yes no) // cond: c > 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c > 0) { break @@ -10322,11 +10261,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (GTZ (MOVVconst [c]) yes no) // cond: c <= 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c <= 0) { break @@ -10342,8 +10277,6 @@ func rewriteBlockMIPS64(b *Block) bool { // cond: // result: (NE cond yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockMIPS64NE b.SetControl(cond) @@ -10354,11 +10287,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (LEZ (MOVVconst [c]) yes no) // cond: c <= 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c <= 0) { break @@ -10371,11 +10300,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (LEZ (MOVVconst [c]) yes no) // cond: c > 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c > 0) { break @@ -10390,11 +10315,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (LTZ (MOVVconst [c]) yes no) // cond: c < 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c < 0) { break @@ -10407,11 +10328,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (LTZ (MOVVconst [c]) yes no) // cond: c >= 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c >= 0) { break @@ -10426,11 +10343,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (FPFlagTrue cmp) yes no) // cond: // result: (FPT cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64FPFlagTrue { - break - } + for v.Op == OpMIPS64FPFlagTrue { cmp := v.Args[0] b.Kind = BlockMIPS64FPT b.SetControl(cmp) @@ -10440,11 +10353,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (FPFlagFalse cmp) yes no) // cond: // result: (FPF cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64FPFlagFalse { - break - } + for v.Op == OpMIPS64FPFlagFalse { cmp := v.Args[0] b.Kind = BlockMIPS64FPF b.SetControl(cmp) @@ -10454,11 +10363,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGT _ _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10475,11 +10380,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTU _ _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10496,11 +10397,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTconst _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10516,11 +10413,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (XORconst [1] cmp:(SGTUconst _)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpMIPS64XORconst { - break - } + for v.Op == OpMIPS64XORconst { if v.AuxInt != 1 { break } @@ -10536,11 +10429,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (SGTUconst [1] x) yes no) // cond: // result: (EQ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTUconst { - break - } + for v.Op == OpMIPS64SGTUconst { if v.AuxInt != 1 { break } @@ -10553,11 +10442,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (SGTU x (MOVVconst [0])) yes no) // cond: // result: (NE x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTU { - break - } + for v.Op == OpMIPS64SGTU { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -10575,11 +10460,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (SGTconst [0] x) yes no) // cond: // result: (LTZ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGTconst { - break - } + for v.Op == OpMIPS64SGTconst { if v.AuxInt != 0 { break } @@ -10592,11 +10473,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (SGT x (MOVVconst [0])) yes no) // cond: // result: (GTZ x yes no) - for { - v := b.Control - if v.Op != OpMIPS64SGT { - break - } + for v.Op == OpMIPS64SGT { _ = v.Args[1] x := v.Args[0] v_1 := v.Args[1] @@ -10614,11 +10491,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (MOVVconst [0]) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { if v.AuxInt != 0 { break } @@ -10631,11 +10504,7 @@ func rewriteBlockMIPS64(b *Block) bool { // match: (NE (MOVVconst [c]) yes no) // cond: c != 0 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpMIPS64MOVVconst { - break - } + for v.Op == OpMIPS64MOVVconst { c := v.AuxInt if !(c != 0) { break diff --git a/src/cmd/compile/internal/ssa/rewritePPC64.go b/src/cmd/compile/internal/ssa/rewritePPC64.go index 4c25c39707..3b1b7e2a54 100644 --- a/src/cmd/compile/internal/ssa/rewritePPC64.go +++ b/src/cmd/compile/internal/ssa/rewritePPC64.go @@ -30173,21 +30173,16 @@ func rewriteValuePPC64_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockPPC64(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockPPC64EQ: // match: (EQ (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (EQ (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30208,11 +30203,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (EQ (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -30233,11 +30224,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30246,11 +30233,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30260,11 +30243,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30274,11 +30253,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64EQ b.SetControl(cmp) @@ -30288,11 +30263,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (EQ (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30313,11 +30284,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (EQ (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -30338,11 +30305,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (EQ (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30366,11 +30329,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (EQ (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30394,11 +30353,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (EQ (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (EQ (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30423,11 +30378,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30436,11 +30387,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30450,11 +30397,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30463,11 +30406,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64LE b.SetControl(cmp) @@ -30477,11 +30416,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (GE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30502,11 +30437,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (GE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -30527,11 +30458,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GE (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30555,11 +30482,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (GE (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30583,11 +30506,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GE (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (GE (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30612,11 +30531,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30626,11 +30541,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30640,11 +30551,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30653,11 +30560,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64LT b.SetControl(cmp) @@ -30667,11 +30570,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (GT (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30692,11 +30591,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (GT (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -30717,11 +30612,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (GT (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30745,11 +30636,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (GT (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30773,11 +30660,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (GT (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (GT (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -30802,11 +30685,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (Equal cc) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpPPC64Equal { - break - } + for v.Op == OpPPC64Equal { cc := v.Args[0] b.Kind = BlockPPC64EQ b.SetControl(cc) @@ -30816,11 +30695,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (NotEqual cc) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64NotEqual { - break - } + for v.Op == OpPPC64NotEqual { cc := v.Args[0] b.Kind = BlockPPC64NE b.SetControl(cc) @@ -30830,11 +30705,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (LessThan cc) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64LessThan { - break - } + for v.Op == OpPPC64LessThan { cc := v.Args[0] b.Kind = BlockPPC64LT b.SetControl(cc) @@ -30844,11 +30715,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (LessEqual cc) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64LessEqual { - break - } + for v.Op == OpPPC64LessEqual { cc := v.Args[0] b.Kind = BlockPPC64LE b.SetControl(cc) @@ -30858,11 +30725,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (GreaterThan cc) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64GreaterThan { - break - } + for v.Op == OpPPC64GreaterThan { cc := v.Args[0] b.Kind = BlockPPC64GT b.SetControl(cc) @@ -30872,11 +30735,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (GreaterEqual cc) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64GreaterEqual { - break - } + for v.Op == OpPPC64GreaterEqual { cc := v.Args[0] b.Kind = BlockPPC64GE b.SetControl(cc) @@ -30886,11 +30745,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (FLessThan cc) yes no) // cond: // result: (FLT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64FLessThan { - break - } + for v.Op == OpPPC64FLessThan { cc := v.Args[0] b.Kind = BlockPPC64FLT b.SetControl(cc) @@ -30900,11 +30755,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (FLessEqual cc) yes no) // cond: // result: (FLE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64FLessEqual { - break - } + for v.Op == OpPPC64FLessEqual { cc := v.Args[0] b.Kind = BlockPPC64FLE b.SetControl(cc) @@ -30914,11 +30765,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (FGreaterThan cc) yes no) // cond: // result: (FGT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64FGreaterThan { - break - } + for v.Op == OpPPC64FGreaterThan { cc := v.Args[0] b.Kind = BlockPPC64FGT b.SetControl(cc) @@ -30928,11 +30775,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (If (FGreaterEqual cc) yes no) // cond: // result: (FGE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64FGreaterEqual { - break - } + for v.Op == OpPPC64FGreaterEqual { cc := v.Args[0] b.Kind = BlockPPC64FGE b.SetControl(cc) @@ -30943,8 +30786,6 @@ func rewriteBlockPPC64(b *Block) bool { // cond: // result: (NE (CMPWconst [0] cond) yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockPPC64NE v0 := b.NewValue0(v.Pos, OpPPC64CMPWconst, types.TypeFlags) @@ -30958,11 +30799,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30971,11 +30808,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30984,11 +30817,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -30998,11 +30827,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64GE b.SetControl(cmp) @@ -31012,11 +30837,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (LE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31037,11 +30858,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (LE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31062,11 +30879,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LE (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31090,11 +30903,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (LE (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31118,11 +30927,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LE (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (LE (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31147,11 +30952,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31161,11 +30962,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31174,11 +30971,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31188,11 +30981,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64GT b.SetControl(cmp) @@ -31202,11 +30991,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (LT (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31227,11 +31012,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (LT (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31252,11 +31033,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (LT (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31280,11 +31057,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (LT (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31308,11 +31081,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (LT (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (LT (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31337,11 +31106,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (Equal cc)) yes no) // cond: // result: (EQ cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31358,11 +31123,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (NotEqual cc)) yes no) // cond: // result: (NE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31379,11 +31140,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (LessThan cc)) yes no) // cond: // result: (LT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31400,11 +31157,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (LessEqual cc)) yes no) // cond: // result: (LE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31421,11 +31174,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (GreaterThan cc)) yes no) // cond: // result: (GT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31442,11 +31191,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (GreaterEqual cc)) yes no) // cond: // result: (GE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31463,11 +31208,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (FLessThan cc)) yes no) // cond: // result: (FLT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31484,11 +31225,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (FLessEqual cc)) yes no) // cond: // result: (FLE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31505,11 +31242,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (FGreaterThan cc)) yes no) // cond: // result: (FGT cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31526,11 +31259,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (FGreaterEqual cc)) yes no) // cond: // result: (FGE cc yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31547,11 +31276,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (NE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31572,11 +31297,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (NE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31597,11 +31318,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpPPC64FlagEQ { - break - } + for v.Op == OpPPC64FlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31611,11 +31328,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagLT { - break - } + for v.Op == OpPPC64FlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31624,11 +31337,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpPPC64FlagGT { - break - } + for v.Op == OpPPC64FlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -31637,11 +31346,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpPPC64InvertFlags { - break - } + for v.Op == OpPPC64InvertFlags { cmp := v.Args[0] b.Kind = BlockPPC64NE b.SetControl(cmp) @@ -31651,11 +31356,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPconst [0] (ANDconst [c] x)) yes no) // cond: // result: (NE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31676,11 +31377,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPWconst [0] (ANDconst [c] x)) yes no) // cond: // result: (NE (ANDCCconst [c] x) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPWconst { - break - } + for v.Op == OpPPC64CMPWconst { if v.AuxInt != 0 { break } @@ -31701,11 +31398,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPconst [0] z:(AND x y)) yes no) // cond: z.Uses == 1 // result: (NE (ANDCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31729,11 +31422,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPconst [0] z:(OR x y)) yes no) // cond: z.Uses == 1 // result: (NE (ORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } @@ -31757,11 +31446,7 @@ func rewriteBlockPPC64(b *Block) bool { // match: (NE (CMPconst [0] z:(XOR x y)) yes no) // cond: z.Uses == 1 // result: (NE (XORCC x y) yes no) - for { - v := b.Control - if v.Op != OpPPC64CMPconst { - break - } + for v.Op == OpPPC64CMPconst { if v.AuxInt != 0 { break } diff --git a/src/cmd/compile/internal/ssa/rewriteS390X.go b/src/cmd/compile/internal/ssa/rewriteS390X.go index 78fa5c5c96..6c45719927 100644 --- a/src/cmd/compile/internal/ssa/rewriteS390X.go +++ b/src/cmd/compile/internal/ssa/rewriteS390X.go @@ -40897,21 +40897,16 @@ func rewriteValueS390X_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockS390X(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockS390XEQ: // match: (EQ (InvertFlags cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XEQ b.SetControl(cmp) @@ -40921,11 +40916,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (EQ (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40934,11 +40925,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (EQ (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40948,11 +40935,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (EQ (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40963,11 +40946,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GE (InvertFlags cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XLE b.SetControl(cmp) @@ -40977,11 +40956,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -40990,11 +40965,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GE (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41004,11 +40975,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GE (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41018,11 +40985,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GT (InvertFlags cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XLT b.SetControl(cmp) @@ -41032,11 +40995,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41046,11 +41005,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GT (FlagLT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41060,11 +41015,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (GT (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41074,11 +41025,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDLT (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDLT { - break - } + for v.Op == OpS390XMOVDLT { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41102,11 +41049,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDLE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDLE { - break - } + for v.Op == OpS390XMOVDLE { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41130,11 +41073,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDGT (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDGT { - break - } + for v.Op == OpS390XMOVDGT { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41158,11 +41097,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDGE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDGE { - break - } + for v.Op == OpS390XMOVDGE { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41186,11 +41121,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDEQ { - break - } + for v.Op == OpS390XMOVDEQ { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41214,11 +41145,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDNE (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDNE { - break - } + for v.Op == OpS390XMOVDNE { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41242,11 +41169,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (GTF cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDGTnoinv { - break - } + for v.Op == OpS390XMOVDGTnoinv { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41270,11 +41193,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (If (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) cmp) yes no) // cond: // result: (GEF cmp yes no) - for { - v := b.Control - if v.Op != OpS390XMOVDGEnoinv { - break - } + for v.Op == OpS390XMOVDGEnoinv { cmp := v.Args[2] v_0 := v.Args[0] if v_0.Op != OpS390XMOVDconst { @@ -41299,8 +41218,6 @@ func rewriteBlockS390X(b *Block) bool { // cond: // result: (NE (CMPWconst [0] (MOVBZreg cond)) yes no) for { - v := b.Control - _ = v cond := b.Control b.Kind = BlockS390XNE v0 := b.NewValue0(v.Pos, OpS390XCMPWconst, types.TypeFlags) @@ -41316,11 +41233,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LE (InvertFlags cmp) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XGE b.SetControl(cmp) @@ -41330,11 +41243,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LE (FlagEQ) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41343,11 +41252,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LE (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41356,11 +41261,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LE (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41371,11 +41272,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LT (InvertFlags cmp) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XGT b.SetControl(cmp) @@ -41385,11 +41282,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LT (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41399,11 +41292,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LT (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41412,11 +41301,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (LT (FlagGT) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41427,11 +41312,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDLT (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (LT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41462,11 +41343,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDLE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (LE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41497,11 +41374,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDGT (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (GT cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41532,11 +41405,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDGE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (GE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41567,11 +41436,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDEQ (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (EQ cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41602,11 +41467,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDNE (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41637,11 +41498,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDGTnoinv (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (GTF cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41672,11 +41529,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (CMPWconst [0] (MOVDGEnoinv (MOVDconst [0]) (MOVDconst [1]) cmp)) yes no) // cond: // result: (GEF cmp yes no) - for { - v := b.Control - if v.Op != OpS390XCMPWconst { - break - } + for v.Op == OpS390XCMPWconst { if v.AuxInt != 0 { break } @@ -41707,11 +41560,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (InvertFlags cmp) yes no) // cond: // result: (NE cmp yes no) - for { - v := b.Control - if v.Op != OpS390XInvertFlags { - break - } + for v.Op == OpS390XInvertFlags { cmp := v.Args[0] b.Kind = BlockS390XNE b.SetControl(cmp) @@ -41721,11 +41570,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (FlagEQ) yes no) // cond: // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpS390XFlagEQ { - break - } + for v.Op == OpS390XFlagEQ { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41735,11 +41580,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (FlagLT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagLT { - break - } + for v.Op == OpS390XFlagLT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil @@ -41748,11 +41589,7 @@ func rewriteBlockS390X(b *Block) bool { // match: (NE (FlagGT) yes no) // cond: // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpS390XFlagGT { - break - } + for v.Op == OpS390XFlagGT { b.Kind = BlockFirst b.SetControl(nil) b.Aux = nil diff --git a/src/cmd/compile/internal/ssa/rewriteWasm.go b/src/cmd/compile/internal/ssa/rewriteWasm.go index c5fc8c815f..7796548ee4 100644 --- a/src/cmd/compile/internal/ssa/rewriteWasm.go +++ b/src/cmd/compile/internal/ssa/rewriteWasm.go @@ -6382,11 +6382,10 @@ func rewriteValueWasm_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockWasm(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewritedec.go b/src/cmd/compile/internal/ssa/rewritedec.go index b61886c989..fe135821eb 100644 --- a/src/cmd/compile/internal/ssa/rewritedec.go +++ b/src/cmd/compile/internal/ssa/rewritedec.go @@ -493,11 +493,10 @@ func rewriteValuedec_OpStringPtr_0(v *Value) bool { } func rewriteBlockdec(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewritedec64.go b/src/cmd/compile/internal/ssa/rewritedec64.go index 5a143a92a7..a67ae1ed52 100644 --- a/src/cmd/compile/internal/ssa/rewritedec64.go +++ b/src/cmd/compile/internal/ssa/rewritedec64.go @@ -2727,11 +2727,10 @@ func rewriteValuedec64_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockdec64(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewritedecArgs.go b/src/cmd/compile/internal/ssa/rewritedecArgs.go index 633c0fa8b5..6b811297b3 100644 --- a/src/cmd/compile/internal/ssa/rewritedecArgs.go +++ b/src/cmd/compile/internal/ssa/rewritedecArgs.go @@ -271,11 +271,10 @@ func rewriteValuedecArgs_OpArg_10(v *Value) bool { } func rewriteBlockdecArgs(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { } return false diff --git a/src/cmd/compile/internal/ssa/rewritegeneric.go b/src/cmd/compile/internal/ssa/rewritegeneric.go index 543664c8bc..7bb446cf35 100644 --- a/src/cmd/compile/internal/ssa/rewritegeneric.go +++ b/src/cmd/compile/internal/ssa/rewritegeneric.go @@ -32620,21 +32620,16 @@ func rewriteValuegeneric_OpZeroExt8to64_0(v *Value) bool { } func rewriteBlockgeneric(b *Block) bool { config := b.Func.Config - _ = config - fe := b.Func.fe - _ = fe typ := &config.Types _ = typ + v := b.Control + _ = v switch b.Kind { case BlockIf: // match: (If (Not cond) yes no) // cond: // result: (If cond no yes) - for { - v := b.Control - if v.Op != OpNot { - break - } + for v.Op == OpNot { cond := v.Args[0] b.Kind = BlockIf b.SetControl(cond) @@ -32645,11 +32640,7 @@ func rewriteBlockgeneric(b *Block) bool { // match: (If (ConstBool [c]) yes no) // cond: c == 1 // result: (First nil yes no) - for { - v := b.Control - if v.Op != OpConstBool { - break - } + for v.Op == OpConstBool { c := v.AuxInt if !(c == 1) { break @@ -32662,11 +32653,7 @@ func rewriteBlockgeneric(b *Block) bool { // match: (If (ConstBool [c]) yes no) // cond: c == 0 // result: (First nil no yes) - for { - v := b.Control - if v.Op != OpConstBool { - break - } + for v.Op == OpConstBool { c := v.AuxInt if !(c == 0) { break