Implementation notes: armeabi, tonido, crypto_aead/scream10v3

Computer: tonido
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20170718
Operation: crypto_aead
Primitive: scream10v3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2544294? ? ?? ? ?refgcc_-funroll-loops_-march=native_-mtune=xscale_-O32017080120170718
2579262? ? ?? ? ?refgcc_-funroll-loops_-march=native_-mtune=xscale_-O22017080120170718
2596554? ? ?? ? ?refgcc_-march=native_-mtune=xscale_-O32017080120170718
3637512? ? ?? ? ?refgcc_-march=native_-mtune=xscale_-O22017080120170718
3916482? ? ?? ? ?refgcc_-funroll-loops_-march=native_-mtune=xscale_-Os2017080120170718
4207686? ? ?? ? ?refgcc_-march=native_-mtune=xscale_-Os2017080120170718

Compiler output

Implementation: crypto_aead/scream10v3/neon
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
scream.c: In file included from tae.h:7:0,
scream.c: from scream.c:10:
scream.c: /usr/lib/gcc/armv5tel-unknown-linux-gnueabi/7.1.1/include/arm_neon.h:31:2: error: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
scream.c: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
scream.c: ^~~~~
scream.c: In file included from scream.c:10:0:
scream.c: tae.h:13:9: error: unknown type name 'uint8x16_t'
scream.c: typedef uint8x16_t v16qu;
scream.c: ^~~~~~~~~~
scream.c: In file included from scream.c:13:0:
scream.c: ...
scream.c: scream.c:453:22: note: (near initialization for '(anonymous)')
scream.c: T[key_idx(11)] += V(1);
scream.c: ^
scream.c: scream.c:15:67: note: in definition of macro 'V'
scream.c: #define V(x) (v16qu){x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x}
scream.c: ^
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:464:16: error: subscripted value is neither array nor pointer nor vector
scream.c: T[key_idx(j)][i] = x;
scream.c: ^

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 neon
gcc -funroll-loops -march=native -mtune=xscale -O3 neon
gcc -funroll-loops -march=native -mtune=xscale -Os neon
gcc -march=native -mtune=xscale -O2 neon
gcc -march=native -mtune=xscale -O3 neon
gcc -march=native -mtune=xscale -Os neon

Compiler output

Implementation: crypto_aead/scream10v3/sse
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128'; did you mean '__builtin_fabsd128'? [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:199:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~~~~~~~~~~
scream.c: scream.c:199:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~
scream.c: ...
scream.c: ^~
scream.c: scream.c:337:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[3]);
scream.c: ^~
scream.c: scream.c:341:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[1]);
scream.c: ^~
scream.c: scream.c:342:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: D ^= __builtin_ia32_pshufb128(table, in[3]);
scream.c: ^~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 sse
gcc -funroll-loops -march=native -mtune=xscale -O3 sse
gcc -funroll-loops -march=native -mtune=xscale -Os sse
gcc -march=native -mtune=xscale -O2 sse
gcc -march=native -mtune=xscale -O3 sse
gcc -march=native -mtune=xscale -Os sse