Implementation notes: mipso32, gcc23, crypto_aead/ascon80pqv12

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_aead
Primitive: ascon80pqv12
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
54090215840 0 039109 356 832bi32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
54090615840 0 036984 352 832bi32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
61993010640 0 034285 376 832bi32_lowreggcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
61995210640 0 032160 372 832bi32_lowreggcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
63701817600 0 039432 352 832bi32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
67039840640 0 063964 344 832opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
67386240832 0 062031 340 832opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
6989664128 0 027588 368 832bi32_lowsizegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
69995035792 0 057679 340 832opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
7098382816 0 023341 352 832opt32_lowsizegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
7137903504 0 024839 364 832bi32_lowsizegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
7152722800 0 023325 352 832opt64_lowsizegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
74226240640 0 062527 340 832opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
75786040752 0 061951 340 832opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
76175240320 0 063644 344 832opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
7844483632 0 025545 352 832opt32_lowsizegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
8343003616 0 025529 352 832opt64_lowsizegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
8552523536 0 026886 356 832opt64_lowsizegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
86609411696 0 033904 372 832bi32_lowreggcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
8666582944 0 024169 352 832opt64_lowsizegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
8864123568 0 026918 356 832opt32_lowsizegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
89615228752 0 050683 340 832refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022110120221028
8977902976 0 024201 352 832opt32_lowsizegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
9055684176 0 024675 340 832opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
9105824192 0 024691 340 832opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
9291843728 0 025751 364 832bi32_lowsizegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
103513641088 0 064456 344 832refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022110120221028
117496440512 0 061755 340 832refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022110120221028
13318604272 0 024815 340 832refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022110120221028
21009443856 0 024395 360 832bi32_lowsizegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
22747624992 0 025716 368 832bi32_lowreggcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
25598205248 0 025596 348 832bi32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
428656814352 0 035761 348 832bi8gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
51362809504 0 032884 352 832opt8gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
51640327904 0 031303 356 832opt8_lowsizegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
517748414144 0 036990 352 832bi8gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
518118614144 0 034865 348 832bi8gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
55326804816 0 027056 368 832opt8gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
55455704608 0 026761 360 832opt8_lowsizegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
64636846128 0 027680 368 832opt8gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
64827425952 0 027417 360 832opt8_lowsizegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
90207643392 0 023845 352 832opt8_lowsizegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
90349223552 0 024212 360 832opt8gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122
91948465392 0 025477 344 832bi8gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022112320221122

Compiler output

Implementation: T:asm_esp32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ascon.S: ascon.S:1:28: fatal error: xtensa/coreasm.h: No such file or directory
ascon.S: #include <xtensa/coreasm.h>
ascon.S: ^
ascon.S: compilation terminated.

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

Compiler output

Implementation: avr
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
permutations.S: permutations.S:29:20: fatal error: avr/io.h: No such file or directory
permutations.S: #include "avr/io.h"
permutations.S: ^
permutations.S: compilation terminated.

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

Compiler output

Implementation: T:esp32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /tmp/ccJmoqm9.o: In function `doit':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: /tmp/ccJmoqm9.o: In function `test':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:esp32

Compiler output

Implementation: T:esp32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /tmp/ccirbOSF.o: In function `doit':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: /tmp/ccirbOSF.o: In function `test':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:esp32

Compiler output

Implementation: T:esp32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /tmp/cc747IkW.o: In function `doit':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: /tmp/cc747IkW.o: In function `test':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:esp32

Compiler output

Implementation: T:esp32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /tmp/cc9SLhdE.o: In function `doit':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: /tmp/cc9SLhdE.o: In function `test':
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_encrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: try-small.c:(.text+0x...): undefined reference to `crypto_aead_ascon80pqv12_esp32_timingleaks_decrypt'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:esp32

Namespace violations

Implementation: bi32
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
constants.o constants R
interleave.o B R
permutations.o P12 T
permutations.o P6 T

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

Namespace violations

Implementation: bi32_lowreg
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead.o ascon_adata T
aead.o ascon_decrypt T
aead.o ascon_encrypt T
aead.o ascon_final T
aead.o ascon_initaead T
aead.o ascon_loadkey T
constants.o constants R
interleave.o B R

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

Namespace violations

Implementation: bi32_lowsize
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead.o ascon_aead T
constants.o constants R
interleave.o B R
interleave.o FROMBI T
interleave.o TOBI T
permutations.o P T
update.o ascon_update T

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

Namespace violations

Implementation: bi8
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
constants.o constants R
interleave.o FROMBI T
interleave.o TOBI T
permutations.o P T

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

Namespace violations

Implementation: opt32_lowsize
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead.o ascon_aead T
permutations.o P T
update.o ascon_update T

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

Namespace violations

Implementation: opt8
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead.o ascon_adata T
aead.o ascon_decrypt T
aead.o ascon_encrypt T
aead.o ascon_final T
aead.o ascon_initaead T
aead.o ascon_loadkey T
permutations.o P T

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

Namespace violations

Implementation: opt8_lowsize
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aead.o ascon_final T
aead.o ascon_initaead T
aead.o ascon_loadkey T
permutations.o P T
update.o ascon_update T

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