Hi, On Tue, 9 Jul 2019, Richard Biener wrote:
> >The basic block index is not a DFS index, so no, that's not a test for > >backedge. > > I think in CFG RTL mode the BB index designates the order of the BBs in > the object file? So this is a way to identify backwards jumps? Even if it means a backwards jump (and that's not always the case, the insns are emitted by following the NEXT_INSN links, without a CFG, and that all happens after machine-dependend reorg, and going out of cfg layout might link insn together even from high index BBs to low index BBs (e.g. because of fall-through)), that's still not a backedge in the general case. If a heuristic is enough here it might be okay, though. OTOH, as here a CFG still exists, why not simply rely on a proper DFS marking backedges? Ciao, Michael.