[PATCH] D22022: [CFLAA] Move CFLGraphBuilder out of CFLSteensAliasAnalysis

Jia Chen via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 5 15:47:11 PDT 2016


grievejia created this revision.
grievejia added reviewers: george.burgess.iv, hfinkel.
grievejia added a subscriber: llvm-commits.

CFLGraphBuilder can be useful to both CFLSteensAliasAnalysis and CFLAndersAliasAnalysis, just like CFLGraph. Move it out to for future use by CFLAndersAliasAnalysis.

Since CFLGraphBuilder needs to use CFLSteens/CFLAnders for interprocedural analysis, I've made it template on the type of AA that uses it. This does impose an implicit API constraint on the AA: we expect it to a getAliasSummary() member function so that the summary of any functions can be retrieved. I didn't make any attempts to properly enforce this constraint (except mentioning it in the documentation), since doing that may require some SFINAE tricks that'll confuse the main point of the codes. Concept will help on that, but we are still not there :)

http://reviews.llvm.org/D22022

Files:
  include/llvm/Analysis/CFLAndersAliasAnalysis.h
  include/llvm/Analysis/CFLSteensAliasAnalysis.h
  lib/Analysis/AliasAnalysisSummary.h
  lib/Analysis/CFLGraph.h
  lib/Analysis/CFLSteensAliasAnalysis.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22022.62797.patch
Type: text/x-patch
Size: 37538 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160705/4e3232b5/attachment-0001.bin>


More information about the llvm-commits mailing list