|
@@ -259,10 +259,12 @@ clear_bss:
|
|
#endif
|
|
#endif
|
|
mov r2, #0x00000000 /* clear */
|
|
mov r2, #0x00000000 /* clear */
|
|
|
|
|
|
-clbss_l:str r2, [r0] /* clear loop... */
|
|
|
|
|
|
+clbss_l:cmp r0, r1 /* clear loop... */
|
|
|
|
+ bhs clbss_e /* if reached end of bss, exit */
|
|
|
|
+ str r2, [r0]
|
|
add r0, r0, #4
|
|
add r0, r0, #4
|
|
- cmp r0, r1
|
|
|
|
- bne clbss_l
|
|
|
|
|
|
+ b clbss_l
|
|
|
|
+clbss_e:
|
|
|
|
|
|
/*
|
|
/*
|
|
* We are done. Do not return, instead branch to second part of board
|
|
* We are done. Do not return, instead branch to second part of board
|