Implementation notes: amd64, sand, crypto_hash/cheetah256

Computer: sand
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_hash
Primitive: cheetah256

Compiler output

Implementation: crypto_hash/cheetah256/asm
Compiler: cc
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->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->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->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->core64, data, totLength);
hash.c: ^
hash.c: 2 warnings generated.
Cheetah256-64.s: cc: warning: argument unused during compilation: '-D SUPERCOP' [-Wunused-command-line-argument]
Cheetah512-64.s: cc: warning: argument unused during compilation: '-D SUPERCOP' [-Wunused-command-line-argument]
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: 2, namely:
CompilerImplementations
cc 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->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->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->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->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: 12, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments asm asm64
clang -O3 -fwrapv -march=native -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
try.c: /usr/bin/ld: crypto_hash_cheetah256.a(Cheetah256-64.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC
try.c: crypto_hash_cheetah256.a: could not read symbols: Bad value
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 132, namely:
CompilerImplementations
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=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=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=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=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