Test results for aarch64, pi5, crypto_hashblocks/sha256
[Page version: 20260221 06:09:02]
Measurements for aarch64, pi5, crypto_hashblocks
Test results for aarch64, pi5, crypto_hashblocks
Test results for crypto_hashblocks/sha256
Computer: pi5
Microarchitecture: aarch64; Cortex-A76 (414fd0b1)
Architecture: aarch64
CPU ID: 414fd0b1
SUPERCOP version: 20251222
Operation: crypto_hashblocks
Primitive: sha256
| Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 3133 | 908 0 0 | 13679 804 864 | dolbeau/armv8crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15224 | 8272 0 0 | 20679 804 864 | ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15229 | 8280 0 0 | 17303 804 856 | ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15229 | 8280 0 0 | 17009 796 856 | ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15233 | 8280 0 0 | 18967 804 856 | ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15259 | 8352 0 0 | 20751 804 864 | inplace | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15300 | 8384 0 0 | 17439 804 856 | inplace | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15301 | 8384 0 0 | 17113 796 856 | inplace | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15311 | 8384 0 0 | 19071 804 856 | inplace | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15452 | 8400 0 0 | 17770 780 872 | inplace | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15455 | 8376 0 0 | 17722 780 872 | ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15457 | 8400 0 0 | 18698 780 872 | inplace | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 15457 | 8376 0 0 | 18650 780 872 | ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 16089 | 8072 0 0 | 20815 804 864 | inplace | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 16208 | 8072 0 0 | 20807 804 864 | ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 16448 | 8244 0 0 | 16657 756 856 | ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 16519 | 8380 0 0 | 16793 756 856 | inplace | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 17257 | 8396 0 0 | 17721 772 864 | ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
| 17831 | 8460 0 0 | 17793 772 864 | inplace | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251231 | 20251222 |
Compiler output
blocks.c: In file included from blocks.c:37:
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/immintrin.h:14:2: error: "This header is only meant to be used on x86 and x64 architecture"
blocks.c: 14 | #error "This header is only meant to be used on x86 and x64 architecture"
blocks.c: | ^
blocks.c: In file included from blocks.c:37:
blocks.c: In file included from /usr/lib/llvm-19/lib/clang/19/include/immintrin.h:17:
blocks.c: In file included from /usr/lib/llvm-19/lib/clang/19/include/x86gprintrin.h:14:
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/hresetintrin.h:42:27: error: invalid input constraint 'a' in asm
blocks.c: 42 | __asm__ ("hreset $0" :: "a"(__eax));
blocks.c: | ^
blocks.c: In file included from blocks.c:37:
blocks.c: In file included from /usr/lib/llvm-19/lib/clang/19/include/immintrin.h:20:
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/mmintrin.h:14:2: error: "This header is only meant to be used on x86 and x64 architecture"
blocks.c: 14 | #error "This header is only meant to be used on x86 and x64 architecture"
blocks.c: | ^
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/mmintrin.h:56:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
blocks.c: 56 | return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
blocks.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/mmintrin.h:130:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
blocks.c: 130 | return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
blocks.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/mmintrin.h:155:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
blocks.c: 155 | return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
blocks.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: /usr/lib/llvm-19/lib/clang/19/include/mmintrin.h:180:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
blocks.c: ...
Number of similar (implementation,compiler) pairs: 5, namely:
| Implementation | Compiler |
| dolbeau/amd64-sha | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/amd64-sha | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/amd64-sha | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/amd64-sha | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/amd64-sha | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
Compiler output
blocks.c: blocks.c:37:10: fatal error: immintrin.h: No such file or directory
blocks.c: 37 | #include <immintrin.h>
blocks.c: | ^~~~~~~~~~~~~
blocks.c: compilation terminated.
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| dolbeau/amd64-sha | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/amd64-sha | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/amd64-sha | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/amd64-sha | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Compiler output
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256hq_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: 134 | DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: | ^
blocks.c: blocks.c:108:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 108 | x0 = vsha256hq_u32(s0, s1, h0); \
blocks.c: | ^
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256h2q_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: blocks.c:109:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 109 | x1 = vsha256h2q_u32(s1, s0, h0); \
blocks.c: | ^
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256hq_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: blocks.c:111:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 111 | s0 = vsha256hq_u32(x0, x1, h1); \
blocks.c: | ^
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256h2q_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: blocks.c:112:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 112 | s1 = vsha256h2q_u32(x1, x0, h1); \
blocks.c: | ^
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256hq_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: blocks.c:114:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 114 | x0 = vsha256hq_u32(s0, s1, h0); \
blocks.c: | ^
blocks.c: blocks.c:134:3: error: always_inline function 'vsha256h2q_u32' requires target feature 'sha2', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex' that is compiled without support for 'sha2'
blocks.c: blocks.c:115:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: 115 | x1 = vsha256h2q_u32(s1, s0, h0); \
blocks.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| dolbeau/armv8crypto | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/armv8crypto | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/armv8crypto | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| dolbeau/armv8crypto | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
Compiler output
blocks.c: In file included from blocks.c:37:
blocks.c: /usr/lib/gcc/aarch64-linux-gnu/14/include/arm_neon.h: In function 'crypto_hashblocks_sha256_dolbeau_armv8crypto_constbranchindex':
blocks.c: /usr/lib/gcc/aarch64-linux-gnu/14/include/arm_neon.h:20984:1: error: inlining failed in call to 'always_inline' 'vsha256h2q_u32': target specific option mismatch
blocks.c: 20984 | vsha256h2q_u32 (uint32x4_t __hash_efgh, uint32x4_t __hash_abcd, uint32x4_t __wk)
blocks.c: | ^~~~~~~~~~~~~~
blocks.c: blocks.c:118:22: note: called from here
blocks.c: 118 | s1 = vsha256h2q_u32(x1, x0, h1)
blocks.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:146:17: note: in expansion of macro 'DO16ROUNDS'
blocks.c: 146 | DO16ROUNDS(j0, j1, j2, j3, cc, cd, ce, cf);
blocks.c: | ^~~~~~~~~~
blocks.c: /usr/lib/gcc/aarch64-linux-gnu/14/include/arm_neon.h:20976:1: error: inlining failed in call to 'always_inline' 'vsha256hq_u32': target specific option mismatch
blocks.c: 20976 | vsha256hq_u32 (uint32x4_t __hash_abcd, uint32x4_t __hash_efgh, uint32x4_t __wk)
blocks.c: | ^~~~~~~~~~~~~
blocks.c: blocks.c:117:22: note: called from here
blocks.c: 117 | s0 = vsha256hq_u32(x0, x1, h1); \
blocks.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:146:17: note: in expansion of macro 'DO16ROUNDS'
blocks.c: 146 | DO16ROUNDS(j0, j1, j2, j3, cc, cd, ce, cf);
blocks.c: | ^~~~~~~~~~
blocks.c: /usr/lib/gcc/aarch64-linux-gnu/14/include/arm_neon.h:20984:1: error: inlining failed in call to 'always_inline' 'vsha256h2q_u32': target specific option mismatch
blocks.c: 20984 | vsha256h2q_u32 (uint32x4_t __hash_efgh, uint32x4_t __hash_abcd, uint32x4_t __wk)
blocks.c: | ^~~~~~~~~~~~~~
blocks.c: blocks.c:115:22: note: called from here
blocks.c: 115 | x1 = vsha256h2q_u32(s1, s0, h0); \
blocks.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| dolbeau/armv8crypto | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/armv8crypto | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/armv8crypto | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| dolbeau/armv8crypto | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
Passed TIMECOP
TIMECOP iterations: 10
Number of similar (implementation,compiler) pairs: 19, namely:
| Implementation | Compiler |
| dolbeau/armv8crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| inplace | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| inplace | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| inplace | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| inplace | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1)) |
| ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |
| ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0) |