Implementation notes: mipso32, gcc23, crypto_kem/hqc2562

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_kem
Primitive: hqc2562
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
26342713823076 169 1121407740 32579 5296T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060820220506
26662551219708 157 1121403006 32623 5296T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060820220506
26667092616388 134 1121398876 32624 5296T:refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060820220506
26837351820584 156 1121405209 32654 5296T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060820220506

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
bch.c: bch.c: In function 'message_to_array':
bch.c: bch.c:83:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: for (uint8_t i = 0 ; i < VEC_K_SIZE_BYTES ; ++i) {
bch.c: ^
bch.c: bch.c:83:3: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
bch.c: bch.c:84:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: for (uint8_t j = 0 ; j < 8 ; ++j) {
bch.c: ^
bch.c: bch.c: In function 'get_generator_poly':
bch.c: bch.c:104:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: for (int i = 0; i < g_bytes_size; ++i) {
bch.c: ^
bch.c: bch.c:109:12: error: redefinition of 'i'
bch.c: for (int i = 0; i < (g_bytes_size - 1) ; ++i) {
bch.c: ^
bch.c: bch.c:104:12: note: previous definition of 'i' was here
bch.c: for (int i = 0; i < g_bytes_size; ++i) {
bch.c: ^
bch.c: bch.c:109:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: for (int i = 0; i < (g_bytes_size - 1) ; ++i) {
bch.c: ^
bch.c: bch.c:110:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: for (int j = 0; j < 8; ++j) {
bch.c: ^
bch.c: bch.c:115:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
bch.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hqc.cpp: hqc.cpp:26:3: warning: this decimal constant is unsigned only in ISO C90
hqc.cpp: seedexpander_init(sk_seedexpander, sk_seed, sk_seed + 32, SEEDEXPANDER_MAX_LENGTH);
hqc.cpp: ^
hqc.cpp: hqc.cpp:31:3: warning: this decimal constant is unsigned only in ISO C90
hqc.cpp: seedexpander_init(pk_seedexpander, pk_seed, pk_seed + 32, SEEDEXPANDER_MAX_LENGTH);
hqc.cpp: ^
hqc.cpp: hqc.cpp:84:3: warning: this decimal constant is unsigned only in ISO C90
hqc.cpp: seedexpander_init(seedexpander, theta, theta + 32, SEEDEXPANDER_MAX_LENGTH);
hqc.cpp: ^
kem.cpp: kem.cpp:58:3: warning: this decimal constant is unsigned only in ISO C90
kem.cpp: seedexpander_init(G_seedexpander, seed_G, diversifier_bytes, SEEDEXPANDER_MAX_LENGTH);
kem.cpp: ^
kem.cpp: kem.cpp:135:3: warning: this decimal constant is unsigned only in ISO C90
kem.cpp: seedexpander_init(G_seedexpander, seed_G, diversifier_bytes, SEEDEXPANDER_MAX_LENGTH);
kem.cpp: ^
parsing.cpp: parsing.cpp:40:3: warning: this decimal constant is unsigned only in ISO C90
parsing.cpp: seedexpander_init(sk_seedexpander, sk_seed, sk_seed + 32, SEEDEXPANDER_MAX_LENGTH);
parsing.cpp: ^
parsing.cpp: parsing.cpp:79:3: warning: this decimal constant is unsigned only in ISO C90
parsing.cpp: seedexpander_init(pk_seedexpander, pk_seed, pk_seed + 32, SEEDEXPANDER_MAX_LENGTH);
parsing.cpp: ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref