Boris Boesler writes: > > Am 22.11.2007 um 17:28 schrieb Andrew Haley: > > > I'd still do what I suggested: walk the instruction list inserting > > NOPs, first based on the information from sched, and if that doesn't > > work out because stuff has moved, just count instructions to make sure > > you don't violate the constraints. > > Where is the sched info? You just told me that "someone simply stored cycle and insn (recorded in TARGET_SCHED_REORDER) in a hash-table and reused this info in TARGET_MACHINE_DEPENDENT_REORG." That info. > I'm following another approach: > I "cache" the last n insns and check with my bypass guard function > if the bypass will be ignored. If the bypass will be ignored then I > have to insert NOPs. This works basically, but there are two obstacles: > 1) in the future I have to check the scheduling across basic block > boundaries Ooh, that really is nasty; you'll need the CFG for that. > 2) the approach fails if instruction fill a branch delay slots; NOPs > are not inserted at all because I can't handle the sequence at the > moment. I suspect this is what Ian was referring to. In any case, you're well on the way now, by the sounds of it. Andrew. -- Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, UK Registered in England and Wales No. 3798903