Implementation notes: aarch64, pi3bplus, crypto_aead/aeadaes128ocbtaglen128v1

Computer: pi3bplus
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20200702
Operation: crypto_aead
Primitive: aeadaes128ocbtaglen128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1872976256 18 022333 970 864optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
1878195431 18 019205 946 840optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
1879975888 18 020765 962 848optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
1891606020 18 020893 962 848optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
2326765880 0 021406 896 864refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
2502006696 0 022715 800 856refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042220200417
4324102744 0 017005 888 848refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
4335462080 0 016349 888 848refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417
4335561796 0 014981 872 840refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042220200417

Test failure

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/armv8crypto
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto opt

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/armv8crypto
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from encrypt.c:47:
encrypt.c: encrypt.c: In function 'aes128ni_setkey_e2d':
encrypt.c: /usr/lib/gcc/aarch64-linux-gnu/8/include/arm_neon.h:12447:1: error: inlining failed in call to always_inline 'vaesimcq_u8': target specific option mismatch
encrypt.c: vaesimcq_u8 (uint8x16_t data)
encrypt.c: ^~~~~~~~~~~
encrypt.c: encrypt.c:81:16: note: called from here
encrypt.c: dkeys[i] = vaesimcq_u8(ekeys[10-i]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto

Namespace violations

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/ref
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.o ocb_decrypt T
encrypt.o ocb_encrypt T

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
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

Namespace violations

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/opt
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ocb.o ae_allocate T
ocb.o ae_clear T
ocb.o ae_ctx_sizeof T
ocb.o ae_decrypt T
ocb.o ae_encrypt T
ocb.o ae_free T
ocb.o ae_init T
ocb.o gen_offset T
ocb.o infoString D

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