summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/arm
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2001-01-17 11:00:30 +0000
committerEric Andersen <andersen@codepoet.org>2001-01-17 11:00:30 +0000
commitfb644a9a153cea0269be99e8ff9fb9588e1f262e (patch)
treef68069456d7ea94e2f1fe92652126b4640bd038c /libc/sysdeps/linux/arm
parent647e66a67cd3fad6d37bb9fe5f76b1e5d8e93c96 (diff)
Minor comment update
Diffstat (limited to 'libc/sysdeps/linux/arm')
-rw-r--r--libc/sysdeps/linux/arm/crt0.S9
1 files changed, 7 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/arm/crt0.S b/libc/sysdeps/linux/arm/crt0.S
index 115650f98..49d4bedfe 100644
--- a/libc/sysdeps/linux/arm/crt0.S
+++ b/libc/sysdeps/linux/arm/crt0.S
@@ -5,6 +5,11 @@
argv[argc-1] end of args (integer)
env[0...N] environment variables (pointers)
NULL
+
+ When we are done here, we want
+ a1=argc
+ a2=argv[0]
+ a3=argv[argc+1]
This file now uses the register naming from the ARM Procedure Calling Standard
@@ -54,10 +59,10 @@ _start:
/* clear the frame pointer */
mov fp, #0
- /* Load argc into a1 -- its final resting place */
+ /* Load register a1 (argc) from the stack to its final resting place */
ldr a1, [sp], #4
- /* Load argv into a2 -- which its final resting place */
+ /* Copy argv pointer into a2 -- which its final resting place */
mov a2, sp
/* Set up environ, skip to the end of argv, and put