-
Notifications
You must be signed in to change notification settings - Fork 13.8k
Rollup of 6 pull requests #147629
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 6 pull requests #147629
Conversation
Note that the code in `LLVMRustDIBuilderCreateStaticVariable` that tried to downcast `InitVal` appears to have been dead, because `llvm::ConstantInt` and `llvm::ConstantFP` are not subclasses of `llvm::GlobalVariable`.
…tions are enabled
…-normalize, r=lcnr repr_transparent_external_private_fields: normalize types during traversal Determining whether a type is a 1-ZST will internally do full normalization, so we better do the same when scanning for non-exhaustive types. r? ``@lcnr``
…mulacrum Add doc links between `{integer}::from_str_radix` and `from_str` When parsing base-10 numbers, it's easy to miss `<Self as FromStr>::from_str` and `str::parse` as potential alternatives to `from_str_radix`. - A similar suggestion is given by https://rust-lang.github.io/rust-clippy/master/index.html#from_str_radix_10
cg_llvm: Use `LLVMDIBuilderCreateGlobalVariableExpression` - Part of rust-lang#134001 - Follow-up to rust-lang#146763 --- This PR dismantles the somewhat complicated `LLVMRustDIBuilderCreateStaticVariable` function, and replaces it with equivalent calls to `LLVMDIBuilderCreateGlobalVariableExpression` and `LLVMGlobalSetMetadata`. A key difference is that the new code does not replicate the attempted downcast of `InitVal`. As far as I can tell, those downcasts were actually dead, because `llvm::ConstantInt` and `llvm::ConstantFP` are not subclasses of `llvm::GlobalVariable`. I tried replacing those code paths with fatal errors, and was unable to induce failure in any of the relevant test suites I ran. I have also confirmed that if the calls to `create_static_variable` are commented out, debuginfo tests will fail, demonstrating some amount of relevant test coverage. The new `DIBuilder` methods have been added via an extension trait, not as inherent methods, to avoid impeding rust-lang#142897.
Clear `ChunkedBitSet` without reallocating There doesn't appear to be any reason to clear a ChunkedBitSet via its constructor (which allocates a new list of chunks), when we could just fill the existing allocation with `Chunk::Zeros` instead. For comparison, the `insert_all` impl added by the same PR (rust-lang#93984) does the simple thing here and just overwrites every chunk with `Chunk::Ones`. (That fill was then made somewhat easier by rust-lang#145480, which removes the chunk size from all-zero/all-one chunks.) r? nnethercote (or compiler)
…llaumeGomez Add a warning when running tests with the GCC backend and debug assertions are enabled Discussed at https://rust-lang.zulipchat.com/#narrow/channel/233931-t-compiler.2Fmajor-changes/topic/Run.20more.20tests.20for.20rustc_codegen_gcc.20in.20t.E2.80.A6.20compiler-team.23891/with/543701828. r? ``@GuillaumeGomez``
Generalize configuring LLD as the default linker in bootstrap Reopen of rust-lang#147157, because apparently bors can't deal with it for some reason. r? ``@ghost``
@bors r+ p=5 rollup=never |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 956f47c32f In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 956f47c (parent) -> 9b82646 (this PR) Test differencesShow 387 test diffsStage 0
Additionally, 386 doctest diffs were found. These are ignored, as they are noisy. Job group index Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 9b8264604ef800b5539d04bf78ebdef5c5fa4968 --output-dir test-dashboard And then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Finished benchmarking commit (9b82646): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 3.1%, secondary -1.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 474.655s -> 474.96s (0.06%) |
Successful merges:
{integer}::from_str_radix
andfrom_str
#147605 (Add doc links between{integer}::from_str_radix
andfrom_str
)LLVMDIBuilderCreateGlobalVariableExpression
#147608 (cg_llvm: UseLLVMDIBuilderCreateGlobalVariableExpression
)ChunkedBitSet
without reallocating #147623 (ClearChunkedBitSet
without reallocating)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup