aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/loop-blocks.ll
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-10-22 00:03:58 +0000
committerDan Gohman <gohman@apple.com>2009-10-22 00:03:58 +0000
commit6d31268a7dc9854fa5a5cb9227ba9a15c5898414 (patch)
treed576ce525ca584fd1497c2c0bf8bb80ac2052712 /test/CodeGen/X86/loop-blocks.ll
parent49708ad993529611cedfbe49ae44bb10beb73abe (diff)
downloadexternal_llvm-6d31268a7dc9854fa5a5cb9227ba9a15c5898414.zip
external_llvm-6d31268a7dc9854fa5a5cb9227ba9a15c5898414.tar.gz
external_llvm-6d31268a7dc9854fa5a5cb9227ba9a15c5898414.tar.bz2
Revert the main portion of r31856. It was causing BranchFolding
to break up CFG diamonds by banishing one of the blocks to the end of the function, which is bad for code density and branch size. This does pessimize MultiSource/Benchmarks/Ptrdist/yacr2, the benchmark cited as the reason for the change, however I've examined the code and it looks more like a case of gaming a particular branch than of being generally applicable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84803 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/loop-blocks.ll')
-rw-r--r--test/CodeGen/X86/loop-blocks.ll12
1 files changed, 6 insertions, 6 deletions
diff --git a/test/CodeGen/X86/loop-blocks.ll b/test/CodeGen/X86/loop-blocks.ll
index af50bd9..c0379d1 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_7:
-; CHECK-NEXT: call block_a_true_func
-; CHECK-NEXT: jmp .LBB3_4
-; CHECK-NEXT: .LBB3_2:
+; CHECK-NEXT: .LBB3_3:
; CHECK-NEXT: call bar99
; CHECK-NEXT: call get
; CHECK-NEXT: cmpl $2999, %eax
-; CHECK-NEXT: jle .LBB3_7
+; CHECK-NEXT: jg .LBB3_5
+; 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: .LBB3_4:
+; CHECK-NEXT: .LBB3_6:
; CHECK-NEXT: call block_a_merge_func
; CHECK-NEXT: .LBB3_1:
; CHECK-NEXT: call body