Implementation notes: armeabi, jetsontk1, crypto_stream/simon64128ctr

Computer: jetsontk1
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20170725
Operation: crypto_stream
Primitive: simon64128ctr
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
18925? ? ?? ? ?neonclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082120170725
19058? ? ?? ? ?neonclang_-mcpu=cortex-a15_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082120170725
19221? ? ?? ? ?neonclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082120170725
19487? ? ?? ? ?neonclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017082120170725
19487? ? ?? ? ?neonclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082120170725
19579? ? ?? ? ?neonclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017082120170725
19656? ? ?? ? ?neonclang_-O3_-fwrapv_-march=armv7-a_-mfloat-abi=hard_-mfpu=neon_-fomit-frame-pointer_-Qunused-arguments2017082120170725
20125? ? ?? ? ?neonclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082120170725
23141? ? ?? ? ?neonclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017082120170725
27657? ? ?? ? ?neonclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017082120170725
27995? ? ?? ? ?neonclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017082120170725

Compiler output

Implementation: crypto_stream/simon64128ctr/avx2
Compiler: cc
stream.c: In file included from Simon64128AVX2.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_AVX2_64block.h:5:23: fatal error: x86intrin.h: No such file or directory
stream.c: #include <x86intrin.h>
stream.c: ^
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 63, 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
gcc -mcpu=cortex-a15 -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a15 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a15 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a15 -mfpu=neon -O -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a15 -mfpu=neon -Os -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a8 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a8 -mfpu=neon -O -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a8 -mfpu=neon -Os -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer avx2
gcc -mcpu=cortex-a9 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a9 -mfpu=neon -O -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=cortex-a9 -mfpu=neon -Os -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv avx2
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv avx2

Compiler output

Implementation: crypto_stream/simon64128ctr/sse4
Compiler: cc
stream.c: In file included from Simon64128SSE4.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_SSE4_64block.h:5:23: fatal error: x86intrin.h: No such file or directory
stream.c: #include <x86intrin.h>
stream.c: ^
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 63, namely:
CompilerImplementations
cc sse4
gcc sse4
gcc -O2 -fomit-frame-pointer sse4
gcc -O3 -fomit-frame-pointer sse4
gcc -O -fomit-frame-pointer sse4
gcc -Os -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O -fomit-frame-pointer sse4
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse4
gcc -funroll-loops sse4
gcc -funroll-loops -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -O -fomit-frame-pointer sse4
gcc -funroll-loops -Os -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a15 -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a15 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a15 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a15 -mfpu=neon -O -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a15 -mfpu=neon -Os -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a8 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a8 -mfpu=neon -O -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a8 -mfpu=neon -Os -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer sse4
gcc -mcpu=cortex-a9 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a9 -mfpu=neon -O -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=cortex-a9 -mfpu=neon -Os -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv sse4
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv sse4

Compiler output

Implementation: crypto_stream/simon64128ctr/neon
Compiler: cc
stream.c: In file included from Intrinsics_NEON_64block.h:5:0,
stream.c: from Simon64128NEON.h:17,
stream.c: from stream.c:20:
stream.c: /usr/lib/gcc/arm-linux-gnueabihf/4.8/include/arm_neon.h:32:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
stream.c: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
stream.c: ^
stream.c: In file included from Simon64128NEON.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_NEON_64block.h:10:14: error: unknown type name 'uint32x4_t'
stream.c: #define u128 uint32x4_t
stream.c: ^
stream.c: stream.c:23:84: note: in expansion of macro 'u128'
stream.c: inline __attribute__((always_inline)) int Encrypt(unsigned char *out, u32 nonce[], u128 rk[][8], u32 key[], int numbytes);
stream.c: ^
stream.c: Intrinsics_NEON_64block.h:10:14: error: unknown type name 'uint32x4_t'
stream.c: #define u128 uint32x4_t
stream.c: ^
stream.c: stream.c:25:113: note: in expansion of macro 'u128'
stream.c: inline __attribute__((always_inline)) int Encrypt_Xor(unsigned char *out, const unsigned char *in, u32 nonce[], u128 rk[][8], u32 key[], int numbytes);
stream.c: ^
stream.c: Intrinsics_NEON_64block.h:10:14: error: unknown type name 'uint32x4_t'
stream.c: #define u128 uint32x4_t
stream.c: ^
stream.c: stream.c:26:64: note: in expansion of macro 'u128'
stream.c: inline __attribute__((always_inline)) int ExpandKeyBS(u32 K[], u128 rk[][8],int n);
stream.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc neon

