|
Zth (libzth)
|
#include <arch_arm.h>
Public Types | |
| typedef ContextBase< Impl > | base |
| typedef ContextBase< Impl > | base |
Public Member Functions | |
| size_t | calcStackSize (size_t size) noexcept |
| void | stackAlign (Stack &stack) noexcept |
| Impl & | impl () noexcept |
Return Impl this. | |
| Impl const & | impl () const noexcept |
Return Impl this. | |
Public Member Functions inherited from zth::impl::ContextBase< Impl > | |
| ContextAttr & | attr () noexcept |
| Return the context attributes, requested by the user. | |
| ContextAttr const & | attr () const noexcept |
| Return the context attributes, requested by the user. | |
| int | create () noexcept |
| Create context. | |
| void | destroy () noexcept |
| Destroy and cleanup context. | |
| int | initStack (Stack &stack, Stack &usable) noexcept |
| Allocate and initialize stack. | |
| void | deinitStack (Stack &stack) noexcept |
| Deinit and free stack. | |
| Stack const & | stack () const noexcept |
| Return the stack address. | |
| Stack const & | stackUsable () const noexcept |
| Return the start of the actual usable stack. | |
| size_t | calcStackSize (size_t size) noexcept |
| Compute the stack size, given the requested user size and current configuration. | |
| void * | allocStack (size_t size) noexcept |
| Allocate requested size of stack memory. | |
| void | deallocStack (Stack &stack) noexcept |
| Frees the previously allocated stack. | |
| void | stackAlign (Stack &stack) noexcept |
| Compute and modify the stack alignment and size, within the allocated space. | |
| void | valgrindRegister () noexcept |
| Register the current stack to valgrind. | |
| void | valgrindDeregister () noexcept |
| Deregister the current stack from valgrind. | |
| int | stackGuardInit () noexcept |
| Initialize guards around the stack memory. | |
| void | stackGuardDeinit () noexcept |
| Release the guards around the memory. | |
| void | stackGuard () noexcept |
| Configure the guard for the current fiber. | |
| void | stackGuard (Stack const &stack) noexcept |
| Configure the guard for the given stack. | |
| void * | stackGuard (void *p) noexcept |
| Configure the guard for the address. | |
| void | context_switch (Context &to) noexcept |
| Perform a context switch. | |
| void | context_push_regs () noexcept |
| Pre-sjlj context saving. | |
| void | context_pop_regs () noexcept |
| Post-sjlj context restoring. | |
| void | context_prepare_jmp (Impl &to, jmp_buf &env) noexcept |
| Pre-sjlj jump. | |
| void | die () noexcept |
Flag fiber as died after it returned from context_entry(). | |
| bool | alive () const noexcept |
| Check if fiber is still running. | |
| void * | stack_switch (void *stack, size_t size, void *(*f)(void *) noexcept, void *arg) noexcept |
Static Public Member Functions | |
| static size_t | pageSize () noexcept |
| static void * | sp () noexcept |
Static Public Member Functions inherited from zth::impl::ContextBase< Impl > | |
| static int | init () noexcept |
| One-time system initialization. | |
| static void | deinit () noexcept |
| Final system cleanup. | |
| static size_t | pageSize () noexcept |
| Get system's page size. | |
| static bool | stackGrowsDown (void const *reference) |
| Checks if the stack grows down or up. | |
| static void ** | sp (Stack const &stack) noexcept |
| Get the initial stack pointer for the given stack. | |
| static void | stack_push (void **&sp, void *p) noexcept |
| Push data into the stack. | |
| static void | set_sp (jmp_buf &env, void **sp) noexcept |
Set the stack pointer in a jmp_buf. | |
| static void | set_pc (jmp_buf &env, void *sp) noexcept |
Set the program counter in a jmp_buf. | |
| static void | context_trampoline_from_jmp_buf () noexcept |
| Entry point to jump to from a (sig)jmp_buf. | |
Protected Member Functions | |
| constexpr | ContextArch (ContextAttr const &attr) noexcept |
| constexpr | ContextArch (ContextAttr const &attr) noexcept |
Protected Member Functions inherited from zth::impl::ContextBase< Impl > | |
| constexpr | ContextBase (ContextAttr const &attr) noexcept |
| ~ContextBase () | |
| Dtor. | |
| Impl & | impl () noexcept |
Return Impl this. | |
| Impl const & | impl () const noexcept |
Return Impl this. | |
Definition at line 38 of file arch_arm.h.
| typedef ContextBase<Impl> zth::impl::ContextArch< Impl >::base |
Definition at line 40 of file arch_arm.h.
| typedef ContextBase<Impl> zth::impl::ContextArch< Impl >::base |
Definition at line 21 of file arch_generic.h.
|
inlineexplicitconstexprprotectednoexcept |
Definition at line 44 of file arch_arm.h.
|
inlineexplicitconstexprprotectednoexcept |
Definition at line 24 of file arch_generic.h.
|
inlinenoexcept |
Definition at line 63 of file arch_arm.h.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinestaticnoexcept |
Definition at line 53 of file arch_arm.h.
|
inlinestaticnoexcept |
Definition at line 115 of file arch_arm.h.
|
inlinenoexcept |
Definition at line 84 of file arch_arm.h.