Kunal Parmar wrote:
Following is the debugging dump by the scheduler -
**************************************
;; ======================================================
;; -- basic block 1 from 17 to 89 -- after reload
;; ======================================================
;; --------------- forward dependences: ------------
;; --- Region Dependences --- b 1 bb 0
;; insn code bb dep prio cost reservation
;; ---- ---- -- --- ---- ---- -----------
;; 17 5 0 0 1 1 S1 :
;; 18 5 0 0 1 1 S2 :
;; 90 67 0 0 8 1 S2 : 89 91
;; 91 66 0 1 7 1 S2 : 89
;; 89 100 0 2 6 6 S2 :
As can be seen in the assembly dump, one instruction is scheduled
after the branch instruction. The branch is a conditionally executed
branch instruction. This is incorrect because if the branch is
executed then the instruction after that will not be executed.
Please help.
There is no dependency between insn 18 and 89 (the jump). The scheduler
automatically adds anti-dependencies between jump and previous sets. So
I think you jump insn is not represented as RTL JUMP_INSN. The RTL
dump after the scheduler could help more.
Vlad