[llvm-commits] First draft of ARM EHABI support

Anton Korobeynikov anton at korobeynikov.info
Tue Jan 25 09:41:41 PST 2011


> +    enum ExceptionsType { None, DwarfTable, DwarfCFI, SjLj, ARM };
> Just a matter of preference, but can we call this EHABI rather than ARM? ;)
Yes, I also thought about this. The problem is the following: do you
know any other target which support EABI exceptions?
Unwinding stuff looks pretty much ARM-specific.

> But when using short and long ARM personalities, some relocations will
> be needed in there...
Well, maybe. As soon as there will be some example when this will matter.

> I'd suggest to change the class name to Exception?, extract
> SjLjException from it and make sure the action table construction and
> other appropriate bits are actually shared among all implementations.
Yes, right now DwarfException emits EH tables which are suitable for
g++ personality function. So, probably we'll need to have generic "eh
information emitter" which would know how to emit data for different
personalities and unwinding mechanisms. As for factoring out sjlj -
I'm not yet sure, too much duplication, etc.

-- 
With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University




More information about the llvm-commits mailing list