summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/arm/crt0.S
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2001-02-09 06:40:46 +0000
committerEric Andersen <andersen@codepoet.org>2001-02-09 06:40:46 +0000
commit411597d4f47de6b37275ee4fdf9fc45cc2a30fcb (patch)
tree6f42b12d32aec4804c99d6733ac0c22e3bcbc88e /libc/sysdeps/linux/arm/crt0.S
parent69b2edf81ec8955b59fba03b2a553bd8b5995b58 (diff)
Revert stdio to initializing itself. Not quite a pretty but that ensures that
we don't blow up by using too much stack space, and simplifies the job of supporting new architectures, since they don't have to mess with calling foo init functions in crt0 and cleaning up the resulting damage. -Erik
Diffstat (limited to 'libc/sysdeps/linux/arm/crt0.S')
-rw-r--r--libc/sysdeps/linux/arm/crt0.S26
1 files changed, 2 insertions, 24 deletions
diff --git a/libc/sysdeps/linux/arm/crt0.S b/libc/sysdeps/linux/arm/crt0.S
index 72a45a29f..3660f4167 100644
--- a/libc/sysdeps/linux/arm/crt0.S
+++ b/libc/sysdeps/linux/arm/crt0.S
@@ -3,6 +3,7 @@
argv[0] program name (pointer)
argv[1...N] program args (pointers)
argv[argc-1] end of args (integer)
+ NULL
env[0...N] environment variables (pointers)
NULL
@@ -40,18 +41,10 @@ This file now uses the register naming from the ARM Procedure Calling Standard
.global _start
.global exit
.global main
- .global __libc_init
- .global __init_stdio
- .global __stdio_close_all
- .global _void_void_null_func
.type _start,%function
.type exit,%function
.type main,%function
- .type __libc_init,%function
- .type __init_stdio,%function
- .type __stdio_close_all,%function
- .type _void_void_null_func,%function
.text
_start:
@@ -73,27 +66,12 @@ _start:
add a3, a3, #4
str a3, [a4, #0]
- /* Tell libc to initialize whatever it needs */
- bl __libc_init
- bl __init_stdio
bl main
bl exit
-_void_void_null_func:
- mov pc, lr
-
-.weak __libc_init
-__libc_init = _void_void_null_func
-
-.weak __init_stdio
-__init_stdio = _void_void_null_func
-
-.weak __stdio_close_all
-__stdio_close_all = _void_void_null_func
-
.align 2
.L3:
- .word environ
+ .word __environ
.data