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.
This commit is contained in:
Jeff Johnston 2006-06-05 19:46:18 +00:00
parent 6ea486a6df
commit 4c602151f2
3 changed files with 16 additions and 15 deletions

View File

@ -1,3 +1,9 @@
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.
2006-05-30 Shaun Jackman <sjackman@gmail.com>
* arm/Makefile.in: Add Linux syscall interface.

View File

@ -24,18 +24,6 @@ do_AngelSWI (int reason, void * arg)
}
#endif /* ARM_RDI_MONITOR */
void
abort (void)
{
extern void _exit (int n);
#ifdef ARM_RDI_MONITOR
do_AngelSWI (AngelSWI_Reason_ReportException,
(void *) ADP_Stopped_RunTimeError);
#else
_exit(17);
#endif
}
unsigned __attribute__((weak))
alarm (unsigned seconds)
{

View File

@ -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