[all-commits] [llvm/llvm-project] d905c1: Add a mechanism for Dialects to provide a fallback...

Mehdi Amini via All-commits all-commits at lists.llvm.org
Wed Mar 24 01:42:02 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d905c1035395fb27a5599f3da20ade6874718549
      https://github.com/llvm/llvm-project/commit/d905c1035395fb27a5599f3da20ade6874718549
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2021-03-24 (Wed, 24 Mar 2021)

  Changed paths:
    M mlir/docs/Interfaces.md
    M mlir/include/mlir/IR/Dialect.h
    M mlir/include/mlir/IR/OpBase.td
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/include/mlir/IR/SymbolInterfaces.td
    M mlir/include/mlir/Support/InterfaceSupport.h
    M mlir/include/mlir/TableGen/Dialect.h
    M mlir/lib/TableGen/Dialect.cpp
    M mlir/test/IR/test-side-effects.mlir
    M mlir/test/lib/Dialect/Test/TestDialect.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/tools/mlir-tblgen/DialectGen.cpp
    M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  Add a mechanism for Dialects to provide a fallback for OpInterface

This mechanism makes it possible for a dialect to not register all
operations but still answer interface-based queries.
This can useful for dialects that are "open" or connected to an external
system and still interoperate with the compiler. It can also open up the
possibility to have a more extensible compiler at runtime: the compiler
does not need a pre-registration for each operation and the dialect can
inject behavior dynamically.

Reviewed By: rriddle, jpienaar

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




More information about the All-commits mailing list