[PATCH] Support Itanium ABI like unwinding on ARM and use it for NetBSD

Renato Golin renato.golin at linaro.org
Wed May 7 00:49:37 PDT 2014


Hi Joerg,

I suppose Darwin's SjLj doesn't use this method, right?

const MCExpr *ARMElfTargetObjectFile::getTTypeGlobalReference()

+  if (TM.getMCAsmInfo()->getExceptionHandlingType() != ExceptionHandling::ARM)

Wouldn't it be better to be inclusive (DwarfCFI only), rather than exclusive?

cheers,
--renato

On 6 May 2014 22:39, Joerg Sonnenberger <joerg at britannica.bec.de> wrote:
> On Mon, May 05, 2014 at 10:20:07PM +0200, Joerg Sonnenberger wrote:
>> as discussed with Tim, the attached patch allows using the normal
>> .eh_frame based unwinding on ARM. This trades slightly larger unwind
>> sections for much less platform specific code on the unwind side. Given
>> that compact unwind information can be incrementally added later, I want
>> to ignore EHABI for NetBSD. The patch also exposes a pre-existing bug in
>> the ARM frame lowering, where the recorded VFP offsets and the actual
>> spill slots don't agree. As that is otherwise completely unrelated to
>> this patch, I am willing to ignore that for now.
>
> Updated version with more tests for the encoding. The VFP bug was fixed
> after some debugging hints from Jim.
>
> Joerg
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>



More information about the llvm-commits mailing list