-extern "C" bool
-LLVMRustWriteThinBitcodeToFile(LLVMPassManagerRef PMR,
- LLVMModuleRef M,
- const char *BcFile) {
- llvm::legacy::PassManager *PM = unwrap<llvm::legacy::PassManager>(PMR);
- std::error_code EC;
- llvm::raw_fd_ostream bc(BcFile, EC, llvm::sys::fs::F_None);
- if (EC) {
- LLVMRustSetLastError(EC.message().c_str());
- return false;
- }
- PM->add(createWriteThinLTOBitcodePass(bc));
- PM->run(*unwrap(M));
- delete PM;
- return true;
-}
-