Implementation notes: armeabi, novena, crypto_core/aes128encrypt

Computer: novena
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20220506
Operation: crypto_core
Primitive: aes128encrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
200072 0 012767 428 712T:opensslclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
200072 0 012359 428 720T:opensslclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
200072 0 011157 424 712T:opensslclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
200072 0 011005 424 712T:opensslclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
200072 0 020863 428 728T:opensslclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
200036 0 08510 432 712T:opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
200036 0 09766 432 712T:opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
200036 0 08349 428 712T:opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
200036 0 07902 424 712T:opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24002896 0 015397 420 712T:dolbeau/std-1ftclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24003452 0 015541 420 720T:dolbeau/std-1ftclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24002896 0 013651 416 712T:dolbeau/std-1ftclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24003436 0 024045 420 728T:dolbeau/std-1ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24002876 0 011243 416 712T:dolbeau/std-1ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24003344 0 012971 416 712T:dolbeau/std-1ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24002856 0 010571 408 712T:dolbeau/std-1ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24003936 0 016437 420 712T:dolbeau/std-2ftclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24004492 0 016581 420 720T:dolbeau/std-2ftclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24003936 0 014691 416 712T:dolbeau/std-2ftclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24004476 0 025085 420 728T:dolbeau/std-2ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24003896 0 012259 416 712T:dolbeau/std-2ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24006076 0 018573 420 712T:dolbeau/std-4ftclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24006588 0 018677 420 720T:dolbeau/std-4ftclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24006144 0 017003 416 712T:dolbeau/std-4ftclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24006600 0 027213 420 728T:dolbeau/std-4ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
24005924 0 014291 416 712T:dolbeau/std-4ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24006428 0 016051 416 712T:dolbeau/std-4ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24005920 0 014098 412 712T:dolbeau/std-4ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24005940 0 013659 408 712T:dolbeau/std-4ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
24024352 0 013979 416 712T:dolbeau/std-2ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
27992828 0 011002 412 712T:dolbeau/std-1ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
28003180 0 014035 416 712T:dolbeau/std-1ftclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
28004200 0 015059 416 712T:dolbeau/std-2ftclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
28003840 0 012018 412 712T:dolbeau/std-2ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
28013880 0 011595 408 712T:dolbeau/std-2ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
40006076 0 016827 416 712T:dolbeau/std-4ftclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
4448362556 0 012111 416 712refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
5736453276 0 023857 420 728refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
6000483276 0 015353 420 720refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
8136662716 0 015209 420 712refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
12713021508 0 012231 416 712refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
12901051038 0 08735 408 712refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
13085051084 0 09383 416 712refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506
14573171516 0 012375 416 712refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060320220506
17801441062 0 09206 412 712refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060320220506

Compiler output

Implementation: T:dolbeau/armv8crypto
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
core.c: In file included from core.c:9:
core.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/arm_neon.h:32:2: error: "NEON support not enabled"
core.c: #error "NEON support not enabled"
core.c: ^
core.c: core.c:15:3: error: use of undeclared identifier 'uint8x16_t'
core.c: uint8x16_t temp = vld1q_u8(n);
core.c: ^
core.c: core.c:29:5: error: use of undeclared identifier 'uint32x4_t'
core.c: uint32x4_t t;
core.c: ^
core.c: core.c:30:5: error: use of undeclared identifier 't'
core.c: t = vld1q_u32((unsigned int*)(rkeys+i*16));\
core.c: ^
core.c: core.c:30:9: warning: implicit declaration of function 'vld1q_u32' is invalid in C99 [-Wimplicit-function-declaration]
core.c: t = vld1q_u32((unsigned int*)(rkeys+i*16));\
core.c: ^
core.c: core.c:31:62: error: use of undeclared identifier 'temp'
core.c: asm("aese %0.16b, %1.16b\naesmc %0.16b, %0.16b\n" : "+w"(temp) : "w"(t));
core.c: ^
core.c: core.c:46:3: error: use of undeclared identifier 'temp'
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^
core.c: core.c:46:10: warning: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Wimplicit-function-declaration]
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^
core.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:dolbeau/armv8crypto
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:dolbeau/armv8crypto
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:dolbeau/armv8crypto
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:dolbeau/armv8crypto

Compiler output

Implementation: T:dolbeau/armv8crypto
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
core.c: core.c:46:10: warning: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Wimplicit-function-declaration]
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^
core.c: core.c:46:8: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: 1 warning and 1 error generated.

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

Compiler output

Implementation: T:dolbeau/armv8crypto
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
core.c: In file included from core.c:9:
core.c: core.c: In function ‘aes128_armv8_encrypt’:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/10/include/arm_neon.h:10403:1: error: inlining failed in call to ‘always_inline’ ‘vld1q_u8’: target specific option mismatch
core.c: 10403 | vld1q_u8 (const uint8_t * __a)
core.c: | ^~~~~~~~
core.c: core.c:15:21: note: called from here
core.c: 15 | uint8x16_t temp = vld1q_u8(n);
core.c: | ^~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/10/include/arm_neon.h:10417:1: error: inlining failed in call to ‘always_inline’ ‘vld1q_u32’: target specific option mismatch
core.c: 10417 | vld1q_u32 (const uint32_t * __a)
core.c: | ^~~~~~~~~
core.c: core.c:30:9: note: called from here
core.c: 30 | t = vld1q_u32((unsigned int*)(rkeys+i*16));\
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/10/include/arm_neon.h:10981:1: error: inlining failed in call to ‘always_inline’ ‘vst1q_u8’: target specific option mismatch
core.c: 10981 | vst1q_u8 (uint8_t * __a, uint8x16_t __b)
core.c: | ^~~~~~~~
core.c: core.c:49:3: note: called from here
core.c: 49 | vst1q_u8(out, temp);
core.c: | ^~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/10/include/arm_neon.h:14048:1: error: inlining failed in call to ‘always_inline’ ‘veorq_u8’: target specific option mismatch
core.c: 14048 | veorq_u8 (uint8x16_t __a, uint8x16_t __b)
core.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:dolbeau/armv8crypto
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:dolbeau/armv8crypto
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:dolbeau/armv8crypto
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:dolbeau/armv8crypto