RetroArch/libretro-common/libco/genode.cpp
2023-02-23 13:15:14 +01:00

32 lines
600 B
C++

/*
libco.genode_secondary_stack (2018-09-15)
author: Emery Hemingway
license: public domain
*/
/* Genode include */
#include <base/thread.h>
/* Libco include */
#include <libco.h>
extern "C"
void *genode_alloc_secondary_stack(unsigned long stack_size)
{
try
{
return Genode::Thread::myself()->alloc_secondary_stack("libco", stack_size);
}
catch (...)
{
Genode::error("libco: failed to allocate ", stack_size, " byte secondary stack");
return nullptr;
}
}
extern "C"
void genode_free_secondary_stack(void *stack)
{
Genode::Thread::myself()->free_secondary_stack(stack);
}