3131#include " llvm/Transforms/IPO/PassManagerBuilder.h"
3232#include " llvm/Transforms/IPO/AlwaysInliner.h"
3333#include " llvm/Transforms/IPO/FunctionImport.h"
34- #if LLVM_VERSION_GE(15, 0)
3534#include " llvm/Transforms/IPO/ThinLTOBitcodeWriter.h"
36- #endif
3735#include " llvm/Transforms/Utils/AddDiscriminators.h"
3836#include " llvm/Transforms/Utils/FunctionImportUtils.h"
3937#include " llvm/LTO/LTO.h"
40- #include " llvm/Bitcode/BitcodeWriterPass .h"
38+ #include " llvm/Bitcode/BitcodeWriter .h"
4139#include " llvm-c/Transforms/PassManagerBuilder.h"
4240
4341#include " llvm/Transforms/Instrumentation.h"
@@ -1377,11 +1375,6 @@ LLVMRustThinLTOBufferCreate(LLVMModuleRef M, bool is_thin) {
13771375 raw_string_ostream OS (Ret->data );
13781376 {
13791377 if (is_thin) {
1380- #if LLVM_VERSION_LT(15, 0)
1381- legacy::PassManager PM;
1382- PM.add (createWriteThinLTOBitcodePass (OS));
1383- PM.run (*unwrap (M));
1384- #else
13851378 PassBuilder PB;
13861379 LoopAnalysisManager LAM;
13871380 FunctionAnalysisManager FAM;
@@ -1395,11 +1388,8 @@ LLVMRustThinLTOBufferCreate(LLVMModuleRef M, bool is_thin) {
13951388 ModulePassManager MPM;
13961389 MPM.addPass (ThinLTOBitcodeWriterPass (OS, nullptr ));
13971390 MPM.run (*unwrap (M), MAM);
1398- #endif
13991391 } else {
1400- legacy::PassManager PM;
1401- PM.add (createBitcodeWriterPass (OS));
1402- PM.run (*unwrap (M));
1392+ WriteBitcodeToFile (*unwrap (M), OS);
14031393 }
14041394 }
14051395 }
0 commit comments