-
Notifications
You must be signed in to change notification settings - Fork 13.9k
Rollup of 7 pull requests #147640
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 7 pull requests #147640
Conversation
Use `rustc-josh-sync` merge commit message for pull PR description
- Implement support for 'assume' statements. - Improve scheduling and next instruction type determination. - Improve GenMC mode documentation. Co-authored-by: Ralf Jung <[email protected]>
Improve GenMC mode scheduling and add assume statements
This updates the rust-version file to b733736.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: b733736 Filtered ref: 62d76e7793dfad401d4a82041e6c587b4eef0854 Upstream diff: rust-lang/rust@f6092f2...b733736 This merge was created using https://github.com/rust-lang/josh-sync.
Automatic Rustup
silence unused import error
…nerating addresses
alloc_addresses: track more explicitly whether we are in charge of generating addresses
This updates the rust-version file to 848e674.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: 848e674 Filtered ref: 8a7a804ec197b593f553a523e3f76baf5fd56d0e Upstream diff: rust-lang/rust@b733736...848e674 This merge was created using https://github.com/rust-lang/josh-sync.
Automatic Rustup
This updates the rust-version file to f957826.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: f957826 Filtered ref: 60bcfdb370a3bae71714fc99a88aa9f2d2892733 Upstream diff: rust-lang/rust@848e674...f957826 This merge was created using https://github.com/rust-lang/josh-sync.
Automatic Rustup
…racking must be disabled. Remove hacks for keeping all memory allocations in GenMC mode.
Implement Pointer conversions to and from GenMC.
genmc: bail out for non-64bit-little-endian targets
This updates the rust-version file to 29b7717.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: 29b7717 Filtered ref: fb4b6388017a4b5fa9806863ffe33ed23df840d4 Upstream diff: rust-lang/rust@f957826...29b7717 This merge was created using https://github.com/rust-lang/josh-sync.
Automatic Rustup
…n GenMC mode. Remove atomic initialization dummy writes from tests.
…mixing Add support for temporal mixing of atomic and non-atomic accesses in GenMC mode
Supress swapping lhs and rhs in equality suggestion in extern macro Fixes rust-lang#139050
…nethercote Assert that non-extended temporaries and `super let` bindings have scopes This PR clarifies a point of confusion in the compiler: all bodies have an outer temporary drop scope, including `static` and `const` item bodies[^1]. Whenever a temporary should be dropped in its enclosing temporary scope, it should have a temporary scope to be dropped in so that its drop can be scheduled[^2]. As such, I've updated some relevant comments and made `ScopeTree::default_temporary_scope` and `RvalueScopes::temporary_scope` panic when an enclosing temporary scope isn't found instead of allowing potential bugs where potentially-drop-sensitive temporaries are effectively given static lifetimes. Since non-extended `super let` bindings are dropped in their block's enclosing temporary scope, this applies to them as well: the enclosing temporary scope should exist. [^1]: See https://github.com/rust-lang/rust/blob/master/compiler/rustc_hir_analysis/src/check/region.rs#L773-L778 for non-`fn`/closure bodies. The `this.cx.var_parent = None;` enables [lifetime extension to `'static` lifetimes](https://doc.rust-lang.org/stable/reference/destructors.html#r-destructors.scope.lifetime-extension.static) and the `ScopeData::Destruction` scope ensures non-extended temporaries are dropped in the body expression's scope. [^2]: For certain borrowed temporaries, drops that don't require running destructors may later be removed by constant promotion. That is unrelated to this PR.
…idtwco Renumber return local after state transform The current implementation of `StateTransform` renames `_0` before analyzing liveness. This is inconsistent, as a `return` terminator hardcodes a read of `_0`. This PR proposes to perform such rename *after* analyzing the body, in fact after the whole transform. The implementation is not much more complicated.
…utlives, r=lcnr rewrite outlives placeholder constraints to outlives static when handling opaque types Fixes rust-lang#147529 r? lcnr see test comment
…r=jdonszelmann Make logging filters work again by moving EnvFilter into its own layer `tracing` at the time of writing has a feature (?) in its Filter implementation, so that filters like EnvFilter are consulted for status of a span or event and whether it is marked as interesting for logging. Combining a Filter with another layer through the `with_filter` combinator produces a filtered layer that enables an event unless it is statically determined that the event is uninteresting. However, if the filter is dynamic, because of filtering on span names or field values as an example, events are **always** enabled by design. There is an `event_enabled` predicate on `EnvFilter` implementation but it falls back to default and, thus, the dynamic filters are **unused**. Previously, `RUSTC_LOG=[]` or `RUSTC_LOG=[garbage]` enables all events, even when spans do not match. This patch re-enables span- and field-based filters. With `RUSTC_LOG=[garbage]` one should expect no events are enabled again. This will help with development greatly because we can meaningfully filter internal logs again.
…r=JonathanBrouwer,GuillaumeGomez reduce calls to attr.span() in old doc attr parsing r? `@oli-obk` should be trivial, can also delegate to `@GuillaumeGomez` or `@JonathanBrouwer.` As part of making span() return an option I want to reduce the number of places we call span in without it being known what specific attr it's for. This makes that more obvious for doc. Part of a chain of PRs that's coming. rust-lang#131229 (comment)
miri subtree update Subtree update of `miri` to rust-lang/miri@47d6568. Created using https://github.com/rust-lang/josh-sync. r? `@ghost`
@bors r+ rollup=never p=5 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: ed1d94311e 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 ed1d943 (parent) -> 4b94758 (this PR) Test differencesShow 15 test diffsStage 1
Stage 2
Additionally, 11 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 4b94758d2ba7d0ef71ccf5fde29ce4bc5d6fe2a4 --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 (4b94758): comparison URL. Overall result: ✅ improvements - 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)This benchmark run did not return any relevant results for this metric. 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: 473.894s -> 475.312s (0.30%) |
Successful merges:
super let
bindings have scopes #147471 (Assert that non-extended temporaries andsuper let
bindings have scopes)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup