Skip to content

[cherry-pick][lldb] Fix stepping through conformance methods #10505

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

Conversation

felipepiovezan
Copy link

This PR cherry-picks the upstream LLVM commits fixing stepping through conformance methods.

We already check this boolean in the `if` statement two lines above.
A future patch will need to create a new constructor for this class, and
extracting code out of its sole existing constructor will make this
easier.

This commit creates a helper function for the code computing the target
frame to step out to.
A subsequent commit will create a new constructor for ThreadPlanStepOut,
which needs to reuse much of the same logic of the existing constructor.
This commit places all of that reusable logic into a separate function.
…6163)

The function QueueThreadPlanForStepOutNoShouldStop has the semantics of
"go this parent frame"; ThreadPlanStepOut needs to respect that, not
skipping over any frames it finds uninteresting. This commit creates a
constructor that respects such instruction.
@felipepiovezan felipepiovezan requested a review from a team as a code owner April 17, 2025 22:02
@felipepiovezan
Copy link
Author

@swift-ci test

@felipepiovezan felipepiovezan force-pushed the felipe/fix_conformance_stepping branch from fcab55a to fddb994 Compare April 18, 2025 00:07
@felipepiovezan
Copy link
Author

Forgot to disable the test on linux/windows.

@felipepiovezan
Copy link
Author

@swift-ci test

@felipepiovezan
Copy link
Author

Han, the new test is failing as if the fix weren't there..

@felipepiovezan
Copy link
Author

@swift-ci test macos platform

@felipepiovezan
Copy link
Author

apple-llvm-project-pr-macos/branch-swift/release/6.2/build/Ninja-RelWithDebInfoAssert+stdlib-RelWithDebInfo

Have we always done CI with debug symbols for the swift std lib?

@felipepiovezan
Copy link
Author

Yup, confirmed, the presence of debug symbols in the standard library is causing this test to behave differently because we treat swift_task_alloc as a user function

@felipepiovezan
Copy link
Author

@swift-ci test

@felipepiovezan felipepiovezan force-pushed the felipe/fix_conformance_stepping branch from fddb994 to 1bd67e3 Compare April 18, 2025 17:17
@felipepiovezan
Copy link
Author

@swift-ci test

@adrian-prantl adrian-prantl merged commit f0041b4 into swiftlang:swift/release/6.2 Apr 20, 2025
3 checks passed
@felipepiovezan felipepiovezan deleted the felipe/fix_conformance_stepping branch April 20, 2025 22:03
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.

2 participants