Implementation notes: armeabi, berry2, crypto_hash/skein512256

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240425
Operation: crypto_hash
Primitive: skein512256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10947016596 0 023984 376 744T:littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11019636260 0 043156 376 744T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11080717740 0 037038 384 760T:littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11218418496 0 028212 384 744T:littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11225417764 0 037062 384 760T:simpleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11236416148 0 024048 384 744T:littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11252218508 0 026400 384 744T:littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11264333632 0 041020 376 744T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11280239476 0 048284 384 744T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11305935372 0 042740 384 744T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11330239968 0 058434 384 760T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11372438432 0 045812 384 744T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11442132744 0 040644 384 744T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11692816652 0 024040 376 744T:simplegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11889619600 0 029316 384 744T:simplegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11921018520 0 026412 384 744T:simplegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12071937200 0 056347 384 760T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
12125016204 0 024104 384 744T:simplegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12198539744 0 049460 384 744T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12205938116 0 046008 384 744T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1306987384 0 014772 376 744T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1322998556 0 016456 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
13259710936 0 020660 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1328367296 0 015204 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
13296610992 0 030145 384 760T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425

Compiler output

Implementation: T:arm
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skein_block_noneon.S: skein_block_noneon.S:291:2: error: invalid instruction, any one of the following would fix this:
skein_block_noneon.S: add r0, CTX_TWEAK_OFS
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:291:10: note: invalid operand for instruction
skein_block_noneon.S: add r0, CTX_TWEAK_OFS
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:291:10: note: operand must be a register in range [r0, r15]
skein_block_noneon.S: add r0, CTX_TWEAK_OFS
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:291:2: note: instruction requires: thumb2
skein_block_noneon.S: add r0, CTX_TWEAK_OFS
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:291:2: note: instruction requires: thumb
skein_block_noneon.S: add r0, CTX_TWEAK_OFS
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:300:16: error: register expected
skein_block_noneon.S: ldr r12, [sp, S256_SOFS_BYTECNTADD]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:301:16: error: register expected
skein_block_noneon.S: str r10, [sp, S256_SOFS_TWEAKSCHED + 8]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:302:16: error: register expected
skein_block_noneon.S: str r11, [sp, S256_SOFS_TWEAKSCHED + 12]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:304:15: error: register expected
skein_block_noneon.S: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:arm

Compiler output

Implementation: T:arm
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skein_block_noneon.S: skein_block_noneon.S: Assembler messages:
skein_block_noneon.S: skein_block_noneon.S:1107: Error: junk at end of line, first unrecognized character is `,'

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

Compiler output

Implementation: T:arm11
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blocks.s: blocks.s:14000:29: error: expected '%<type>' or "<type>"
blocks.s: .section .note.GNU-stack,"",@progbits
blocks.s: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:arm11

Compiler output

Implementation: T:arm11
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blocks.s: blocks.s: Assembler messages:
blocks.s: blocks.s:14000: Error: junk at end of line, first unrecognized character is `,'

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

Compiler output

Implementation: T:arm_neon
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skein_block_cortexa8.S: skein_block_cortexa8.S:253:2: error: invalid instruction, any one of the following would fix this:
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:253:10: note: invalid operand for instruction
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:253:10: note: operand must be a register in range [r0, r15]
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:253:2: note: instruction requires: thumb2
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:253:2: note: instruction requires: thumb
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:520:2: error: invalid instruction, any one of the following would fix this:
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:520:10: note: invalid operand for instruction
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:520:10: note: operand must be a register in range [r0, r15]
skein_block_cortexa8.S: add r0, CTX_TWEAK_OFS
skein_block_cortexa8.S: ^
skein_block_cortexa8.S: skein_block_cortexa8.S:520:2: note: instruction requires: thumb2
skein_block_cortexa8.S: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:arm_neon

Compiler output

Implementation: T:arm_neon
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skein_block_cortexa8.S: skein_block_cortexa8.S: Assembler messages:
skein_block_cortexa8.S: skein_block_cortexa8.S:926: Error: junk at end of line, first unrecognized character is `,'

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

Compiler output

Implementation: T:arm_thumb
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skein_block_noneon.S: skein_block_noneon.S:300:16: error: register expected
skein_block_noneon.S: ldr r12, [sp, S256_SOFS_BYTECNTADD]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:301:16: error: register expected
skein_block_noneon.S: str r10, [sp, S256_SOFS_TWEAKSCHED + 8]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:302:16: error: register expected
skein_block_noneon.S: str r11, [sp, S256_SOFS_TWEAKSCHED + 12]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:304:15: error: register expected
skein_block_noneon.S: str r8, [sp, S256_SOFS_TWEAKSCHED]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:305:2: error: invalid instruction
skein_block_noneon.S: adc r9, 0
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:306:15: error: register expected
skein_block_noneon.S: str r9, [sp, S256_SOFS_TWEAKSCHED + 4]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:309:15: error: register expected
skein_block_noneon.S: str r8, [sp, S256_SOFS_TWEAKSCHED + 16]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:310:15: error: register expected
skein_block_noneon.S: str r9, [sp, S256_SOFS_TWEAKSCHED + 20]
skein_block_noneon.S: ^
skein_block_noneon.S: skein_block_noneon.S:324:16: error: register expected
skein_block_noneon.S: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:arm_thumb

Namespace violations

Implementation: T:opt
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -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: 5, namely:
CompilerImplementations
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:sphlib
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skein.o sph_skein224 T
skein.o sph_skein224_addbits_and_close T
skein.o sph_skein224_close T
skein.o sph_skein224_init T
skein.o sph_skein256 T
skein.o sph_skein256_addbits_and_close T
skein.o sph_skein256_close T
skein.o sph_skein256_init T
skein.o sph_skein384 T
skein.o sph_skein384_addbits_and_close T
skein.o sph_skein384_close T
skein.o sph_skein384_init T
skein.o sph_skein512 T
skein.o sph_skein512_addbits_and_close T
skein.o sph_skein512_close T
skein.o sph_skein512_init T

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