Implementation notes: amd64, speed2supercop, crypto_kem/ledakem33sl

Computer: speed2supercop
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-1fc9cbf5
SUPERCOP version: 20240808
Operation: crypto_kem
Primitive: ledakem33sl
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
942179699344 1173512 52130269 1174312 1600T:portableoptclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
961578484797 1173512 52115613 1174312 1600T:portableoptclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
1054682073368 1173512 52103205 1174272 1664T:portableoptgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
1207302450185 1173512 5277557 1174312 1600T:portableoptclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
1322398047728 1173512 5275359 1174304 1696T:portableoptclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
1384137244527 1173512 5272413 1174272 1664T:portableoptgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
1500037241550 1173512 5268997 1174272 1664T:portableoptgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
2489866061016 72 5290712 880 1600T:portableoptclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625
3550928428850 1173512 5255365 1174264 1632T:portableoptgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071120240625

Compiler output


gf2x_arith_mod_xPplusOne.c: gf2x_arith_mod_xPplusOne.c: In function 'gf2x_mod_fmac':
gf2x_arith_mod_xPplusOne.c: gf2x_arith_mod_xPplusOne.c:805:39: warning: iteration 1 invokes undefined behavior [-Waggressive-loop-optimizations]
gf2x_arith_mod_xPplusOne.c:   805 |             result[j] ^= (shifted_temp[j] << low_shift_amt) | ( zeroshift_mask &
gf2x_arith_mod_xPplusOne.c:       |                           ~~~~~~~~~~~~^~~
gf2x_arith_mod_xPplusOne.c: gf2x_arith_mod_xPplusOne.c:804:18: note: within this loop
gf2x_arith_mod_xPplusOne.c:   804 |         for (; j < NUM_DIGITS_GF2X_ELEMENT-1 ; j++) {
gf2x_arith_mod_xPplusOne.c:       |                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
niederreiter_decrypt.c: niederreiter_decrypt.c: In function 'decrypt_niederreiter_indcca2':
niederreiter_decrypt.c: niederreiter_decrypt.c:179:18: warning: array subscript '<unnamed-unsigned:256>[0]' is partly outside array bounds of 'unsigned char[2]' [-Warray-bounds=]
niederreiter_decrypt.c:   179 |                  tail[TRNG_BYTE_LENGTH] = {0};
niederreiter_decrypt.c:       |                  ^~~~

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:portableoptgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:portableoptgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


niederreiter_decrypt.c: niederreiter_decrypt.c: In function 'decrypt_niederreiter_indcca2':
niederreiter_decrypt.c: niederreiter_decrypt.c:179:18: warning: array subscript '<unnamed-unsigned:256>[0]' is partly outside array bounds of 'unsigned char[2]' [-Warray-bounds=]
niederreiter_decrypt.c:   179 |                  tail[TRNG_BYTE_LENGTH] = {0};
niederreiter_decrypt.c:       |                  ^~~~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:portableoptgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)