remove LFS64 symbol aliases; replace with dynamic linker remapping
[musl] / arch / mips / crt_arch.h
index 33bde4e..9fc50d7 100644 (file)
@@ -1,6 +1,7 @@
 __asm__(
 ".set push\n"
 ".set noreorder\n"
+".text \n"
 ".global _" START "\n"
 ".global " START "\n"
 ".type   _" START ", @function\n"
@@ -9,8 +10,8 @@ __asm__(
 "" START ":\n"
 "      bal 1f \n"
 "       move $fp, $0 \n"
-"2:    .gpword 2b \n"
-       .gpword " START "_c \n"
+"      .gpword . \n"
+"      .gpword " START "_c \n"
 ".weak _DYNAMIC \n"
 ".hidden _DYNAMIC \n"
 "      .gpword _DYNAMIC \n"
@@ -21,8 +22,8 @@ __asm__(
 "      addu $5, $5, $gp \n"
 "      lw $25, 4($ra) \n"
 "      addu $25, $25, $gp \n"
-"      subu $sp, $sp, 16 \n"
+"      and $sp, $sp, -8 \n"
 "      jalr $25 \n"
-"       and $sp, $sp, -8 \n"
+"       subu $sp, $sp, 16 \n"
 ".set pop \n"
 );