Hazard Detection
zneda@ce.aut.ac.ir
zneda@ce.aut.ac.ir
Tue Dec 12 14:37:00 GMT 2006
Hi
I have a question: I compiled a program with gcc -mips1 ,
Compiler generate this list of instructions:
... .... ...
10b71c: 87a20018 lh v0,24(sp)
10b720: 00000000 nop
10b724: 144000b9 bnez v0,10ba0c
10b728: 0015ac03 sra s5,s5,0x10
... .... ...
but by a small change, some times in variables, (using same compiler
switches) compiler don't insert nop between load and branch and generates
this sequence of instructions:
... .... ...
10b754: 87a20018 lh v0,24(sp)
10b758: 144000b9 bnez v0,10ba40
10b75c: 0015ac03 sra s5,s5,0x10
... .... ...
would you please tell me the reason?
why doesn't compiler detect hazard always?
Thanks in advanced.
Neda Zolfaghari (zneda@aut.ac.ir)
More information about the Gcc-help
mailing list