Hi John,<div><br></div><div>Thanks for your reply. I don't think I need alias analysis for now. If I use Steensgaard analysis and add patches to it later, I will send you the working version. Thanks,</div><div><br></div>

<div>Jiesheng<br><br><div class="gmail_quote">On Wed, Oct 19, 2011 at 11:30 AM, John Criswell <span dir="ltr"><<a href="mailto:criswell@illinois.edu">criswell@illinois.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

On 10/7/11 11:56 PM, Jiesheng Wei wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
This is Jiesheng Wei from UBC. Now I am working on a project with LLVM<br>
and I want to use steensgaard alias analysis tool. I saw on the website<br>
that steensgaard analysis is available for LLVM 2.9 and it is under<br>
poolalloc/ directory. I downloaded several versions but none of them is<br>
compatible with LLVM 2.9. Can you please tell me which version of<br>
poolalloc is for LLVM 2.9? Thanks,<br>
</blockquote>
<br>
Sorry for the really late reply.  This got lost under other emails in my INBOX.<br>
<br>
First, there was a Steensgaard implementation of alias analysis within the poolalloc project.  However, since very few people used it and since we were not maintaining the code because of this lack of use, we finally removed it from poolalloc.  I don't recall when we removed it; it may still exist within the release_27 branch of poolalloc (which works with LLVM 2.7), and it should be in the release_26 branch (which works with LLVM 2.6).<br>


<br>
There was a patch that made a number of modifications to mainline poolalloc (which should work with the upcoming LLVM 3.0 release, BTW).  This patch got DSA compiling with LLVM 2.9 and resurrected the -ds-aa analysis.  I'm not sure if that is the Steensgaard pass or not.<br>


<br>
In any event, I haven't applied the patch because<br>
    1) we're not supporting LLVM 2.9 with DSA/Poolalloc,<br>
    2) the patch included some changes that could have conflicted with our updates to make DSA compile with LLVM 3.0, and<br>
    3) we didn't think that there was sufficient interest in an AliasAnalysis inteface to deal with reason #2.<br>
<br>
Hence, there is currently no alias analysis interface (Steensgaard or otherwise) provided in the poolalloc project.  There is DSA (which is a unification-based points-to analysis), but to use it, you have to examine the points-to graphs (called DSGraphs) it generates directly.  If you want to go that route, we can help you with that.<br>


<br>
If you're interested in having an AliasAnalysis interface to DSA, you can make a note under Bug 11130 (<a href="http://llvm.org/bugs/show_bug.cgi?id=11130" target="_blank">http://llvm.org/bugs/show_<u></u>bug.cgi?id=11130</a>).  There's at least one other person that wants it; I'm using the bug report to measure the level of interest in this feature so that we can prioritize it properly.<br>


<br>
We do accept patches for the poolalloc project, so if you want to make the Steensgaard code work and submit a patch that works with mainline poolalloc and LLVM 3.0, we'll try to take a look at it and get it committed.<br>


<br>
-- John T.<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Jiesheng<br>
<br>
______________________________<u></u>_________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/llvmdev</a><br>
</blockquote>
<br>
</blockquote></div><br></div>