Implementation notes: riscv64, hifiveunleashedriscv, crypto_aead/pi32cipher128v2

Computer: hifiveunleashedriscv
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_aead
Primitive: pi32cipher128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
71441427521 8 035253 768 848goptvgcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
75155040151 8 049707 768 848goptvgcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
83631133587 8 041717 768 848goptvgcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11253413377 8 011169 768 848ref3gcc_-march=rv64gc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11403183165 8 010637 752 848ref3gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11519375451 8 015087 768 848ref3gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
11664493895 8 012127 768 848ref3gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
12140467577 8 014755 752 848goptvgcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
19905929253 8 018739 768 848ref2gcc_-march=rv64gc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
31214523963 8 012073 768 848ref2gcc_-march=rv64gc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
34085403467 8 010873 752 848ref2gcc_-march=rv64gc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019123120191221
38039933721 8 011447 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