Home
last modified time | relevance | path

Searched refs:fputil (Results 1 – 25 of 214) sorted by relevance

123456789

/llvm-project-15.0.7/libc/src/math/generic/
H A Dlog1pf.cpp47 return fputil::FPBits<float>::build_nan( in log()
89 if (fputil::get_round() != FE_UPWARD)
93 if (fputil::get_round() == FE_UPWARD)
97 if (fputil::get_round() != FE_UPWARD)
101 if (fputil::get_round() != FE_UPWARD)
113 if (fputil::get_round() != FE_UPWARD)
125 int round_mode = fputil::get_round();
137 if (fputil::get_round() == FE_TONEAREST)
141 if (fputil::get_round() == FE_TONEAREST)
145 if (fputil::get_round() != FE_DOWNWARD)
[all …]
H A DCMakeLists.txt8 libc.src.__support.FPUtil.fputil
20 libc.src.__support.FPUtil.fputil
32 libc.src.__support.FPUtil.fputil
84 libc.src.__support.FPUtil.fputil
114 libc.src.__support.FPUtil.fputil
126 libc.src.__support.FPUtil.fputil
138 libc.src.__support.FPUtil.fputil
150 libc.src.__support.FPUtil.fputil
162 libc.src.__support.FPUtil.fputil
174 libc.src.__support.FPUtil.fputil
[all …]
H A Dexp2f.cpp51 using FPBits = typename fputil::FPBits<float>;
60 if (fputil::get_round() == FE_TONEAREST)
64 if (fputil::get_round() == FE_TONEAREST)
68 int round_mode = fputil::get_round();
74 if (fputil::get_round() == FE_UPWARD)
78 if (fputil::get_round() == FE_TONEAREST)
82 if (fputil::get_round() == FE_TONEAREST)
97 int rounding = fputil::get_round();
114 if (fputil::get_round() == FE_UPWARD)
145 fputil::FPBits<double> exp_hi(
[all …]
H A Dlogf.cpp54 using FPBits = typename fputil::FPBits<float>;
59 if (fputil::get_round() == FE_TONEAREST)
63 if (fputil::get_round() == FE_TONEAREST)
67 if (fputil::get_round() == FE_TONEAREST)
71 if (fputil::get_round() == FE_TONEAREST)
75 if (fputil::get_round() == FE_UPWARD)
79 if (fputil::get_round() != FE_UPWARD)
83 if (fputil::get_round() != FE_UPWARD)
87 if (fputil::get_round() != FE_UPWARD)
122 fputil::multiply_add(static_cast<double>(m), LOG_2, LOG_F[f_index]);
[all …]
H A Dexpm1f.cpp25 using FPBits = typename fputil::FPBits<float>;
33 int round_mode = fputil::get_round();
41 int round_mode = fputil::get_round();
58 int round_mode = fputil::get_round();
66 int rounding = fputil::get_round();
103 return fputil::fma(x, x, x);
106 return static_cast<float>(fputil::multiply_add(xd, xd, xd));
120 return static_cast<float>(fputil::multiply_add(r, xsq, xd));
138 float kf = fputil::nearest_integer(x * 0x1.0p7f);
141 double xd = static_cast<double>(fputil::multiply_add(kf, -0x1.0p-7f, x));
[all …]
H A Dsinf.cpp45 using FPBits = typename fputil::FPBits<float>;
121 return fputil::multiply_add(x, -0x1.0p-25f, x);
123 return static_cast<float>(fputil::multiply_add(xd, -0x1.0p-25, xd));
138 fputil::polyeval(xsq, 1.0, -0x1.55555555554c6p-3, 0x1.1111111085e65p-7,
150 typename fputil::ExceptionChecker<float, N_EXCEPT_SMALL>;
164 fputil::set_except(FE_INVALID);
167 FPBits::build_nan(1 << (fputil::MantissaWidth<float>::VALUE - 1));
171 typename fputil::ExceptionChecker<float, N_EXCEPT_LARGE>;
194 y * fputil::polyeval(ysq, 0x1.921fb54442d17p1, -0x1.4abbce625bd4bp2,
H A Dexpf.cpp24 using FPBits = typename fputil::FPBits<float>;
50 if (fputil::get_round() == FE_UPWARD)
59 int rounding = fputil::get_round();
84 float kf = fputil::nearest_integer(x * 0x1.0p7f);
86 double xd = static_cast<double>(fputil::multiply_add(kf, -0x1.0p-7f, x));
99 fputil::polyeval(xd, 0x1p0, 0x1.ffffffffff777p-1, 0x1.000000000071cp-1,
H A Dlog10f.cpp107 using FPBits = typename fputil::FPBits<float>;
134 if (fputil::get_round() == FE_UPWARD)
138 int round_mode = fputil::get_round();
151 return FPBits::build_nan(1 << (fputil::MantissaWidth<float>::VALUE - 1));
172 double extra_factor = fputil::multiply_add(m, LOG10_2, LOG10_F[f_index]);
174 double r = fputil::polyeval(d, extra_factor, 0x1.bcb7b1526e4c5p-2,
H A Dlog2f.cpp102 using FPBits = typename fputil::FPBits<float>;
109 int rounding_mode = fputil::get_round();
116 if (fputil::get_round() == FE_TONEAREST) {
121 if (fputil::get_round() == FE_TOWARDZERO) {
134 return FPBits::build_nan(1 << (fputil::MantissaWidth<float>::VALUE - 1));
159 double r = __llvm_libc::fputil::polyeval(
/llvm-project-15.0.7/libc/src/__support/
H A Dstr_to_float.h55 return fputil::safe_clz(inputNumber);
59 return fputil::safe_clz(inputNumber);
327 *outputExp2 = fputil::FPBits<T>::MAX_EXPONENT; in simple_decimal_conversion()
378 if (exp2 >= fputil::FPBits<T>::MAX_EXPONENT) { in simple_decimal_conversion()
380 *outputExp2 = fputil::FPBits<T>::MAX_EXPONENT; in simple_decimal_conversion()
418 if (exp2 >= fputil::FPBits<T>::MAX_EXPONENT) { in simple_decimal_conversion()
513 fputil::FPBits<T> result; in clinger_fast_path()
517 result = fputil::FPBits<T>(float_mantissa); in clinger_fast_path()
533 result = fputil::FPBits<T>(float_mantissa * in clinger_fast_path()
539 result = fputil::FPBits<T>(float_mantissa / in clinger_fast_path()
[all …]
/llvm-project-15.0.7/libc/test/src/math/
H A DCMakeLists.txt16 libc.src.__support.FPUtil.fputil
28 libc.src.__support.FPUtil.fputil
44 libc.src.__support.FPUtil.fputil
56 libc.src.__support.FPUtil.fputil
72 libc.src.__support.FPUtil.fputil
87 libc.src.__support.FPUtil.fputil
102 libc.src.__support.FPUtil.fputil
117 libc.src.__support.FPUtil.fputil
132 libc.src.__support.FPUtil.fputil
147 libc.src.__support.FPUtil.fputil
[all …]
H A DRoundToIntegerTest.h32 using FPBits = __llvm_libc::fputil::FPBits<F>;
37 const F inf = F(__llvm_libc::fputil::FPBits<F>::inf());
46 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in test_one_input()
93 __llvm_libc::fputil::set_round(mode); in testInfinityAndNaN()
137 __llvm_libc::fputil::set_round(mode); in testRoundNumbers()
164 __llvm_libc::fputil::set_round(mode); in testFractions()
195 __llvm_libc::fputil::set_round(m); in testIntegerOverflow()
222 __llvm_libc::fputil::set_round(FE_UPWARD); in testSubnormalRange()
224 __llvm_libc::fputil::set_round(FE_DOWNWARD); in testSubnormalRange()
231 __llvm_libc::fputil::set_round(FE_UPWARD); in testSubnormalRange()
[all …]
H A DILogbTest.h25 EXPECT_EQ(FP_ILOGB0, func(T(__llvm_libc::fputil::FPBits<T>::zero()))); in test_special_numbers()
26 EXPECT_EQ(FP_ILOGB0, func(T(__llvm_libc::fputil::FPBits<T>::neg_zero()))); in test_special_numbers()
29 func(T(__llvm_libc::fputil::FPBits<T>::build_nan(1)))); in test_special_numbers()
31 EXPECT_EQ(INT_MAX, func(T(__llvm_libc::fputil::FPBits<T>::inf()))); in test_special_numbers()
32 EXPECT_EQ(INT_MAX, func(T(__llvm_libc::fputil::FPBits<T>::neg_inf()))); in test_special_numbers()
76 using FPBits = __llvm_libc::fputil::FPBits<T>; in test_subnormal_range()
88 __llvm_libc::fputil::frexp(x, exponent); in test_subnormal_range()
95 using FPBits = __llvm_libc::fputil::FPBits<T>; in test_normal_range()
105 __llvm_libc::fputil::frexp(x, exponent); in test_normal_range()
/llvm-project-15.0.7/libc/test/src/fenv/
H A Dexception_flags_test.cpp20 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
21 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
30 __llvm_libc::fputil::raise_except(e); in TEST()
32 ASSERT_NE(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
37 __llvm_libc::fputil::clear_except(e); in TEST()
38 ASSERT_EQ(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
41 ASSERT_NE(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
45 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
49 __llvm_libc::fputil::raise_except(FE_INVALID); in TEST()
53 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
[all …]
H A Dfeholdexcept_test.cpp27 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
28 __llvm_libc::fputil::enable_except(FE_DIVBYZERO); in TEST()
29 if (__llvm_libc::fputil::get_except() == 0) in TEST()
38 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
39 __llvm_libc::fputil::enable_except(e); in TEST()
40 ASSERT_EQ(__llvm_libc::fputil::clear_except(FE_ALL_EXCEPT), 0); in TEST()
44 ASSERT_EQ(__llvm_libc::fputil::raise_except(e), 0); in TEST()
54 __llvm_libc::fputil::set_env(&env); in TEST()
55 __llvm_libc::fputil::raise_except(e); in TEST()
59 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
[all …]
H A Dgetenv_and_setenv_test.cpp22 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
28 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
34 __llvm_libc::fputil::raise_except(e); in TEST()
36 ASSERT_NE(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
39 ASSERT_EQ(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
46 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
52 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
58 __llvm_libc::fputil::raise_except(e); in TEST()
60 ASSERT_NE(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
64 ASSERT_EQ(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT) & e, 0); in TEST()
H A Denabled_exceptions_test.cpp32 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
33 __llvm_libc::fputil::enable_except(FE_DIVBYZERO); in TEST()
34 if (__llvm_libc::fputil::get_except() == 0) in TEST()
53 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
54 __llvm_libc::fputil::enable_except(e); in TEST()
72 __llvm_libc::fputil::enable_except(e); in TEST()
77 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
H A Dfeclearexcept_test.cpp20 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
21 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
24 ASSERT_EQ(__llvm_libc::fputil::test_except(e), 0); in TEST()
26 __llvm_libc::fputil::raise_except(FE_ALL_EXCEPT); in TEST()
35 ASSERT_EQ(__llvm_libc::fputil::test_except(e1 | e2 | e3 | e4 | e5), in TEST()
38 __llvm_libc::fputil::raise_except(e1 | e2 | e3 | e4 | e5); in TEST()
H A Dfeupdateenv_test.cpp18 __llvm_libc::fputil::disable_except(FE_ALL_EXCEPT); in TEST()
19 __llvm_libc::fputil::clear_except(FE_ALL_EXCEPT); in TEST()
22 ASSERT_EQ(__llvm_libc::fputil::get_env(&env), 0); in TEST()
23 __llvm_libc::fputil::set_except(FE_INVALID | FE_INEXACT); in TEST()
25 ASSERT_EQ(__llvm_libc::fputil::test_except(FE_INVALID | FE_INEXACT), in TEST()
/llvm-project-15.0.7/libc/src/fenv/
H A DCMakeLists.txt9 libc.src.__support.FPUtil.fputil
22 libc.src.__support.FPUtil.fputil
35 libc.src.__support.FPUtil.fputil
48 libc.src.__support.FPUtil.fputil
61 libc.src.__support.FPUtil.fputil
74 libc.src.__support.FPUtil.fputil
87 libc.src.__support.FPUtil.fputil
100 libc.src.__support.FPUtil.fputil
113 libc.src.__support.FPUtil.fputil
126 libc.src.__support.FPUtil.fputil
[all …]
/llvm-project-15.0.7/libc/test/src/stdlib/
H A Datof_test.cpp21 __llvm_libc::fputil::FPBits<double> expected_fp = in TEST()
22 __llvm_libc::fputil::FPBits<double>(uint64_t(0x405ec00000000000)); in TEST()
27 __llvm_libc::fputil::FPBits<double> actual_fp = in TEST()
28 __llvm_libc::fputil::FPBits<double>(result); in TEST()
38 __llvm_libc::fputil::FPBits<double> expected_fp = in TEST()
39 __llvm_libc::fputil::FPBits<double>(uint64_t(0)); in TEST()
44 __llvm_libc::fputil::FPBits<double> actual_fp = in TEST()
45 __llvm_libc::fputil::FPBits<double>(result); in TEST()
/llvm-project-15.0.7/libc/test/src/math/exhaustive/
H A DCMakeLists.txt21 libc.src.__support.FPUtil.fputil
36 libc.src.__support.FPUtil.fputil
51 libc.src.__support.FPUtil.fputil
66 libc.src.__support.FPUtil.fputil
83 libc.src.__support.FPUtil.fputil
100 libc.src.__support.FPUtil.fputil
117 libc.src.__support.FPUtil.fputil
134 libc.src.__support.FPUtil.fputil
151 libc.src.__support.FPUtil.fputil
168 libc.src.__support.FPUtil.fputil
[all …]
/llvm-project-15.0.7/libc/src/stdio/printf_core/
H A Dfloat_hex_converter.h25 using MantissaInt = fputil::FPBits<long double>::UIntType;
40 mantissa_width = fputil::MantissaWidth<long double>::VALUE; in convert_float_hex_exp()
41 exponent_bias = fputil::FPBits<long double>::EXPONENT_BIAS; in convert_float_hex_exp()
42 fputil::FPBits<long double>::UIntType float_raw = to_conv.conv_val_raw; in convert_float_hex_exp()
43 fputil::FPBits<long double> float_bits(float_raw); in convert_float_hex_exp()
49 mantissa_width = fputil::MantissaWidth<double>::VALUE; in convert_float_hex_exp()
50 exponent_bias = fputil::FPBits<double>::EXPONENT_BIAS; in convert_float_hex_exp()
51 fputil::FPBits<double>::UIntType float_raw = to_conv.conv_val_raw; in convert_float_hex_exp()
52 fputil::FPBits<double> float_bits(float_raw); in convert_float_hex_exp()
113 switch (fputil::get_round()) { in convert_float_hex_exp()
[all …]
/llvm-project-15.0.7/libc/utils/UnitTest/
H A DFPMatcher.h20 namespace fputil {
43 fputil::FPBits<T> actualBits(actual), expectedBits(expected); in match()
71 using FPBits = __llvm_libc::fputil::FPBits<T>; \
82 __llvm_libc::fputil::testing::getMatcher<__llvm_libc::testing::Cond_EQ>( \
88 __llvm_libc::fputil::testing::getMatcher<__llvm_libc::testing::Cond_EQ>( \
94 __llvm_libc::fputil::testing::getMatcher<__llvm_libc::testing::Cond_NE>( \
100 __llvm_libc::fputil::testing::getMatcher<__llvm_libc::testing::Cond_NE>( \
124 EXPECT_EQ(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT), expected); \
131 ASSERT_EQ(__llvm_libc::fputil::test_except(FE_ALL_EXCEPT), expected); \
H A DFPMatcher.cpp19 namespace fputil { namespace
37 (fputil::ExponentWidth<ValType>::VALUE - 1) / 4 + 1; in describeValue()
39 (fputil::MantissaWidth<ValType>::VALUE - 1) / 4 + 1; in describeValue()
41 sizeof(typename fputil::FPBits<ValType>::UIntType) * 2; in describeValue()
44 << int_to_hex<typename fputil::FPBits<ValType>::UIntType>( in describeValue()
50 << int_to_hex<typename fputil::FPBits<ValType>::UIntType>( in describeValue()

123456789