Implementation notes: armeabi, tinker, crypto_aead/hs1sivhiv2

Computer: tinker
Microarchitecture: armeabi; Cortex-A17 (410fc0d1)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
841918884 0 028350 420 824T:fasterclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
997346561 0 023633 392 824T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1041586350 0 025810 420 824T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
1097894365 0 020709 392 824T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1174382758 0 015837 384 816T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1542533877 0 018841 392 816T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107

Test failure

Implementation: T:faster
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

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

Compiler output

Implementation: T:dolbeau/armv8crypto
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:54:
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/arm_neon.h:32:2: error: "NEON support not enabled"
encrypt.c: #error "NEON support not enabled"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:23:3: error: unknown type name 'uint32x4_t'; did you mean 'uint32_t'?
encrypt.c: uint32x4_t x_0 = vdupq_n_u32(x[0]);
encrypt.c: ^~~~~~~~~~
encrypt.c: uint32_t
encrypt.c: /usr/include/arm-linux-gnueabihf/bits/stdint-uintn.h:26:20: note: 'uint32_t' declared here
encrypt.c: typedef __uint32_t uint32_t;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:23:20: warning: implicit declaration of function 'vdupq_n_u32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: uint32x4_t x_0 = vdupq_n_u32(x[0]);
encrypt.c: ^
encrypt.c: ./c256.h:24:3: error: unknown type name 'uint32x4_t'; did you mean 'uint32_t'?
encrypt.c: uint32x4_t x_1 = vdupq_n_u32(x[1]);
encrypt.c: ^~~~~~~~~~
encrypt.c: uint32_t
encrypt.c: /usr/include/arm-linux-gnueabihf/bits/stdint-uintn.h:26:20: note: 'uint32_t' declared here
encrypt.c: typedef __uint32_t uint32_t;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:25:3: error: unknown type name 'uint32x4_t'; did you mean 'uint32_t'?
encrypt.c: ...

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
encrypt.c: In file included from encrypt.c:192:
encrypt.c: c256.h: In function ‘chacha_noxor368’:
encrypt.c: c256.h:134:13: warning: implicit declaration of function ‘vtrn1q_u32’; did you mean ‘vtrnq_u32’? [-Wimplicit-function-declaration]
encrypt.c: 134 | t0l = vtrn1q_u32(x_##a,x_##b); \
encrypt.c: | ^~~~~~~~~~
encrypt.c: c256.h:148:5: note: in expansion of macro ‘ONEQUAD_TRANSPOSE_NOXOR’
encrypt.c: 148 | ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:134:13: error: incompatible types when assigning to type ‘uint32x4_t’ from type ‘int’
encrypt.c: 134 | t0l = vtrn1q_u32(x_##a,x_##b); \
encrypt.c: | ^~~~~~~~~~
encrypt.c: c256.h:148:5: note: in expansion of macro ‘ONEQUAD_TRANSPOSE_NOXOR’
encrypt.c: 148 | ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:135:13: warning: implicit declaration of function ‘vtrn2q_u32’; did you mean ‘vtrnq_u32’? [-Wimplicit-function-declaration]
encrypt.c: 135 | t0h = vtrn2q_u32(x_##a,x_##b); \
encrypt.c: | ^~~~~~~~~~
encrypt.c: c256.h:148:5: note: in expansion of macro ‘ONEQUAD_TRANSPOSE_NOXOR’
encrypt.c: 148 | ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:135:13: error: incompatible types when assigning to type ‘uint32x4_t’ from type ‘int’
encrypt.c: 135 | t0h = vtrn2q_u32(x_##a,x_##b); \
encrypt.c: | ^~~~~~~~~~
encrypt.c: c256.h:148:5: note: in expansion of macro ‘ONEQUAD_TRANSPOSE_NOXOR’
encrypt.c: 148 | ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.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

Compiler output

Implementation: T:faster
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hs1.c: hs1.c:1033:30: warning: implicitly declaring library function 'malloc' with type 'void *(unsigned int)' [-Wimplicit-function-declaration]
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c: hs1.c:1033:30: note: include the header <stdlib.h> or explicitly provide a declaration for 'malloc'
hs1.c: hs1.c:1037:9: warning: implicitly declaring library function 'free' with type 'void (void *)' [-Wimplicit-function-declaration]
hs1.c: free(tmp);
hs1.c: ^
hs1.c: hs1.c:1037:9: note: include the header <stdlib.h> or explicitly provide a declaration for 'free'
hs1.c: 2 warnings generated.
try.c: /usr/bin/arm-linux-gnueabihf-ld: warning: chacha_moon.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/arm-linux-gnueabihf-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/arm-linux-gnueabihf-ld: warning: chacha_moon.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/arm-linux-gnueabihf-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
measure.c: /usr/bin/arm-linux-gnueabihf-ld: warning: chacha_moon.o: missing .note.GNU-stack section implies executable stack
measure.c: /usr/bin/arm-linux-gnueabihf-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

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

Compiler output

Implementation: T:faster
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hs1.c: hs1.c: In function ‘hs1siv_decrypt’:
hs1.c: hs1.c:1033:30: warning: implicit declaration of function ‘malloc’ [-Wimplicit-function-declaration]
hs1.c: 1033 | unsigned char *tmp = malloc(abytes);
hs1.c: | ^~~~~~
hs1.c: hs1.c:31:1: note: include ‘<stdlib.h>’ or provide a declaration of ‘malloc’
hs1.c: 30 | #include <arm_neon.h>
hs1.c: +++ |+#include <stdlib.h>
hs1.c: 31 | #endif
hs1.c: hs1.c:1033:30: warning: incompatible implicit declaration of built-in function ‘malloc’ [-Wbuiltin-declaration-mismatch]
hs1.c: 1033 | unsigned char *tmp = malloc(abytes);
hs1.c: | ^~~~~~
hs1.c: hs1.c:1033:30: note: include ‘<stdlib.h>’ or provide a declaration of ‘malloc’
hs1.c: hs1.c:1037:9: warning: implicit declaration of function ‘free’ [-Wimplicit-function-declaration]
hs1.c: 1037 | free(tmp);
hs1.c: | ^~~~
hs1.c: hs1.c:1037:9: note: include ‘<stdlib.h>’ or provide a declaration of ‘free’
hs1.c: hs1.c:1037:9: warning: incompatible implicit declaration of built-in function ‘free’ [-Wbuiltin-declaration-mismatch]
hs1.c: hs1.c:1037:9: note: include ‘<stdlib.h>’ or provide a declaration of ‘free’
try.c: /usr/bin/ld: warning: chacha_moon.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

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