[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. :)
George
http://reviews.llvm.org/D5106
Files:
include/llvm/Analysis/Passes.h
include/llvm/InitializePasses.h
include/llvm/LinkAllPasses.h
lib/Analysis/CFLAliasAnalysis.cpp
lib/Analysis/CMakeLists.txt
lib/Analysis/StratifiedSets.h
-------------- 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