ia64 eh, part 20d [libjava]

Tom Tromey tromey@redhat.com
Fri Mar 30 18:19:00 GMT 2001

>>>>> "Richard" == Richard Henderson <rth@redhat.com> writes:

Richard> 	* libgcj.spec.in (jc1): Remove EXCEPTIONSPEC.

This should mention removal of -fasynchronous-exceptions.  But is that
removal actually correct?  Maybe we should use -fnon-call-exceptions?
(Or maybe you added it directly to the compiler?  I didn't read the
gcj patches.)

Richard> !       EH_COMMON_INCLUDE='-I$(top_srcdir)/../compat-include'
Richard> !       GCC_UNWIND_INCLUDE='-I$(top_srcdir)/../compat-include'

Could you change this to remove the compat-include case?
We only needed that when libgcj could be built in a separate tree from
gcc.  I don't see any need to continue to support that.

Maybe simply adding the -I$(top_srcdir)/../gcc/ is best?

Richard> !   /* FIXME: If code == _URC_END_OF_STACK, then we reached top of
Richard> !      stack without finding a handler for the exception.  I seem to
Richard> !      recall that Java has specific rules to handle this. 

This is a "can't happen" for Java.  The Java code for each thread is
run in a try/catch.  This catches any otherwise uncaught Java throw
and forwards the exception to the ThreadGroup.  See

I think abort() here is reasonable.  You can remove the FIXME.

I don't understand most of the patch.  Overall it seems reasonable to
me, but Andrew is really the EH expert.


More information about the Java-patches mailing list