Hello, I have a basic-block and I want to get the last jump insn of it. I use BB_END (bb) for that purpose. The instruction I get is a NOTE_INSN_PROLOGUE_END which appears right before the jump insn; and when doing NEXT_INSN for that note I get the first insn of the next bb (code_label); which means the jump insn was skipped... Investigating this behavior showed that it occurs right after calling cleanup_cfg () from cfg_layout_initialize (0) (which is been called at the beginning of the new pass I'm working on -that is placed right before pass_free_cfg) It is not clear why BB_END (bb) did not return the jump insn as expected...
Thanks, Revital ... (note 124 122 151 2 NOTE_INSN_PROLOGUE_END) (jump_insn 151 124 152 2 (set (pc) (label_ref 51)) -1 (nil))) ;; End of basic block 2 -> ( 4)))) ... (barrier 152 151 149) ;; Pred edge 4 [50.0%] (can_fallthru) (code_label 149 152 34 3 18 "" [1 uses])