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

Preparatory refactorings for collector-driven trans. #33473

Merged
merged 16 commits into from
May 10, 2016

Conversation

michaelwoerister
Copy link
Member

This is a set of refactorings that allows to do translation item collection and partitioning before LocalCrateContext instances or LLVM modules are generated. As a consequence we can now create LocalCrateContexts already with knowledge of the codegen unit it will be used for. This is a preparation step for driving trans by the results of codegen unit partitioning.

@rust-highfive
Copy link
Collaborator

r? @pnkfelix

(rust_highfive has picked a reviewer for you, use r? to override)

@michaelwoerister
Copy link
Member Author

cc @rust-lang/compiler

@@ -1191,7 +1191,7 @@ fn create_trans_items_for_default_impls<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>,
assert!(mth.is_provided);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this commit seems good

@nikomatsakis
Copy link
Contributor

@michaelwoerister this seems pretty unobjectionable. r=me but some nits:

  • can we rename ccx to scx in those cases where we no longer take a CrateContext but just a SharedCrateContext?
  • I feel like there should be a comment explaining how the various parts fit together; that could perhaps be deferred until things are a bit more settled. But right now there seems to be a lot of XxxCrateContext data structures and the organization thereof is a bit unclear.

@michaelwoerister
Copy link
Member Author

Great. Thanks for the quick review!

@michaelwoerister
Copy link
Member Author

@bors r=nikomatsakis

@bors
Copy link
Contributor

bors commented May 6, 2016

📌 Commit b37d7a4 has been approved by nikomatsakis

Manishearth added a commit to Manishearth/rust that referenced this pull request May 8, 2016
…, r=nikomatsakis

Preparatory refactorings for collector-driven trans.

This is a set of refactorings that allows to do translation item collection and partitioning before LocalCrateContext instances or LLVM modules are generated. As a consequence we can now create LocalCrateContexts already with knowledge of the codegen unit it will be used for. This is a preparation step for driving trans by the results of codegen unit partitioning.
bors added a commit that referenced this pull request May 8, 2016
Rollup of 8 pull requests

- Successful merges: #33369, #33373, #33404, #33406, #33420, #33424, #33426, #33473
- Failed merges:
bors added a commit that referenced this pull request May 8, 2016
Rollup of 8 pull requests

- Successful merges: #33369, #33373, #33404, #33406, #33420, #33424, #33426, #33473
- Failed merges:
@bors
Copy link
Contributor

bors commented May 9, 2016

⌛ Testing commit b37d7a4 with merge e2c69e3...

@bors
Copy link
Contributor

bors commented May 9, 2016

💔 Test failed - auto-linux-64-cross-freebsd

@bors
Copy link
Contributor

bors commented May 9, 2016

☔ The latest upstream changes (presumably #33478) made this pull request unmergeable. Please resolve the merge conflicts.

@michaelwoerister
Copy link
Member Author

@bors r=nikomatsakis

rebased ...

@bors
Copy link
Contributor

bors commented May 9, 2016

📌 Commit 30e19aa has been approved by nikomatsakis

@Manishearth
Copy link
Member

(fails travis)

@michaelwoerister
Copy link
Member Author

@bors r=nikomatsakis

@bors
Copy link
Contributor

bors commented May 9, 2016

📌 Commit 118cc9e has been approved by nikomatsakis

@bors
Copy link
Contributor

bors commented May 10, 2016

⌛ Testing commit 118cc9e with merge 1939b76...

bors added a commit that referenced this pull request May 10, 2016
…sakis

Preparatory refactorings for collector-driven trans.

This is a set of refactorings that allows to do translation item collection and partitioning before LocalCrateContext instances or LLVM modules are generated. As a consequence we can now create LocalCrateContexts already with knowledge of the codegen unit it will be used for. This is a preparation step for driving trans by the results of codegen unit partitioning.
@bors bors merged commit 118cc9e into rust-lang:master May 10, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants