Implementation notes: aarch64, rockpi4, crypto_decode/857x1723

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_decode
Primitive: 857x1723
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
74345088 0 018148 800 760int16clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
74345088 0 018148 800 760int16clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
74345096 0 018180 800 760int16clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
82605096 0 018100 800 760int16clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
82605088 0 018148 800 760int16clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
123908324 0 021332 800 760portableclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
123908324 0 021380 800 760portableclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
123908304 0 021380 800 760portableclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
148688324 0 021380 800 760portableclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
148688324 0 021380 800 760portableclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
165203600 0 016815 888 752int16gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
165202216 0 012142 864 728int16gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
169332216 0 012078 864 728int16gcc_-Os_-fomit-frame-pointer2019091020190816
169333600 0 015343 888 752int16gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
169333040 0 015790 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
177592072 0 012638 880 736int16gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
185852048 0 012750 880 736int16gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
210634088 0 015847 888 752portablegcc_-O3_-fomit-frame-pointer2019091020190816
210634324 0 017623 888 752portablegcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
214762276 0 012758 880 736portablegcc_-O2_-fomit-frame-pointer2019091020190816
214764252 0 017463 888 752portablegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
214762276 0 012854 880 736portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
218892236 0 012654 880 736portablegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
218893124 0 015862 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
313883692 0 015439 888 752int16gcc_-O3_-fomit-frame-pointer2019091020190816
313883692 0 016991 888 752int16gcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
313882216 0 012142 864 728int16gcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
313881984 0 011854 864 728int16gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
326273140 0 015846 880 736int16gcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
330402316 0 012790 880 736int16gcc_-O2_-fomit-frame-pointer2019091020190816
334532216 0 012078 864 728int16gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
334532668 0 014503 888 752int16gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
346921364 0 013111 888 752refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
351052716 0 015911 888 752refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
363442240 0 012654 880 736int16gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
384092616 0 015318 880 736refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
388223084 0 017110 880 736int16gcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
388223084 0 017110 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
392352304 0 013006 880 736int16gcc_-O_-fomit-frame-pointer2019091020190816
392352304 0 013006 880 736int16gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
396484088 0 015927 888 752portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
396481444 0 011326 864 728portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
396481300 0 011774 880 736refgcc_-O2_-fomit-frame-pointer2019091020190816
400611508 0 011462 864 728portablegcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
400611412 0 014492 800 760refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
404744016 0 015751 888 752portablegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
413003188 0 015894 880 736portablegcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
429521408 0 014460 800 760refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
433651408 0 014460 800 760refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
462561660 0 012358 880 736portablegcc_-O_-fomit-frame-pointer2019091020190816
462562596 0 016646 880 736portablegcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
487341064 0 010910 864 728refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
487341064 0 010974 864 728refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
487341060 0 010910 864 728refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
491471064 0 010974 864 728refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
553421968 0 015990 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
565811144 0 011838 880 736refgcc_-O_-fomit-frame-pointer2019091020190816
565811144 0 011838 880 736refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
702101508 0 011462 864 728portablegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
710361444 0 011326 864 728portablegcc_-Os_-fomit-frame-pointer2019091020190816
710361444 0 011326 864 728portablegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
780571364 0 013127 888 752refgcc_-O3_-fomit-frame-pointer2019091020190816
780571372 0 013223 888 752refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
801221352 0 014348 800 760refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
801222712 0 015999 888 752refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
813612596 0 016646 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
817741660 0 012358 880 736portablegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
817741660 0 012358 880 736portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
817742620 0 015350 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
871431308 0 011886 880 736refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
875561300 0 011718 880 736refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
887951408 0 014460 800 760refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
978811064 0 010910 864 728refgcc_-Os_-fomit-frame-pointer2019091020190816
1086196384 0 019374 864 736int16gcc2019091020190816
1090326384 0 019374 864 736int16gcc_-funroll-loops2019091020190816
1102711968 0 015990 880 736refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
1110971136 0 011838 880 736refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
1755256384 0 019374 864 736int16cc2019091020190816
1817202980 0 015974 864 736portablecc2019091020190816
1998922980 0 015974 864 736portablegcc_-funroll-loops2019091020190816
2663852980 0 015974 864 736portablegcc2019091020190816
3898722776 0 015742 864 736refcc2019091020190816
3898722776 0 015742 864 736refgcc2019091020190816
3898722776 0 015742 864 736refgcc_-funroll-loops2019091020190816

Compiler output

Implementation: avx
Security model: unknown
Compiler: cc
decode.c: decode.c:3:10: fatal error: immintrin.h: No such file or directory
decode.c: #include <immintrin.h>
decode.c: ^~~~~~~~~~~~~
decode.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc avx
gcc avx
gcc -O2 -fomit-frame-pointer avx
gcc -O3 -fomit-frame-pointer avx
gcc -O -fomit-frame-pointer avx
gcc -Os -fomit-frame-pointer avx
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -funroll-loops avx
gcc -funroll-loops -O2 -fomit-frame-pointer avx
gcc -funroll-loops -O3 -fomit-frame-pointer avx
gcc -funroll-loops -O -fomit-frame-pointer avx
gcc -funroll-loops -Os -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx

Compiler output

Implementation: avx
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
decode.c: In file included from decode.c:3:
decode.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/immintrin.h:28:
decode.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
decode.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.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
decode.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:301:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2);
decode.c: ...

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