Changes in directory llvm/lib/Transforms/Scalar:
PredicateSimplifier.cpp updated: 1.20 -> 1.21 --- Log message: AllocaInst can't return a null pointer. Fixes missed optimization opportunity pointed out by Andrew Lewycky. --- Diffs of the changes: (+6 -0) PredicateSimplifier.cpp | 6 ++++++ 1 files changed, 6 insertions(+) Index: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp diff -u llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp:1.20 llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp:1.21 --- llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp:1.20 Wed Oct 11 21:02:44 2006 +++ llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp Sun Oct 22 14:53:27 2006 @@ -31,6 +31,7 @@ #define DEBUG_TYPE "predsimplify" #include "llvm/Transforms/Scalar.h" #include "llvm/Constants.h" +#include "llvm/DerivedTypes.h" #include "llvm/Instructions.h" #include "llvm/Pass.h" #include "llvm/ADT/Statistic.h" @@ -446,6 +447,7 @@ void visitBranchInst(BranchInst &BI); void visitSwitchInst(SwitchInst &SI); + void visitAllocaInst(AllocaInst &AI); void visitLoadInst(LoadInst &LI); void visitStoreInst(StoreInst &SI); void visitBinaryOperator(BinaryOperator &BO); @@ -712,6 +714,10 @@ } } +void PredicateSimplifier::Forwards::visitAllocaInst(AllocaInst &AI) { + KP.addNotEqual(Constant::getNullValue(AI.getType()), &AI); +} + void PredicateSimplifier::Forwards::visitLoadInst(LoadInst &LI) { Value *Ptr = LI.getPointerOperand(); KP.addNotEqual(Constant::getNullValue(Ptr->getType()), Ptr); _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits