Re: ARM EABI version 5 and bpabi.o

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/16/2011 03:45 PM, Ian Lance Taylor wrote:
> Sebastian Huber <sebastian.huber@xxxxxxxxxxxxxxxxxx> writes:
> 
>> Thanks for the hint.  How can an assembler or C function throw an exception?
> 
> It can raise a signal, e.g., SIGFPE, and the signal handler can throw.

Yes, it is a raise() in the #ifdef L_dvmd_lnx part of
"gcc/config/arm/lib1funcs.asm".

> 
>> Does this mean that only on GNU/Linux we need this unwind stuff?
> 
> You only need it if your signal handlers can throw, or call backtrace,
> or otherwise try to unwind the stack.
> 
> Ian

The #ifdef L_dvmd_tls part uses only a RET (which is a mov or bx).  I think the
-fexceptions is superfluous for the tool chains using this part.  It looks
difficult to disable this compiler flag in this case.

-- 
Sebastian Huber, embedded brains GmbH

Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
Phone   : +49 89 18 90 80 79-6
Fax     : +49 89 18 90 80 79-9
E-Mail  : sebastian.huber@xxxxxxxxxxxxxxxxxx
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux