Implementation notes: aarch64, googlecoraldev, crypto_aead/pi32cipher256v2

Computer: googlecoraldev
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20191221
Operation: crypto_aead
Primitive: pi32cipher256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
13428016571 8 031559 928 880goptvgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
15804014435 8 028158 920 864goptvgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
21384015791 8 029414 920 864goptvgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
2376008451 8 023776 832 872ref2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010320191221
2399405863 8 021184 832 872ref3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010320191221
3931207599 8 022551 928 880ref3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
4631405543 8 019222 920 864ref3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
4732207399 8 020086 904 856goptvgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
5113804359 8 016926 904 856ref3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
6598804763 8 018350 920 864ref3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
13321807875 8 022847 928 880ref2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
17742605539 8 019262 920 864ref2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
22597204803 8 017398 904 856ref2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221
26195405343 8 018950 920 864ref2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010320191221

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_aead_encrypt returns more than crypto_aead_ABYTES extra bytes

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Compiler output

Implementation: goptv
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pi-cipher.c: pi-cipher.c:286:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c: n_t += __builtin_shuffle(y, g_mask);
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c:305:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c: m_t += __builtin_shuffle(x, g_mask);
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c:354:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c: m_t += __builtin_shuffle(x, g_mask);
pi-cipher.c: ^
pi-cipher.c: 3 errors generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE goptv

Namespace violations

Implementation: goptv
Security model: unknown
Compiler: gcc -march=native -mtune=native -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=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE goptv
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE goptv
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE goptv
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE goptv

Namespace violations

Implementation: ref2
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref2

Namespace violations

Implementation: ref3
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref3
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref3