[all-commits] [llvm/llvm-project] b2d76a: TOSA-to-Linalg lowering for element-wise ops

rafaelubalmw via All-commits all-commits at lists.llvm.org
Fri Jul 21 15:09:51 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b2d76a063dd7fb681c98a10d8e7f54fd6d25dd27
      https://github.com/llvm/llvm-project/commit/b2d76a063dd7fb681c98a10d8e7f54fd6d25dd27
  Author: Rafael Ubal Tena <rubal at mathworks.com>
  Date:   2023-07-21 (Fri, 21 Jul 2023)

  Changed paths:
    R mlir/docs/Traits.md
    A mlir/docs/Traits/Broadcastable.md
    A mlir/docs/Traits/_index.md
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Dialect/Traits.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/Dialect/traits.mlir

  Log Message:
  -----------
  TOSA-to-Linalg lowering for element-wise ops

- Wrote complete documentation for the `Broadcastable` op trait. This is mostly meant as a thorough description of its previous behavior, with the exception of minor feature updates.

- Restricted legality criteria for a `Broadcastable` op in order to simplify current and future lowering passes and increase efficiency of code generated by those passes. New restriction are: 1) A dynamic dimension in an inferred result is not compatible with a static dimension in the actual result. 2) Broadcast semantics are restricted to input operands and not supported between inferred and actual result shapes.

- Implemented TOSA-to-Linalg lowering support for unary, binary, tertiary element-wise ops. This support is complete for all legal cases described in the `Broadcastable` trait documentation.

- Added unit tests for `tosa.abs`, `tosa.add`, and `tosa.select` as examples of unary, binary, and tertiary ops.

Reviewed By: eric-k256

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




More information about the All-commits mailing list