summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2014-01-17 07:25:39 +0000
committerCraig Topper <craig.topper@gmail.com>2014-01-17 07:25:39 +0000
commita49c2960c635b19373cc8e3714c6b29918b8f0b5 (patch)
treed07c440276ddadd22853d3f6065cab7c6eb7e8ab
parentf0ae7d02012af9c997c62a5b1bd04e57bf85530b (diff)
downloadbcm5719-llvm-a49c2960c635b19373cc8e3714c6b29918b8f0b5.tar.gz
bcm5719-llvm-a49c2960c635b19373cc8e3714c6b29918b8f0b5.zip
Fix intel syntax for 64-bit version of FXSAVE/FXRSTOR to use '64' suffix instead of 'q'
llvm-svn: 199474
-rw-r--r--llvm/lib/Target/X86/X86InstrFPStack.td4
-rw-r--r--llvm/test/MC/X86/intel-syntax.s6
2 files changed, 8 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86InstrFPStack.td b/llvm/lib/Target/X86/X86InstrFPStack.td
index ded44eea06a..122c6d87bb1 100644
--- a/llvm/lib/Target/X86/X86InstrFPStack.td
+++ b/llvm/lib/Target/X86/X86InstrFPStack.td
@@ -622,12 +622,12 @@ def FCOMPP : I<0xD9, RawFrm, (outs), (ins), "fcompp", [], IIC_FCOMPP>, DE;
def FXSAVE : I<0xAE, MRM0m, (outs opaque512mem:$dst), (ins),
"fxsave\t$dst", [], IIC_FXSAVE>, TB;
def FXSAVE64 : I<0xAE, MRM0m, (outs opaque512mem:$dst), (ins),
- "fxsaveq\t$dst", [], IIC_FXSAVE>, TB, REX_W,
+ "fxsave{q|64}\t$dst", [], IIC_FXSAVE>, TB, REX_W,
Requires<[In64BitMode]>;
def FXRSTOR : I<0xAE, MRM1m, (outs), (ins opaque512mem:$src),
"fxrstor\t$src", [], IIC_FXRSTOR>, TB;
def FXRSTOR64 : I<0xAE, MRM1m, (outs), (ins opaque512mem:$src),
- "fxrstorq\t$src", [], IIC_FXRSTOR>, TB, REX_W,
+ "fxrstor{q|64}\t$src", [], IIC_FXRSTOR>, TB, REX_W,
Requires<[In64BitMode]>;
} // SchedRW
diff --git a/llvm/test/MC/X86/intel-syntax.s b/llvm/test/MC/X86/intel-syntax.s
index 9677da731c1..dba72b3dcd0 100644
--- a/llvm/test/MC/X86/intel-syntax.s
+++ b/llvm/test/MC/X86/intel-syntax.s
@@ -584,3 +584,9 @@ fsub ST(1)
fsubr ST(1)
fdiv ST(1)
fdivr ST(1)
+
+
+// CHECK: fxsaveq (%rax)
+// CHECK: fxrstorq (%rax)
+fxsave64 [rax]
+fxrstor64 [rax]
OpenPOWER on IntegriCloud