//===- TypeFromLLVM.h - Translate types from LLVM to MLIR --*- C++ -*-===// // // 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 declares the type translation function going from MLIR LLVM dialect // to LLVM IR and back. // //===----------------------------------------------------------------------===// #ifndef MLIR_TARGET_LLVMIR_TYPEFROMLLVM_H #define MLIR_TARGET_LLVMIR_TYPEFROMLLVM_H #include <memory> namespace llvm { class DataLayout; class LLVMContext; class Type; } // namespace llvm namespace mlir { class Type; class MLIRContext; namespace LLVM { namespace detail { class TypeFromLLVMIRTranslatorImpl; } // namespace detail /// Utility class to translate LLVM IR types to the MLIR LLVM dialect. Stores /// the translation state, in particular any identified structure types that are /// reused across translations. class TypeFromLLVMIRTranslator { … }; } // namespace LLVM } // namespace mlir #endif // MLIR_TARGET_LLVMIR_TYPEFROMLLVM_H