Implementation notes: riscv64, hifiveunleashedriscv, crypto_aead/ascon128v12

Computer: hifiveunleashedriscv
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_aead
Primitive: ascon128v12
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
31843122312 0 030168 752 848opt64oldgcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32097821836 0 029676 752 848opt64gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32119022042 0 029590 736 848opt64oldgcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32354322400 0 032055 760 848refgcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32602522002 0 029534 736 848opt64gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32649022506 0 032177 760 848opt64oldgcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32723322506 0 030674 752 848opt64oldgcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32735822452 0 030604 752 848opt64gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
32752722946 0 032601 760 848opt64gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
36845521730 0 029882 752 848refgcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
36932521138 0 028978 752 848refgcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
5045722318 0 09578 736 848refgcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
5363548414 0 017981 760 848refoldgcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
74981849008 0 056864 752 848bi32_lowreggcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
75075849292 0 057140 752 848bi32gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
77712749254 0 056802 736 848bi32_lowreggcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
78517349696 0 057236 736 848bi32gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
84400152894 0 062565 760 848bi32_lowreggcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
85367352894 0 061062 752 848bi32_lowreggcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
8861942206 0 010334 752 848refoldgcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
90796954454 0 062614 752 848bi32gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
91695354450 0 064113 760 848bi32gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
10309872022 0 09490 736 848refoldgcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
10693082116 0 09892 752 848refoldgcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
2080730116546 0 0124086 736 848bi16gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
2282572127454 0 0135302 752 848bi16gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
2995526175500 0 0185135 760 848bi16gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
3123703175826 0 0183986 752 848bi16gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
4081693219254 0 0227102 752 848bi8gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221
4220942221380 0 0228920 736 848bi8gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123020191221

Test failure

Implementation: opt32old
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_aead_decrypt returns nonzero

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

Compiler output

Implementation: bi8
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ascon.c: Alarm clock

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE bi8
gcc -march=rv64gc -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE bi8

Namespace violations

Implementation: refold
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ascon.o load64 T
ascon.o permutation T
ascon.o printstate T
ascon.o printwords T
ascon.o store64 T

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