[llvm] r225566 - [PowerPC] Readjust the loop unrolling threshold
Hal Finkel
hfinkel at anl.gov
Fri Jan 9 16:31:10 PST 2015
Author: hfinkel
Date: Fri Jan 9 18:31:10 2015
New Revision: 225566
URL: http://llvm.org/viewvc/llvm-project?rev=225566&view=rev
Log:
[PowerPC] Readjust the loop unrolling threshold
Now that the way that the partial unrolling threshold for small loops is used
to compute the unrolling factor as been corrected, a slightly smaller threshold
is preferable. This is expected; other targets may need to re-tune as well.
Modified:
llvm/trunk/lib/Target/PowerPC/PPCScheduleP7.td
llvm/trunk/lib/Target/PowerPC/PPCScheduleP8.td
llvm/trunk/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll
Modified: llvm/trunk/lib/Target/PowerPC/PPCScheduleP7.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCScheduleP7.td?rev=225566&r1=225565&r2=225566&view=diff
==============================================================================
--- llvm/trunk/lib/Target/PowerPC/PPCScheduleP7.td (original)
+++ llvm/trunk/lib/Target/PowerPC/PPCScheduleP7.td Fri Jan 9 18:31:10 2015
@@ -380,8 +380,8 @@ def P7Model : SchedMachineModel {
// Itineraries are queried instead.
let MispredictPenalty = 16;
- // Try to make sure we have at least 10-11 dispatch groups in a loop.
- let LoopMicroOpBufferSize = 44;
+ // Try to make sure we have at least 10 dispatch groups in a loop.
+ let LoopMicroOpBufferSize = 40;
let Itineraries = P7Itineraries;
}
Modified: llvm/trunk/lib/Target/PowerPC/PPCScheduleP8.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCScheduleP8.td?rev=225566&r1=225565&r2=225566&view=diff
==============================================================================
--- llvm/trunk/lib/Target/PowerPC/PPCScheduleP8.td (original)
+++ llvm/trunk/lib/Target/PowerPC/PPCScheduleP8.td Fri Jan 9 18:31:10 2015
@@ -389,8 +389,8 @@ def P8Model : SchedMachineModel {
// Itineraries are queried instead.
let MispredictPenalty = 16;
- // Try to make sure we have at least 10-11 dispatch groups in a loop.
- let LoopMicroOpBufferSize = 66;
+ // Try to make sure we have at least 10 dispatch groups in a loop.
+ let LoopMicroOpBufferSize = 60;
let Itineraries = P8Itineraries;
}
Modified: llvm/trunk/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll?rev=225566&r1=225565&r2=225566&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll (original)
+++ llvm/trunk/test/Transforms/LoopUnroll/PowerPC/p7-unrolling.ll Fri Jan 9 18:31:10 2015
@@ -22,7 +22,31 @@ exit:
; CHECK-NEXT: add
; CHECK-NEXT: add
; CHECK-NEXT: add
-; CHECK: icmp
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: icmp
define void @unroll_default() nounwind {
entry:
@@ -47,5 +71,29 @@ exit:
; CHECK-NEXT: add
; CHECK-NEXT: add
; CHECK-NEXT: add
-; CHECK: icmp
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: add
+; CHECK-NEXT: icmp
More information about the llvm-commits
mailing list