Implementation notes: amd64, h4atom, crypto_hash/skein10241024

Computer: h4atom
Architecture: amd64
CPU ID: GenuineIntel-000106ca-bfe9fbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: skein10241024
TimeImplementationCompilerBenchmark dateSUPERCOP version
30720optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
32720optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
33976optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
34672optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
40784optclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806

Test failure

Implementation: crypto_hash/skein10241024/x64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
error 111

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

Compiler output

Implementation: crypto_hash/skein10241024/x64
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
skein_block_x64.S: skein_block_x64.S:336:61: warning: trigraph ignored [-Wtrigraphs]
skein_block_x64.S: addq $LOCAL_SIZE,%rsp #get rid of locals (wipe??)
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:427:13: warning: \u used with no following hex digits; treating as '\' followed by identifier [-Wunicode]
skein_block_x64.S: .elseif ((\useAddOp + 0) == 0)
skein_block_x64.S: ^
skein_block_x64.S: 2 warnings generated.
skein_block_x64.S: skein_block_x64.S:16:5: error: unknown directive
skein_block_x64.S: .altmacro
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:17:5: error: unknown directive
skein_block_x64.S: .psize 0,128 #list file has no page boundaries
skein_block_x64.S: ^
skein_block_x64.S: gt;:2:7: error: expected absolute expression
skein_block_x64.S: .if _RCNT_ #is there anything to do?
skein_block_x64.S: ^
skein_block_x64.S: gt;:6:5: note: while in macro instantiation
skein_block_x64.S: RotL64 rbx, 256,%((4*_Rbase_+0) % 8),0
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:616:1: note: while in macro instantiation
skein_block_x64.S: .rept _UNROLL_CNT*2
skein_block_x64.S: ^
skein_block_x64.S: gt;:3:10: error: invalid operand for instruction
skein_block_x64.S: rolq $_RCNT_,%rbx
skein_block_x64.S: ^~~~~~~
skein_block_x64.S: ...

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

Compiler output

Implementation: crypto_hash/skein10241024/x64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
skein_block_x64.S: skein_block_x64.S:336:61: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
skein_block_x64.S: addq $LOCAL_SIZE,%rsp #get rid of locals (wipe??)
skein_block_x64.S: ^

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