Implementation notes: aarch64, rockpi4, crypto_decode/761x4591

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_decode
Primitive: 761x4591
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
74344868 0 017924 800 760int16clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
74344868 0 017924 800 760int16clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
78474876 0 017956 800 760int16clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
86734888 0 017892 800 760int16clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
86734868 0 017924 800 760int16clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
115647100 0 020164 800 760portableclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
115647100 0 020164 800 760portableclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
128037100 0 020180 800 760portableclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
132167120 0 020132 800 760portableclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
132167100 0 020164 800 760portableclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
161072252 0 012822 880 736int16gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
169332344 0 012270 864 728int16gcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
169332344 0 012270 864 728int16gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
169332224 0 012926 880 736int16gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
173462344 0 012206 864 728int16gcc_-Os_-fomit-frame-pointer2019091020190816
173462344 0 012206 864 728int16gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
177592372 0 012798 880 736int16gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
177593212 0 016062 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
177593604 0 016438 880 736portablegcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
177593604 0 017015 888 752portablegcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
181723312 0 016142 880 736int16gcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
181722716 0 014455 888 752portablegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
181723524 0 016366 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
181723524 0 016823 888 752portablegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
185852896 0 014631 888 752int16gcc_-O3_-fomit-frame-pointer2019091020190816
185852284 0 012702 880 736portablegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
189982376 0 012846 880 736portablegcc_-O2_-fomit-frame-pointer2019091020190816
189982796 0 014543 888 752portablegcc_-O3_-fomit-frame-pointer2019091020190816
194113268 0 017398 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
305623312 0 016719 888 752int16gcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
305622140 0 011998 864 728int16gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
309752604 0 014439 888 752int16gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
313883212 0 016519 888 752int16gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
313882664 0 016079 888 752refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
313882668 0 015959 888 752refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
313881356 0 013207 888 752refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
318012468 0 012950 880 736int16gcc_-O2_-fomit-frame-pointer2019091020190816
318011568 0 011510 864 728portablegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
318011348 0 013111 888 752refgcc_-O3_-fomit-frame-pointer2019091020190816
334532796 0 014535 888 752int16gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
334531284 0 014284 800 760refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
334532548 0 015382 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
338662544 0 015366 880 736refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
355182452 0 013150 880 736int16gcc_-O_-fomit-frame-pointer2019091020190816
355182452 0 013150 880 736int16gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
355183268 0 017398 880 736int16gcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
355181292 0 011774 880 736refgcc_-O2_-fomit-frame-pointer2019091020190816
363442796 0 014623 888 752portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
367572376 0 012942 880 736portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
379961340 0 014396 800 760refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
392351688 0 012406 880 736portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
417131056 0 010974 864 728refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
421261056 0 010910 864 728refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
495601128 0 011822 880 736refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
611241568 0 011510 864 728portablegcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
627761496 0 011382 864 728portablegcc_-Os_-fomit-frame-pointer2019091020190816
627761496 0 011382 864 728portablegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
627761496 0 011382 864 728portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
702101348 0 013095 888 752refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
706232988 0 017118 880 736portablegcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
706232988 0 017118 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
710361688 0 012406 880 736portablegcc_-O_-fomit-frame-pointer2019091020190816
710361688 0 012406 880 736portablegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
755791300 0 011886 880 736refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
759921292 0 011718 880 736refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
776441344 0 014428 800 760refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
792961340 0 014396 800 760refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
792961340 0 014396 800 760refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
850781056 0 010910 864 728refgcc_-Os_-fomit-frame-pointer2019091020190816
850781056 0 010974 864 728refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
863171052 0 010910 864 728refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
966421896 0 016006 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
970551896 0 016006 880 736refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
974681136 0 011838 880 736refgcc_-O_-fomit-frame-pointer2019091020190816
974681136 0 011838 880 736refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
1020116760 0 019742 864 736int16gcc2019091020190816
1032506760 0 019742 864 736int16cc2019091020190816
1614833160 0 016150 864 736portablecc2019091020190816
1614833160 0 016150 864 736portablegcc2019091020190816
1643746760 0 019742 864 736int16gcc_-funroll-loops2019091020190816
2263242756 0 015726 864 736refcc2019091020190816
2271502756 0 015726 864 736refgcc_-funroll-loops2019091020190816
2345843160 0 016150 864 736portablegcc_-funroll-loops2019091020190816
3440292756 0 015726 864 736refgcc2019091020190816

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