Implementation notes: aarch64, rockpi4, crypto_aead/aeadaes256ocbtaglen128v1

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: aeadaes256ocbtaglen128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
94996712 0 024836 800 888dolbeau/armv8cryptoclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091120190816
103257896 0 025431 920 880dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091120190816
297365000 0 021270 912 864dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091120190816
330405172 0 021446 912 864dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091120190816
330404524 0 019726 896 856dolbeau/armv8cryptogcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091120190816
1325735332 0 023962 848 888optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120120190816
1338125332 0 023962 848 888optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120120190816
1338126872 0 025781 968 864optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
1342256248 0 024229 968 880optgcc_-O3_-fomit-frame-pointer2019120120190816
1346385292 0 021101 952 856optgcc_-Os_-fomit-frame-pointer2019120120190816
1346386152 0 023045 968 864optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019120120190816
1350516104 0 022885 968 864optgcc_-O2_-fomit-frame-pointer2019120120190816
1350517160 0 027253 968 864optgcc_-funroll-loops_-O_-fomit-frame-pointer2019120120190816
1354645292 0 021101 952 856optgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
1358775264 0 021117 952 856optgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
1495066792 0 025613 968 864optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120120190816
1573537684 0 031029 952 864optgcc_-funroll-loops2019120120190816
1680916768 0 025194 832 888refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120120190816
1738735904 0 025053 952 880refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120120190816
1742865880 0 023773 952 880refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019120120190816
1746995856 0 023661 952 880refgcc_-O3_-fomit-frame-pointer2019120120190816
1751125944 0 023717 952 880refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
1784165776 0 024452 944 864refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
1866763052 0 022916 944 864refgcc_-funroll-loops_-O_-fomit-frame-pointer2019120120190816
2081526324 0 025621 968 880optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
2089786196 0 025517 968 880optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120120190816
2098046376 0 024333 968 880optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
2110435420 0 024058 848 888optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120120190816
2114566284 0 023165 968 864optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019120120190816
2118696284 0 023165 968 864optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
2118695264 0 021117 952 856optgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120120190816
2122827160 0 027253 968 864optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
2122825292 0 021101 952 856optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019120120190816
2122821792 0 017396 928 856refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
2126955320 0 023898 848 888optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120120190816
2126956284 0 023165 968 864optgcc_-O_-fomit-frame-pointer2019120120190816
2126956332 0 023061 968 864optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
2139345332 0 023962 848 888optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120120190816
2143476328 0 024405 968 880optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019120120190816
2263241796 0 017348 928 856refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019120120190816
2502782712 0 019188 944 864refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
2527561796 0 017348 928 856refgcc_-Os_-fomit-frame-pointer2019120120190816
2548217684 0 031029 952 864optgcc2019120120190816
2560607684 0 031029 952 864optcc2019120120190816
2775365952 0 025061 952 880refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
2903397024 0 025498 832 888refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120120190816
2903397024 0 025498 832 888refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120120190816
2919917024 0 025498 832 888refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120120190816
2928176696 0 025178 832 888refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120120190816
3142935696 0 024268 944 864refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120120190816
3737653052 0 022916 944 864refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
4571912712 0 019244 944 864refgcc_-O2_-fomit-frame-pointer2019120120190816
4576042744 0 019372 944 864refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019120120190816
4600821792 0 017396 928 856refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120120190816
4604951796 0 017348 928 856refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
4691682076 0 018716 944 864refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
4699942076 0 018716 944 864refgcc_-O_-fomit-frame-pointer2019120120190816
4708202076 0 018716 944 864refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019120120190816
5612672856 0 026005 936 864refcc2019120120190816
5943072856 0 026005 936 864refgcc2019120120190816
14033742856 0 026005 936 864refgcc_-funroll-loops2019120120190816

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: cc
encrypt.c: In file included from encrypt.c:47:
encrypt.c: encrypt.c: In function 'aes256ni_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[14-i]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc dolbeau/armv8crypto
gcc dolbeau/armv8crypto
gcc -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops dolbeau/armv8crypto
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:81:16: warning: implicit declaration of function 'vaesimcq_u8' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: dkeys[i] = vaesimcq_u8(ekeys[14-i]);
encrypt.c: ^
encrypt.c: encrypt.c:81:14: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
encrypt.c: dkeys[i] = vaesimcq_u8(ekeys[14-i]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:118:10: warning: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+208)));
encrypt.c: ^
encrypt.c: encrypt.c:118:8: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
encrypt.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+208)));
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:158:10: warning: implicit declaration of function 'vaesdq_u8' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: temp = vaesdq_u8(temp, vld1q_u8((rkeys+208)));
encrypt.c: ^
encrypt.c: encrypt.c:158:8: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
encrypt.c: temp = vaesdq_u8(temp, vld1q_u8((rkeys+208)));
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:281:1: warning: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: FUNC(4, MAKE4, MAKE4COMMA)
encrypt.c: ^
encrypt.c: encrypt.c:238:11: note: expanded from macro 'FUNC'
encrypt.c: MAKEN(AESENCLASTx); \
encrypt.c: ^
encrypt.c: encrypt.c:281:1: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto