summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86InstrSystem.td
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-10-05 06:22:35 +0000
committerChris Lattner <sabre@nondot.org>2010-10-05 06:22:35 +0000
commitc184a57e980cc3b7f5c887fe3c104632087953e3 (patch)
treecc5bc103c4000e572a0b906d7b27dc15a560278b /llvm/lib/Target/X86/X86InstrSystem.td
parentc793f8bca66ce5960a314b00be7639ddc7891259 (diff)
downloadbcm5719-llvm-c184a57e980cc3b7f5c887fe3c104632087953e3.tar.gz
bcm5719-llvm-c184a57e980cc3b7f5c887fe3c104632087953e3.zip
move the atomic pseudo instructions out to X86InstrCompiler.td
llvm-svn: 115599
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrSystem.td')
-rw-r--r--llvm/lib/Target/X86/X86InstrSystem.td8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSystem.td b/llvm/lib/Target/X86/X86InstrSystem.td
index 68f348ae239..2d27209f5fa 100644
--- a/llvm/lib/Target/X86/X86InstrSystem.td
+++ b/llvm/lib/Target/X86/X86InstrSystem.td
@@ -331,6 +331,14 @@ def SLDT16m : I<0x00, MRM0m, (outs i16mem:$dst), (ins),
"sldt{w}\t$dst", []>, TB;
def SLDT32r : I<0x00, MRM0r, (outs GR32:$dst), (ins),
"sldt{l}\t$dst", []>, TB;
+
+// LLDT is not interpreted specially in 64-bit mode because there is no sign
+// extension.
+def SLDT64r : RI<0x00, MRM0r, (outs GR64:$dst), (ins),
+ "sldt{q}\t$dst", []>, TB;
+def SLDT64m : RI<0x00, MRM0m, (outs i16mem:$dst), (ins),
+ "sldt{q}\t$dst", []>, TB;
+
def LGDTm : I<0x01, MRM2m, (outs), (ins opaque48mem:$src),
"lgdt\t$src", []>, TB;
def LIDTm : I<0x01, MRM3m, (outs), (ins opaque48mem:$src),
OpenPOWER on IntegriCloud