Compiler output

Implementation: crypto_stream/simon64128ctr/avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
stream.c: In file included from stream.c:20:
stream.c: In file included from ./Simon64128AVX2.h:17:
stream.c: In file included from ./Intrinsics_AVX2_64block.h:5:
stream.c: In file included from /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/x86intrin.h:29:
stream.c: In file included from /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/immintrin.h:27:
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:45:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:69:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:75:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:81:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:87:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:93:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:99:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
stream.c: ...

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -march=native -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 -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=cortex-a15 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: crypto_stream/simon64128ctr/sse4
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
stream.c: In file included from stream.c:20:
stream.c: In file included from ./Simon64128SSE4.h:17:
stream.c: In file included from ./Intrinsics_SSE4_64block.h:5:
stream.c: In file included from /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/x86intrin.h:29:
stream.c: In file included from /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/immintrin.h:27:
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:45:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:69:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:75:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:81:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:87:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:93:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
stream.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/mmintrin.h:99:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
stream.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
stream.c: ...

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments sse4
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments sse4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse4
clang -mcpu=cortex-a15 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse4
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse4
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse4
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse4

Compiler output

Implementation: crypto_stream/simon64128ctr/neon
Compiler: clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -Qunused-arguments
stream.c: In file included from stream.c:20:
stream.c: In file included from ./Simon64128NEON.h:17:
stream.c: In file included from ./Intrinsics_NEON_64block.h:5:
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:28:2: error: "NEON support not enabled"
stream.c: #error "NEON support not enabled"
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:48:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(8))) int8_t int8x8_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:49:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(16))) int8_t int8x16_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:50:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(4))) int16_t int16x4_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:51:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(8))) int16_t int16x8_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:52:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(2))) int32_t int32x2_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:53:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: typedef __attribute__((neon_vector_type(4))) int32_t int32x4_t;
stream.c: ^
stream.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/arm_neon.h:54:24: error: 'neon_vector_type' attribute is not supported for this target
stream.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -Qunused-arguments neon

Compiler output

Implementation: crypto_stream/simon64128ctr/neon
Compiler: gcc
stream.c: In file included from stream.c:20:0:
stream.c: Intrinsics_NEON_64block.h:21:18: warning: 'vcombine_u32' is static but used in inline function 'ExpandKeyBS' which is not static
stream.c: #define SET(a,b) vcombine_u32((uint32x2_t)(a),(uint32x2_t)(b))
stream.c: ^
stream.c: Simon64128NEON.h:102:35: note: in definition of macro 'RKBS8'
stream.c: rk[r][0]= _V ^ rk[r-4][0] ^ rk[r-1][3] ^ rk[r-3][0] ^ rk[r-1][4] ^ rk[r-3][1])
stream.c: ^~
stream.c: Simon64128NEON.h:93:13: note: in expansion of macro 'SET'
stream.c: #define _C8 SET(0xffffff00ffffff00LL,0xffffff00ffffff00LL)
stream.c: ^~~
stream.c: Simon64128NEON.h:110:86: note: in expansion of macro '_C8'
stream.c: RKBS8(rk,40,_D8), RKBS8(rk,41,_C8), RKBS8(rk,42,_C8), RKBS8(rk,43,_C8))
stream.c: ^~~
stream.c: stream.c:341:8: note: in expansion of macro 'EKBS8'
stream.c: else EKBS8(rk);
stream.c: ^~~~~
stream.c: In file included from Simon64128NEON.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_NEON_64block.h:21:18: warning: 'vcombine_u32' is static but used in inline function 'ExpandKeyBS' which is not static
stream.c: #define SET(a,b) vcombine_u32((uint32x2_t)(a),(uint32x2_t)(b))
stream.c: ^
stream.c: Simon64128NEON.h:93:13: note: in expansion of macro 'SET'
stream.c: #define _C8 SET(0xffffff00ffffff00LL,0xffffff00ffffff00LL)
stream.c: ^~~
stream.c: Simon64128NEON.h:101:35: note: in expansion of macro '_C8'
stream.c: ...

