summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2015-02-07 23:36:36 +0000
committerCraig Topper <craig.topper@gmail.com>2015-02-07 23:36:36 +0000
commite15d286e83b2511ba060e8cbdf1216795c821040 (patch)
treeed4274ac3c4a9a4636ae602885741dd9cb8daf27
parent437265ee9625e8dbaa314ac7d1603c507bf7a21b (diff)
[X86] Add GETSEC instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228514 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrSystem.td6
-rw-r--r--test/MC/Disassembler/X86/x86-32.txt3
-rw-r--r--test/MC/X86/x86-32-coverage.s4
3 files changed, 13 insertions, 0 deletions
diff --git a/lib/Target/X86/X86InstrSystem.td b/lib/Target/X86/X86InstrSystem.td
index bbc9bdb319d..c2b593ac70b 100644
--- a/lib/Target/X86/X86InstrSystem.td
+++ b/lib/Target/X86/X86InstrSystem.td
@@ -577,3 +577,9 @@ let Defs = [EFLAGS] in {
def CLAC : I<0x01, MRM_CA, (outs), (ins), "clac", []>, TB;
def STAC : I<0x01, MRM_CB, (outs), (ins), "stac", []>, TB;
}
+
+//===----------------------------------------------------------------------===//
+// SMX Instruction
+let Uses = [RAX, RBX, RCX, RDX], Defs = [RAX, RBX, RCX] in {
+ def GETSEC : I<0x37, RawFrm, (outs), (ins), "getsec", []>, TB;
+}
diff --git a/test/MC/Disassembler/X86/x86-32.txt b/test/MC/Disassembler/X86/x86-32.txt
index 01ae7114dcb..830b8306630 100644
--- a/test/MC/Disassembler/X86/x86-32.txt
+++ b/test/MC/Disassembler/X86/x86-32.txt
@@ -761,3 +761,6 @@
0x82 0x35 0x38 0x87 0x50 0x00 0x26
# CHECK: cmpb $38, 5277496
0x82 0x3d 0x38 0x87 0x50 0x00 0x26
+
+#CHECK: getsec
+0x0f 0x37
diff --git a/test/MC/X86/x86-32-coverage.s b/test/MC/X86/x86-32-coverage.s
index 4f9066ce54e..e14031d67f1 100644
--- a/test/MC/X86/x86-32-coverage.s
+++ b/test/MC/X86/x86-32-coverage.s
@@ -10738,3 +10738,7 @@ btcq $4, (%eax)
// CHECK: xrstors 305419896
// CHECK: encoding: [0x0f,0xc7,0x1d,0x78,0x56,0x34,0x12]
xrstors 0x12345678
+
+// CHECK: getsec
+// CHECK: encoding: [0x0f,0x37]
+ getsec