[cfe-commits] r123438 - /cfe/trunk/lib/CodeGen/CodeGenFunction.cpp
John McCall
rjmccall at apple.com
Fri Jan 14 02:35:38 PST 2011
Author: rjmccall
Date: Fri Jan 14 04:35:38 2011
New Revision: 123438
URL: http://llvm.org/viewvc/llvm-project?rev=123438&view=rev
Log:
When simplifying a cleanup's entry by merging it into a single predecessor,
replace all uses of the entry with the predecessor. There are no cleanups
relying on this right now, but if we ever want a cleanup with a phi inside
it, this will be important.
Modified:
cfe/trunk/lib/CodeGen/CodeGenFunction.cpp
Modified: cfe/trunk/lib/CodeGen/CodeGenFunction.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CodeGenFunction.cpp?rev=123438&r1=123437&r2=123438&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CodeGenFunction.cpp (original)
+++ cfe/trunk/lib/CodeGen/CodeGenFunction.cpp Fri Jan 14 04:35:38 2011
@@ -754,6 +754,10 @@
// Merge the blocks.
Pred->getInstList().splice(Pred->end(), Entry->getInstList());
+ // Replace all uses of the entry with the predecessor, in case there
+ // are phis in the cleanup.
+ Entry->replaceAllUsesWith(Pred);
+
// Kill the entry block.
Entry->eraseFromParent();
More information about the cfe-commits
mailing list