Implementation notes: armeabi, pi2, crypto_core/aes128decrypt

Computer: pi2
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20160731
Operation: crypto_core
Primitive: aes128decrypt
TimeImplementationCompilerBenchmark dateSUPERCOP version
1786dolbeau/std-1rt-nodkclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
1962dolbeau/std-4rt-nodkgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
1964dolbeau/std-4rt-nodkgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
2012dolbeau/std-1rt-nodkgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
2034dolbeau/std-2rt-nodkgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
2054dolbeau/std-2rt-nodkclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
2080dolbeau/std-2rt-nodkgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
2252dolbeau/std-2rt-nodkgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
2258opensslgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
2266opensslgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
2270opensslgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
2274opensslclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
2274opensslgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
2286dolbeau/std-1rt-nodkgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
2336dolbeau/std-1rt-nodkgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
2336dolbeau/std-4rt-nodkgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
2354dolbeau/std-4rt-nodkclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
2566dolbeau/std-1rt-nodkgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
2712dolbeau/std-2rt-nodkgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
2928dolbeau/std-4rt-nodkgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
940518refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
1390660refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
2408283refgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
2434707refgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
3056540refgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/armv8crypto
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
core.c: core.c:21:16: warning: implicit declaration of function 'vaesimcq_u8' is invalid in C99 [-Wimplicit-function-declaration]
core.c: rkeys[i] = vaesimcq_u8(tkeys[10-i]);
core.c: ^
core.c: core.c:21:14: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
core.c: rkeys[i] = vaesimcq_u8(tkeys[10-i]);
core.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:58:10: warning: implicit declaration of function 'vaesdq_u8' is invalid in C99 [-Wimplicit-function-declaration]
core.c: temp = vaesdq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^
core.c: core.c:58:8: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
core.c: temp = vaesdq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: 2 warnings and 2 errors generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/armv8crypto

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/armv8crypto
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
core.c: In file included from core.c:9:0:
core.c: core.c: In function 'aes128_setkey_armv8_decrypt':
core.c: /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/6.1.1/include/arm_neon.h:14742:1: error: inlining failed in call to always_inline 'vaesimcq_u8': target specific option mismatch
core.c: vaesimcq_u8 (uint8x16_t __data)
core.c: ^~~~~~~~~~~
core.c: core.c:21:16: note: called from here
core.c: rkeys[i] = vaesimcq_u8(tkeys[10-i]);
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv dolbeau/armv8crypto