svn commit: r216381 - head/lib/libc/powerpc64/sys

Nathan Whitehorn nwhitehorn at FreeBSD.org
Sat Dec 11 17:57:43 UTC 2010


Author: nwhitehorn
Date: Sat Dec 11 17:57:42 2010
New Revision: 216381
URL: http://svn.freebsd.org/changeset/base/216381

Log:
  Fix stack alignment (required to be to 16 bytes) instead of ptrace and
  cerror on powerpc64.

Modified:
  head/lib/libc/powerpc64/sys/cerror.S
  head/lib/libc/powerpc64/sys/ptrace.S

Modified: head/lib/libc/powerpc64/sys/cerror.S
==============================================================================
--- head/lib/libc/powerpc64/sys/cerror.S	Sat Dec 11 17:47:27 2010	(r216380)
+++ head/lib/libc/powerpc64/sys/cerror.S	Sat Dec 11 17:57:42 2010	(r216381)
@@ -41,7 +41,7 @@ __FBSDID("$FreeBSD$");
 ENTRY(HIDENAME(cerror))
 	mflr	%r0
 	std	%r0,16(%r1)		/* save lr */
-	stdu	%r1,-56(%r1)		/* allocate new stack frame */
+	stdu	%r1,-64(%r1)		/* allocate new stack frame */
 	std	%r31,48(%r1)
 
 	mr	%r31,%r3          /* stash errval in callee-saved register */

Modified: head/lib/libc/powerpc64/sys/ptrace.S
==============================================================================
--- head/lib/libc/powerpc64/sys/ptrace.S	Sat Dec 11 17:47:27 2010	(r216380)
+++ head/lib/libc/powerpc64/sys/ptrace.S	Sat Dec 11 17:57:42 2010	(r216381)
@@ -32,8 +32,8 @@ __FBSDID("$FreeBSD$");
 
 ENTRY(ptrace)
 	mflr	%r0
-	stdu	%r1,-68(%r1)
-	std	%r0,84(%r1)
+	std	%r0,16(%r1)
+	stdu	%r1,-80(%r1)
 	stw	%r3,48(%r1)
 	stw	%r4,52(%r1)
 	std	%r5,56(%r1)
@@ -47,10 +47,10 @@ ENTRY(ptrace)
 	lwz	%r3,48(%r1)
 	lwz	%r4,52(%r1)
 	ld	%r5,56(%r1)
-	ld	%r0,84(%r1)
 	lwz	%r6,64(%r1)
-	mtlr	%r0
 	ld	%r1,0(%r1)
+	ld	%r0,16(%r1)
+	mtlr	%r0
 	li	%r0,SYS_ptrace
 	sc
 	bso	1f


More information about the svn-src-all mailing list