Test results for aarch64, pi4b, crypto_hash/blake3

[Page version: 20241024 06:46:09]

Measurements for aarch64, pi4b, crypto_hash Test results for aarch64, pi4b, crypto_hash Test results for crypto_hash/blake3
Computer: pi4b
Microarchitecture: aarch64; Cortex-A72 (410fd083)
Architecture: aarch64
CPU ID: 410fd083
SUPERCOP version: 20241022
Operation: crypto_hash
Primitive: blake3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1045816324 0 026359 832 728T:neongcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1049016648 0 027735 832 736T:neongcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
104959668 0 019719 832 728T:portablegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
105629828 0 020919 832 736T:portablegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1071315825 0 024791 816 720T:neongcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
107939349 0 018327 816 720T:portablegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1225916439 0 028438 848 728T:neonclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1232810147 0 022150 848 728T:portableclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1390817928 0 027854 824 728T:neongcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808
1402811344 0 021270 824 728T:portablegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024082020240808

Compiler output


blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:15:1: error: unknown directive
blake3_avx2_x86-64_unix.S: .intel_syntax noprefix
blake3_avx2_x86-64_unix.S: ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:27:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push r15
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:28:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push r14
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:29:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push r13
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:30:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push r12
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:31:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push rbx
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:32:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx2_x86-64_unix.S:         push rbp
blake3_avx2_x86-64_unix.S:         ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:33:13: error: invalid operand for instruction
blake3_avx2_x86-64_unix.S:         mov rbp, rsp
blake3_avx2_x86-64_unix.S:             ^
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:34:13: error: invalid operand for instruction
blake3_avx2_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S: Assembler messages:
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:15: Error: unknown pseudo-op: `.intel_syntax'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:27: Error: unknown mnemonic `push' -- `push r15'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:28: Error: unknown mnemonic `push' -- `push r14'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:29: Error: unknown mnemonic `push' -- `push r13'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:30: Error: unknown mnemonic `push' -- `push r12'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:31: Error: unknown mnemonic `push' -- `push rbx'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:32: Error: unknown mnemonic `push' -- `push rbp'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:33: Error: operand 1 must be an integer register -- `mov rbp,rsp'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:34: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,680'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:35: Error: operand 1 must be an integer or stack pointer register -- `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:36: Error: operand 1 must be a SIMD vector register -- `neg r9d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:37: Error: unknown mnemonic `vmovd' -- `vmovd xmm0,r9d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:38: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm0,xmm0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:39: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymmword ptr[rsp+0x280],ymm0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:40: Error: unknown mnemonic `vpand' -- `vpand ymm1,ymm0,ymmword ptr[ADD0+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:41: Error: unknown mnemonic `vpand' -- `vpand ymm2,ymm0,ymmword ptr[ADD1+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:42: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymmword ptr[rsp+0x220],ymm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:43: Error: unknown mnemonic `vmovd' -- `vmovd xmm2,r8d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:44: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm2,xmm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:45: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm2,ymm2,ymm1'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:46: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymmword ptr[rsp+0x240],ymm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:47: Error: unknown mnemonic `vpxor' -- `vpxor ymm1,ymm1,ymmword ptr[CMP_MSB_MASK+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:48: Error: unknown mnemonic `vpxor' -- `vpxor ymm2,ymm2,ymmword ptr[CMP_MSB_MASK+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:49: Error: unknown mnemonic `vpcmpgtd' -- `vpcmpgtd ymm2,ymm1,ymm2'
blake3_avx2_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:15:1: error: unknown directive
blake3_avx512_x86-64_unix.S: .intel_syntax noprefix
blake3_avx512_x86-64_unix.S: ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:32:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push r15
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:33:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push r14
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:34:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push r13
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:35:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push r12
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:36:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push rbx
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:37:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_avx512_x86-64_unix.S:         push rbp
blake3_avx512_x86-64_unix.S:         ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:38:13: error: invalid operand for instruction
blake3_avx512_x86-64_unix.S:         mov rbp, rsp
blake3_avx512_x86-64_unix.S:             ^
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:39:13: error: invalid operand for instruction
blake3_avx512_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx512clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


blake3.c: blake3.c: In function 'blake3_compress_subtree_wide.constprop':
blake3.c: blake3.c:193:20: warning: array subscript 512 is outside array bounds of 'uint8_t[256]' {aka 'unsigned char[256]'} [-Warray-bounds]
blake3.c:   193 |   size_t right_n = blake3_compress_subtree_wide(
blake3.c:       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blake3.c:   194 |       right_input, right_input_len, key, right_chunk_counter, flags, right_cvs);
blake3.c:       |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blake3.c: blake3.c:178:11: note: while referencing 'cv_array'
blake3.c:   178 |   uint8_t cv_array[2 * MAX_SIMD_DEGREE_OR_2 * BLAKE3_OUT_LEN];
blake3.c:       |           ^~~~~~~~
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S: Assembler messages:
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:15: Error: unknown pseudo-op: `.intel_syntax'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:32: Error: unknown mnemonic `push' -- `push r15'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:33: Error: unknown mnemonic `push' -- `push r14'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:34: Error: unknown mnemonic `push' -- `push r13'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:35: Error: unknown mnemonic `push' -- `push r12'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:36: Error: unknown mnemonic `push' -- `push rbx'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:37: Error: unknown mnemonic `push' -- `push rbp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:38: Error: operand 1 must be an integer register -- `mov rbp,rsp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:39: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,144'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:40: Error: operand 1 must be an integer or stack pointer register -- `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:41: Error: operand 1 must be a SIMD vector register -- `neg r9'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:42: Error: unknown mnemonic `kmovw' -- `kmovw k1,r9d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:43: Error: unknown mnemonic `vmovd' -- `vmovd xmm0,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:44: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm0,xmm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:45: Error: unknown mnemonic `shr' -- `shr r8,32'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:46: Error: unknown mnemonic `vmovd' -- `vmovd xmm1,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:47: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm1,xmm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:48: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymm4,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:49: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymm5,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:50: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm2,ymm0,ymmword ptr[ADD0+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:51: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm3,ymm0,ymmword ptr[ADD0+32+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:52: Error: unknown mnemonic `vpcmpltud' -- `vpcmpltud k2,ymm2,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:53: Error: unknown mnemonic `vpcmpltud' -- `vpcmpltud k3,ymm3,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:54: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm4{k2},ymm4,dword ptr[ADD1+rip]{1to8}'
blake3_avx512_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:avx512gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx512gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx512gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S: Assembler messages:
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:15: Error: unknown pseudo-op: `.intel_syntax'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:32: Error: unknown mnemonic `push' -- `push r15'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:33: Error: unknown mnemonic `push' -- `push r14'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:34: Error: unknown mnemonic `push' -- `push r13'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:35: Error: unknown mnemonic `push' -- `push r12'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:36: Error: unknown mnemonic `push' -- `push rbx'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:37: Error: unknown mnemonic `push' -- `push rbp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:38: Error: operand 1 must be an integer register -- `mov rbp,rsp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:39: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,144'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:40: Error: operand 1 must be an integer or stack pointer register -- `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:41: Error: operand 1 must be a SIMD vector register -- `neg r9'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:42: Error: unknown mnemonic `kmovw' -- `kmovw k1,r9d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:43: Error: unknown mnemonic `vmovd' -- `vmovd xmm0,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:44: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm0,xmm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:45: Error: unknown mnemonic `shr' -- `shr r8,32'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:46: Error: unknown mnemonic `vmovd' -- `vmovd xmm1,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:47: Error: unknown mnemonic `vpbroadcastd' -- `vpbroadcastd ymm1,xmm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:48: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymm4,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:49: Error: unknown mnemonic `vmovdqa' -- `vmovdqa ymm5,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:50: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm2,ymm0,ymmword ptr[ADD0+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:51: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm3,ymm0,ymmword ptr[ADD0+32+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:52: Error: unknown mnemonic `vpcmpltud' -- `vpcmpltud k2,ymm2,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:53: Error: unknown mnemonic `vpcmpltud' -- `vpcmpltud k3,ymm3,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:54: Error: unknown mnemonic `vpaddd' -- `vpaddd ymm4{k2},ymm4,dword ptr[ADD1+rip]{1to8}'
blake3_avx512_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx512gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


blake3.c: In file included from blake3.c:12:
blake3.c: In function 'compress_chunks_parallel',
blake3.c:     inlined from 'blake3_compress_subtree_wide.constprop' at blake3.c:161:12:
blake3.c: blake3_static_dispatch.h:15:26: warning: 'chunks_array' may be used uninitialized [-Wmaybe-uninitialized]
blake3.c:    15 | #define blake3_hash_many blake3_hash_many_portable
blake3.c: blake3.c:78:3: note: in expansion of macro 'blake3_hash_many'
blake3.c:    78 |   blake3_hash_many(chunks_array, chunks_array_len,
blake3.c:       |   ^~~~~~~~~~~~~~~~
blake3.c: blake3.c: In function 'blake3_compress_subtree_wide.constprop':
blake3.c: blake3_static_dispatch.h:22:6: note: by argument 1 of type 'const uint8_t * const*' {aka 'const unsigned char * const*'} to 'blake3_hash_many_portable' declared here
blake3.c:    22 | void blake3_hash_many_portable(const uint8_t *const *inputs, size_t num_inputs,
blake3.c:       |      ^~~~~~~~~~~~~~~~~~~~~~~~~
blake3.c: blake3.c:69:18: note: 'chunks_array' declared here
blake3.c:    69 |   const uint8_t *chunks_array[MAX_SIMD_DEGREE];
blake3.c:       |                  ^~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:portablegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:portablegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


blake3.c: In file included from blake3.c:12:
blake3.c: In function 'compress_chunks_parallel',
blake3.c:     inlined from 'blake3_compress_subtree_wide' at blake3.c:161:12:
blake3.c: blake3_static_dispatch.h:15:26: warning: 'chunks_array' may be used uninitialized [-Wmaybe-uninitialized]
blake3.c:    15 | #define blake3_hash_many blake3_hash_many_portable
blake3.c: blake3.c:78:3: note: in expansion of macro 'blake3_hash_many'
blake3.c:    78 |   blake3_hash_many(chunks_array, chunks_array_len,
blake3.c:       |   ^~~~~~~~~~~~~~~~
blake3.c: blake3.c: In function 'blake3_compress_subtree_wide':
blake3.c: blake3_static_dispatch.h:22:6: note: by argument 1 of type 'const uint8_t * const*' {aka 'const unsigned char * const*'} to 'blake3_hash_many_portable' declared here
blake3.c:    22 | void blake3_hash_many_portable(const uint8_t *const *inputs, size_t num_inputs,
blake3.c:       |      ^~~~~~~~~~~~~~~~~~~~~~~~~
blake3.c: blake3.c:69:18: note: 'chunks_array' declared here
blake3.c:    69 |   const uint8_t *chunks_array[MAX_SIMD_DEGREE];
blake3.c:       |                  ^~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:portablegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:15:1: error: unknown directive
blake3_sse41_x86-64_unix.S: .intel_syntax noprefix
blake3_sse41_x86-64_unix.S: ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:31:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push r15
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:32:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push r14
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:33:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push r13
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:34:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push r12
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:35:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push rbx
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:36:9: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
blake3_sse41_x86-64_unix.S:         push rbp
blake3_sse41_x86-64_unix.S:         ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:37:13: error: invalid operand for instruction
blake3_sse41_x86-64_unix.S:         mov rbp, rsp
blake3_sse41_x86-64_unix.S:             ^
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:38:13: error: invalid operand for instruction
blake3_sse41_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:sse41clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S: Assembler messages:
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:15: Error: unknown pseudo-op: `.intel_syntax'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:31: Error: unknown mnemonic `push' -- `push r15'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:32: Error: unknown mnemonic `push' -- `push r14'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:33: Error: unknown mnemonic `push' -- `push r13'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:34: Error: unknown mnemonic `push' -- `push r12'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:35: Error: unknown mnemonic `push' -- `push rbx'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:36: Error: unknown mnemonic `push' -- `push rbp'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:37: Error: operand 1 must be an integer register -- `mov rbp,rsp'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:38: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,360'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:39: Error: operand 1 must be an integer or stack pointer register -- `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:40: Error: operand 1 must be a SIMD vector register -- `neg r9d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:41: Error: unknown mnemonic `movd' -- `movd xmm0,r9d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:42: Error: unknown mnemonic `pshufd' -- `pshufd xmm0,xmm0,0x00'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:43: Error: unknown mnemonic `movdqa' -- `movdqa xmmword ptr[rsp+0x130],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:44: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:45: Error: unknown mnemonic `pand' -- `pand xmm1,xmmword ptr[ADD0+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:46: Error: unknown mnemonic `pand' -- `pand xmm0,xmmword ptr[ADD1+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:47: Error: unknown mnemonic `movdqa' -- `movdqa xmmword ptr[rsp+0x150],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:48: Error: unknown mnemonic `movd' -- `movd xmm0,r8d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:49: Error: unknown mnemonic `pshufd' -- `pshufd xmm0,xmm0,0x00'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:50: Error: unknown mnemonic `paddd' -- `paddd xmm0,xmm1'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:51: Error: unknown mnemonic `movdqa' -- `movdqa xmmword ptr[rsp+0x110],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:52: Error: unknown mnemonic `pxor' -- `pxor xmm0,xmmword ptr[CMP_MSB_MASK+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:53: Error: unknown mnemonic `pxor' -- `pxor xmm1,xmmword ptr[CMP_MSB_MASK+rip]'
blake3_sse41_x86-64_unix.S: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:sse41gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:sse41gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:sse41gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:sse41gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Namespace violations


blake3.o blake3_default_hash T
blake3_neon.o blake3_hash4_neon T
blake3_neon.o blake3_hash_many_neon T
blake3_portable.o blake3_compress_in_place_portable T
blake3_portable.o blake3_compress_xof_portable T
blake3_portable.o blake3_hash_many_portable T

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:neonclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:neongcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:neongcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:neongcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:neongcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Namespace violations


blake3.o blake3_default_hash T
blake3_portable.o blake3_compress_in_place_portable T
blake3_portable.o blake3_compress_xof_portable T
blake3_portable.o blake3_hash_many_portable T

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:portableclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:portablegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:portablegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:portablegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:portablegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)