Add support for the setp instructions
authorChris Lattner <sabre@nondot.org>
Fri, 11 Jun 2004 04:30:06 +0000 (04:30 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 11 Jun 2004 04:30:06 +0000 (04:30 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14140 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrInfo.td
lib/Target/X86/X86RegisterInfo.cpp

index 7ffb889df39c9453408dc125df758de5a6bb5844..e8888d6b500472f86a6fe8ff092ac0f2cb16e37d 100644 (file)
@@ -662,6 +662,8 @@ def SETSr    : I  <"sets" , 0x98, MRM0r>, TB;            // R8 = <sign bit>
 def SETSm    : Im8<"sets" , 0x98, MRM0m>, TB;            // [mem8] = <sign bit>
 def SETNSr   : I  <"setns", 0x99, MRM0r>, TB;            // R8 = !<sign bit>
 def SETNSm   : Im8<"setns", 0x99, MRM0m>, TB;            // [mem8] = !<sign bit>
+def SETPr    : I  <"setp" , 0x9A, MRM0r>, TB;            // R8 = parity
+def SETPm    : Im8<"setp" , 0x9A, MRM0m>, TB;            // [mem8] = parity
 def SETLr    : I  <"setl" , 0x9C, MRM0r>, TB;            // R8 = <  signed
 def SETLm    : Im8<"setl" , 0x9C, MRM0m>, TB;            // [mem8] = <  signed
 def SETGEr   : I  <"setge", 0x9D, MRM0r>, TB;            // R8 = >= signed
index 852b7103e0eccae449e101b64180c357a88ce024..02d9fc5d17f684ece05d6e9264d7297fcf4e4a25 100644 (file)
@@ -236,6 +236,7 @@ MachineInstr* X86RegisterInfo::foldMemoryOperand(MachineInstr* MI,
     case X86::SETAr:     return MakeMInst( X86::SETAm,   FrameIndex, MI);
     case X86::SETSr:     return MakeMInst( X86::SETSm,   FrameIndex, MI);
     case X86::SETNSr:    return MakeMInst( X86::SETNSm,  FrameIndex, MI);
+    case X86::SETPr:     return MakeMInst( X86::SETPm,   FrameIndex, MI);
     case X86::SETLr:     return MakeMInst( X86::SETLm,   FrameIndex, MI);
     case X86::SETGEr:    return MakeMInst( X86::SETGEm,  FrameIndex, MI);
     case X86::SETLEr:    return MakeMInst( X86::SETLEm,  FrameIndex, MI);