summaryrefslogtreecommitdiffstats
path: root/libgloss/spu/syscalls.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgloss/spu/syscalls.c')
-rw-r--r--libgloss/spu/syscalls.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libgloss/spu/syscalls.c b/libgloss/spu/syscalls.c
index e4509c097..f2f292853 100644
--- a/libgloss/spu/syscalls.c
+++ b/libgloss/spu/syscalls.c
@@ -32,7 +32,7 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <errno.h>
#include "jsre.h"
-void
+int
__send_to_ppe (unsigned int signalcode, unsigned int opcode, void *data)
{
@@ -49,5 +49,10 @@ __send_to_ppe (unsigned int signalcode, unsigned int opcode, void *data)
asm ("sync");
f ();
errno = ((unsigned int *) data)[3];
+
+ /*
+ * Return the rc code stored in slot 0.
+ */
+ return ((unsigned int *) data)[0];
}