35 lines
		
	
	
		
			722 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			722 B
		
	
	
	
		
			C
		
	
	
	
| /* Misc. operating system stubs.  */
 | |
| 
 | |
| #include <_ansi.h>
 | |
| #include <sys/types.h>
 | |
| #include <sys/stat.h>
 | |
| 
 | |
| /* _raise(), getpid(), and kill() are required by abort().
 | |
|    getpid/kill are prefixed with '_' because of MISSING_SYSCALL_NAMES.  */
 | |
| 
 | |
| int _DEFUN(_raise,(sig),
 | |
| 	   int sig)
 | |
| {
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| int _DEFUN(_getpid,(),)
 | |
| {
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| int _DEFUN(_kill,(pid, sig),
 | |
| 	   int pid _AND
 | |
| 	   int sig)
 | |
| {
 | |
|   if (pid == 0)
 | |
|     {
 | |
|       /* Narrow SIG down to a short, in case we're compiled with -mint32.  */
 | |
|       short sig2 = sig;
 | |
|       /* This causes the simulator to indicate abort() was called.
 | |
| 	 The format of r0 is defined by devo/include/wait.h.  */
 | |
|       asm ("mov.w %0,r0\n\tsleep" : : "r" (sig2) : "r0");
 | |
|     }
 | |
|   return 0;
 | |
| }
 |