4.104.114.84.95
Last change
on this file since 04a8c937 was
f05b2ac,
checked in by Ralf Corsepius <ralf.corsepius@…>, on 04/21/04 at 16:01:48
|
Remove duplicate white lines.
|
-
Property mode set to
100644
|
File size:
1007 bytes
|
Line | |
---|
1 | /* Support files for GNU libc. Files in the C namespace go here. |
---|
2 | Files in the system namespace (ie those that start with an underscore) |
---|
3 | go in syscalls.c. |
---|
4 | |
---|
5 | Note: These functions are in a seperate file so that OS providers can |
---|
6 | overrride the system call stubs (defined in syscalls.c) without having |
---|
7 | to provide libc funcitons as well. */ |
---|
8 | |
---|
9 | #include <bspopts.h> |
---|
10 | |
---|
11 | #include "swi.h" |
---|
12 | |
---|
13 | #ifdef ARM_RDI_MONITOR |
---|
14 | |
---|
15 | static inline int |
---|
16 | do_AngelSWI (int reason, void * arg) |
---|
17 | { |
---|
18 | int value; |
---|
19 | asm volatile ("mov r0, %1; mov r1, %2; swi %a3; mov %0, r0" |
---|
20 | : "=r" (value) /* Outputs */ |
---|
21 | : "r" (reason), "r" (arg), "i" (AngelSWI) /* Inputs */ |
---|
22 | : "r0", "r1", "lr" |
---|
23 | /* Clobbers r0 and r1, and lr if in supervisor mode */); |
---|
24 | return value; |
---|
25 | } |
---|
26 | #endif /* ARM_RDI_MONITOR */ |
---|
27 | |
---|
28 | void |
---|
29 | abort_program (void) |
---|
30 | { |
---|
31 | #ifdef ARM_RDI_MONITOR |
---|
32 | do_AngelSWI (AngelSWI_Reason_ReportException, |
---|
33 | (void *) ADP_Stopped_RunTimeError); |
---|
34 | #else |
---|
35 | asm ("mov r0,#17\nswi %a0" :: "i" (SWI_Exit)); |
---|
36 | #endif |
---|
37 | } |
---|
38 | |
---|
39 | void |
---|
40 | alarm (void) |
---|
41 | { |
---|
42 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.