X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/b9f4a7b7475e62dbff22da6dd768222f03889c00..084eac3d5fa7deeab2296cf20653f4f7b3f75cd0:/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 a449ac3..49fbcb7 100644 --- a/lunaix-os/usr/libc/arch/i386/crt0.S +++ b/lunaix-os/usr/libc/arch/i386/crt0.S @@ -9,14 +9,22 @@ .section .text .global _start _start: - xorl %eax, %eax 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