Skip to content

Conversation

…ible (llvm#151120)

This is the refactoring portion of:
llvm#149516. My aim is for this
change to replicate current behaviour - just with Symbolization done
explicitly (and later than previously).

This change will enable us to perform symboliaztion after releasing the
locks in `OutputReport`; this is necessary on Apple platforms in order
to avoid a deadlock.

(cherry picked from commit 26f9166)
…lvm#151495)

Changes:

Apple only:
* Move OutputReport (and thus symbolization) after the locked region when reporting.
* ScopedReportBase constructor requires the thread_registry lock to be held, so the regions where ScopedReports get created must be inside the locked region.
* Bail early from MemoryAccess if we are symbolizing.

Other platforms should behave as before, outputting reports while the locks are held.

This is a follow up to llvm#151120,
which delayed symbolization of ScopedReports.

rdar://152829396
(cherry picked from commit cb1f1a7)
@DanBlackwell DanBlackwell self-assigned this Sep 2, 2025
@DanBlackwell DanBlackwell merged commit 06876a4 into swiftlang:stable/21.x Sep 3, 2025
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