diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-10-10 22:00:49 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-10 22:00:49 +0200 |
| commit | 28bc5a2f7fec125faa7a366f4dfbf2d349fbb8fe (patch) | |
| tree | 33d42846ab93a308ec2823b98728df78d91df90e /compiler/rustc_codegen_llvm/src | |
| parent | 4f2af123ebf687888e2003676f6d7ae79f811640 (diff) | |
| parent | becf664e4930ce59fb01905e4c6af38c2df5382e (diff) | |
| download | rust-28bc5a2f7fec125faa7a366f4dfbf2d349fbb8fe.tar.gz rust-28bc5a2f7fec125faa7a366f4dfbf2d349fbb8fe.zip | |
Rollup merge of #131442 - jieyouxu:mir-opt-rebuild, r=onur-ozkan
Match std `RUSTFLAGS` for host and target for `mir-opt` test suite to fix double std build/rebuilds
Previously the bootstrap compiletest `Step::run` flow had:
```rs
// ensure that `libproc_macro` is available on the host.
builder.ensure(compile::Std::new(compiler, compiler.host));
// ...
if suite == "mir-opt" {
builder.ensure(compile::Std::new_for_mir_opt_tests(compiler, target));
} else {
builder.ensure(compile::Std::new(compiler, target));
}
```
This can cause unnecessary std rebuilds (even on the same invocation) because if host == target then `builder.ensure(compile::Std::new_for_mir_opt_tests(compiler, target))` will have different `RUSTFLAGS` than `builder.ensure(compile::Std::new(compiler, compiler.host))`.
This PR fixes that by matching up std `RUSTFLAGS` if the test suite is `mir-opt`:
```rs
if suite == "mir-opt" {
builder.ensure(compile::Std::new_for_mir_opt_tests(compiler, compiler.host));
} else {
builder.ensure(compile::Std::new(compiler, compiler.host));
}
```
This is a short-term fix, the better fix is to enforce how `RUSTFLAGS` are handled as described in https://github.com/rust-lang/rust/issues/131437#issuecomment-2401710727.
Fixes #131437.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
0 files changed, 0 insertions, 0 deletions
