Skip to content

NLL Liveness: Skip regionless types when visiting free regions #52037

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
Jul 7, 2018

Conversation

lqd
Copy link
Member

@lqd lqd commented Jul 3, 2018

The tuple-stress benchmark exercises the liveness constraint generation code for types which do not have regions

Closes #52027

@rust-highfive
Copy link
Contributor

r? @petrochenkov

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

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 3, 2018
@lqd
Copy link
Member Author

lqd commented Jul 4, 2018

r? @nikomatsakis

@nikomatsakis
Copy link
Contributor

@bors try

@bors
Copy link
Collaborator

bors commented Jul 4, 2018

⌛ Trying commit d84c9bc5bc629fe7b228ee1646c5fe6a9ded2db6 with merge 329e5d1d5d4c35180844125567dc932e9bf492fe...

fn visit_ty(&mut self, t: Ty<'tcx>) -> bool {
t.super_visit_with(self)
self.super_ty(t)
Copy link
Contributor

Choose a reason for hiding this comment

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

oh, my bad, I should have written super_visit_with I suppose. Let's revert this part of the diff and just have the code below invoke super_visit_with — although I do prefer (these days) to make matching super_ty methods and so forth, it doesn't seem to be the standard in TypeVisitor.

@nikomatsakis
Copy link
Contributor

@bors try-

Actually, we can probably just land this and see the perf afterwards. It can't be worse

@bors
Copy link
Collaborator

bors commented Jul 4, 2018

💥 Test timed out

The tuple-stress benchmark exercises the liveness constraint generation code for types which do not have regions
@lqd lqd force-pushed the skipping-regionless-types branch from d84c9bc to 0190286 Compare July 4, 2018 06:51
@nikomatsakis
Copy link
Contributor

@bors r+

@bors
Copy link
Collaborator

bors commented Jul 4, 2018

📌 Commit 0190286 has been approved by nikomatsakis

@bors bors 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-review Status: Awaiting review from the assignee but also interested parties. labels Jul 4, 2018
@bors
Copy link
Collaborator

bors commented Jul 7, 2018

⌛ Testing commit 0190286 with merge 599d2c0...

bors added a commit that referenced this pull request Jul 7, 2018
NLL Liveness: Skip regionless types when visiting free regions

The tuple-stress benchmark exercises the liveness constraint generation code for types which do not have regions

Closes #52027
@bors
Copy link
Collaborator

bors commented Jul 7, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: nikomatsakis
Pushing 599d2c0 to master...

@bors bors merged commit 0190286 into rust-lang:master Jul 7, 2018
@ljedrz
Copy link
Contributor

ljedrz commented Jul 7, 2018

Looks like a nice improvement!

16,241.58% > 2,243.30% (over 7 times less) for tuple-stress

@lqd lqd deleted the skipping-regionless-types branch July 7, 2018 22:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

6 participants