diff options
author | Hideto Ueno <uenoku.tokotoko@gmail.com> | 2019-07-30 18:35:29 +0000 |
---|---|---|
committer | Hideto Ueno <uenoku.tokotoko@gmail.com> | 2019-07-30 18:35:29 +0000 |
commit | 6e2be4eab3dd5dbcc1ec885656c56f5f0200091d (patch) | |
tree | f80e01f81daa7883f58847b6b9d284c888fa708f /llvm/lib/Analysis/ValueTracking.cpp | |
parent | 3b0769b7b49d8bc8708f2dea46d833cd83f42746 (diff) | |
download | bcm5719-llvm-6e2be4eab3dd5dbcc1ec885656c56f5f0200091d.tar.gz bcm5719-llvm-6e2be4eab3dd5dbcc1ec885656c56f5f0200091d.zip |
[FunctionAttrs] Annotate "willreturn" for AssumeLikeInst
Summary:
In D37215, AssumeLikeInstruction are regarded as `willreturn`. In this patch, annotation is added to those which don't have `willreturn` now(`sideeffect, object_size, experimental_widenable_condition`).
Reviewers: jdoerfert, nikic, sstefan1
Reviewed By: nikic
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65455
llvm-svn: 367342
Diffstat (limited to 'llvm/lib/Analysis/ValueTracking.cpp')
-rw-r--r-- | llvm/lib/Analysis/ValueTracking.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp index 4272f69ef81..343e738db81 100644 --- a/llvm/lib/Analysis/ValueTracking.cpp +++ b/llvm/lib/Analysis/ValueTracking.cpp @@ -4264,10 +4264,7 @@ bool llvm::isGuaranteedToTransferExecutionToSuccessor(const Instruction *I) { // FIXME: This isn't aggressive enough; a call which only writes to a global // is guaranteed to return. - return CS.onlyReadsMemory() || CS.onlyAccessesArgMemory() || - match(I, m_Intrinsic<Intrinsic::assume>()) || - match(I, m_Intrinsic<Intrinsic::sideeffect>()) || - match(I, m_Intrinsic<Intrinsic::experimental_widenable_condition>()); + return CS.onlyReadsMemory() || CS.onlyAccessesArgMemory(); } // Other instructions return normally. |