summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/arm
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/arm')
-rw-r--r--libc/sysdeps/linux/arm/crt0.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/arm/crt0.S b/libc/sysdeps/linux/arm/crt0.S
index ad4865cc1..a930ff3f2 100644
--- a/libc/sysdeps/linux/arm/crt0.S
+++ b/libc/sysdeps/linux/arm/crt0.S
@@ -80,6 +80,7 @@ _start:
ldr r2,[sp, #8]
#endif
+#ifdef __UCLIBC_CTOR_DTOR__
/* Store the address of _init in r3 as an argument to main() */
ldr r3, =_init
@@ -89,6 +90,9 @@ _start:
/* Ok, now run uClibc's main() -- shouldn't return */
bl __uClibc_start_main
+#else
+ bl __uClibc_main
+#endif
/* Crash if somehow `exit' returns anyways. */
bl abort