Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Feb 2008 13:48:31 GMT
From:      Oleksandr Tymoshenko <gonzo@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 135252 for review
Message-ID:  <200802121348.m1CDmVkD083828@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=135252

Change 135252 by gonzo@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)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802121348.m1CDmVkD083828>