http://llvm.org/bugs/show_bug.cgi?id=10568
Summary: [MC] x86_64 and relocations with large addend
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Consider the following input:
L: movq $(L + 2147483648),%rax
This triggers the 32bit signed integer assertion in ELFObjectWriter.cpp, line
1627.
gas produces:
000000000003 00010000000b R_X86_64_32S 0000000000000000 .text + 80000000
as relocation, which makes sense. R_X86_64_32S is the largest width supported
as immediate by mov. The addend is a 64bit signed quantity and only the sum of
real location of L and addend have to fit into 32bit.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- 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