Skip to content

incr.comp.: Properly incorporate symbol linkage and visibility into CGU hash. #43612

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 1 commit into from
Aug 2, 2017

Conversation

michaelwoerister
Copy link
Member

This PR fixes the way the CGU hash for incr. comp. is computed. The CGU hash represents which TransItems are emitted into which codegen unit with which linkage and visibility. Before the new, LLVM-independent symbol internalizer the CGU hash did not accurately contain TransItem linkage and visibility because we would not enable symbol internalization in incremental mode anyway. The new internalizer is also run in incremental mode which uncovered the inaccuracy of CGU hashing. Luckily, the fix is rather simple.

r? @eddyb
cc @nikomatsakis

@eddyb
Copy link
Member

eddyb commented Aug 2, 2017

@bors r+

@bors
Copy link
Collaborator

bors commented Aug 2, 2017

📌 Commit b2c3a41 has been approved by eddyb

@bors
Copy link
Collaborator

bors commented Aug 2, 2017

⌛ Testing commit b2c3a41 with merge 22f256f...

bors added a commit that referenced this pull request Aug 2, 2017
incr.comp.: Properly incorporate symbol linkage and visibility into CGU hash.

This PR fixes the way the CGU hash for incr. comp. is computed. The CGU hash represents which `TransItems` are emitted into which codegen unit with which linkage and visibility. Before the new, LLVM-independent symbol internalizer the CGU hash did not accurately contain `TransItem` linkage and visibility because we would not enable symbol internalization in incremental mode anyway. The new internalizer is also run in incremental mode which uncovered the inaccuracy of CGU hashing. Luckily, the fix is rather simple.

r? @eddyb
cc @nikomatsakis
@bors
Copy link
Collaborator

bors commented Aug 2, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: eddyb
Pushing 22f256f to master...

@bors bors merged commit b2c3a41 into rust-lang:master Aug 2, 2017
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.

3 participants