• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

stillwater-sc / universal / 28050193932
85%
master: 84%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 23 Jun 2026 07:47PM UTC
Jobs 1
Files 683
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

23 Jun 2026 07:06PM UTC coverage: 84.705% (+0.05%) from 84.659%
28050193932

push

github

web-flow
feat(efloat): implement core addition/subtraction engine and add standard regression tests (#1102)

* feat(efloat): implement core addition/subtraction engine and add standard regression tests (#1090)

Implement helpers for multi-limb arithmetic: static align_sizes, grow_for_shift,
add_limbs, subtract_limbs, and compare_limbs inside efloat_impl.hpp.
Introduce dynamic limb-growth in operator+= to support large exponent alignment
shifts, preventing truncation of small values during arithmetic.

Replace stub implementations of operator+=, operator-=, operator- (negation),
and operator== with strict, mathematically correct versions. Provide standard
to_binary() representation to support verification reporters.

Completely rebuild efloat addition test suite to match the repository's standard
regression structure, with hand-curated tests (commutativity, associativity,
inverse identity, 10-limb cancellation, massive exponent gap, subnormal
boundaries, special values) and a property-based fuzzer. Add skeleton test files
for subtraction, multiplication, and division.

Relates to #1090

* test(efloat): implement standard subtraction regression test and remove incomplete skeletons

Overhaul subtraction.cpp to conform strictly to the regression_skeleton format,
incorporating foundational algebra, special values (using proper .sign() checks
on infinity), and property fuzzing.

Remove the incomplete skeletal multiplication.cpp and division.cpp files
from the branch to keep git history clean and prevent un-asserted skeletons
from polluting CI.

* fix(efloat): resolve PR reviews and enable constexpr arithmetic

Convert all multi-precision limb helpers and operators to constexpr-compatible,
introducing a 100% portable constexpr clz() leading-zero counter. This resolves
the compile-time constexpr.cpp CI failures.

Implement constexpr scalar operator+= and operator-= methods to prevent silent
stubs on double operands. Add a size-equality guard to operator== to prevent
p... (continued)

156 of 165 new or added lines in 2 files covered. (94.55%)

9 existing lines in 2 files now uncovered.

48265 of 56980 relevant lines covered (84.71%)

6816068.88 hits per line

Uncovered Changes

Lines Coverage ∆ File
8
94.66
2.73% include/sw/universal/number/efloat/efloat_impl.hpp
1
92.86
include/sw/universal/verification/efloat_test_support.hpp

Coverage Regressions

Lines Coverage ∆ File
5
50.45
-4.5% include/sw/universal/verification/posit_test_suite_randoms.hpp
4
80.8
-0.67% include/sw/universal/number/posit1/specialized/posit_16_1.hpp
Jobs
ID Job ID Ran Files Coverage
1 28050193932.1 23 Jun 2026 07:47PM UTC 683
84.71
GitHub Action Run
Source Files on build 28050193932
  • Tree
  • List 683
  • Changed 4
  • Source Changed 1
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28050193932
  • 9b911bf3 on github
  • Prev Build on main (#27913967582)
  • Next Build on main (#28136296907)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc