Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.28 -> 1.29 --- Log message: Handle functions with multiple exit blocks properly. --- Diffs of the changes: (+6 -0) GVNPRE.cpp | 6 ++++++ 1 files changed, 6 insertions(+) Index: llvm/lib/Transforms/Scalar/GVNPRE.cpp diff -u llvm/lib/Transforms/Scalar/GVNPRE.cpp:1.28 llvm/lib/Transforms/Scalar/GVNPRE.cpp:1.29 --- llvm/lib/Transforms/Scalar/GVNPRE.cpp:1.28 Sat Jun 9 13:35:31 2007 +++ llvm/lib/Transforms/Scalar/GVNPRE.cpp Mon Jun 11 11:25:17 2007 @@ -526,6 +526,9 @@ df_begin(PDT.getRootNode()), E = df_end(PDT.getRootNode()); PDI != E; ++PDI) { BasicBlock* BB = PDI->getBlock(); + if (BB == 0) + continue; + DOUT << "Block: " << BB->getName() << "\n"; DOUT << "TMP_GEN: "; dump(generatedTemporaries[BB]); @@ -635,6 +638,9 @@ E = df_end(DT.getRootNode()); DI != E; ++DI) { BasicBlock* BB = DI->getBlock(); + if (BB == 0) + continue; + std::set<Value*, ExprLT>& new_set = new_sets[BB]; std::set<Value*, ExprLT>& availOut = availableOut[BB]; std::set<Value*, ExprLT>& anticIn = anticipatedIn[BB]; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits