Implementation notes: riscv64, hifiveunleashedriscv, crypto_aead/pi32cipher256v2

Computer: hifiveunleashedriscv
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_aead
Primitive: pi32cipher256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
71730927529 8 035275 768 848goptvgcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
74571340159 8 049729 768 848goptvgcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
82963033595 8 041739 768 848goptvgcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11228193173 8 010659 752 848ref3gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11399933385 8 011191 768 848ref3gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11555965459 8 015109 768 848ref3gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11597113903 8 012149 768 848ref3gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
12155237585 8 014777 752 848goptvgcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
19779829261 8 018761 768 848ref2gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
31118463971 8 012095 768 848ref2gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
34103343475 8 010895 752 848ref2gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
37718463729 8 011469 768 848ref2gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_aead_encrypt returns more than crypto_aead_ABYTES extra bytes

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

Namespace violations

Implementation: goptv
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.o PI_DECRYPT_BLOCK_Q T
pi-cipher.o pi32_decrypt_block T
pi-cipher.o pi32_decrypt_last_block T
pi-cipher.o pi32_decrypt_simple T
pi-cipher.o pi32_decrypt_smn T
pi-cipher.o pi32_encrypt_block T
pi-cipher.o pi32_encrypt_block_q T
pi-cipher.o pi32_encrypt_last_block T
pi-cipher.o pi32_encrypt_simple T
pi-cipher.o pi32_encrypt_smn T
pi-cipher.o pi32_extract_tag T
pi-cipher.o pi32_init T
pi-cipher.o pi32_process_ad_block T
pi-cipher.o pi32_process_ad_block_q T
pi-cipher.o pi32_process_ad_last_block T
pi-cipher.o pi_cipher_name D

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

Namespace violations

Implementation: ref2
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.o pi32_decrypt_block T
pi-cipher.o pi32_decrypt_last_block T
pi-cipher.o pi32_decrypt_simple T
pi-cipher.o pi32_decrypt_smn T
pi-cipher.o pi32_encrypt_block T
pi-cipher.o pi32_encrypt_last_block T
pi-cipher.o pi32_encrypt_simple T
pi-cipher.o pi32_extract_tag T
pi-cipher.o pi32_init T
pi-cipher.o pi32_process_ad_block T
pi-cipher.o pi32_process_ad_last_block T
pi-cipher.o pi32_process_smn T
pi-cipher.o pi_cipher_name D

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

Namespace violations

Implementation: ref3
Security model: unknown
Compiler: gcc -march=rv64gc -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.o pi32_decrypt_block T
pi-cipher.o pi32_decrypt_last_block T
pi-cipher.o pi32_decrypt_simple T
pi-cipher.o pi32_decrypt_smn T
pi-cipher.o pi32_encrypt_block T
pi-cipher.o pi32_encrypt_last_block T
pi-cipher.o pi32_encrypt_simple T
pi-cipher.o pi32_encrypt_smn T
pi-cipher.o pi32_extract_tag T
pi-cipher.o pi32_init T
pi-cipher.o pi32_process_ad_block T
pi-cipher.o pi32_process_ad_last_block T
pi-cipher.o pi_cipher_name D

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