mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Add encodings and mnemonics for FXSAVE64 and FXRSTOR64.
These are just FXSAVE and FXRSTOR with REX.W prefixes. These versions use 64-bit pointer values instead of 32-bit pointer values in the memory map they dump and restore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125446 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cc5bd4a561
commit
26f23100ac
@ -625,8 +625,12 @@ def FCOMPP : I<0xD9, RawFrm, (outs), (ins), "fcompp", []>, DE;
|
||||
|
||||
def FXSAVE : I<0xAE, MRM0m, (outs opaque512mem:$dst), (ins),
|
||||
"fxsave\t$dst", []>, TB;
|
||||
def FXSAVE64 : I<0xAE, MRM0m, (outs opaque512mem:$dst), (ins),
|
||||
"fxsaveq\t$dst", []>, TB, REX_W, Requires<[In64BitMode]>;
|
||||
def FXRSTOR : I<0xAE, MRM1m, (outs), (ins opaque512mem:$src),
|
||||
"fxrstor\t$src", []>, TB;
|
||||
def FXRSTOR64 : I<0xAE, MRM1m, (outs), (ins opaque512mem:$src),
|
||||
"fxrstorq\t$src", []>, TB, REX_W, Requires<[In64BitMode]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Non-Instruction Patterns
|
||||
|
@ -140,3 +140,11 @@ pshufb CPI1_0(%rip), %xmm1
|
||||
// CHECK: encoding: [0x48,0x8b,0x04,0xe1]
|
||||
movq (%rcx,%riz,8), %rax
|
||||
|
||||
// CHECK: fxsaveq (%rax)
|
||||
// CHECK: encoding: [0x48,0x0f,0xae,0x00]
|
||||
fxsaveq (%rax)
|
||||
|
||||
// CHECK: fxrstorq (%rax)
|
||||
// CHECK: encoding: [0x48,0x0f,0xae,0x08]
|
||||
fxrstorq (%rax)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user