-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
[nll] teach SCC about 'static #53178
Copy link
Copy link
Closed
Labels
A-NLLArea: Non-lexical lifetimes (NLL)Area: Non-lexical lifetimes (NLL)NLL-performantWorking towards the "performance is good" goalWorking towards the "performance is good" goalT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Milestone
Metadata
Metadata
Assignees
Labels
A-NLLArea: Non-lexical lifetimes (NLL)Area: Non-lexical lifetimes (NLL)NLL-performantWorking towards the "performance is good" goalWorking towards the "performance is good" goalT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Right now, if you have a region R where
R: 'static, the SCC computation in NLL is not aware that this means thatR = 'static. If we taught it that'static: Rfor all R, though, it would put them in the same SCC. This might be a big win for things like html5ever, as it would collapse almost all the regions into one big SCC. (I was doing some profiling on html5ever using the branch from #53177, and it seemed like this would help further drop the overhead.)