summaryrefslogtreecommitdiffstats
path: root/libgloss/arm/_exit.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgloss/arm/_exit.c')
-rw-r--r--libgloss/arm/_exit.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/libgloss/arm/_exit.c b/libgloss/arm/_exit.c
new file mode 100644
index 000000000..ed0087637
--- /dev/null
+++ b/libgloss/arm/_exit.c
@@ -0,0 +1,15 @@
+#include <_ansi.h>
+
+int _kill _PARAMS ((int, int));
+void _exit _PARAMS ((int));
+
+void
+_exit (int status)
+{
+ /* There is only one SWI for both _exit and _kill. For _exit, call
+ the SWI with the second argument set to -1, an invalid value for
+ signum, so that the SWI handler can distinguish the two calls.
+ Note: The RDI implementation of _kill throws away both its
+ arguments. */
+ _kill (status, -1);
+}