notaz.gp2x.de
/
ginge.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
blame
|
history
|
raw
|
HEAD
wip, thread support and timer
[ginge.git]
/
loader
/
loader_arm.s
1
@ vim:filetype=armasm
2
3
.text
4
5
/* void do_entry(Elf32_Addr entry, void *stack_frame, int stack_frame_elems, void *exitf); */
6
7
.globl do_entry
8
do_entry:
9
sub sp, sp, r2, lsl #2
10
mov r4, sp
11
mov r5, r0
12
0:
13
ldr r0, [r1], #4
14
subs r2, r2, #1
15
str r0, [r4], #4
16
bgt 0b
17
18
/*
19
r0 - atexit func
20
sp - stack frame of:
21
argc
22
argv[0]
23
...
24
NULL
25
envp[0]
26
...
27
NULL
28
*/
29
mov r0, r3
30
bx r5