forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Change the async ABI to not pass the active task and executor.
Most of the async runtime functions have been changed to not expect the task and executor to be passed in. When knowing the task and executor is necessary, there are runtime functions available to recover them. The biggest change I had to make to a runtime function signature was to swift_task_switch, which has been altered to expect to be passed the context and resumption function instead of requiring the caller to park the task. This has the pleasant consequence of allowing the implementation to very quickly turn around when it recognizes that the current executor is satisfactory. It does mean that on arm64e we have to sign the continuation function pointer as an argument and then potentially resign it when assigning into the task's resume slot. rdar://70546948
- Loading branch information
Showing
88 changed files
with
624 additions
and
684 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.