From: Rich Felker <dalias@aerifal.cx>
Date: Thu, 3 May 2012 01:16:02 +0000 (-0400)
Subject: remove some junk from x86_64 start files
X-Git-Tag: v0.9.0~27
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2be87702b79c02b1acf68d6159a4fb399d2c9a57;p=musl

remove some junk from x86_64 start files

looks like nik copied these "extra arguments" from the i386 code.
they're not actually arguments there, just 1-byte instructions to
make sure the stack is aligned to 16 bytes after all the other
arguments are pushed. since each push is 8 bytes on x86_64, they
happened to have no effect here, but their presence is confusing and a
minor waste of space.
---

diff --git a/crt/x86_64/Scrt1.s b/crt/x86_64/Scrt1.s
index d8b71617..ba34e95e 100644
--- a/crt/x86_64/Scrt1.s
+++ b/crt/x86_64/Scrt1.s
@@ -9,8 +9,6 @@ _start:
 	pop %rsi        /* 2nd arg: argc */
 	mov %rsp,%rdx   /* 3rd arg: argv */
 	andq $-16,%rsp  /* align stack pointer */
-	push %rax       /* 8th arg: glibc ABI compatible */
-	push %rsp       /* 7th arg: glibc ABI compatible */
 	lea _fini(%rip),%r8           /* 5th arg: fini/dtors function */
 	lea _init(%rip),%rcx          /* 4th arg: init/ctors function */
 	mov main@GOTPCREL(%rip),%rdi  /* 1st arg: application entry ip */
diff --git a/crt/x86_64/crt1.s b/crt/x86_64/crt1.s
index 50222f1c..40de3bed 100644
--- a/crt/x86_64/crt1.s
+++ b/crt/x86_64/crt1.s
@@ -9,8 +9,6 @@ _start:
 	pop %rsi        /* 2nd arg: argc */
 	mov %rsp,%rdx   /* 3rd arg: argv */
 	andq $-16,%rsp  /* align stack pointer */
-	push %rax       /* 8th arg: glibc ABI compatible */
-	push %rsp       /* 7th arg: glibc ABI compatible */
 	mov $_fini,%r8  /* 5th arg: fini/dtors function */
 	mov $_init,%rcx /* 4th arg: init/ctors function */
 	mov $main,%rdi  /* 1st arg: application entry ip */