-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 #120196
Rollup of 8 pull requests #120196
Conversation
We were able to uplift any value from `Tables` to `'static`, which is unsound.
The internal function was unsound, it could cause UB in rare cases where the user inadvertly stored the returned object in a location that could outlive the TyCtxt. In order to make it safe, we now take a type context as an argument to the internal fn, and we ensure that interned items are lifted using the provided context. Thus, this change ensures that the compiler can properly enforce that the object does not outlive the type context it was lifted to.
InPlaceDstBufDrop holds onto the allocation before the shrinking happens which means it must deallocate the destination elements but the source allocation.
Added back previously available exports: * Forward/Backward: used when implementing `AnalysisDomain` * Engine: used in user's code to solve the dataflow problem * SwitchIntEdgeEffects: used when implementing functions of the `Analysis` trait * graphviz: potentially useful for debugging purposes These exports are used when implementing external tools based on MIR dataflow framework. Closes rust-lang#120130
Update Readme A couple minor formatting fixes and re-add missing "Installing from Source" section to the table of contents.
…imulacrum Un-hide `iter::repeat_n` ACP accepted in rust-lang/libs-team#120 (comment)
…nval Make stable_mir::with_tables sound See the first commit for the actual soundness fix. The rest is just fallout from that and is entirely safe code. Includes most of rust-lang#120120 The major difference to rust-lang#120120 is that we don't need an unsafe trait, as we can now rely on the type system (the only unsafe part, and the actual source of the unsoundness was in `with_tables`) r? `@celinval`
…uviper fix: Drop guard was deallocating with the incorrect size InPlaceDstBufDrop holds onto the allocation before the shrinking happens which means it must deallocate the destination elements but the source allocation. Thanks `@cuviper` for spotting this.
…thercote `rustc_mir_dataflow`: Restore removed exports Added back previously available exports: * `Forward`/`Backward`: used when implementing `AnalysisDomain` * `Engine`: used in user's code to solve the dataflow problem * `SwitchIntEdgeEffects`: used when implementing functions of the `Analysis` trait * `graphviz`: potentially useful for debugging purposes Closes rust-lang#120130
Capture the rationale for `-Zallow-features=` in bootstrap.py Based on the discussion in rust-lang#120096.
…r=dtolnay Warn users about limited review for tier 2 and 3 code Needs rust-lang/std-dev-guide#61
…s, r=dtolnay Document some alternatives to `Vec::split_off` One of the discussion points that came up in rust-lang#119917 is that some people use `Vec::split_off` in cases where they probably shouldn't, because the alternatives (like `mem::take`) are hard to discover. This PR adds some suggestions to the documentation of `split_off` that should point people towards alternatives that might be more appropriate for their use-case. I've deliberately tried to keep these changes as simple and uncontroversial as possible, so that they don't depend on how the team decides to handle the concerns raised in rust-lang#119917. That's why I haven't touched the existing documentation for `split_off`, and haven't added links to `split_off` to the documentation of other methods.
@bors r+ rollup=never p=9 |
@bors retry |
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#120005 (Update Readme) - rust-lang#120045 (Un-hide `iter::repeat_n`) - rust-lang#120128 (Make stable_mir::with_tables sound) - rust-lang#120145 (fix: Drop guard was deallocating with the incorrect size) - rust-lang#120158 (`rustc_mir_dataflow`: Restore removed exports) - rust-lang#120167 (Capture the rationale for `-Zallow-features=` in bootstrap.py) - rust-lang#120174 (Warn users about limited review for tier 2 and 3 code) - rust-lang#120180 (Document some alternatives to `Vec::split_off`) Failed merges: - rust-lang#120171 (Fix assume and assert in jump threading) r? `@ghost` `@rustbot` modify labels: rollup
The job Click to see the possible cause of the failure (guessed by this bot)
|
💔 Test failed - checks-actions |
@bors retry |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: a58ec8ff03 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (6fff796): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Bootstrap: 664.028s -> 662.296s (-0.26%) |
The regression is not very important I think, and it looks like it has been blipping recently. Still, it would be nice to know where it came from. @rust-timer build 8b8d484 |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (8b8d484): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDInstruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 664.028s -> 662.942s (-0.16%) |
Successful merges:
iter::repeat_n
#120045 (Un-hideiter::repeat_n
)rustc_mir_dataflow
: Restore removed exports #120158 (rustc_mir_dataflow
: Restore removed exports)-Zallow-features=
in bootstrap.py #120167 (Capture the rationale for-Zallow-features=
in bootstrap.py)Vec::split_off
#120180 (Document some alternatives toVec::split_off
)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup