Open
Description
So far we haven't done many deep dives into the code LLVM produces for generators. I think there's a lot of room for improvement here, both in the compiler and in LLVM.
Issues (please add more as they come up):
- [codegen] unnecessary panicking branch in
foo().await
(vs equivalentFutureImpl.await
) #71093 unnecessary panicking branch infoo().await
(vs equivalentFutureImpl.await
)
Some more ideas are in #71093 (comment)
Related tracking issues:
- Tracking Issue for Coroutine Memory Usage #69826 Generator Memory Usage
- Tracking issue for more precise coroutine captures #69663 More precise generator captures
Metadata
Metadata
Assignees
Labels
Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.Area: Async & AwaitArea: CoroutinesAsync-await issues that have been triaged during a working group meeting.Category: An issue highlighting optimization opportunities or PRs implementing suchIssue: Problems and improvements with respect to binary size of generated code.Issue: Problems and improvements with respect to performance of generated code.Relevant to the compiler team, which will review and decide on the PR/issue.Issues about issues themselves ("bugs about bugs")