[all-commits] [llvm/llvm-project] 560564: [mlir][vector][gpu] Align minf/maxf reduction kind...
Jakub Kuderski via All-commits
all-commits at lists.llvm.org
Tue Dec 19 21:14:56 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 560564f51c626cf89920f13b6cea96684bac5848
https://github.com/llvm/llvm-project/commit/560564f51c626cf89920f13b6cea96684bac5848
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2023-12-20 (Wed, 20 Dec 2023)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorAttributes.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/Transforms/AllReduceLowering.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorScan.cpp
M mlir/test/Conversion/GPUToSPIRV/reductions.mlir
M mlir/test/Conversion/VectorToLLVM/vector-reduction-to-llvm.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Dialect/GPU/all-reduce-maxf.mlir
M mlir/test/Dialect/GPU/invalid.mlir
M mlir/test/Dialect/Vector/break-down-vector-reduction.mlir
M mlir/test/Dialect/Vector/ops.mlir
M mlir/test/Dialect/Vector/vector-contract-to-outerproduct-matvec-transforms.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-reductions-f32-reassoc.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-reductions-f32.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-reductions-f64-reassoc.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-reductions-f64.mlir
Log Message:
-----------
[mlir][vector][gpu] Align minf/maxf reduction kind names with arith (#75901)
This is to avoid confusion when dealing with reduction/combining kinds.
For example, see a recent PR comment:
https://github.com/llvm/llvm-project/pull/75846#discussion_r1430722175.
Previously, they were picked to mostly mirror the names of the llvm
vector reduction intrinsics:
https://llvm.org/docs/LangRef.html#llvm-vector-reduce-fmin-intrinsic. In
isolation, it was not clear if `<maxf>` has `arith.maxnumf` or
`arith.maximumf` semantics. The new reduction kind names map 1:1 to
arith ops, which makes it easier to tell/look up their semantics.
Because both the vector and the gpu dialect depend on the arith dialect,
it's more natural to align names with those in arith than with the
lowering to llvm intrinsics.
Issue: https://github.com/llvm/llvm-project/issues/72354
More information about the All-commits
mailing list