http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54369

--- Comment #8 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-09-01 
09:21:19 UTC ---
> Looks good, thanks.  Please go ahead.

Thanks.  On which branch(es)?

> But how does SPARC do it?  sparc_reorg starts:
> 
>   /* The only erratum we handle for now is that of the AT697F processor.  */
>   if (!sparc_fix_at697f)
>     return;
> 
>   /* We need to have the (essentially) final form of the insn stream in order
>      to properly detect the various hazards.  Run delay slot scheduling.  */
>   if (optimize > 0 && flag_delayed_branch)
>     dbr_schedule (get_insns ());
> 
> without any explicit call to cleanup_barriers (which like you say usually
> runs after machine_reorg but before delay_slots).

Gosh.  I didn't remember that sparc_reorg existed...  I was referring to the
regular pass pipeline, which is almost always used for SPARC.  So I found the
bug in the MIPS port and you found it in the SPARC port.  Time to swap? ;-)

Reply via email to