arch/arm64: move store and restore LR out of loop
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
This commit is contained in:
parent
ba25ee6725
commit
800501f44f
@ -354,17 +354,18 @@ out:
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
boot_stage_puts:
|
boot_stage_puts:
|
||||||
|
stp xzr, x30, [sp, #-16]!
|
||||||
|
1:
|
||||||
ldrb w0, [x1], #1 /* Load next char */
|
ldrb w0, [x1], #1 /* Load next char */
|
||||||
cmp w0, 0
|
cmp w0, 0
|
||||||
beq 1f /* Exit on nul */
|
beq 2f /* Exit on nul */
|
||||||
stp xzr, x30, [sp, #-16]!
|
|
||||||
bl arm64_lowputc
|
bl arm64_lowputc
|
||||||
|
b 1b /* Loop */
|
||||||
|
2:
|
||||||
ldp xzr, x30, [sp], #16
|
ldp xzr, x30, [sp], #16
|
||||||
b boot_stage_puts
|
|
||||||
1:
|
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.type boot_low_puts, %function;
|
.type boot_stage_puts, %function;
|
||||||
|
|
||||||
#endif /* !CONFIG_ARCH_EARLY_PRINT */
|
#endif /* !CONFIG_ARCH_EARLY_PRINT */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user