This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
(lack of) Thread-safe exceptions on AIX (gcc-2.95.1)
- To: gcc at gcc dot gnu dot org
- Subject: (lack of) Thread-safe exceptions on AIX (gcc-2.95.1)
- From: Stuart Jarriel <sjarriel at motive dot com>
- Date: Fri, 28 Jan 2000 10:17:19 -0600
From my niave reading of the libgcc2.a code it seems that AIX can only
use
setjmp/longjmp exception handling due to the lack of necessary stack
unwinding support.
If this is true, is it possible to affect the generated assembly code to
use
thread-safe registers? The stack unwind code seems to use registers r9
& r11
to walk the eh_context structure. The Power[PC] calling conventions
show those
registers to be volatile across a context switch, and I assume the same
is true
across a thread switch.
Im looking for a way to force the registers used in the exception unwind
code
to be non-volatile (rN > 16).
Any advice or suggestions?