diff options
author | Chris Lattner <sabre@nondot.org> | 2004-06-11 04:30:06 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-06-11 04:30:06 +0000 |
commit | a0cfedef3a266c0ad807f815dfadbb677c5bb4c0 (patch) | |
tree | bb73d8d404a87e7c5e2e7afd1f4f578e11cd97e1 | |
parent | 94ff2c3210e9509645a8252094eb64c6fdcaa108 (diff) | |
download | bcm5719-llvm-a0cfedef3a266c0ad807f815dfadbb677c5bb4c0.tar.gz bcm5719-llvm-a0cfedef3a266c0ad807f815dfadbb677c5bb4c0.zip |
Add support for the setp instructions
llvm-svn: 14140
-rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.td | 2 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86RegisterInfo.cpp | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td index 7ffb889df39..e8888d6b500 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.td +++ b/llvm/lib/Target/X86/X86InstrInfo.td @@ -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 diff --git a/llvm/lib/Target/X86/X86RegisterInfo.cpp b/llvm/lib/Target/X86/X86RegisterInfo.cpp index 852b7103e0e..02d9fc5d17f 100644 --- a/llvm/lib/Target/X86/X86RegisterInfo.cpp +++ b/llvm/lib/Target/X86/X86RegisterInfo.cpp @@ -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); |