diff options
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/i386/prefix/linuxprefix.S | 3 | ||||
-rw-r--r-- | src/arch/x86_64/prefix/linuxprefix.S | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/arch/i386/prefix/linuxprefix.S b/src/arch/i386/prefix/linuxprefix.S index 881c61df..b32b08f2 100644 --- a/src/arch/i386/prefix/linuxprefix.S +++ b/src/arch/i386/prefix/linuxprefix.S @@ -16,6 +16,9 @@ _start: pushl %edi // argv -> C arg2 pushl %esi // argc -> C arg1 + call save_args + + /* Our main doesn't use any arguments */ call main movl %eax, %ebx // rc -> syscall arg1 diff --git a/src/arch/x86_64/prefix/linuxprefix.S b/src/arch/x86_64/prefix/linuxprefix.S index 20163b8a..4aa0b840 100644 --- a/src/arch/x86_64/prefix/linuxprefix.S +++ b/src/arch/x86_64/prefix/linuxprefix.S @@ -13,6 +13,9 @@ _start: andq $~15, %rsp // 16-byte align the stack + call save_args + + /* Our main doesn't use any arguments */ call main movq %rax, %rdi // rc -> syscall arg1 |