Implementation notes: mipso32, gcc23, crypto_hash/romulush

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_hash
Primitive: romulush
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
50228887248 16 025098 376 760T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022101020221005
124388322864 16 018725 388 760T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022101020221005
143377622480 16 017980 396 760T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022101020221005
158032282816 16 019496 404 760T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022101020221005

Compiler output

Implementation: T:opt32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.c: skinny128.c: In function 'mixcolumns_0':
skinny128.c: skinny128.c:31:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
skinny128.c: for(int i = 0; i < 4; i++) {
skinny128.c: ^
skinny128.c: skinny128.c:31:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
skinny128.c: skinny128.c: In function 'mixcolumns_1':
skinny128.c: skinny128.c:46:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
skinny128.c: for(int i = 0; i < 4; i++) {
skinny128.c: ^
skinny128.c: skinny128.c: In function 'mixcolumns_2':
skinny128.c: skinny128.c:61:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
skinny128.c: for(int i = 0; i < 4; i++) {
skinny128.c: ^
skinny128.c: skinny128.c: In function 'mixcolumns_3':
skinny128.c: skinny128.c:76:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
skinny128.c: for(int i = 0; i < 4; i++) {
skinny128.c: ^

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

Compiler output

Implementation: T:opt32t
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c: In function 'hash_RunEncryptionKeyScheduleTK1':
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c:107:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash_skinny_key_schedule1.c: for(int i=0;i<7;i++) {
hash_skinny_key_schedule1.c: ^
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c:107:3: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c:120:11: error: redefinition of 'i'
hash_skinny_key_schedule1.c: for(int i=0;i<8;i++) {
hash_skinny_key_schedule1.c: ^
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c:107:11: note: previous definition of 'i' was here
hash_skinny_key_schedule1.c: for(int i=0;i<7;i++) {
hash_skinny_key_schedule1.c: ^
hash_skinny_key_schedule1.c: hash_skinny_key_schedule1.c:120:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash_skinny_key_schedule1.c: for(int i=0;i<8;i++) {
hash_skinny_key_schedule1.c: ^

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.o hirose_128_128_256 T
hash.o initialize T
hash.o ipad_128 T
hash.o ipad_256 T
skinny_reference.o AddConstants T
skinny_reference.o AddKey T
skinny_reference.o BLOCK_SIZE D
skinny_reference.o MixColumn T
skinny_reference.o N_RNDS D
skinny_reference.o P R
skinny_reference.o RC R
skinny_reference.o ShiftRows T
skinny_reference.o SubCell8 T
skinny_reference.o TWEAKEY_P R
skinny_reference.o TWEAKEY_SIZE D
skinny_reference.o enc T
skinny_reference.o sbox_8 R
skinny_reference.o skinny_128_384_plus_enc T

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