Nonworking non-GNU OS port code moved to ports repository.
[glibc-ports.git] / sysdeps / hppa / setjmp.S
blobf10a7a304d60d30e1c742ff98a88b90cd9f77d6d
1 /* setjmp for HPPA.
2    Copyright (C) 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public
7    License as published by the Free Software Foundation; either
8    version 2.1 of the License, or (at your option) any later version.
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library; if not, write to the Free
17    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18    02111-1307 USA.  */
20 #include <sysdep.h>
21 #define _ASM
22 #define _SETJMP_H
23 #include <bits/setjmp.h>
26         .text
27         .align 4
28         .import __sigjmp_save, code
29         .globl __sigsetjmp
30         .export __sigsetjmp, code
31         .proc
32         .callinfo
33 __sigsetjmp:
34         stw     %r3, 0(%r26)
35         stw     %r4, 8(%r26)
36         stw     %r5, 12(%r26)
37         stw     %r6, 16(%r26)
38         stw     %r7, 20(%r26)
39         stw     %r8, 24(%r26)
40         stw     %r9, 28(%r26)
41         stw     %r10, 32(%r26)
42         stw     %r11, 36(%r26)
43         stw     %r12, 40(%r26)
44         stw     %r13, 44(%r26)
45         stw     %r14, 48(%r26)
46         stw     %r15, 52(%r26)
47         stw     %r16, 56(%r26)
48         stw     %r17, 60(%r26)
49         stw     %r18, 64(%r26)
50         stw     %r19, 68(%r26)
51         stw     %r27, 72(%r26)
52         stw     %r30, 76(%r26)
54         stw     %rp, 80(%r26)
56         ldo     88(%r26),%r19
57         fstds,ma %fr12, 8(%r19) /* 88 */
58         fstds,ma %fr13, 8(%r19) /* 96 */
59         fstds,ma %fr14, 8(%r19) /* 104 */
60         fstds,ma %fr15, 8(%r19) /* 112 */
61         fstds,ma %fr16, 8(%r19) /* 120 */
62         fstds,ma %fr17, 8(%r19) /* 128 */
63         fstds,ma %fr18, 8(%r19) /* 136 */
64         fstds,ma %fr19, 8(%r19) /* 144 */
65         fstds,ma %fr20, 8(%r19) /* 152 */
66         fstds    %fr21, 0(%r19) /* 160 */
67         b __sigjmp_save
68         nop
69         .procend