Changeset View
Changeset View
Standalone View
Standalone View
polly/test/ScheduleOptimizer/pattern-matching-based-opts_13.ll
; RUN: opt %loadPolly -polly-pattern-matching-based-opts=true \ | ; RUN: opt %loadPolly -polly-pattern-matching-based-opts=true \ | ||||
; RUN: -polly-target-throughput-vector-fma=2 \ | ; RUN: -polly-target-throughput-vector-fma=2 \ | ||||
; RUN: -polly-target-latency-vector-fma=8 \ | ; RUN: -polly-target-latency-vector-fma=8 \ | ||||
; RUN: -polly-target-1st-cache-level-associativity=8 \ | ; RUN: -polly-target-1st-cache-level-associativity=8 \ | ||||
; RUN: -polly-target-2nd-cache-level-associativity=8 \ | ; RUN: -polly-target-2nd-cache-level-associativity=8 \ | ||||
; RUN: -polly-target-1st-cache-level-size=32768 \ | ; RUN: -polly-target-1st-cache-level-size=32768 \ | ||||
; RUN: -polly-target-vector-register-bitwidth=128 \ | ; RUN: -polly-target-vector-register-bitwidth=128 \ | ||||
; RUN: -polly-target-2nd-cache-level-size=262144 \ | ; RUN: -polly-target-2nd-cache-level-size=262144 \ | ||||
; RUN: -polly-opt-isl -polly-print-ast -disable-output < %s | FileCheck %s | ; RUN: -polly-opt-isl -polly-print-ast -disable-output < %s | FileCheck %s | ||||
; | ; | ||||
; Test whether isolation works as expected. | ; Test whether isolation works as expected. | ||||
; | ; | ||||
; CHECK: // 1st level tiling - Tiles | ; CHECK: // 1st level tiling - Tiles | ||||
; CHECK-NEXT: for (int c0 = 0; c0 <= 1; c0 += 1) | ; CHECK-NEXT: for (int c0 = 0; c0 <= 1; c0 += 1) | ||||
; CHECK-NEXT: for (int c1 = 0; c1 <= 6; c1 += 1) { | ; CHECK-NEXT: for (int c1 = 0; c1 <= 6; c1 += 1) { | ||||
; CHECK-NEXT: for (int c3 = 1536 * c0; c3 <= min(1999, 1536 * c0 + 1535); c3 += 1) | |||||
; CHECK-NEXT: for (int c4 = 307 * c1; c4 <= min(1999, 307 * c1 + 306); c4 += 1) | ; CHECK-NEXT: for (int c4 = 307 * c1; c4 <= min(1999, 307 * c1 + 306); c4 += 1) | ||||
; CHECK-NEXT: CopyStmt_0(0, c3, c4); | ; CHECK-NEXT: for (int c5 = 1536 * c0; c5 <= min(1999, 1536 * c0 + 1535); c5 += 1) | ||||
; CHECK-NEXT: CopyStmt_0(c0, c1, c4, c5); | |||||
; CHECK-NEXT: for (int c2 = 0; c2 <= 24; c2 += 1) { | ; CHECK-NEXT: for (int c2 = 0; c2 <= 24; c2 += 1) { | ||||
; CHECK-NEXT: for (int c6 = 80 * c2; c6 <= 80 * c2 + 79; c6 += 1) | ; CHECK-NEXT: for (int c6 = 80 * c2; c6 <= 80 * c2 + 79; c6 += 1) | ||||
; CHECK-NEXT: for (int c7 = 307 * c1; c7 <= min(1999, 307 * c1 + 306); c7 += 1) | ; CHECK-NEXT: for (int c7 = 307 * c1; c7 <= min(1999, 307 * c1 + 306); c7 += 1) | ||||
; CHECK-NEXT: CopyStmt_1(c0, c1, c2, c6, c7); | ; CHECK-NEXT: CopyStmt_1(c0, c1, c2, c6, c7); | ||||
; CHECK-NEXT: // 1st level tiling - Points | ; CHECK-NEXT: // 1st level tiling - Points | ||||
; CHECK-NEXT: // Register tiling - Tiles | ; CHECK-NEXT: // Register tiling - Tiles | ||||
; CHECK-NEXT: { | ; CHECK-NEXT: { | ||||
; CHECK-NEXT: for (int c3 = 0; c3 <= min(255, -256 * c0 + 332); c3 += 1) | ; CHECK-NEXT: for (int c3 = 0; c3 <= min(255, -256 * c0 + 332); c3 += 1) | ||||
▲ Show 20 Lines • Show All 105 Lines • Show Last 20 Lines |