diff options
author | Dan Gohman <gohman@apple.com> | 2009-11-11 19:48:59 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-11-11 19:48:59 +0000 |
commit | 2210c0bea83aa8a8585d793a1f63e8c01b65be38 (patch) | |
tree | b424f49eec4e671264bc206aef236dbb369e08aa /test/CodeGen/X86/loop-blocks.ll | |
parent | 3e20475feebca3bfb29375ac7f3e5acbeb2a95c8 (diff) | |
download | llvm-2210c0bea83aa8a8585d793a1f63e8c01b65be38.tar.gz llvm-2210c0bea83aa8a8585d793a1f63e8c01b65be38.tar.bz2 llvm-2210c0bea83aa8a8585d793a1f63e8c01b65be38.tar.xz |
Add support for tail duplication to BranchFolding, and extend
tail merging support to handle more cases.
- Recognize several cases where tail merging is beneficial even when
the tail size is smaller than the generic threshold.
- Make use of MachineInstrDesc::isBarrier to help detect
non-fallthrough blocks.
- Check for and avoid disrupting fall-through edges in more cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86871 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/loop-blocks.ll')
-rw-r--r-- | test/CodeGen/X86/loop-blocks.ll | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/test/CodeGen/X86/loop-blocks.ll b/test/CodeGen/X86/loop-blocks.ll index c0379d1152..ec5236b3ae 100644 --- a/test/CodeGen/X86/loop-blocks.ll +++ b/test/CodeGen/X86/loop-blocks.ll @@ -74,16 +74,16 @@ exit: ; CHECK: yet_more_involved: ; CHECK: jmp .LBB3_1 ; CHECK-NEXT: align -; CHECK-NEXT: .LBB3_3: +; CHECK-NEXT: .LBB3_4: ; CHECK-NEXT: call bar99 ; CHECK-NEXT: call get ; CHECK-NEXT: cmpl $2999, %eax -; CHECK-NEXT: jg .LBB3_5 +; CHECK-NEXT: jg .LBB3_6 ; CHECK-NEXT: call block_a_true_func -; CHECK-NEXT: jmp .LBB3_6 -; CHECK-NEXT: .LBB3_5: -; CHECK-NEXT: call block_a_false_func +; CHECK-NEXT: jmp .LBB3_7 ; CHECK-NEXT: .LBB3_6: +; CHECK-NEXT: call block_a_false_func +; CHECK-NEXT: .LBB3_7: ; CHECK-NEXT: call block_a_merge_func ; CHECK-NEXT: .LBB3_1: ; CHECK-NEXT: call body |