ldr r0, =stack_limit
mov sl, r0
- # copy data section
+ # copy data section (only if we are in flash <=> _etext = _data)
ldr r1, =_etext
ldr r2, =_data
ldr r3, =_edata
+ cmp r1, r2
+ beq start_of_c_code
+
copy_data_loop:
cmp r2, r3
# jump to c code
+start_of_c_code:
+
adr lr, loop_forever
mov r0, #0
mov r1, #0