This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Targets that don't support exception handling
- To: Nick Burrett <nick dot burrett at btinternet dot com>, egcs at cygnus dot com
- Subject: Re: Targets that don't support exception handling
- From: Robert Lipe <robertl at dgii dot com>
- Date: Sun, 1 Mar 1998 22:02:18 -0600
- References: <34F8901E.4A49314D@btinternet.com>
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