diff options
author | Chris Lattner <sabre@nondot.org> | 2005-08-07 04:27:41 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-08-07 04:27:41 +0000 |
commit | f4dd8c445c6680bc82f7fd42bf268b64cc04012d (patch) | |
tree | 719896138c5f4b1d041a3ca8e5d946e85c190970 /llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | |
parent | d670e5c88a2c9a804a8480b4637a6b27a962d842 (diff) | |
download | bcm5719-llvm-f4dd8c445c6680bc82f7fd42bf268b64cc04012d.tar.gz bcm5719-llvm-f4dd8c445c6680bc82f7fd42bf268b64cc04012d.zip |
* Use the new PHINode::hasConstantValue method to simplify some code
* Teach this code to move allocas out of the loop when tail call eliminating
a call marked 'tail'. This implements TailCallElim/move_alloca_for_tail_call.ll
* Do not perform this transformation if a call is marked 'tail' and if there
are allocas that we cannot move out of the loop in #2. Doing so would increase
the stack usage of the function. This implements fixes
PR615 and TailCallElim/dont-tce-tail-marked-call.ll.
llvm-svn: 22690
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp')
0 files changed, 0 insertions, 0 deletions