Implementation notes: aarch64, hikey960, crypto_hashblocks/sha512

Computer: hikey960
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_hashblocks
Primitive: sha512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
011000 0 022618 920 776inplacegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
013804 0 024752 816 760refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
666311024 0 022650 920 776inplacegcc_-O3_-fomit-frame-pointer2019112620190816
888311096 0 020993 912 744inplacegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
888311000 0 022626 920 776refgcc_-O3_-fomit-frame-pointer2019112620190816
888311100 0 020993 912 744refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
888310884 0 022490 920 776refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
888310804 0 020173 896 744refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
1110511100 0 024081 912 744refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
1248911080 0 024033 912 744inplacegcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
1248911096 0 024081 912 744inplacegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
1248910800 0 020165 896 744inplacegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
1665013736 0 024688 816 760inplaceclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
1665013736 0 024688 816 760inplaceclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
1665011008 0 024298 920 776inplacegcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
1665010800 0 020165 896 744inplacegcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
1665010880 0 024130 920 776inplacegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
1665010936 0 024161 912 744inplacegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
1665010948 0 020977 912 744inplacegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
1665011092 0 021025 912 744refgcc_-O2_-fomit-frame-pointer2019112620190816
1665010804 0 020141 896 744refgcc_-Os_-fomit-frame-pointer2019112620190816
1665010804 0 020141 896 744refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
1665011068 0 024017 912 744refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
1665010972 0 024266 920 776refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
1665010804 0 020173 896 744refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
1665010884 0 024138 920 776refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
1665010976 0 022594 920 776refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
1665211096 0 021033 912 744inplacegcc_-O2_-fomit-frame-pointer2019112620190816
1776610800 0 020133 896 744inplacegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
1776610944 0 024161 912 744refgcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
1872911072 0 021001 912 744refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
2081510800 0 020133 896 744inplacegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
2336310804 0 020141 896 744refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
2338613736 0 024688 816 760inplaceclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
2338610944 0 024161 912 744refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
2497513736 0 024672 816 760inplaceclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
2497510800 0 020133 896 744inplacegcc_-Os_-fomit-frame-pointer2019112620190816
2497510880 0 022482 920 776inplacegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
2497513804 0 024728 816 760refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
2497513804 0 024752 816 760refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
2497510944 0 020961 912 744refgcc_-O_-fomit-frame-pointer2019112620190816
2497510948 0 020969 912 744refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
2497810944 0 020969 912 744inplacegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
2497810936 0 024161 912 744inplacegcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
2497810944 0 020961 912 744refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
3330024844 0 037021 896 744inplacecc2019112620190816
3330024844 0 037021 896 744inplacegcc2019112620190816
3330024844 0 037021 896 744inplacegcc_-funroll-loops2019112620190816
3330428684 0 040853 896 744refcc2019112620190816
3507911076 0 021017 912 744inplacegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
3507913804 0 024752 816 760refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
4995010944 0 020969 912 744inplacegcc_-O_-fomit-frame-pointer2019112620190816
5827528684 0 040853 896 744refgcc_-funroll-loops2019112620190816
11655028684 0 040853 896 744refgcc2019112620190816

Compiler output

Implementation: dolbeau/intelavx2rorxasm
Security model: unknown
Compiler: cc
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelavx2rorxasm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_rorx'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc dolbeau/intelavx2rorxasm
gcc dolbeau/intelavx2rorxasm
gcc -O2 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -O3 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -O -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -Os -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops dolbeau/intelavx2rorxasm
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelavx2rorxasm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/intelavx2rorxasm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/intelavx2rorxasm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/intelavx2rorxasm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/intelavx2rorxasm

Compiler output

Implementation: dolbeau/intelavx2rorxasm
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelavx2rorxasm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_rorx'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/intelavx2rorxasm
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments dolbeau/intelavx2rorxasm
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/intelavx2rorxasm
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/intelavx2rorxasm

Compiler output

Implementation: dolbeau/intelavxasm
Security model: unknown
Compiler: cc
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelavxasm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_avx'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc dolbeau/intelavxasm
gcc dolbeau/intelavxasm
gcc -O2 -fomit-frame-pointer dolbeau/intelavxasm
gcc -O3 -fomit-frame-pointer dolbeau/intelavxasm
gcc -O -fomit-frame-pointer dolbeau/intelavxasm
gcc -Os -fomit-frame-pointer dolbeau/intelavxasm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelavxasm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelavxasm
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelavxasm
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops dolbeau/intelavxasm
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelavxasm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelavxasm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/intelavxasm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/intelavxasm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/intelavxasm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/intelavxasm

Compiler output

Implementation: dolbeau/intelavxasm
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelavxasm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_avx'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/intelavxasm
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments dolbeau/intelavxasm
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/intelavxasm
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/intelavxasm

Compiler output

Implementation: dolbeau/intelsse4asm
Security model: unknown
Compiler: cc
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelsse4asm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_sse4'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc dolbeau/intelsse4asm
gcc dolbeau/intelsse4asm
gcc -O2 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -O3 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -O -fomit-frame-pointer dolbeau/intelsse4asm
gcc -Os -fomit-frame-pointer dolbeau/intelsse4asm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelsse4asm
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops dolbeau/intelsse4asm
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/intelsse4asm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/intelsse4asm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/intelsse4asm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/intelsse4asm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/intelsse4asm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/intelsse4asm

Compiler output

Implementation: dolbeau/intelsse4asm
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
try.c: crypto_hashblocks_sha512.a(blocks.o): In function `crypto_hashblocks_sha512_dolbeau_intelsse4asm':
try.c: blocks.c:(.text+0x...): undefined reference to `sha512_sse4'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/intelsse4asm
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments dolbeau/intelsse4asm
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/intelsse4asm
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/intelsse4asm