Implementation notes: amd64, kizomba, crypto_hash/cheetah256

Computer: kizomba
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_hash
Primitive: cheetah256

Compiler output

Implementation: crypto_hash/cheetah256/asm
Compiler: cc
Cheetah.c: Cheetah.c: In function 'Update':
Cheetah.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
Cheetah.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
hash.c: In file included from hash.c:2:0:
hash.c: Cheetah.c: In function 'Update':
hash.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
hash.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
hash.c: ^~~~~~~~~~~~
hash.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
hash.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
hash.c: ^~~~~~~~~~~~
Cheetah512-64.s: Cheetah512-64.s: Assembler messages:
Cheetah512-64.s: Cheetah512-64.s:4992: Warning: zero assumed for missing expression
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah256-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah512-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 214, namely:
CompilerImplementations
cc asm asm64
gcc asm asm64
gcc -O2 -fomit-frame-pointer asm asm64
gcc -O3 -fomit-frame-pointer asm asm64
gcc -O -fomit-frame-pointer asm asm64
gcc -Os -fomit-frame-pointer asm asm64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer asm asm64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer asm asm64
gcc -fno-schedule-insns -O -fomit-frame-pointer asm asm64
gcc -fno-schedule-insns -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops asm asm64
gcc -funroll-loops -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer asm asm64
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer asm asm64
gcc -m64 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -O -fomit-frame-pointer asm asm64
gcc -m64 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=corei7 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=k8 -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=k8 -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=k8 -O -fomit-frame-pointer asm asm64
gcc -m64 -march=k8 -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer asm asm64
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer asm asm64
gcc -m64 -march=nocona -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=nocona -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=nocona -O -fomit-frame-pointer asm asm64
gcc -m64 -march=nocona -Os -fomit-frame-pointer asm asm64
gcc -march=barcelona -O2 -fomit-frame-pointer asm asm64
gcc -march=barcelona -O3 -fomit-frame-pointer asm asm64
gcc -march=barcelona -O -fomit-frame-pointer asm asm64
gcc -march=barcelona -Os -fomit-frame-pointer asm asm64
gcc -march=k8 -O2 -fomit-frame-pointer asm asm64
gcc -march=k8 -O3 -fomit-frame-pointer asm asm64
gcc -march=k8 -O -fomit-frame-pointer asm asm64
gcc -march=k8 -Os -fomit-frame-pointer asm asm64
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv asm asm64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv asm asm64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv asm asm64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv asm asm64
gcc -march=nocona -O2 -fomit-frame-pointer asm asm64
gcc -march=nocona -O3 -fomit-frame-pointer asm asm64
gcc -march=nocona -O -fomit-frame-pointer asm asm64
gcc -march=nocona -Os -fomit-frame-pointer asm asm64

Compiler output

Implementation: crypto_hash/cheetah256/asm
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
Cheetah.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' is invalid in C99 [-Wimplicit-function-declaration]
Cheetah.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
Cheetah.c: ^
Cheetah.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' is invalid in C99 [-Wimplicit-function-declaration]
Cheetah.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
Cheetah.c: ^
Cheetah.c: 2 warnings generated.
hash.c: In file included from hash.c:2:
hash.c: ./Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
hash.c: ^
hash.c: ./Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
hash.c: ^
hash.c: 2 warnings generated.
Cheetah512-64.s: Cheetah512-64.s:4992:11: error: invalid hexadecimal number in '.quad' directive
Cheetah512-64.s: .quad 0x
Cheetah512-64.s: ^

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments asm asm64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments asm asm64
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments asm asm64
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments asm asm64
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments asm asm64

Compiler output

Implementation: crypto_hash/cheetah256/asm
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
Cheetah.c: Cheetah.c: In function 'Update':
Cheetah.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
Cheetah.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
hash.c: In file included from hash.c:2:0:
hash.c: Cheetah.c: In function 'Update':
hash.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
hash.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
hash.c: ^~~~~~~~~~~~
hash.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
hash.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
hash.c: ^~~~~~~~~~~~
Cheetah512-64.s: Cheetah512-64.s: Assembler messages:
Cheetah512-64.s: Cheetah512-64.s:4992: Warning: zero assumed for missing expression
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah256-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah512-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status
Cheetah.c: Cheetah.c: In function 'Update':
Cheetah.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
Cheetah.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
Cheetah.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
Cheetah.c: ^~~~~~~~~~~~
hash.c: In file included from hash.c:2:0:
hash.c: Cheetah.c: In function 'Update':
hash.c: Cheetah.c:220:4: warning: implicit declaration of function 'Cheetah25664' [-Wimplicit-function-declaration]
hash.c: Cheetah25664(&Te0,&T640,&state->gt;core, data, totLength);
hash.c: ^~~~~~~~~~~~
hash.c: Cheetah.c:232:4: warning: implicit declaration of function 'Cheetah51264' [-Wimplicit-function-declaration]
hash.c: Cheetah51264(&Te0,&T640,&state->gt;core64, data, totLength);
hash.c: ^~~~~~~~~~~~
Cheetah512-64.s: Cheetah512-64.s: Assembler messages:
Cheetah512-64.s: Cheetah512-64.s:4992: Warning: zero assumed for missing expression
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah256-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: crypto_hash_cheetah256.a(Cheetah512-64.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer asm asm64
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer asm asm64
gcc -m64 -march=barcelona -O -fomit-frame-pointer asm asm64
gcc -m64 -march=barcelona -Os -fomit-frame-pointer asm asm64