Implementation notes: amd64, gcc14, crypto_hash/skein256256

Computer: gcc14
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20220506
Operation: crypto_hash
Primitive: skein256256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1311622085 0 034198 844 920T:x64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1311819377 0 029878 844 920T:x64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1314020956 0 031621 836 920T:x64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1346116586 0 026089 820 920T:x64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1397418130 0 028630 844 920T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1409220020 0 030693 836 920T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1412021679 0 033798 844 920T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
1512215442 0 024937 820 920T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011420210114
3559436864 0 047427 820 888T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011420210114
3563436864 0 047427 820 888T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011420210114
3564235222 0 044749 812 888T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011420210114
3566337136 0 048643 820 888T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011420210114
3634036094 0 047523 820 888T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011420210114

Compiler output

Implementation: T:x64
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
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: <instantiation>: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: <instantiation>: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: <instantiation>: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: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x64
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x64
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x64
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x64

Compiler output

Implementation: T:x64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
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 -fPIC -fPIE T:x64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x64

Namespace violations

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SHA3api_ref.o Final T
SHA3api_ref.o Hash T
SHA3api_ref.o Init T
SHA3api_ref.o Update T
skein.o SKEIN1024_IV_1024 R
skein.o SKEIN1024_IV_384 R
skein.o SKEIN1024_IV_512 R
skein.o SKEIN_256_IV_128 R
skein.o SKEIN_256_IV_160 R
skein.o SKEIN_256_IV_224 R
skein.o SKEIN_256_IV_256 R
skein.o SKEIN_512_IV_128 R
skein.o SKEIN_512_IV_160 R
skein.o SKEIN_512_IV_224 R
skein.o SKEIN_512_IV_256 R
skein.o SKEIN_512_IV_384 R
skein.o SKEIN_512_IV_512 R
skein.o Skein1024_Final T
skein.o Skein1024_Final_Pad T
skein.o Skein1024_Init T
skein.o Skein1024_InitExt T
skein.o Skein1024_Output T
skein.o Skein1024_Update T
skein.o Skein_256_Final T
skein.o Skein_256_Final_Pad T
skein.o Skein_256_Init T
skein.o Skein_256_InitExt T
skein.o Skein_256_Output T
skein.o Skein_256_Update T
skein.o Skein_512_Final T
skein.o Skein_512_Final_Pad T
skein.o Skein_512_Init T
skein.o Skein_512_InitExt T
skein.o Skein_512_Output T
skein.o Skein_512_Update T
skein_block.o Skein1024_Process_Block T
skein_block.o Skein_256_Process_Block T
skein_block.o Skein_512_Process_Block T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt

Namespace violations

