diff options
author | Kevin Enderby <enderby@apple.com> | 2010-10-21 17:16:46 +0000 |
---|---|---|
committer | Kevin Enderby <enderby@apple.com> | 2010-10-21 17:16:46 +0000 |
commit | 0b9325c97d031ab0e9a240d69a2be11ec1559e37 (patch) | |
tree | 440fc1241517f2cdc28f93746e95504affe543c2 /test/MC/X86/x86-32.s | |
parent | bf9fc53f46d5badab10ec79e1e442830206f6598 (diff) | |
download | llvm-0b9325c97d031ab0e9a240d69a2be11ec1559e37.tar.gz llvm-0b9325c97d031ab0e9a240d69a2be11ec1559e37.tar.bz2 llvm-0b9325c97d031ab0e9a240d69a2be11ec1559e37.tar.xz |
More tweaks to X86 instructions to allow the 'w' suffix in places it makes
sense, when the instruction takes the 16-bit ax register or m16 memory
location. These changes to llvm-mc matches what the darwin assembler allows
for these instructions. Also added the missing flex (without the wait prefix)
and ud2a as an alias to ud2 (still to add ud2b).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117031 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/X86/x86-32.s')
-rw-r--r-- | test/MC/X86/x86-32.s | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/test/MC/X86/x86-32.s b/test/MC/X86/x86-32.s index c474b1c589..4c59aa7890 100644 --- a/test/MC/X86/x86-32.s +++ b/test/MC/X86/x86-32.s @@ -702,3 +702,67 @@ pshufw $90, %mm4, %mm0 // CHECK: sidt 4(%eax) // CHECK: encoding: [0x0f,0x01,0x48,0x04] sidtl 4(%eax) + +// CHECK: verrw 2(%eax) +// CHECK: encoding: [0x0f,0x00,0x60,0x02] + verrw 2(%eax) + +// CHECK: verrw 2(%eax) +// CHECK: encoding: [0x0f,0x00,0x60,0x02] + verr 2(%eax) + +// CHECK: verrw %bx +// CHECK: encoding: [0x0f,0x00,0xe3] + verrw %bx + +// CHECK: verrw %bx +// CHECK: encoding: [0x0f,0x00,0xe3] + verr %bx + +// CHECK: verww 2(%eax) +// CHECK: encoding: [0x0f,0x00,0x68,0x02] + verww 2(%eax) + +// CHECK: verww 2(%eax) +// CHECK: encoding: [0x0f,0x00,0x68,0x02] + verw 2(%eax) + +// CHECK: verww %bx +// CHECK: encoding: [0x0f,0x00,0xeb] + verww %bx + +// CHECK: verww %bx +// CHECK: encoding: [0x0f,0x00,0xeb] + verw %bx + +// CHECK: fldcww 6(%ecx) +// CHECK: encoding: [0xd9,0x69,0x06] + fldcw 6(%ecx) + +// CHECK: fldcww 6(%ecx) +// CHECK: encoding: [0xd9,0x69,0x06] + fldcww 6(%ecx) + +// CHECK: fnstcww 6(%ecx) +// CHECK: encoding: [0xd9,0x79,0x06] + fnstcw 6(%ecx) + +// CHECK: fnstcww 6(%ecx) +// CHECK: encoding: [0xd9,0x79,0x06] + fnstcww 6(%ecx) + +// CHECK: wait +// CHECK: encoding: [0x9b] + fstsw %ax + +// CHECK: wait +// CHECK: encoding: [0x9b] + fstsww 0x7eed + +// CHECK: wait +// CHECK: encoding: [0x9b] + fclex + +// CHECK: ud2 +// CHECK: encoding: [0x0f,0x0b] + ud2a |