Implementation notes: aarch64, jetsontx1, crypto_hash/simd256

Computer: jetsontx1
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20180818
Operation: crypto_hash
Primitive: simd256
TimeImplementationCompilerBenchmark dateSUPERCOP version
61956sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018101320180818
75214sphlibclang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv2018101320180818
75233sphlibclang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv2018101320180818
76036sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018101320180818
77856sphlibclang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv2018101320180818
82764sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018101320180818
90176sphlib-smallclang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv2018101320180818
90492sphlib-smallclang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv2018101320180818
92263sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018101320180818
93072sphlib-smallclang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv2018101320180818
105783optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018101320180818
117740sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018101320180818
125216optclang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv2018101320180818
125783optclang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv2018101320180818
137774sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018101320180818
138361optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018101320180818
147346optclang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv2018101320180818
188642optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018101320180818
2469328refclang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv2018101320180818
2479875refclang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv2018101320180818
2523942refclang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv2018101320180818
2689074refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018101320180818
2724329refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018101320180818
4564773refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018101320180818

Compiler output

Implementation: crypto_hash/simd256/ref
Compiler: clang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv
reference.c: reference.c:69:82: warning: expression result unused [-Wunused-value]
reference.c: state->gt;A[j] = state->gt;D[j] + w[j] + F(state->gt;A[j], state->gt;B[j], state->gt;C[j]), s;
reference.c: ^
reference.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv ref
clang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv ref
clang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_hash/simd256/vect128
Compiler: clang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv
vector.c: In file included from vector.c:5:
vector.c: ./vector.h:252:2: error: "I don't know how to vectorize on this architecture."
vector.c: #error "I don't know how to vectorize on this architecture."
vector.c: ^
vector.c: ./vector.h:344:38: error: array has incomplete element type 'const union cv'
vector.c: static const union cv FFT64_Twiddle[] = {
vector.c: ^
vector.c: ./vector.h:344:22: note: forward declaration of 'union cv'
vector.c: static const union cv FFT64_Twiddle[] = {
vector.c: ^
vector.c: ./vector.h:355:39: error: array has incomplete element type 'const union cv'
vector.c: static const union cv FFT128_Twiddle[] = {
vector.c: ^
vector.c: ./vector.h:344:22: note: forward declaration of 'union cv'
vector.c: static const union cv FFT64_Twiddle[] = {
vector.c: ^
vector.c: ./vector.h:367:39: error: array has incomplete element type 'const union cv'
vector.c: static const union cv FFT256_Twiddle[] = {
vector.c: ^
vector.c: ./vector.h:344:22: note: forward declaration of 'union cv'
vector.c: static const union cv FFT64_Twiddle[] = {
vector.c: ^
vector.c: vector.c:24:30: warning: implicit declaration of function 'CV' is invalid in C99 [-Wimplicit-function-declaration]
vector.c: static const union cv V128 = CV(128);
vector.c: ^
vector.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang-6.0 -mcpu=cortex-a57 -O2 -fomit-frame-pointer -fwrapv vect128
clang-6.0 -mcpu=cortex-a57 -O3 -fomit-frame-pointer -fwrapv vect128
clang-6.0 -mcpu=cortex-a57 -Os -fomit-frame-pointer -fwrapv vect128

Compiler output

Implementation: crypto_hash/simd256/vect128
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
vector.c: In file included from vector.c:5:
vector.c: vector.h:252:2: error: #error "I don't know how to vectorize on this architecture."
vector.c: #error "I don't know how to vectorize on this architecture."
vector.c: ^~~~~
vector.c: vector.h:344:25: error: array type has incomplete element type 'union cv'
vector.c: static const union cv FFT64_Twiddle[] = {
vector.c: ^~~~~~~~~~~~~
vector.c: vector.h:355:25: error: array type has incomplete element type 'union cv'
vector.c: static const union cv FFT128_Twiddle[] = {
vector.c: ^~~~~~~~~~~~~~
vector.c: vector.h:367:25: error: array type has incomplete element type 'union cv'
vector.c: static const union cv FFT256_Twiddle[] = {
vector.c: ^~~~~~~~~~~~~~
vector.c: vector.c:24:20: error: variable 'V128' has initializer but incomplete type
vector.c: static const union cv V128 = CV(128);
vector.c: ^~
vector.c: vector.c:24:30: warning: implicit declaration of function 'CV' [-Wimplicit-function-declaration]
vector.c: static const union cv V128 = CV(128);
vector.c: ^~
vector.c: vector.c:25:20: error: variable 'V255' has initializer but incomplete type
vector.c: static const union cv V255 = CV(255);
vector.c: ^~
vector.c: vector.c:26:20: error: variable 'V257' has initializer but incomplete type
vector.c: static const union cv V257 = CV(257);
vector.c: ^~
vector.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv vect128
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv vect128
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv vect128