Implementation notes: aarch64, supercoplxc, crypto_aead/stribob192r2

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: stribob192r2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4213604432 0 021988 800 888smallerclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019092520190816
42952021988 0 039608 912 864refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019092520190816
43048018848 0 036406 800 888refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019092520190816
4452007660 0 025288 912 864smallergcc_-funroll-loops_-O2_-fomit-frame-pointer2019092520190816
45344019796 0 036673 920 880refgcc_-O3_-fomit-frame-pointer2019092520190816
4534405464 0 023697 920 880smallergcc_-funroll-loops_-O3_-fomit-frame-pointer2019092520190816
46352019616 0 035200 912 864refgcc_-O2_-fomit-frame-pointer2019092520190816
4652005492 0 022385 920 880smallergcc_-O3_-fomit-frame-pointer2019092520190816
4936805284 0 020872 912 864smallergcc_-O2_-fomit-frame-pointer2019092520190816
52024019776 0 037993 920 880refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019092520190816
56000018828 0 036326 800 888refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019092520190816
56240018828 0 036374 800 888refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019092520190816
56256018828 0 036374 800 888refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019092520190816
56320018828 0 036374 800 888refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019092520190816
62168019332 0 033992 896 856refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
62184019332 0 033992 896 856refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019092520190816
6587207460 0 025192 912 864smallergcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
6601605396 0 023593 920 880smallergcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
6814406032 0 022921 920 880bitslicegcc_-O3_-fomit-frame-pointer2019092520190816
6846406016 0 024241 920 880bitslicegcc_-funroll-loops_-O3_-fomit-frame-pointer2019092520190816
6892804920 0 019582 896 856smallergcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
6894404920 0 019582 896 856smallergcc_-funroll-loops_-Os_-fomit-frame-pointer2019092520190816
6899206064 0 024257 920 880bitslicegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
6956008400 0 026024 912 864bitslicegcc_-funroll-loops_-O2_-fomit-frame-pointer2019092520190816
70328021932 0 039648 912 864refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
70352019344 0 033952 896 856refgcc_-Os_-fomit-frame-pointer2019092520190816
70440019344 0 033952 896 856refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
7112805592 0 020248 896 856bitslicegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
7116005592 0 020248 896 856bitslicegcc_-funroll-loops_-Os_-fomit-frame-pointer2019092520190816
7148005964 0 021544 912 864bitslicegcc_-O2_-fomit-frame-pointer2019092520190816
71664019884 0 036721 920 880refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
7170408348 0 026080 912 864bitslicegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
7354404396 0 021940 800 888smallerclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019092520190816
7354404396 0 021940 800 888smallerclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019092520190816
7356804396 0 021940 800 888smallerclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019092520190816
7360004396 0 021892 800 888smallerclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019092520190816
73680021732 0 040632 912 864refgcc_-funroll-loops_-O_-fomit-frame-pointer2019092520190816
73696021732 0 040632 912 864refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
76904019584 0 035264 912 864refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
7707206080 0 022945 920 880bitslicegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
77112019584 0 035264 912 864refgcc_-O_-fomit-frame-pointer2019092520190816
78240019644 0 035152 912 864refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
8097605172 0 020696 912 864smallergcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
81016019868 0 038041 920 880refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
8164005412 0 022273 920 880smallergcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
8184005992 0 021520 912 864bitslicegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
8224805604 0 020200 896 856bitslicegcc_-Os_-fomit-frame-pointer2019092520190816
8224805604 0 020200 896 856bitslicegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
8671204932 0 019534 896 856smallergcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
8677604932 0 019534 896 856smallergcc_-Os_-fomit-frame-pointer2019092520190816
9312805504 0 023054 800 888bitsliceclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019092520190816
9312805504 0 023054 800 888bitsliceclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019092520190816
9312805504 0 023054 800 888bitsliceclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019092520190816
9348805504 0 022998 800 888bitsliceclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019092520190816
9397608080 0 026992 912 864bitslicegcc_-funroll-loops_-O_-fomit-frame-pointer2019092520190816
9397608080 0 026992 912 864bitslicegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
9456005864 0 021552 912 864bitslicegcc_-O_-fomit-frame-pointer2019092520190816
9457605864 0 021552 912 864bitslicegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
10406407336 0 026248 912 864smallergcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
10407207336 0 026248 912 864smallergcc_-funroll-loops_-O_-fomit-frame-pointer2019092520190816
10739205188 0 020880 912 864smallergcc_-O_-fomit-frame-pointer2019092520190816
10739205188 0 020880 912 864smallergcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
11719205572 0 023134 800 888bitsliceclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019092520190816
210640020724 0 042816 896 864refgcc_-funroll-loops2019092520190816
210672020724 0 042816 896 864refcc2019092520190816
210936020724 0 042816 896 864refgcc2019092520190816
24350406612 0 028712 896 864smallergcc2019092520190816
24351206612 0 028712 896 864smallercc2019092520190816
24364806612 0 028712 896 864smallergcc_-funroll-loops2019092520190816
24949604104 0 021662 800 8888bitclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019092520190816
29234404212 0 021758 800 8888bitclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019092520190816
29284804212 0 021758 800 8888bitclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019092520190816
29315204212 0 021710 800 8888bitclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019092520190816
29346404212 0 021758 800 8888bitclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019092520190816
500200010972 0 033072 896 864bitslicegcc2019092520190816
500240010972 0 033072 896 864bitslicegcc_-funroll-loops2019092520190816
503736010972 0 033072 896 864bitslicecc2019092520190816
83605603132 0 021353 920 8808bitgcc_-funroll-loops_-O3_-fomit-frame-pointer2019092520190816
87404005548 0 023160 912 8648bitgcc_-funroll-loops_-O2_-fomit-frame-pointer2019092520190816
88760802912 0 019777 920 8808bitgcc_-O3_-fomit-frame-pointer2019092520190816
92817602692 0 018272 912 8648bitgcc_-O2_-fomit-frame-pointer2019092520190816
96908002388 0 017040 896 8568bitgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
96910402388 0 017040 896 8568bitgcc_-funroll-loops_-Os_-fomit-frame-pointer2019092520190816
102250402400 0 017000 896 8568bitgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092520190816
102267202400 0 017000 896 8568bitgcc_-Os_-fomit-frame-pointer2019092520190816
104460803164 0 021337 920 8808bitgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
105890402956 0 019793 920 8808bitgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092520190816
109138405420 0 023144 912 8648bitgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
117535202672 0 018192 912 8648bitgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092520190816
147452805224 0 024128 912 8648bitgcc_-funroll-loops_-O_-fomit-frame-pointer2019092520190816
147547205224 0 024128 912 8648bitgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
151438402612 0 018296 912 8648bitgcc_-O_-fomit-frame-pointer2019092520190816
151552802612 0 018296 912 8648bitgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019092520190816
591204003692 0 025784 896 8648bitgcc_-funroll-loops2019092520190816
593964803692 0 025784 896 8648bitcc2019092520190816
598444003692 0 025784 896 8648bitgcc2019092520190816

Compiler output

Implementation: ssse3
Security model: unknown
Compiler: cc
wbob_pissse3.c: wbob_pissse3.c:7:10: fatal error: tmmintrin.h: No such file or directory
wbob_pissse3.c: #include <tmmintrin.h>
wbob_pissse3.c: ^~~~~~~~~~~~~
wbob_pissse3.c: compilation terminated.

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

Compiler output

Implementation: ssse3
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
wbob_pissse3.c: In file included from wbob_pissse3.c:7:
wbob_pissse3.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/tmmintrin.h:27:
wbob_pissse3.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/pmmintrin.h:27:
wbob_pissse3.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/emmintrin.h:27:
wbob_pissse3.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/xmmintrin.h:27:
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:64:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:143:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:173:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:203:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:230:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:253:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
wbob_pissse3.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wbob_pissse3.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:274:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
wbob_pissse3.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
wbob_pissse3.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ssse3
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ssse3
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ssse3
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ssse3
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ssse3