Home
last modified time | relevance | path

Searched refs:interchange (Results 1 – 25 of 58) sorted by relevance

123

/llvm-project-15.0.7/llvm/test/Transforms/LoopInterchange/
H A Dloop-interchange-optimization-remarks.ll4 ; RUN: -pass-remarks-output=%t -pass-remarks-missed='loop-interchange' \
5 ; RUN: -pass-remarks='loop-interchange' -S
18 ;; Loops interchange is not profitable.
62 ; CHECK-NEXT: Pass: loop-interchange
70 ; DELIN-NEXT: Pass: loop-interchange
122 ; CHECK-NEXT: Pass: loop-interchange
130 ; DELIN-NEXT: Pass: loop-interchange
178 ; CHECK-NEXT: Pass: loop-interchange
186 ; DELIN-NEXT: Pass: loop-interchange
241 ; CHECK-NEXT: Pass: loop-interchange
[all …]
H A Dcall-instructions.ll2 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
14 ;; Not safe to interchange, because the called function `foo` is not marked as
25 ; CHECK-NEXT: Pass: loop-interchange
29 ; CHECK-NEXT: - String: Cannot interchange loops due to call instruction.
66 ;; Safe to interchange, because the called function `bar` is marked as readnone,
77 ; CHECK-NEXT: Pass: loop-interchange
119 ; STATS: 1 loop-interchange - Number of loops interchanged
H A Dpr43326-ideal-access-pattern.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
5 ; Triply nested loop, should be able to do interchange three times
18 ; REMARKS-NEXT: Pass: loop-interchange
22 ; REMARKS-NEXT: Pass: loop-interchange
26 ; REMARKS-NEXT: Pass: loop-interchange
H A Dinterchange-no-deps.ll2 ; RUN: opt < %s -loop-interchange -cache-line-size=64 -simplifycfg -simplifycfg-require-and-preserv…
3 ; RUN: -pass-remarks=loop-interchange -pass-remarks-missed=loop-interchange -stats -S 2>&1 \
8 ; no_deps_interchange just accesses a single nested array and can be interchange.
66 ; STATS: 1 loop-interchange - Number of loops interchanged
H A Dprofitability.ll1 ; RUN: opt < %s -loop-interchange -cache-line-size=64 -pass-remarks-output=%t -verify-dom-info -ver…
2 ; RUN: -pass-remarks=loop-interchange -pass-remarks-missed=loop-interchange
13 ;; Loops interchange will result in code vectorization and hence profitable. Check for interchange.
53 ;; Check loop interchange profitability model.
94 ;; Loops interchange is not profitable.
H A DcurrentLimitation.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
5 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
64 ; When currently cannot interchange this loop, because transform currently
H A Dpr48212.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
6 ; REMARKS-NEXT: Pass: loop-interchange
H A Dreductions-across-inner-and-outer-loop.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
9 ; REMARKS-NEXT: Pass: loop-interchange
79 ; reduction PHI %sum.outer, do not interchange.
81 ; REMARKS-NEXT: Pass: loop-interchange
115 ; Check that we do not interchange if there is an additional instruction
118 ; REMARKS-NEXT: Pass: loop-interchange
155 ; REMARKS-NEXT: Pass: loop-interchange
191 ; Check that we do not interchange or crash if the PHI in the outer loop gets a
194 ; REMARKS-NEXT: Pass: loop-interchange
233 ; REMARKS-NEXT: Pass: loop-interchange
[all …]
H A Dinner-only-reductions.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
20 ; CHECK-NEXT: Pass: loop-interchange
60 ;; Not tightly nested. Do not interchange.
69 ;; Not tightly nested. Do not interchange.
73 ; CHECK-NEXT: Pass: loop-interchange
H A Douter-only-reductions.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
18 ; CHECK-NEXT: Pass: loop-interchange
H A Dinterchange-insts-between-indvar.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info \
2 ; RUN: -S -pass-remarks=loop-interchange 2>&1 | FileCheck %s
37 ; With two stores in the loop there may be WAW dependences, and interchange is illegal.
H A Dvector-gep-operand.ll2 ; RUN: opt -loop-interchange -cache-line-size=64 -loop-interchange-threshold=-10 -S %s | FileCheck …
5 ; loop-interchange does not crash.
H A Dinnermost-latch-uses-values-in-middle-header.ll2 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info \
9 ;; doing interchange for the (new) middle loop and the outermost loop, because of
12 ; CHECK: Loops are legal to interchange
H A Dpr43326.ll1 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-intercha…
12 ; REMARKS-NEXT: Pass: loop-interchange
H A Dinterchanged-loop-nest-3.ll2 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info \
9 ;; Test for interchange in loop nest greater than 2.
H A Dnot-interchanged-loop-nest-3.ll2 ; RUN: opt < %s -basic-aa -loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info \
9 ;; Test for interchange in loop nest greater than 2.
/llvm-project-15.0.7/mlir/lib/Dialect/SCF/Transforms/
H A DTileUsingInterface.cpp63 ArrayRef<unsigned> interchange) { in applyPermutationToVector() argument
64 assert(interchange.size() == vector.size()); in applyPermutationToVector()
66 llvm::map_range(interchange, [&](unsigned val) { return vector[val]; })); in applyPermutationToVector()
70 invertPermutationVector(ArrayRef<unsigned> interchange) { in invertPermutationVector() argument
71 SmallVector<unsigned> inversion(interchange.size()); in invertPermutationVector()
72 for (auto pos : llvm::enumerate(interchange)) { in invertPermutationVector()
78 static bool isPermutation(ArrayRef<unsigned> interchange) { in isPermutation() argument
80 for (auto val : interchange) { in isPermutation()
85 return seenVals.size() == interchange.size(); in isPermutation()
/llvm-project-15.0.7/mlir/test/Dialect/Linalg/
H A Dtransform-ops.mlir23 // CHECK: transform.structured.interchange
24 %0 = transform.structured.interchange %arg0
H A Dtransform-op-interchange.mlir26 transform.structured.interchange %0 { iterator_interchange = [1, 0]}
44 transform.structured.interchange %0 { iterator_interchange = [1, 0]}
/llvm-project-15.0.7/mlir/test/python/dialects/
H A Dtransform_structured_ext.py118 structured.TileOp(sequence.bodyTarget, sizes=[4, 8], interchange=[0, 1])
134 structured.TileOp(sequence.bodyTarget, sizes=attr, interchange=ichange)
147 sequence.bodyTarget, sizes=[4, 0, 2, 0], interchange=[0, 1, 2, 3])
/llvm-project-15.0.7/mlir/python/mlir/dialects/
H A D_structured_transform_ops_ext.py219 interchange: OptionalIntList = None,
251 interchange=_get_int_array_attr(interchange) if interchange else None,
/llvm-project-15.0.7/mlir/include/mlir/Dialect/SCF/Transforms/
H A DTileUsingInterface.h57 SCFTilingOptions &setInterchange(ArrayRef<unsigned> interchange) { in setInterchange()
58 interchangeVector = llvm::to_vector(interchange); in setInterchange()
/llvm-project-15.0.7/llvm/test/Transforms/LICM/
H A Dlnicm.ll2 ; RUN: opt -aa-pipeline=basic-aa -passes='loop(loop-interchange)' -cache-line-size=64 -S %s | FileC…
3 ; RUN: opt -aa-pipeline=basic-aa -passes='loop-mssa(lnicm),loop(loop-interchange)' -cache-line-size…
4 ; RUN: opt -aa-pipeline=basic-aa -passes='loop-mssa(licm),loop(loop-interchange)' -cache-line-size=…
17 ; perfect loop nest (e.g. loop-interchange) to perform.
21 ; The loopnest is not interchanged when we only run loop interchange.
64 ; The loopnest is interchanged when we run lnicm and loop interchange.
116 ; The loopnest is not interchanged when we run licm and loop interchange.
/llvm-project-15.0.7/llvm/test/Other/
H A Dloopnest-callback.ll1 ;RUN: opt -disable-output -passes=loop-interchange -print-after-all < %s 2>&1 | FileCheck %s
/llvm-project-15.0.7/mlir/test/lib/Interfaces/TilingInterface/
H A DTestTilingInterface.cpp152 ArrayRef<unsigned> interchange = {}) { in addPatternForTiling() argument
154 tilingOptions.setTileSizes(tileSizes).setInterchange(interchange);

123