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

open-quantum-safe / liboqs / 24696911032
82%

Build:
DEFAULT BRANCH: main
Ran 21 Apr 2026 12:48AM UTC
Jobs 3
Files 2878
Run time 4min
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

21 Apr 2026 12:08AM UTC coverage: 82.268% (-0.004%) from 82.272%
24696911032

push

github

web-flow
fix: correct cuPQC ML-KEM derand symbol names and #if/#elif chains (#2396)

* fix: cuPQC ML-KEM derand symbols and #if/#elif chain

cuPQC does not expose keypair_derand or enc_derand variants (only
keypair, enc, dec). ICICLE exposes enc_derand but not keypair_derand.
The generated code was calling nonexistent PQCLEAN_MLKEM*_CUDA_* and
PQCLEAN_MLKEM*_ICICLE_CUDA_* symbols for these derand paths, which
would cause linker errors in cuPQC and ICICLE CUDA builds.

Fix keypair_derand and encaps_derand for the _cuda branch to fall
through to the C reference implementation (#else branch) when the GPU
backend has no derand variant. The ICICLE enc_derand path is correct
and is retained.

Also fix the #if/#elif chain in keypair, encaps, and decaps: the
cuPQC and ICICLE dispatch blocks were emitted as separate #if...#endif
blocks rather than a single #if...#elif chain, producing unreachable
code after a GPU return.

Both the generated .c files and the kem_scheme.c Jinja2 template are
updated so the fix survives the next copy_from_upstream run.

Signed-off-by: Will Bates <william.bates11@outlook.com>
Signed-off-by: Ry Jones <ry@linux.com>

* fix: simplify keypair_derand and encaps_derand template loops

In the kem_scheme.c Jinja2 template, the keypair_derand and
encaps_derand functions were iterating over all non-default
implementations and special-casing cuda/icicle_cuda with a
fallback branch that simply called the default C implementation.
This produced redundant branches in the generated .c files.

Restructure the loops to only include implementations that have
a signature_keypair_derand or signature_enc_derand defined. If an
implementation lacks the relevant derand function, it is skipped
entirely and falls through to the #else default branch. This
removes the redundant PQCLEAN_*_CUDA_* fallback branches and
makes the generated output consistent with the hand-edited
kem_ml_kem_{512,768,1024}.c files already on this branch.

Signed-off-by: Will Bates <william.... (continued)

207976 of 252803 relevant lines covered (82.27%)

8137484.68 hits per line

Coverage Regressions

Lines Coverage ∆ File
64
0.0
-100.0% src/kem/bike/additional_r4/decode_avx2.c
63
0.91
-19.09% src/common/sha3/xkcp_low/KeccakP-1600times4/avx2/KeccakP-1600-times4-SIMD256.c
46
0.0
-100.0% src/kem/bike/additional_r4/gf2x_mul_avx2.c
44
0.0
-100.0% src/kem/bike/additional_r4/gf2x_ksqr_avx2.c
22
0.0
-100.0% src/kem/bike/additional_r4/sampling_avx2.c
4
95.53
-0.35% src/sig/falcon/pqclean_falcon-padded-512_avx2/keygen.c
3
95.64
-0.26% src/sig/falcon/pqclean_falcon-padded-512_clean/keygen.c
2
66.67
-33.33% src/kem/bike/additional_r4/cpu_features.h
2
73.7
-0.45% src/sig/ml_dsa/mldsa-native_ml-dsa-65_ref/mldsa/src/sign.c
2
73.76
-0.45% src/sig/ml_dsa/mldsa-native_ml-dsa-87_ref/mldsa/src/sign.c
1
96.08
-1.96% src/kem/classic_mceliece/pqclean_mceliece348864f_avx2/encrypt.c
1
96.72
-1.64% src/kem/classic_mceliece/pqclean_mceliece348864f_clean/encrypt.c
1
98.36
-1.64% src/kem/classic_mceliece/pqclean_mceliece460896_clean/encrypt.c
1
95.92
-2.04% src/kem/classic_mceliece/pqclean_mceliece460896f_avx2/encrypt.c
1
95.73
-0.09% src/sig/falcon/pqclean_falcon-512_aarch64/keygen.c
1
33.33
-4.17% src/sig/ml_dsa/mldsa-native_ml-dsa-65_x86_64/mldsa/src/rounding.h
1
33.33
-4.17% src/sig/ml_dsa/mldsa-native_ml-dsa-87_aarch64/mldsa/src/rounding.h
1
33.33
-4.17% src/sig/ml_dsa/mldsa-native_ml-dsa-87_x86_64/mldsa/src/rounding.h
1
94.44
-1.85% src/sig/uov/pqov_ov_Is_pkc_avx2/ov.c
1
94.64
-1.79% src/sig/uov/pqov_ov_Is_pkc_neon/ov.c
1
98.7
-1.3% usr/lib/gcc/x86_64-linux-gnu/13/include/avx2intrin.h
Jobs
ID Job ID Ran Files Coverage
1 x64-generic - 24696911032.1 21 Apr 2026 01:26AM UTC 1259
85.37
GitHub Action Run
2 arm64-distbuild - 24696911032.2 21 Apr 2026 12:48AM UTC 1789
60.29
GitHub Action Run
3 x64-distbuild - 24696911032.3 21 Apr 2026 01:15AM UTC 2347
56.39
GitHub Action Run
Source Files on build 24696911032
  • Tree
  • List 2878
  • Changed 49
  • Source Changed 3
  • Coverage Changed 49
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24696911032
  • 1ae9cf6f on github
  • Prev Build on main (#24465628971)
  • Next Build on main (#24726525961)
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