This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFH: MIPS ld breaking .eh_frame data ...


Richard Sandiford wrote:
David Daney <ddaney@avtrex.com> writes:
Is is sufficient to just prevent the linker from converting to the PC relative augmentation? If so I may prepare a patch to do that.

I was responsible for the guilty linker code, so I'll volunteer to fix it. Hopefully this weekend...

Richard
Thanks Richard,

It seems that by using PC relative augmentation, the number of relocations in a shared object (in .eh_frame) is probably greatly reduced. Is this the reason for converting to PC relative addressing?

From looking at the code it looks like the FDE header is being properly relocated, all that needs to be done is to fix any DW_CFA_set_loc offsets as well and it would work.

Is this the fix you are thinking of?

If we had just kept allowing gas to emit relocations for the distance between symbols in different sections, GCC could generate the PC relative form directly and ld would not have to do any of this...

Thanks again,
David Daney




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]