[PATCH] D66113: [Attributor] Use the AANoNull attribute directly in AADereferenceable

Hideto Ueno via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 12 21:01:06 PDT 2019


uenoku accepted this revision.
uenoku added a comment.
This revision is now accepted and ready to land.

I think it is better to use `intersectAssumedBits` for BooleanState.
Otherwise, LGTM.



================
Comment at: llvm/lib/Transforms/IPO/Attributor.cpp:1769
   if (A.checkForAllReturnedValues(CheckReturnValue, *this)) {
-    updateAssumedNonNullGlobalState(IsNonNull, IsGlobal);
+    GlobalState.takeAssumedMinimum(IsGlobal);
     return BeforeState == static_cast<DerefState>(*this)
----------------
`intersectAssumedBits` is better.


================
Comment at: llvm/lib/Transforms/IPO/Attributor.cpp:1825
 
-  updateAssumedNonNullGlobalState(IsNonNull, IsGlobal);
+  GlobalState.takeAssumedMinimum(IsGlobal);
 
----------------
`intersectAssumedBits` is better.


================
Comment at: llvm/lib/Transforms/IPO/Attributor.cpp:1858
+      computeAssumedDerefenceableBytes(A, V, IsGlobal));
+  GlobalState.takeAssumedMinimum(IsGlobal);
 
----------------
`intersectAssumedBits` is better.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66113/new/

https://reviews.llvm.org/D66113





More information about the llvm-commits mailing list