diff options
author | Chris Lattner <sabre@nondot.org> | 2010-09-22 05:49:14 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-09-22 05:49:14 +0000 |
commit | 1eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2 (patch) | |
tree | ea46f1ec87dc011eea1a6f8f9f0b50826a3d825d /test/MC/AsmParser | |
parent | bc57c6db4a3a1f5df4450d8dbb100e1eb6944c28 (diff) | |
download | external_llvm-1eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2.zip external_llvm-1eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2.tar.gz external_llvm-1eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2.tar.bz2 |
Fix an inconsistency in the x86 backend that led it to reject "calll foo" on
x86-32: 32-bit calls were named "call" not "calll". 64-bit calls were correctly
named "callq", so this only impacted x86-32.
This fixes rdar://8456370 - llvm-mc rejects 'calll'
This also exposes that mingw/64 is generating a 32-bit call instead of a 64-bit call,
I will file a bugzilla.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114534 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/AsmParser')
-rw-r--r-- | test/MC/AsmParser/X86/x86_32-new-encoder.s | 4 | ||||
-rw-r--r-- | test/MC/AsmParser/X86/x86_operands.s | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/test/MC/AsmParser/X86/x86_32-new-encoder.s b/test/MC/AsmParser/X86/x86_32-new-encoder.s index e24fce2..612d1cd 100644 --- a/test/MC/AsmParser/X86/x86_32-new-encoder.s +++ b/test/MC/AsmParser/X86/x86_32-new-encoder.s @@ -561,4 +561,6 @@ lcall $0x7ace,$0x7ace jmp $0x7ace,$0x7ace ljmp $0x7ace,$0x7ace - +// rdar://8456370 +// CHECK: calll a + calll a diff --git a/test/MC/AsmParser/X86/x86_operands.s b/test/MC/AsmParser/X86/x86_operands.s index ddadf79..b34713d 100644 --- a/test/MC/AsmParser/X86/x86_operands.s +++ b/test/MC/AsmParser/X86/x86_operands.s @@ -46,11 +46,11 @@ addl $1, 1(,%ebx,(2+2)) # '*' -# CHECK: call a +# CHECK: calll a call a -# CHECK: call *%eax +# CHECK: calll *%eax call *%eax -# CHECK: call *4(%eax) +# CHECK: calll *4(%eax) call *4(%eax) # CHECK: movl %gs:8, %eax |