Lines Matching +full:range +full:- +full:double
1 /*-
2 * SPDX-License-Identifier: BSD-3-Clause
8 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
38 #define ONE_FOURTH (1L << (LONG_BITS - 2))
43 * Convert double to (unsigned) quad.
44 * Not sure what to do with negative numbers---for now, anything out
45 * of range becomes UQUAD_MAX.
48 __fixunsdfdi(double x) in __fixunsdfdi()
50 double toppart; in __fixunsdfdi()
58 #else /* so we wire in 2^64-1 instead */ in __fixunsdfdi()
67 toppart = (x - ONE_HALF) / ONE; in __fixunsdfdi()
73 * range [0..ULONG_MAX]. For paranoia, we assume [LONG_MIN.. in __fixunsdfdi()
78 x -= (double)t.uq; in __fixunsdfdi()
80 t.ul[H]--; in __fixunsdfdi()
81 x += (double)ULONG_MAX; in __fixunsdfdi()
83 if (x > (double)ULONG_MAX) { in __fixunsdfdi()
85 x -= (double)ULONG_MAX; in __fixunsdfdi()