Module Name:    src
Committed By:   matt
Date:           Fri Dec  7 18:49:13 UTC 2012

Modified Files:
        src/sys/arch/arm/include: mcontext.h reg.h

Log Message:
Extend vfpreg to include all 32 64-bit FP registers.
For __ARM_EABI__, define __vfp_fstmx to have space for all 32 32-bit
FP registers (It's a newly supported ABI so we can "break" binary
compatibility.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/arm/include/mcontext.h
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/arm/include/reg.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/include/mcontext.h
diff -u src/sys/arch/arm/include/mcontext.h:1.12 src/sys/arch/arm/include/mcontext.h:1.13
--- src/sys/arch/arm/include/mcontext.h:1.12	Wed Dec  5 19:05:46 2012
+++ src/sys/arch/arm/include/mcontext.h	Fri Dec  7 18:49:13 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: mcontext.h,v 1.12 2012/12/05 19:05:46 matt Exp $	*/
+/*	$NetBSD: mcontext.h,v 1.13 2012/12/07 18:49:13 matt Exp $	*/
 
 /*-
  * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc.
@@ -76,9 +76,15 @@ typedef struct {
 } __fpregset_t;
 
 typedef struct {
+#ifdef __ARM_EABI__
+	unsigned int	__vfp_fpscr;
+	uint64_t	__vfp_fstmx[32];
+	unsigned int	__vfp_fpsid;
+#else
 	unsigned int	__vfp_fpscr;
 	unsigned int	__vfp_fstmx[33];
 	unsigned int	__vfp_fpsid;
+#endif
 } __vfpregset_t;
 
 typedef struct {

Index: src/sys/arch/arm/include/reg.h
diff -u src/sys/arch/arm/include/reg.h:1.3 src/sys/arch/arm/include/reg.h:1.4
--- src/sys/arch/arm/include/reg.h:1.3	Wed Dec  5 19:05:46 2012
+++ src/sys/arch/arm/include/reg.h	Fri Dec  7 18:49:13 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: reg.h,v 1.3 2012/12/05 19:05:46 matt Exp $	*/
+/*	$NetBSD: reg.h,v 1.4 2012/12/07 18:49:13 matt Exp $	*/
 
 /*
  * Copyright (C) 1994, 1995 Frank Lancaster
@@ -51,7 +51,7 @@ struct vfpreg {
 	uint32_t vfp_fpscr;
 	uint32_t vfp_fpinst;
 	uint32_t vfp_fpinst2;
-	uint32_t vfp_regs[33];	/* In case we need fstmx format.  */
+	uint64_t vfp_regs[33];	/* In case we need fstmx format.  */
 };
 
 struct fpreg {

Reply via email to