[all-commits] [llvm/llvm-project] cb6ff7: [mlir][ArmNeon] Implements LowerVectorToArmNeon Pa...
Kojo Acquah via All-commits
all-commits at lists.llvm.org
Fri Mar 8 14:50:34 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: cb6ff746e0c7b9218b6f5c11db44162cacd623a4
https://github.com/llvm/llvm-project/commit/cb6ff746e0c7b9218b6f5c11db44162cacd623a4
Author: Kojo Acquah <KoolJBlack at users.noreply.github.com>
Date: 2024-03-08 (Fri, 08 Mar 2024)
Changed paths:
A mlir/include/mlir/Dialect/ArmNeon/Transforms.h
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Dialect/ArmNeon/CMakeLists.txt
A mlir/lib/Dialect/ArmNeon/IR/CMakeLists.txt
A mlir/lib/Dialect/ArmNeon/Transforms/CMakeLists.txt
A mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
A mlir/test/Dialect/ArmNeon/lower-to-arm-neon.mlir
A mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
A mlir/test/lib/Dialect/ArmNeon/TestLowerToArmNeon.cpp
M mlir/test/lib/Dialect/CMakeLists.txt
M mlir/tools/mlir-opt/CMakeLists.txt
M mlir/tools/mlir-opt/mlir-opt.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][ArmNeon] Implements LowerVectorToArmNeon Pattern for SMMLA (#81895)
This patch adds a the `LowerVectorToArmNeonPattern` patterns to the
ArmNeon.
This pattern inspects `vector.contract` ops that can be 1-1 mapped to an
`arm.neon.smmla` intrinsic. The contract ops must be separated into
tiles who's inputs must fit that of a single smmla op (`2x8xi32` inputs
and `2x2xi32` output). The `vector.contract` inputs must be sign
extended from narrow types (<=i8) to be converted. If all conditions are
met, an smmla op is inserted with additional `vector.shape_casts` to
handle linearizing the input and output dimension.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list