This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: PR3256: Exceptions vs. delay slots
- To: gcc at gcc dot gnu dot org, mark at codesourcery dot com
- Subject: Re: PR3256: Exceptions vs. delay slots
- From: mike stump <mrs at windriver dot com>
- Date: Thu, 19 Jul 2001 16:02:15 -0700 (PDT)
> Date: Thu, 19 Jul 2001 13:19:52 -0700
> From: Mark Mitchell <mark@codesourcery.com>
> To: gcc@gcc.gnu.org
> I am thinking that we need to change our delay-slot scheduler to not
> pull instructions from beyond calls that might throw exceptions
> (i.e, calls that are not marked `nothrow' when -fexceptions is
> turned on). Obviously, you could pull instructions if they only
> affect things that will go out of scope before the `catch', etc.,
> etc., but first things first.
> Any objections?
Yes, small objection.
I could have sworn that we wanted to track lifetimes of things like i,
and if it were live on the exceptional path from the call of g, then
we'd see the conflict and not allow i into the delay slot. I think
most all the logic to do this is in the compiler already.
And it isn't just exceptions. A non-local goto that is well placed
will trip this up in the exact same way for the exact same reason.
I supose if you just wanted stop this for now, that'd be fine, but put
in a block comment that descibes the case.