hc
2024-09-20 a36159eec6ca17402b0e146b86efaf76568dc353
kernel/arch/xtensa/lib/memcopy.S
....@@ -10,8 +10,8 @@
1010 */
1111
1212 #include <linux/linkage.h>
13
-#include <variant/core.h>
1413 #include <asm/asmmacro.h>
14
+#include <asm/core.h>
1515
1616 /*
1717 * void *memcpy(void *dst, const void *src, size_t len);
....@@ -79,7 +79,7 @@
7979 bne a3, a7, .Lnextbyte # continue loop if $a3:src != $a7:src_end
8080 #endif /* !XCHAL_HAVE_LOOPS */
8181 .Lbytecopydone:
82
- retw
82
+ abi_ret_default
8383
8484 /*
8585 * Destination is unaligned
....@@ -112,7 +112,7 @@
112112 ENTRY(__memcpy)
113113 WEAK(memcpy)
114114
115
- entry sp, 16 # minimal stack frame
115
+ abi_entry_default
116116 # a2/ dst, a3/ src, a4/ len
117117 mov a5, a2 # copy dst so that a2 is return value
118118 .Lcommon:
....@@ -161,7 +161,7 @@
161161 bbsi.l a4, 2, .L3
162162 bbsi.l a4, 1, .L4
163163 bbsi.l a4, 0, .L5
164
- retw
164
+ abi_ret_default
165165 .L3:
166166 # copy 4 bytes
167167 l32i a6, a3, 0
....@@ -170,7 +170,7 @@
170170 addi a5, a5, 4
171171 bbsi.l a4, 1, .L4
172172 bbsi.l a4, 0, .L5
173
- retw
173
+ abi_ret_default
174174 .L4:
175175 # copy 2 bytes
176176 l16ui a6, a3, 0
....@@ -178,12 +178,12 @@
178178 s16i a6, a5, 0
179179 addi a5, a5, 2
180180 bbsi.l a4, 0, .L5
181
- retw
181
+ abi_ret_default
182182 .L5:
183183 # copy 1 byte
184184 l8ui a6, a3, 0
185185 s8i a6, a5, 0
186
- retw
186
+ abi_ret_default
187187
188188 /*
189189 * Destination is aligned, Source is unaligned
....@@ -255,7 +255,7 @@
255255 #endif
256256 bbsi.l a4, 1, .L14
257257 bbsi.l a4, 0, .L15
258
-.Ldone: retw
258
+.Ldone: abi_ret_default
259259 .L14:
260260 # copy 2 bytes
261261 l8ui a6, a3, 0
....@@ -265,12 +265,12 @@
265265 s8i a7, a5, 1
266266 addi a5, a5, 2
267267 bbsi.l a4, 0, .L15
268
- retw
268
+ abi_ret_default
269269 .L15:
270270 # copy 1 byte
271271 l8ui a6, a3, 0
272272 s8i a6, a5, 0
273
- retw
273
+ abi_ret_default
274274
275275 ENDPROC(__memcpy)
276276
....@@ -280,7 +280,7 @@
280280
281281 ENTRY(bcopy)
282282
283
- entry sp, 16 # minimal stack frame
283
+ abi_entry_default
284284 # a2=src, a3=dst, a4=len
285285 mov a5, a3
286286 mov a3, a2
....@@ -346,7 +346,7 @@
346346 # $a3:src != $a7:src_start
347347 #endif /* !XCHAL_HAVE_LOOPS */
348348 .Lbackbytecopydone:
349
- retw
349
+ abi_ret_default
350350
351351 /*
352352 * Destination is unaligned
....@@ -380,7 +380,7 @@
380380 ENTRY(__memmove)
381381 WEAK(memmove)
382382
383
- entry sp, 16 # minimal stack frame
383
+ abi_entry_default
384384 # a2/ dst, a3/ src, a4/ len
385385 mov a5, a2 # copy dst so that a2 is return value
386386 .Lmovecommon:
....@@ -435,7 +435,7 @@
435435 bbsi.l a4, 2, .Lback3
436436 bbsi.l a4, 1, .Lback4
437437 bbsi.l a4, 0, .Lback5
438
- retw
438
+ abi_ret_default
439439 .Lback3:
440440 # copy 4 bytes
441441 addi a3, a3, -4
....@@ -444,7 +444,7 @@
444444 s32i a6, a5, 0
445445 bbsi.l a4, 1, .Lback4
446446 bbsi.l a4, 0, .Lback5
447
- retw
447
+ abi_ret_default
448448 .Lback4:
449449 # copy 2 bytes
450450 addi a3, a3, -2
....@@ -452,14 +452,14 @@
452452 addi a5, a5, -2
453453 s16i a6, a5, 0
454454 bbsi.l a4, 0, .Lback5
455
- retw
455
+ abi_ret_default
456456 .Lback5:
457457 # copy 1 byte
458458 addi a3, a3, -1
459459 l8ui a6, a3, 0
460460 addi a5, a5, -1
461461 s8i a6, a5, 0
462
- retw
462
+ abi_ret_default
463463
464464 /*
465465 * Destination is aligned, Source is unaligned
....@@ -531,7 +531,7 @@
531531 bbsi.l a4, 1, .Lback14
532532 bbsi.l a4, 0, .Lback15
533533 .Lbackdone:
534
- retw
534
+ abi_ret_default
535535 .Lback14:
536536 # copy 2 bytes
537537 addi a3, a3, -2
....@@ -541,13 +541,13 @@
541541 s8i a6, a5, 0
542542 s8i a7, a5, 1
543543 bbsi.l a4, 0, .Lback15
544
- retw
544
+ abi_ret_default
545545 .Lback15:
546546 # copy 1 byte
547547 addi a3, a3, -1
548548 addi a5, a5, -1
549549 l8ui a6, a3, 0
550550 s8i a6, a5, 0
551
- retw
551
+ abi_ret_default
552552
553553 ENDPROC(__memmove)