Closed
Description
building rust started failing like so:
rustc/x86_64-unknown-linux-gnu/release/build/rustc_llvm-475f372969e8d34a/out/llvm-wrapper/PassWrapper.o" "-c" "llvm-wrapper/PassWrapper.cpp"
cargo:warning=llvm-wrapper/PassWrapper.cpp:124:15: error: use of undeclared identifier 'createAddressSanitizerFunctionPass'; did you mean 'createHWAddressSanitizerLegacyPassPass'?
cargo:warning= return wrap(createAddressSanitizerFunctionPass(CompileKernel, Recover, UseAfterScope));
cargo:warning= ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cargo:warning= createHWAddressSanitizerLegacyPassPass
cargo:warning=/b/s/w/ir/cache/builder/src/third_party/llvm/llvm/include/llvm/Transforms/Instrumentation/HWAddressSanitizer.h:54:1: note: 'createHWAddressSanitizerLegacyPassPass' declared here
cargo:warning=createHWAddressSanitizerLegacyPassPass(bool CompileKernel = false,
cargo:warning=^
cargo:warning=llvm-wrapper/PassWrapper.cpp:130:15: error: use of undeclared identifier 'createModuleAddressSanitizerLegacyPassPass'; did you mean 'createHWAddressSanitizerLegacyPassPass'?
cargo:warning= return wrap(createModuleAddressSanitizerLegacyPassPass(CompileKernel, Recover));
cargo:warning= ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cargo:warning= createHWAddressSanitizerLegacyPassPass
cargo:warning=/b/s/w/ir/cache/builder/src/third_party/llvm/llvm/include/llvm/Transforms/Instrumentation/HWAddressSanitizer.h:54:1: note: 'createHWAddressSanitizerLegacyPassPass' declared here
cargo:warning=createHWAddressSanitizerLegacyPassPass(bool CompileKernel = false,
cargo:warning=^
cargo:warning=llvm-wrapper/PassWrapper.cpp:136:15: error: use of undeclared identifier 'createMemorySanitizerLegacyPassPass'
cargo:warning= return wrap(createMemorySanitizerLegacyPassPass(
cargo:warning= ^
cargo:warning=llvm-wrapper/PassWrapper.cpp:168:17: error: no member named 'populateThinLTOPassManager' in 'llvm::PassManagerBuilder'; did you mean 'populateModulePassManager'?
cargo:warning= unwrap(PMBR)->populateThinLTOPassManager(*unwrap(PMR));
cargo:warning= ^~~~~~~~~~~~~~~~~~~~~~~~~~
cargo:warning= populateModulePassManager
cargo:warning=/b/s/w/ir/cache/builder/src/third_party/llvm/llvm/include/llvm/Transforms/IPO/PassManagerBuilder.h:226:8: note: 'populateModulePassManager' declared here
cargo:warning= void populateModulePassManager(legacy::PassManagerBase &MPM);
cargo:warning= ^
cargo:warning=4 errors generated.
exit status: 1
Need to update rust code to work after https://reviews.llvm.org/D124216 (createAddressSanitizerFunctionPass, createModuleAddressSanitizerLegacyPassPass removal, https://reviews.llvm.org/D123882 populateThinLTOPassManager removal).
6234a56 has a related example.
@nikic Do you know if Augie (or anyone else) has a patch for this already?