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]
Other format: [Raw text]

Re: PPC EH failure


> On Thu, Mar 07, 2002 at 05:01:42PM +0100, Jan Hubicka wrote:
> > It is obviously incorrect to move the use
> > after EH_REGION insn and sheduler already do contain code:
> >   /* If this instruction can throw an exception, then moving it changes
> >      where block boundaries fall.  This is mighty confusing elsewhere.
> >      Therefore, prevent such an instruction from being moved.  */
> >   if (can_throw_internal (insn))
> >     reg_pending_barrier = true;
> > that does care it, but it does not hit on use as it barriers only registers,
> 
> Grr.  Ok, fix this by changing sched-rgn.c add_branch_dependences
> 
>   while (GET_CODE (insn) == CALL_INSN
>          || GET_CODE (insn) == JUMP_INSN
>          || (GET_CODE (insn) == INSN
>              && (GET_CODE (PATTERN (insn)) == USE
>                  || GET_CODE (PATTERN (insn)) == CLOBBER
> +		 || can_throw_internal (insn)

I see.  Would you mind installing the change? I am on the trip right now
with limited time for gcc...

Thanks! I expected there must be something I missed.
Honza


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