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 9 pull requests #73838

Merged
merged 32 commits into from
Jun 28, 2020
Merged

Rollup of 9 pull requests #73838

merged 32 commits into from
Jun 28, 2020

Conversation

Manishearth
Copy link
Member

Successful merges:

Failed merges:

r? @ghost

VillSnow and others added 30 commits June 21, 2020 13:52
Previously, we were too conservative and `x.field = 4` was treated as a
"use" of `x`.
Also, run RustFmt on the clashing_extern_fn test case and update
stderrs.
Co-authored-by: Lukas Kalbertodt <lukas.kalbertodt@gmail.com>
Co-authored-by: Amanieu d'Antras <amanieu@gmail.com>
Add partition_point

Add partition_point in C++.
Although existing binary_search in rust does not suitable when the slice has multiple hits,
this function returns exact point of partition.
The definition of this function is very clear and able to accept general matter, therefore you can easily get index which you want like lower/upper_bound.

rust-lang/rfcs#2184
…leywiser

Const prop: erase all block-only locals at the end of every block

I messed up this erasure in rust-lang#73656 (comment). I think it is too fragile to have the previous scheme. Let's benchmark the new scheme and see what happens.

r? @wesleywiser

cc @felix91gr
…ons, r=oli-obk

Make liveness more precise for assignments to fields

Previously, we were too conservative and `x.field = 4` was treated as a "use" of `x`. Now it neither kills `x` (since other fields of `x` may still be live) nor marks it as live.

cc @jonas-schievink, who ran into this problem.
…r=oli-obk

Add some `const_compare_raw_pointers`-related regression tests

Closes rust-lang#71381
Closes rust-lang#71382
Closes rust-lang#71611
Closes rust-lang#72352

r? @oli-obk, the author of rust-lang#73398
Forward Hash::write_iN to Hash::write_uN

The `Hasher::write_iN()` methods should forward to `Hasher::write_uN()`, because some Hasher implementations implement only the `write_uN()` variants, with the expectation that `write_iN()` will use the same implementation. Most notably, this is the case for the [FxHasher](https://github.com/rust-lang/rustc-hash/blob/5e09ea0a1c7ab7e4f9e27771f5a0e5a36c58d1bb/src/lib.rs#L111) used by rustc itself.

This used to be the case previously, but was broken in rust-lang#59982. As the PR description makes no mention of this particular change, I assume it was unintentional.

In a local test, this mitigates the regression from rust-lang#73526 on at least one test-case (cc @cuviper), because we're no longer at the mercy of `FxHasher::write()` getting inlined to get reasonable performance.
Rename two `Resolver` traits

`trait Resolver` -> `trait ResolverExpand` for the resolver interface available from expansion.
`trait Resolver` -> `trait ResolverAstLowering` for the resolver interface available from AST lowering.

Addresses rust-lang#73587 (comment)
…eclarations, r=petrochenkov

Rename clashing_extern_decl to clashing_extern_declarations.

Rename clashing_extern_decl to clashing_extern_declarations to bring in-line with lint naming conventions.

Fixes rust-lang#73802.

r? @petrochenkov
@Manishearth
Copy link
Member Author

@rustbot modify labels: +rollup
@bors r+ rollup=never p=5

@bors
Copy link
Contributor

bors commented Jun 28, 2020

📌 Commit 117b734 has been approved by Manishearth

@rustbot rustbot added the rollup A PR which is a rollup label Jun 28, 2020
@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 Jun 28, 2020
@cuviper
Copy link
Member

cuviper commented Jun 28, 2020

FYI, #73800 was marked rollup=never.

@bors
Copy link
Contributor

bors commented Jun 28, 2020

⌛ Testing commit 117b734 with merge 2f517ce...

@bors
Copy link
Contributor

bors commented Jun 28, 2020

☀️ Test successful - checks-azure
Approved by: Manishearth
Pushing 2f517ce to master...

@Manishearth
Copy link
Member Author

@cuviper oh, shoot, i'm sorry, didn't notice that. We can do a perf run directly through try perhaps?

@Manishearth Manishearth deleted the rollup-jj57e84 branch June 29, 2020 04:03
@cuviper
Copy link
Member

cuviper commented Jun 29, 2020

We can do a perf run directly through try perhaps?

I'm not sure how to isolate one PR for perf after the fact, but it looks like a small change anyway.

@Manishearth
Copy link
Member Author

@cuviper oh good point lol

@cuviper cuviper added this to the 1.46 milestone May 2, 2024
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. 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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.