I got my stack flip stuff working but it does not completely solve my
problem. I put a catch in the function that flips the stack and it
does a rethrow after restoring the stack to its normal place. The
problem is that even with all of my stack almost gone, the exception
code still chews up too much stack and dies. As I mentioned before,
one routine, I believe it was _Unwind_RaiseException gobbles up 5600
bytes of stack by itself. The next routine down chews up another
2K. I have only 8K total to play with.
So, assuming I can write a personality routine (which looks like a
rather big assumption), is there a way to get it into the exception
tables?
On a different tact, I'm using gcc 4.0.2. Has the exception handling
routines been rewritten to consume less stack since 4.0.2? I thought
perhaps, since calls are being made to allocate space in the heap
anyway, that the variables allocated on the stack could instead be
allocated in the heap as well.
Thanks for your help,
Perry Smith ( pedz@xxxxxxxxxxxxxxxx )
Ease Software, Inc. ( http://www.easesoftware.com )
Low cost SATA Disk Systems for IBMs p5, pSeries, and RS/6000 AIX systems