[llvm-commits] CVS: llvm/lib/Transforms/Scalar/InstructionCombining.cpp

Chris Lattner lattner at cs.uiuc.edu
Mon Oct 17 13:18:49 PDT 2005



Changes in directory llvm/lib/Transforms/Scalar:

InstructionCombining.cpp updated: 1.387 -> 1.388
---
Log message:

Make this work for FP constantexprs


---
Diffs of the changes:  (+3 -2)

 InstructionCombining.cpp |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)


Index: llvm/lib/Transforms/Scalar/InstructionCombining.cpp
diff -u llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.387 llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.388
--- llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.387	Mon Oct 17 12:56:38 2005
+++ llvm/lib/Transforms/Scalar/InstructionCombining.cpp	Mon Oct 17 15:18:38 2005
@@ -697,8 +697,9 @@
     if (!I.getType()->isFloatingPoint()) { // NOTE: -0 + +0 = +0.
       if (RHSC->isNullValue())
         return ReplaceInstUsesWith(I, LHS);
-    } else if (cast<ConstantFP>(RHSC)->isExactlyValue(-0.0)) {
-      return ReplaceInstUsesWith(I, LHS);
+    } else if (ConstantFP *CFP = dyn_cast<ConstantFP>(RHSC)) {
+      if (CFP->isExactlyValue(-0.0))
+        return ReplaceInstUsesWith(I, LHS);
     }
 
     // X + (signbit) --> X ^ signbit






More information about the llvm-commits mailing list