Skip to content

Rollup of 4 pull requests #64000

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

Merged
merged 10 commits into from
Aug 29, 2019
Merged

Rollup of 4 pull requests #64000

merged 10 commits into from
Aug 29, 2019

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Aug 29, 2019

Successful merges:

Failed merges:

r? @ghost

GuillaumeGomez and others added 10 commits July 16, 2019 18:32
When performing a "fat" LTO the compiler has a whole mess of codegen
units that it links together. To do this it needs to select one module
as a "base" module and then link everything else into this module.
Previously LTO passes assume that there's at least one module in-memory
to link into, but nowadays that's not always true! With incremental
compilation modules may actually largely be cached and it may be
possible that there's no in-memory modules to work with.

This commit updates the logic of the LTO backend to handle modules a bit
more uniformly during a fat LTO. This commit immediately splits them
into two lists, one serialized and one in-memory. The in-memory list is
then searched for the largest module and failing that we simply
deserialize the first serialized module and link into that. This
refactoring avoids juggling three lists, two of which are serialized
modules and one of which is half serialized and half in-memory.

Closes rust-lang#63349
This commit removes the `wasm_syscall` feature from the
wasm32-unknown-unknown build of the standard library. This feature was
originally intended to allow an opt-in way to interact with the
operating system in a posix-like way but it was never stabilized.
Nowadays with the advent of the `wasm32-wasi` target that should
entirely replace the intentions of the `wasm_syscall` feature.
…, r=Mark-Simulacrum

Hide trait default methods

Fixes rust-lang#62499.

However, the question remains: do we want to extend it to this point or not?

r? @QuietMisdreavus
…k-Simulacrum

bootstrap: allow specifying mirror for bootstrap compiler download.
…michaelwoerister

rustc: Handle modules in "fat" LTO more robustly

When performing a "fat" LTO the compiler has a whole mess of codegen
units that it links together. To do this it needs to select one module
as a "base" module and then link everything else into this module.
Previously LTO passes assume that there's at least one module in-memory
to link into, but nowadays that's not always true! With incremental
compilation modules may actually largely be cached and it may be
possible that there's no in-memory modules to work with.

This commit updates the logic of the LTO backend to handle modules a bit
more uniformly during a fat LTO. This commit immediately splits them
into two lists, one serialized and one in-memory. The in-memory list is
then searched for the largest module and failing that we simply
deserialize the first serialized module and link into that. This
refactoring avoids juggling three lists, two of which are serialized
modules and one of which is half serialized and half in-memory.

Closes rust-lang#63349
…=dtolnay

std: Remove the `wasm_syscall` feature

This commit removes the `wasm_syscall` feature from the
wasm32-unknown-unknown build of the standard library. This feature was
originally intended to allow an opt-in way to interact with the
operating system in a posix-like way but it was never stabilized.
Nowadays with the advent of the `wasm32-wasi` target that should
entirely replace the intentions of the `wasm_syscall` feature.
@Centril
Copy link
Contributor Author

Centril commented Aug 29, 2019

@bors r+ p=4 rollup=never

@bors
Copy link
Collaborator

bors commented Aug 29, 2019

📌 Commit d920aa0 has been approved by Centril

@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 Aug 29, 2019
@bors
Copy link
Collaborator

bors commented Aug 29, 2019

⌛ Testing commit d920aa0 with merge fbdf1d2...

bors added a commit that referenced this pull request Aug 29, 2019
Rollup of 4 pull requests

Successful merges:

 - #62734 (Hide trait default methods)
 - #63953 (bootstrap: allow specifying mirror for bootstrap compiler download.)
 - #63956 (rustc: Handle modules in "fat" LTO more robustly)
 - #63979 (std: Remove the `wasm_syscall` feature)

Failed merges:

r? @ghost
@bors
Copy link
Collaborator

bors commented Aug 29, 2019

☀️ Test successful - checks-azure
Approved by: Centril
Pushing fbdf1d2 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Aug 29, 2019
@bors bors merged commit d920aa0 into rust-lang:master Aug 29, 2019
@Centril Centril deleted the rollup-70s9ar3 branch August 29, 2019 18:53
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 2019
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.

5 participants