Skip to content

Add cpp_double_fp and exercise arithmetic_tests #515

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 677 commits into
base: develop
Choose a base branch
from

Conversation

ckormanyos
Copy link
Member

@ckormanyos ckormanyos commented Jan 6, 2023

The purpose of this pull request is to add the cpp_double_fp_backend<> template class.

In the initial commit, we:

  • Run the arithmetic tests.
  • Modify elementary function tests to prepare for TEST_CPP_DOUBLE_FLOAT, but do not run them yet.
  • Try some further small adaptions to arithmetic_tests.hpp that improve the testing logic for mixed-int128/float128 interaction.

If this runs through, I can add the function tests (stuff like sin(), exp(), etc.) as a next step. These run well and properly in the GSoC fork, but are not yet exercised in this initial commit.

ckormanyos and others added 30 commits December 29, 2022 16:18
…into cpp_double_fp_backend

# Conflicts:
#	.github/workflows/multiprecision.yml
#	README.md
# Conflicts:
#	.github/workflows/multiprecision.yml
#	test/test_exp.cpp
…ration

# Conflicts:
#	example/cpp_double_double_del_v_jv.cpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_fabs.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_frexp.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_isinf.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_isnan.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_ldexp.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_limits.hpp
#	include/boost/multiprecision/cpp_df_qf/cpp_df_qf_detail_ccmath_sqrt.hpp
#	include/boost/multiprecision/cpp_double_fp.hpp
#	performance/performance_test_df.cpp
#	test/Jamfile.v2
#	test/math/instances/Jamfile.v2
#	test/math/setup.hpp
#	test/test_arithmetic_df.cpp
#	test/test_complex.cpp
#	test/test_exp.cpp
#	test/test_log.cpp
#	test/test_pow.cpp
#	test/test_round.cpp
Copy link

codecov bot commented Apr 25, 2025

Codecov Report

Attention: Patch coverage is 99.67897% with 4 lines in your changes missing coverage. Please review.

Project coverage is 94.4%. Comparing base (96eb274) to head (ee4da5f).

Files with missing lines Patch % Lines
include/boost/multiprecision/cpp_double_fp.hpp 99.6% 3 Missing ⚠️
include/boost/multiprecision/float128.hpp 0.0% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##           develop    #515     +/-   ##
=========================================
+ Coverage     94.1%   94.4%   +0.3%     
=========================================
  Files          280     293     +13     
  Lines        29074   30287   +1213     
=========================================
+ Hits         27349   28579   +1230     
+ Misses        1725    1708     -17     
Files with missing lines Coverage Δ
...oost/multiprecision/cpp_df_qf/cpp_df_qf_detail.hpp 100.0% <100.0%> (ø)
...ecision/cpp_df_qf/cpp_df_qf_detail_ccmath_fabs.hpp 100.0% <100.0%> (ø)
...cision/cpp_df_qf/cpp_df_qf_detail_ccmath_floor.hpp 100.0% <100.0%> (ø)
...recision/cpp_df_qf/cpp_df_qf_detail_ccmath_fma.hpp 100.0% <100.0%> (ø)
...cision/cpp_df_qf/cpp_df_qf_detail_ccmath_frexp.hpp 100.0% <100.0%> (ø)
...cision/cpp_df_qf/cpp_df_qf_detail_ccmath_isinf.hpp 100.0% <100.0%> (ø)
...cision/cpp_df_qf/cpp_df_qf_detail_ccmath_isnan.hpp 100.0% <100.0%> (ø)
...cision/cpp_df_qf/cpp_df_qf_detail_ccmath_ldexp.hpp 100.0% <100.0%> (ø)
...recision/cpp_df_qf/cpp_df_qf_detail_ccmath_log.hpp 100.0% <100.0%> (ø)
...ecision/cpp_df_qf/cpp_df_qf_detail_ccmath_sqrt.hpp 100.0% <100.0%> (ø)
... and 27 more

... and 6 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 96eb274...ee4da5f. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants