llvm-6502/test/MC/Disassembler/X86/intel-syntax-32.txt
Craig Topper a4959f3f6e First round of fixes for the x86 fixes for the x86 move accumulator from/to memory offset instructions.
-Assembly parser now properly check the size of the memory operation specified in intel syntax. So 'mov word ptr [5], al' is no longer accepted.
-x86-32 disassembly of these instructions no longer sign extends the 32-bit address immediate based on size.
-Intel syntax printing prints the ptr size and places brackets around the address immediate.

Known remaining issues with these instructions:
-Segment override prefix is not supported. PR16962 and PR16961.
-Immediate size should be changed by address size prefix.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189201 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-25 22:23:38 +00:00

32 lines
669 B
Plaintext

# RUN: llvm-mc --disassemble %s -triple=i386 --output-asm-variant=1 | FileCheck %s
# CHECK: sgdt opaque ptr [eax]
0x0f 0x01 0x00
# CHECK: sidt opaque ptr [eax]
0x0f 0x01 0x08
# CHECK: lgdt opaque ptr [eax]
0x0f 0x01 0x10
# CHECK: lidt opaque ptr [eax]
0x0f 0x01 0x18
# CHECK: mov al, byte ptr [878082192]
0xa0 0x90 0x78 0x56 0x34
# CHECK: mov ax, word ptr [878082192]
0x66 0xa1 0x90 0x78 0x56 0x34
# CHECK: mov eax, dword ptr [878082192]
0xa1 0x90 0x78 0x56 0x34
# CHECK: mov byte ptr [878082192], al
0xa2 0x90 0x78 0x56 0x34
# CHECK: mov word ptr [878082192], ax
0x66 0xa3 0x90 0x78 0x56 0x34
# CHECK: mov dword ptr [878082192], eax
0xa3 0x90 0x78 0x56 0x34