Implementation notes: armeabi, c1, crypto_aead/hs1sivhiv2

Computer: c1
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
119441fastergcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
120433fastergcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
127939fastergcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
128047fastergcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
132528fastergcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
145236fastergcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
221922refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
235035refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
238138refgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
247874refgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
268703refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
274665refgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026

Compiler output

Implementation: crypto_aead/hs1sivhiv2/dolbeau/armv8crypto
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: c256.h:134:13: warning: implicit declaration of function 'vtrn1q_u32' [-Wimplicit-function-declaration]
encrypt.c: 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: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:134:11: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
encrypt.c: 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: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:135:13: warning: implicit declaration of function 'vtrn2q_u32' [-Wimplicit-function-declaration]
encrypt.c: 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: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:135:11: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
encrypt.c: 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: ONEQUAD_TRANSPOSE_NOXOR(0,1,2,3);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 dolbeau/armv8crypto
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 dolbeau/armv8crypto
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 dolbeau/armv8crypto
gcc -mcpu=native -mfpu=neon-vfpv4 -Os dolbeau/armv8crypto

Compiler output

Implementation: crypto_aead/hs1sivhiv2/faster
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
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: unsigned char *tmp = malloc(abytes);
hs1.c: ^~~~~~
hs1.c: hs1.c:1033:30: warning: incompatible implicit declaration of built-in function 'malloc'
hs1.c: hs1.c:1033:30: note: include 'gt;' or provide a declaration of 'malloc'
hs1.c: hs1.c:1037:9: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration]
hs1.c: free(tmp);
hs1.c: ^~~~
hs1.c: hs1.c:1037:9: warning: incompatible implicit declaration of built-in function 'free'
hs1.c: hs1.c:1037:9: note: include 'gt;' or provide a declaration of 'free'

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 faster
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 faster
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os faster
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 faster
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 faster
gcc -mcpu=native -mfpu=neon-vfpv4 -Os faster