Number of similar (compiler,implementation) pairs: 62, namely:
CompilerImplementations
gcc neon
gcc -O2 -fomit-frame-pointer neon
gcc -O3 -fomit-frame-pointer neon
gcc -O -fomit-frame-pointer neon
gcc -Os -fomit-frame-pointer neon
gcc -fno-schedule-insns -O2 -fomit-frame-pointer neon
gcc -fno-schedule-insns -O3 -fomit-frame-pointer neon
gcc -fno-schedule-insns -O -fomit-frame-pointer neon
gcc -fno-schedule-insns -Os -fomit-frame-pointer neon
gcc -funroll-loops neon
gcc -funroll-loops -O2 -fomit-frame-pointer neon
gcc -funroll-loops -O3 -fomit-frame-pointer neon
gcc -funroll-loops -O -fomit-frame-pointer neon
gcc -funroll-loops -Os -fomit-frame-pointer neon
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer neon
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer neon
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer neon
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer neon
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv neon
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv neon
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv neon
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a15 -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a15 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a15 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a15 -mfpu=neon -O -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a15 -mfpu=neon -Os -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a8 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a8 -mfpu=neon -O -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a8 -mfpu=neon -Os -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer neon
gcc -mcpu=cortex-a9 -mfpu=neon -O2 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a9 -mfpu=neon -O -fomit-frame-pointer -fwrapv neon
gcc -mcpu=cortex-a9 -mfpu=neon -Os -fomit-frame-pointer -fwrapv neon
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv neon
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv neon
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv neon

Compiler output

Implementation: crypto_stream/simon64128ctr/avx2
Compiler: gcc -mcpu=arm250 -O2 -fomit-frame-pointer
stream.c: stream.c:1:0: warning: target CPU does not support THUMB instructions
stream.c: //AVX2 C code for SIMON 64/128
stream.c:
stream.c: In file included from Simon64128AVX2.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_AVX2_64block.h:5:23: fatal error: x86intrin.h: No such file or directory
stream.c: #include <x86intrin.h>
stream.c: ^
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 108, namely:
CompilerImplementations
gcc -mcpu=arm250 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm250 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm250 -O -fomit-frame-pointer avx2
gcc -mcpu=arm250 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm2 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm2 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm2 -O -fomit-frame-pointer avx2
gcc -mcpu=arm2 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm3 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm3 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm3 -O -fomit-frame-pointer avx2
gcc -mcpu=arm3 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm600 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm600 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm600 -O -fomit-frame-pointer avx2
gcc -mcpu=arm600 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm60 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm60 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm60 -O -fomit-frame-pointer avx2
gcc -mcpu=arm60 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm610 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm610 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm610 -O -fomit-frame-pointer avx2
gcc -mcpu=arm610 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm620 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm620 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm620 -O -fomit-frame-pointer avx2
gcc -mcpu=arm620 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm6 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm6 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm6 -O -fomit-frame-pointer avx2
gcc -mcpu=arm6 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm700 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm700 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm700 -O -fomit-frame-pointer avx2
gcc -mcpu=arm700 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm700i -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm700i -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm700i -O -fomit-frame-pointer avx2
gcc -mcpu=arm700i -Os -fomit-frame-pointer avx2
gcc -mcpu=arm70 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm70 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm70 -O -fomit-frame-pointer avx2
gcc -mcpu=arm70 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7100 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7100 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7100 -O -fomit-frame-pointer avx2
gcc -mcpu=arm7100 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm710 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm710 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm710 -O -fomit-frame-pointer avx2
gcc -mcpu=arm710 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm710c -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm710c -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm710c -O -fomit-frame-pointer avx2
gcc -mcpu=arm710c -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7500 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7500 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7500 -O -fomit-frame-pointer avx2
gcc -mcpu=arm7500 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7500fe -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7500fe -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7500fe -O -fomit-frame-pointer avx2
gcc -mcpu=arm7500fe -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7 -O -fomit-frame-pointer avx2
gcc -mcpu=arm7 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7d -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7d -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7d -O -fomit-frame-pointer avx2
gcc -mcpu=arm7d -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7di -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7di -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7di -O -fomit-frame-pointer avx2
gcc -mcpu=arm7di -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7dm -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7dm -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7dm -O -fomit-frame-pointer avx2
gcc -mcpu=arm7dm -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7dmi -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7dmi -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7dmi -O -fomit-frame-pointer avx2
gcc -mcpu=arm7dmi -Os -fomit-frame-pointer avx2
gcc -mcpu=arm7m -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm7m -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm7m -O -fomit-frame-pointer avx2
gcc -mcpu=arm7m -Os -fomit-frame-pointer avx2
gcc -mcpu=arm810 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm810 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm810 -O -fomit-frame-pointer avx2
gcc -mcpu=arm810 -Os -fomit-frame-pointer avx2
gcc -mcpu=arm8 -O2 -fomit-frame-pointer avx2
gcc -mcpu=arm8 -O3 -fomit-frame-pointer avx2
gcc -mcpu=arm8 -O -fomit-frame-pointer avx2
gcc -mcpu=arm8 -Os -fomit-frame-pointer avx2
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer avx2
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer avx2
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer avx2
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer avx2
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer avx2
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer avx2
gcc -mcpu=strongarm110 -O -fomit-frame-pointer avx2
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer avx2
gcc -mcpu=strongarm -O2 -fomit-frame-pointer avx2
gcc -mcpu=strongarm -O3 -fomit-frame-pointer avx2
gcc -mcpu=strongarm -O -fomit-frame-pointer avx2
gcc -mcpu=strongarm -Os -fomit-frame-pointer avx2

