https://sourceware.org/bugzilla/show_bug.cgi?id=16345
--- Comment #3 from Alexey Neyman <stilor at att dot net> --- Well, we've been using partial linking to isolate module interfaces. One of the modules is CPU support - which includes the start-up code for the kernel. Naturally, this start up code was put into the .init section. Our code in .init does not have .eh_frame contributions, but the mere presence of the .init section in the object file already makes `ld -r` output unsorted relocations. You can see that by substituting qq2.s in the test case with: .section .init,"ax",@progbits /* empty .init section */ .text .globl baz baz: .cfi_startproc; ret; .cfi_endproc Now, it is probably possible for us to rename the .init section to, say, .text.startup - but are there any guarantees that `ld -r` is not going to mess up the output relocations in that case? Also, the quote from LSB talks about semantical differences between .text and .init. Is there any technical reason not to allow `ld -r` on files with .init? Perhaps, it would be better to accept such files with unordered relocations on input and/or order the relocations on output? -- 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