Test results for amd64, h4atom, crypto_kem/ntruhps2048509
[Page version: 20251115 13:22:58]
Measurements for amd64, h4atom, crypto_kem
Test results for amd64, h4atom, crypto_kem
Test results for crypto_kem/ntruhps2048509
Computer: h4atom
Microarchitecture: amd64; Bonnell (106ca)
Architecture: amd64
CPU ID: GenuineIntel-000106ca-bfe9fbff
SUPERCOP version: 20250922
Operation: crypto_kem
Primitive: ntruhps2048509
| Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 3627405 | 24268 0 0 | 109137 836 1736 | T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 3720181 | 24268 0 0 | 115689 836 1736 | ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 3782965 | 16246 0 0 | 97465 836 1736 | T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 3786853 | 12719 0 0 | 92801 836 1736 | T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 3864462 | 12719 0 0 | 99289 836 1736 | ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 3878346 | 16246 0 0 | 104017 836 1736 | ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4198378 | 29959 0 0 | 111592 796 1768 | T:compact | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4283595 | 29959 0 0 | 118144 796 1768 | compact | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4577707 | 42147 0 0 | 126865 836 1736 | T:compact | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4662179 | 23681 0 0 | 104825 836 1736 | T:compact | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4662819 | 42147 0 0 | 133417 836 1736 | compact | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4754351 | 23681 0 0 | 111313 836 1736 | compact | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4774937 | 17614 0 0 | 97601 836 1736 | T:compact | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 4851200 | 17614 0 0 | 104089 836 1736 | compact | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 12831958 | 7915 0 0 | 85859 828 1736 | T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 12837738 | 7151 0 0 | 85977 836 1736 | T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 12910920 | 7915 0 0 | 92411 828 1736 | ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 12914552 | 7151 0 0 | 92465 836 1736 | ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 14135558 | 7890 0 0 | 86673 836 1736 | T:compact | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 14217073 | 7890 0 0 | 93225 836 1736 | compact | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 14387949 | 5748 0 0 | 83923 828 1736 | T:compact | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 14467715 | 5748 0 0 | 90475 828 1736 | compact | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 15878096 | 16537 0 0 | 98224 796 1768 | T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 15924202 | 7787 0 0 | 88312 796 1768 | T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 15965137 | 16537 0 0 | 104776 796 1768 | ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 16005344 | 7787 0 0 | 94864 796 1768 | ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 16481552 | 7415 0 0 | 87302 788 1768 | T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 16561309 | 7415 0 0 | 93854 788 1768 | ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 17082171 | 6006 0 0 | 86424 796 1768 | T:compact | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 17155248 | 6006 0 0 | 92976 796 1768 | compact | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 18100227 | 5084 0 0 | 84958 788 1768 | T:compact | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 18178798 | 5084 0 0 | 91510 788 1768 | compact | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 23718636 | 6173 0 0 | 83664 788 1736 | T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 23799345 | 6173 0 0 | 90216 788 1736 | ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 26598400 | 3859 0 0 | 81528 788 1736 | T:compact | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
| 26675843 | 3859 0 0 | 88080 788 1736 | compact | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251022 | 20250922 |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 'seed' of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ^
owcpa.c: ./owcpa.h:14:40: note: previously declared as 'const unsigned char[32]' here
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ^
owcpa.c: 1 warning generated.
pack3.c: pack3.c:3:36: warning: argument 'msg' of type 'unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ^
pack3.c: ./poly.h:33:36: note: previously declared as 'unsigned char[102]' here
pack3.c: 33 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ^
pack3.c: pack3.c:25:53: warning: argument 'msg' of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ^
pack3.c: ./poly.h:34:53: note: previously declared as 'const unsigned char[102]' here
pack3.c: 34 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ^
pack3.c: 2 warnings generated.
poly_r2_inv.c: poly_r2_inv.c:19:14: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 19 | out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:20:15: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 20 | out[i] |= _pext_u64(coeff_pointer[2*i+1], 0x1000100010001) << 4;
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:22:12: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 22 | out[i] = _pext_u64(coeff_pointer[2*63], 0x1000100010001);
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:23:13: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 23 | out[i] |= _pext_u64(coeff_pointer[2*63+1], 0x1) << 4;
poly_r2_inv.c: | ^
poly_r2_inv.c: 4 errors generated.
Number of similar (implementation,compiler) pairs: 5, namely:
| Implementation | Compiler |
| avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| avx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| avx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 'seed' of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ^
owcpa.c: ./owcpa.h:14:40: note: previously declared as 'const unsigned char[32]' here
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ^
owcpa.c: 1 warning generated.
pack3.c: pack3.c:3:36: warning: argument 'msg' of type 'unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ^
pack3.c: ./poly.h:33:36: note: previously declared as 'unsigned char[102]' here
pack3.c: 33 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ^
pack3.c: pack3.c:25:53: warning: argument 'msg' of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ^
pack3.c: ./poly.h:34:53: note: previously declared as 'const unsigned char[102]' here
pack3.c: 34 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ^
pack3.c: 2 warnings generated.
poly_r2_inv.c: poly_r2_inv.c:19:14: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_timingleaks_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 19 | out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:20:15: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_timingleaks_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 20 | out[i] |= _pext_u64(coeff_pointer[2*i+1], 0x1000100010001) << 4;
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:22:12: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_timingleaks_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 22 | out[i] = _pext_u64(coeff_pointer[2*63], 0x1000100010001);
poly_r2_inv.c: | ^
poly_r2_inv.c: poly_r2_inv.c:23:13: error: always_inline function '_pext_u64' requires target feature 'bmi2', but would be inlined into function 'crypto_kem_ntruhps2048509_avx2_timingleaks_poly_R2_tobytes' that is compiled without support for 'bmi2'
poly_r2_inv.c: 23 | out[i] |= _pext_u64(coeff_pointer[2*63+1], 0x1) << 4;
poly_r2_inv.c: | ^
poly_r2_inv.c: 4 errors generated.
Number of similar (implementation,compiler) pairs: 5, namely:
| Implementation | Compiler |
| T:avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:avx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:avx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 3 of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter=]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
owcpa.c: In file included from owcpa.c:2:
owcpa.c: owcpa.h:14:40: note: previously declared as 'const unsigned char[32]'
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
owcpa.c: owcpa.c: In function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_owcpa_keypair':
owcpa.c: <command-line>: warning: 'crypto_kem_ntruhps2048509_avx2_constbranchindex_sample_fg' reading 2413 bytes from a region of size 32 [-Wstringop-overread]
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: referencing argument 3 of type 'const unsigned char[2413]'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: in a call to function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_sample_fg'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: ...
pack3.c: pack3.c:3:36: warning: argument 1 of type 'unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: In file included from pack3.c:1:
pack3.c: poly.h:33:36: note: previously declared as 'unsigned char[102]'
pack3.c: 33 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: pack3.c:25:53: warning: argument 2 of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: poly.h:34:53: note: previously declared as 'const unsigned char[102]'
pack3.c: 34 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/x86gprintrin.h:43,
poly_r2_inv.c: from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:27,
poly_r2_inv.c: from poly_r2_inv.c:1:
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h: In function 'crypto_kem_ntruhps2048509_avx2_constbranchindex_poly_R2_tobytes':
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:20:15: note: called from here
poly_r2_inv.c: 20 | out[i] |= _pext_u64(coeff_pointer[2*i+1], 0x1000100010001) << 4;
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:19:14: note: called from here
poly_r2_inv.c: 19 | out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:23:13: note: called from here
poly_r2_inv.c: 23 | out[i] |= _pext_u64(coeff_pointer[2*63+1], 0x1) << 4;
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| avx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 3 of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter=]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
owcpa.c: In file included from owcpa.c:2:
owcpa.c: owcpa.h:14:40: note: previously declared as 'const unsigned char[32]'
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
owcpa.c: owcpa.c: In function 'crypto_kem_ntruhps2048509_avx2_timingleaks_owcpa_keypair':
owcpa.c: <command-line>: warning: 'crypto_kem_ntruhps2048509_avx2_timingleaks_sample_fg' reading 2413 bytes from a region of size 32 [-Wstringop-overread]
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: referencing argument 3 of type 'const unsigned char[2413]'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: in a call to function 'crypto_kem_ntruhps2048509_avx2_timingleaks_sample_fg'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: ...
pack3.c: pack3.c:3:36: warning: argument 1 of type 'unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: In file included from pack3.c:1:
pack3.c: poly.h:33:36: note: previously declared as 'unsigned char[102]'
pack3.c: 33 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: pack3.c:25:53: warning: argument 2 of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: poly.h:34:53: note: previously declared as 'const unsigned char[102]'
pack3.c: 34 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/x86gprintrin.h:43,
poly_r2_inv.c: from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:27,
poly_r2_inv.c: from poly_r2_inv.c:1:
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h: In function 'crypto_kem_ntruhps2048509_avx2_timingleaks_poly_R2_tobytes':
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:20:15: note: called from here
poly_r2_inv.c: 20 | out[i] |= _pext_u64(coeff_pointer[2*i+1], 0x1000100010001) << 4;
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:19:14: note: called from here
poly_r2_inv.c: 19 | out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: poly_r2_inv.c:23:13: note: called from here
poly_r2_inv.c: 23 | out[i] |= _pext_u64(coeff_pointer[2*63+1], 0x1) << 4;
poly_r2_inv.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_r2_inv.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/bmi2intrin.h:76:1: error: inlining failed in call to 'always_inline' '_pext_u64': target specific option mismatch
poly_r2_inv.c: 76 | _pext_u64 (unsigned long long __X, unsigned long long __Y)
poly_r2_inv.c: | ^~~~~~~~~
poly_r2_inv.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| T:avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:avx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 'seed' of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ^
owcpa.c: ./owcpa.h:14:40: note: previously declared as 'const unsigned char[32]' here
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ^
owcpa.c: 1 warning generated.
pack3.c: pack3.c:3:36: warning: argument 'msg' of type 'unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ^
pack3.c: ./poly.h:32:36: note: previously declared as 'unsigned char[102]' here
pack3.c: 32 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ^
pack3.c: pack3.c:25:53: warning: argument 'msg' of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ^
pack3.c: ./poly.h:33:53: note: previously declared as 'const unsigned char[102]' here
pack3.c: 33 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ^
pack3.c: 2 warnings generated.
Number of similar (implementation,compiler) pairs: 10, namely:
| Implementation | Compiler |
| ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 3 of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter=]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
owcpa.c: In file included from owcpa.c:2:
owcpa.c: owcpa.h:14:40: note: previously declared as 'const unsigned char[32]'
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
owcpa.c: owcpa.c: In function 'crypto_kem_ntruhps2048509_ref_constbranchindex_owcpa_keypair':
owcpa.c: <command-line>: warning: 'crypto_kem_ntruhps2048509_ref_constbranchindex_sample_fg' reading 2413 bytes from a region of size 32 [-Wstringop-overread]
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: referencing argument 3 of type 'const unsigned char[2413]'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: in a call to function 'crypto_kem_ntruhps2048509_ref_constbranchindex_sample_fg'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: ...
pack3.c: pack3.c:3:36: warning: argument 1 of type 'unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: In file included from pack3.c:1:
pack3.c: poly.h:32:36: note: previously declared as 'unsigned char[102]'
pack3.c: 32 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: pack3.c:25:53: warning: argument 2 of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: poly.h:33:53: note: previously declared as 'const unsigned char[102]'
pack3.c: 33 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Compiler output
owcpa.c: owcpa.c:69:40: warning: argument 3 of type 'const unsigned char[2413]' with mismatched bound [-Warray-parameter=]
owcpa.c: 69 | const unsigned char seed[NTRU_SAMPLE_FG_BYTES])
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
owcpa.c: In file included from owcpa.c:2:
owcpa.c: owcpa.h:14:40: note: previously declared as 'const unsigned char[32]'
owcpa.c: 14 | const unsigned char seed[NTRU_SEEDBYTES]);
owcpa.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
owcpa.c: owcpa.c: In function 'crypto_kem_ntruhps2048509_ref_timingleaks_owcpa_keypair':
owcpa.c: <command-line>: warning: 'crypto_kem_ntruhps2048509_ref_timingleaks_sample_fg' reading 2413 bytes from a region of size 32 [-Wstringop-overread]
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: referencing argument 3 of type 'const unsigned char[2413]'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: | ^~~~~~~~~~~~~~~~
owcpa.c: owcpa.c:79:3: note: in expansion of macro 'sample_fg'
owcpa.c: 79 | sample_fg(f,g,seed);
owcpa.c: | ^~~~~~~~~
owcpa.c: <command-line>: note: in a call to function 'crypto_kem_ntruhps2048509_ref_timingleaks_sample_fg'
owcpa.c: sample.h:9:19: note: in expansion of macro 'CRYPTO_NAMESPACE'
owcpa.c: 9 | #define sample_fg CRYPTO_NAMESPACE(sample_fg)
owcpa.c: ...
pack3.c: pack3.c:3:36: warning: argument 1 of type 'unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 3 | void poly_S3_tobytes(unsigned char msg[NTRU_OWCPA_MSGBYTES], const poly *a)
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: In file included from pack3.c:1:
pack3.c: poly.h:32:36: note: previously declared as 'unsigned char[102]'
pack3.c: 32 | void poly_S3_tobytes(unsigned char msg[NTRU_PACK_TRINARY_BYTES], const poly *a);
pack3.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: pack3.c:25:53: warning: argument 2 of type 'const unsigned char[204]' with mismatched bound [-Warray-parameter=]
pack3.c: 25 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_OWCPA_MSGBYTES])
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
pack3.c: poly.h:33:53: note: previously declared as 'const unsigned char[102]'
pack3.c: 33 | void poly_S3_frombytes(poly *r, const unsigned char msg[NTRU_PACK_TRINARY_BYTES]);
pack3.c: | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Passed TIMECOP
TIMECOP iterations: 1
Number of similar (implementation,compiler) pairs: 18, namely:
| Implementation | Compiler |
| compact | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| compact | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| compact | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| compact | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| compact | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| compact | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| compact | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| compact | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| compact | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |