[all-commits] [llvm/llvm-project] 14028e: [mlir][spirv] Add canon patterns for IAddCarry/[S|...
Finn Plummer via All-commits
all-commits at lists.llvm.org
Wed Nov 29 11:32:47 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 14028ec0a62210d68a4dd7a046ac79c8c3b7727e
https://github.com/llvm/llvm-project/commit/14028ec0a62210d68a4dd7a046ac79c8c3b7727e
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2023-11-29 (Wed, 29 Nov 2023)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVArithmeticOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][spirv] Add canon patterns for IAddCarry/[S|U]MulExtended (#73340)
Add missing constant propogation folder for IAddCarry and
[S|U]MulExtended. Due to currently missing constant value for
spirv.struct the folding is done using canonicalization patterns.
Implement additional folding when rhs is 0 for all ops and when rhs is 1
for UMulExt.
This helps for readability of lowered code into SPIR-V.
Part of work for #70704
More information about the All-commits
mailing list