dynamic linker bootstrap overhaul
[musl] / arch / x86_64 / crt_arch.h
index db69295..3eec61b 100644 (file)
@@ -1,9 +1,12 @@
-__asm__("\
-.text \n\
-.global _start \n\
-_start: \n\
-       xor %rbp,%rbp \n\
-       mov %rsp,%rdi \n\
-       andq $-16,%rsp \n\
-       call __cstart \n\
-");
+__asm__(
+".text \n"
+".global " START " \n"
+START ": \n"
+"      xor %rbp,%rbp \n"
+"      mov %rsp,%rdi \n"
+".weak _DYNAMIC \n"
+".hidden _DYNAMIC \n"
+"      lea _DYNAMIC(%rip),%rsi \n"
+"      andq $-16,%rsp \n"
+"      call " START "_c \n"
+);