Lines Matching refs:FPB
126 using FPB = fputil::FPBits<T>; in PreCheck() local
127 const T quiet_NaN = FPB::build_nan(FPB::FloatProp::QUIET_NAN_MASK); in PreCheck()
128 FPB sx(x), sy(y); in PreCheck()
186 using FPB = FPBits<T>;
187 using intU_t = typename FPB::UIntType;
197 (m_x * inv_hy) >> (FPB::FloatProp::BIT_WIDTH - sides_zeroes_count); in execute()
203 intU_t hd = (m_x * inv_hy) >> (FPB::FloatProp::BIT_WIDTH - exp_diff); in execute()
223 using FPB = FPBits<T>;
224 using intU_t = typename FPB::UIntType;
226 inline static constexpr FPB eval_internal(FPB sx, FPB sy) { in eval_internal()
231 return FPB::zero(); // |x|=|y| return 0.0 in eval_internal()
238 if (likely(e_y > int(FPB::FloatProp::MANTISSA_WIDTH) && in eval_internal()
239 e_x - e_y <= int(FPB::FloatProp::EXPONENT_WIDTH))) { in eval_internal()
244 return FPB::zero(); in eval_internal()
246 return FPB::make_value(d, e_y - 1); in eval_internal()
250 FPB d; in eval_internal()
260 int lead_zeros_m_y = FPB::FloatProp::EXPONENT_WIDTH; in eval_internal()
283 int left_shift = exp_diff < int(FPB::FloatProp::EXPONENT_WIDTH) in eval_internal()
285 : FPB::FloatProp::EXPONENT_WIDTH; in eval_internal()
292 return FPB::zero(); in eval_internal()
295 return FPB::make_value(m_x, e_y); in eval_internal()
299 return FPB::make_value(m_x, e_y); in eval_internal()
306 FPB sx(x), sy(y); in eval()
310 FPB result = eval_internal(sx, sy); in eval()