Implementation notes: amd64, h4e450, crypto_aead/pi64cipher128v2

Computer: h4e450
Architecture: amd64
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20200618
Operation: crypto_aead
Primitive: pi64cipher128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1496348711 8 023456 768 856ref3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
1507468646 8 023088 768 856ref3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
16399410375 8 025152 768 856ref2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
16730010342 8 024816 768 856ref2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
1890648054 8 021088 768 856ref3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
1891558054 8 021088 768 856ref3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
19558622031 8 037813 792 928ref2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409
2027599177 8 022248 768 856ref2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
2029969177 8 022248 768 856ref2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
21194543912 8 059693 792 928goptvgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409
21654312507 8 028253 792 928ref3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
23364833293 8 046508 784 928goptvgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409
23622235457 8 048644 784 928goptvgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409
2462825794 8 019004 784 928ref3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
2482887052 8 020236 784 928ref3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
2755096186 8 017902 760 856ref3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
3260835273 8 017488 768 896ref3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
7001076655 8 019900 784 928ref2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
7526196948 8 020188 784 928ref2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041320200409
7721695855 8 018096 768 896ref2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409
12520476327 8 018102 760 856ref2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020041320200409
267027413398 8 025720 768 896goptvgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041220200409

Test failure

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

Compiler output

Implementation: goptv
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c: {
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c: static void e1(
pi-cipher.c: ^~
pi-cipher.c: pi-cipher.c: In function 'vect_ast':
pi-cipher.c: pi-cipher.c:337:10: warning: AVX vector argument without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c: vchunk_t vect_ast(vchunk_t x, vchunk_t y)
pi-cipher.c: ^~~~~~~~

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

Compiler output

Implementation: goptv
Security model: unknown
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c: {
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c: static void e1(
pi-cipher.c: ^~

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

Compiler output

Implementation: goptv
Security model: unknown
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c: {
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c: static void e1(
pi-cipher.c: ^~
pi-cipher.c: pi-cipher.c: In function 'vect_ast_precomputed_mu':
pi-cipher.c: pi-cipher.c:277:10: warning: AVX vector argument without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c: vchunk_t vect_ast_precomputed_mu(vchunk_t y)
pi-cipher.c: ^~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
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: 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 pi64_decrypt_block T
pi-cipher.o pi64_decrypt_last_block T
pi-cipher.o pi64_decrypt_simple T
pi-cipher.o pi64_decrypt_smn T
pi-cipher.o pi64_encrypt_block T
pi-cipher.o pi64_encrypt_block_q T
pi-cipher.o pi64_encrypt_last_block T
pi-cipher.o pi64_encrypt_simple T
pi-cipher.o pi64_encrypt_smn T
pi-cipher.o pi64_extract_tag T
pi-cipher.o pi64_init T
pi-cipher.o pi64_process_ad_block T
pi-cipher.o pi64_process_ad_block_q T
pi-cipher.o pi64_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 -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pi-cipher.o pi64_decrypt_block T
pi-cipher.o pi64_decrypt_last_block T
pi-cipher.o pi64_decrypt_simple T
pi-cipher.o pi64_decrypt_smn T
pi-cipher.o pi64_encrypt_block T
pi-cipher.o pi64_encrypt_last_block T
pi-cipher.o pi64_encrypt_simple T
pi-cipher.o pi64_extract_tag T
pi-cipher.o pi64_init T
pi-cipher.o pi64_process_ad_block T
pi-cipher.o pi64_process_ad_last_block T
pi-cipher.o pi64_process_smn T
pi-cipher.o pi_cipher_name D

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref2
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 -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pi-cipher.o pi64_decrypt_block T
pi-cipher.o pi64_decrypt_last_block T
pi-cipher.o pi64_decrypt_simple T
pi-cipher.o pi64_decrypt_smn T
pi-cipher.o pi64_encrypt_block T
pi-cipher.o pi64_encrypt_last_block T
pi-cipher.o pi64_encrypt_simple T
pi-cipher.o pi64_encrypt_smn T
pi-cipher.o pi64_extract_tag T
pi-cipher.o pi64_init T
pi-cipher.o pi64_process_ad_block T
pi-cipher.o pi64_process_ad_last_block T
pi-cipher.o pi_cipher_name D

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref3
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref3
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref3
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref3
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