Skip to content

Fact generation for liveness calculations in Polonius - #60266

Merged
bors merged 3 commits into
rust-lang:masterfrom
amandasystems:polonius-liveness
Jul 13, 2019
Merged

Fact generation for liveness calculations in Polonius#60266
bors merged 3 commits into
rust-lang:masterfrom
amandasystems:polonius-liveness

Conversation

@amandasystems

Copy link
Copy Markdown
Contributor

This PR tracks ongoing work to extend rustc with support for generating variable use, definition, and later also drop output for the Polonius solver, the whole of which is being tracked in Polonius Issue #104.

@rust-highfive

Copy link
Copy Markdown
Contributor

r? @eddyb

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

@rust-highfiverust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 25, 2019
@amandasystems

Copy link
Copy Markdown
ContributorAuthor

r? @nikomatsakis

@rust-highfive

This comment has been minimized.

@nikomatsakisnikomatsakis left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks basically correct to me!

@nikomatsakisnikomatsakis added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 30, 2019
@nikomatsakis

Copy link
Copy Markdown
Contributor

Marking as "waiting on author", as we're waiting on @AlbinS to do some of the next steps.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

seems correct

@rust-highfive

This comment has been minimized.

@rust-highfive

This comment has been minimized.

@bors

This comment has been minimized.

@rust-highfive

This comment has been minimized.

@amandasystems

Copy link
Copy Markdown
ContributorAuthor

Now waiting for changes to land in Polonius: rust-lang/polonius#105

@amandasystemsamandasystems changed the title [WIP] Fact generation for liveness calculations in PoloniusFact generation for liveness calculations in PoloniusJun 7, 2019
@amandasystems

Copy link
Copy Markdown
ContributorAuthor

Hopefully not WIP anymore now that rust-lang/polonius#104 is merged!

@lqdlqd added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 7, 2019
@bors

bors commented Jun 10, 2019

Copy link
Copy Markdown
Collaborator

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

@amandasystems

Copy link
Copy Markdown
ContributorAuthor

We have decided to do preliminary work on integrating initializiation tracking as well before merging this in order to get (hopefully) exactly the same output as rustc from Polonius, so back to WIP!

@amandasystemsamandasystems changed the title Fact generation for liveness calculations in Polonius[WIP] Fact generation for liveness calculations in PoloniusJun 12, 2019
@lqdlqd added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 12, 2019
@bors

bors commented Jun 14, 2019

Copy link
Copy Markdown
Collaborator

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

@amandasystems

Copy link
Copy Markdown
ContributorAuthor

This branch now has preliminary liveness calculations that uses a hack to extract initialisation status, which is needed for correct drop-liveness calculations. When we have initialisation tracking in Polonius that hack will go away, but for now and to the best of our knowledge these inputs compute exactly the same region liveness tuples as rustc previously generated, including for tricky edge cases™.

@amandasystemsamandasystems changed the title [WIP] Fact generation for liveness calculations in PoloniusFact generation for liveness calculations in PoloniusJul 9, 2019
@nikomatsakis

Copy link
Copy Markdown
Contributor

@bors r+

@lqdlqd removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 12, 2019
@lqd

lqd commented Jul 12, 2019

Copy link
Copy Markdown
Member

Just in case bors ignores commands on S-waiting-on-author:

@bors r=nikomatsakis

@emilyalbini

Copy link
Copy Markdown
Member

@bors r=nikomatsakis

@bors

bors commented Jul 12, 2019

Copy link
Copy Markdown
Collaborator

📌 Commit 0612a666cd6529cd7a351a8f5d5697f45b2a126e has been approved by nikomatsakis

@borsbors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 12, 2019
@bors

This comment has been minimized.

@borsbors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jul 12, 2019
Albin Stjerna added 3 commits July 12, 2019 22:41
Notably contains an ugly hack to generate initialization information for
variables that will go away when we have that functionality in Polonius.
@lqd

lqd commented Jul 13, 2019

Copy link
Copy Markdown
Member

Rebase is done

@bors r=nikomatsakis

@bors

bors commented Jul 13, 2019

Copy link
Copy Markdown
Collaborator

📌 Commit 9d3c59d has been approved by nikomatsakis

@borsbors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 13, 2019
@bors

bors commented Jul 13, 2019

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 9d3c59d with merge 6b468c6...

bors added a commit that referenced this pull request Jul 13, 2019
Fact generation for liveness calculations in Polonius
This PR tracks ongoing work to extend `rustc` with support for generating variable use, definition, and later also drop output for the Polonius solver, the whole of which is being tracked in [Polonius Issue #104](rust-lang/polonius#104).
@bors

bors commented Jul 13, 2019

Copy link
Copy Markdown
Collaborator

☀️ Test successful - checks-azure, checks-travis, status-appveyor
Approved by: nikomatsakis
Pushing 6b468c6 to master...

@borsbors added the merged-by-bors This PR was explicitly merged by bors. label Jul 13, 2019
@bors
bors merged commit 9d3c59d into rust-lang:masterJul 13, 2019
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-borsThis PR was explicitly merged by bors.S-waiting-on-borsStatus: 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.

7 participants

@amandasystems@rust-highfive@nikomatsakis@bors@lqd@emilyalbini@eddyb