Preserving clobbers in scheduling
Jeff Sturm
jsturm@one-point.com
Sun Sep 2 08:43:00 GMT 2001
On Thu, 30 Aug 2001, Richard Henderson wrote:
> On Thu, Aug 30, 2001 at 01:04:00AM -0400, Jeff Sturm wrote:
> > Since SPARC uses %i0-i3 for EH return data, the above applies in this
> > case. And the clobber works as expected, if not for the scheduling pass,
> > where it is moved beyond the insns that are dependent on it.
>
> Do this right after the clobbers:
>
> /* @@@ This is a kludge. Not all machine descriptions define a blockage
> insn, but we must not allow the code we just generated to be reordered
> by scheduling. So emit an ASM_INPUT to act as blockage insn. */
> emit_insn (gen_rtx_ASM_INPUT (VOIDmode, ""));
Yes, that's what was needed. I wasn't aware of the blockage insn.
Thanks!
Jeff
More information about the Gcc
mailing list