Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Mar 2010 02:24:14 +0000 (UTC)
From:      Juli Mallett <jmallett@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r204682 - user/jmallett/octeon/lib/libc/mips/sys
Message-ID:  <201003040224.o242OERw036978@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jmallett
Date: Thu Mar  4 02:24:14 2010
New Revision: 204682
URL: http://svn.freebsd.org/changeset/base/204682

Log:
  Attempt to make new ABI friendly, etc.  Now gdb panics the kernel, perhaps some
  lingering N32-related issues in kernel side of ptrace.

Modified:
  user/jmallett/octeon/lib/libc/mips/sys/ptrace.S

Modified: user/jmallett/octeon/lib/libc/mips/sys/ptrace.S
==============================================================================
--- user/jmallett/octeon/lib/libc/mips/sys/ptrace.S	Thu Mar  4 00:47:24 2010	(r204681)
+++ user/jmallett/octeon/lib/libc/mips/sys/ptrace.S	Thu Mar  4 02:24:14 2010	(r204682)
@@ -41,32 +41,27 @@ __FBSDID("$FreeBSD$");
 	ASMSTR("$NetBSD: ptrace.S,v 1.9 2003/08/07 16:42:17 agc Exp $")
 #endif /* LIBC_SCCS and not lint */
 
-LEAF(ptrace)
-	.frame	sp, 40, ra
-	.mask	0x80000000, -8
-#ifdef __ABICALLS__
-	.set    noreorder
-	.cpload t9
-	.set    reorder
-#endif
-	subu	sp, sp, 40
-	sw	ra,  32(sp)
-#ifdef __ABICALLS__
-	.cprestore 16
-#endif
-	la	t9, _C_LABEL(__error)	# locate address of errno
+NESTED_NOPROFILE(ptrace, CALLFRAME_SIZ, ra)
+	.mask	0x80000000, (CALLFRAME_RA - CALLFRAME_SIZ)
+	PIC_PROLOGUE(ptrace)
+	PTR_SUBU sp, sp, CALLFRAME_SP
+	REG_S	ra, CALLFRAME_RA(sp)
+
+	SAVE_GP(CALLFRAME_GP)
+
+	PTR_LA	t9, _C_LABEL(__error)	# locate address of errno
 	jalr	t9
-#ifdef __ABICALLS__
-	lw	gp, 16(sp)
-#endif
-	sw	zero, 0(v0)
-	lw	ra, 32(sp)
-	addu	sp, sp, 40
+
+	INT_S	zero, 0(v0)
+
+	REG_L	ra, CALLFRAME_RA(sp)
+	PTR_ADDU sp, sp, CALLFRAME_SIZ
+
 	li	v0, SYS_ptrace
 	syscall
+
 	bne	a3, zero, 1f
-	j	ra
+	PIC_RETURN()
 1:
-	la	t9, _C_LABEL(__cerror)
-	jr	t9
+	PIC_TAILCALL(__cerror)
 END(ptrace)



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