[PATCH] D65586: [Attributor][NFC] Invalid DerefState is at fixpoint
Johannes Doerfert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 1 09:20:36 PDT 2019
jdoerfert created this revision.
jdoerfert added reviewers: uenoku, sstefan1.
Herald added subscribers: bollu, hiraditya.
Herald added a project: LLVM.
If the DerefBytesState (and thereby the DerefState) is invalid, we
reached a fixpoint for the whole DerefState as we will not
manifest/provide information then.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D65586
Files:
llvm/lib/Transforms/IPO/Attributor.cpp
Index: llvm/lib/Transforms/IPO/Attributor.cpp
===================================================================
--- llvm/lib/Transforms/IPO/Attributor.cpp
+++ llvm/lib/Transforms/IPO/Attributor.cpp
@@ -1658,9 +1658,10 @@
/// See AbstractState::isValidState()
bool isValidState() const override { return DerefBytesState.isValidState(); }
- // See AbstractState::isAtFixpoint()
+ /// See AbstractState::isAtFixpoint()
bool isAtFixpoint() const override {
- return DerefBytesState.isAtFixpoint() && NonNullGlobalState.isAtFixpoint();
+ return !isValidState() || (DerefBytesState.isAtFixpoint() &&
+ NonNullGlobalState.isAtFixpoint());
}
/// See AbstractState::indicateOptimisticFixpoint(...)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65586.212837.patch
Type: text/x-patch
Size: 748 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190801/7a677d34/attachment.bin>
More information about the llvm-commits
mailing list