Implementation notes: armeabi, h6dragon, crypto_stream/cryptmtv3

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: cryptmtv3
TimeImplementationCompilerBenchmark dateSUPERCOP version
18879e/v3clang -O3 -fwrapv -mavx -fomit-frame-pointer2014101920141014
18881e/v3clang -O3 -fomit-frame-pointer2014101920141014
18881e/v3clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101920141014
18883e/v3clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer 2014101920141014
18883e/v3clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
18902e/v3clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101920141014
18904e/v3clang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101920141014
18904e/v3clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
18904e/v3clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
18906e/v3clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101920141014
18912e/v3clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer 2014101920141014
19750e/v3gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014101920141014
20233e/v3gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101920141014
20295e/v3gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101920141014
20343e/v3gcc -mcpu=arm8 -O3 -fomit-frame-pointer2014101920141014
20350e/v3gcc -mcpu=arm810 -O3 -fomit-frame-pointer2014101920141014
20606e/v3gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101920141014
20650e/v3gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014101920141014
20663e/v3gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014101920141014
20668e/v3gcc -mcpu=strongarm -O3 -fomit-frame-pointer2014101920141014
21045e/v3gcc -O3 -fomit-frame-pointer2014101920141014
21082e/v3gcc -funroll-loops -O3 -fomit-frame-pointer2014101920141014
22294e/v3gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014101920141014
22606e/v3gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101920141014
23170e/v3gcc -funroll-loops -O2 -fomit-frame-pointer2014101920141014
23564e/v3gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101920141014
24113e/v3gcc -funroll-loops -O -fomit-frame-pointer2014101920141014
24283e/v3gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101920141014
25480e/v3gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101920141014
25763e/v3gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014101920141014
26105e/v3gcc -mcpu=arm8 -Os -fomit-frame-pointer2014101920141014
26145e/v3gcc -Os -fomit-frame-pointer2014101920141014
26145e/v3gcc -fno-schedule-insns -Os -fomit-frame-pointer2014101920141014
26156e/v3gcc -mcpu=strongarm -Os -fomit-frame-pointer2014101920141014
26159e/v3gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014101920141014
26160e/v3gcc -mcpu=arm810 -Os -fomit-frame-pointer2014101920141014
26170e/v3gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014101920141014
26175e/v3gcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014101920141014
26308e/v3gcc -mcpu=strongarm -O2 -fomit-frame-pointer2014101920141014
26337e/v3gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014101920141014
26337e/v3gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014101920141014
26712e/v3gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014101920141014
27306e/v3gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101920141014
27389e/v3gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101920141014
27442e/v3gcc -mcpu=arm810 -O -fomit-frame-pointer2014101920141014
27448e/v3gcc -mcpu=arm8 -O -fomit-frame-pointer2014101920141014
27449e/v3gcc -mcpu=strongarm -O -fomit-frame-pointer2014101920141014
27456e/v3gcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014101920141014
27460e/v3gcc -mcpu=strongarm110 -O -fomit-frame-pointer2014101920141014
27525e/v3gcc -mcpu=arm810 -O2 -fomit-frame-pointer2014101920141014
27568e/v3gcc -mcpu=arm8 -O2 -fomit-frame-pointer2014101920141014
27947e/v3gcc -O2 -fomit-frame-pointer2014101920141014
28239e/v3gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101920141014
28770e/v3gcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014101920141014
28792e/v3gcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014101920141014
28836e/v3gcc -fno-schedule-insns -O -fomit-frame-pointer2014101920141014
28845e/v3gcc -O -fomit-frame-pointer2014101920141014
29048e/v3gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101920141014
29101e/v3gcc -funroll-loops -Os -fomit-frame-pointer2014101920141014
29106e/v3gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014101920141014
29183e/v3gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101920141014
29825e/v3gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101920141014
30328e/v3gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101920141014
137173e/v3cc2014101920141014
137173e/v3gcc2014101920141014
137200e/v3gcc -funroll-loops2014101920141014

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fomit-frame-pointer
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

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

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive
api.c: clang: warning: argument unused during compilation: '-fpolly'
api.c: clang: warning: argument unused during compilation: '-fvectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fpolly'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fvectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive e/v3
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx2'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx2'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx2'
api.c: clang: warning: argument unused during compilation: '-fpolly'
api.c: clang: warning: argument unused during compilation: '-fvectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx2'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fpolly'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fvectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx'
api.c: clang: warning: argument unused during compilation: '-fpolly'
api.c: clang: warning: argument unused during compilation: '-fvectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fpolly'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fvectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx'
api.c: clang: warning: argument unused during compilation: '-maes'
api.c: clang: warning: argument unused during compilation: '-mpclmul'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-maes'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mpclmul'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
api.c: clang: warning: argument unused during compilation: '-mavx'
api.c: clang: warning: argument unused during compilation: '-maes'
api.c: clang: warning: argument unused during compilation: '-mpclmul'
api.c: clang: warning: argument unused during compilation: '-fpolly'
api.c: clang: warning: argument unused during compilation: '-fvectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
api.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mavx'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-maes'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-mpclmul'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fpolly'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fvectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
cryptmt-v3.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
cryptmt-v3.c: In file included from cryptmt-v3.c:1:
cryptmt-v3.c: ./e/cryptmt-v3.c:189:18: warning: array index 156 is past the end of the array (which contains 156 elements) [-Warray-bounds]
cryptmt-v3.c: do_recursion(ps->gt;sfmt[N], ps->gt;sfmt[POS1], ps->gt;sfmt[N - 1]);
cryptmt-v3.c: ^ ~
cryptmt-v3.c: ./e/cryptmt-v3.c:25:5: note: array 'sfmt' declared here
cryptmt-v3.c: u32 sfmt[N][4];
cryptmt-v3.c: ^
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: warning: 'memset' call operates on objects of type 'ECRYPT_ctx' while the size is based on a different type 'ECRYPT_ctx *' [-Wsizeof-pointer-memaccess]
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ~~~ ^~~
cryptmt-v3.c: ./e/cryptmt-v3.c:403:27: note: did you mean to dereference the argument to 'sizeof' (and multiply it by the number of elements)?
cryptmt-v3.c: memset(ctx, 0, sizeof(ctx));
cryptmt-v3.c: ^~~
cryptmt-v3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer e/v3

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
api.c: api.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
cryptmt-v3.c: cryptmt-v3.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer e/v3
gcc -mcpu=arm810 -O3 -fomit-frame-pointer e/v3
gcc -mcpu=arm810 -O -fomit-frame-pointer e/v3
gcc -mcpu=arm810 -Os -fomit-frame-pointer e/v3
gcc -mcpu=arm8 -O2 -fomit-frame-pointer e/v3
gcc -mcpu=arm8 -O3 -fomit-frame-pointer e/v3
gcc -mcpu=arm8 -O -fomit-frame-pointer e/v3
gcc -mcpu=arm8 -Os -fomit-frame-pointer e/v3
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer e/v3
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer e/v3
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm110 -O -fomit-frame-pointer e/v3
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer e/v3
gcc -mcpu=strongarm -O2 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm -O3 -fomit-frame-pointer e/v3
gcc -mcpu=strongarm -O -fomit-frame-pointer e/v3
gcc -mcpu=strongarm -Os -fomit-frame-pointer e/v3