summaryrefslogtreecommitdiff
path: root/libc/ports/sysdeps/mips/soft-fp/sfp-machine.h
diff options
context:
space:
mode:
authorjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2013-05-18 00:51:47 +0000
committerjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2013-05-18 00:51:47 +0000
commiteab7f6089510455a9b26643c64da331749a15650 (patch)
treee069c5f33da7c0cffbb68f47ec07b1b10b6789e4 /libc/ports/sysdeps/mips/soft-fp/sfp-machine.h
parentf9b341f7c8c64a0df8707b3cf29b425a25a52d12 (diff)
downloadeglibc2-eab7f6089510455a9b26643c64da331749a15650.tar.gz
Merge changes between r22954 and r23097 from /fsf/trunk.
git-svn-id: svn://svn.eglibc.org/trunk@23098 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/ports/sysdeps/mips/soft-fp/sfp-machine.h')
-rw-r--r--libc/ports/sysdeps/mips/soft-fp/sfp-machine.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/libc/ports/sysdeps/mips/soft-fp/sfp-machine.h b/libc/ports/sysdeps/mips/soft-fp/sfp-machine.h
index 3b2a40f0e..8ccfaa60f 100644
--- a/libc/ports/sysdeps/mips/soft-fp/sfp-machine.h
+++ b/libc/ports/sysdeps/mips/soft-fp/sfp-machine.h
@@ -14,14 +14,16 @@
#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y)
#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y)
-#define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1)
-#define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1), -1
-#define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1
+#define _FP_NANFRAC_S (_FP_QNANBIT_S - 1)
+#define _FP_NANFRAC_D (_FP_QNANBIT_D - 1), -1
+#define _FP_NANFRAC_Q (_FP_QNANBIT_Q - 1), -1, -1, -1
#define _FP_NANSIGN_S 0
#define _FP_NANSIGN_D 0
#define _FP_NANSIGN_Q 0
#define _FP_KEEPNANFRACP 1
+#define _FP_QNANNEGATEDP 1
+
/* From my experiments it seems X is chosen unless one of the
NaNs is sNaN, in which case the result is NANSIGN/NANFRAC. */
#define _FP_CHOOSENAN(fs, wc, R, X, Y, OP) \