summaryrefslogtreecommitdiffstats
path: root/sys/mips
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2015-01-22 21:17:58 +0000
committerbrooks <brooks@FreeBSD.org>2015-01-22 21:17:58 +0000
commitf4cd08de015fb504a60c3d1153891bd9390ed9d5 (patch)
treef26e551f9395b1485b4a562ea0d0456d0c010195 /sys/mips
parent2247a6699648e6e29de6f734e0cc94db00c55f54 (diff)
downloadFreeBSD-src-f4cd08de015fb504a60c3d1153891bd9390ed9d5.zip
FreeBSD-src-f4cd08de015fb504a60c3d1153891bd9390ed9d5.tar.gz
MFC r274816:
Add FPU support for MIPS setjmp(3)/longjmp(3). This change saves/restores the callee-saved MIPS floating point registers as documented by the o32/n32/n64 spec ("MIPSpro N32 ABI Handbook", Table 2-1) for the _setjmp(3), _longjmp(3), setjmp(3) and longjmp(3) C library functions. This is only included when the C library is built with hardware floating point support (or when "SOFTFLOAT" is not defined). Submitted by: sson Sponsored by: DARPA, AFRL
Diffstat (limited to 'sys/mips')
-rw-r--r--sys/mips/include/asm.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/sys/mips/include/asm.h b/sys/mips/include/asm.h
index 551d02c..3b0c49a 100644
--- a/sys/mips/include/asm.h
+++ b/sys/mips/include/asm.h
@@ -707,6 +707,20 @@ _C_LABEL(x):
#define _JB_SIGMASK 13
+#define _JB_FPREG_F20 14
+#define _JB_FPREG_F21 15
+#define _JB_FPREG_F22 16
+#define _JB_FPREG_F23 17
+#define _JB_FPREG_F24 18
+#define _JB_FPREG_F25 19
+#define _JB_FPREG_F26 20
+#define _JB_FPREG_F27 21
+#define _JB_FPREG_F28 22
+#define _JB_FPREG_F29 23
+#define _JB_FPREG_F30 24
+#define _JB_FPREG_F31 25
+#define _JB_FPREG_FCSR 26
+
/*
* Various macros for dealing with TLB hazards
* (a) why so many?
OpenPOWER on IntegriCloud