llvm-project
2e414799 - [Coroutines] ABI Objects to improve code separation between different ABIs, users and utilities. (#109338)

Commit
1 year ago
[Coroutines] ABI Objects to improve code separation between different ABIs, users and utilities. (#109338) * Adds an ABI object class hierarchy to implement the coroutine ABIs (Switch, Asyc, and Retcon{Once}) * The ABI object improves the separation of the code related to users, ABIs and utilities. * No code changes are required by any existing users. * Each ABI overrides delegate methods for initialization, building the coroutine frame and splitting the coroutine, other methods may be added later. * CoroSplit invokes a generator lambda to instantiate the ABI object and calls the ABI object to carry out its primary operations. See RFC for more info: https://discourse.llvm.org/t/rfc-abi-objects-for-coroutines/81057
Author
Parents
Loading