Compiler output

Implementation: crypto_stream/simon64128ctr/sse4
Compiler: gcc -mcpu=arm250 -O2 -fomit-frame-pointer
stream.c: stream.c:1:0: warning: target CPU does not support THUMB instructions
stream.c: //SSE4 C code for SIMON 64/128.
stream.c:
stream.c: In file included from Simon64128SSE4.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_SSE4_64block.h:5:23: fatal error: x86intrin.h: No such file or directory
stream.c: #include <x86intrin.h>
stream.c: ^
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 108, namely:
CompilerImplementations
gcc -mcpu=arm250 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm250 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm250 -O -fomit-frame-pointer sse4
gcc -mcpu=arm250 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm2 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm2 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm2 -O -fomit-frame-pointer sse4
gcc -mcpu=arm2 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm3 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm3 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm3 -O -fomit-frame-pointer sse4
gcc -mcpu=arm3 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm600 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm600 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm600 -O -fomit-frame-pointer sse4
gcc -mcpu=arm600 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm60 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm60 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm60 -O -fomit-frame-pointer sse4
gcc -mcpu=arm60 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm610 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm610 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm610 -O -fomit-frame-pointer sse4
gcc -mcpu=arm610 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm620 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm620 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm620 -O -fomit-frame-pointer sse4
gcc -mcpu=arm620 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm6 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm6 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm6 -O -fomit-frame-pointer sse4
gcc -mcpu=arm6 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm700 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm700 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm700 -O -fomit-frame-pointer sse4
gcc -mcpu=arm700 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm700i -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm700i -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm700i -O -fomit-frame-pointer sse4
gcc -mcpu=arm700i -Os -fomit-frame-pointer sse4
gcc -mcpu=arm70 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm70 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm70 -O -fomit-frame-pointer sse4
gcc -mcpu=arm70 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7100 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7100 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7100 -O -fomit-frame-pointer sse4
gcc -mcpu=arm7100 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm710 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm710 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm710 -O -fomit-frame-pointer sse4
gcc -mcpu=arm710 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm710c -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm710c -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm710c -O -fomit-frame-pointer sse4
gcc -mcpu=arm710c -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7500 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7500 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7500 -O -fomit-frame-pointer sse4
gcc -mcpu=arm7500 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7500fe -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7500fe -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7500fe -O -fomit-frame-pointer sse4
gcc -mcpu=arm7500fe -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7 -O -fomit-frame-pointer sse4
gcc -mcpu=arm7 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7d -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7d -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7d -O -fomit-frame-pointer sse4
gcc -mcpu=arm7d -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7di -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7di -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7di -O -fomit-frame-pointer sse4
gcc -mcpu=arm7di -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7dm -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7dm -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7dm -O -fomit-frame-pointer sse4
gcc -mcpu=arm7dm -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7dmi -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7dmi -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7dmi -O -fomit-frame-pointer sse4
gcc -mcpu=arm7dmi -Os -fomit-frame-pointer sse4
gcc -mcpu=arm7m -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm7m -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm7m -O -fomit-frame-pointer sse4
gcc -mcpu=arm7m -Os -fomit-frame-pointer sse4
gcc -mcpu=arm810 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm810 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm810 -O -fomit-frame-pointer sse4
gcc -mcpu=arm810 -Os -fomit-frame-pointer sse4
gcc -mcpu=arm8 -O2 -fomit-frame-pointer sse4
gcc -mcpu=arm8 -O3 -fomit-frame-pointer sse4
gcc -mcpu=arm8 -O -fomit-frame-pointer sse4
gcc -mcpu=arm8 -Os -fomit-frame-pointer sse4
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer sse4
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer sse4
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer sse4
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer sse4
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer sse4
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer sse4
gcc -mcpu=strongarm110 -O -fomit-frame-pointer sse4
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer sse4
gcc -mcpu=strongarm -O2 -fomit-frame-pointer sse4
gcc -mcpu=strongarm -O3 -fomit-frame-pointer sse4
gcc -mcpu=strongarm -O -fomit-frame-pointer sse4
gcc -mcpu=strongarm -Os -fomit-frame-pointer sse4

