From 5fb6e6364b6b10e98430140554e644697f29eb06 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 5 May 2011 11:34:15 -0700 Subject: rustc: Add a binding to LLVM's bitcode parser --- src/rustllvm/RustWrapper.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/rustllvm/RustWrapper.cpp') diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index 01ea6677be1..3c9588305f1 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -21,6 +21,7 @@ #include "llvm/Target/TargetRegistry.h" #include "llvm/Target/TargetOptions.h" #include "llvm-c/Core.h" +#include "llvm-c/BitReader.h" #include "llvm-c/Object.h" #include @@ -98,3 +99,10 @@ extern "C" void LLVMRustWriteOutputFile(LLVMPassManagerRef PMR, (void)foo; PM->run(*unwrap(M)); } + +extern "C" LLVMModuleRef LLVMRustParseBitcode(LLVMMemoryBufferRef MemBuf) { + LLVMModuleRef M; + return LLVMParseBitcode(MemBuf, &M, const_cast(&LLVMRustError)) + ? NULL : M; +} + -- cgit 1.4.1-3-g733a5