Implementation notes: armeabi, novena, crypto_hash/simd256

Computer: novena
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20220506
Operation: crypto_hash
Primitive: simd256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
17881444548 0 053659 420 704T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
18281448784 0 059829 424 704T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
18441552372 0 063565 424 712T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
18561546260 0 055547 420 704T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
18641541980 0 049827 420 704T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
19041652708 0 072397 424 712T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
20561746180 0 055547 420 704T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
21641734828 0 054501 424 712T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
21641823380 0 032499 420 704T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
22081836366 0 044127 420 704T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
22121821104 0 028955 420 704T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
23081935124 0 046301 424 712T:sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
24121936127 388 045374 820 704T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
24482026404 0 035675 420 704T:sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
25002030523 388 050388 828 712T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
25042037470 0 044787 412 704T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
25521929876 0 040901 424 704T:sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
26202221931 388 033140 828 704T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
27002226456 0 035807 420 704T:sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
27442220082 0 027399 412 704T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
29962324495 388 035852 828 712T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
30482420162 0 027935 420 704T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
31642511871 388 019854 820 704T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
35202711305 388 020074 812 704T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
35682913935 388 023402 820 704T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
38843014803 388 024394 820 704T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
40243211997 388 019898 820 704T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
375269613799 388 033696 828 712T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
44375497583 388 016826 820 704T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
47039713075 388 011062 820 704T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
47331748151 388 019400 828 704T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
474397410443 388 021840 828 712T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
48467844227 388 013734 820 704T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
49495914243 388 013878 820 704T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060420220506
58304593001 388 010902 820 704T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506
273945642785 388 011550 812 704T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060420220506

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -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: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:vect128
Security model: timingleaks
Compiler: clang -march=native -O2 -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: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vect128
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vect128
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vect128
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vect128
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 -march=native -O2 -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: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vectarm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vectarm
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vectarm
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:vectarm
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