>>>>> Maxim Kuvyrkov writes: Maxim> Anyway, this work is for stage 1 or 2 and for now I propose following Maxim> fix: implement targetm.sched.reorder hook so that it will ensure that if Maxim> there is an insn from the current block in the ready list, then insn Maxim> from the other block won't stand first in the line (and, therefore, Maxim> won't be chosen for schedule). I feel that this will be what you are Maxim> calling 'filling holes'. Please find an example patch attached (arm.patch).
What about all of the other GCC targets? If your patch changed the default behavior of the scheduler assumed by all other ports, you should fix the scheduler and modify the IA-64 port to get the behavior desired. David