[LLVMdev] Comparison of Alias Analysis in LLVM
Chris Lattner
clattner at apple.com
Tue Jan 3 13:55:04 PST 2012
On Jan 3, 2012, at 1:53 PM, Jianzhou Zhao wrote:
> I see. I asked the question because LLVM provides several alias
> analysis, and I was wondering how to decide which one should be used
> for compiling most programs.
>
> I think the basicaa is the default one, but by looking into its code,
> it is not inter-procedural or context-sensitive (I am not 100% sure),
> so does not provide interesting mod/ref information. Then, GVN(PRE)
> and LICM may not have a lot of opportunities for optimizing calls. So,
> I looked into the thesis for understanding how those inter-procedural
> aa and other aa contribute. I guess basicaa has a better speed-up per
> compiling-cost ratio for most common programs than others. Is this
> correct?
We do also use globalsmodref, and have a pass for inferring and propagating the readnone/readonly markers. We also now have Type Based Alias Analysis for C languages.
No one has really been pushing forward aliasing much lately.
-Chris
More information about the llvm-dev
mailing list