This is an archive of the discontinued LLVM Phabricator instance.

[CFLAA] Moved StratifiedAttrs and summary-related stuffs out of CFLSteensAliasAnalysis
ClosedPublic

Authored by grievejia on Jul 3 2016, 5:10 PM.

Details

Summary

This patch continues the work of moving codes out of CFLSteensAliasAnalysis so that CFLAndersAliasAnalysis could also use them.

StratifiedAttrs is one such utility. It has been renamed to AliasAttrs, since its usage may no longer be local to StratifiedSets any more.

Summary-related structs, such as InterfaceValue, ExternalRelation, etc, are also refactored out. Again, the idea is to leave only Steensgard-specific codes in CFLSteensAliasAnalysis.cpp, and put summary-related codes in AliasAnalysisSummary.cpp

Diff Detail

Repository
rL LLVM

Event Timeline

grievejia updated this revision to Diff 62642.Jul 3 2016, 5:10 PM
grievejia retitled this revision from to [CFLAA] Moved StratifiedAttrs and summary-related stuffs out of CFLSteensAliasAnalysis.
grievejia updated this object.
grievejia added a subscriber: llvm-commits.

The mechanical refactors for this (and D21963) look good. I don't really
like throwing so many generally-named things into llvm::, though (e.g.
llvm::EdgeType, ...). Could we do something like putting all of this into
a llvm::cflaa namespace, please? If it makes life easier, feel free to
put using namespace llvm::cflaa; at the top of our cpp files. :)

(Same comments apply to 21963)

Thank you!

grievejia updated this revision to Diff 62705.Jul 4 2016, 12:00 PM
grievejia edited edge metadata.

Added the cflaa namespace

george.burgess.iv accepted this revision.Jul 5 2016, 5:50 PM
george.burgess.iv edited edge metadata.

Explicitly LGTMing for code historians.

This revision is now accepted and ready to land.Jul 5 2016, 5:50 PM
This revision was automatically updated to reflect the committed changes.