1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * Copyright (C) 1995, 1997, 2007-2013 Free Software Foundation, Inc.
6 /* ANSI concatenation macros. */
8 #define CONCAT1(a, b) CONCAT2(a, b)
9 #define CONCAT2(a, b) a ## b
11 /* Use the right prefix for global labels. */
13 #define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x)
15 #ifndef WORKING_ASSEMBLER
21 #define FUNC(X) .type SYM(X),@function
22 #define HIDDEN_FUNC(X) FUNC(X)` .hidden X
23 #define ENDFUNC0(X) .Lfe_##X: .size X,.Lfe_##X-X
24 #define ENDFUNC(X) ENDFUNC0(X)
28 .global SYM(__st_r13_to_r15)
29 .global SYM(__st_r13_to_r16)
30 .global SYM(__st_r13_to_r17)
31 .global SYM(__st_r13_to_r18)
32 .global SYM(__st_r13_to_r19)
33 .global SYM(__st_r13_to_r20)
34 .global SYM(__st_r13_to_r21)
35 .global SYM(__st_r13_to_r22)
36 .global SYM(__st_r13_to_r23)
37 .global SYM(__st_r13_to_r24)
38 .global SYM(__st_r13_to_r25)
39 HIDDEN_FUNC(__st_r13_to_r15)
40 HIDDEN_FUNC(__st_r13_to_r16)
41 HIDDEN_FUNC(__st_r13_to_r17)
42 HIDDEN_FUNC(__st_r13_to_r18)
43 HIDDEN_FUNC(__st_r13_to_r19)
44 HIDDEN_FUNC(__st_r13_to_r20)
45 HIDDEN_FUNC(__st_r13_to_r21)
46 HIDDEN_FUNC(__st_r13_to_r22)
47 HIDDEN_FUNC(__st_r13_to_r23)
48 HIDDEN_FUNC(__st_r13_to_r24)
49 HIDDEN_FUNC(__st_r13_to_r25)
73 st r15, [sp,8] ; minimum function size to avoid stall: 6 bytes.
80 ENDFUNC(__st_r13_to_r15)
81 ENDFUNC(__st_r13_to_r16)
82 ENDFUNC(__st_r13_to_r17)
83 ENDFUNC(__st_r13_to_r18)
84 ENDFUNC(__st_r13_to_r19)
85 ENDFUNC(__st_r13_to_r20)
86 ENDFUNC(__st_r13_to_r21)
87 ENDFUNC(__st_r13_to_r22)
88 ENDFUNC(__st_r13_to_r23)
89 ENDFUNC(__st_r13_to_r24)
90 ENDFUNC(__st_r13_to_r25)
94 ; ==================================
97 .global SYM(__ld_r13_to_r15)
98 .global SYM(__ld_r13_to_r16)
99 .global SYM(__ld_r13_to_r17)
100 .global SYM(__ld_r13_to_r18)
101 .global SYM(__ld_r13_to_r19)
102 .global SYM(__ld_r13_to_r20)
103 .global SYM(__ld_r13_to_r21)
104 .global SYM(__ld_r13_to_r22)
105 .global SYM(__ld_r13_to_r23)
106 .global SYM(__ld_r13_to_r24)
107 .global SYM(__ld_r13_to_r25)
108 HIDDEN_FUNC(__ld_r13_to_r15)
109 HIDDEN_FUNC(__ld_r13_to_r16)
110 HIDDEN_FUNC(__ld_r13_to_r17)
111 HIDDEN_FUNC(__ld_r13_to_r18)
112 HIDDEN_FUNC(__ld_r13_to_r19)
113 HIDDEN_FUNC(__ld_r13_to_r20)
114 HIDDEN_FUNC(__ld_r13_to_r21)
115 HIDDEN_FUNC(__ld_r13_to_r22)
116 HIDDEN_FUNC(__ld_r13_to_r23)
117 HIDDEN_FUNC(__ld_r13_to_r24)
118 HIDDEN_FUNC(__ld_r13_to_r25)
119 SYM(__ld_r13_to_r25):
121 SYM(__ld_r13_to_r24):
123 SYM(__ld_r13_to_r23):
125 SYM(__ld_r13_to_r22):
127 SYM(__ld_r13_to_r21):
129 SYM(__ld_r13_to_r20):
131 SYM(__ld_r13_to_r19):
133 SYM(__ld_r13_to_r18):
135 SYM(__ld_r13_to_r17):
137 SYM(__ld_r13_to_r16):
139 SYM(__ld_r13_to_r15):
141 ld r15, [sp,8] ; minimum function size to avoid stall: 6 bytes.
148 ENDFUNC(__ld_r13_to_r15)
149 ENDFUNC(__ld_r13_to_r16)
150 ENDFUNC(__ld_r13_to_r17)
151 ENDFUNC(__ld_r13_to_r18)
152 ENDFUNC(__ld_r13_to_r19)
153 ENDFUNC(__ld_r13_to_r20)
154 ENDFUNC(__ld_r13_to_r21)
155 ENDFUNC(__ld_r13_to_r22)
156 ENDFUNC(__ld_r13_to_r23)
157 ENDFUNC(__ld_r13_to_r24)
158 ENDFUNC(__ld_r13_to_r25)
160 .global SYM(__ld_r13_to_r14_ret)
161 .global SYM(__ld_r13_to_r15_ret)
162 .global SYM(__ld_r13_to_r16_ret)
163 .global SYM(__ld_r13_to_r17_ret)
164 .global SYM(__ld_r13_to_r18_ret)
165 .global SYM(__ld_r13_to_r19_ret)
166 .global SYM(__ld_r13_to_r20_ret)
167 .global SYM(__ld_r13_to_r21_ret)
168 .global SYM(__ld_r13_to_r22_ret)
169 .global SYM(__ld_r13_to_r23_ret)
170 .global SYM(__ld_r13_to_r24_ret)
171 .global SYM(__ld_r13_to_r25_ret)
172 HIDDEN_FUNC(__ld_r13_to_r14_ret)
173 HIDDEN_FUNC(__ld_r13_to_r15_ret)
174 HIDDEN_FUNC(__ld_r13_to_r16_ret)
175 HIDDEN_FUNC(__ld_r13_to_r17_ret)
176 HIDDEN_FUNC(__ld_r13_to_r18_ret)
177 HIDDEN_FUNC(__ld_r13_to_r19_ret)
178 HIDDEN_FUNC(__ld_r13_to_r20_ret)
179 HIDDEN_FUNC(__ld_r13_to_r21_ret)
180 HIDDEN_FUNC(__ld_r13_to_r22_ret)
181 HIDDEN_FUNC(__ld_r13_to_r23_ret)
182 HIDDEN_FUNC(__ld_r13_to_r24_ret)
183 HIDDEN_FUNC(__ld_r13_to_r25_ret)
186 SYM(__ld_r13_to_r25_ret):
188 SYM(__ld_r13_to_r24_ret):
190 SYM(__ld_r13_to_r23_ret):
192 SYM(__ld_r13_to_r22_ret):
194 SYM(__ld_r13_to_r21_ret):
196 SYM(__ld_r13_to_r20_ret):
198 SYM(__ld_r13_to_r19_ret):
200 SYM(__ld_r13_to_r18_ret):
202 SYM(__ld_r13_to_r17_ret):
204 SYM(__ld_r13_to_r16_ret):
206 SYM(__ld_r13_to_r15_ret):
208 SYM(__ld_r13_to_r14_ret):
214 ENDFUNC(__ld_r13_to_r14_ret)
215 ENDFUNC(__ld_r13_to_r15_ret)
216 ENDFUNC(__ld_r13_to_r16_ret)
217 ENDFUNC(__ld_r13_to_r17_ret)
218 ENDFUNC(__ld_r13_to_r18_ret)
219 ENDFUNC(__ld_r13_to_r19_ret)
220 ENDFUNC(__ld_r13_to_r20_ret)
221 ENDFUNC(__ld_r13_to_r21_ret)
222 ENDFUNC(__ld_r13_to_r22_ret)
223 ENDFUNC(__ld_r13_to_r23_ret)
224 ENDFUNC(__ld_r13_to_r24_ret)
225 ENDFUNC(__ld_r13_to_r25_ret)