mirror of
https://github.com/rust-lang/rust.git
synced 2025-04-28 11:07:42 +00:00
Rollup merge of #139188 - durin42:llvm-21-LintPass, r=dianqk
PassWrapper: adapt for llvm/llvm-project@94122d58fc77079a291a3d008914… …006cb509d9db We also have to remove the LLVM argument in cast-target-abi.rs for LLVM 21. I'm not really sure what the best approach here is since that test already uses revisions. We could also fork the test into a copy for LLVM 19-20 and another for LLVM 21, but what I did for now was drop the lint-abort-on-error flag to LLVM figuring that some coverage was better than none, but I'm happy to change this if that was a bad direction. r? dianqk ````@rustbot```` label llvm-main
This commit is contained in:
commit
2a557ec9b8
@ -855,10 +855,15 @@ extern "C" LLVMRustResult LLVMRustOptimize(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (LintIR) {
|
if (LintIR) {
|
||||||
PipelineStartEPCallbacks.push_back(
|
PipelineStartEPCallbacks.push_back([](ModulePassManager &MPM,
|
||||||
[](ModulePassManager &MPM, OptimizationLevel Level) {
|
OptimizationLevel Level) {
|
||||||
MPM.addPass(createModuleToFunctionPassAdaptor(LintPass()));
|
#if LLVM_VERSION_GE(21, 0)
|
||||||
});
|
MPM.addPass(
|
||||||
|
createModuleToFunctionPassAdaptor(LintPass(/*AbortOnError=*/true)));
|
||||||
|
#else
|
||||||
|
MPM.addPass(createModuleToFunctionPassAdaptor(LintPass()));
|
||||||
|
#endif
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (InstrumentCoverage) {
|
if (InstrumentCoverage) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
//@ add-core-stubs
|
//@ add-core-stubs
|
||||||
//@ revisions:aarch64 loongarch64 powerpc64 sparc64 x86_64
|
//@ revisions:aarch64 loongarch64 powerpc64 sparc64 x86_64
|
||||||
//@ min-llvm-version: 19
|
//@ min-llvm-version: 19
|
||||||
//@ compile-flags: -Copt-level=3 -Cno-prepopulate-passes -Zlint-llvm-ir -Cllvm-args=-lint-abort-on-error
|
//@ compile-flags: -Copt-level=3 -Cno-prepopulate-passes -Zlint-llvm-ir
|
||||||
|
|
||||||
//@[aarch64] compile-flags: --target aarch64-unknown-linux-gnu
|
//@[aarch64] compile-flags: --target aarch64-unknown-linux-gnu
|
||||||
//@[aarch64] needs-llvm-components: arm
|
//@[aarch64] needs-llvm-components: arm
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
//@ add-core-stubs
|
//@ add-core-stubs
|
||||||
//@ revisions: linux apple
|
//@ revisions: linux apple
|
||||||
//@ min-llvm-version: 19
|
//@ min-llvm-version: 19
|
||||||
//@ compile-flags: -Copt-level=0 -Cno-prepopulate-passes -Zlint-llvm-ir -Cllvm-args=-lint-abort-on-error
|
//@ compile-flags: -Copt-level=0 -Cno-prepopulate-passes -Zlint-llvm-ir
|
||||||
|
|
||||||
//@[linux] compile-flags: --target x86_64-unknown-linux-gnu
|
//@[linux] compile-flags: --target x86_64-unknown-linux-gnu
|
||||||
//@[linux] needs-llvm-components: x86
|
//@[linux] needs-llvm-components: x86
|
||||||
|
Loading…
Reference in New Issue
Block a user