Zero BSS on start, in case the ELF loader that started the kernel did not

do this for us. This can happen on some embedded systems.

Submitted by:	rpaulo
This commit is contained in:
Nathan Whitehorn 2011-12-16 23:40:56 +00:00
parent cf87966cfd
commit b059c637fb

@ -128,6 +128,17 @@ __start:
sync
isync
/* Zero bss, in case we were started by something unhelpful */
li 0,0
lis 8,_edata@ha
addi 8,8,_edata@l
lis 9,_end@ha
addi 9,9,_end@l
2: stw 0,0(8)
addi 8,8,4
cmplw 8,9
blt 2b
/* Save the argument pointer and length */
mr 20,6
mr 21,7