Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2006-06-05 23:46:18 +0400
committerJeff Johnston <jjohnstn@redhat.com>2006-06-05 23:46:18 +0400
commit4c602151f22a2f3bef9eed5adc61be1e3f9762d6 (patch)
tree209e360c97606d12b4c3971ff561cd8be2975f3e /libgloss/arm/syscalls.c
parent6ea486a6df01b53b8b908fa49ce22f72a8ea47b2 (diff)
2006-06-05 Shaun Jackman <sjackman@gmail.com>
* arm/syscalls.c (kill) [ARM_RDI_MONITOR]: Use the signal argument to choose an ADP exception reason. * arm/libcfunc.c (abort): Remove this function.
Diffstat (limited to 'libgloss/arm/syscalls.c')
-rw-r--r--libgloss/arm/syscalls.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/libgloss/arm/syscalls.c b/libgloss/arm/syscalls.c
index a6d2f747e..855a374bd 100644
--- a/libgloss/arm/syscalls.c
+++ b/libgloss/arm/syscalls.c
@@ -13,6 +13,7 @@
#include <sys/times.h>
#include <errno.h>
#include <reent.h>
+#include <signal.h>
#include <unistd.h>
#include "swi.h"
@@ -463,9 +464,15 @@ _kill (int pid, int sig)
{
(void)pid; (void)sig;
#ifdef ARM_RDI_MONITOR
- /* Note: Both arguments are thrown away. */
- return do_AngelSWI (AngelSWI_Reason_ReportException,
- (void *) ADP_Stopped_ApplicationExit);
+ /* Note: The pid argument is thrown away. */
+ switch (sig) {
+ case SIGABRT:
+ return do_AngelSWI (AngelSWI_Reason_ReportException,
+ (void *) ADP_Stopped_RunTimeError);
+ default:
+ return do_AngelSWI (AngelSWI_Reason_ReportException,
+ (void *) ADP_Stopped_ApplicationExit);
+ }
#else
asm ("swi %a0" :: "i" (SWI_Exit));
#endif