Files
d01021933c [6.4][IRGen] Add proper availability for cancellation shield runtime functions (#93651)
**Description**: `swift_task_cancellationShieldPush` and
`swift_task_cancellationShieldPop` were added in Swift 6.4, but their
entries in `RuntimeFunctions.def` used `ConcurrencyAvailability`, so
IRGen referenced them strongly even when the deployment target is older
than the 6.4 runtime.

We should fix the availability to express the 6.4 introduction timeline
correctly.

**Scope**: Only changes how the symbols are referenced when the
deployment target is older than 6.4. No runtime or ABI changes.

**Risk**: Low. Corrects runtime availability for existing functions. No
effect on already working configurations.

**Testing**: New IRGen test
`test/IRGen/availability_task_cancellation_shield.swift`

**Reviewers**: @ktoso @tshortli 

**Issues**: https://github.com/swiftlang/swift/issues/93579
rdar://190808599

**Original PRs**: https://github.com/swiftlang/swift/pull/93580

Co-authored-by: Mohamed Mosbah <mohamed.mosbah@jamf.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-28 00:40:12 -07:00
..