Balaji V. Iyer wrote:
I am porting GCC 4.0.0 to a proprietary VLIW machine, and I want to insert NOPs explicitly wherever there is an Output/Flow/Anti dependencies. I am currently doing this insertion in the machine dependent reorganization phase. Is there a way to do this in machine description file (or during scheduling phase) itself (or a better way to do this)?
You could look at what the IA-64 port does. We delay the second scheduling pass until the mach dep reorg pass, and then use scheduler hooks to insert the padding nops we need. We also do bundling at the same time. This gets pretty complicated for IA-64 because of the bundling issues, but it is doable.
Otherwise, no, there is no simple way to do this other than what you are already doing.
-- Jim Wilson, GNU Tools Support, http://www.specifix.com