summaryrefslogtreecommitdiff
path: root/crt
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012-05-02 21:16:02 -0400
committerRich Felker <dalias@aerifal.cx>2012-05-02 21:16:02 -0400
commit2be87702b79c02b1acf68d6159a4fb399d2c9a57 (patch)
tree64e0f42ed2c8b5b1a7738b147270668751d27206 /crt
parent94167cafd5a8f4f8309c3f82f5bda17f4767cb60 (diff)
downloadmusl-2be87702b79c02b1acf68d6159a4fb399d2c9a57.tar.gz
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.
Diffstat (limited to 'crt')
-rw-r--r--crt/x86_64/Scrt1.s2
-rw-r--r--crt/x86_64/crt1.s2
2 files changed, 0 insertions, 4 deletions
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 */