https://sourceware.org/bugzilla/show_bug.cgi?id=20127
Bug ID: 20127 Summary: Addend not preserved for many X86 relocations Product: binutils Version: 2.25 Status: UNCONFIRMED Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: louis.granboulan.developer at gmail dot com Target Milestone: --- Input is a.s .globl main .text main: movl $E, %eax movl $E+1, %eax movl $E@PLT, %eax movl $E@PLT+1, %eax movl $E@tlsgd, %eax movl $E@tlsgd+1, %eax movl $E@tlsldm, %eax movl $E@tlsldm+1, %eax movl $E@indntpoff, %eax movl $E@indntpoff+1, %eax movl $E@gotntpoff, %eax movl $E@gotntpoff+1, %eax movl $E@gottpoff, %eax movl $E@gottpoff+1, %eax Assembled with "as -32 -o a.o a.s" Analyzed with "objdump -dr a.o" a.o: file format elf32-i386 Disassembly of section .text: 00000000 <main>: 0: b8 00 00 00 00 mov $0x0,%eax 1: R_386_32 E 5: b8 01 00 00 00 mov $0x1,%eax 6: R_386_32 E a: b8 fc ff ff ff mov $0xfffffffc,%eax b: R_386_PLT32 E f: b8 fc ff ff ff mov $0xfffffffc,%eax 10: R_386_PLT32 E 14: b8 00 00 00 00 mov $0x0,%eax 15: R_386_TLS_GD E 19: b8 00 00 00 00 mov $0x0,%eax 1a: R_386_TLS_GD E 1e: b8 00 00 00 00 mov $0x0,%eax 1f: R_386_TLS_LDM E 23: b8 00 00 00 00 mov $0x0,%eax 24: R_386_TLS_LDM E 28: b8 00 00 00 00 mov $0x0,%eax 29: R_386_TLS_IE E 2d: b8 00 00 00 00 mov $0x0,%eax 2e: R_386_TLS_IE E 32: b8 00 00 00 00 mov $0x0,%eax 33: R_386_TLS_GOTIE E 37: b8 00 00 00 00 mov $0x0,%eax 38: R_386_TLS_GOTIE E 3c: b8 00 00 00 00 mov $0x0,%eax 3d: R_386_TLS_IE_32 E 41: b8 00 00 00 00 mov $0x0,%eax 42: R_386_TLS_IE_32 E The error is in every other line. For the R_386_PLT32 relocation with addend, I would have expected "b8 fd ff ff ff". For the other ones, I would have expected "b8 01 00 00 00". There might be other relocations with this issue; I don't know all the relocation types. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils