[all-commits] [llvm/llvm-project] dbf42f: Reland "[mlir][arith] Add canonicalization pattern...

Jakub Kuderski via All-commits all-commits at lists.llvm.org
Tue Dec 13 11:35:34 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dbf42f0b1269eacb928efc079fd6ee54975c91da
      https://github.com/llvm/llvm-project/commit/dbf42f0b1269eacb928efc079fd6ee54975c91da
  Author: Jakub Kuderski <kubak at google.com>
  Date:   2022-12-13 (Tue, 13 Dec 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/test/Dialect/Arith/canonicalize.mlir

  Log Message:
  -----------
  Reland "[mlir][arith] Add canonicalization patterns for 'mul*i_extended'"

- Add a fold for `mulsi_extended(x, 1)`
- Add folds to demote wide integer multiplication to `mul*i_extended` when the result is shifted
   and truncated: `trunci(shrui(mul(*ext(x), *ext(y)), c)) -> mul*i_extended(x, y)`

Reviewed By: Mogball, jpienaar

Differential Revision: https://reviews.llvm.org/D139778




More information about the All-commits mailing list