This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Targets that don't support exception handling


Nick Burrett wrote:

> I've ported egcs to a new target, namely ARM running RISC OS. This
> operating system demands stricter conformance to the APCS (ARM 
> Procedure Call Standard) than the RISCiX/FreeBSD/Linux versions demand.
> As such, the assumptions made by egcs/gcc regarding the stack frame
> when compiling with exception handling support produces broken code.


[ Reasons why deleted ] 

> I was hoping to release a version of egcs for RISC OS users that
> provided a C++ compiler but it seems that egcs now only supports
> targets that support exception handling. I removed the exceptions
> support from libgcc and have managed to get libio compiled but 
> I've just stumbled across exceptions in libstdc++
> 
> It seems that I was obviously not paying attention when the
> transitional phase was made to support exception handling.
> Am I the only person who is trying to get a C++ port running on
> a target that doesn't currently support exception handling ?

If you have a functional setjmp/longjmp, perhaps your target should
just '#define DWARF2_UNWIND_INFO 0' to neuter the Dwarf-based stack
unwinding until you get a chance to implement the necessary voodoo
to make your target use this method.

This will make it punt back to the setjmp/longjmp (-fsjlj-exceptions)
handling.





-- 
Robert Lipe       http://www.dgii.com/people/robertl       robertl@dgii.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]