aboutsummaryrefslogtreecommitdiff
path: root/src/arch/i386/lib/c_start.S
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/i386/lib/c_start.S')
-rw-r--r--src/arch/i386/lib/c_start.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/arch/i386/lib/c_start.S b/src/arch/i386/lib/c_start.S
index ce13d150d7..04b5a68676 100644
--- a/src/arch/i386/lib/c_start.S
+++ b/src/arch/i386/lib/c_start.S
@@ -22,18 +22,20 @@ _start:
leal _stack, %edi
movl $_estack, %ecx
subl %edi, %ecx
+ shrl $2, %ecx /* it is 32 bit align, right? */
xorl %eax, %eax
rep
- stosb
+ stosl
/** clear bss */
leal _bss, %edi
movl $_ebss, %ecx
subl %edi, %ecx
jz .Lnobss
+ shrl $2, %ecx /* it is 32 bit align, right? */
xorl %eax, %eax
rep
- stosb
+ stosl
.Lnobss:
/* set new stack */