diff options
Diffstat (limited to 'src/rustllvm/PassWrapper.cpp')
| -rw-r--r-- | src/rustllvm/PassWrapper.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/rustllvm/PassWrapper.cpp b/src/rustllvm/PassWrapper.cpp index a5ba1d219c3..70f7ee3004d 100644 --- a/src/rustllvm/PassWrapper.cpp +++ b/src/rustllvm/PassWrapper.cpp @@ -22,6 +22,9 @@ #include "llvm/Target/TargetSubtargetInfo.h" #include "llvm/Transforms/IPO/PassManagerBuilder.h" +#if LLVM_VERSION_GE(4, 0) +#include "llvm/Transforms/IPO/AlwaysInliner.h" +#endif #include "llvm-c/Transforms/PassManagerBuilder.h" @@ -539,7 +542,11 @@ LLVMRustPrintPasses() { extern "C" void LLVMRustAddAlwaysInlinePass(LLVMPassManagerBuilderRef PMB, bool AddLifetimes) { +#if LLVM_VERSION_GE(4, 0) + unwrap(PMB)->Inliner = llvm::createAlwaysInlinerLegacyPass(AddLifetimes); +#else unwrap(PMB)->Inliner = createAlwaysInlinerPass(AddLifetimes); +#endif } extern "C" void |
