Single Exit Loops

Is there anything within llvm that uses a transformation to create single exit loops from multiple exit loops? For example, such as Tirumalai’s paper: Parallelization of
Loops with Exits on Pipelined Architectures?

Ralf,

Ok, thanks, I’ll have a look. The paper I was referencing was http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.94.668 from '90 I believe. There is also an Intel paper the expands on this for the Itanium.

Ralf,

It basically just uses a level of predication to linearize the blocks. It also cites Allen/Kennedy’s work you reference.