Implementation notes: amd64, sliver, crypto_sign/sphincs256

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_sign
Primitive: sphincs256

Compiler output

Implementation: crypto_sign/sphincs256/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x60): multiple definition of `sigma'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x0): first defined here
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x1a0): multiple definition of `cst'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x140): first defined here
try.c: /usr/bin/ld: Warning: size of symbol `cst' changed from 64 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o) to 128 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o)
try.c: /tmp/try-anything-f5c0c8.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: clang-3.5: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_sign/sphincs256/avx2
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /usr/bin/ld: crypto_sign_sphincs256.a(genfullchain8x.o): relocation R_X86_64_32S against `_rotate8' can not be used when making a shared object; recompile with -fPIC
try.c: crypto_sign_sphincs256.a: could not read symbols: Bad value
try.c: clang-3.5: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: crypto_sign/sphincs256/avx2
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
genfullchain8x.s: genfullchain8x.s: Assembler messages:
genfullchain8x.s: genfullchain8x.s:112: Error: no such instruction: `vmovupd _rotate8,%ymm0'
genfullchain8x.s: genfullchain8x.s:117: Error: no such instruction: `vmovupd _rotate16,%ymm1'
genfullchain8x.s: genfullchain8x.s:132: Error: no such instruction: `vmovupd 0(%rdi),%ymm2'
genfullchain8x.s: genfullchain8x.s:137: Error: no such instruction: `vmovupd 32(%rdi),%ymm3'
genfullchain8x.s: genfullchain8x.s:142: Error: no such instruction: `vmovupd 64(%rdi),%ymm4'
genfullchain8x.s: genfullchain8x.s:147: Error: no such instruction: `vmovupd 96(%rdi),%ymm5'
genfullchain8x.s: genfullchain8x.s:152: Error: no such instruction: `vmovupd 128(%rdi),%ymm6'
genfullchain8x.s: genfullchain8x.s:157: Error: no such instruction: `vmovupd 160(%rdi),%ymm7'
genfullchain8x.s: genfullchain8x.s:162: Error: no such instruction: `vmovupd 192(%rdi),%ymm8'
genfullchain8x.s: genfullchain8x.s:167: Error: no such instruction: `vmovupd 224(%rdi),%ymm9'
genfullchain8x.s: genfullchain8x.s:172: Error: no such instruction: `vpunpckldq %ymm6,%ymm2,%ymm10'
genfullchain8x.s: genfullchain8x.s:177: Error: no such instruction: `vpunpckhdq %ymm6,%ymm2,%ymm2'
genfullchain8x.s: genfullchain8x.s:182: Error: no such instruction: `vperm2f128 $0x20,%ymm2,%ymm10,%ymm6'
genfullchain8x.s: genfullchain8x.s:187: Error: no such instruction: `vperm2f128 $0x31,%ymm2,%ymm10,%ymm2'
genfullchain8x.s: genfullchain8x.s:192: Error: no such instruction: `vpunpckldq %ymm7,%ymm3,%ymm10'
genfullchain8x.s: genfullchain8x.s:197: Error: no such instruction: `vpunpckhdq %ymm7,%ymm3,%ymm3'
genfullchain8x.s: genfullchain8x.s:202: Error: no such instruction: `vperm2f128 $0x20,%ymm3,%ymm10,%ymm7'
genfullchain8x.s: genfullchain8x.s:207: Error: no such instruction: `vperm2f128 $0x31,%ymm3,%ymm10,%ymm3'
genfullchain8x.s: genfullchain8x.s:212: Error: no such instruction: `vpunpckldq %ymm8,%ymm4,%ymm10'
genfullchain8x.s: genfullchain8x.s:217: Error: no such instruction: `vpunpckhdq %ymm8,%ymm4,%ymm4'
genfullchain8x.s: genfullchain8x.s:222: Error: no such instruction: `vperm2f128 $0x20,%ymm4,%ymm10,%ymm8'
genfullchain8x.s: genfullchain8x.s:227: Error: no such instruction: `vperm2f128 $0x31,%ymm4,%ymm10,%ymm4'
genfullchain8x.s: genfullchain8x.s:232: Error: no such instruction: `vpunpckldq %ymm9,%ymm5,%ymm10'
genfullchain8x.s: genfullchain8x.s:237: Error: no such instruction: `vpunpckhdq %ymm9,%ymm5,%ymm5'
genfullchain8x.s: ...

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

Compiler output

Implementation: crypto_sign/sphincs256/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x60): multiple definition of `sigma'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x0): first defined here
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x1a0): multiple definition of `cst'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x140): first defined here
try.c: /usr/bin/ld: Warning: size of symbol `cst' changed from 64 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o) to 128 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o)
try.c: /tmp//ccmDFA2d.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_sign/sphincs256/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x60): multiple definition of `sigma'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x0): first defined here
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x1a0): multiple definition of `cst'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x140): first defined here
try.c: /usr/bin/ld: Warning: size of symbol `cst' changed from 64 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o) to 128 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o)
try.c: /tmp//ccwdzEp1.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_sign/sphincs256/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x60): multiple definition of `sigma'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x0): first defined here
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x1a0): multiple definition of `cst'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x140): first defined here
try.c: /usr/bin/ld: Warning: size of symbol `cst' changed from 64 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o) to 128 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o)
try.c: /tmp//ccIdgUqJ.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_sign/sphincs256/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x60): multiple definition of `sigma'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x0): first defined here
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o):(.rodata+0x1a0): multiple definition of `cst'
try.c: /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o):(.rodata+0x140): first defined here
try.c: /usr/bin/ld: Warning: size of symbol `cst' changed from 64 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake256_sse41-hash.o) to 128 in /home/supercop/supercop-20160718/supercop-data/sliver/amd64/lib/libsupercop.a(crypto_hash_blake512_sse2s-hash.o)
try.c: /tmp//ccBHAeho.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref