- Nov 13, 2009
-
-
Jakob Stoklund Olesen authored
The BasicBlock associated with a MachineBasicBlock does not necessarily correspond to the code in the MBB. Don't insert a new IR BasicBlock when splitting critical edges. We are not supposed to modify the IR during codegen, and we should be able to do just fine with a NULL BB. llvm-svn: 88707
-
- Nov 11, 2009
-
-
Jakob Stoklund Olesen authored
- Edges are split before any phis are eliminated, so the code is SSA. - Create a proper IR BasicBlock for the split edges. - LiveVariables::addNewBlock now has same syntax as MachineDominatorTree::addNewBlock. Algorithm calculates predecessor live-out set rather than successor live-in set. This feature still causes some miscompilations. llvm-svn: 86867
-
- Nov 10, 2009
-
-
Jakob Stoklund Olesen authored
Critical edges leading to a PHI node are split when the PHI source variable is live out from the predecessor block. This help the coalescer eliminate more PHI joins. llvm-svn: 86725
-
Jakob Stoklund Olesen authored
Clean up some whitespace. No functional changes. llvm-svn: 86724
-
- Sep 04, 2009
-
-
Evan Cheng authored
llvm-svn: 80993
-
- Jul 23, 2009
-
-
Lang Hames authored
llvm-svn: 76849
-
- Jul 22, 2009
-
-
Lang Hames authored
llvm-svn: 76688
-