RetroArch
Macros | Functions | Variables
armeabi.c File Reference
#include <libco.h>
#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#include <malloc.h>
Include dependency graph for armeabi.c:

Macros

#define LIBCO_C
 

Functions

 __asm__ (".arm\n" ".align 4\n" ".globl co_switch_arm\n" ".globl _co_switch_arm\n" "co_switch_arm:\n" "_co_switch_arm:\n" " stmia r1!, {r4, r5, r6, r7, r8, r9, r10, r11, sp, lr}\n" " ldmia r0!, {r4, r5, r6, r7, r8, r9, r10, r11, sp, pc}\n")
 
void co_switch_arm (cothread_t handle, cothread_t current)
 
cothread_t co_create (unsigned int size, void(*entrypoint)(void))
 
cothread_t co_active (void)
 
void co_delete (cothread_t handle)
 
void co_switch (cothread_t handle)
 

Variables

static thread_local uint32_t co_active_buffer [64]
 
static thread_local cothread_t co_active_handle
 

Macro Definition Documentation

◆ LIBCO_C

#define LIBCO_C

Function Documentation

◆ __asm__()

__asm__ ( ".arm\n" ".align 4\n" ".globl co_switch_arm\n" ".globl _co_switch_arm\n" "co_switch_arm:\n" "_co_switch_arm:\n" " stmia r1!  ,
{r4, r5, r6, r7, r8, r9, r10, r11, sp, lr}\n" " ldmia r0!  ,
{r4, r5, r6, r7, r8, r9, r10, r11, sp, pc}\n  
)
Here is the caller graph for this function:

◆ co_active()

cothread_t co_active ( void  )

co_active:

Gets the currently active context.

Returns: active context.

Here is the caller graph for this function:

◆ co_create()

cothread_t co_create ( unsigned  int,
void(*)(void  
)

co_create: : stack size : thread entry function callback

Create a co_thread.

Returns: cothread if successful, otherwise NULL.

◆ co_delete()

void co_delete ( cothread_t  cothread)

co_delete: : cothread object

Frees a co_thread.

Here is the call graph for this function:

◆ co_switch()

void co_switch ( cothread_t  cothread)

co_switch: : cothread object to switch to

Do a context switch to .

Here is the call graph for this function:

◆ co_switch_arm()

void co_switch_arm ( cothread_t  handle,
cothread_t  current 
)
Here is the caller graph for this function:

Variable Documentation

◆ co_active_buffer

thread_local uint32_t co_active_buffer[64]
static

◆ co_active_handle

thread_local cothread_t co_active_handle
static