This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC 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: LSDA and PIC compilation, getting the wrong pointer


On 18/10/13 22:14, Ian Lance Taylor wrote:
> Or, are you sure that you are handling the LSDA encoding correctly?
> If you are seeing DW_EH_PE_absptr then you should see an address
> there.  But if the LSDA encoding is DW_EH_PE_textrel then you need to
> add in the text segment offset yourself.

This wasn't the exact problem but gave me the nudge in the right
direction. I discovered that the code extracting the type table entries
was not actually processing them as pointers, thus not applying
offsetting/indirection (though it wasn't a textrel, rather a pcrel and
indirect encoding). It seems that it works in a static and JIT
environment since the addresses are absolute. It looks like the linker
makes them absolute since the assembly file shows the same data for both
static and PIC.

Thank you.

-- 
edA-qa mort-ora-y
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Sign: Please digitally sign your emails.
Encrypt: I'm also happy to receive encrypted mail.

Attachment: signature.asc
Description: OpenPGP digital signature


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