Implementation notes: armeabi, berry2, crypto_hash/skein512512

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240425
Operation: crypto_hash
Primitive: skein512512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10962516628 0 024016 376 744T:littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11019036260 0 043156 376 744T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11031017788 0 037086 384 760T:littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11240416180 0 024080 384 744T:littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11245018540 0 026432 384 744T:littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11260133632 0 041020 376 744T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11263017764 0 037062 384 760T:simpleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11271418528 0 028244 384 744T:littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11272239476 0 048284 384 744T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11305438432 0 045812 384 744T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11314039968 0 058434 384 760T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11314535372 0 042740 384 744T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11437737200 0 056347 384 760T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050220240425
11448832744 0 040644 384 744T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11734616652 0 024040 376 744T:simplegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11893419600 0 029316 384 744T:simplegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
11963018520 0 026412 384 744T:simplegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12154738116 0 046008 384 744T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12163816204 0 024104 384 744T:simplegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
12176139744 0 049460 384 744T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1307507384 0 014772 376 744T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1323408556 0 016456 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
13264810936 0 020660 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
1328847296 0 015204 384 744T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050220240425
13312210992 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: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