Skip to content

Rollup of 7 pull requests - #99745

Merged
bors merged 112 commits into
rust-lang:masterfrom
JohnTitor:rollup-lvrie64
Jul 26, 2022
Merged

Rollup of 7 pull requests#99745
bors merged 112 commits into
rust-lang:masterfrom
JohnTitor:rollup-lvrie64

Conversation

@JohnTitor

Copy link
Copy Markdown
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

bjorn3and others added 30 commits May 15, 2022 12:32
The eventual goal is to try using this for things like the internal panicking stuff, to see whether it helps.
A pointer to address cast are often special-cased.
Introduce a dedicated cast kind to make them easy distinguishable.
It returns the previous work product or panics if there is none. This rename
makes the purpose of this method clearer.
A WorkProduct without a saved file is useless
Add support for emitting functions with `coldcc` to LLVM
The eventual goal is to try using this for things like the internal panicking stuff, to see whether it helps.
Rollup of 5 pull requests
Successful merges:
- rust-lang#97058 (Various refactors to the incr comp workproduct handling)
- rust-lang#97301 (Allow unstable items to be re-exported unstably without requiring the feature be enabled)
- rust-lang#97738 (Fix ICEs from zsts within unsized types with non-zero offsets)
- rust-lang#97771 (Remove SIGIO reference on Haiku)
- rust-lang#97808 (Add some unstable target features for the wasm target codegen)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
There are still two failures due to incorrect test annotations
And likewise for the `Const::val` method.
Because its type is called `ConstKind`. Also `val` is a confusing name
because `ConstKind` is an enum with seven variants, one of which is
called `Value`. Also, this gives consistency with `TyS` and `PredicateS`
which have `kind` fields.
The commit also renames a few `Const` variables from `val` to `c`, to
avoid confusion with the `ConstKind::Value` variant.
bjorn3and others added 14 commits July 25, 2022 13:50
This fixes a couple of potential miscompilations. None affect cg_clif on
x86_64, but one may affect cg_clif on AArch64.
Cranelift started depending on a couple of new crates
Using `F_KINFO` fcntl flag, the kf_structsize field
needs to be set beforehand for that effect.
…imulacrum
Implement `fs::get_path` for FreeBSD.
Using `F_KINFO` fcntl flag, the kf_structsize field
needs to be set beforehand for that effect.
…smatch, r=cjgillot
Slightly improve mismatched GAT where clause error
This makes the error reporting a bit more standardized between `where` on GATs and functions.
cc rust-lang#99206 (`@BoxyUwU),` don't want to mark this as as "fixed" because they're still not perfect, but this is still an improvement IMO so I want to land it incrementally.
regarding "consider adding where clause to trait definition", we don't actually do that for methods as far as i can tell? i could file an issue to look into that maybe.
…ct-field, r=compiler-errors
Suggest removing the tuple struct field for the unwrapped value
fixesrust-lang#99416
…t-infcx, r=lcnr
Remove some explicit `self.infcx` for `FnCtxt`, which already derefs into `InferCtxt`
The use of `self.infcx.method_on_infcx` vs `self.method_on_infcx` when `self` is a `FnCtxt` is a bit inconsistent, so I'm moving some `self.infcx` usages I found to just use autoderef
Remove reachable coverage without counters
Remove reachable coverage without counters to maintain invariant that
either there is no coverage at all or there is a live coverage counter
left that provides the function source hash.
The motivating example would be a following closure:
```rust
let f = |x: bool| {
debug_assert!(x);
};
```
Which, with span changes from rust-lang#93967, with disabled debug assertions,
after the final CFG simplifications but before removal of dead blocks,
gives rise to MIR:
```rust
fn main::{closure#0}(_1: &[closure@a.rs:2:13: 2:22], _2: bool) -> () {
debug x => _2;
let mut _0: ();
bb0: {
Coverage::Expression(4294967295) = 1 - 2;
return;
}
...
}
```
Which also makes the initial instrumentation quite suspect, although
this pull request doesn't attempt to address that aspect directly.
Fixesrust-lang#98833.
r? ``@wesleywiser`` ``@richkadel``
…-conversions, r=michaelwoerister
Avoid `&str`/`Symbol` to `String` conversions
follow-up to rust-lang#99342 and rust-lang#98668
…jorn3
Sync rustc_codegen_cranelift
This time most of the changes are bugfixes. No exciting new features to report. Thanks `@matthiaskrgr` for reporting a bunch of crashes!
r? `@ghost`
`@rustbot` label +A-codegen +A-cranelift +T-compiler
@rustbotrustbot added T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Jul 26, 2022
@JohnTitor

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=7

@bors

bors commented Jul 26, 2022

Copy link
Copy Markdown
Collaborator

📌 Commit a572f06 has been approved by JohnTitor

It is now in the queue for this repository.

@borsbors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 26, 2022
@bors

bors commented Jul 26, 2022

Copy link
Copy Markdown
Collaborator

⌛ Testing commit a572f06 with merge b629c85...

@bors

bors commented Jul 26, 2022

Copy link
Copy Markdown
Collaborator

☀️ Test successful - checks-actions
Approved by: JohnTitor
Pushing b629c85 to master...

@borsbors added the merged-by-bors This PR was explicitly merged by bors. label Jul 26, 2022
@bors
bors merged commit b629c85 into rust-lang:masterJul 26, 2022
@rustbotrustbot added this to the 1.64.0 milestone Jul 26, 2022
@JohnTitor
JohnTitor deleted the rollup-lvrie64 branch July 26, 2022 07:46
@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (b629c85): comparison url.

Instruction count

  • Primary benchmarks: no relevant changes found
  • Secondary benchmarks: 🎉 relevant improvement found
mean1maxcount2
Regressions 😿
(primary)
N/AN/A0
Regressions 😿
(secondary)
N/AN/A0
Improvements 🎉
(primary)
N/AN/A0
Improvements 🎉
(secondary)
-0.3%-0.3%1
All 😿🎉 (primary)N/AN/A0

Max RSS (memory usage)

Results
  • Primary benchmarks: no relevant changes found
  • Secondary benchmarks: 😿 relevant regressions found
mean1maxcount2
Regressions 😿
(primary)
N/AN/A0
Regressions 😿
(secondary)
2.3%2.8%2
Improvements 🎉
(primary)
N/AN/A0
Improvements 🎉
(secondary)
N/AN/A0
All 😿🎉 (primary)N/AN/A0

Cycles

Results
  • Primary benchmarks: no relevant changes found
  • Secondary benchmarks: 🎉 relevant improvements found
mean1maxcount2
Regressions 😿
(primary)
N/AN/A0
Regressions 😿
(secondary)
N/AN/A0
Improvements 🎉
(primary)
N/AN/A0
Improvements 🎉
(secondary)
-2.6%-3.1%5
All 😿🎉 (primary)N/AN/A0

If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf.

@rustbot label: -perf-regression

Footnotes

  1. the arithmetic mean of the percent change23

  2. number of relevant changes23

bjorn3 pushed a commit to bjorn3/rust that referenced this pull request Aug 24, 2022
Rollup of 7 pull requests
Successful merges:
- rust-lang#98211 (Implement `fs::get_path` for FreeBSD.)
- rust-lang#99353 (Slightly improve mismatched GAT where clause error)
- rust-lang#99593 (Suggest removing the tuple struct field for the unwrapped value)
- rust-lang#99615 (Remove some explicit `self.infcx` for `FnCtxt`, which already derefs into `InferCtxt`)
- rust-lang#99711 (Remove reachable coverage without counters)
- rust-lang#99718 (Avoid `&str`/`Symbol` to `String` conversions)
- rust-lang#99720 (Sync rustc_codegen_cranelift)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-borsThis PR was explicitly merged by bors.rollupA PR which is a rollupS-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@JohnTitor@bors@rust-timer@rustbot@bjorn3@JakobDegen@scottmcm@tmiasko@RalfJung@nvzqz@nnethercote@b-naber@WaffleLapkin@matthiaskrgr@oli-obk@cjgillot@eggyal@davidtwco@tamird@Dylan-DPC