Problem with Delayed Branch Scheduling
Ian Lance Taylor
ian@airs.com
Mon Jul 4 18:45:00 GMT 2005
Steven Bosscher <stevenb@suse.de> writes:
> So you have a few instructions bundled into a VLIW instruction, and
> one of the instructions in the bundle is moved into the delay slot,
> thus breaking your VLIW bundle. Right?
I think there are two natural approaches.
1) Do the VLIW bundling after delayed branch scheduling. The way to
do that is to the bundling in TARGET_ASM_FUNCTION_PROLOGUE. The
FRV backend does this. I've done this successfully in the past.
2) When you do the VLIW bundling, put the instructions into a
PARALLEL.
In general the gcc scheduler does not handle VLIW scheduling very
well, and it needs a fair amount of target specific help.
Ian
More information about the Gcc
mailing list