[LLVMdev] constructing 'for' statement from LLVM bitcode

Daniel Berlin dberlin at dberlin.org
Thu Aug 30 14:07:31 PDT 2007


On 8/29/07, Domagoj Babic <babic.domagoj at gmail.com> wrote:
> Seung,
>
> On 8/25/07, Chris Lattner <sabre at nondot.org> wrote:
> > Ok.  Note that LLVM can represent irreducible loops.  You can handle
> > this through code duplication.
> > -Chris
>
>
> If you are willing to invest more effort into a more complicated analysis,
> in many cases you can even avoid code duplication. See this paper for
> details:

We implemented this in GCC early on in the days of GIMPLE, and while
theoretically it removes code duplication, in practice it made the
code take significantly more space and run slower. :)

>
> @inproceedings{erosa94taming,
>   author    = {Ana M. Erosa and
>                Laurie J. Hendren},
>   title     = {Taming Control Flow: A Structured Approach to Eliminating
>                Goto Statements.},
>   booktitle = {ICCL},
>   year      = {1994},
>   pages     = {229--240},
>  }
>
> Cheers,
>
> --
>         Domagoj Babic
>
>         http://www.domagoj.info/
>         http://www.calysto.org/
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>



More information about the llvm-dev mailing list