summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-06-22 11:14:07 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-06-27 08:58:18 +0200
commitb0ee7894d703cb64742bafc3b1ba1987e423f432 (patch)
tree6326556d892b920eafdb51e063bdf021a05f8cf7
parentriscv: Format assembler files (diff)
downloadrtems-b0ee7894d703cb64742bafc3b1ba1987e423f432.tar.bz2
bsp/riscv: Use memset() to clear .bss
Update #3433.
-rw-r--r--bsps/riscv/riscv/start/start.S15
1 files changed, 5 insertions, 10 deletions
diff --git a/bsps/riscv/riscv/start/start.S b/bsps/riscv/riscv/start/start.S
index 3fd68f1c75..3674a4bdb5 100644
--- a/bsps/riscv/riscv/start/start.S
+++ b/bsps/riscv/riscv/start/start.S
@@ -52,16 +52,11 @@ SYM(_start):
/* load stack and frame pointers */
la sp, _Configuration_Interrupt_stack_area_end
- /* Clearing .bss */
- la t0, bsp_section_bss_begin
- la t1, bsp_section_bss_end
-
-_loop_clear_bss:
- bge t0, t1, _end_clear_bss
- SREG x0, 0(t0)
- addi t0, t0, CPU_SIZEOF_POINTER
- j _loop_clear_bss
-_end_clear_bss:
+ /* Clear .bss */
+ la a0, bsp_section_bss_begin
+ li a1, 0
+ la a2, bsp_section_bss_size
+ call memset
/* Init FPU unit if it's there */
li t0, MSTATUS_FS