riscv: Optimize source end address calculation in start.S

The __bss_start is the source end address hence load its address
directly into register 't2' for optimization.

Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Rick Chen <rick@andestech.com>
This commit is contained in:
Bin Meng 2023-04-13 14:20:00 +08:00 committed by Leo Yu-Chi Liang
parent db9a7e51bf
commit 883f553e6b

View file

@ -283,9 +283,7 @@ stack_setup:
beq t0, s4, clear_bss /* skip relocation */
mv t1, s4 /* t1 <- scratch for copy_loop */
la t3, __bss_start
sub t3, t3, t0 /* t3 <- __bss_start_ofs */
add t2, t0, t3 /* t2 <- source end address */
la t2, __bss_start /* t2 <- source end address */
copy_loop:
LREG t5, 0(t0)