assertify unwinding runtime

Nathan Sidwell nathan@codesourcery.com
Mon Apr 25 08:26:00 GMT 2005


This patch assertifies the runtime unwinding support.

I freely admit I might have been overzealous about these checks.  One could
consider walking the unwind tables to be a case of verifying user input
-- in which case there should probably be a load more asserts -- and
we should call them something else.  I took the view that they are compiler
generated, and checking them makes almost as much sense as verifying the
assembly code itself :)

I changed unwind-pe.h to not define __gxx_abort, but rely on
its #includer to have already defined gcc_unreachable.  When included
from libgcc, that is already defined.  When included from libsupc++, we need
to create a suitable #define.  When included from libjava, we can replace
the hack there concerning std::abort with a suitable #define.

unwind-dw2-fde-glibc.c had a call of gxx_abort, but it also had a call to
plain abort.  The gxx_abort use appears to be an error.  Both are replaced
with gcc_unreachable.

booted & tested on i686-pc-linux-gnu, ok?

nathan
-- 
Nathan Sidwell    ::   http://www.codesourcery.com   ::     CodeSourcery LLC
nathan@codesourcery.com    ::     http://www.planetfall.pwp.blueyonder.co.uk

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: assert-runtime.patch
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20050425/9e1295e4/attachment.ksh>


More information about the Gcc-patches mailing list