Implementation notes: mipso32, gcc23, crypto_hash/coral256v1

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_hash
Primitive: coral256v1

Compiler output

Implementation: T:opt64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_coral256v1_opt64_timingleaks':
hash.c: hash.c:106:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (unsigned long long i = 0; i < full_blocks; i += RATE) {
hash.c: ^
hash.c: hash.c:106:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
hash.c: hash.c:112:14: error: conflicting types for 'i'
hash.c: for (int i = 0; i < remaining; i++) {
hash.c: ^
hash.c: hash.c:106:29: note: previous definition of 'i' was here
hash.c: for (unsigned long long i = 0; i < full_blocks; i += RATE) {
hash.c: ^
hash.c: hash.c:112:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int i = 0; i < remaining; i++) {
hash.c: ^
hash.c: hash.c:118:14: error: redefinition of 'i'
hash.c: for (int i = 0; i < CRYPTO_BYTES; i += RATE) {
hash.c: ^
hash.c: hash.c:112:14: note: previous definition of 'i' was here
hash.c: for (int i = 0; i < remaining; i++) {
hash.c: ^
hash.c: hash.c:118:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int i = 0; i < CRYPTO_BYTES; i += RATE) {
hash.c: ^

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'load64':
hash.c: hash.c:18:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int i = 1; i < 8; ++i) {
hash.c: ^
hash.c: hash.c:18:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
hash.c: hash.c: In function 'store64':
hash.c: hash.c:26:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int i = 6; i >= 0; --i) {
hash.c: ^
hash.c: hash.c: In function 'permutation':
hash.c: hash.c:65:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int i = 0, j = 0; i < ROUNDS; i++, j+= 15) {
hash.c: ^
hash.c: hash.c: In function 'crypto_hash_coral256v1_ref_timingleaks':
hash.c: hash.c:83:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (unsigned long long i = 0; i < full_blocks; i += RATE) {
hash.c: ^
hash.c: hash.c:84:9: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
hash.c: for (int j = 0; j < RATE; j++) {
hash.c: ^
hash.c: hash.c:89:14: error: conflicting types for 'i'
hash.c: for (int i = 0; i < remaining; i++) {
hash.c: ^
hash.c: hash.c:83:29: note: previous definition of 'i' was here
hash.c: for (unsigned long long i = 0; i < full_blocks; i += RATE) {
hash.c: ...

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