source: trunk/libs/newlib/src/newlib/libc/machine/mn10300/setjmp.S @ 444

Last change on this file since 444 was 444, checked in by satin@…, 6 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 1.3 KB
Line 
1        .file "setjmp.S"
2
3        .section .text
4        .align 1
5        .global _setjmp
6#ifdef __AM33__
7#ifdef __AM33_2__
8        .am33_2
9#else
10        .am33
11#endif
12#endif
13_setjmp:
14        mov d0,a0
15        mov d2,(0,a0)
16        mov d3,(4,a0)
17        mov mdr,d1
18        mov d1,(8,a0)
19        mov a2,(12,a0)
20        mov a3,(16,a0)
21        mov sp,a1
22        mov a1,(20,a0)
23#ifdef __AM33__
24        add 24,a0
25        mov r4,(a0+)
26        mov r5,(a0+)
27        mov r6,(a0+)
28        mov r7,(a0+)
29#ifdef __AM33_2__
30        fmov fs4,(a0+)
31        fmov fs5,(a0+)
32        fmov fs6,(a0+)
33        fmov fs7,(a0+)
34        fmov fs8,(a0+)
35        fmov fs9,(a0+)
36        fmov fs10,(a0+)
37        fmov fs11,(a0+)
38        fmov fs12,(a0+)
39        fmov fs13,(a0+)
40        fmov fs14,(a0+)
41        fmov fs15,(a0+)
42        fmov fs16,(a0+)
43        fmov fs17,(a0+)
44        fmov fs18,(a0+)
45        fmov fs19,(a0+)
46#endif
47#endif
48        sub d0,d0
49        rets
50
51        .global _longjmp
52_longjmp:
53        mov d0,a0
54        mov (8,a0),d2
55        mov d2,mdr
56        mov (0,a0),d2
57        mov (4,a0),d3
58        mov (12,a0),a2
59        mov (16,a0),a3
60        mov (20,a0),a1
61        mov a1,sp
62#ifdef __AM33__
63        add 24,a0
64        mov (a0+),r4
65        mov (a0+),r5
66        mov (a0+),r6
67        mov (a0+),r7
68#ifdef __AM33_2__
69        fmov (a0+),fs4
70        fmov (a0+),fs5
71        fmov (a0+),fs6
72        fmov (a0+),fs7
73        fmov (a0+),fs8
74        fmov (a0+),fs9
75        fmov (a0+),fs10
76        fmov (a0+),fs11
77        fmov (a0+),fs12
78        fmov (a0+),fs13
79        fmov (a0+),fs14
80        fmov (a0+),fs15
81        fmov (a0+),fs16
82        fmov (a0+),fs17
83        fmov (a0+),fs18
84        fmov (a0+),fs19
85#endif
86#endif
87        cmp 0,d1
88        bne L1
89        mov 1,d1
90L1:
91        mov d1,d0
92        retf [],0
Note: See TracBrowser for help on using the repository browser.