wip, PD 0964 runs
[ginge.git] / loader / loader_arm.s
... / ...
CommitLineData
1.text
2
3/* void do_entry(Elf32_Addr entry, void *stack_frame, int stack_frame_elems, void *exitf); */
4
5.globl do_entry
6do_entry:
7 sub sp, sp, r2, lsl #2
8 mov r4, sp
9 mov r5, r0
100:
11 ldr r0, [r1], #4
12 subs r2, r2, #1
13 str r0, [r4], #4
14 bgt 0b
15
16/*
17 r0 - atexit func
18 sp - stack frame of:
19 argc
20 argv[0]
21 ...
22 NULL
23 envp[0]
24 ...
25 NULL
26*/
27 mov r0, r3
28 bx r5