Implementation notes: mipso32, gcc23, crypto_aead/drygascon128k16

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_aead
Primitive: drygascon128k16
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
141640425976 268 3249875 672 864T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060120220506
181433213128 268 3234990 676 864T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060120220506
197376010760 268 3231788 672 864T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060120220506
233406014296 268 3236888 680 864T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060120220506

Compiler output

Implementation: T:le32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from drygascon_le32.h:14:0,
encrypt.c: from drysponge.h:23,
encrypt.c: from encrypt.c:3:
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_xor':
encrypt.c: drysponge_common.h:97:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i=0;i<DRYSPONGE_BLOCKSIZE;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h:97:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load16':
encrypt.c: drysponge_common.h:104:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<2;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load32':
encrypt.c: drysponge_common.h:112:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<4;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_store32':
encrypt.c: drysponge_common.h:119:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<4;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load64':
encrypt.c: drysponge_common.h:126:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<8;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_store64':
encrypt.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from drygascon_ref.h:14:0,
encrypt.c: from drysponge.h:23,
encrypt.c: from encrypt.c:3:
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_xor':
encrypt.c: drysponge_common.h:97:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i=0;i<DRYSPONGE_BLOCKSIZE;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h:97:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load16':
encrypt.c: drysponge_common.h:104:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<2;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load32':
encrypt.c: drysponge_common.h:112:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<4;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_store32':
encrypt.c: drysponge_common.h:119:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<4;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_load64':
encrypt.c: drysponge_common.h:126:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
encrypt.c: for(unsigned int i = 0;i<8;i++){
encrypt.c: ^
encrypt.c: drysponge_common.h: In function 'DRYSPONGE_store64':
encrypt.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

Namespace violations

Implementation: T:opt_arm_cortex-m
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead-common.o aead_check_tag T
aead-common.o aead_check_tag_precheck T
drygascon.o drygascon128_aead_decrypt_core T
drygascon.o drygascon128_aead_encrypt_core T
drygascon.o drygascon128_cipher D
drygascon.o drygascon128_hash T
drygascon.o drygascon128_hash_algorithm D
drygascon.o drygascon128k16_aead_decrypt T
drygascon.o drygascon128k16_aead_encrypt T
drygascon.o drygascon128k16_cipher D
drygascon.o drygascon128k16_expected D
drygascon.o drygascon128k32_aead_decrypt T
drygascon.o drygascon128k32_aead_encrypt T
drygascon.o drygascon128k32_cipher D
drygascon.o drygascon128k32_expected D
drygascon.o drygascon128k56_aead_decrypt T
drygascon.o drygascon128k56_aead_encrypt T
drygascon.o drygascon128k56_cipher D
drygascon.o drygascon128k56_expected D
drygascon.o drygascon256_aead_decrypt T
drygascon.o drygascon256_aead_encrypt T
drygascon.o drygascon256_cipher D
drygascon.o drygascon256_expected B
drygascon.o drygascon256_hash T
drygascon.o drygascon256_hash_algorithm D
internal-drysponge.o drygascon128_f_impl T
internal-drysponge.o drygascon128_f_wrap T
internal-drysponge.o drysponge128_g T
internal-drysponge.o drysponge128_g_core T
internal-drysponge.o drysponge128_safe_alignement T
internal-drysponge.o drysponge128_setup T
internal-drysponge.o drysponge256_f_absorb T
internal-drysponge.o drysponge256_g T
internal-drysponge.o drysponge256_g_core T
internal-drysponge.o drysponge256_setup T
internal-drysponge.o gascon128_core_round T
internal-drysponge.o gascon256_core_round T

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