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

stillwater-sc / universal / 26489312122
84%
master: 84%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 27 May 2026 04:16AM UTC
Jobs 1
Files 661
Run time 1min
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

27 May 2026 03:40AM UTC coverage: 84.014% (+0.03%) from 83.982%
26489312122

push

github

web-flow
feat(bfloat16): add ldexp/frexp/scalbn/logb/ilogb exponent functions (#941) (#1015)

bfloat16 was missing the <cmath> exponent-manipulation family that cfloat<>
exposes. Added ldexp, frexp, scalbn, logb (returns bfloat16) and ilogb (returns
int) to bfloat16/math/functions/exponent.hpp, delegating to the host double
routines -- matching bfloat16's existing exp/log/sin style. A bfloat16 is exactly
representable in double, so the only rounding is the final result back to
bfloat16's 8-bit significand (Option 1 in the issue; the bit-manipulation variant
can land later as an optimization).

exponent.hpp is already included by bfloat16/mathlib.hpp, so the functions are
available via ADL wherever the mathlib is in scope (e.g. the elreal threeAdd
twoSumRN alignment path that motivated this).

Added static/float/bfloat16/math/exponent.cpp verifying the functions by their
mathematical properties (scaling by a power of two is exact in bfloat16):
frexp/ldexp round-trip, |fraction| in [0.5,1), scalbn==ldexp, ilogb==frexp_exp-1,
logb==ilogb, and the 2^ilogb(x) <= |x| < 2^(ilogb(x)+1) bracket. Verified the test
catches a broken ldexp (exit non-zero).

Follow-up (elreal epic #923/#940, out of scope here): drop the bfloat16 fallback
TODO in threeAdd.hpp::detail_mccleeary::ldexp_block and add bfloat16 to the Phase 4
FpType sweep.

Resolves #941

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

10 of 10 new or added lines in 1 file covered. (100.0%)

2 existing lines in 1 file now uncovered.

46884 of 55805 relevant lines covered (84.01%)

5781320.73 hits per line

Coverage Regressions

Lines Coverage ∆ File
2
89.78
-0.55% include/sw/universal/number/posito/posito_impl.hpp
Jobs
ID Job ID Ran Files Coverage
1 26489312122.1 27 May 2026 04:16AM UTC 661
84.01
GitHub Action Run
Source Files on build 26489312122
  • Tree
  • List 661
  • Changed 4
  • Source Changed 1
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26489312122
  • 3cf0bf54 on github
  • Prev Build on main (#26488972496)
  • Next Build on main (#26489863160)
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