OSDN Git Service

hidden_def/hidden_proto: convert all users (I hope) termios split, add some missing...
[uclinux-h8/uClibc.git] / libc / sysdeps / linux / v850 / __longjmp.S
1 /*
2  * libc/sysdeps/linux/v850/longjmp.S -- `longjmp' for v850
3  *
4  *  Copyright (C) 2001,02  NEC Corporation
5  *  Copyright (C) 2001,02  Miles Bader <miles@gnu.org>
6  *
7  * This file is subject to the terms and conditions of the GNU Lesser
8  * General Public License.  See the file COPYING.LIB in the main
9  * directory of this archive for more details.
10  * 
11  * Written by Miles Bader <miles@gnu.org>
12  */
13
14 #include <features.h>
15 #define _SETJMP_H
16 #define _ASM
17 #include <bits/setjmp.h>
18
19 #include <clinkage.h>
20
21         .text
22 C_ENTRY(__longjmp):
23         /* Save registers */
24         mov     r6, ep
25         sld.w   0[ep], sp
26         sld.w   4[ep], lp
27         sld.w   8[ep], r2
28         sld.w   12[ep], r20
29         sld.w   16[ep], r21
30         sld.w   20[ep], r22
31         sld.w   24[ep], r23
32         sld.w   28[ep], r24
33         sld.w   32[ep], r25
34         sld.w   36[ep], r26
35         sld.w   40[ep], r27
36         sld.w   44[ep], r28
37         sld.w   48[ep], r29
38         mov     1, r10                  // return val
39         jmp     [lp]
40 C_END(__longjmp)
41
42 .weak C_SYMBOL_NAME(__sigprocmask)
43 C_SYMBOL_NAME(__sigprocmask) = C_SYMBOL_NAME(sigprocmask)
44 libc_hidden_def(__longjmp)