http://llvm.org/bugs/show_bug.cgi?id=20511
Bug ID: 20511
Summary: x86 Intel assembler assembles indirect calls through
absolute memory as direct calls to that address
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Backend: X86
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected], [email protected],
[email protected], [email protected],
[email protected]
Classification: Unclassified
This is obviously broken:
$ cat t.s
.intel_syntax
foo:
call dword ptr [foo]
$ llvm-mc t.s
.text
foo:
calll foo
Both 'foo' and '[foo]' get parsed as absolute memory X86Operands, and the
pcrel32 variants of 'call' match absolute memory operands. Therefore we have
ambiguity. The gas-style assembler looks for an optional '*' token to
disambiguate.
See also http://llvm.org/PR20052.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs