Implementation notes: armeabi, tinker, crypto_hashblocks/sha512

Computer: tinker
Microarchitecture: armeabi; Cortex-A17 (410fc0d1)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_hashblocks
Primitive: sha512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
597164868 0 012525 384 752m3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
597374868 0 012340 380 744m3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
597714836 0 011285 376 744m3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
599304846 0 015210 412 752m3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
600794868 0 013257 384 752m3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
655644674 0 015050 412 752m4inlineclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
655654664 0 011121 376 744m4inlinegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
655664696 0 013093 384 752m4inlinegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
655664696 0 012176 380 744m4inlinegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
657634696 0 012361 384 752m4inlinegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
709688508 0 016173 384 752compactgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7106730456 0 036905 376 744refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7119234640 0 043025 384 752refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
712059460 0 017857 384 752compactgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
712286424 0 016762 412 752wflipclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
7125434624 0 042277 384 752refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7160131932 0 038385 376 744inplacegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7310411876 0 022214 412 752compactclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
736524516 0 012173 384 752m4multgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
736954516 0 012905 384 752m4multgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
736964484 0 010941 376 744m4multgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
738284494 0 014858 412 752m4multclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
738444516 0 011996 380 744m4multgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
755984668 0 012333 384 752m4nofpugcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
756224646 0 015018 412 752m4nofpuclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
7563433844 0 041320 380 744refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
756454636 0 011093 376 744m4nofpugcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7572435872 0 044265 384 752inplacegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
758054668 0 012148 380 744m4nofpugcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
758214668 0 013065 384 752m4nofpugcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7584235860 0 043521 384 752inplacegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
763695434 0 012916 380 744wflipgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
7712834386 0 041868 380 744inplacegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
772432652 0 011049 384 752compact4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
778187696 0 014153 376 744compactgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
780181580 0 09245 384 752compact4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
783358652 0 016132 380 744compactgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
800084950 0 011401 376 744wflipgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
835361600 0 09080 380 744compact4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
849001364 0 07821 376 744compact4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
8516840960 0 051306 412 752refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
8565841032 0 051382 412 752inplaceclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
861774088 0 014442 412 752compact4clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
895402648 0 011045 384 752compact2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
897201696 0 09361 384 752compact2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
979961576 0 09241 384 752compact3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
980122804 0 011201 384 752compact3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
995211664 0 08121 376 744compact2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1042814776 0 015122 412 752compact2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
1058971856 0 09336 380 744compact2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1115111508 0 07965 376 744compact3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1163621752 0 09232 380 744compact3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
1252774036 0 014390 412 752compact3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107

Test failure

