X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/2a49908006b177c4d6354309333d06b1b96e4887..d15268ba6eadf89a38087995ff407f50418485fb:/lunaix-os/usr/libc/arch/i386/crt0.S diff --git a/lunaix-os/usr/libc/arch/i386/crt0.S b/lunaix-os/usr/libc/arch/i386/crt0.S index 28aa6ba..49fbcb7 100644 --- a/lunaix-os/usr/libc/arch/i386/crt0.S +++ b/lunaix-os/usr/libc/arch/i386/crt0.S @@ -8,13 +8,23 @@ .section .text .global _start - _start: + _start: + xorl %ebp, %ebp + movl %esp, %eax + andl $-16, %esp + + leal 4(%eax), %ebx + pushl %ebx + pushl (%eax) + + fninit + xorl %eax, %eax call main 1: movl %eax, %ebx - movl $__SYSCALL__exit, %eax + movl $__NR__lxsys_exit, %eax int $33 ud2 // should not reach \ No newline at end of file