Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Jun 2013 07:16:23 +0000 (UTC)
From:      Andrew Turner <andrew@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r251517 - head/sys/arm/include
Message-ID:  <201306080716.r587GNs0048987@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: andrew
Date: Sat Jun  8 07:16:22 2013
New Revision: 251517
URL: http://svnweb.freebsd.org/changeset/base/251517

Log:
  Merge in changes from NetBSD:
   * Remove support for non-elf files.
   * Add the VFP setjmp magic numbers.
   * Add the offsets for the VFP registers within the buffer.

Modified:
  head/sys/arm/include/setjmp.h

Modified: head/sys/arm/include/setjmp.h
==============================================================================
--- head/sys/arm/include/setjmp.h	Sat Jun  8 02:54:59 2013	(r251516)
+++ head/sys/arm/include/setjmp.h	Sat Jun  8 07:16:22 2013	(r251517)
@@ -1,4 +1,4 @@
-/*	$NetBSD: setjmp.h,v 1.2 2001/08/25 14:45:59 bjh21 Exp $	*/
+/*	$NetBSD: setjmp.h,v 1.5 2013/01/11 13:56:32 matt Exp $	*/
 /* $FreeBSD$ */
 
 /*
@@ -7,11 +7,8 @@
 
 #ifndef _MACHINE_SETJMP_H_
 #define _MACHINE_SETJMP_H_
-#ifdef __ELF__
+
 #define	_JBLEN	64		/* size, in longs, of a jmp_buf */
-#else
-#define	_JBLEN	29		/* size, in longs, of a jmp_buf */
-#endif
 
 /*
  * NOTE: The internal structure of a jmp_buf is *PRIVATE*
@@ -21,12 +18,8 @@
  *
  * Description of the setjmp buffer
  *
- * word  0	magic number	(dependant on creator)
- *       1 -  3	f4		fp register 4
- *	 4 -  6	f5		fp register 5
- *	 7 -  9 f6		fp register 6
- *	10 - 12	f7		fp register 7
- *	13	fpsr		fp status register
+ * word  0	magic number	(dependent on creator)
+ *	13	fpscr		vfp status control register
  *	14	r4		register 4
  *	15	r5		register 5
  *	16	r6		register 6
@@ -38,10 +31,18 @@
  *	22	r12		register 12 (ip)
  *	23	r13		register 13 (sp)
  *	24	r14		register 14 (lr)
- *	25	signal mask	(dependant on magic)
+ *	25	signal mask	(dependent on magic)
  *	26	(con't)
  *	27	(con't)
  *	28	(con't)
+ *	32-33	d8		(vfp register d8)
+ *	34-35	d9		(vfp register d9)
+ *	36-37	d10		(vfp register d10)
+ *	38-39	d11		(vfp register d11)
+ *	40-41	d12		(vfp register d12)
+ *	42-43	d13		(vfp register d13)
+ *	44-45	d14		(vfp register d14)
+ *	46-47	d15		(vfp register d15)
  *
  * The magic number number identifies the jmp_buf and
  * how the buffer was created as well as providing
@@ -63,15 +64,13 @@
 
 #define _JB_MAGIC__SETJMP	0x4278f500
 #define _JB_MAGIC_SETJMP	0x4278f501
+#define _JB_MAGIC__SETJMP_VFP	0x4278f502
+#define _JB_MAGIC_SETJMP_VFP	0x4278f503
 
 /* Valid for all jmp_buf's */
 
 #define _JB_MAGIC		 0
-#define _JB_REG_F4		 1
-#define _JB_REG_F5		 4
-#define _JB_REG_F6		 7
-#define _JB_REG_F7		10
-#define _JB_REG_FPSR		13
+#define _JB_REG_FPSCR		13
 #define _JB_REG_R4		14
 #define _JB_REG_R5		15
 #define _JB_REG_R6		16
@@ -88,6 +87,15 @@
 
 #define _JB_SIGMASK		25
 
+#define	_JB_REG_D8		32
+#define	_JB_REG_D9		34
+#define	_JB_REG_D10		36
+#define	_JB_REG_D11		38
+#define	_JB_REG_D12		40
+#define	_JB_REG_D13		42
+#define	_JB_REG_D14		44
+#define	_JB_REG_D15		46
+
 #ifndef __ASSEMBLER__
 #if __BSD_VISIBLE || __POSIX_VISIBLE || __XSI_VISIBLE
 typedef struct _sigjmp_buf { int _sjb[_JBLEN + 1]; } sigjmp_buf[1];



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