summaryrefslogtreecommitdiffstats
path: root/mlir/test/Dialect/CMakeLists.txt
diff options
context:
space:
mode:
authorLei Zhang <antiagainst@google.com>2019-12-27 16:24:33 -0500
committerLei Zhang <antiagainst@google.com>2019-12-27 16:25:09 -0500
commitb30d87a90ba983d76f8a6cd334ac38244bbf9ded (patch)
tree1de94d9458e552ff6c90dadb621f66521659ca1d /mlir/test/Dialect/CMakeLists.txt
parentc3dbd782f1e0578c7ebc342f2e92f54d9644cff7 (diff)
downloadbcm5719-llvm-b30d87a90ba983d76f8a6cd334ac38244bbf9ded.tar.gz
bcm5719-llvm-b30d87a90ba983d76f8a6cd334ac38244bbf9ded.zip
[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/Dialect/CMakeLists.txt')
-rw-r--r--mlir/test/Dialect/CMakeLists.txt1
1 files changed, 1 insertions, 0 deletions
diff --git a/mlir/test/Dialect/CMakeLists.txt b/mlir/test/Dialect/CMakeLists.txt
new file mode 100644
index 00000000000..cc1766c6127
--- /dev/null
+++ b/mlir/test/Dialect/CMakeLists.txt
@@ -0,0 +1 @@
+add_subdirectory(SPIRV)
OpenPOWER on IntegriCloud