Implementation: T:x64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
SHA3api_ref.o Final T
SHA3api_ref.o Hash T
SHA3api_ref.o Init T
SHA3api_ref.o Update T
skein.o SKEIN1024_IV_1024 R
skein.o SKEIN1024_IV_384 R
skein.o SKEIN1024_IV_512 R
skein.o SKEIN_256_IV_128 R
skein.o SKEIN_256_IV_160 R
skein.o SKEIN_256_IV_224 R
skein.o SKEIN_256_IV_256 R
skein.o SKEIN_512_IV_128 R
skein.o SKEIN_512_IV_160 R
skein.o SKEIN_512_IV_224 R
skein.o SKEIN_512_IV_256 R
skein.o SKEIN_512_IV_384 R
skein.o SKEIN_512_IV_512 R
skein.o Skein1024_Final T
skein.o Skein1024_Final_Pad T
skein.o Skein1024_Init T
skein.o Skein1024_InitExt T
skein.o Skein1024_Output T
skein.o Skein1024_Update T
skein.o Skein_256_Final T
skein.o Skein_256_Final_Pad T
skein.o Skein_256_Init T
skein.o Skein_256_InitExt T
skein.o Skein_256_Output T
skein.o Skein_256_Update T
skein.o Skein_512_Final T
skein.o Skein_512_Final_Pad T
skein.o Skein_512_Init T
skein.o Skein_512_InitExt T
skein.o Skein_512_Output T
skein.o Skein_512_Update T
skein_block_x64.o BCNT a
skein_block_x64.o FIRST_MASK a
skein_block_x64.o FIRST_MASK64 a
skein_block_x64.o FRAME_OFFS a
skein_block_x64.o F_O a
skein_block_x64.o HASH_BITS a
skein_block_x64.o KW_PARITY a
skein_block_x64.o LOCAL_SIZE a
skein_block_x64.o RC_1024_0_0 a
skein_block_x64.o RC_1024_0_1 a
skein_block_x64.o RC_1024_0_2 a
skein_block_x64.o RC_1024_0_3 a
skein_block_x64.o RC_1024_0_4 a
skein_block_x64.o RC_1024_0_5 a
skein_block_x64.o RC_1024_0_6 a
skein_block_x64.o RC_1024_0_7 a
skein_block_x64.o RC_1024_1_0 a
skein_block_x64.o RC_1024_1_1 a
skein_block_x64.o RC_1024_1_2 a
skein_block_x64.o RC_1024_1_3 a
skein_block_x64.o RC_1024_1_4 a
skein_block_x64.o RC_1024_1_5 a
skein_block_x64.o RC_1024_1_6 a
skein_block_x64.o RC_1024_1_7 a
skein_block_x64.o RC_1024_2_0 a
skein_block_x64.o RC_1024_2_1 a
skein_block_x64.o RC_1024_2_2 a
skein_block_x64.o RC_1024_2_3 a
skein_block_x64.o RC_1024_2_4 a
skein_block_x64.o RC_1024_2_5 a
skein_block_x64.o RC_1024_2_6 a
skein_block_x64.o RC_1024_2_7 a
skein_block_x64.o RC_1024_3_0 a
skein_block_x64.o RC_1024_3_1 a
skein_block_x64.o RC_1024_3_2 a
skein_block_x64.o RC_1024_3_3 a
skein_block_x64.o RC_1024_3_4 a
skein_block_x64.o RC_1024_3_5 a
skein_block_x64.o RC_1024_3_6 a
skein_block_x64.o RC_1024_3_7 a
skein_block_x64.o RC_1024_4_0 a
skein_block_x64.o RC_1024_4_1 a
skein_block_x64.o RC_1024_4_2 a
skein_block_x64.o RC_1024_4_3 a
skein_block_x64.o RC_1024_4_4 a
skein_block_x64.o RC_1024_4_5 a
skein_block_x64.o RC_1024_4_6 a
skein_block_x64.o RC_1024_4_7 a
skein_block_x64.o RC_1024_5_0 a
skein_block_x64.o RC_1024_5_1 a
skein_block_x64.o RC_1024_5_2 a
skein_block_x64.o RC_1024_5_3 a
skein_block_x64.o RC_1024_5_4 a
skein_block_x64.o RC_1024_5_5 a
skein_block_x64.o RC_1024_5_6 a
skein_block_x64.o RC_1024_5_7 a
skein_block_x64.o RC_1024_6_0 a
skein_block_x64.o RC_1024_6_1 a
skein_block_x64.o RC_1024_6_2 a
skein_block_x64.o RC_1024_6_3 a
skein_block_x64.o RC_1024_6_4 a
skein_block_x64.o RC_1024_6_5 a
skein_block_x64.o RC_1024_6_6 a
skein_block_x64.o RC_1024_6_7 a
skein_block_x64.o RC_1024_7_0 a
skein_block_x64.o RC_1024_7_1 a
skein_block_x64.o RC_1024_7_2 a
skein_block_x64.o RC_1024_7_3 a
skein_block_x64.o RC_1024_7_4 a
skein_block_x64.o RC_1024_7_5 a
skein_block_x64.o RC_1024_7_6 a
skein_block_x64.o RC_1024_7_7 a
skein_block_x64.o RC_256_0_0 a
skein_block_x64.o RC_256_0_1 a
skein_block_x64.o RC_256_1_0 a
skein_block_x64.o RC_256_1_1 a
skein_block_x64.o RC_256_2_0 a
skein_block_x64.o RC_256_2_1 a
skein_block_x64.o RC_256_3_0 a
skein_block_x64.o RC_256_3_1 a
skein_block_x64.o RC_256_4_0 a
skein_block_x64.o RC_256_4_1 a
skein_block_x64.o RC_256_5_0 a
skein_block_x64.o RC_256_5_1 a
skein_block_x64.o RC_256_6_0 a
skein_block_x64.o RC_256_6_1 a
skein_block_x64.o RC_256_7_0 a
skein_block_x64.o RC_256_7_1 a
skein_block_x64.o RC_512_0_0 a
skein_block_x64.o RC_512_0_1 a
skein_block_x64.o RC_512_0_2 a
skein_block_x64.o RC_512_0_3 a
skein_block_x64.o RC_512_1_0 a
skein_block_x64.o RC_512_1_1 a
skein_block_x64.o RC_512_1_2 a
skein_block_x64.o RC_512_1_3 a
skein_block_x64.o RC_512_2_0 a
skein_block_x64.o RC_512_2_1 a
skein_block_x64.o RC_512_2_2 a
skein_block_x64.o RC_512_2_3 a
skein_block_x64.o RC_512_3_0 a
skein_block_x64.o RC_512_3_1 a
skein_block_x64.o RC_512_3_2 a
skein_block_x64.o RC_512_3_3 a
skein_block_x64.o RC_512_4_0 a
skein_block_x64.o RC_512_4_1 a
skein_block_x64.o RC_512_4_2 a
skein_block_x64.o RC_512_4_3 a
skein_block_x64.o RC_512_5_0 a
skein_block_x64.o RC_512_5_1 a
skein_block_x64.o RC_512_5_2 a
skein_block_x64.o RC_512_5_3 a
skein_block_x64.o RC_512_6_0 a
skein_block_x64.o RC_512_6_1 a
skein_block_x64.o RC_512_6_2 a
skein_block_x64.o RC_512_6_3 a
skein_block_x64.o RC_512_7_0 a
skein_block_x64.o RC_512_7_1 a
skein_block_x64.o RC_512_7_2 a
skein_block_x64.o RC_512_7_3 a
skein_block_x64.o ROUNDS_1024 a
skein_block_x64.o ROUNDS_256 a
skein_block_x64.o ROUNDS_512 a
skein_block_x64.o SKEIN_ASM_UNROLL a
skein_block_x64.o SKEIN_UNROLL_1024 a
skein_block_x64.o SKEIN_UNROLL_256 a
skein_block_x64.o SKEIN_UNROLL_512 a
skein_block_x64.o Skein1024_Process_Block T
skein_block_x64.o Skein_256_Process_Block T
skein_block_x64.o Skein_512_Process_Block T
skein_block_x64.o TWEAK a
skein_block_x64.o WCNT a
skein_block_x64.o Wcopy a
skein_block_x64.o X_VARS a
skein_block_x64.o X_stk a
skein_block_x64.o _II_ a
skein_block_x64.o _MASK_ALL_ a
skein_block_x64.o _MAX_FRAME_ a
skein_block_x64.o _PushCnt_ a
skein_block_x64.o _RCNT_ a
skein_block_x64.o _Rbase_ a
skein_block_x64.o _Rn_ a
skein_block_x64.o _SKEIN_CODE_SIZE a
skein_block_x64.o _SKEIN_DEBUG a
skein_block_x64.o _SKEIN_LOOP a
skein_block_x64.o _STK_OFFS_ a
skein_block_x64.o _Skein1024_Process_Block T
skein_block_x64.o _Skein_256_Process_Block T
skein_block_x64.o _Skein_512_Process_Block T
skein_block_x64.o _UNROLL_CNT a
skein_block_x64.o _USE_ASM_ a
skein_block_x64.o __STK_FRM_OFFS_1024 a
skein_block_x64.o __STK_FRM_OFFS_256 a
skein_block_x64.o __STK_FRM_OFFS_512 a
skein_block_x64.o __STK_LCL_SIZE_1024 a
skein_block_x64.o __STK_LCL_SIZE_256 a
skein_block_x64.o __STK_LCL_SIZE_512 a
skein_block_x64.o __STK_TOT_SIZE_1024 a
skein_block_x64.o __STK_TOT_SIZE_256 a
skein_block_x64.o __STK_TOT_SIZE_512 a
skein_block_x64.o _oo_ a
skein_block_x64.o align16 a
skein_block_x64.o bitAdd a
skein_block_x64.o blkCnt a
skein_block_x64.o blkPtr a
skein_block_x64.o ctxPtr a
skein_block_x64.o i0 a
skein_block_x64.o i8 a
skein_block_x64.o ksKey a
skein_block_x64.o ksRot a
skein_block_x64.o ksTwk a
skein_block_x64.o o1K_r10 a
skein_block_x64.o o1K_r11 a
skein_block_x64.o o1K_r12 a
skein_block_x64.o o1K_r13 a
skein_block_x64.o o1K_r14 a
skein_block_x64.o o1K_r15 a
skein_block_x64.o o1K_r8 a
skein_block_x64.o o1K_r9 a
skein_block_x64.o o1K_rax a
skein_block_x64.o o1K_rbp a
skein_block_x64.o o1K_rbx a
skein_block_x64.o o1K_rcx a
skein_block_x64.o o1K_rdi a
skein_block_x64.o o1K_rdx a
skein_block_x64.o o1K_rsi a
skein_block_x64.o rIdx_offs a
skein_block_x64.o retAddr a
skein_block_x64.o savRegs a
skein_block_x64.o tmpStk_1024 a
skein_block_x64.o tmpStk_256 a
skein_block_x64.o tmpStk_512 a

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