[llvm] r354020 - Teach isGuaranteedToTransferExecutionToSuccessor about widenable conditions

Max Kazantsev via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 14 03:10:22 PST 2019


Author: mkazantsev
Date: Thu Feb 14 03:10:21 2019
New Revision: 354020

URL: http://llvm.org/viewvc/llvm-project?rev=354020&view=rev
Log:
Teach isGuaranteedToTransferExecutionToSuccessor about widenable conditions

Widenable condition intrinsic is guaranteed to return value, notify
the isGuaranteedToTransferExecutionToSuccessor function about it.

Modified:
    llvm/trunk/lib/Analysis/ValueTracking.cpp

Modified: llvm/trunk/lib/Analysis/ValueTracking.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/ValueTracking.cpp?rev=354020&r1=354019&r2=354020&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/ValueTracking.cpp (original)
+++ llvm/trunk/lib/Analysis/ValueTracking.cpp Thu Feb 14 03:10:21 2019
@@ -4347,7 +4347,8 @@ bool llvm::isGuaranteedToTransferExecuti
     // 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::sideeffect>()) ||
+           match(I, m_Intrinsic<Intrinsic::experimental_widenable_condition>());
   }
 
   // Other instructions return normally.




More information about the llvm-commits mailing list