Compiler output

Implementation: crypto_stream/simon64128ctr/neon
Compiler: gcc -mcpu=arm250 -O2 -fomit-frame-pointer
stream.c: stream.c:1:0: warning: target CPU does not support THUMB instructions
stream.c: //NEON C code for SIMON 64/128.
stream.c:
stream.c: In file included from stream.c:20:0:
stream.c: Intrinsics_NEON_64block.h:21:18: warning: 'vcombine_u32' is static but used in inline function 'ExpandKeyBS' which is not static
stream.c: #define SET(a,b) vcombine_u32((uint32x2_t)(a),(uint32x2_t)(b))
stream.c: ^
stream.c: Simon64128NEON.h:102:35: note: in definition of macro 'RKBS8'
stream.c: rk[r][0]= _V ^ rk[r-4][0] ^ rk[r-1][3] ^ rk[r-3][0] ^ rk[r-1][4] ^ rk[r-3][1])
stream.c: ^~
stream.c: Simon64128NEON.h:93:13: note: in expansion of macro 'SET'
stream.c: #define _C8 SET(0xffffff00ffffff00LL,0xffffff00ffffff00LL)
stream.c: ^~~
stream.c: Simon64128NEON.h:110:86: note: in expansion of macro '_C8'
stream.c: RKBS8(rk,40,_D8), RKBS8(rk,41,_C8), RKBS8(rk,42,_C8), RKBS8(rk,43,_C8))
stream.c: ^~~
stream.c: stream.c:341:8: note: in expansion of macro 'EKBS8'
stream.c: else EKBS8(rk);
stream.c: ^~~~~
stream.c: In file included from Simon64128NEON.h:17:0,
stream.c: from stream.c:20:
stream.c: Intrinsics_NEON_64block.h:21:18: warning: 'vcombine_u32' is static but used in inline function 'ExpandKeyBS' which is not static
stream.c: #define SET(a,b) vcombine_u32((uint32x2_t)(a),(uint32x2_t)(b))
stream.c: ^
stream.c: Simon64128NEON.h:93:13: note: in expansion of macro 'SET'
stream.c: ...

