OSDN Git Service

Teach machine sink to
authorEvan Cheng <evan.cheng@apple.com>
Fri, 17 Sep 2010 22:28:18 +0000 (22:28 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Fri, 17 Sep 2010 22:28:18 +0000 (22:28 +0000)
commit6edb0eac87a6e46b89de3ad5d8e39c41969e2a54
treecb059ec2c353669ef07a8b6bb55ae6874688bdb5
parenta5b1e6810769bef9a1fd98c69877bdfd75d7b106
Teach machine sink to
1) Do forward copy propagation. This makes it easier to estimate the cost of the
   instruction being sunk.
2) Break critical edges on demand, including cases where the value is used by
   PHI nodes.
Critical edge splitting is not yet enabled by default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114227 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/MachineSink.cpp
test/CodeGen/X86/lsr-reuse.ll
test/CodeGen/X86/pr3522.ll
test/CodeGen/X86/tail-opts.ll