#include <cafe/os.h>

int OSSwitchFiberEx(u32 arg0,
                    u32 arg1,
                    u32 arg2,
                    u32 arg3,
                    u32 pc, 
                    u32 newsp);


arg0..arg3 Argument passed to the function specified by pc.
pc Location from where the specified function starts to run.
newsp Pointer to new stack (location of the highest possible address value).

Return Values

The result of the function pointed by pc.


Executes a function pointed to by pc using the new stack pointed to by newsp. When the function returns, the old stack pointer is restored.

Unlike OSSwitchFiber, four arguments can be passed to a function specified by pc. The argument of the specified function does not need to be u32 type as long as it is a register passable type (such as pointers), and the number of arguments may be less than four.

Do Not Call From


See Also


Revision History

2013/05/08 Automated cleanup pass.
2012/07/31 Cleanup Pass
2006/08/23 Initial version.