aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/rewriteMIPS64.go
diff options
context:
space:
mode:
authorJosh Bleecher Snyder <josharian@gmail.com>2018-12-17 17:12:00 -0800
committerJosh Bleecher Snyder <josharian@gmail.com>2019-03-12 20:13:46 +0000
commit53948127d32cd8ab2d67941542122491a9cd22c9 (patch)
treeab09159366eaf449565d8fd0937e78683bc6cbf0 /src/cmd/compile/internal/ssa/rewriteMIPS64.go
parentf54b8909ac93637159e2661f25aef5e61e8cd8fc (diff)
downloadgo-53948127d32cd8ab2d67941542122491a9cd22c9.tar.gz
go-53948127d32cd8ab2d67941542122491a9cd22c9.zip
cmd/compile: make rulegen magic variable prediction more precise
The sheer length of the generated rules files makes my editor and git client unhappy. This change is a small step towards shortening them. We recognize a few magic variables during rulegen: b, config, fe, typ. Of these, only b appears prone to false positives. By tightening the heuristic and fixing one case in MIPS.rules, we can make the heuristic enough that it has no failures. That allows us to remove the hedge assignments to _, removing 3000 pointless lines of code. Change-Id: I080cde5db28c8277cb3fd9ddcd829306c9a27785 Reviewed-on: https://go-review.googlesource.com/c/go/+/166979 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/compile/internal/ssa/rewriteMIPS64.go')
-rw-r--r--src/cmd/compile/internal/ssa/rewriteMIPS64.go258
1 files changed, 0 insertions, 258 deletions
diff --git a/src/cmd/compile/internal/ssa/rewriteMIPS64.go b/src/cmd/compile/internal/ssa/rewriteMIPS64.go
index 9e12780664..c56f82f696 100644
--- a/src/cmd/compile/internal/ssa/rewriteMIPS64.go
+++ b/src/cmd/compile/internal/ssa/rewriteMIPS64.go
@@ -987,7 +987,6 @@ func rewriteValueMIPS64_OpAtomicStorePtrNoWB_0(v *Value) bool {
}
func rewriteValueMIPS64_OpAvg64u_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Avg64u <t> x y)
// cond:
// result: (ADDV (SRLVconst <t> (SUBV <t> x y) [1]) y)
@@ -1028,9 +1027,7 @@ func rewriteValueMIPS64_OpClosureCall_0(v *Value) bool {
}
func rewriteValueMIPS64_OpCom16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Com16 x)
// cond:
// result: (NOR (MOVVconst [0]) x)
@@ -1046,9 +1043,7 @@ func rewriteValueMIPS64_OpCom16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpCom32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Com32 x)
// cond:
// result: (NOR (MOVVconst [0]) x)
@@ -1064,9 +1059,7 @@ func rewriteValueMIPS64_OpCom32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpCom64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Com64 x)
// cond:
// result: (NOR (MOVVconst [0]) x)
@@ -1082,9 +1075,7 @@ func rewriteValueMIPS64_OpCom64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpCom8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Com8 x)
// cond:
// result: (NOR (MOVVconst [0]) x)
@@ -1297,9 +1288,7 @@ func rewriteValueMIPS64_OpCvt64to64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div16 x y)
// cond:
// result: (Select1 (DIVV (SignExt16to64 x) (SignExt16to64 y)))
@@ -1321,9 +1310,7 @@ func rewriteValueMIPS64_OpDiv16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv16u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div16u x y)
// cond:
// result: (Select1 (DIVVU (ZeroExt16to64 x) (ZeroExt16to64 y)))
@@ -1345,9 +1332,7 @@ func rewriteValueMIPS64_OpDiv16u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div32 x y)
// cond:
// result: (Select1 (DIVV (SignExt32to64 x) (SignExt32to64 y)))
@@ -1383,9 +1368,7 @@ func rewriteValueMIPS64_OpDiv32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv32u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div32u x y)
// cond:
// result: (Select1 (DIVVU (ZeroExt32to64 x) (ZeroExt32to64 y)))
@@ -1407,9 +1390,7 @@ func rewriteValueMIPS64_OpDiv32u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div64 x y)
// cond:
// result: (Select1 (DIVV x y))
@@ -1441,9 +1422,7 @@ func rewriteValueMIPS64_OpDiv64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv64u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div64u x y)
// cond:
// result: (Select1 (DIVVU x y))
@@ -1461,9 +1440,7 @@ func rewriteValueMIPS64_OpDiv64u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div8 x y)
// cond:
// result: (Select1 (DIVV (SignExt8to64 x) (SignExt8to64 y)))
@@ -1485,9 +1462,7 @@ func rewriteValueMIPS64_OpDiv8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpDiv8u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Div8u x y)
// cond:
// result: (Select1 (DIVVU (ZeroExt8to64 x) (ZeroExt8to64 y)))
@@ -1509,9 +1484,7 @@ func rewriteValueMIPS64_OpDiv8u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Eq16 x y)
// cond:
// result: (SGTU (MOVVconst [1]) (XOR (ZeroExt16to64 x) (ZeroExt16to64 y)))
@@ -1536,9 +1509,7 @@ func rewriteValueMIPS64_OpEq16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Eq32 x y)
// cond:
// result: (SGTU (MOVVconst [1]) (XOR (ZeroExt32to64 x) (ZeroExt32to64 y)))
@@ -1563,7 +1534,6 @@ func rewriteValueMIPS64_OpEq32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Eq32F x y)
// cond:
// result: (FPFlagTrue (CMPEQF x y))
@@ -1581,9 +1551,7 @@ func rewriteValueMIPS64_OpEq32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Eq64 x y)
// cond:
// result: (SGTU (MOVVconst [1]) (XOR x y))
@@ -1604,7 +1572,6 @@ func rewriteValueMIPS64_OpEq64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Eq64F x y)
// cond:
// result: (FPFlagTrue (CMPEQD x y))
@@ -1622,9 +1589,7 @@ func rewriteValueMIPS64_OpEq64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEq8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Eq8 x y)
// cond:
// result: (SGTU (MOVVconst [1]) (XOR (ZeroExt8to64 x) (ZeroExt8to64 y)))
@@ -1649,9 +1614,7 @@ func rewriteValueMIPS64_OpEq8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEqB_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (EqB x y)
// cond:
// result: (XOR (MOVVconst [1]) (XOR <typ.Bool> x y))
@@ -1672,9 +1635,7 @@ func rewriteValueMIPS64_OpEqB_0(v *Value) bool {
}
func rewriteValueMIPS64_OpEqPtr_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (EqPtr x y)
// cond:
// result: (SGTU (MOVVconst [1]) (XOR x y))
@@ -1695,9 +1656,7 @@ func rewriteValueMIPS64_OpEqPtr_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq16 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt16to64 y) (SignExt16to64 x)))
@@ -1722,9 +1681,7 @@ func rewriteValueMIPS64_OpGeq16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq16U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq16U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt16to64 y) (ZeroExt16to64 x)))
@@ -1749,9 +1706,7 @@ func rewriteValueMIPS64_OpGeq16U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq32 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt32to64 y) (SignExt32to64 x)))
@@ -1776,7 +1731,6 @@ func rewriteValueMIPS64_OpGeq32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Geq32F x y)
// cond:
// result: (FPFlagTrue (CMPGEF x y))
@@ -1794,9 +1748,7 @@ func rewriteValueMIPS64_OpGeq32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq32U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq32U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt32to64 y) (ZeroExt32to64 x)))
@@ -1821,9 +1773,7 @@ func rewriteValueMIPS64_OpGeq32U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq64 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT y x))
@@ -1844,7 +1794,6 @@ func rewriteValueMIPS64_OpGeq64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Geq64F x y)
// cond:
// result: (FPFlagTrue (CMPGED x y))
@@ -1862,9 +1811,7 @@ func rewriteValueMIPS64_OpGeq64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq64U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq64U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU y x))
@@ -1885,9 +1832,7 @@ func rewriteValueMIPS64_OpGeq64U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq8 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt8to64 y) (SignExt8to64 x)))
@@ -1912,9 +1857,7 @@ func rewriteValueMIPS64_OpGeq8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGeq8U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Geq8U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt8to64 y) (ZeroExt8to64 x)))
@@ -1966,9 +1909,7 @@ func rewriteValueMIPS64_OpGetClosurePtr_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater16 x y)
// cond:
// result: (SGT (SignExt16to64 x) (SignExt16to64 y))
@@ -1988,9 +1929,7 @@ func rewriteValueMIPS64_OpGreater16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater16U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater16U x y)
// cond:
// result: (SGTU (ZeroExt16to64 x) (ZeroExt16to64 y))
@@ -2010,9 +1949,7 @@ func rewriteValueMIPS64_OpGreater16U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater32 x y)
// cond:
// result: (SGT (SignExt32to64 x) (SignExt32to64 y))
@@ -2032,7 +1969,6 @@ func rewriteValueMIPS64_OpGreater32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Greater32F x y)
// cond:
// result: (FPFlagTrue (CMPGTF x y))
@@ -2050,9 +1986,7 @@ func rewriteValueMIPS64_OpGreater32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater32U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater32U x y)
// cond:
// result: (SGTU (ZeroExt32to64 x) (ZeroExt32to64 y))
@@ -2086,7 +2020,6 @@ func rewriteValueMIPS64_OpGreater64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Greater64F x y)
// cond:
// result: (FPFlagTrue (CMPGTD x y))
@@ -2118,9 +2051,7 @@ func rewriteValueMIPS64_OpGreater64U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater8 x y)
// cond:
// result: (SGT (SignExt8to64 x) (SignExt8to64 y))
@@ -2140,9 +2071,7 @@ func rewriteValueMIPS64_OpGreater8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpGreater8U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Greater8U x y)
// cond:
// result: (SGTU (ZeroExt8to64 x) (ZeroExt8to64 y))
@@ -2162,9 +2091,7 @@ func rewriteValueMIPS64_OpGreater8U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpHmul32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Hmul32 x y)
// cond:
// result: (SRAVconst (Select1 <typ.Int64> (MULV (SignExt32to64 x) (SignExt32to64 y))) [32])
@@ -2189,9 +2116,7 @@ func rewriteValueMIPS64_OpHmul32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpHmul32u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Hmul32u x y)
// cond:
// result: (SRLVconst (Select1 <typ.UInt64> (MULVU (ZeroExt32to64 x) (ZeroExt32to64 y))) [32])
@@ -2216,9 +2141,7 @@ func rewriteValueMIPS64_OpHmul32u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpHmul64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Hmul64 x y)
// cond:
// result: (Select0 (MULV x y))
@@ -2236,9 +2159,7 @@ func rewriteValueMIPS64_OpHmul64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpHmul64u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Hmul64u x y)
// cond:
// result: (Select0 (MULVU x y))
@@ -2286,9 +2207,7 @@ func rewriteValueMIPS64_OpIsInBounds_0(v *Value) bool {
}
func rewriteValueMIPS64_OpIsNonNil_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (IsNonNil ptr)
// cond:
// result: (SGTU ptr (MOVVconst [0]))
@@ -2304,9 +2223,7 @@ func rewriteValueMIPS64_OpIsNonNil_0(v *Value) bool {
}
func rewriteValueMIPS64_OpIsSliceInBounds_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (IsSliceInBounds idx len)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU idx len))
@@ -2327,9 +2244,7 @@ func rewriteValueMIPS64_OpIsSliceInBounds_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq16 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt16to64 x) (SignExt16to64 y)))
@@ -2354,9 +2269,7 @@ func rewriteValueMIPS64_OpLeq16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq16U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq16U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt16to64 x) (ZeroExt16to64 y)))
@@ -2381,9 +2294,7 @@ func rewriteValueMIPS64_OpLeq16U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq32 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt32to64 x) (SignExt32to64 y)))
@@ -2408,7 +2319,6 @@ func rewriteValueMIPS64_OpLeq32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Leq32F x y)
// cond:
// result: (FPFlagTrue (CMPGEF y x))
@@ -2426,9 +2336,7 @@ func rewriteValueMIPS64_OpLeq32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq32U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq32U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt32to64 x) (ZeroExt32to64 y)))
@@ -2453,9 +2361,7 @@ func rewriteValueMIPS64_OpLeq32U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq64 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT x y))
@@ -2476,7 +2382,6 @@ func rewriteValueMIPS64_OpLeq64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Leq64F x y)
// cond:
// result: (FPFlagTrue (CMPGED y x))
@@ -2494,9 +2399,7 @@ func rewriteValueMIPS64_OpLeq64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq64U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq64U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU x y))
@@ -2517,9 +2420,7 @@ func rewriteValueMIPS64_OpLeq64U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq8 x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGT (SignExt8to64 x) (SignExt8to64 y)))
@@ -2544,9 +2445,7 @@ func rewriteValueMIPS64_OpLeq8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLeq8U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Leq8U x y)
// cond:
// result: (XOR (MOVVconst [1]) (SGTU (ZeroExt8to64 x) (ZeroExt8to64 y)))
@@ -2571,9 +2470,7 @@ func rewriteValueMIPS64_OpLeq8U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less16 x y)
// cond:
// result: (SGT (SignExt16to64 y) (SignExt16to64 x))
@@ -2593,9 +2490,7 @@ func rewriteValueMIPS64_OpLess16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess16U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less16U x y)
// cond:
// result: (SGTU (ZeroExt16to64 y) (ZeroExt16to64 x))
@@ -2615,9 +2510,7 @@ func rewriteValueMIPS64_OpLess16U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less32 x y)
// cond:
// result: (SGT (SignExt32to64 y) (SignExt32to64 x))
@@ -2637,7 +2530,6 @@ func rewriteValueMIPS64_OpLess32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Less32F x y)
// cond:
// result: (FPFlagTrue (CMPGTF y x))
@@ -2655,9 +2547,7 @@ func rewriteValueMIPS64_OpLess32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess32U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less32U x y)
// cond:
// result: (SGTU (ZeroExt32to64 y) (ZeroExt32to64 x))
@@ -2691,7 +2581,6 @@ func rewriteValueMIPS64_OpLess64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Less64F x y)
// cond:
// result: (FPFlagTrue (CMPGTD y x))
@@ -2723,9 +2612,7 @@ func rewriteValueMIPS64_OpLess64U_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less8 x y)
// cond:
// result: (SGT (SignExt8to64 y) (SignExt8to64 x))
@@ -2745,9 +2632,7 @@ func rewriteValueMIPS64_OpLess8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLess8U_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Less8U x y)
// cond:
// result: (SGTU (ZeroExt8to64 y) (ZeroExt8to64 x))
@@ -2944,9 +2829,7 @@ func rewriteValueMIPS64_OpLocalAddr_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh16x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh16x16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SLLV <t> x (ZeroExt16to64 y)))
@@ -2977,9 +2860,7 @@ func rewriteValueMIPS64_OpLsh16x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh16x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh16x32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SLLV <t> x (ZeroExt32to64 y)))
@@ -3010,9 +2891,7 @@ func rewriteValueMIPS64_OpLsh16x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh16x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh16x64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SLLV <t> x y))
@@ -3039,9 +2918,7 @@ func rewriteValueMIPS64_OpLsh16x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh16x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh16x8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SLLV <t> x (ZeroExt8to64 y)))
@@ -3072,9 +2949,7 @@ func rewriteValueMIPS64_OpLsh16x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh32x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh32x16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SLLV <t> x (ZeroExt16to64 y)))
@@ -3105,9 +2980,7 @@ func rewriteValueMIPS64_OpLsh32x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh32x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh32x32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SLLV <t> x (ZeroExt32to64 y)))
@@ -3138,9 +3011,7 @@ func rewriteValueMIPS64_OpLsh32x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh32x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh32x64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SLLV <t> x y))
@@ -3167,9 +3038,7 @@ func rewriteValueMIPS64_OpLsh32x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh32x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh32x8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SLLV <t> x (ZeroExt8to64 y)))
@@ -3200,9 +3069,7 @@ func rewriteValueMIPS64_OpLsh32x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh64x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh64x16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SLLV <t> x (ZeroExt16to64 y)))
@@ -3233,9 +3100,7 @@ func rewriteValueMIPS64_OpLsh64x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh64x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh64x32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SLLV <t> x (ZeroExt32to64 y)))
@@ -3266,9 +3131,7 @@ func rewriteValueMIPS64_OpLsh64x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh64x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh64x64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SLLV <t> x y))
@@ -3295,9 +3158,7 @@ func rewriteValueMIPS64_OpLsh64x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh64x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh64x8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SLLV <t> x (ZeroExt8to64 y)))
@@ -3328,9 +3189,7 @@ func rewriteValueMIPS64_OpLsh64x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh8x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh8x16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SLLV <t> x (ZeroExt16to64 y)))
@@ -3361,9 +3220,7 @@ func rewriteValueMIPS64_OpLsh8x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh8x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh8x32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SLLV <t> x (ZeroExt32to64 y)))
@@ -3394,9 +3251,7 @@ func rewriteValueMIPS64_OpLsh8x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh8x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh8x64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SLLV <t> x y))
@@ -3423,9 +3278,7 @@ func rewriteValueMIPS64_OpLsh8x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpLsh8x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Lsh8x8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SLLV <t> x (ZeroExt8to64 y)))
@@ -6640,9 +6493,7 @@ func rewriteValueMIPS64_OpMIPS64XORconst_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod16 x y)
// cond:
// result: (Select0 (DIVV (SignExt16to64 x) (SignExt16to64 y)))
@@ -6664,9 +6515,7 @@ func rewriteValueMIPS64_OpMod16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod16u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod16u x y)
// cond:
// result: (Select0 (DIVVU (ZeroExt16to64 x) (ZeroExt16to64 y)))
@@ -6688,9 +6537,7 @@ func rewriteValueMIPS64_OpMod16u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod32 x y)
// cond:
// result: (Select0 (DIVV (SignExt32to64 x) (SignExt32to64 y)))
@@ -6712,9 +6559,7 @@ func rewriteValueMIPS64_OpMod32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod32u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod32u x y)
// cond:
// result: (Select0 (DIVVU (ZeroExt32to64 x) (ZeroExt32to64 y)))
@@ -6736,9 +6581,7 @@ func rewriteValueMIPS64_OpMod32u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod64 x y)
// cond:
// result: (Select0 (DIVV x y))
@@ -6756,9 +6599,7 @@ func rewriteValueMIPS64_OpMod64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod64u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod64u x y)
// cond:
// result: (Select0 (DIVVU x y))
@@ -6776,9 +6617,7 @@ func rewriteValueMIPS64_OpMod64u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod8 x y)
// cond:
// result: (Select0 (DIVV (SignExt8to64 x) (SignExt8to64 y)))
@@ -6800,9 +6639,7 @@ func rewriteValueMIPS64_OpMod8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMod8u_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mod8u x y)
// cond:
// result: (Select0 (DIVVU (ZeroExt8to64 x) (ZeroExt8to64 y)))
@@ -6824,9 +6661,7 @@ func rewriteValueMIPS64_OpMod8u_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMove_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Move [0] _ _ mem)
// cond:
// result: mem
@@ -7130,11 +6965,8 @@ func rewriteValueMIPS64_OpMove_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMove_10(v *Value) bool {
b := v.Block
- _ = b
config := b.Func.Config
- _ = config
typ := &b.Func.Config.Types
- _ = typ
// match: (Move [3] dst src mem)
// cond:
// result: (MOVBstore [2] dst (MOVBload [2] src mem) (MOVBstore [1] dst (MOVBload [1] src mem) (MOVBstore dst (MOVBload src mem) mem)))
@@ -7360,9 +7192,7 @@ func rewriteValueMIPS64_OpMove_10(v *Value) bool {
}
func rewriteValueMIPS64_OpMul16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mul16 x y)
// cond:
// result: (Select1 (MULVU x y))
@@ -7380,9 +7210,7 @@ func rewriteValueMIPS64_OpMul16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMul32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mul32 x y)
// cond:
// result: (Select1 (MULVU x y))
@@ -7414,9 +7242,7 @@ func rewriteValueMIPS64_OpMul32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMul64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mul64 x y)
// cond:
// result: (Select1 (MULVU x y))
@@ -7448,9 +7274,7 @@ func rewriteValueMIPS64_OpMul64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpMul8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Mul8 x y)
// cond:
// result: (Select1 (MULVU x y))
@@ -7534,9 +7358,7 @@ func rewriteValueMIPS64_OpNeg8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Neq16 x y)
// cond:
// result: (SGTU (XOR (ZeroExt16to32 x) (ZeroExt16to64 y)) (MOVVconst [0]))
@@ -7561,9 +7383,7 @@ func rewriteValueMIPS64_OpNeq16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Neq32 x y)
// cond:
// result: (SGTU (XOR (ZeroExt32to64 x) (ZeroExt32to64 y)) (MOVVconst [0]))
@@ -7588,7 +7408,6 @@ func rewriteValueMIPS64_OpNeq32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq32F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Neq32F x y)
// cond:
// result: (FPFlagFalse (CMPEQF x y))
@@ -7606,9 +7425,7 @@ func rewriteValueMIPS64_OpNeq32F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Neq64 x y)
// cond:
// result: (SGTU (XOR x y) (MOVVconst [0]))
@@ -7629,7 +7446,6 @@ func rewriteValueMIPS64_OpNeq64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq64F_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Neq64F x y)
// cond:
// result: (FPFlagFalse (CMPEQD x y))
@@ -7647,9 +7463,7 @@ func rewriteValueMIPS64_OpNeq64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeq8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Neq8 x y)
// cond:
// result: (SGTU (XOR (ZeroExt8to64 x) (ZeroExt8to64 y)) (MOVVconst [0]))
@@ -7688,9 +7502,7 @@ func rewriteValueMIPS64_OpNeqB_0(v *Value) bool {
}
func rewriteValueMIPS64_OpNeqPtr_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (NeqPtr x y)
// cond:
// result: (SGTU (XOR x y) (MOVVconst [0]))
@@ -7858,9 +7670,7 @@ func rewriteValueMIPS64_OpRound64F_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16Ux16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16Ux16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SRLV <t> (ZeroExt16to64 x) (ZeroExt16to64 y)))
@@ -7893,9 +7703,7 @@ func rewriteValueMIPS64_OpRsh16Ux16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16Ux32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16Ux32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SRLV <t> (ZeroExt16to64 x) (ZeroExt32to64 y)))
@@ -7928,9 +7736,7 @@ func rewriteValueMIPS64_OpRsh16Ux32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16Ux64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16Ux64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SRLV <t> (ZeroExt16to64 x) y))
@@ -7959,9 +7765,7 @@ func rewriteValueMIPS64_OpRsh16Ux64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16Ux8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16Ux8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SRLV <t> (ZeroExt16to64 x) (ZeroExt8to64 y)))
@@ -7994,9 +7798,7 @@ func rewriteValueMIPS64_OpRsh16Ux8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16x16 <t> x y)
// cond:
// result: (SRAV (SignExt16to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt16to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt16to64 y)))
@@ -8029,9 +7831,7 @@ func rewriteValueMIPS64_OpRsh16x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16x32 <t> x y)
// cond:
// result: (SRAV (SignExt16to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt32to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt32to64 y)))
@@ -8064,9 +7864,7 @@ func rewriteValueMIPS64_OpRsh16x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16x64 <t> x y)
// cond:
// result: (SRAV (SignExt16to64 x) (OR <t> (NEGV <t> (SGTU y (MOVVconst <typ.UInt64> [63]))) y))
@@ -8095,9 +7893,7 @@ func rewriteValueMIPS64_OpRsh16x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh16x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh16x8 <t> x y)
// cond:
// result: (SRAV (SignExt16to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt8to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt8to64 y)))
@@ -8130,9 +7926,7 @@ func rewriteValueMIPS64_OpRsh16x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32Ux16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32Ux16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SRLV <t> (ZeroExt32to64 x) (ZeroExt16to64 y)))
@@ -8165,9 +7959,7 @@ func rewriteValueMIPS64_OpRsh32Ux16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32Ux32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32Ux32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SRLV <t> (ZeroExt32to64 x) (ZeroExt32to64 y)))
@@ -8200,9 +7992,7 @@ func rewriteValueMIPS64_OpRsh32Ux32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32Ux64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32Ux64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SRLV <t> (ZeroExt32to64 x) y))
@@ -8231,9 +8021,7 @@ func rewriteValueMIPS64_OpRsh32Ux64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32Ux8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32Ux8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SRLV <t> (ZeroExt32to64 x) (ZeroExt8to64 y)))
@@ -8266,9 +8054,7 @@ func rewriteValueMIPS64_OpRsh32Ux8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32x16 <t> x y)
// cond:
// result: (SRAV (SignExt32to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt16to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt16to64 y)))
@@ -8301,9 +8087,7 @@ func rewriteValueMIPS64_OpRsh32x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32x32 <t> x y)
// cond:
// result: (SRAV (SignExt32to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt32to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt32to64 y)))
@@ -8336,9 +8120,7 @@ func rewriteValueMIPS64_OpRsh32x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32x64 <t> x y)
// cond:
// result: (SRAV (SignExt32to64 x) (OR <t> (NEGV <t> (SGTU y (MOVVconst <typ.UInt64> [63]))) y))
@@ -8367,9 +8149,7 @@ func rewriteValueMIPS64_OpRsh32x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh32x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh32x8 <t> x y)
// cond:
// result: (SRAV (SignExt32to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt8to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt8to64 y)))
@@ -8402,9 +8182,7 @@ func rewriteValueMIPS64_OpRsh32x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64Ux16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64Ux16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SRLV <t> x (ZeroExt16to64 y)))
@@ -8435,9 +8213,7 @@ func rewriteValueMIPS64_OpRsh64Ux16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64Ux32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64Ux32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SRLV <t> x (ZeroExt32to64 y)))
@@ -8468,9 +8244,7 @@ func rewriteValueMIPS64_OpRsh64Ux32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64Ux64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64Ux64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SRLV <t> x y))
@@ -8497,9 +8271,7 @@ func rewriteValueMIPS64_OpRsh64Ux64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64Ux8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64Ux8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SRLV <t> x (ZeroExt8to64 y)))
@@ -8530,9 +8302,7 @@ func rewriteValueMIPS64_OpRsh64Ux8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64x16 <t> x y)
// cond:
// result: (SRAV x (OR <t> (NEGV <t> (SGTU (ZeroExt16to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt16to64 y)))
@@ -8563,9 +8333,7 @@ func rewriteValueMIPS64_OpRsh64x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64x32 <t> x y)
// cond:
// result: (SRAV x (OR <t> (NEGV <t> (SGTU (ZeroExt32to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt32to64 y)))
@@ -8596,9 +8364,7 @@ func rewriteValueMIPS64_OpRsh64x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64x64 <t> x y)
// cond:
// result: (SRAV x (OR <t> (NEGV <t> (SGTU y (MOVVconst <typ.UInt64> [63]))) y))
@@ -8625,9 +8391,7 @@ func rewriteValueMIPS64_OpRsh64x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh64x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh64x8 <t> x y)
// cond:
// result: (SRAV x (OR <t> (NEGV <t> (SGTU (ZeroExt8to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt8to64 y)))
@@ -8658,9 +8422,7 @@ func rewriteValueMIPS64_OpRsh64x8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8Ux16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8Ux16 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt16to64 y))) (SRLV <t> (ZeroExt8to64 x) (ZeroExt16to64 y)))
@@ -8693,9 +8455,7 @@ func rewriteValueMIPS64_OpRsh8Ux16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8Ux32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8Ux32 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt32to64 y))) (SRLV <t> (ZeroExt8to64 x) (ZeroExt32to64 y)))
@@ -8728,9 +8488,7 @@ func rewriteValueMIPS64_OpRsh8Ux32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8Ux64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8Ux64 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) y)) (SRLV <t> (ZeroExt8to64 x) y))
@@ -8759,9 +8517,7 @@ func rewriteValueMIPS64_OpRsh8Ux64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8Ux8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8Ux8 <t> x y)
// cond:
// result: (AND (NEGV <t> (SGTU (MOVVconst <typ.UInt64> [64]) (ZeroExt8to64 y))) (SRLV <t> (ZeroExt8to64 x) (ZeroExt8to64 y)))
@@ -8794,9 +8550,7 @@ func rewriteValueMIPS64_OpRsh8Ux8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8x16_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8x16 <t> x y)
// cond:
// result: (SRAV (SignExt8to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt16to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt16to64 y)))
@@ -8829,9 +8583,7 @@ func rewriteValueMIPS64_OpRsh8x16_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8x32_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8x32 <t> x y)
// cond:
// result: (SRAV (SignExt8to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt32to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt32to64 y)))
@@ -8864,9 +8616,7 @@ func rewriteValueMIPS64_OpRsh8x32_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8x64_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8x64 <t> x y)
// cond:
// result: (SRAV (SignExt8to64 x) (OR <t> (NEGV <t> (SGTU y (MOVVconst <typ.UInt64> [63]))) y))
@@ -8895,9 +8645,7 @@ func rewriteValueMIPS64_OpRsh8x64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpRsh8x8_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Rsh8x8 <t> x y)
// cond:
// result: (SRAV (SignExt8to64 x) (OR <t> (NEGV <t> (SGTU (ZeroExt8to64 y) (MOVVconst <typ.UInt64> [63]))) (ZeroExt8to64 y)))
@@ -9578,7 +9326,6 @@ func rewriteValueMIPS64_OpSignExt8to64_0(v *Value) bool {
}
func rewriteValueMIPS64_OpSlicemask_0(v *Value) bool {
b := v.Block
- _ = b
// match: (Slicemask <t> x)
// cond:
// result: (SRAVconst (NEGV <t> x) [63])
@@ -9976,9 +9723,7 @@ func rewriteValueMIPS64_OpXor8_0(v *Value) bool {
}
func rewriteValueMIPS64_OpZero_0(v *Value) bool {
b := v.Block
- _ = b
typ := &b.Func.Config.Types
- _ = typ
// match: (Zero [0] _ mem)
// cond:
// result: mem
@@ -10251,11 +9996,8 @@ func rewriteValueMIPS64_OpZero_0(v *Value) bool {
}
func rewriteValueMIPS64_OpZero_10(v *Value) bool {
b := v.Block
- _ = b
config := b.Func.Config
- _ = config
typ := &b.Func.Config.Types
- _ = typ
// match: (Zero [3] ptr mem)
// cond:
// result: (MOVBstore [2] ptr (MOVVconst [0]) (MOVBstore [1] ptr (MOVVconst [0]) (MOVBstore [0] ptr (MOVVconst [0]) mem)))