Skip to content

[lldb][progress] Improve Swift progress reporting (#7769) #8098

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

Conversation

chelcassanova
Copy link

LLDB's progress reporting infrastructure has had the ability to add details to an overall progress report (added in
https://reviews.llvm.org/D143690) but this had yet to be implemented in existing progress reports. This commit adds this functionality to progress reports made for Swift operations (such as caching user imports) so that instead of sending several individual progress reports for each step in these operations, one progress report is created and then incrementally updated.

Importing Swift modules takes place in the Swift compiler which uses a callback function so that LLDB can perform its progress report. This originally called into a function in lldb_private::SwiftASTContext but will instead use a lambda function to increment a locally created progress report.

Related to: swiftlang/swift#69730

rdar://105286354
(cherry picked from commit 4106480)

LLDB's progress reporting infrastructure has had the ability to add
details to an overall progress report (added in
https://reviews.llvm.org/D143690) but this had yet to be implemented in
existing progress reports. This commit adds this functionality to
progress reports made for Swift operations (such as caching user
imports) so that instead of sending several individual progress reports
for each step in these operations, one progress report is created and
then incrementally updated.

Importing Swift modules takes place in the Swift compiler which uses a
callback function so that LLDB can perform its progress report. This
originally called into a function in `lldb_private::SwiftASTContext` but
will instead use a lambda function to increment a locally created
progress report.

Related to: swiftlang/swift#69730

rdar://105286354
(cherry picked from commit 4106480)
@chelcassanova chelcassanova merged commit d376aac into swiftlang:next Feb 1, 2024
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.

1 participant