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: Code motion around labels


<<Because that's a significant amount of work, which shouldn't be on the
critical path.
>>

Also this work raises all sorts of technical issues. for example, the Ada
implementation of zero cost exceptions on the x86 does not require external
tables, so we have to look carefully at the (rather considerable) cost
of going to the use of unwind tables on this target.

Another issue is compatibility with unwinding of third party library
stuff (this has particularly been an issue on HPUX).

Another issue is that the existing scheme does not quite handle Ada semantics
completely, and yes, of course the right thing is to modify it so that it
does, being careful not to discombobulate g++.

Another issue is that we urgently need zero cost exceptions on targets for
which gcc does not provide them. What we would like to do here is to enhance
gcc so that it does provide them, but that's also not zero work.

Historically, we had to zoom ahead and implement exceptions before the
gcc scheme got completed, so that's how the divergence occurred. Of course
it is on our list of important goals to reintegrate. Indeed what we want to
do in the long run is make Ada and C++ have interoperable exceptions (we 
also need to accomodate the VMS notion of exportable exceptions).

So there is a lot of important work there, but it is not urgent and it
is better to do it right, rather than put it on the critical path and
be forced to kludge things.


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