diff --git a/libc/fuzzing/math/CMakeLists.txt b/libc/fuzzing/math/CMakeLists.txt --- a/libc/fuzzing/math/CMakeLists.txt +++ b/libc/fuzzing/math/CMakeLists.txt @@ -45,7 +45,7 @@ libc.src.math.trunc libc.src.math.truncf libc.src.math.truncl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.CPP.type_traits ) diff --git a/libc/src/__support/CMakeLists.txt b/libc/src/__support/CMakeLists.txt --- a/libc/src/__support/CMakeLists.txt +++ b/libc/src/__support/CMakeLists.txt @@ -61,7 +61,8 @@ .uint128 libc.include.errno libc.src.__support.CPP.limits - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.builtin_wrappers libc.src.errno.errno ) diff --git a/libc/src/__support/FPUtil/CMakeLists.txt b/libc/src/__support/FPUtil/CMakeLists.txt --- a/libc/src/__support/FPUtil/CMakeLists.txt +++ b/libc/src/__support/FPUtil/CMakeLists.txt @@ -1,28 +1,128 @@ -#TODO(michaelrj): separate the fputil library into individual targets. add_header_library( - fputil + builtin_wrappers + HDRS + builtin_wrappers.h +) + +add_header_library( + fenv_impl HDRS FEnvImpl.h - BasicOperations.h - DivisionAndRemainderOperations.h + DEPENDS + libc.include.fenv + libc.src.__support.common +) + +add_header_library( + platform_defs + HDRS + PlatformDefs.h + DEPENDS + libc.src.__support.common +) + +add_header_library( + float_properties + HDRS FloatProperties.h + DEPENDS + .platform_defs + libc.src.__support.uint128 +) + +add_header_library( + fp_bits + HDRS FPBits.h - BasicOperations.h - ManipulationFunctions.h + DEPENDS + .platform_defs + .float_properties + .builtin_wrappers + libc.src.__support.CPP.bit + libc.src.__support.CPP.type_traits + libc.src.__support.common +) + +add_header_library( + nearest_integer_operations + HDRS NearestIntegerOperations.h - NormalFloat.h - PlatformDefs.h - builtin_wrappers.h - except_value_utils.h DEPENDS + .fp_bits + .fenv_impl + libc.src.__support.CPP.type_traits + libc.include.math libc.include.errno - libc.include.fenv + libc.src.errno.errno +) + +add_header_library( + normal_float + HDRS + NormalFloat.h + DEPENDS + .fp_bits + libc.src.__support.CPP.type_traits +) + +add_header_library( + manipulation_functions + HDRS + ManipulationFunctions.h + DEPENDS + .fp_bits + .nearest_integer_operations + .normal_float + .platform_defs + libc.src.__support.CPP.bit + libc.src.__support.CPP.type_traits libc.include.math - libc.src.__support.common + libc.include.errno + libc.src.errno.errno +) + +add_header_library( + basic_operations + HDRS + BasicOperations.h + DEPENDS + .fp_bits + libc.src.__support.CPP.type_traits +) + +add_header_library( + division_and_remainder_operations + HDRS + DivisionAndRemainderOperations.h + DEPENDS + .fp_bits + .manipulation_functions + .normal_float + libc.src.__support.CPP.type_traits +) + +add_header_library( + except_value_utils + HDRS + except_value_utils.h + DEPENDS + .fp_bits + .fenv_impl +) + + +add_header_library( + hypot + HDRS + Hypot.h + DEPENDS + .basic_operations + .fenv_impl + .fp_bits + .builtin_wrappers libc.src.__support.CPP.bit libc.src.__support.CPP.type_traits libc.src.__support.uint128 - libc.src.errno.errno ) add_header_library( @@ -30,7 +130,8 @@ HDRS XFloat.h DEPENDS - .fputil #FPBits and NormalFloat + .fp_bits + .normal_float libc.src.__support.uint ) @@ -39,7 +140,7 @@ HDRS sqrt.h DEPENDS - .fputil + libc.src.__support.common libc.src.__support.FPUtil.generic.sqrt ) @@ -48,7 +149,8 @@ HDRS FMA.h DEPENDS - .fputil + libc.src.__support.common + libc.src.__support.CPP.type_traits libc.src.__support.FPUtil.generic.fma FLAGS FMA_OPT diff --git a/libc/src/fenv/CMakeLists.txt b/libc/src/fenv/CMakeLists.txt --- a/libc/src/fenv/CMakeLists.txt +++ b/libc/src/fenv/CMakeLists.txt @@ -6,7 +6,7 @@ fegetround.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -19,7 +19,7 @@ fesetround.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -32,7 +32,7 @@ feclearexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -45,7 +45,7 @@ feraiseexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -58,7 +58,7 @@ fetestexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -71,7 +71,7 @@ fegetenv.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -84,7 +84,7 @@ fesetenv.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -97,7 +97,7 @@ fegetexceptflag.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -110,7 +110,7 @@ fesetexceptflag.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -123,7 +123,7 @@ feholdexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -136,7 +136,7 @@ feupdateenv.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -149,7 +149,7 @@ feenableexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -162,7 +162,7 @@ fedisableexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) @@ -175,7 +175,7 @@ fegetexcept.h DEPENDS libc.include.fenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl COMPILE_OPTIONS -O2 ) diff --git a/libc/src/math/CMakeLists.txt b/libc/src/math/CMakeLists.txt --- a/libc/src/math/CMakeLists.txt +++ b/libc/src/math/CMakeLists.txt @@ -47,7 +47,6 @@ HDRS fmaf.h DEPENDS - libc.src.__support.FPUtil.fputil libc.src.__support.FPUtil.fma COMPILE_OPTIONS -O3 @@ -60,7 +59,6 @@ HDRS fma.h DEPENDS - libc.src.__support.FPUtil.fputil libc.src.__support.FPUtil.fma COMPILE_OPTIONS -O3 diff --git a/libc/src/math/generic/CMakeLists.txt b/libc/src/math/generic/CMakeLists.txt --- a/libc/src/math/generic/CMakeLists.txt +++ b/libc/src/math/generic/CMakeLists.txt @@ -5,7 +5,7 @@ HDRS ../ceil.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -17,7 +17,7 @@ HDRS ../ceilf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -29,7 +29,7 @@ HDRS ../ceill.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -52,7 +52,7 @@ range_reduction.h range_reduction_fma.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.nearest_integer @@ -64,7 +64,7 @@ sincosf_utils.h DEPENDS .range_reduction - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.polyeval ) @@ -78,7 +78,10 @@ .sincosf_utils libc.include.math libc.src.errno.errno - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.except_value_utils libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.polyeval @@ -97,7 +100,9 @@ .sincosf_utils libc.include.math libc.src.errno.errno - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.polyeval @@ -116,7 +121,8 @@ .sincosf_utils libc.include.math libc.src.errno.errno - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.polyeval @@ -134,7 +140,10 @@ .range_reduction libc.include.math libc.src.errno.errno - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.except_value_utils + libc.src.__support.FPUtil.nearest_integer libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.polyeval @@ -149,7 +158,7 @@ HDRS ../fabs.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -161,7 +170,7 @@ HDRS ../fabsf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -173,7 +182,7 @@ HDRS ../fabsl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -185,7 +194,7 @@ HDRS ../trunc.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -197,7 +206,7 @@ HDRS ../truncf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -209,7 +218,7 @@ HDRS ../truncl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -221,7 +230,7 @@ HDRS ../floor.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -233,7 +242,7 @@ HDRS ../floorf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -245,7 +254,7 @@ HDRS ../floorl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -257,7 +266,7 @@ HDRS ../round.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -269,7 +278,7 @@ HDRS ../roundf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -281,7 +290,7 @@ HDRS ../roundl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -293,7 +302,7 @@ HDRS ../lround.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -305,7 +314,7 @@ HDRS ../lroundf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -317,7 +326,7 @@ HDRS ../lroundl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -329,7 +338,7 @@ HDRS ../llround.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -341,7 +350,7 @@ HDRS ../llroundf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -353,7 +362,7 @@ HDRS ../llroundl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -365,7 +374,7 @@ HDRS ../rint.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -377,7 +386,7 @@ HDRS ../rintf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -389,7 +398,7 @@ HDRS ../rintl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -401,7 +410,7 @@ HDRS ../lrint.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -413,7 +422,7 @@ HDRS ../lrintf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -425,7 +434,7 @@ HDRS ../lrintl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -437,7 +446,7 @@ HDRS ../llrint.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -449,7 +458,7 @@ HDRS ../llrintf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -461,7 +470,7 @@ HDRS ../llrintl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -473,7 +482,7 @@ HDRS ../nearbyint.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -485,7 +494,7 @@ HDRS ../nearbyintf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -497,7 +506,7 @@ HDRS ../nearbyintl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.nearest_integer_operations COMPILE_OPTIONS -O2 ) @@ -520,10 +529,14 @@ ../expf.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.nearest_integer libc.src.__support.FPUtil.polyeval + libc.include.errno + libc.src.errno.errno libc.include.math COMPILE_OPTIONS -O3 @@ -536,11 +549,15 @@ HDRS ../exp2f.h DEPENDS + .common_constants .explogxf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.nearest_integer libc.src.__support.FPUtil.polyeval + libc.include.errno + libc.src.errno.errno libc.include.math COMPILE_OPTIONS -O3 @@ -554,10 +571,14 @@ ../expm1f.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.multiply_add libc.src.__support.FPUtil.nearest_integer libc.src.__support.FPUtil.polyeval + libc.include.errno + libc.src.errno.errno libc.include.math COMPILE_OPTIONS -O3 @@ -570,7 +591,7 @@ HDRS ../copysign.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -582,7 +603,7 @@ HDRS ../copysignf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -594,7 +615,7 @@ HDRS ../copysignl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -606,7 +627,7 @@ HDRS ../frexp.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -618,7 +639,7 @@ HDRS ../frexpf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -630,7 +651,7 @@ HDRS ../frexpl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -642,7 +663,7 @@ HDRS ../ilogb.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -654,7 +675,7 @@ HDRS ../ilogbf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -666,7 +687,7 @@ HDRS ../ilogbl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -678,7 +699,7 @@ HDRS ../ldexp.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -690,7 +711,7 @@ HDRS ../ldexpf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -702,7 +723,7 @@ HDRS ../ldexpl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -723,8 +744,10 @@ ../log10f.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.polyeval COMPILE_OPTIONS -O3 @@ -738,8 +761,10 @@ ../log1pf.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.polyeval COMPILE_OPTIONS -O3 @@ -753,7 +778,10 @@ ../log2f.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.polyeval COMPILE_OPTIONS -O3 @@ -767,8 +795,10 @@ ../logf.h DEPENDS .common_constants - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fma libc.src.__support.FPUtil.polyeval COMPILE_OPTIONS -O3 @@ -781,7 +811,7 @@ HDRS ../logb.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -793,7 +823,7 @@ HDRS ../logbf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -805,7 +835,7 @@ HDRS ../logbl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -817,7 +847,7 @@ HDRS ../modf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -829,7 +859,7 @@ HDRS ../modff.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -841,7 +871,7 @@ HDRS ../modfl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -853,7 +883,7 @@ HDRS ../fmin.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -865,7 +895,7 @@ HDRS ../fminf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -877,7 +907,7 @@ HDRS ../fminl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -889,7 +919,7 @@ HDRS ../fmax.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -901,7 +931,7 @@ HDRS ../fmaxf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -913,7 +943,7 @@ HDRS ../fmaxl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -925,7 +955,6 @@ HDRS ../sqrt.h DEPENDS - libc.src.__support.FPUtil.fputil libc.src.__support.FPUtil.sqrt COMPILE_OPTIONS -O3 @@ -938,7 +967,6 @@ HDRS ../sqrtf.h DEPENDS - libc.src.__support.FPUtil.fputil libc.src.__support.FPUtil.sqrt COMPILE_OPTIONS -O3 @@ -951,7 +979,6 @@ HDRS ../sqrtl.h DEPENDS - libc.src.__support.FPUtil.fputil libc.src.__support.FPUtil.sqrt COMPILE_OPTIONS -O3 @@ -964,7 +991,7 @@ HDRS ../remquof.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -976,7 +1003,7 @@ HDRS ../remquo.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -988,7 +1015,7 @@ HDRS ../remquol.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -1000,7 +1027,7 @@ HDRS ../remainderf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -1012,7 +1039,7 @@ HDRS ../remainder.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -1024,7 +1051,7 @@ HDRS ../remainderl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.division_and_remainder_operations COMPILE_OPTIONS -O2 ) @@ -1036,7 +1063,8 @@ HDRS ../hypotf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.sqrt COMPILE_OPTIONS -O3 @@ -1049,7 +1077,7 @@ HDRS ../fdim.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -1061,7 +1089,7 @@ HDRS ../fdimf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -1073,7 +1101,7 @@ HDRS ../fdiml.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations COMPILE_OPTIONS -O2 ) @@ -1085,7 +1113,7 @@ HDRS ../hypot.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.hypot COMPILE_OPTIONS -O3 ) @@ -1097,7 +1125,7 @@ HDRS ../nextafter.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -1109,7 +1137,7 @@ HDRS ../nextafterf.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -1121,7 +1149,7 @@ HDRS ../nextafterl.h DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions COMPILE_OPTIONS -O2 ) @@ -1133,7 +1161,8 @@ HDRS dp_trig.h DEPENDS - libc.src.__support.FPUtil.fputil #FPBits and ManipulationFunction + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.manipulation_functions libc.src.__support.FPUtil.xfloat libc.src.__support.uint COMPILE_OPTIONS @@ -1166,12 +1195,26 @@ -O3 ) +#TODO: Add errno include to the hyperbolic functions. add_object_library( explogxf HDRS explogxf.h SRCS explogxf.cpp + DEPENDS + .common_constants + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.multiply_add + libc.src.__support.FPUtil.nearest_integer + libc.src.__support.FPUtil.polyeval + libc.include.errno + libc.src.errno.errno + libc.include.math + COMPILE_OPTIONS + -O3 ) add_entrypoint_object( @@ -1182,11 +1225,8 @@ ../coshf.h DEPENDS .explogxf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.multiply_add - libc.src.__support.FPUtil.nearest_integer - libc.src.__support.FPUtil.polyeval - libc.include.math COMPILE_OPTIONS -O3 ) @@ -1199,11 +1239,7 @@ ../sinhf.h DEPENDS .explogxf - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add - libc.src.__support.FPUtil.nearest_integer - libc.src.__support.FPUtil.polyeval - libc.include.math + libc.src.__support.FPUtil.fp_bits COMPILE_OPTIONS -O3 ) @@ -1216,11 +1252,7 @@ ../tanhf.h DEPENDS .explogxf - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add - libc.src.__support.FPUtil.nearest_integer - libc.src.__support.FPUtil.polyeval - libc.include.math + libc.src.__support.FPUtil.fp_bits COMPILE_OPTIONS -O3 ) @@ -1233,11 +1265,7 @@ ../atanhf.h DEPENDS .explogxf - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add - libc.src.__support.FPUtil.nearest_integer - libc.src.__support.FPUtil.polyeval - libc.include.math + libc.src.__support.FPUtil.fp_bits COMPILE_OPTIONS -O3 ) @@ -1248,6 +1276,16 @@ inv_trigf_utils.h SRCS inv_trigf_utils.cpp + DEPENDS + .math_utils + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.nearest_integer + libc.src.__support.FPUtil.nearest_integer_operations + libc.src.__support.FPUtil.polyeval + libc.include.errno + libc.src.errno.errno + libc.include.math ) add_entrypoint_object( @@ -1258,11 +1296,8 @@ ../atanf.h DEPENDS .inv_trigf_utils - libc.src.__support.FPUtil.fputil - libc.src.__support.FPUtil.multiply_add - libc.src.__support.FPUtil.nearest_integer - libc.src.__support.FPUtil.polyeval - libc.include.math + .math_utils + libc.src.__support.FPUtil.fp_bits COMPILE_OPTIONS -O3 ) diff --git a/libc/src/stdio/printf_core/CMakeLists.txt b/libc/src/stdio/printf_core/CMakeLists.txt --- a/libc/src/stdio/printf_core/CMakeLists.txt +++ b/libc/src/stdio/printf_core/CMakeLists.txt @@ -5,7 +5,7 @@ core_structs.h DEPENDS libc.src.__support.CPP.string_view - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_object_library( @@ -65,7 +65,8 @@ libc.src.__support.CPP.limits libc.src.__support.CPP.span libc.src.__support.CPP.string_view - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fenv_impl libc.src.__support.integer_to_string ) diff --git a/libc/test/src/fenv/CMakeLists.txt b/libc/test/src/fenv/CMakeLists.txt --- a/libc/test/src/fenv/CMakeLists.txt +++ b/libc/test/src/fenv/CMakeLists.txt @@ -21,7 +21,7 @@ libc.src.fenv.feclearexcept libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_libc_unittest( @@ -35,7 +35,7 @@ libc.src.fenv.fegetround libc.src.fenv.fesetenv libc.src.fenv.fesetround - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_libc_unittest( @@ -47,7 +47,7 @@ DEPENDS libc.src.fenv.fegetexceptflag libc.src.fenv.fesetexceptflag - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_libc_unittest( @@ -59,7 +59,7 @@ DEPENDS libc.include.signal libc.src.fenv.feupdateenv - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_libc_unittest( @@ -70,7 +70,7 @@ feclearexcept_test.cpp DEPENDS libc.src.fenv.feclearexcept - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_libc_unittest( @@ -103,7 +103,7 @@ libc.src.fenv.feclearexcept libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) add_fp_unittest( @@ -115,6 +115,6 @@ DEPENDS libc.include.fenv libc.src.fenv.feholdexcept - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl ) endif() diff --git a/libc/test/src/math/CMakeLists.txt b/libc/test/src/math/CMakeLists.txt --- a/libc/test/src/math/CMakeLists.txt +++ b/libc/test/src/math/CMakeLists.txt @@ -11,9 +11,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.cosf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -25,7 +26,7 @@ cos_test.cpp DEPENDS libc.src.math.cos - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -39,9 +40,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.sinf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -53,7 +55,7 @@ sin_test.cpp DEPENDS libc.src.math.sin - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -67,9 +69,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.sincosf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -83,9 +86,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.tanf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -100,7 +104,7 @@ DEPENDS libc.include.math libc.src.math.fabs - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -115,7 +119,7 @@ DEPENDS libc.include.math libc.src.math.fabsf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -130,7 +134,7 @@ DEPENDS libc.include.math libc.src.math.fabsl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -145,7 +149,7 @@ DEPENDS libc.include.math libc.src.math.trunc - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -160,7 +164,7 @@ DEPENDS libc.include.math libc.src.math.truncf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -175,7 +179,7 @@ DEPENDS libc.include.math libc.src.math.truncl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -190,7 +194,7 @@ DEPENDS libc.include.math libc.src.math.ceil - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -205,7 +209,7 @@ DEPENDS libc.include.math libc.src.math.ceilf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -220,7 +224,7 @@ DEPENDS libc.include.math libc.src.math.ceill - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -235,7 +239,7 @@ DEPENDS libc.include.math libc.src.math.floor - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -250,7 +254,7 @@ DEPENDS libc.include.math libc.src.math.floorf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -265,7 +269,7 @@ DEPENDS libc.include.math libc.src.math.floorl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -280,7 +284,7 @@ DEPENDS libc.include.math libc.src.math.round - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -295,7 +299,7 @@ DEPENDS libc.include.math libc.src.math.roundf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -310,7 +314,7 @@ DEPENDS libc.include.math libc.src.math.roundl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -330,7 +334,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.lround - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -350,7 +354,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.lroundf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -370,7 +374,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.lroundl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -390,7 +394,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.llround - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -410,7 +414,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.llroundf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -430,7 +434,7 @@ libc.src.fenv.feraiseexcept libc.src.fenv.fetestexcept libc.src.math.llroundl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -445,7 +449,8 @@ DEPENDS libc.include.math libc.src.math.rint - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -460,7 +465,8 @@ DEPENDS libc.include.math libc.src.math.rintf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -475,7 +481,8 @@ DEPENDS libc.include.math libc.src.math.rintl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -490,7 +497,8 @@ DEPENDS libc.include.math libc.src.math.lrint - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -505,7 +513,8 @@ DEPENDS libc.include.math libc.src.math.lrintf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -520,7 +529,8 @@ DEPENDS libc.include.math libc.src.math.lrintl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -535,7 +545,8 @@ DEPENDS libc.include.math libc.src.math.llrint - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -550,7 +561,8 @@ DEPENDS libc.include.math libc.src.math.llrintf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -565,7 +577,8 @@ DEPENDS libc.include.math libc.src.math.llrintl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fenv_impl + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -577,9 +590,10 @@ expf_test.cpp DEPENDS libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.expf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -591,9 +605,10 @@ exp2f_test.cpp DEPENDS libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.exp2f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -607,7 +622,7 @@ DEPENDS libc.include.math libc.src.math.copysign - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -621,7 +636,7 @@ DEPENDS libc.include.math libc.src.math.copysignf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -635,7 +650,7 @@ DEPENDS libc.include.math libc.src.math.copysignl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -650,7 +665,7 @@ DEPENDS libc.include.math libc.src.math.frexp - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations ) add_fp_unittest( @@ -665,7 +680,7 @@ DEPENDS libc.include.math libc.src.math.frexpf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations ) add_fp_unittest( @@ -680,7 +695,7 @@ DEPENDS libc.include.math libc.src.math.frexpl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations ) add_fp_unittest( @@ -694,7 +709,8 @@ DEPENDS libc.include.math libc.src.math.ilogb - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -708,7 +724,8 @@ DEPENDS libc.include.math libc.src.math.ilogbf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -722,7 +739,8 @@ DEPENDS libc.include.math libc.src.math.ilogbl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -736,7 +754,8 @@ DEPENDS libc.include.math libc.src.math.ldexp - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.normal_float ) add_fp_unittest( @@ -750,7 +769,8 @@ DEPENDS libc.include.math libc.src.math.ldexpf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.normal_float ) add_fp_unittest( @@ -764,7 +784,8 @@ DEPENDS libc.include.math libc.src.math.ldexpl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.normal_float ) add_fp_unittest( @@ -776,7 +797,7 @@ DEPENDS libc.include.math libc.src.math.logb - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -788,7 +809,7 @@ DEPENDS libc.include.math libc.src.math.logbf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -802,7 +823,7 @@ DEPENDS libc.include.math libc.src.math.logbl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.manipulation_functions ) add_fp_unittest( @@ -816,7 +837,8 @@ DEPENDS libc.include.math libc.src.math.modf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.nearest_integer_operations ) add_fp_unittest( @@ -830,7 +852,8 @@ DEPENDS libc.include.math libc.src.math.modff - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.nearest_integer_operations ) add_fp_unittest( @@ -844,7 +867,8 @@ DEPENDS libc.include.math libc.src.math.modfl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.nearest_integer_operations ) add_fp_unittest( @@ -858,7 +882,8 @@ DEPENDS libc.include.math libc.src.math.fdimf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -872,7 +897,8 @@ DEPENDS libc.include.math libc.src.math.fdim - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -886,7 +912,8 @@ DEPENDS libc.include.math libc.src.math.fdiml - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -900,7 +927,7 @@ DEPENDS libc.include.math libc.src.math.fminf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -914,7 +941,7 @@ DEPENDS libc.include.math libc.src.math.fmin - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -928,7 +955,7 @@ DEPENDS libc.include.math libc.src.math.fminl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -942,7 +969,7 @@ DEPENDS libc.include.math libc.src.math.fmaxf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -956,7 +983,7 @@ DEPENDS libc.include.math libc.src.math.fmax - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -970,7 +997,7 @@ DEPENDS libc.include.math libc.src.math.fmaxl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -983,7 +1010,7 @@ DEPENDS libc.include.math libc.src.math.sqrtf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -996,7 +1023,7 @@ DEPENDS libc.include.math libc.src.math.sqrt - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1009,7 +1036,7 @@ DEPENDS libc.include.math libc.src.math.sqrtl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1021,7 +1048,7 @@ generic_sqrtf_test.cpp DEPENDS libc.src.math.sqrtf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.generic.sqrt COMPILE_OPTIONS -O3 @@ -1036,7 +1063,7 @@ generic_sqrt_test.cpp DEPENDS libc.src.math.sqrt - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.generic.sqrt COMPILE_OPTIONS -O3 @@ -1051,7 +1078,7 @@ generic_sqrtl_test.cpp DEPENDS libc.src.math.sqrtl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.generic.sqrt COMPILE_OPTIONS -O3 @@ -1069,7 +1096,8 @@ DEPENDS libc.include.math libc.src.math.remquof - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1084,7 +1112,8 @@ DEPENDS libc.include.math libc.src.math.remquo - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1099,7 +1128,8 @@ DEPENDS libc.include.math libc.src.math.remquol - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1112,7 +1142,7 @@ DEPENDS libc.include.math libc.src.math.hypotf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1125,7 +1155,7 @@ DEPENDS libc.include.math libc.src.math.hypot - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1139,7 +1169,8 @@ DEPENDS libc.include.math libc.src.math.nextafter - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1153,7 +1184,8 @@ DEPENDS libc.include.math libc.src.math.nextafterf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1167,7 +1199,8 @@ DEPENDS libc.include.math libc.src.math.nextafterl - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.fp_bits ) # TODO(lntue): The current implementation of fputil::general::fma is only @@ -1182,7 +1215,7 @@ DEPENDS libc.include.math libc.src.math.fmaf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits FLAGS FMA_OPT__ONLY ) @@ -1197,7 +1230,7 @@ DEPENDS libc.include.math libc.src.math.fma - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1209,7 +1242,7 @@ tan_test.cpp DEPENDS libc.src.math.tan - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1221,9 +1254,10 @@ expm1f_test.cpp DEPENDS libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.expm1f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1235,7 +1269,7 @@ mod_k_pi_test.cpp DEPENDS libc.src.math.generic.dp_trig - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1246,9 +1280,11 @@ SRCS logf_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.logf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1259,9 +1295,11 @@ SRCS log2f_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.log2f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1272,9 +1310,11 @@ SRCS log10f_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.log10f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1285,9 +1325,11 @@ SRCS log1pf_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.include.math libc.src.math.log1pf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1301,7 +1343,8 @@ DEPENDS libc.include.math libc.src.math.fmodf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.nearest_integer_operations ) add_fp_unittest( @@ -1315,7 +1358,8 @@ DEPENDS libc.include.math libc.src.math.fmod - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.basic_operations + libc.src.__support.FPUtil.nearest_integer_operations ) add_fp_unittest( @@ -1328,8 +1372,9 @@ SRCS explogxf_test.cpp DEPENDS + libc.include.math libc.src.math.generic.explogxf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1343,9 +1388,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.coshf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1359,9 +1405,10 @@ sdcomp26094.h DEPENDS libc.include.errno + libc.src.errno.errno libc.src.math.sinhf libc.src.__support.CPP.array - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1373,7 +1420,7 @@ tanhf_test.cpp DEPENDS libc.src.math.tanhf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1384,8 +1431,10 @@ SRCS atanhf_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.src.math.atanhf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1396,8 +1445,10 @@ SRCS atanf_test.cpp DEPENDS + libc.include.errno + libc.src.errno.errno libc.src.math.atanf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -1411,7 +1462,7 @@ inv_trigf_utils_test.cpp DEPENDS libc.src.math.generic.inv_trigf_utils - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_subdirectory(generic) diff --git a/libc/test/src/math/differential_testing/CMakeLists.txt b/libc/test/src/math/differential_testing/CMakeLists.txt --- a/libc/test/src/math/differential_testing/CMakeLists.txt +++ b/libc/test/src/math/differential_testing/CMakeLists.txt @@ -64,7 +64,7 @@ add_dependencies( ${fq_target_name} - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ${fq_deps_list} ) endfunction() diff --git a/libc/test/src/math/exhaustive/CMakeLists.txt b/libc/test/src/math/exhaustive/CMakeLists.txt --- a/libc/test/src/math/exhaustive/CMakeLists.txt +++ b/libc/test/src/math/exhaustive/CMakeLists.txt @@ -18,7 +18,7 @@ DEPENDS libc.include.math libc.src.math.sqrtf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) add_fp_unittest( @@ -33,7 +33,7 @@ .exhaustive_test libc.include.math libc.src.math.sinf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -50,7 +50,7 @@ .exhaustive_test libc.include.math libc.src.math.cosf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -67,7 +67,7 @@ .exhaustive_test libc.include.math libc.src.math.sincosf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -84,7 +84,7 @@ .exhaustive_test libc.include.math libc.src.math.tanf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -101,7 +101,7 @@ .exhaustive_test libc.include.math libc.src.math.expf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -118,7 +118,7 @@ .exhaustive_test libc.include.math libc.src.math.exp2f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -135,7 +135,7 @@ .exhaustive_test libc.include.math libc.src.math.expm1f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -152,7 +152,7 @@ .exhaustive_test libc.include.math libc.src.math.logf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -169,7 +169,7 @@ .exhaustive_test libc.include.math libc.src.math.log10f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -186,7 +186,7 @@ .exhaustive_test libc.include.math libc.src.math.log1pf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -203,7 +203,7 @@ .exhaustive_test libc.include.math libc.src.math.log2f - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -222,7 +222,7 @@ .exhaustive_test libc.include.math libc.src.math.hypotf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -236,7 +236,7 @@ SRCS fmod_generic_impl_test.cpp DEPENDS - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits libc.src.__support.FPUtil.generic.fmod ) @@ -252,7 +252,7 @@ .exhaustive_test libc.include.math libc.src.math.coshf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -269,7 +269,7 @@ .exhaustive_test libc.include.math libc.src.math.sinhf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -286,7 +286,7 @@ .exhaustive_test libc.include.math libc.src.math.tanhf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -303,7 +303,7 @@ .exhaustive_test libc.include.math libc.src.math.atanhf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) @@ -320,7 +320,7 @@ .exhaustive_test libc.include.math libc.src.math.atanf - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits LINK_LIBRARIES -lpthread ) diff --git a/libc/test/src/math/generic/CMakeLists.txt b/libc/test/src/math/generic/CMakeLists.txt --- a/libc/test/src/math/generic/CMakeLists.txt +++ b/libc/test/src/math/generic/CMakeLists.txt @@ -8,7 +8,6 @@ DEPENDS libc.include.math libc.src.math.generic.ceil - libc.src.__support.FPUtil.fputil ) add_fp_unittest( @@ -21,7 +20,6 @@ DEPENDS libc.include.math libc.src.math.generic.ceilf - libc.src.__support.FPUtil.fputil ) add_fp_unittest( @@ -34,6 +32,5 @@ DEPENDS libc.include.math libc.src.math.generic.ceill - libc.src.__support.FPUtil.fputil ) diff --git a/libc/test/src/stdio/CMakeLists.txt b/libc/test/src/stdio/CMakeLists.txt --- a/libc/test/src/stdio/CMakeLists.txt +++ b/libc/test/src/stdio/CMakeLists.txt @@ -71,6 +71,8 @@ sprintf_test.cpp DEPENDS libc.src.stdio.sprintf + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.platform_defs ) add_libc_unittest( @@ -107,7 +109,6 @@ DEPENDS libc.src.stdio.printf libc.src.fenv.fesetround - libc.src.__support.FPUtil.fputil ) add_subdirectory(printf_core) diff --git a/libc/test/utils/FPUtil/CMakeLists.txt b/libc/test/utils/FPUtil/CMakeLists.txt --- a/libc/test/utils/FPUtil/CMakeLists.txt +++ b/libc/test/utils/FPUtil/CMakeLists.txt @@ -5,6 +5,6 @@ x86_long_double_test.cpp DEPENDS libc.include.math - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits ) endif() diff --git a/libc/utils/MPFRWrapper/CMakeLists.txt b/libc/utils/MPFRWrapper/CMakeLists.txt --- a/libc/utils/MPFRWrapper/CMakeLists.txt +++ b/libc/utils/MPFRWrapper/CMakeLists.txt @@ -10,7 +10,8 @@ libcMPFRWrapper libc.src.__support.CPP.string_view libc.src.__support.CPP.type_traits - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.platform_defs LibcUnitTest libc_test_utils ) diff --git a/libc/utils/UnitTest/CMakeLists.txt b/libc/utils/UnitTest/CMakeLists.txt --- a/libc/utils/UnitTest/CMakeLists.txt +++ b/libc/utils/UnitTest/CMakeLists.txt @@ -38,7 +38,8 @@ LibcFPTestHelpers LibcUnitTest libc.utils.UnitTest.string_utils - libc.src.__support.FPUtil.fputil + libc.src.__support.FPUtil.fp_bits + libc.src.__support.FPUtil.fenv_impl ) add_library( @@ -64,7 +65,7 @@ add_dependencies( LibcPrintfHelpers LibcUnitTest - libc.src.__support.FPUtil.fputil #FPBits + libc.src.__support.FPUtil.fp_bits libc.src.stdio.printf_core.core_structs libc.utils.UnitTest.string_utils )