summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/ARM/code-placement.ll
diff options
context:
space:
mode:
authorGuozhi Wei <carrot@google.com>2019-08-22 16:21:32 +0000
committerGuozhi Wei <carrot@google.com>2019-08-22 16:21:32 +0000
commit51f48295cbe8fa3a44db263b528dd9f7bae7bf9a (patch)
tree28614c4e7fca7431bf287b07453443bacab0f39b /llvm/test/CodeGen/ARM/code-placement.ll
parent95cf66de7cc186253c59a009bb795da1cbe9d6f4 (diff)
downloadbcm5719-llvm-51f48295cbe8fa3a44db263b528dd9f7bae7bf9a.tar.gz
bcm5719-llvm-51f48295cbe8fa3a44db263b528dd9f7bae7bf9a.zip
[MBP] Disable aggressive loop rotate in plain mode
Patch https://reviews.llvm.org/D43256 introduced more aggressive loop layout optimization which depends on profile information. If profile information is not available, the statically estimated profile information(generated by BranchProbabilityInfo.cpp) is used. If user program doesn't behave as BranchProbabilityInfo.cpp expected, the layout may be worse. To be conservative this patch restores the original layout algorithm in plain mode. But user can still try the aggressive layout optimization with -force-precise-rotation-cost=true. Differential Revision: https://reviews.llvm.org/D65673 llvm-svn: 369664
Diffstat (limited to 'llvm/test/CodeGen/ARM/code-placement.ll')
-rw-r--r--llvm/test/CodeGen/ARM/code-placement.ll4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/ARM/code-placement.ll b/llvm/test/CodeGen/ARM/code-placement.ll
index e0db88aa670..362a0902883 100644
--- a/llvm/test/CodeGen/ARM/code-placement.ll
+++ b/llvm/test/CodeGen/ARM/code-placement.ll
@@ -38,9 +38,8 @@ entry:
br i1 %0, label %bb5, label %bb.nph15
bb1: ; preds = %bb2.preheader, %bb1
-; CHECK: LBB1_[[BB3:.]]: @ %bb3
; CHECK: LBB1_[[PREHDR:.]]: @ %bb2.preheader
-; CHECK: bmi LBB1_[[BB3]]
+; CHECK: bmi LBB1_[[BB3:.]]
%indvar = phi i32 [ %indvar.next, %bb1 ], [ 0, %bb2.preheader ] ; <i32> [#uses=2]
%sum.08 = phi i32 [ %2, %bb1 ], [ %sum.110, %bb2.preheader ] ; <i32> [#uses=1]
%tmp17 = sub i32 %i.07, %indvar ; <i32> [#uses=1]
@@ -54,6 +53,7 @@ bb1: ; preds = %bb2.preheader, %bb1
bb3: ; preds = %bb1, %bb2.preheader
; CHECK: LBB1_[[BB1:.]]: @ %bb1
; CHECK: bne LBB1_[[BB1]]
+; CHECK: LBB1_[[BB3]]: @ %bb3
%sum.0.lcssa = phi i32 [ %sum.110, %bb2.preheader ], [ %2, %bb1 ] ; <i32> [#uses=2]
%3 = add i32 %pass.011, 1 ; <i32> [#uses=2]
%exitcond18 = icmp eq i32 %3, %passes ; <i1> [#uses=1]
OpenPOWER on IntegriCloud