aboutsummaryrefslogtreecommitdiff
path: root/mlir/lib/CAPI/Target/LLVMIR.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mlir/lib/CAPI/Target/LLVMIR.cpp')
-rw-r--r--mlir/lib/CAPI/Target/LLVMIR.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/mlir/lib/CAPI/Target/LLVMIR.cpp b/mlir/lib/CAPI/Target/LLVMIR.cpp
index 1c1912a..00229df 100644
--- a/mlir/lib/CAPI/Target/LLVMIR.cpp
+++ b/mlir/lib/CAPI/Target/LLVMIR.cpp
@@ -34,6 +34,15 @@ LLVMModuleRef mlirTranslateModuleToLLVMIR(MlirOperation module,
return moduleRef;
}
+char *mlirTranslateModuleToLLVMIRToString(MlirOperation module) {
+ LLVMContextRef llvmCtx = LLVMContextCreate();
+ LLVMModuleRef llvmModule = mlirTranslateModuleToLLVMIR(module, llvmCtx);
+ char *llvmir = LLVMPrintModuleToString(llvmModule);
+ LLVMDisposeModule(llvmModule);
+ LLVMContextDispose(llvmCtx);
+ return llvmir;
+}
+
DEFINE_C_API_PTR_METHODS(MlirTypeFromLLVMIRTranslator,
mlir::LLVM::TypeFromLLVMIRTranslator)