[llvm] [Sparc] Replace CMP instructions with InstAlias (NFCI) (PR #66859)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 25 18:20:09 PDT 2023
================
@@ -829,23 +829,14 @@ defm SUB : F3_12 <"sub" , 0b000100, sub, IntRegs, i32, simm13Op>;
let Uses = [ICC], Defs = [ICC] in
defm SUBE : F3_12 <"subxcc" , 0b011100, sube, IntRegs, i32, simm13Op>;
-let Defs = [ICC] in
+let Defs = [ICC], hasPostISelHook = true in
defm SUBCC : F3_12 <"subcc", 0b010100, subc, IntRegs, i32, simm13Op>;
let Uses = [ICC] in
defm SUBC : F3_12np <"subx", 0b001100>;
-// cmp (from Section A.3) is a specialized alias for subcc
-let Defs = [ICC], rd = 0 in {
- def CMPrr : F3_1<2, 0b010100,
- (outs), (ins IntRegs:$rs1, IntRegs:$rs2),
- "cmp $rs1, $rs2",
- [(SPcmpicc i32:$rs1, i32:$rs2)]>;
- def CMPri : F3_2<2, 0b010100,
- (outs), (ins IntRegs:$rs1, simm13Op:$simm13),
- "cmp $rs1, $simm13",
- [(SPcmpicc i32:$rs1, (i32 simm13:$simm13))]>;
-}
+def : Pat<(SPcmpicc i32:$lhs, i32:$rhs), (SUBCCri $lhs, $rhs)>;
----------------
koachan wrote:
Shouldn't this be a SUBCCrr?
https://github.com/llvm/llvm-project/pull/66859
More information about the llvm-commits
mailing list