[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] xen/arm32: head: Move earlyprintk messages to .rodata.str
commit 3babad2af858630b9196b89681a54d4360d39025 Author: Julien Grall <jgrall@xxxxxxxxxx> AuthorDate: Fri Aug 12 20:24:44 2022 +0100 Commit: Julien Grall <julien@xxxxxxx> CommitDate: Wed Aug 31 20:16:22 2022 +0100 xen/arm32: head: Move earlyprintk messages to .rodata.str At the moment, the strings are in text right after each use because the instruction 'adr' has specific requirement on the location and the compiler will forbid cross section label. The macro 'adr_l' was recently reworked so the caller doesn't need to know whether the MMU is on. This makes it easier to use where instructions can be run in both context. This also means that the strings don't need to be part of .text anymore. So move them to .rodata.str. Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx> Reviewed-by: Jiamei Xie <jiamei.xie@xxxxxxx> Reviewed-by: Bertrand Marquis <bertrand.marquis@xxxxxxx> Tested-by: Bertrand Marquis <bertrand.marquis@xxxxxxx> Reviewed-by: Wei Chen <Wei.Chen@xxxxxxx> --- xen/arch/arm/arm32/head.S | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 27d02ac8d6..a558c2a687 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -93,13 +93,10 @@ */ #define PRINT(_s) \ mov r3, lr ;\ - adr r0, 98f ;\ + adr_l r0, 98f ;\ bl puts ;\ mov lr, r3 ;\ - b 99f ;\ -98: .asciz _s ;\ - .align 2 ;\ -99: + RODATA_STR(98, _s) /* * Macro to print the value of register \rb @@ -736,7 +733,7 @@ ENDPROC(puts) * Clobbers r0-r3 */ putn: - adr r1, hex + adr_l r1, hex mov r3, #8 1: early_uart_ready r11, r2 @@ -749,8 +746,7 @@ putn: mov pc, lr ENDPROC(putn) -hex: .ascii "0123456789abcdef" - .align 2 +RODATA_STR(hex, "0123456789abcdef") #else /* CONFIG_EARLY_PRINTK */ -- generated by git-patchbot for /home/xen/git/xen.git#staging
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |