arch/arm64: move store and restore LR out of loop

Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
This commit is contained in:
Xu Xingliang 2024-04-16 17:53:07 +08:00 committed by Xiang Xiao
parent ba25ee6725
commit 800501f44f
1 changed files with 6 additions and 5 deletions

View File

@ -354,17 +354,18 @@ out:
*/
boot_stage_puts:
stp xzr, x30, [sp, #-16]!
1:
ldrb w0, [x1], #1 /* Load next char */
cmp w0, 0
beq 1f /* Exit on nul */
stp xzr, x30, [sp, #-16]!
beq 2f /* Exit on nul */
bl arm64_lowputc
b 1b /* Loop */
2:
ldp xzr, x30, [sp], #16
b boot_stage_puts
1:
ret
.type boot_low_puts, %function;
.type boot_stage_puts, %function;
#endif /* !CONFIG_ARCH_EARLY_PRINT */