RecursivelyDeleteTriviallyDeadInstructions only needs a
authorDan Gohman <gohman@apple.com>
Thu, 10 Mar 2011 20:57:44 +0000 (20:57 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 10 Mar 2011 20:57:44 +0000 (20:57 +0000)
Value, not an Instruction, so casting is not necessary. Also,
it's theoretically possible that the Value is not an
Instruction, since WeakVH follows RAUWs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127427 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/Reassociate.cpp

index 6a0fb3f7789e995d314f513615f64ce0e70b1bbc..accabb024ddd4536f9eb51d222002b500c29e19e 100644 (file)
@@ -1097,9 +1097,8 @@ bool Reassociate::runOnFunction(Function &F) {
 
   // Now that we're done, delete any instructions which are no longer used.
   while (!DeadInsts.empty())
-    if (Instruction *Inst =
-          cast_or_null<Instruction>((Value *)DeadInsts.pop_back_val()))
-      RecursivelyDeleteTriviallyDeadInstructions(Inst);
+    if (Value *V = DeadInsts.pop_back_val())
+      RecursivelyDeleteTriviallyDeadInstructions(V);
 
   // We are done with the rank map.
   RankMap.clear();