diff options
author | Evan Cheng <evan.cheng@apple.com> | 2008-06-07 08:52:29 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2008-06-07 08:52:29 +0000 |
commit | 4d09efd7b8fdf9e8a8c89bdb821f4992091a764b (patch) | |
tree | 80d8bef6f97f0aca27dbd0b30d6c75875e3f69f6 /lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp | |
parent | cce302fded6c4c7b84630094fb60bc16fb4b1749 (diff) |
Speculatively execute a block when the the block is the then part of a triangle shape and it contains a single, side effect free, cheap instruction. The branch is eliminated by adding a select instruction. i.e.
Turn
BB:
%t1 = icmp
br i1 %t1, label %BB1, label %BB2
BB1:
%t3 = add %t2, c
br label BB2
BB2:
=>
BB:
%t1 = icmp
%t4 = add %t2, c
%t3 = select i1 %t1, %t2, %t3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52073 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp')
0 files changed, 0 insertions, 0 deletions