- 
                Notifications
    You must be signed in to change notification settings 
- Fork 13.9k
Rollup of 8 pull requests #148280
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 8 pull requests #148280
Conversation
This is done because `Cow` implements `Deref`. Therefore, to avoid conflicts with an inner type having a method of the same name, we use an associated method, like `Box::into_raw`.
Co-Authored-By: Jeremy Soller <[email protected]>
This prevents a warning about ABI relevant target features not being set on x86 and arm. In addition it is required for miri to report correct features in is_*_feature_detected!() if miri switches to the dummy backend.
We no longer need two thread-local variables to store the context. We used to have two because the conversion logic used to live in a separate crate from the rest of the business logic. I'm also removing the Container struct and replacing the CompilerInterface trait with a struct. This removes the unnecessary indirection and code duplication. Using a trait would also block us from adding any generic method to the compiler interface.
…ssociated, r=dtolnay Turn `Cow::is_borrowed,is_owned` into associated functions. This is done because `Cow` implements `Deref`. Therefore, to avoid conflicts with an inner type having a method of the same name, we use an associated method, like `Box::into_raw`. Tracking issue: rust-lang#65143
…opt, r=cjgillot Micro-optimization attempt in coroutine layout computation In `compute_layout`, there were a bunch of collections (`IndexVec`s) that were being created by `push`ing in a loop, instead of a, hopefully, more performant usage of iterator combinators. [Second commit](rust-lang@6f682c2) is just a small cleanup. I'd love a perf run to see if this shows up in benchmarks.
Simplify rustc_public context handling We no longer need two thread-local variables to store the context. We used to have two because the conversion logic used to live in a separate crate from the rest of the business logic. I'm also merging the Container struct and the CompilerInterface trait as a single struct. This removes the unnecessary indirection and code duplication. Using a trait would also block us from adding any generic method to the compiler interface. r? ``@oli-obk`` cc: ``@makai410``
…ddle rustdoc: Rename unstable option `--nocapture` to `--no-capture` in accordance with `libtest` Context: rust-lang#133073, rust-lang#139224 (TL;DR: `libtest` has soft-deprecated `--nocapture` in favor a new & stable `--no-capture`; we should follow suit). Since the rustdoc flag is unstable (tracking issue: rust-lang#148116), we're allowed to remove the old flag immediately. However since the flag has existed for 4 years we could hard-deprecate the flag first or at least be considerate and provide a diagnostic referring users to the new flag. This PR does neither. Let me know what you would think would be best. Cargo doesn't use this flag, not yet at least (rust-lang/cargo#9705), so we really are free to sunset this flag without bigger consequences.
Couple of changes for Redox OS This upstreams all redox patches that can be upstreamed. cc ```@jackpot51```
…triddle [rustdoc] Include attribute and derive macros when filtering on "macros" As discussed [here](rust-lang#147909), some filters should have been "grouped". This PR allows attribute and derive macros to match the `macro` filter. I'll wait for rust-lang#148005 to add more tests as it would require a proc-macro library for now. r? ```@notriddle```
…es, r=JonathanBrouwer Handle default features and -Ctarget-features in the dummy backend This prevents a warning about ABI relevant target features not being set on x86 and arm. In addition it is required for miri to report correct features in is_*_feature_detected!() if miri switches to the dummy backend. Required for rust-lang/miri#4648
…saethlin Align VEX V5 boot routine to 4 bytes This PR fixes an alignment issue with the initialization routine on the VEX V5 target. Previously, if the `.text` output section contained any functions aligned to more than four bytes, the linker would add padding bytes before the beginning of `.text` rather than changing the position of the aligned function inside the section itself. This is an issue because the entry point for the program needs to be located at `0x3800_0020` on this platform and the addition of padding could cause it to be moved. To fix this, I've forced the start address of the `.text` section to be aligned to 4 bytes so that the entry point is placed consistently. Items inside the section can still be aligned to values larger than this.
| @bors r+ rollup=never p=5 | 
| ☀️ Test successful - checks-actions | 
| 📌 Perf builds for each rolled up PR: 
 previous master: 292be5c7c0 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 292be5c (parent) -> 72fe2ff (this PR) Test differencesShow 44 test diffsStage 0
 Stage 1
 Stage 2
 Additionally, 32 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 72fe2ffb391f397efdfafb2216028ed9952e8078 --output-dir test-dashboardAnd 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 (72fe2ff): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (secondary 2.8%)A less reliable metric. May be of interest, but not used to determine the overall result above. 
 CyclesResults (secondary -0.7%)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: 475.908s -> 475.302s (-0.13%) | 
Successful merges:
Cow::is_borrowed,is_ownedinto associated functions. #138217 (TurnCow::is_borrowed,is_ownedinto associated functions.)--nocaptureto--no-capturein accordance withlibtest#148115 (rustdoc: Rename unstable option--nocaptureto--no-capturein accordance withlibtest)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup