[LLVMdev] Irreducible Control-Flow & Loops

Ralf Karrenberg Chareos at gmx.de
Mon Sep 28 02:28:45 PDT 2009

Hello everybody,

I just started implementing a part of my algorithm that deals with
irreducible control-flow.
Apparently, the LoopInfo analysis does not recognize loops with multiple
incoming edges (as of LLVM 2.5).
On the mailing list archives I found a few discussions related to
irreducible control-flow, but it was never mentioned if it is planned to
enhance LoopInfo to also represent such loops. It seems like people
rather implement a conversion from irreducible to reducible control-flow

I am considering writing a patch for LoopInfo instead of creating my own
data structure for irreducible loops.
Is such an enhancement desired or even already implemented by someone
(e.g. in the 2.6 branch)?

I would also appreciate any additional pointers on how to best represent
such control-flow.


More information about the llvm-dev mailing list