[LLVMdev] post-link Dwarf information appears wrong, works in JIT

Bill Wendling isanbard at gmail.com
Thu Oct 17 20:47:30 PDT 2013


On Oct 17, 2013, at 7:24 PM, edA-qa mort-ora-y <eda-qa at disemia.com> wrote:

> On 17/10/13 23:57, Bill Wendling wrote:
>> There shouldn't be any special linker flags you need to use. If
>> you're getting segfaults, it's probably trying to access the data at
>> an invalid location or something. Make sure that your EH table is
>> properly aligned. You might want to hand calculate the values to make
>> sure that they're correct. What platform are you using?
> 
> I don't know that I do anything to alter the alignment: I'm just using
> the "addClause" function of the landingpad. Platform is x86_64 on Linux.
> Note that in the JIT my code does work, so my assumption is that I
> haven't done something completely wrong, just partially wrong.
> 
> I'm looking at code generated by clang from C++, and I notice a few
> differences. Are these relevant?
> - the clauses are always cast to i8* (I'm using an i64* as that is my
> type information)

I forget, but it may be relevant. Try changing it and see if it helps.

> - the global variable is marked linkonce_odr unnamed_addr
> 
I don't think that that would affect anything. What's the ASM look like between the JIT and the .s file?

-bw





More information about the llvm-dev mailing list