diff options
author | Lei Zhang <antiagainst@google.com> | 2019-12-27 16:24:33 -0500 |
---|---|---|
committer | Lei Zhang <antiagainst@google.com> | 2019-12-27 16:25:09 -0500 |
commit | b30d87a90ba983d76f8a6cd334ac38244bbf9ded (patch) | |
tree | 1de94d9458e552ff6c90dadb621f66521659ca1d /mlir/test/CMakeLists.txt | |
parent | c3dbd782f1e0578c7ebc342f2e92f54d9644cff7 (diff) | |
download | llvm-b30d87a90ba983d76f8a6cd334ac38244bbf9ded.zip llvm-b30d87a90ba983d76f8a6cd334ac38244bbf9ded.tar.gz llvm-b30d87a90ba983d76f8a6cd334ac38244bbf9ded.tar.bz2 |
[mlir][spirv] Add basic definitions for supporting availability
SPIR-V has a few mechanisms to control op availability: version,
extension, and capabilities. These mechanisms are considered as
different availability classes.
This commit introduces basic definitions for modelling SPIR-V
availability classes. Specifically, an `Availability` class is
added to SPIRVBase.td, along with two subclasses: MinVersion
and MaxVersion for versioning. SPV_Op is extended to take a
list of `Availability`. Each `Availability` instance carries
information for generating op interfaces for the corresponding
availability class and also the concrete availability
requirements.
With the availability spec on ops, we can now auto-generate the
op interfaces of all SPIR-V availability classes and also
synthesize the op's implementations of these interfaces. The
interface generation is done via new TableGen backends
-gen-avail-interface-{decls|defs}. The op's implementation is
done via -gen-spirv-avail-impls.
Differential Revision: https://reviews.llvm.org/D71930
Diffstat (limited to 'mlir/test/CMakeLists.txt')
-rw-r--r-- | mlir/test/CMakeLists.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt index 9579254..571a0d8 100644 --- a/mlir/test/CMakeLists.txt +++ b/mlir/test/CMakeLists.txt @@ -1,3 +1,4 @@ +add_subdirectory(Dialect) add_subdirectory(EDSC) add_subdirectory(mlir-cpu-runner) add_subdirectory(SDBM) |