Implementation notes: armeabi, novenablue, crypto_aead/hs1sivhiv2

Computer: novenablue
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20200702
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1459165404 0 019652 420 816refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042520200417
1653947090 0 027390 424 824refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042520200417
1655685858 0 024462 424 824refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042520200417
1655785858 0 024462 424 824refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042520200417
1682257010 0 027326 424 824refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042520200417
1747153692 0 016388 420 816refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042520200417
1794594866 0 022424 420 824refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042520200417
1975203046 0 014484 412 816refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042520200417
2175183448 0 015592 420 816refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042520200417

Test failure

Implementation: faster
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111

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

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:148:5: warning: implicit declaration of function 'vtrn1q_u32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^
encrypt.c: ./c256.h:134:13: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c: t0l = vtrn1q_u32(x_##a,x_##b); \
encrypt.c: ^
encrypt.c: ./c256.h:148:5: error: assigning to 'uint32x4_t' (vector of 4 'uint32_t' values) from incompatible type 'int'
encrypt.c: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c256.h:134:11: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c: t0l = vtrn1q_u32(x_##a,x_##b); \
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c256.h:148:5: warning: implicit declaration of function 'vtrn2q_u32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: ./c256.h:135:13: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c: t0h = vtrn2q_u32(x_##a,x_##b); \
encrypt.c: ^
encrypt.c: ./c256.h:148:5: error: assigning to 'uint32x4_t' (vector of 4 'uint32_t' values) from incompatible type 'int'
encrypt.c: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c256.h:135:11: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c: t0h = vtrn2q_u32(x_##a,x_##b); \
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c256.h:148:5: error: assigning to 'uint32x4_t' (vector of 4 'uint32_t' values) from incompatible type 'int'
encrypt.c: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ...

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

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from encrypt.c:54:0:
encrypt.c: /usr/lib/gcc/arm-linux-gnueabihf/4.9/include/arm_neon.h:31:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
encrypt.c: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
encrypt.c: ^
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: c256.h:23:3: error: unknown type name 'uint32x4_t'
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'
encrypt.c: uint32x4_t x_1 = vdupq_n_u32(x[1]);
encrypt.c: ^
encrypt.c: c256.h:25:3: error: unknown type name 'uint32x4_t'
encrypt.c: uint32x4_t x_2 = vdupq_n_u32(x[2]);
encrypt.c: ^
encrypt.c: c256.h:26:3: error: unknown type name 'uint32x4_t'
encrypt.c: uint32x4_t x_3 = vdupq_n_u32(x[3]);
encrypt.c: ^
encrypt.c: c256.h:27:3: error: unknown type name 'uint32x4_t'
encrypt.c: uint32x4_t x_4 = vdupq_n_u32(x[4]);
encrypt.c: ^
encrypt.c: c256.h:28:3: error: unknown type name 'uint32x4_t'
encrypt.c: uint32x4_t x_5 = vdupq_n_u32(x[5]);
encrypt.c: ^
encrypt.c: c256.h:29:3: error: unknown type name 'uint32x4_t'
encrypt.c: ...

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

Compiler output

Implementation: faster
Security model: unknown
Compiler: clang -march=native -O2 -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)'
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: implicit declaration of function 'free' is invalid in C99 [-Wimplicit-function-declaration]
hs1.c: free(tmp);
hs1.c: ^
hs1.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE faster
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE faster
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE faster
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE faster
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE faster

Compiler output

Implementation: faster
Security model: unknown
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: incompatible implicit declaration of built-in function 'malloc'
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c: hs1.c:1037:9: warning: incompatible implicit declaration of built-in function 'free'
hs1.c: free(tmp);
hs1.c: ^

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.o chacha T
encrypt.o chacha_ivsetup T
encrypt.o chacha_keysetup T
encrypt.o hs1 T
encrypt.o hs1_hash T
encrypt.o hs1siv_chacha256 T
encrypt.o hs1siv_decrypt T
encrypt.o hs1siv_encrypt T
encrypt.o hs1siv_subkeygen T
encrypt.o prf_hash2 T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref