PERFORCE change 135252 for review
Oleksandr Tymoshenko
gonzo at FreeBSD.org
Tue Feb 12 05:48:32 PST 2008
http://perforce.freebsd.org/chv.cgi?CH=135252
Change 135252 by gonzo at gonzo_jeeves on 2008/02/12 13:47:35
o Fix _rtld_start to conform register values set in exec_setregs
o Keep stack 8-bytes aligned
Affected files ...
.. //depot/projects/mips2-jnpr/src/libexec/rtld-elf/mips/rtld_start.S#2 edit
Differences ...
==== //depot/projects/mips2-jnpr/src/libexec/rtld-elf/mips/rtld_start.S#2 (text+ko) ====
@@ -38,7 +38,8 @@
.set noreorder
.cpload t9
- addu sp, sp, -12 /* adjust stack pointer */
+ addu sp, sp, -16 /* adjust stack pointer */
+ /* keep it aligned */
.cprestore 0 /* -> 0(sp) for gp */
/* -> 4(sp) for atexit */
/* -> 8(sp) for obj_main */
@@ -57,7 +58,7 @@
addu a0, a1, a0 /* &_DYNAMIC */
- addu a0, sp, 12 /* sp */
+ move a0, s0 /* stack pointer */
addu a1, sp, 4 /* &exit_proc */
addu a2, sp, 8 /* &objp */
addu sp, sp, -16 /* arguments slot */
@@ -65,12 +66,14 @@
nop
addu sp, sp, 16
- lw a0, 4(sp) /* our atexit function */
- lw a1, 8(sp) /* obj_main entry */
- addu sp, sp,12 /* readjust stack */
+ move a0, s0 /* arguments pointer */
+ move a3, s1 /* arguments pointer */
+ lw a1, 4(sp) /* our atexit function */
+ lw a2, 8(sp) /* obj_main entry */
+ addu sp, sp, 16 /* readjust stack */
move t9,v0
move a2,s1 /* restore ps_strings */
- jr t9 /* _start(sp, cleanup, obj); */
+ jr t9 /* _start(ap, cleanup, obj, ps_strings); */
nop
END(rtld_start)
More information about the p4-projects
mailing list