Implementation notes: amd64, sectionthirtyone, crypto_hash/skein256256

Computer: sectionthirtyone
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20191221
Operation: crypto_hash
Primitive: skein256256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1214620892 0 030312 768 808x64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1218721656 0 033225 776 808x64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1263821079 0 030544 768 808optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1284817382 0 025964 752 776optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1642922750 0 034321 776 808optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1644821366 0 030784 768 808optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1698417225 0 025820 752 776x64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1701620693 0 030168 768 808x64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
2867631322 0 042856 776 736optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
2973632975 0 045008 776 752optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
2976533035 0 045208 776 752optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
4745032975 0 045008 776 752optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
4746032125 0 040506 768 736optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221

Compiler output

Implementation: crypto_hash/skein256256/x64
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: 1 warning generated.
skein_block_x64.S: skein_block_x64.S:12: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>:4: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:560:1: note: while in macro instantiation
skein_block_x64.S: .rept _UNROLL_CNT*2
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:1:10: error: invalid reassignment of non-absolute variable '_RCNT_'
skein_block_x64.S: _RCNT_ = RC_256&_0&_1
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:10:5: note: while in macro instantiation
skein_block_x64.S: RotL64 rdx, 256,%((4*_Rbase_+0) % 8),1
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:560:1: note: while in macro instantiation
skein_block_x64.S: .rept _UNROLL_CNT*2
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 x64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE x64
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE x64
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE x64
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE x64

Compiler output

Implementation: crypto_hash/skein256256/x64
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 x64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE x64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE x64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE x64

Namespace violations

Implementation: crypto_hash/skein256256/opt
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 opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE opt

Namespace violations

Implementation: crypto_hash/skein256256/x64
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 x64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE x64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE x64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE x64