[llvm] r221281 - InstSimplify: Fold a hasNoSignedWrap() call into a match() expression

David Majnemer david.majnemer at gmail.com
Tue Nov 4 09:47:13 PST 2014


Author: majnemer
Date: Tue Nov  4 11:47:13 2014
New Revision: 221281

URL: http://llvm.org/viewvc/llvm-project?rev=221281&view=rev
Log:
InstSimplify: Fold a hasNoSignedWrap() call into a match() expression

No functionality change intended, it's just a little more concise.

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

Modified: llvm/trunk/lib/Analysis/InstructionSimplify.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/InstructionSimplify.cpp?rev=221281&r1=221280&r2=221281&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/InstructionSimplify.cpp (original)
+++ llvm/trunk/lib/Analysis/InstructionSimplify.cpp Tue Nov  4 11:47:13 2014
@@ -1408,8 +1408,7 @@ static Value *SimplifyAShrInst(Value *Op
 
   // (X << A) >> A -> X
   Value *X;
-  if (match(Op0, m_Shl(m_Value(X), m_Specific(Op1))) &&
-      cast<OverflowingBinaryOperator>(Op0)->hasNoSignedWrap())
+  if (match(Op0, m_NSWShl(m_Value(X), m_Specific(Op1))))
     return X;
 
   // Arithmetic shifting an all-sign-bit value is a no-op.





More information about the llvm-commits mailing list