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

vbpf / prevail / 23691337788
89%

Build:
DEFAULT BRANCH: main
Ran 28 Mar 2026 06:27PM UTC
Jobs 2
Files 106
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

28 Mar 2026 06:16PM UTC coverage: 89.129% (+0.04%) from 89.086%
23691337788

push

github

web-flow
Fix rewrite_extern_constant_load crash on values exceeding int32 range (#1054)

* Fix gsl::narrow crash in rewrite_extern_constant_load for large values

BPF MOV imm has a 32-bit immediate field that is sign-extended to 64 bits.
When rewrite_extern_constant_load() rewrites a LDDW+LDX pair into a MOV
imm, it called gsl::narrow<int32_t>(narrowed_value) which throws
narrowing_error if the resolved 64-bit constant exceeds INT32_MAX (e.g.,
0x80000000 or larger).

Fix: check whether the value fits in a sign-extended int32 before
rewriting. If it doesn't fit, return false so the caller falls back to the
original LDDW+LDX instruction sequence.

Add regression test covering boundary values.

Extract sign-extension round-trip check into reusable fits_narrow<Narrow>(value)
template in num_safety.hpp. Update elf_extern_resolve.cpp to use it.

Signed-off-by: Michael Agun <danielagun@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

54 of 54 new or added lines in 3 files covered. (100.0%)

13388 of 15021 relevant lines covered (89.13%)

4586477.28 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-Release - 23691337788.1 28 Mar 2026 06:27PM UTC 106
88.38
GitHub Action Run
2 run-Debug - 23691337788.2 28 Mar 2026 07:20PM UTC 106
87.31
GitHub Action Run
Source Files on build 23691337788
  • Tree
  • List 106
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • ce026ec4 on github
  • Prev Build on main (#23583118714)
  • Next Build on main (#24007800453)
  • Delete
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