Use sltiu instead of sltu when a register operand and immediate are compared.
authorAkira Hatanaka <ahatanaka@mips.com>
Tue, 11 Oct 2011 20:44:43 +0000 (20:44 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Tue, 11 Oct 2011 20:44:43 +0000 (20:44 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141708 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsInstrInfo.td

index 8c8bc76e4b5c8842d8a5cc488f9b9dd10f3c8b95..495b969ddccf2bcd4ce97d6a788c5d5ecc501159 100644 (file)
@@ -242,7 +242,7 @@ defm : BrcondPats<CPU64Regs, BEQ64, BNE64, SLT64, SLTu64, SLTi64, SLTiu64,
 
 // setcc patterns
 def : Pat<(seteq CPU64Regs:$lhs, CPU64Regs:$rhs),
-          (SLTu64 (DXOR CPU64Regs:$lhs, CPU64Regs:$rhs), 1)>;
+          (SLTiu64 (DXOR CPU64Regs:$lhs, CPU64Regs:$rhs), 1)>;
 def : Pat<(setne CPU64Regs:$lhs, CPU64Regs:$rhs),
           (SLTu64 ZERO_64, (DXOR CPU64Regs:$lhs, CPU64Regs:$rhs))>;
 
index 9b07082a422c1f9cd3d9a0542eb4ad50815fad36..2c1893044b01abcecaaa86d5a0bf9e1f0af5d78a 100644 (file)
@@ -954,7 +954,7 @@ defm : MovnPats<CPURegs, MOVN_I>;
 
 // setcc patterns
 def : Pat<(seteq CPURegs:$lhs, CPURegs:$rhs),
-          (SLTu (XOR CPURegs:$lhs, CPURegs:$rhs), 1)>;
+          (SLTiu (XOR CPURegs:$lhs, CPURegs:$rhs), 1)>;
 def : Pat<(setne CPURegs:$lhs, CPURegs:$rhs),
           (SLTu ZERO, (XOR CPURegs:$lhs, CPURegs:$rhs))>;