//===- SPIRVEnums.cpp - MLIR SPIR-V Enums ---------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines the C/C++ enums from SPIR-V spec. // //===----------------------------------------------------------------------===// #include "mlir/Dialect/SPIRV/IR/SPIRVEnums.h" #include "llvm/ADT/SetVector.h" #include "llvm/ADT/StringExtras.h" #include <iterator> usingnamespacemlir; // Pull in all enum utility function definitions #include "mlir/Dialect/SPIRV/IR/SPIRVEnums.cpp.inc" // Pull in all enum type availability query function definitions #include "mlir/Dialect/SPIRV/IR/SPIRVEnumAvailability.cpp.inc" //===----------------------------------------------------------------------===// // Availability relationship //===----------------------------------------------------------------------===// ArrayRef<spirv::Extension> spirv::getImpliedExtensions(spirv::Version version) { … } // Pull in utility function definition for implied capabilities #include "mlir/Dialect/SPIRV/IR/SPIRVCapabilityImplication.inc" SmallVector<spirv::Capability, 0> spirv::getRecursiveImpliedCapabilities(spirv::Capability cap) { … }