Implementation: wflip
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE wflip
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE wflip

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
inner.c: In file included from inner.c:1:
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/immintrin.h:14:2: error: "This header is only meant to be used on x86 and x64 architecture"
inner.c: #error "This header is only meant to be used on x86 and x64 architecture"
inner.c: ^
inner.c: In file included from inner.c:1:
inner.c: In file included from /usr/lib/llvm-14/lib/clang/14.0.6/include/immintrin.h:17:
inner.c: In file included from /usr/lib/llvm-14/lib/clang/14.0.6/include/x86gprintrin.h:15:
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/hresetintrin.h:42:27: error: invalid input constraint 'a' in asm
inner.c: __asm__ ("hreset $0" :: "a"(__eax));
inner.c: ^
inner.c: In file included from inner.c:1:
inner.c: In file included from /usr/lib/llvm-14/lib/clang/14.0.6/include/immintrin.h:21:
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/mmintrin.h:14:2: error: "This header is only meant to be used on x86 and x64 architecture"
inner.c: #error "This header is only meant to be used on x86 and x64 architecture"
inner.c: ^
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/mmintrin.h:54:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
inner.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
inner.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/mmintrin.h:133:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
inner.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
inner.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/mmintrin.h:163:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
inner.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
inner.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
inner.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/mmintrin.h:193:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
inner.c: ...

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

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
inner.c: inner.c:1:10: fatal error: immintrin.h: No such file or directory
inner.c: 1 | #include <immintrin.h>
inner.c: | ^~~~~~~~~~~~~
inner.c: compilation terminated.

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

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
inner.S: inner.S:422:5: error: unexpected token in operand
inner.S: mov %rsp,%r11
inner.S: ^
inner.S: inner.S:423:10: error: unknown token in expression
inner.S: and $511,%r11
inner.S: ^
inner.S: inner.S:423:10: error: malformed expression
inner.S: and $511,%r11
inner.S: ^
inner.S: inner.S:424:10: error: unknown token in expression
inner.S: add $416,%r11
inner.S: ^
inner.S: inner.S:424:10: error: malformed expression
inner.S: add $416,%r11
inner.S: ^
inner.S: inner.S:425:5: error: unexpected token in operand
inner.S: sub %r11,%rsp
inner.S: ^
inner.S: inner.S:430:5: error: unexpected token in operand
inner.S: mov %rcx,%r8
inner.S: ^
inner.S: inner.S:435:12: error: unexpected token in argument list
inner.S: vmovupd 640(%rcx),%ymm0
inner.S: ^
inner.S: inner.S:440:10: error: unexpected token in argument list
inner.S: ...

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

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
inner.S: inner.S: Assembler messages:
inner.S: inner.S:422: Error: ARM register expected -- `mov %rsp,%r11'
inner.S: inner.S:423: Error: ARM register expected -- `and $511,%r11'
inner.S: inner.S:424: Error: ARM register expected -- `add $416,%r11'
inner.S: inner.S:425: Error: immediate expression requires a # prefix -- `sub %r11,%rsp'
inner.S: inner.S:430: Error: ARM register expected -- `mov %rcx,%r8'
inner.S: inner.S:435: Error: bad instruction `vmovupd 640(%rcx),%ymm0'
inner.S: inner.S:440: Error: bad instruction `vmovupd 0(%rdi),%ymm1'
inner.S: inner.S:445: Error: ARM register expected -- `mov %rdi,%rcx'
inner.S: inner.S:450: Error: bad instruction `vmovupd 32(%rdi),%ymm2'
inner.S: inner.S:455: Error: bad instruction `vpshufb %ymm0,%ymm1,%ymm1'
inner.S: inner.S:460: Error: bad instruction `vpshufb %ymm0,%ymm2,%ymm2'
inner.S: inner.S:465: Error: bad instruction `vmovapd %ymm1,0(%rsp)'
inner.S: inner.S:470: Error: bad instruction `movq %r11,320(%rsp)'
inner.S: inner.S:475: Error: bad instruction `vmovapd %ymm2,32(%rsp)'
inner.S: inner.S:480: Error: bad instruction `movq %r13,328(%rsp)'
inner.S: inner.S:485: Error: bad instruction `movq %r12,336(%rsp)'
inner.S: inner.S:490: Error: bad instruction `movq %r14,344(%rsp)'
inner.S: inner.S:495: Error: bad instruction `movq %rbx,352(%rsp)'
inner.S: inner.S:500: Error: bad instruction `movq %r15,360(%rsp)'
inner.S: inner.S:505: Error: bad instruction `movq %rbp,368(%rsp)'
inner.S: inner.S:510: Error: bad instruction `movq %rdx,376(%rsp)'
inner.S: inner.S:515: Error: ARM register expected -- `mov %rsi,%rdi'
inner.S: inner.S:520: Error: bad instruction `movq %rcx,384(%rsp)'
inner.S: inner.S:525: Error: bad instruction `movq 0(%rsp),%rsi'
inner.S: ...

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

Compiler output

Implementation: m3
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/arm-linux-gnueabihf-ld: warning: inner32.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/arm-linux-gnueabihf-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/arm-linux-gnueabihf-ld: warning: inner32.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/arm-linux-gnueabihf-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE m3 m4inline m4mult m4nofpu

Compiler output

Implementation: m3
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: warning: inner32.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/ld: warning: inner32.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE m3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE m3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE m3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE m3
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4inline
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4inline
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE m4inline
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE m4inline
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4mult
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4mult
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE m4mult
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE m4mult
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4nofpu
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE m4nofpu
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE m4nofpu
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE m4nofpu