[all-commits] [llvm/llvm-project] a81cb1: [mlir][spirv] Allow specifying availability on enu...

Lei Zhang via All-commits all-commits at lists.llvm.org
Thu Jan 2 10:20:38 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a81cb1b8bf580d6ab15d9ed6ff4f104eeedd3a1d
      https://github.com/llvm/llvm-project/commit/a81cb1b8bf580d6ab15d9ed6ff4f104eeedd3a1d
  Author: Lei Zhang <antiagainst at google.com>
  Date:   2020-01-02 (Thu, 02 Jan 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
    M mlir/include/mlir/Dialect/SPIRV/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/SPIRVTypes.h
    M mlir/include/mlir/TableGen/Attribute.h
    M mlir/lib/Dialect/SPIRV/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/SPIRVTypes.cpp
    M mlir/lib/TableGen/Attribute.cpp
    M mlir/test/Dialect/SPIRV/TestAvailability.cpp
    M mlir/test/Dialect/SPIRV/availability.mlir
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [mlir][spirv] Allow specifying availability on enum attribute cases

Lots of SPIR-V ops take enum attributes and certain enum cases
need extra capabilities or extensions to be available. This commit
extends to allow specifying availability spec on enum cases.
Extra utility functions are generated for the corresponding enum
classes to return the availability requirement. The availability
interface implemention for a SPIR-V op now goes over all enum
attributes to collect the availability requirements.

Reviewed By: mravishankar

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




More information about the All-commits mailing list