dynamic linker bootstrap overhaul
[musl] / arch / aarch64 / crt_arch.h
index 3206688..3a4b321 100644 (file)
@@ -1,9 +1,14 @@
 __asm__(
-".global _start\n"
-".type _start,%function\n"
-"_start:\n"
+".global " START "\n"
+".type " START ",%function\n"
+START ":\n"
 "      mov x29, #0\n"
 "      mov x30, #0\n"
 "      mov x0, sp\n"
+".weak _DYNAMIC\n"
+".hidden _DYNAMIC\n"
+"      adrp x1, _DYNAMIC\n"
+"      add x1, x1, #:lo12:_DYNAMIC\n"
 "      and sp, x0, #-16\n"
-"      b __cstart\n");
+"      b " START "_c\n"
+);