]>
Commit | Line | Data |
---|---|---|
f7a9f785 | 1 | /* Copyright (C) 2000-2016 Free Software Foundation, Inc. |
9b51f431 UD |
2 | This file is part of the GNU C Library. |
3 | ||
4 | The GNU C Library is free software; you can redistribute it and/or | |
41bdb6e2 AJ |
5 | modify it under the terms of the GNU Lesser General Public |
6 | License as published by the Free Software Foundation; either | |
7 | version 2.1 of the License, or (at your option) any later version. | |
9b51f431 UD |
8 | |
9 | The GNU C Library is distributed in the hope that it will be useful, | |
10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
41bdb6e2 | 12 | Lesser General Public License for more details. |
9b51f431 | 13 | |
41bdb6e2 | 14 | You should have received a copy of the GNU Lesser General Public |
59ba27a6 PE |
15 | License along with the GNU C Library; if not, see |
16 | <http://www.gnu.org/licenses/>. */ | |
9b51f431 | 17 | |
ef5166a6 UD |
18 | /* |
19 | Floating Point Registers (FPRs) save routine | |
20 | */ | |
21 | ||
9b51f431 UD |
22 | #include <sysdep.h> |
23 | ||
ef5166a6 | 24 | ENTRY(_savefpr_all) |
7b8e0d49 MP |
25 | .globl C_TEXT(_savef14) |
26 | .globl C_TEXT(_savefpr_14) | |
ef5166a6 UD |
27 | C_TEXT(_savef14): |
28 | C_TEXT(_savefpr_14): stfd fp14,-144(r1) | |
3e7e947f | 29 | cfi_offset(fp14,-144) |
7b8e0d49 MP |
30 | .globl C_TEXT(_savef15) |
31 | .globl C_TEXT(_savefpr_15) | |
ef5166a6 UD |
32 | C_TEXT(_savef15): |
33 | C_TEXT(_savefpr_15): stfd fp15,-136(r1) | |
3e7e947f | 34 | cfi_offset(fp15,-136) |
7b8e0d49 MP |
35 | .globl C_TEXT(_savef16) |
36 | .globl C_TEXT(_savefpr_16) | |
ef5166a6 UD |
37 | C_TEXT(_savef16): |
38 | C_TEXT(_savefpr_16): stfd fp16,-128(r1) | |
3e7e947f | 39 | cfi_offset(fp16,-128) |
7b8e0d49 MP |
40 | .globl C_TEXT(_savef17) |
41 | .globl C_TEXT(_savefpr_17) | |
ef5166a6 UD |
42 | C_TEXT(_savef17): |
43 | C_TEXT(_savefpr_17): stfd fp17,-120(r1) | |
3e7e947f | 44 | cfi_offset(fp17,-120) |
7b8e0d49 MP |
45 | .globl C_TEXT(_savef18) |
46 | .globl C_TEXT(_savefpr_18) | |
ef5166a6 UD |
47 | C_TEXT(_savef18): |
48 | C_TEXT(_savefpr_18): stfd fp18,-112(r1) | |
3e7e947f | 49 | cfi_offset(fp18,-112) |
7b8e0d49 MP |
50 | .globl C_TEXT(_savef19) |
51 | .globl C_TEXT(_savefpr_19) | |
ef5166a6 UD |
52 | C_TEXT(_savef19): |
53 | C_TEXT(_savefpr_19): stfd fp19,-104(r1) | |
3e7e947f | 54 | cfi_offset(fp19,-104) |
7b8e0d49 MP |
55 | .globl C_TEXT(_savef20) |
56 | .globl C_TEXT(_savefpr_20) | |
ef5166a6 UD |
57 | C_TEXT(_savef20): |
58 | C_TEXT(_savefpr_20): stfd fp20,-96(r1) | |
3e7e947f | 59 | cfi_offset(fp20,-96) |
7b8e0d49 MP |
60 | .globl C_TEXT(_savef21) |
61 | .globl C_TEXT(_savefpr_21) | |
ef5166a6 UD |
62 | C_TEXT(_savef21): |
63 | C_TEXT(_savefpr_21): stfd fp21,-88(r1) | |
3e7e947f | 64 | cfi_offset(fp21,-88) |
7b8e0d49 MP |
65 | .globl C_TEXT(_savef22) |
66 | .globl C_TEXT(_savefpr_22) | |
ef5166a6 UD |
67 | C_TEXT(_savef22): |
68 | C_TEXT(_savefpr_22): stfd fp22,-80(r1) | |
3e7e947f | 69 | cfi_offset(fp22,-80) |
7b8e0d49 MP |
70 | .globl C_TEXT(_savef23) |
71 | .globl C_TEXT(_savefpr_23) | |
ef5166a6 UD |
72 | C_TEXT(_savef23): |
73 | C_TEXT(_savefpr_23): stfd fp23,-72(r1) | |
3e7e947f | 74 | cfi_offset(fp23,-72) |
7b8e0d49 MP |
75 | .globl C_TEXT(_savef24) |
76 | .globl C_TEXT(_savefpr_24) | |
ef5166a6 UD |
77 | C_TEXT(_savef24): |
78 | C_TEXT(_savefpr_24): stfd fp24,-64(r1) | |
3e7e947f | 79 | cfi_offset(fp24,-64) |
7b8e0d49 MP |
80 | .globl C_TEXT(_savef25) |
81 | .globl C_TEXT(_savefpr_25) | |
ef5166a6 UD |
82 | C_TEXT(_savef25): |
83 | C_TEXT(_savefpr_25): stfd fp25,-56(r1) | |
3e7e947f | 84 | cfi_offset(fp25,-56) |
7b8e0d49 MP |
85 | .globl C_TEXT(_savef26) |
86 | .globl C_TEXT(_savefpr_26) | |
ef5166a6 UD |
87 | C_TEXT(_savef26): |
88 | C_TEXT(_savefpr_26): stfd fp26,-48(r1) | |
3e7e947f | 89 | cfi_offset(fp26,-48) |
7b8e0d49 MP |
90 | .globl C_TEXT(_savef27) |
91 | .globl C_TEXT(_savefpr_27) | |
ef5166a6 UD |
92 | C_TEXT(_savef27): |
93 | C_TEXT(_savefpr_27): stfd fp27,-40(r1) | |
3e7e947f | 94 | cfi_offset(fp27,-40) |
7b8e0d49 MP |
95 | .globl C_TEXT(_savef28) |
96 | .globl C_TEXT(_savefpr_28) | |
ef5166a6 UD |
97 | C_TEXT(_savef28): |
98 | C_TEXT(_savefpr_28): stfd fp28,-32(r1) | |
3e7e947f | 99 | cfi_offset(fp28,-32) |
7b8e0d49 MP |
100 | .globl C_TEXT(_savef29) |
101 | .globl C_TEXT(_savefpr_29) | |
ef5166a6 UD |
102 | C_TEXT(_savef29): |
103 | C_TEXT(_savefpr_29): stfd fp29,-24(r1) #save f29 | |
104 | stfd fp30,-16(r1) #save f30 | |
105 | stfd fp31,-8(r1) #save f31 | |
3e7e947f RM |
106 | cfi_offset(fp29,-24) |
107 | cfi_offset(fp30,-16) | |
108 | cfi_offset(fp31,-8) | |
ef5166a6 UD |
109 | stw r0,8(r1) #save LR in callers frame |
110 | blr #return | |
9759bbf1 | 111 | END (_savefpr_all) |