Number of similar (compiler,implementation) pairs: 108, namely:
CompilerImplementations
gcc -mcpu=arm250 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm250 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm250 -O -fomit-frame-pointer neon
gcc -mcpu=arm250 -Os -fomit-frame-pointer neon
gcc -mcpu=arm2 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm2 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm2 -O -fomit-frame-pointer neon
gcc -mcpu=arm2 -Os -fomit-frame-pointer neon
gcc -mcpu=arm3 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm3 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm3 -O -fomit-frame-pointer neon
gcc -mcpu=arm3 -Os -fomit-frame-pointer neon
gcc -mcpu=arm600 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm600 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm600 -O -fomit-frame-pointer neon
gcc -mcpu=arm600 -Os -fomit-frame-pointer neon
gcc -mcpu=arm60 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm60 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm60 -O -fomit-frame-pointer neon
gcc -mcpu=arm60 -Os -fomit-frame-pointer neon
gcc -mcpu=arm610 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm610 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm610 -O -fomit-frame-pointer neon
gcc -mcpu=arm610 -Os -fomit-frame-pointer neon
gcc -mcpu=arm620 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm620 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm620 -O -fomit-frame-pointer neon
gcc -mcpu=arm620 -Os -fomit-frame-pointer neon
gcc -mcpu=arm6 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm6 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm6 -O -fomit-frame-pointer neon
gcc -mcpu=arm6 -Os -fomit-frame-pointer neon
gcc -mcpu=arm700 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm700 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm700 -O -fomit-frame-pointer neon
gcc -mcpu=arm700 -Os -fomit-frame-pointer neon
gcc -mcpu=arm700i -O2 -fomit-frame-pointer neon
gcc -mcpu=arm700i -O3 -fomit-frame-pointer neon
gcc -mcpu=arm700i -O -fomit-frame-pointer neon
gcc -mcpu=arm700i -Os -fomit-frame-pointer neon
gcc -mcpu=arm70 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm70 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm70 -O -fomit-frame-pointer neon
gcc -mcpu=arm70 -Os -fomit-frame-pointer neon
gcc -mcpu=arm7100 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7100 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7100 -O -fomit-frame-pointer neon
gcc -mcpu=arm7100 -Os -fomit-frame-pointer neon
gcc -mcpu=arm710 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm710 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm710 -O -fomit-frame-pointer neon
gcc -mcpu=arm710 -Os -fomit-frame-pointer neon
gcc -mcpu=arm710c -O2 -fomit-frame-pointer neon
gcc -mcpu=arm710c -O3 -fomit-frame-pointer neon
gcc -mcpu=arm710c -O -fomit-frame-pointer neon
gcc -mcpu=arm710c -Os -fomit-frame-pointer neon
gcc -mcpu=arm7500 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7500 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7500 -O -fomit-frame-pointer neon
gcc -mcpu=arm7500 -Os -fomit-frame-pointer neon
gcc -mcpu=arm7500fe -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7500fe -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7500fe -O -fomit-frame-pointer neon
gcc -mcpu=arm7500fe -Os -fomit-frame-pointer neon
gcc -mcpu=arm7 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7 -O -fomit-frame-pointer neon
gcc -mcpu=arm7 -Os -fomit-frame-pointer neon
gcc -mcpu=arm7d -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7d -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7d -O -fomit-frame-pointer neon
gcc -mcpu=arm7d -Os -fomit-frame-pointer neon
gcc -mcpu=arm7di -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7di -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7di -O -fomit-frame-pointer neon
gcc -mcpu=arm7di -Os -fomit-frame-pointer neon
gcc -mcpu=arm7dm -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7dm -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7dm -O -fomit-frame-pointer neon
gcc -mcpu=arm7dm -Os -fomit-frame-pointer neon
gcc -mcpu=arm7dmi -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7dmi -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7dmi -O -fomit-frame-pointer neon
gcc -mcpu=arm7dmi -Os -fomit-frame-pointer neon
gcc -mcpu=arm7m -O2 -fomit-frame-pointer neon
gcc -mcpu=arm7m -O3 -fomit-frame-pointer neon
gcc -mcpu=arm7m -O -fomit-frame-pointer neon
gcc -mcpu=arm7m -Os -fomit-frame-pointer neon
gcc -mcpu=arm810 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm810 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm810 -O -fomit-frame-pointer neon
gcc -mcpu=arm810 -Os -fomit-frame-pointer neon
gcc -mcpu=arm8 -O2 -fomit-frame-pointer neon
gcc -mcpu=arm8 -O3 -fomit-frame-pointer neon
gcc -mcpu=arm8 -O -fomit-frame-pointer neon
gcc -mcpu=arm8 -Os -fomit-frame-pointer neon
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer neon
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer neon
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer neon
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer neon
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer neon
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer neon
gcc -mcpu=strongarm110 -O -fomit-frame-pointer neon
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer neon
gcc -mcpu=strongarm -O2 -fomit-frame-pointer neon
gcc -mcpu=strongarm -O3 -fomit-frame-pointer neon
gcc -mcpu=strongarm -O -fomit-frame-pointer neon
gcc -mcpu=strongarm -Os -fomit-frame-pointer neon