[PATCH] D22450: [CFLAA] Add interprocerual analysis support to CFLAndersAliasAnalysis

George Burgess IV via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 19 13:44:29 PDT 2016


george.burgess.iv accepted this revision.
george.burgess.iv added a comment.
This revision is now accepted and ready to land.

Looks good -- thanks again! (Will commit the change to interproc-store-arg-multilevel.ll separately, as promised, to make it clear that it's unrelated)


================
Comment at: lib/Analysis/CFLAndersAliasAnalysis.cpp:110
@@ +109,3 @@
+typedef std::bitset<7> StateSet;
+LLVM_CONSTEXPR StateSet ReadOnlyStateMask =
+    (1 << static_cast<uint8_t>(MatchState::FlowFromReadOnly)) |
----------------
That makes sense, then; generally the preference in LLVM tends to be "only put structs/classes in anonymous namespaces; make everything else static," but so long as these aren't externally visible, I'm happy.

================
Comment at: lib/Analysis/CFLAndersAliasAnalysis.cpp:313
@@ +312,3 @@
+  // needs special handling here.
+  for (const auto &Arg : Fn.args()) {
+    if (is_contained(RetVals, &Arg)) {
----------------
Yeah, I guess I don't see a real-world case where either of these will (practically) be huge, so you're right. :)


https://reviews.llvm.org/D22450





More information about the llvm-commits mailing list