Implementation notes: aarch64, rockpi4, crypto_sign/sphincsf128shake256simple

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_sign
Primitive: sphincsf128shake256simple
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
27999169813652 0 033130 816 1608refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120920190816
29162549527864 0 046825 928 1608refgcc_-O3_-fomit-frame-pointer2019120920190816
29786427331308 0 051625 928 1608refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120920190816
30655833613568 0 032986 816 1608refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120920190816
32501282818088 0 037889 928 1592refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120920190816
40522981813568 0 032986 816 1608refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120920190816
40620945413568 0 032986 816 1608refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120920190816
40796635613568 0 032938 816 1608refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120920190816
42347946227776 0 046681 928 1608refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120920190816
42737405231232 0 051497 928 1608refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120920190816
43182495311880 0 029761 928 1592refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019120920190816
43930933911592 0 029361 928 1592refgcc_-O2_-fomit-frame-pointer2019120920190816
44287931127664 0 046729 928 1608refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019120920190816
44773660410700 0 027601 912 1576refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019120920190816
47631992117940 0 037825 928 1592refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120920190816
48238193510652 0 027593 912 1576refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120920190816
73241213510652 0 027593 912 1576refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120920190816
73703277911456 0 029121 928 1592refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120920190816
76176652310700 0 027601 912 1576refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120920190816
76228772918356 0 039473 928 1592refgcc_-funroll-loops_-O_-fomit-frame-pointer2019120920190816
76735234810700 0 027601 912 1576refgcc_-Os_-fomit-frame-pointer2019120920190816
77437004418356 0 039473 928 1592refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120920190816
96229743411924 0 029849 928 1592refgcc_-O_-fomit-frame-pointer2019120920190816
96259272911924 0 029849 928 1592refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019120920190816
96295534311924 0 029849 928 1592refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120920190816
188504598818372 0 039889 912 1592refgcc2019120920190816
190061650118372 0 039889 912 1592refgcc_-funroll-loops2019120920190816
361243170418372 0 039889 912 1592refcc2019120920190816

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:19:10: fatal error: smmintrin.h: No such file or directory
KeccakP-1600-times4-SIMD256.c: #include <smmintrin.h>
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.c: compilation terminated.

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
KeccakP-1600-times4-SIMD256.c: In file included from KeccakP-1600-times4-SIMD256.c:19:
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/smmintrin.h:27:
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/tmmintrin.h:27:
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/pmmintrin.h:27:
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/emmintrin.h:27:
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/xmmintrin.h:27:
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-times4-SIMD256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-times4-SIMD256.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
KeccakP-1600-times4-SIMD256.c: ...

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