[LLVMdev] GSoC 2012 Ideas - Alias Analysis

John Criswell criswell at illinois.edu
Mon Apr 2 08:59:55 PDT 2012


On 3/30/12 7:07 PM, Douglas do Couto Teixeira wrote:
> Hi guys,
>
> I'm an undergraduate computer science student and I've been working
> with pointer analysis this semester under the orientation of professor
> Calvin Lin, at The University of Texas at Austin. I'm interested on
> helping to develop LLVM's alias analysis infrastructure. I have two
> ideas for a possible proposal and I'd like to know if you have
> interest on any of them.
>
> My first idea is to improve LLVM's existing alias analysis
> infrastructure. I saw on the open projects page that there are a
> couple of things that need to be done on LLVM's Pointer and Alias
> Analysis[1]. However, some things seem to be solved
> (http://llvm.org/PR1604 and http://llvm.org/PR452) and it made me a
> little confused because I don't know exactly what should be addressed
> by a possible proposal.
>
> My second idea is to implement a pointer analysis algorithm in LLVM
> using Value Flow Graph, as described by the paper "Boosting the
> Performance of Flow-sensitive Points-to Analysis using Value Flow"[2].
>
> Thus, I'd like to know whether or not you think improving LLVM's alias
> analysis infrastructure using one of those two suggestions would be a
> reasonable thing to do as a GSoC.

If you want to work on points-to analysis, then you need to have some 
feature which will benefit from using that points-to analysis.  Example 
applications of points-to analysis would be optimization and static 
backwards slicing.

If you write a proposal to work on points-to analysis, then I recommend 
that your proposal also include work on code that will use that 
points-to analysis.  For example, you could implement a points-to 
analysis and then add an AliasAnalysis interface to it so that LLVM 
optimizations can use it without modification.  Alternatively, you could 
implement some new optimization that uses the points-to results from 
your analysis directly.

If you can provide evidence in your proposal that LLVM is missing 
optimization opportunities because of a lack of good points-to analysis, 
that would make your proposal even stronger.

-- John T.

>
> [1] http://llvm.org/OpenProjects.html#pointeranalysis
> [2] http://labs.oracle.com/docs/2011/150-299/2011-0189/esec053-li.pdf
>
> Best,
>
> Douglas
> _______________________________________________
> 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