[PATCH] CFL Alias Analysis

George Burgess IV george.burgess.iv at gmail.com
Thu Aug 28 10:32:19 PDT 2014

Hi chandlerc, dberlin, hfinkel, nlewycky,

The algorithms for CFLAA + data structures all in one! (Read: Internship over, so I no longer have access to my gbiv@ email, which I used to make the old revisions). 

Old reviews:
  - http://reviews.llvm.org/D4551 (CFLAA Algorithm)
  - http://reviews.llvm.org/D4550 (Data structures)

This patch contains the algorithm for the CFL Alias Analysis described here: https://docs.google.com/document/d/1nGFKMmr-HbdEiag9G1GeWurgOV0CweSUjLXFr3LAwqg/edit . Currently, we don't have any extremely fancy features, sans some interprocedural analysis (i.e. no field sensitivity, etc.), and we do best sitting behind BasicAA + TBAA.


Diff notes:
> Merged WeightedBidirectionalGraph into CFLAliasAnalysis.cpp
> Addressed all other feedback, except hfinkel at 415. I don't want to stop scanning inside of IPA if we hit noalias/byval because of the following:

int foo(long a, int* b) { *(int**)a = b; }

If the consensus is that such code shouldn't be an issue, then I'll happily speed IPA up a bit.

Sorry for the hurried message -- I have a flight soon. :)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5106.13045.patch
Type: text/x-patch
Size: 59328 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140828/19c1c3e7/attachment.bin>

More information about the llvm-commits mailing list