1 //===- SPIRVToLLVMIRTranslation.cpp - Translate SPIR-V to LLVM IR ---------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // This file implements a translation between the MLIR SPIR-V dialect and 10 // LLVM IR. 11 // 12 //===----------------------------------------------------------------------===// 13 14 #include "mlir/Target/LLVMIR/Dialect/SPIRV/SPIRVToLLVMIRTranslation.h" 15 #include "mlir/Dialect/SPIRV/IR/SPIRVDialect.h" 16 #include "mlir/IR/BuiltinAttributes.h" 17 #include "mlir/IR/Operation.h" 18 #include "mlir/Target/LLVMIR/ModuleTranslation.h" 19 20 using namespace mlir; 21 using namespace mlir::LLVM; 22 registerSPIRVDialectTranslation(DialectRegistry & registry)23void mlir::registerSPIRVDialectTranslation(DialectRegistry ®istry) { 24 registry.insert<spirv::SPIRVDialect>(); 25 } 26 registerSPIRVDialectTranslation(MLIRContext & context)27void mlir::registerSPIRVDialectTranslation(MLIRContext &context) { 28 DialectRegistry registry; 29 registerSPIRVDialectTranslation(registry); 30 context.appendDialectRegistry(registry); 31 } 32