Ruby
2.7.2p137(2020-10-01revision5445e0435260b449decf2ac16f9d09bae3cafe72)
|
#include "Context.h"
Go to the source code of this file.
Macros | |
#define | __asm__ asm |
Functions | |
int | coroutine_save_stack (struct coroutine_context *context) |
__attribute__ ((noreturn, noinline)) | |
__attribute__ ((noreturn)) | |
struct coroutine_context * | coroutine_transfer (struct coroutine_context *current, struct coroutine_context *target) |
__attribute__ | ( | (noreturn) | ) |
Definition at line 95 of file Context.c.
References coroutine_context::base, NULL, coroutine_context::stack_pointer, and coroutine_context::used.
__attribute__ | ( | (noreturn, noinline) | ) |
Definition at line 66 of file Context.c.
References _longjmp(), assert, coroutine_context::base, memcpy(), coroutine_context::stack, coroutine_context::stack_pointer, coroutine_context::state, top, and coroutine_context::used.
int coroutine_save_stack | ( | struct coroutine_context * | context | ) |
Definition at line 38 of file Context.c.
References assert, coroutine_context::base, coroutine_context::stack, and coroutine_context::stack_pointer.
Referenced by coroutine_transfer().
struct coroutine_context* coroutine_transfer | ( | struct coroutine_context * | current, |
struct coroutine_context * | target | ||
) |
Definition at line 115 of file Context.c.
References assert, coroutine_context::base, coroutine_restore_stack(), coroutine_save_stack(), coroutine_context::from, and coroutine_context::stack.