Implementation notes: armeabi, tinker, crypto_hash/simd256

Computer: tinker
Microarchitecture: armeabi; Cortex-A17 (410fc0d1)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: simd256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10552749236 0 057821 384 752T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
11160245664 0 053513 384 752T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
12122650236 0 060630 412 752T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
13386159855 388 068572 788 752T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
13490322784 0 030641 384 752T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
13592526200 0 034793 384 752T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
13746739674 0 047373 384 744T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
15091234420 0 044798 412 752T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
15635837106 0 043701 376 744T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
16523124223 388 034769 816 752T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
17213820046 0 026645 376 744T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
17482622158 0 029865 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
20281715191 388 023168 788 752T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
24027511369 388 018096 776 744T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
24771913285 388 021120 784 744T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
29460099915 388 020501 816 752T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
32064908051 388 016764 788 752T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
33304353471 388 011448 788 752T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
34114793525 388 011360 784 744T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
45132242793 388 09520 776 744T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
reference.c: reference.c:69:82: warning: expression result unused [-Wunused-value]
reference.c: state->A[j] = state->D[j] + w[j] + F(state->A[j], state->B[j], state->C[j]), s;
reference.c: ^
reference.c: 1 warning generated.

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

Compiler output

Implementation: T:vect128
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
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: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vect128

Compiler output

Implementation: T:vect128
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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: 252 | #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: 344 | 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: 355 | 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: 367 | static const union cv FFT256_Twiddle[] = {
vector.c: | ^~~~~~~~~~~~~~
vector.c: vector.c:24:20: error: variable ‘V128’ has initializer but incomplete type
vector.c: 24 | 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: 24 | 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: 25 | 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: 26 | static const union cv V257 = CV(257);
vector.c: | ^~
vector.c: ...

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

Compiler output

Implementation: T:vectarm
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
vector_arm.c: vector_arm.c:190:16: error: invalid output constraint '=y' in asm
vector_arm.c: : "=y" (A[ 2]), "=y" (A[ 3]), "=y" (A[ 6]), "=y" (A[ 7]),
vector_arm.c: ^
vector_arm.c: vector_arm.c:261:16: error: invalid output constraint '+y' in asm
vector_arm.c: : "+y" (A[ 0]), "+y" (A[ 2]), "+y" (A[ 4]), "+y" (A[ 6]),
vector_arm.c: ^
vector_arm.c: vector_arm.c:349:13: error: invalid input constraint 'y' in asm
vector_arm.c: [Tweak] "y" (final? FinalTweak: Tweak),
vector_arm.c: ^
vector_arm.c: vector_arm.c:527:14: error: invalid output constraint '=y' in asm
vector_arm.c: : "=y" (S[0]), "=y" (S[1]), "=y" (S[2]), "=y" (S[3]),
vector_arm.c: ^
vector_arm.c: 4 errors generated.

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

Compiler output

Implementation: T:vectarm
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
vector_arm.c: vector_arm.c: In function ‘fft64’:
vector_arm.c: vector_arm.c:182:5: error: impossible constraint in ‘asm’
vector_arm.c: 182 | __asm__ (
vector_arm.c: | ^~~~~~~
vector_arm.c: vector_arm.c:217:5: error: impossible constraint in ‘asm’
vector_arm.c: 217 | __asm__ (
vector_arm.c: | ^~~~~~~

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