|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
| #
d2c0572b |
| 19-Jul-2022 |
Jacques Pienaar <[email protected]> |
[mlir] Flip LinAlg dialect to _Both
This one required more changes than ideal due to overlapping generated name with different return types. Changed getIndexingMaps to getIndexingMapsArray to move i
[mlir] Flip LinAlg dialect to _Both
This one required more changes than ideal due to overlapping generated name with different return types. Changed getIndexingMaps to getIndexingMapsArray to move it out of the way/highlight that it returns (more expensively) a SmallVector and uses the prefixed name for the Attribute.
Differential Revision: https://reviews.llvm.org/D129919
show more ...
|
| #
f0c3fd18 |
| 19-Jul-2022 |
Benoit Jacob <[email protected]> |
Don't combine if there would remain no true reduction dim.
Differential Revision: https://reviews.llvm.org/D130109
|
| #
3c849d0a |
| 15-Jul-2022 |
Fangrui Song <[email protected]> |
Modernize Optional::{getValueOr,hasValue}
|
| #
c27d8152 |
| 14-Jul-2022 |
Kazu Hirata <[email protected]> |
[mlir] Use value instead of getValue (NFC)
|
| #
6870a50f |
| 04-Jul-2022 |
Benoit Jacob <[email protected]> |
lowerParallel is also called on unit-size, one-sided reduction dims
See: https://gist.github.com/bjacob/d8be8ec7e70ed0be4b3a5794ced2a7e8
Differential Revision: https://reviews.llvm.org/D129096
|
| #
491d2701 |
| 13-Jul-2022 |
Kazu Hirata <[email protected]> |
[mlir] Use has_value instead of hasValue (NFC)
|
| #
051b36ba |
| 12-Jul-2022 |
Thomas Raoux <[email protected]> |
[mlir][vector] Add accumulator operand to MultiDimReduce op
This allows vectorizing linalg reductions without changing the operation order. Therefore this produce a valid vectorization even if opera
[mlir][vector] Add accumulator operand to MultiDimReduce op
This allows vectorizing linalg reductions without changing the operation order. Therefore this produce a valid vectorization even if operations are not associative.
Differential Revision: https://reviews.llvm.org/D129535
show more ...
|
| #
c3839c0b |
| 04-Jul-2022 |
Benoit Jacob <[email protected]> |
CombineContractBroadcast should not create dims unused in LHS+RHS
Differential Revision: https://reviews.llvm.org/D129087
|
| #
694ad3ea |
| 28-Jun-2022 |
Benoit Jacob <[email protected]> |
Fix CombineContractBroadcast folding reduction iterators.
Fix CombineContractBroadcast folding reduction iterators.
Differential Revision: https://reviews.llvm.org/D128739
|
| #
fa596c69 |
| 23-Jun-2022 |
Mahesh Ravishankar <[email protected]> |
[mlir][Vector] Fix reordering of floating point adds during lower of `vector.contract`.
Adding the accumulator value after the `vector.contract` changes the precision of the operation. This makes su
[mlir][Vector] Fix reordering of floating point adds during lower of `vector.contract`.
Adding the accumulator value after the `vector.contract` changes the precision of the operation. This makes sure the accumulator is carried through to `vector.reduce` (and down to LLVM).
Differential Revision: https://reviews.llvm.org/D128674
show more ...
|
| #
3b7c3a65 |
| 25-Jun-2022 |
Kazu Hirata <[email protected]> |
Revert "Don't use Optional::hasValue (NFC)"
This reverts commit aa8feeefd3ac6c78ee8f67bf033976fc7d68bc6d.
|
| #
aa8feeef |
| 25-Jun-2022 |
Kazu Hirata <[email protected]> |
Don't use Optional::hasValue (NFC)
|
|
Revision tags: llvmorg-14.0.6 |
|
| #
8b68da2c |
| 17-Jun-2022 |
Alex Zinenko <[email protected]> |
[mlir] move SCF headers to SCF/{IR,Transforms} respectively
This aligns the SCF dialect file layout with the majority of the dialects.
Reviewed By: jpienaar
Differential Revision: https://reviews.
[mlir] move SCF headers to SCF/{IR,Transforms} respectively
This aligns the SCF dialect file layout with the majority of the dialects.
Reviewed By: jpienaar
Differential Revision: https://reviews.llvm.org/D128049
show more ...
|
| #
f011d32c |
| 16-Jun-2022 |
Thomas Raoux <[email protected]> |
[mlir][vector] Fix contraction op lowering with mixed types
contraction op can have mixed type, add support for this case to the pattern lowering contraction op to outerproduct.
Differential Revisi
[mlir][vector] Fix contraction op lowering with mixed types
contraction op can have mixed type, add support for this case to the pattern lowering contraction op to outerproduct.
Differential Revision: https://reviews.llvm.org/D127926
show more ...
|
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4 |
|
| #
89aaa2d0 |
| 24-May-2022 |
Thomas Raoux <[email protected]> |
[mlir][vector] Add new lowering mode to vector.contractionOp
Add lowering for cases where the reduction dimension is fully unrolled. It is common to unroll the reduction dimension, therefore we woul
[mlir][vector] Add new lowering mode to vector.contractionOp
Add lowering for cases where the reduction dimension is fully unrolled. It is common to unroll the reduction dimension, therefore we would want to lower the contractions to an elementwise vector op in this case.
Differential Revision: https://reviews.llvm.org/D126120
show more ...
|
| #
4c1b65e7 |
| 19-May-2022 |
Thomas Raoux <[email protected]> |
[mlir][vector] Fix crash in DropInnerMostUnitDims pattern
Fix number of dimensions when incrementally replacing dimensions in affine map.
Differential Revision: https://reviews.llvm.org/D125984
|
|
Revision tags: llvmorg-14.0.3, llvmorg-14.0.2 |
|
| #
4db65e27 |
| 15-Apr-2022 |
Lei Zhang <[email protected]> |
[mlir][vector] Reorder elementwise(transpose)
Similar to the existing pattern for reodering cast(transpose), this makes transpose following transpose and increases the chance of embedding the transp
[mlir][vector] Reorder elementwise(transpose)
Similar to the existing pattern for reodering cast(transpose), this makes transpose following transpose and increases the chance of embedding the transposition inside contraction op. Actually cast ops are just special instances of elementwise ops.
Reviewed By: ThomasRaoux
Differential Revision: https://reviews.llvm.org/D123596
show more ...
|
|
Revision tags: llvmorg-14.0.1 |
|
| #
35f48edb |
| 03-Apr-2022 |
Mehdi Amini <[email protected]> |
Apply clang-tidy fixes for llvm-qualified-auto in VectorTransforms.cpp (NFC)
|
| #
7bc8ad51 |
| 24-Mar-2022 |
Javier Setoain <[email protected]> |
[mlir][vector][nfc] Rename index optimizations option
We are using "enable-index-optimizations" and "indexOptimizations" as names for an optimization that consists of using i32 for indices within a
[mlir][vector][nfc] Rename index optimizations option
We are using "enable-index-optimizations" and "indexOptimizations" as names for an optimization that consists of using i32 for indices within a vector. For instance, when building a vector comparison for mask generation. The name is confusing and suggests a scope beyond these vector indices. This change makes the function of the option explicit in its name.
Differential Revision: https://reviews.llvm.org/D122415
show more ...
|
| #
7c38fd60 |
| 28-Mar-2022 |
Jacques Pienaar <[email protected]> |
[mlir] Flip Vector dialect accessors used to prefixed form.
This has been on _Both for a couple of weeks. Flip usages in core with intention to flip flag to _Prefixed in follow up. Needed to add a c
[mlir] Flip Vector dialect accessors used to prefixed form.
This has been on _Both for a couple of weeks. Flip usages in core with intention to flip flag to _Prefixed in follow up. Needed to add a couple of helper methods in AffineOps and Linalg to facilitate a pure flag flip in follow up as some of these classes are used in templates and so sensitive to Vector dialect changes.
Differential Revision: https://reviews.llvm.org/D122151
show more ...
|
| #
12bd1ef3 |
| 25-Mar-2022 |
Benjamin Kramer <[email protected]> |
[bazel] Add missing dependency after a75a46db89
|
|
Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init |
|
| #
a75a46db |
| 26-Jan-2022 |
Javier Setoain <[email protected]> |
[mlir][Vector] Enable create_mask for scalable vectors
The way vector.create_mask is currently lowered is vector-length-dependent, and therefore incompatible with scalable vector types. This patch a
[mlir][Vector] Enable create_mask for scalable vectors
The way vector.create_mask is currently lowered is vector-length-dependent, and therefore incompatible with scalable vector types. This patch adds an alternative lowering path for create_mask operations that return a scalable vector mask.
Differential Revision: https://reviews.llvm.org/D118248
show more ...
|
| #
14ecafd0 |
| 23-Mar-2022 |
Chia-hung Duan <[email protected]> |
[mlir] Make OpBuilder::createOperation to accept raw inputs
This provides a way to create an operation without manipulating OperationState directly. This is useful for creating unregistered ops.
Re
[mlir] Make OpBuilder::createOperation to accept raw inputs
This provides a way to create an operation without manipulating OperationState directly. This is useful for creating unregistered ops.
Reviewed By: rriddle, mehdi_amini
Differential Revision: https://reviews.llvm.org/D120787
show more ...
|
| #
f71f9958 |
| 10-Mar-2022 |
Diego Caballero <[email protected]> |
[mlir][Vector] Modernize default lowering of vector transpose
This patch removes an old recursive implementation to lower vector.transpose to extract/insert operations and replaces it with a iterati
[mlir][Vector] Modernize default lowering of vector transpose
This patch removes an old recursive implementation to lower vector.transpose to extract/insert operations and replaces it with a iterative approach that leverages newer linearization/delinearization utilities. The patch should be NFC except by the order in which the extract/insert ops are generated.
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D121321
show more ...
|
| #
f2b89c7a |
| 24-Feb-2022 |
Javier Setoain <[email protected]> |
[mlir][Vector] Use create_mask in transfer mask materializations
Currently, the transfer mask is materialized by generating the vector comparison: [offset + 0, .., offset + length - 1] < [dim, .., d
[mlir][Vector] Use create_mask in transfer mask materializations
Currently, the transfer mask is materialized by generating the vector comparison: [offset + 0, .., offset + length - 1] < [dim, .., dim]
A better alternative is to materialize the transfer mask by using the operation: `vector.create_mask (dim - offset)`, which will generate simpler code and compose better with scalable vectors.
Differential Revision: https://reviews.llvm.org/D120487
show more ...
|