aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgloss/arm/_kill.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libgloss/arm/_kill.c b/libgloss/arm/_kill.c
index fc77e80..278ded7 100644
--- a/libgloss/arm/_kill.c
+++ b/libgloss/arm/_kill.c
@@ -39,7 +39,13 @@ _kill (int pid, int sig)
}
}
+#if SEMIHOST_V2
+if (_has_ext_exit_extended ())
return do_AngelSWI (insn, block);
+else
+#endif
+ return do_AngelSWI (insn, (void*)block[0]);
+
#else
asm ("swi %a0" :: "i" (SWI_Exit));
#endif