Implementation notes: aarch64, gcc116, crypto_hashblocks/sha256

Computer: gcc116
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20171218
Operation: crypto_hashblocks
Primitive: sha256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
24256? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017110620171020
24288? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017110620171020
24704? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017110620171020
24736? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017110620171020
25408? ? ?? ? ?inplacegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017110620171020
25440? ? ?? ? ?inplacegcc_-funroll-loops_-O_-fomit-frame-pointer2017110620171020
25504? ? ?? ? ?inplacegcc_-O_-fomit-frame-pointer2017110620171020
25536? ? ?? ? ?inplacegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017110620171020
31456? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017110620171020
31520? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017110620171020
32640? ? ?? ? ?inplacegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017110620171020
32672? ? ?? ? ?inplacegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017110620171020
36992? ? ?? ? ?inplacegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017110620171020
37088? ? ?? ? ?inplacegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017110620171020
41120? ? ?? ? ?inplacegcc_-funroll-loops_-Os_-fomit-frame-pointer2017110620171020
41184? ? ?? ? ?inplacegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017110620171020
41824? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017110620171020
41856? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017110620171020
44192? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017110620171020
44224? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017110620171020
45696? ? ?? ? ?inplacegcc_-Os_-fomit-frame-pointer2017110620171020
45792? ? ?? ? ?inplacegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017110620171020
50144? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017110620171020
50176? ? ?? ? ?inplacecc2017110620171020
50176? ? ?? ? ?inplacegcc2017110620171020
50176? ? ?? ? ?inplacegcc_-funroll-loops2017110620171020
50240? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017110620171020
51136? ? ?? ? ?refcc2017110620171020
51136? ? ?? ? ?refgcc2017110620171020
51136? ? ?? ? ?refgcc_-funroll-loops2017110620171020
66880? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017110620171020
66944? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017110620171020
70976? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017110620171020
70976? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017110620171020
78400? ? ?? ? ?inplacegcc_-funroll-loops_-O3_-fomit-frame-pointer2017110620171020
78432? ? ?? ? ?inplacegcc_-funroll-loops_-O2_-fomit-frame-pointer2017110620171020
82880? ? ?? ? ?inplacegcc_-O3_-fomit-frame-pointer2017110620171020
83200? ? ?? ? ?inplacegcc_-O2_-fomit-frame-pointer2017110620171020

Compiler output

Implementation: crypto_hashblocks/sha256/dolbeau/armv8crypto
Compiler: cc
blocks.c: blocks.c: In function 'crypto_hashblocks_sha256_dolbeau_armv8crypto':
blocks.c: blocks.c:108:6: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
blocks.c: x0 = vsha256hq_u32(s0, s1, h0); \
blocks.c: ^
blocks.c: blocks.c:134:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: ^
blocks.c: blocks.c:109:6: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
blocks.c: x1 = vsha256h2q_u32(s1, s0, h0); \
blocks.c: ^
blocks.c: blocks.c:134:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: ^
blocks.c: blocks.c:111:6: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
blocks.c: s0 = vsha256hq_u32(x0, x1, h1); \
blocks.c: ^
blocks.c: blocks.c:134:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: ^
blocks.c: blocks.c:112:6: error: incompatible types when assigning to type 'uint32x4_t' from type 'int'
blocks.c: s1 = vsha256h2q_u32(x1, x0, h1); \
blocks.c: ^
blocks.c: blocks.c:134:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: ^
blocks.c: ...

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc dolbeau/armv8crypto
gcc dolbeau/armv8crypto
gcc -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops dolbeau/armv8crypto
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto

Compiler output

Implementation: crypto_hashblocks/sha256/dolbeau/amd64-sha
Compiler: cc
blocks.c: blocks.c:37:23: fatal error: immintrin.h: No such file or directory
blocks.c: #include <immintrin.h>
blocks.c: ^
blocks.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc dolbeau/amd64-sha
gcc dolbeau/amd64-sha
gcc -O2 -fomit-frame-pointer dolbeau/amd64-sha
gcc -O3 -fomit-frame-pointer dolbeau/amd64-sha
gcc -O -fomit-frame-pointer dolbeau/amd64-sha
gcc -Os -fomit-frame-pointer dolbeau/amd64-sha
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sha
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sha
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sha
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops dolbeau/amd64-sha
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sha
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sha