88// ===----------------------------------------------------------------------===//
99
1010#include " mlir-c/Target/LLVMIR.h"
11+ #include " llvm-c/Support.h"
1112
1213#include " llvm/IR/LLVMContext.h"
1314#include " llvm/IR/Module.h"
14- #include " llvm/IR/Type.h "
15+ #include < memory >
1516
1617#include " mlir/CAPI/IR.h"
18+ #include " mlir/CAPI/Support.h"
1719#include " mlir/CAPI/Wrap.h"
1820#include " mlir/Target/LLVMIR/ModuleTranslation.h"
19- #include " mlir/Target/LLVMIR/TypeFromLLVM.h"
2021
2122using namespace mlir ;
2223
@@ -33,47 +34,3 @@ LLVMModuleRef mlirTranslateModuleToLLVMIR(MlirOperation module,
3334
3435 return moduleRef;
3536}
36-
37- DEFINE_C_API_PTR_METHODS (MlirTypeFromLLVMIRTranslator,
38- mlir::LLVM::TypeFromLLVMIRTranslator)
39-
40- MlirTypeFromLLVMIRTranslator
41- mlirTypeFromLLVMIRTranslatorCreate(MlirContext ctx) {
42- MLIRContext *context = unwrap (ctx);
43- auto *translator = new LLVM::TypeFromLLVMIRTranslator (*context);
44- return wrap (translator);
45- }
46-
47- void mlirTypeFromLLVMIRTranslatorDestroy (
48- MlirTypeFromLLVMIRTranslator translator) {
49- delete static_cast <LLVM::TypeFromLLVMIRTranslator *>(unwrap (translator));
50- }
51-
52- MlirType mlirTypeFromLLVMIRTranslatorTranslateType (
53- MlirTypeFromLLVMIRTranslator translator, LLVMTypeRef llvmType) {
54- LLVM::TypeFromLLVMIRTranslator *translator_ = unwrap (translator);
55- mlir::Type type = translator_->translateType (llvm::unwrap (llvmType));
56- return wrap (type);
57- }
58-
59- DEFINE_C_API_PTR_METHODS (MlirTypeToLLVMIRTranslator,
60- mlir::LLVM::TypeToLLVMIRTranslator)
61-
62- MlirTypeToLLVMIRTranslator
63- mlirTypeToLLVMIRTranslatorCreate(LLVMContextRef ctx) {
64- llvm::LLVMContext *context = llvm::unwrap (ctx);
65- auto *translator = new LLVM::TypeToLLVMIRTranslator (*context);
66- return wrap (translator);
67- }
68-
69- void mlirTypeToLLVMIRTranslatorDestroy (MlirTypeToLLVMIRTranslator translator) {
70- delete static_cast <LLVM::TypeToLLVMIRTranslator *>(unwrap (translator));
71- }
72-
73- LLVMTypeRef
74- mlirTypeToLLVMIRTranslatorTranslateType (MlirTypeToLLVMIRTranslator translator,
75- MlirType mlirType) {
76- LLVM::TypeToLLVMIRTranslator *translator_ = unwrap (translator);
77- llvm::Type *type = translator_->translateType (unwrap (mlirType));
78- return llvm::wrap (type);
79- }
0 commit comments