cppalliance / decimal

A C++14 implementation of IEEE 754 decimal floating point numbers
https://cppalliance.org/decimal/decimal.html
Boost Software License 1.0
17 stars 1 forks source link

Improve 64 and 128 bit addition implementations #691

Closed mborland closed 2 days ago

mborland commented 3 days ago

Closes: #688 Closes: #690

codecov[bot] commented 2 days ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.2%. Comparing base (860c5e7) to head (9ca7ede).

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/cppalliance/decimal/pull/691/graphs/tree.svg?width=650&height=150&src=pr&token=drvY8nnV5S&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance)](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) ```diff @@ Coverage Diff @@ ## develop #691 +/- ## ========================================= + Coverage 99.1% 99.2% +0.1% ========================================= Files 230 230 Lines 16386 16347 -39 Branches 1781 1757 -24 ========================================= - Hits 16238 16200 -38 + Misses 148 147 -1 ``` | [Files](https://app.codecov.io/gh/cppalliance/decimal/pull/691?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) | Coverage Δ | | |---|---|---| | [include/boost/decimal/decimal128.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdecimal128.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RlY2ltYWwxMjguaHBw) | `97.9% <100.0%> (-<0.1%)` | :arrow_down: | | [include/boost/decimal/decimal128\_fast.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdecimal128_fast.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RlY2ltYWwxMjhfZmFzdC5ocHA=) | `96.4% <100.0%> (-0.2%)` | :arrow_down: | | [include/boost/decimal/decimal64.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdecimal64.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RlY2ltYWw2NC5ocHA=) | `99.3% <100.0%> (-<0.1%)` | :arrow_down: | | [include/boost/decimal/decimal64\_fast.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdecimal64_fast.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RlY2ltYWw2NF9mYXN0LmhwcA==) | `98.6% <100.0%> (-<0.1%)` | :arrow_down: | | [include/boost/decimal/detail/add\_impl.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdetail%2Fadd_impl.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RldGFpbC9hZGRfaW1wbC5ocHA=) | `100.0% <100.0%> (ø)` | | | [include/boost/decimal/detail/emulated128.hpp](https://app.codecov.io/gh/cppalliance/decimal/pull/691?src=pr&el=tree&filepath=include%2Fboost%2Fdecimal%2Fdetail%2Femulated128.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9kZWNpbWFsL2RldGFpbC9lbXVsYXRlZDEyOC5ocHA=) | `97.7% <100.0%> (+0.3%)` | :arrow_up: | ... and [2 files with indirect coverage changes](https://app.codecov.io/gh/cppalliance/decimal/pull/691/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) ------ [Continue to review full report in Codecov by Sentry](https://app.codecov.io/gh/cppalliance/decimal/pull/691?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://app.codecov.io/gh/cppalliance/decimal/pull/691?dropdown=coverage&src=pr&el=footer&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). Last update [860c5e7...9ca7ede](https://app.codecov.io/gh/cppalliance/decimal/pull/691?dropdown=coverage&src=pr&el=lastupdated&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance).