Skip to content
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 #101464

Merged
merged 14 commits into from
Sep 6, 2022
Merged

Rollup of 7 pull requests #101464

merged 14 commits into from
Sep 6, 2022

Conversation

JohnTitor
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

saethlin and others added 14 commits September 3, 2022 18:05
…op order

The drop order of let and let else is supposed to be the same,
and in order to ensure this, the test checks that this holds for
the given list of cases.

The test also ensures that we drop the temporaries of the
condition before executing the else block.

We made the test matrix based so it can check all the possible
combinations and find out possible edge cases.
Add let else drop order tests

Add a systematic matrix based test that checks temporary drop order in various settings, `let-else-drop-order.rs`, as requested [here](rust-lang#93628 (comment)).

The drop order of let and let else is supposed to be the and in order to ensure this, the test checks that this holds for a number of cases.

The test also ensures that we drop the temporaries of the condition before executing the else block.

cc rust-lang#87335 tracking issue for `let else`
Add a Machine hook for inline assembly

I'm sketching out some support in Miri to "execute" inline assembly. I want this because there are codebases which have very simple inline assembly like hand-written syscall wrappers, and it would be nice to test such code without modification.

r? ``@oli-obk``
…shtriplett

Fix cleanup for uninitialized stdout

Fixes rust-lang#101375 by disabling buffering even if the buffer was not initialized yet.
…mention-r-a, r=Mark-Simulacrum

Revert "Mention rust-analyzer maintainers when `proc_macro` bridge is changed"

Reverts rust-lang#99183

rust-analyzer is now a subtree, and CI fails when the `proc_macro` bridge changes break our tests, so these notifications aren't needed anymore.
… r=spastorino

Point at type parameter in plain path expr

Slightly better error message for a kinda unique use case.
Don't duplicate file descriptors into stdio fds

Ensures that file descriptors are never duplicated into the stdio fds even if a stdio fd has been closed.
…torino

Remove generics_def_id_map from the resolver.

This is internal state for lowering.  This does not belong in the resolver.

r? ``@spastorino``
@rustbot rustbot 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 Sep 5, 2022
@JohnTitor
Copy link
Member Author

@bors r+ p=7 rollup=never

@bors
Copy link
Contributor

bors commented Sep 5, 2022

📌 Commit 0d8a1f4 has been approved by JohnTitor

It is now in the queue for this repository.

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Sep 5, 2022
@bors
Copy link
Contributor

bors commented Sep 6, 2022

⌛ Testing commit 0d8a1f4 with merge 56b2711...

@bors
Copy link
Contributor

bors commented Sep 6, 2022

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

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Sep 6, 2022
@bors bors merged commit 56b2711 into rust-lang:master Sep 6, 2022
@rustbot rustbot added this to the 1.65.0 milestone Sep 6, 2022
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Perf Build Sha
#101447 6531d4163f4c05bbf174d9c00da71d8e252fc5de
#101426 e6fe949ebbff331c101e929f9c17636a55306060
#101425 e55d151519eec36a0359dd72e0ff625b76a74c4b
#101418 0f55190da872f835095deae0e98edd83cb440dc4
#101404 64f7402a3e1764bbee4717791cb66c931f604e66
#101402 194a7a886c7cf152716e12c05ac0242f914f7f57
#99291 ed1e07e6b2e71f2b56c897d104040578cb05e78d

previous master: 676afc5149

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@JohnTitor JohnTitor deleted the rollup-unsjgm6 branch September 6, 2022 07:53
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (56b2711): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
1.6% [1.6%, 1.6%] 1
Improvements ✅
(primary)
-0.8% [-1.3%, -0.3%] 13
Improvements ✅
(secondary)
-1.3% [-1.7%, -0.8%] 8
All ❌✅ (primary) -0.8% [-1.3%, -0.3%] 13

Max RSS (memory usage)

This benchmark run did not return any relevant results for this metric.

Cycles

Results

This 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.

mean1 range count2
Regressions ❌
(primary)
4.8% [4.8%, 4.8%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 4.8% [4.8%, 4.8%] 1

Footnotes

  1. the arithmetic mean of the percent change 2

  2. number of relevant changes 2

@rustbot rustbot added the perf-regression Performance regression. label Sep 6, 2022
@nnethercote
Copy link
Contributor

Improvements easily outweigh the one regression here. But I suspect those improvements are just noise, because they look like the inverse of the unexpected regressions in #101228. It seems we have several benchmarks (most notably html5ever-0.26.0, serde_derive-1.0.136, tt-muncher, maybe keccak) that are currently bimodal, and unpredictably flipping between two sets of values, giving misleading improvement/regression indications.

@rustbot label: +perf-regression-triaged

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Sep 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.