summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2018-04-29 04:50:53 +0000
committerCraig Topper <craig.topper@intel.com>2018-04-29 04:50:53 +0000
commitebd3e4a69cb52af96ec9529a35536b2cd0657298 (patch)
tree422900e87561c029f7c9740687fbba67cfcce9df /llvm/lib/Target
parent8e3dbfd725eb8283deaf27cccff0993d09bbb99d (diff)
downloadbcm5719-llvm-ebd3e4a69cb52af96ec9529a35536b2cd0657298.tar.gz
bcm5719-llvm-ebd3e4a69cb52af96ec9529a35536b2cd0657298.zip
[X86] Remove SLDT64m instruction.
It doesn't really exist. The instruction always writes 16-bits of memory. Putting a REX.w on it won't change anything. While I was touching the encoding tests to remove it, I added some other missing register form test cases. llvm-svn: 331135
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/X86/X86InstrSystem.td3
-rwxr-xr-xllvm/lib/Target/X86/X86SchedBroadwell.td1
-rw-r--r--llvm/lib/Target/X86/X86SchedHaswell.td1
-rw-r--r--llvm/lib/Target/X86/X86SchedSkylakeClient.td1
-rwxr-xr-xllvm/lib/Target/X86/X86SchedSkylakeServer.td1
5 files changed, 0 insertions, 7 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSystem.td b/llvm/lib/Target/X86/X86InstrSystem.td
index 3e9c264a693..190f2958876 100644
--- a/llvm/lib/Target/X86/X86InstrSystem.td
+++ b/llvm/lib/Target/X86/X86InstrSystem.td
@@ -382,9 +382,6 @@ def SLDT32r : I<0x00, MRM0r, (outs GR32:$dst), (ins),
// extension.
def SLDT64r : RI<0x00, MRM0r, (outs GR64:$dst), (ins),
"sldt{q}\t$dst", []>, TB, Requires<[In64BitMode]>;
-let mayStore = 1 in
-def SLDT64m : RI<0x00, MRM0m, (outs), (ins i16mem:$dst),
- "sldt{q}\t$dst", []>, TB, Requires<[In64BitMode]>;
def LGDT16m : I<0x01, MRM2m, (outs), (ins opaque48mem:$src),
"lgdt{w}\t$src", []>, TB, OpSize16, Requires<[Not64BitMode]>;
diff --git a/llvm/lib/Target/X86/X86SchedBroadwell.td b/llvm/lib/Target/X86/X86SchedBroadwell.td
index c07d68f8c94..9ae398141fb 100755
--- a/llvm/lib/Target/X86/X86SchedBroadwell.td
+++ b/llvm/lib/Target/X86/X86SchedBroadwell.td
@@ -455,7 +455,6 @@ def: InstRW<[BWWriteResGroup9], (instregex "LAHF", // TODO: This doesnt match Ag
"SAHF", // TODO: This doesn't match Agner's data
"SGDT64m",
"SIDT64m",
- "SLDT64m",
"SMSW16m",
"STRm",
"SYSCALL")>;
diff --git a/llvm/lib/Target/X86/X86SchedHaswell.td b/llvm/lib/Target/X86/X86SchedHaswell.td
index 3066dbb22c3..964e2b1c7e0 100644
--- a/llvm/lib/Target/X86/X86SchedHaswell.td
+++ b/llvm/lib/Target/X86/X86SchedHaswell.td
@@ -786,7 +786,6 @@ def: InstRW<[HWWriteResGroup10], (instregex "CLC",
"NOOP",
"SGDT64m",
"SIDT64m",
- "SLDT64m",
"SMSW16m",
"STC",
"STRm",
diff --git a/llvm/lib/Target/X86/X86SchedSkylakeClient.td b/llvm/lib/Target/X86/X86SchedSkylakeClient.td
index c52d147655d..e6608bc627b 100644
--- a/llvm/lib/Target/X86/X86SchedSkylakeClient.td
+++ b/llvm/lib/Target/X86/X86SchedSkylakeClient.td
@@ -539,7 +539,6 @@ def: InstRW<[SKLWriteResGroup10], (instregex "CLC",
"SAHF", // TODO: This doesn't match Agner's data
"SGDT64m",
"SIDT64m",
- "SLDT64m",
"SMSW16m",
"STC",
"STRm",
diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
index 22f038292d7..00250676c04 100755
--- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td
+++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
@@ -908,7 +908,6 @@ def: InstRW<[SKXWriteResGroup10], (instregex "CLC",
"SAHF", // TODO: This doesn't match Agner's data
"SGDT64m",
"SIDT64m",
- "SLDT64m",
"SMSW16m",
"STC",
"STRm",
OpenPOWER on IntegriCloud