[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] Arm32: use new-style entry annotations for library code
commit dc7cf3b6706f017afe43195998a4f3aaf4ead7e1 Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Mon Mar 31 09:17:46 2025 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Mon Mar 31 09:17:46 2025 +0200 Arm32: use new-style entry annotations for library code No functional change, albeit all globals now become hidden, and aliasing symbols (__aeabi_{u,}idiv) lose their function-ness and size. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Tested-by: Luca Fancellu <luca.fancellu@xxxxxxx> # arm Acked-by: Julien Grall <jgrall@xxxxxxxxxx> --- xen/arch/arm/arm32/lib/findbit.S | 32 ++++++++++++++--------------- xen/arch/arm/arm32/lib/lib1funcs.S | 42 ++++++++++++++++++-------------------- xen/arch/arm/arm32/lib/lshrdi3.S | 7 +++---- xen/arch/arm/arm32/lib/memchr.S | 5 ++--- xen/arch/arm/arm32/lib/memcpy.S | 4 ++-- xen/arch/arm/arm32/lib/memmove.S | 4 ++-- xen/arch/arm/arm32/lib/memset.S | 5 ++--- xen/arch/arm/arm32/lib/strchr.S | 5 ++--- xen/arch/arm/arm32/lib/strrchr.S | 5 ++--- 9 files changed, 51 insertions(+), 58 deletions(-) diff --git a/xen/arch/arm/arm32/lib/findbit.S b/xen/arch/arm/arm32/lib/findbit.S index 00674a31ef..b57ded0d20 100644 --- a/xen/arch/arm/arm32/lib/findbit.S +++ b/xen/arch/arm/arm32/lib/findbit.S @@ -20,7 +20,7 @@ * Purpose : Find a 'zero' bit * Prototype: int find_first_zero_bit(void *addr, unsigned int maxbit); */ -ENTRY(_find_first_zero_bit_le) +FUNC(_find_first_zero_bit_le) teq r1, #0 beq 3f mov r2, #0 @@ -35,13 +35,13 @@ ENTRY(_find_first_zero_bit_le) blo 1b 3: mov r0, r1 @ no free bits mov pc, lr -ENDPROC(_find_first_zero_bit_le) +END(_find_first_zero_bit_le) /* * Purpose : Find next 'zero' bit * Prototype: int find_next_zero_bit(void *addr, unsigned int maxbit, int offset) */ -ENTRY(_find_next_zero_bit_le) +FUNC(_find_next_zero_bit_le) cmp r1, r2 bls 3b ands ip, r2, #7 @@ -55,13 +55,13 @@ ENTRY(_find_next_zero_bit_le) orr r2, r2, #7 @ if zero, then no bits here add r2, r2, #1 @ align bit pointer b 2b @ loop for next bit -ENDPROC(_find_next_zero_bit_le) +END(_find_next_zero_bit_le) /* * Purpose : Find a 'one' bit * Prototype: int find_first_bit(const unsigned long *addr, unsigned int maxbit); */ -ENTRY(_find_first_bit_le) +FUNC(_find_first_bit_le) teq r1, #0 beq 3f mov r2, #0 @@ -76,13 +76,13 @@ ENTRY(_find_first_bit_le) blo 1b 3: mov r0, r1 @ no free bits mov pc, lr -ENDPROC(_find_first_bit_le) +END(_find_first_bit_le) /* * Purpose : Find next 'one' bit * Prototype: int find_next_zero_bit(void *addr, unsigned int maxbit, int offset) */ -ENTRY(_find_next_bit_le) +FUNC(_find_next_bit_le) cmp r1, r2 bls 3b ands ip, r2, #7 @@ -95,11 +95,11 @@ ENTRY(_find_next_bit_le) orr r2, r2, #7 @ if zero, then no bits here add r2, r2, #1 @ align bit pointer b 2b @ loop for next bit -ENDPROC(_find_next_bit_le) +END(_find_next_bit_le) #ifdef __ARMEB__ -ENTRY(_find_first_zero_bit_be) +FUNC(_find_first_zero_bit_be) teq r1, #0 beq 3f mov r2, #0 @@ -114,9 +114,9 @@ ENTRY(_find_first_zero_bit_be) blo 1b 3: mov r0, r1 @ no free bits mov pc, lr -ENDPROC(_find_first_zero_bit_be) +END(_find_first_zero_bit_be) -ENTRY(_find_next_zero_bit_be) +FUNC(_find_next_zero_bit_be) cmp r1, r2 bls 3b ands ip, r2, #7 @@ -131,9 +131,9 @@ ENTRY(_find_next_zero_bit_be) orr r2, r2, #7 @ if zero, then no bits here add r2, r2, #1 @ align bit pointer b 2b @ loop for next bit -ENDPROC(_find_next_zero_bit_be) +END(_find_next_zero_bit_be) -ENTRY(_find_first_bit_be) +FUNC(_find_first_bit_be) teq r1, #0 beq 3f mov r2, #0 @@ -148,9 +148,9 @@ ENTRY(_find_first_bit_be) blo 1b 3: mov r0, r1 @ no free bits mov pc, lr -ENDPROC(_find_first_bit_be) +END(_find_first_bit_be) -ENTRY(_find_next_bit_be) +FUNC(_find_next_bit_be) cmp r1, r2 bls 3b ands ip, r2, #7 @@ -164,7 +164,7 @@ ENTRY(_find_next_bit_be) orr r2, r2, #7 @ if zero, then no bits here add r2, r2, #1 @ align bit pointer b 2b @ loop for next bit -ENDPROC(_find_next_bit_be) +END(_find_next_bit_be) #endif diff --git a/xen/arch/arm/arm32/lib/lib1funcs.S b/xen/arch/arm/arm32/lib/lib1funcs.S index f1278bd6c1..46d12216c4 100644 --- a/xen/arch/arm/arm32/lib/lib1funcs.S +++ b/xen/arch/arm/arm32/lib/lib1funcs.S @@ -201,8 +201,8 @@ along with this program; see the file COPYING. If not, see <http://www.gnu.org/ .endm -ENTRY(__udivsi3) -ENTRY(__aeabi_uidiv) +FUNC(__udivsi3) +LABEL(__aeabi_uidiv) UNWIND(.fnstart) subs r2, r1, #1 @@ -228,10 +228,9 @@ UNWIND(.fnstart) mov pc, lr UNWIND(.fnend) -ENDPROC(__udivsi3) -ENDPROC(__aeabi_uidiv) +END(__udivsi3) -ENTRY(__umodsi3) +FUNC(__umodsi3) UNWIND(.fnstart) subs r2, r1, #1 @ compare divisor with 1 @@ -247,10 +246,10 @@ UNWIND(.fnstart) mov pc, lr UNWIND(.fnend) -ENDPROC(__umodsi3) +END(__umodsi3) -ENTRY(__divsi3) -ENTRY(__aeabi_idiv) +FUNC(__divsi3) +LABEL(__aeabi_idiv) UNWIND(.fnstart) cmp r1, #0 @@ -289,10 +288,9 @@ UNWIND(.fnstart) mov pc, lr UNWIND(.fnend) -ENDPROC(__divsi3) -ENDPROC(__aeabi_idiv) +END(__divsi3) -ENTRY(__modsi3) +FUNC(__modsi3) UNWIND(.fnstart) cmp r1, #0 @@ -314,11 +312,11 @@ UNWIND(.fnstart) mov pc, lr UNWIND(.fnend) -ENDPROC(__modsi3) +END(__modsi3) #ifdef CONFIG_AEABI -ENTRY(__aeabi_uidivmod) +FUNC(__aeabi_uidivmod) UNWIND(.fnstart) UNWIND(.save {r0, r1, ip, lr} ) @@ -330,9 +328,9 @@ UNWIND(.save {r0, r1, ip, lr} ) mov pc, lr UNWIND(.fnend) -ENDPROC(__aeabi_uidivmod) +END(__aeabi_uidivmod) -ENTRY(__aeabi_idivmod) +FUNC(__aeabi_idivmod) UNWIND(.fnstart) UNWIND(.save {r0, r1, ip, lr} ) stmfd sp!, {r0, r1, ip, lr} @@ -343,9 +341,9 @@ UNWIND(.save {r0, r1, ip, lr} ) mov pc, lr UNWIND(.fnend) -ENDPROC(__aeabi_idivmod) +END(__aeabi_idivmod) -ENTRY(__aeabi_uldivmod) +FUNC(__aeabi_uldivmod) UNWIND(.fnstart) UNWIND(.save {lr} ) sub sp, sp, #8 @@ -357,9 +355,9 @@ UNWIND(.save {lr} ) mov pc, lr UNWIND(.fnend) -ENDPROC(__aeabi_uldivmod) +END(__aeabi_uldivmod) -ENTRY(__aeabi_ldivmod) +FUNC(__aeabi_ldivmod) UNWIND(.fnstart) UNWIND(.save {lr} ) sub sp, sp, #16 @@ -371,10 +369,10 @@ UNWIND(.save {lr} ) mov pc, lr UNWIND(.fnend) -ENDPROC(__aeabi_ldivmod) +END(__aeabi_ldivmod) #endif -Ldiv0: +FUNC_LOCAL(Ldiv0) UNWIND(.fnstart) UNWIND(.pad #4) UNWIND(.save {lr}) @@ -383,4 +381,4 @@ UNWIND(.save {lr}) mov r0, #0 @ About as wrong as it could be. ldr pc, [sp], #8 UNWIND(.fnend) -ENDPROC(Ldiv0) +END(Ldiv0) diff --git a/xen/arch/arm/arm32/lib/lshrdi3.S b/xen/arch/arm/arm32/lib/lshrdi3.S index 88b9655282..edbb89a222 100644 --- a/xen/arch/arm/arm32/lib/lshrdi3.S +++ b/xen/arch/arm/arm32/lib/lshrdi3.S @@ -34,8 +34,8 @@ along with this program; see the file COPYING. If not, see <http://www.gnu.org/ #define ah r1 #endif -ENTRY(__lshrdi3) -ENTRY(__aeabi_llsr) +FUNC(__lshrdi3) +LABEL(__aeabi_llsr) subs r3, r2, #32 rsb ip, r2, #32 @@ -47,5 +47,4 @@ ENTRY(__aeabi_llsr) mov ah, ah, lsr r2 mov pc, lr -ENDPROC(__lshrdi3) -ENDPROC(__aeabi_llsr) +END(__lshrdi3) diff --git a/xen/arch/arm/arm32/lib/memchr.S b/xen/arch/arm/arm32/lib/memchr.S index f38374a43e..12b3a7a1c1 100644 --- a/xen/arch/arm/arm32/lib/memchr.S +++ b/xen/arch/arm/arm32/lib/memchr.S @@ -12,8 +12,7 @@ #include "assembler.h" .text - .align 5 -ENTRY(memchr) +FUNC(memchr, 32) and r1, r1, #0xff 1: subs r2, r2, #1 bmi 2f @@ -23,4 +22,4 @@ ENTRY(memchr) sub r0, r0, #1 2: movne r0, #0 mov pc, lr -ENDPROC(memchr) +END(memchr) diff --git a/xen/arch/arm/arm32/lib/memcpy.S b/xen/arch/arm/arm32/lib/memcpy.S index cc99be8379..98e94f0943 100644 --- a/xen/arch/arm/arm32/lib/memcpy.S +++ b/xen/arch/arm/arm32/lib/memcpy.S @@ -54,8 +54,8 @@ /* Prototype: void *memcpy(void *dest, const void *src, size_t n); */ -ENTRY(memcpy) +FUNC(memcpy) #include "copy_template.S" -ENDPROC(memcpy) +END(memcpy) diff --git a/xen/arch/arm/arm32/lib/memmove.S b/xen/arch/arm/arm32/lib/memmove.S index 15352dba14..45e3029875 100644 --- a/xen/arch/arm/arm32/lib/memmove.S +++ b/xen/arch/arm/arm32/lib/memmove.S @@ -24,7 +24,7 @@ * occurring in the opposite direction. */ -ENTRY(memmove) +FUNC(memmove) subs ip, r0, r1 cmphi r2, ip @@ -194,4 +194,4 @@ ENTRY(memmove) 18: backward_copy_shift push=24 pull=8 -ENDPROC(memmove) +END(memmove) diff --git a/xen/arch/arm/arm32/lib/memset.S b/xen/arch/arm/arm32/lib/memset.S index ce82c45910..b5790030d7 100644 --- a/xen/arch/arm/arm32/lib/memset.S +++ b/xen/arch/arm/arm32/lib/memset.S @@ -12,9 +12,8 @@ #include "assembler.h" .text - .align 5 -ENTRY(memset) +FUNC(memset, 32) and r1, r1, #0xff ands r3, r0, #3 @ 1 unaligned? mov ip, r0 @ preserve r0 as return value @@ -120,4 +119,4 @@ ENTRY(memset) strb r1, [ip], #1 @ 1 add r2, r2, r3 @ 1 (r2 = r2 - (4 - r3)) b 1b -ENDPROC(memset) +END(memset) diff --git a/xen/arch/arm/arm32/lib/strchr.S b/xen/arch/arm/arm32/lib/strchr.S index fa53ad8bc6..6e06726fce 100644 --- a/xen/arch/arm/arm32/lib/strchr.S +++ b/xen/arch/arm/arm32/lib/strchr.S @@ -14,8 +14,7 @@ #include "assembler.h" .text - .align 5 -ENTRY(strchr) +FUNC(strchr, 32) and r1, r1, #0xff 1: ldrb r2, [r0], #1 teq r2, r1 @@ -25,4 +24,4 @@ ENTRY(strchr) movne r0, #0 subeq r0, r0, #1 mov pc, lr -ENDPROC(strchr) +END(strchr) diff --git a/xen/arch/arm/arm32/lib/strrchr.S b/xen/arch/arm/arm32/lib/strrchr.S index 374ce3e59d..73d045cafc 100644 --- a/xen/arch/arm/arm32/lib/strrchr.S +++ b/xen/arch/arm/arm32/lib/strrchr.S @@ -12,8 +12,7 @@ #include "assembler.h" .text - .align 5 -ENTRY(strrchr) +FUNC(strrchr, 32) and r1, r1, #0xff mov r3, #0 1: ldrb r2, [r0], #1 @@ -23,4 +22,4 @@ ENTRY(strrchr) bne 1b mov r0, r3 mov pc, lr -ENDPROC(strrchr) +END(strrchr) -- generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |