Implementation notes: aarch64, gcc185, crypto_hash/echosp512

Computer: gcc185
Microarchitecture: aarch64; Skylark (503f0002)
Architecture: aarch64
CPU ID: 503f0002
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: echosp512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7290022020 0 034734 824 768T:generic/opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
7327518972 0 030566 824 752T:generic/opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
7402520336 0 130756 792 744T:generic/opt64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
7417518208 0 129050 800 744T:generic/opt64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
8415020380 0 132858 800 744T:generic/opt64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
8520020412 0 134634 800 752T:generic/opt64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
8520020412 0 134634 800 752T:generic/opt64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
9045021976 0 034797 848 776T:generic/opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
9097519848 0 031541 848 760T:generic/opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
9540022540 0 1635026 800 752T:powerpc/pp32cv2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
9540022796 0 1637058 800 760T:powerpc/pp32cv2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
9540022796 0 1637058 800 760T:powerpc/pp32cv2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
10852526964 0 039702 840 776T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
10860018672 0 029950 824 752T:generic/opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
11092518240 0 028694 808 744T:generic/opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
11137524868 0 036478 840 760T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
11640022208 0 032654 824 752T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
12157522892 0 034182 840 760T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
12330022380 0 1633234 800 752T:powerpc/pp32cv2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
12682522108 0 1632444 792 752T:powerpc/pp32cv2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
14280019828 0 032566 840 776T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
14400017980 0 1632242 800 760T:powerpc/pp32cv1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
14400017980 0 1632242 800 760T:powerpc/pp32cv1clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
14512517700 0 1630178 800 752T:powerpc/pp32cv1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
15720017777 0 028309 832 752T:generic/opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
15997517164 0 028454 840 760T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
16057517580 0 1628434 800 752T:powerpc/pp32cv1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
16162517948 0 029550 840 760T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
16650018748 0 030125 848 760T:generic/opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
16995017260 0 1627596 792 752T:powerpc/pp32cv1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
19140016720 0 027166 824 752T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212

Compiler output

Implementation: T:generic/opt32
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
echo32.c: echo32.c:37:4: error: call to undeclared library function 'printf' with type 'int (const char *, ...)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
echo32.c: 37 | printf ("row %d,col %d :",i,j);
echo32.c: | ^
echo32.c: echo32.c:37:4: note: include the header <stdio.h> or explicitly provide a declaration for 'printf'
echo32.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt32
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt32
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt32
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt32
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt32

Compiler output

Implementation: T:generic/opt32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo32.c: echo32.c: In function 'PrintState':
echo32.c: echo32.c:37:4: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
echo32.c: printf ("row %d,col %d :",i,j);
echo32.c: ^~~~~~
echo32.c: echo32.c:37:4: warning: incompatible implicit declaration of built-in function 'printf'
echo32.c: echo32.c:37:4: note: include '<stdio.h>' or provide a declaration of 'printf'
echo32.c: echo32.c:12:1:
echo32.c: +#include <stdio.h>
echo32.c:
echo32.c: echo32.c:37:4:
echo32.c: printf ("row %d,col %d :",i,j);
echo32.c: ^~~~~~
echo32.c: echo32.c:47:2: warning: incompatible implicit declaration of built-in function 'printf'
echo32.c: printf("-----------------------------------\n");
echo32.c: ^~~~~~
echo32.c: echo32.c:47:2: note: include '<stdio.h>' or provide a declaration of 'printf'

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

Compiler output

Implementation: T:generic/opt64
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
echo64.c: echo64.c:555:29: warning: passing 'const unsigned char *' to parameter of type 'BitSequence *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
echo64.c: 555 | if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: | ^~
echo64.c: echo64.c:542:46: note: passing argument to parameter 'data' here
echo64.c: 542 | HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: | ^
echo64.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:generic/opt64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt64
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt64
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt64
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:generic/opt64

Compiler output

Implementation: T:generic/opt64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo64.c: echo64.c: In function 'crypto_hash_echosp512_generic_opt64_timingleaks':
echo64.c: echo64.c:555:29: warning: passing argument 2 of 'Hash' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
echo64.c: if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: ^~
echo64.c: echo64.c:542:46: note: expected 'BitSequence *' {aka 'unsigned char *'} but argument is of type 'const unsigned char *'
echo64.c: HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: ~~~~~~~~~~~~~^~~~

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