#
a97a2c99 |
| 21-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Reinstate r133435 and r133449 (reverted in r133499) now that the clang self-hosted build failure has been fixed (r133512).
llvm-svn: 133513
|
#
184f3b37 |
| 21-Jun-2011 |
Chad Rosier <mcrosier@apple.com> |
Revert r133435 and r133449 to appease buildbots.
llvm-svn: 133499
|
#
e03c05c3 |
| 20-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Change how PHINodes store their operands.
Change PHINodes to store simple pointers to their incoming basic blocks, instead of full-blown Uses.
Note that this loses an optimization in SplitCriticalE
Change how PHINodes store their operands.
Change PHINodes to store simple pointers to their incoming basic blocks, instead of full-blown Uses.
Note that this loses an optimization in SplitCriticalEdge(), because we can no longer walk the use list of a BasicBlock to find phi nodes. See the comment I removed starting "However, the foreach loop is slow for blocks with lots of predecessors".
Extend replaceAllUsesWith() on a BasicBlock to also update any phi nodes in the block's successors. This mimics what would have happened when PHINodes were proper Users of their incoming blocks. (Note that this only works if OldBB->replaceAllUsesWith(NewBB) is called when OldBB still has a terminator instruction, so it still has some successors.)
llvm-svn: 133435
show more ...
|
#
bb35e8ba |
| 02-May-2011 |
Devang Patel <dpatel@apple.com> |
Scanning entire basic block may be too expensive in terms of compile time. Instead, just use whatever location info first non-phi instruction has.
llvm-svn: 130729
|
#
a8e7411c |
| 29-Apr-2011 |
Devang Patel <dpatel@apple.com> |
Assing line number info to new PHIs created by SSA updater.
llvm-svn: 130551
|
Revision tags: llvmorg-2.9.0 |
|
#
52131344 |
| 30-Mar-2011 |
Jay Foad <jay.foad@gmail.com> |
Remove PHINode::reserveOperandSpace(). Instead, add a parameter to PHINode::Create() giving the (known or expected) number of operands.
llvm-svn: 128537
|
#
e0938d8a |
| 30-Mar-2011 |
Jay Foad <jay.foad@gmail.com> |
(Almost) always call reserveOperandSpace() on newly created PHINodes.
llvm-svn: 128535
|
Revision tags: llvmorg-2.9.0-rc3, llvmorg-2.9.0-rc2, llvmorg-2.9.0-rc1 |
|
#
d983eba7 |
| 29-Jan-2011 |
Evan Cheng <evan.cheng@apple.com> |
Re-apply r124518 with fix. Watch out for invalidated iterator.
llvm-svn: 124526
|
#
65b8ccf6 |
| 29-Jan-2011 |
Evan Cheng <evan.cheng@apple.com> |
Revert r124518. It broke Linux self-host.
llvm-svn: 124522
|
#
d4eff314 |
| 29-Jan-2011 |
Evan Cheng <evan.cheng@apple.com> |
Re-commit r124462 with fixes. Tail recursion elim will now dup ret into unconditional predecessor to enable TCE on demand.
llvm-svn: 124518
|
#
b703654e |
| 18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Remove code for updating dominance frontiers and some outdated references to dominance and post-dominance frontiers.
llvm-svn: 123725
|
#
f2407aa9 |
| 11-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix a non-deterministic loop in llvm::MergeBlockIntoPredecessor.
DT->changeImmediateDominator() trivially ignores identity updates, so there is really no need for the uniqueing provided by SmallPtrS
Fix a non-deterministic loop in llvm::MergeBlockIntoPredecessor.
DT->changeImmediateDominator() trivially ignores identity updates, so there is really no need for the uniqueing provided by SmallPtrSet.
I expect this to fix PR8954.
llvm-svn: 123286
show more ...
|
#
e2523b28 |
| 11-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
when MergeBlockIntoPredecessor merges two blocks, update MemDep if it is floating around in the ether.
llvm-svn: 123223
|
#
f6ae904e |
| 11-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
Fix FoldSingleEntryPHINodes to update memdep and AA when it deletes phi nodes. It is called from MergeBlockIntoPredecessor which is called from GVN, which claims to preserve these.
I'm skeptical t
Fix FoldSingleEntryPHINodes to update memdep and AA when it deletes phi nodes. It is called from MergeBlockIntoPredecessor which is called from GVN, which claims to preserve these.
I'm skeptical that this is the actual problem behind PR8954, but this is a stab in the right direction.
llvm-svn: 123222
show more ...
|
#
930b716e |
| 08-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
various code cleanups, enhance MergeBlockIntoPredecessor to preserve loop info.
llvm-svn: 123074
|
#
30d95f9f |
| 08-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
reduce nesting.
llvm-svn: 123071
|
#
bf0aa927 |
| 02-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
split dom frontier handling stuff out to its own DominanceFrontier header, so that Dominators.h is *just* domtree. Also prune #includes a bit.
llvm-svn: 122714
|
#
afd2a8cf |
| 14-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
remove the dead (and terrible) llvm::RemoveSuccessor function.
llvm-svn: 121753
|
Revision tags: llvmorg-2.8.0, llvmorg-2.8.0-rc3, llvmorg-2.8.0-rc2 |
|
#
2f5f696b |
| 10-Sep-2010 |
Gabor Greif <ggreif@gmail.com> |
typoes
llvm-svn: 113647
|
Revision tags: llvmorg-2.8.0-rc1, llvmorg-2.8.0-rc0 |
|
#
f0b5b67b |
| 18-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
fit in 80 cols
llvm-svn: 111348
|
#
941020ed |
| 17-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Use the getUniquePredecessor() utility function, instead of doing what it does manually.
llvm-svn: 111248
|
#
826bdf8c |
| 28-May-2010 |
Dan Gohman <gohman@apple.com> |
Move FindAvailableLoadedValue isSafeToLoadUnconditionally out of lib/Transforms/Utils and into lib/Analysis so that Analysis passes can use them.
llvm-svn: 104949
|
Revision tags: llvmorg-2.7.0 |
|
#
ba930449 |
| 05-Apr-2010 |
Evan Cheng <evan.cheng@apple.com> |
Code clean up.
llvm-svn: 100467
|
#
aff96b21 |
| 16-Feb-2010 |
Bob Wilson <bob.wilson@apple.com> |
Rename SuccessorNumber to GetSuccessorNumber.
llvm-svn: 96387
|
#
3de492ec |
| 16-Feb-2010 |
Bob Wilson <bob.wilson@apple.com> |
Refactor to share code to find the position of a basic block successor in the terminator's list of successors.
llvm-svn: 96377
|