Lines Matching refs:e10
67 __atod_engine(uint64_t m10, int e10) in __atod_engine() argument
71 printf("e10 = %d\n", e10); in __atod_engine()
72 printf("m10 * 10^e10 = %" PRIu64 " * 10^%d\n", m10, e10); in __atod_engine()
82 if (e10 >= 0) { in __atod_engine()
92 e2 = floor_log2(m10) + e10 + log2pow5(e10) - (DOUBLE_MANTISSA_BITS + 1); in __atod_engine()
96 int j = e2 - e10 - ceil_log2pow5(e10) + DOUBLE_POW5_BITCOUNT; in __atod_engine()
100 __double_computePow5(e10, pow5); in __atod_engine()
103 assert(e10 < DOUBLE_POW5_TABLE_SIZE); in __atod_engine()
104 m2 = mulShift64(m10, DOUBLE_POW5_SPLIT[e10], j); in __atod_engine()
111 trailingZeros = e2 < e10 || (e2 - e10 < 64 && multipleOfPowerOf2(m10, e2 - e10)); in __atod_engine()
113 e2 = floor_log2(m10) + e10 - ceil_log2pow5(-e10) - (DOUBLE_MANTISSA_BITS + 1); in __atod_engine()
114 int j = e2 - e10 + ceil_log2pow5(-e10) - 1 + DOUBLE_POW5_INV_BITCOUNT; in __atod_engine()
117 __double_computeInvPow5(-e10, pow5); in __atod_engine()
120 assert(-e10 < DOUBLE_POW5_INV_TABLE_SIZE); in __atod_engine()
121 m2 = mulShift64(m10, DOUBLE_POW5_INV_SPLIT[-e10], j); in __atod_engine()
123 trailingZeros = multipleOfPowerOf5(m10, -e10); in __atod_engine()