From 9334b07527ff08aab2eabe781a9d85f0d3748862 Mon Sep 17 00:00:00 2001 From: David Woodhouse Date: Mon, 20 Jan 2014 12:02:53 +0000 Subject: [x86] Fix disassembly of MOV16ao16 et al. The addition of IC_OPSIZE_ADSIZE in r198759 wasn't quite complete. It also turns out to have been unnecessary. The disassembler handles the AdSize prefix for itself, and doesn't care about the difference between (e.g.) MOV8ao8 and MOB8ao8_16 definitions. So just let them coexist and don't worry about it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199654 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/MC/Disassembler/X86/moffs.txt | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 test/MC/Disassembler/X86/moffs.txt (limited to 'test/MC') diff --git a/test/MC/Disassembler/X86/moffs.txt b/test/MC/Disassembler/X86/moffs.txt new file mode 100644 index 0000000000..67d64e8719 --- /dev/null +++ b/test/MC/Disassembler/X86/moffs.txt @@ -0,0 +1,86 @@ +# RUN: llvm-mc --hdis %s -triple=i686-linux-gnu-code16 | FileCheck --check-prefix=16 %s +# RUN: llvm-mc --hdis %s -triple=i686-linux-gnu | FileCheck --check-prefix=32 %s +# RUN: llvm-mc --hdis %s -triple=x86_64-linux-gnu | FileCheck --check-prefix=64 %s + +# 16: movb 0x5a5a, %al +# 32: movb 0x5a5a5a5a, %al +# 64: movabsb 0x5a5a5a5a5a5a5a5a, %al +0xa0 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movb 0x5a5a5a5a, %al +# 32: movb 0x5a5a, %al +# 64: movabsb 0x5a5a5a5a, %al +0x67 0xa0 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movw 0x5a5a, %ax +# 32: movl 0x5a5a5a5a, %eax +# 64: movabsl 0x5a5a5a5a5a5a5a5a, %eax +0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movw 0x5a5a5a5a, %ax +# 32: movl 0x5a5a, %eax +# 64: movabsl 0x5a5a5a5a, %eax +0x67 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl 0x5a5a, %eax +# 32: movw 0x5a5a5a5a, %ax +# 64: movabsw 0x5a5a5a5a5a5a5a5a, %ax +0x66 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl 0x5a5a5a5a, %eax +# 32: movw 0x5a5a, %ax +# 64: movabsw 0x5a5a5a5a, %ax +0x66 0x67 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl 0x5a5a5a5a, %eax +# 32: movw 0x5a5a, %ax +# 64: movabsw 0x5a5a5a5a, %ax +0x67 0x66 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl %es:0x5a5a5a5a, %eax +# 32: movw %es:0x5a5a, %ax +# 64: movabsw %es:0x5a5a5a5a, %ax +0x67 0x26 0x66 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + + + +# 16: movb %al, 0x5a5a +# 32: movb %al, 0x5a5a5a5a +# 64: movabsb %al, 0x5a5a5a5a5a5a5a5a +0xa2 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movb %al, 0x5a5a5a5a +# 32: movb %al, 0x5a5a +# 64: movabsb %al, 0x5a5a5a5a +0x67 0xa2 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movw %ax, 0x5a5a +# 32: movl %eax, 0x5a5a5a5a +# 64: movabsl %eax, 0x5a5a5a5a5a5a5a5a +0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movw %ax, %gs:0x5a5a5a5a +# 32: movl %eax, %gs:0x5a5a +# 64: movabsl %eax, %gs:0x5a5a5a5a +0x65 0x67 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl %eax, 0x5a5a +# 32: movw %ax, 0x5a5a5a5a +# 64: movabsw %ax, 0x5a5a5a5a5a5a5a5a +0x66 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl %eax, 0x5a5a5a5a +# 32: movw %ax, 0x5a5a +# 64: movabsw %ax, 0x5a5a5a5a +0x66 0x67 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl %eax, 0x5a5a5a5a +# 32: movw %ax, 0x5a5a +# 64: movabsw %ax, 0x5a5a5a5a +0x67 0x66 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + +# 16: movl %eax, %es:0x5a5a5a5a +# 32: movw %ax, %es:0x5a5a +# 64: movabsw %ax, %es:0x5a5a5a5a +0x67 0x26 0x66 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a + -- cgit v1.2.3