Changes in directory llvm/lib/Transforms/Scalar:

InstructionCombining.cpp updated: 1.642 -> 1.643
---
Log message:

Speed up -instcombine by 20% by avoiding a particularly expensive passmgr call.


---
Diffs of the changes:  (+4 -1)

 InstructionCombining.cpp |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)


Index: llvm/lib/Transforms/Scalar/InstructionCombining.cpp
diff -u llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.642 
llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.643
--- llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.642   Fri Mar  2 
23:27:34 2007
+++ llvm/lib/Transforms/Scalar/InstructionCombining.cpp Sat Mar  3 22:27:24 2007
@@ -74,6 +74,7 @@
     std::vector<Instruction*> Worklist;
     DenseMap<Instruction*, unsigned> WorklistMap;
     TargetData *TD;
+    bool MustPreserveLCSSA;
   public:
     /// AddToWorkList - Add the specified instruction to the worklist if it
     /// isn't already in it.
@@ -7685,7 +7686,7 @@
 //
 Instruction *InstCombiner::visitPHINode(PHINode &PN) {
   // If LCSSA is around, don't mess with Phi nodes
-  if (mustPreserveAnalysisID(LCSSAID)) return 0;
+  if (MustPreserveLCSSA) return 0;
   
   if (Value *V = PN.hasConstantValue())
     return ReplaceInstUsesWith(PN, V);
@@ -9344,6 +9345,8 @@
 
 
 bool InstCombiner::runOnFunction(Function &F) {
+  MustPreserveLCSSA = mustPreserveAnalysisID(LCSSAID);
+  
   bool EverMadeChange = false;
 
   // Iterate while there is work to do.



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to