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 18 pull requests #74461

Merged
merged 57 commits into from
Jul 18, 2020
Merged

Rollup of 18 pull requests #74461

merged 57 commits into from
Jul 18, 2020

Conversation

Manishearth
Copy link
Member

Successful merges:

Failed merges:

r? @ghost

a1phyr and others added 30 commits July 1, 2020 18:14
Also adds some debug assertions to prevent API consumers from visiting
those basic blocks by accident.
Might be subject to the birthday paradox occasionally, causing spurious failures.

Addresses: rust-lang#70740 (review)
Needed to support rust-lang/project-rfc-2229#7

Currently rustc_typeck depends on rustc_middle for definition TypeckTables, etc.
For supporting project-rfc-2229#7, rustc_middle would've to depend on
rustc_typeck for Place -- introducing a circular dependcy.

This resembles the MIR equivalent of `Place` located in `lbrustc_middle/mir`.

Co-authored-by: Aman Arora <[email protected]>
Co-authored-by: Jennifer Wills <[email protected]>
Co-authored-by: Logan Mosier <[email protected]>
Because the old one is harder to read and confuse typing checkers.
As a none-native speaker I stumbled upon this, looked it up and couldn't find a phrase, so I made my own assumption that "in any way" was meant (which is the meaning I would've deduced anyway)
`rustc` allows passing in predefined target triples as well as JSON
target specification files. This change allows bootstrap to have the
first inkling about those differences. This allows building a
cross-compiler for an out-of-tree architecture (even though that
compiler won't work for other reasons).

Even if no one ever uses this functionality, I think the newtype
around the `Interned<String>` improves the readability of the code.
Fix src/test/run-make/static-pie/test-aslr.rs

Might be subject to the birthday paradox occasionally, causing spurious failures.

Addresses: rust-lang#70740 (review)
Use intra-doc links in core::iter module

This will make core::iter doc depend less on std doc.
add lazy normalization regression tests

We previously didn't have simple tests which fail if we aren't careful around lazy normalization.

We now do.
…r=spastorino

Remove leftover from emscripten fastcomp support

This is no longer used since rust-lang#63649
…hewjasper

Don't assign `()` to `!` MIR locals

Implements the fix described in rust-lang#73860 (comment).

Fixes rust-lang#73860

r? @matthewjasper
…i-obk

Use an UTF-8 locale for the linker.

Using a `C` locale breaks unicode filenames on Guix, where the linker is wrapped by a Guile program.
…atsakis

Move hir::Place to librustc_middle/hir

Needed to support rust-lang/project-rfc-2229#7

Currently rustc_typeck depends on rustc_middle for definition TypeckTables, etc.
For supporting project-rfc-2229#7, rustc_middle would've to depend on
rustc_typeck for Place -- introducing a circular dependency.

This resembles the MIR equivalent of `Place` located in `lbrustc_middle/mir`.

Separate PR for this move will make the actual PR for using Places to represent captures cleaner/more focused.

r? @nikomatsakis  @matthewjasper
…onas-schievink

docs: better demonstrate that None values are skipped as many times a…

…s needed
warn about uninitialized multi-variant enums

Fixes rust-lang#73608
Fix Arc::as_ptr docs

As a non-native speaker I stumbled upon this, looked it up and couldn't find a phrase, so I made my own assumption that "in any way" was meant (which is the meaning I would've deduced anyway)
intra-doc links: resolve modules in the type namespace

Fixes rust-lang#62830

Modules actually live in the type namespace, not all three, and it's not possible to clash a type with a module.
@Manishearth
Copy link
Member Author

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

@bors
Copy link
Contributor

bors commented Jul 17, 2020

📌 Commit c587386 has been approved by Manishearth

@rustbot rustbot added the rollup A PR which is a rollup label Jul 17, 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 Jul 17, 2020
@bors
Copy link
Contributor

bors commented Jul 17, 2020

⌛ Testing commit c587386 with merge d3df851...

@Manishearth
Copy link
Member Author

@bors treeclosed=5

I'm around

@bors
Copy link
Contributor

bors commented Jul 18, 2020

☀️ Test successful - checks-actions, checks-azure
Approved by: Manishearth
Pushing d3df851 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jul 18, 2020
@bors bors merged commit d3df851 into rust-lang:master Jul 18, 2020
@bors bors mentioned this pull request Jul 18, 2020
@Manishearth Manishearth deleted the rollup-xadbh00 branch July 18, 2020 01:14
@matthiaskrgr
Copy link
Member

@Manishearth
Copy link
Member Author

There are a couple MIR changes, maybe those?

@matthiaskrgr
Copy link
Member

zulip thread

@eddyb
Copy link
Member

eddyb commented Jul 21, 2020

Update on the perf: the regression was (mostly?) in the linker, from #74416, which #74478 reverted.

@eddyb
Copy link
Member

eddyb commented Jul 21, 2020

Oh and because of the revert was tested, we can measure the impact of this rollup without the big linker regression: https://perf.rust-lang.org/compare.html?start=39d5a61f2e4e237123837f5162cc275c2fd7e625&end=556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688

@nnethercote
Copy link
Contributor

nnethercote commented Jul 22, 2020

Those results shows that the linker regression caused all of the regression. With it removed, the remaining 17 PRs actually gave some small wins, except for two unimportant exceptions:

  • serde-doc-full: a 4.6% regression, but rustdoc measurements are really new and still bouncing around a lot, so it doesn't matter.
  • script-servo-2-opt: up to 12% regressions for incremental, but those ones are very noisy due to CGU partitioning, so I'm content to ignore it too.

So, I think we are done here! Thanks to @Mark-Simulacrum and @eddyb for their efforts on this.

@cuviper cuviper added this to the 1.47.0 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.