Implementation notes: mipso32, gcc23, crypto_hash/blake3

Computer: gcc23
Microarchitecture: mipso32; Octeon II (cnmips64v2)
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20230530
Operation: crypto_hash
Primitive: blake3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3450813320 0 028878 344 760T:portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053020230530
3451013432 0 031070 344 760T:portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053020230530
3735211896 0 027058 340 760T:portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053020230530
6142012888 0 029134 344 760T:portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053020230530

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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: unrecognized opcode `push r15'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:28: Error: unrecognized opcode `push r14'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:29: Error: unrecognized opcode `push r13'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:30: Error: unrecognized opcode `push r12'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:31: Error: unrecognized opcode `push rbx'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:32: Error: unrecognized opcode `push rbp'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:33: Error: unrecognized opcode `mov rbp,rsp'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:34: Error: invalid operands `sub rsp,680'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:35: Error: invalid operands `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:36: Error: invalid operands `neg r9d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:37: Error: unrecognized opcode `vmovd xmm0,r9d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:38: Error: unrecognized opcode `vpbroadcastd ymm0,xmm0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:39: Error: unrecognized opcode `vmovdqa ymmword ptr[rsp+0x280],ymm0'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:40: Error: unrecognized opcode `vpand ymm1,ymm0,ymmword ptr[ADD0+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:41: Error: unrecognized opcode `vpand ymm2,ymm0,ymmword ptr[ADD1+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:42: Error: unrecognized opcode `vmovdqa ymmword ptr[rsp+0x220],ymm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:43: Error: unrecognized opcode `vmovd xmm2,r8d'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:44: Error: unrecognized opcode `vpbroadcastd ymm2,xmm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:45: Error: unrecognized opcode `vpaddd ymm2,ymm2,ymm1'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:46: Error: unrecognized opcode `vmovdqa ymmword ptr[rsp+0x240],ymm2'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:47: Error: unrecognized opcode `vpxor ymm1,ymm1,ymmword ptr[CMP_MSB_MASK+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:48: Error: unrecognized opcode `vpxor ymm2,ymm2,ymmword ptr[CMP_MSB_MASK+rip]'
blake3_avx2_x86-64_unix.S: blake3_avx2_x86-64_unix.S:49: Error: unrecognized opcode `vpcmpgtd ymm2,ymm1,ymm2'
blake3_avx2_x86-64_unix.S: ...

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

Compiler output

Implementation: T:avx512
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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: unrecognized opcode `push r15'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:33: Error: unrecognized opcode `push r14'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:34: Error: unrecognized opcode `push r13'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:35: Error: unrecognized opcode `push r12'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:36: Error: unrecognized opcode `push rbx'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:37: Error: unrecognized opcode `push rbp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:38: Error: unrecognized opcode `mov rbp,rsp'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:39: Error: invalid operands `sub rsp,144'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:40: Error: invalid operands `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:41: Error: invalid operands `neg r9'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:42: Error: unrecognized opcode `kmovw k1,r9d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:43: Error: unrecognized opcode `vmovd xmm0,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:44: Error: unrecognized opcode `vpbroadcastd ymm0,xmm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:45: Error: unrecognized opcode `shr r8,32'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:46: Error: unrecognized opcode `vmovd xmm1,r8d'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:47: Error: unrecognized opcode `vpbroadcastd ymm1,xmm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:48: Error: unrecognized opcode `vmovdqa ymm4,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:49: Error: unrecognized opcode `vmovdqa ymm5,ymm1'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:50: Error: unrecognized opcode `vpaddd ymm2,ymm0,ymmword ptr[ADD0+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:51: Error: unrecognized opcode `vpaddd ymm3,ymm0,ymmword ptr[ADD0+32+rip]'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:52: Error: unrecognized opcode `vpcmpltud k2,ymm2,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:53: Error: unrecognized opcode `vpcmpltud k3,ymm3,ymm0'
blake3_avx512_x86-64_unix.S: blake3_avx512_x86-64_unix.S:54: Error: unrecognized opcode `vpaddd ymm4{k2},ymm4,dword ptr[ADD1+rip]{1to8}'
blake3_avx512_x86-64_unix.S: ...

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

Compiler output

Implementation: T:neon
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blake3_neon.c: blake3_neon.c:3:22: fatal error: arm_neon.h: No such file or directory
blake3_neon.c: #include <arm_neon.h>
blake3_neon.c: ^
blake3_neon.c: compilation terminated.

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

Compiler output

Implementation: T:sse41
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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: unrecognized opcode `push r15'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:32: Error: unrecognized opcode `push r14'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:33: Error: unrecognized opcode `push r13'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:34: Error: unrecognized opcode `push r12'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:35: Error: unrecognized opcode `push rbx'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:36: Error: unrecognized opcode `push rbp'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:37: Error: unrecognized opcode `mov rbp,rsp'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:38: Error: invalid operands `sub rsp,360'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:39: Error: invalid operands `and rsp,0xFFFFFFFFFFFFFFC0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:40: Error: invalid operands `neg r9d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:41: Error: unrecognized opcode `movd xmm0,r9d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:42: Error: unrecognized opcode `pshufd xmm0,xmm0,0x00'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:43: Error: unrecognized opcode `movdqa xmmword ptr[rsp+0x130],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:44: Error: unrecognized opcode `movdqa xmm1,xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:45: Error: opcode not supported on this processor: octeon2 (mips64r2) `pand xmm1,xmmword ptr[ADD0+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:46: Error: opcode not supported on this processor: octeon2 (mips64r2) `pand xmm0,xmmword ptr[ADD1+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:47: Error: unrecognized opcode `movdqa xmmword ptr[rsp+0x150],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:48: Error: unrecognized opcode `movd xmm0,r8d'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:49: Error: unrecognized opcode `pshufd xmm0,xmm0,0x00'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:50: Error: opcode not supported on this processor: octeon2 (mips64r2) `paddd xmm0,xmm1'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:51: Error: unrecognized opcode `movdqa xmmword ptr[rsp+0x110],xmm0'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:52: Error: opcode not supported on this processor: octeon2 (mips64r2) `pxor xmm0,xmmword ptr[CMP_MSB_MASK+rip]'
blake3_sse41_x86-64_unix.S: blake3_sse41_x86-64_unix.S:53: Error: opcode not supported on this processor: octeon2 (mips64r2) `pxor xmm1,xmmword ptr[CMP_MSB_MASK+rip]'
blake3_sse41_x86-64_unix.S: ...

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

Namespace violations

Implementation: T:portable
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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 (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable