Hello all,

In the gcc port that i am currently working on delay slots are getting
filled with instructions that require a nop between them.
Say,

call fun
lw R0, R8
add R1, R0

This is an example where both the delay slots have been filled.
But 'add' instruction has a true data dependency on 'lw' instructions
and require a delay of one cycle between them. Noramlly this is done
by inserting a nop between such instructions if instruction scheduler
doesn't schedule instructions properly. Currently i am doing this in
final_prescan just like in MorphoRISC1 (mt).
But how can i handle instances like this? Should i be doing insertion
of nops in reorg pass?

Thanks for your time.

Regards,
Shafi

Reply via email to