Implementation notes: amd64, pmnod003, crypto_hash/shake256

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: shake256
TimeImplementationCompilerBenchmark dateSUPERCOP version
10634usekcpicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
10644usekcpicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
10650usekcpicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
10658usekcpicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
10678usekcpicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
10682usekcpgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
10682usekcpicc -xAVX -O3 -fomit-frame-pointer2019081920190816
10684kcp/optimized1600AVX512icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
10686usekcpgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
10686usekcpicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
10688usekcpgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
10688usekcpicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
10688usekcpicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
10690usekcpicc -xAVX -O2 -fomit-frame-pointer2019081920190816
10690usekcpicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
10692usekcpgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
10692usekcpicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
10694usekcpicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
10694kcp/optimized1600AVX512icc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
10716kcp/optimized1600AVX512icc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
10720kcp/optimized1600AVX512icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
10972kcp/optimized1600AVX512icc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
10988kcp/optimized1600AVX512gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
11000kcp/optimized1600AVX512icc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
11004kcp/optimized1600AVX512icc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
11008kcp/optimized1600AVX512icc -xAVX -O2 -fomit-frame-pointer2019081920190816
11032kcp/optimized1600AVX512icc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
11048kcp/optimized1600AVX512gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
11128kcp/optimized1600AVX512gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
11178kcp/optimized1600AVX512gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
11276kcp/optimized1600AVX512icc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
11288usekcpicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
11300kcp/optimized1600AVX512icc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
11312kcp/optimized1600AVX512icc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
11314kcp/optimized1600AVX512icc -xAVX -O3 -fomit-frame-pointer2019081920190816
11920kcp/optimized1600AVX512icc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
14828oncore64bitsicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
14884oncore64bitsicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
14898oncore64bitsicc -xAVX -O3 -fomit-frame-pointer2019081920190816
14914oncore64bitsicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
14916oncore64bitsicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
14916oncore64bitsicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
14920oncore64bitsicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
14928oncore64bitsicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
14934oncore64bitsicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
14958oncore64bitsicc -xAVX -O2 -fomit-frame-pointer2019081920190816
14962oncore64bitsicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
14970oncore64bitsicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
14972oncore64bitsgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
14980oncore64bitsicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
15002oncore64bitsgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
15028oncore64bitsgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
15062oncore64bitsicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
15096oncore64bitsgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
16422gil/singlefilegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
18256gil/singlefilegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
18574gil/singlefile_unrolledgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
18606gil/singlefilegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
19840gil/singlefilegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
19864gil/singlefileicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
19882gil/singlefileicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
20082gil/singlefile_unrolledgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
20254gil/singlefileicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
20412gil/singlefile_unrolledgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
20796gil/singlefileicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
20796gil/singlefileicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
20810gil/singlefileicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
21566gil/singlefile_unrolledgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
21742gil/singlefileicc -xAVX -O2 -fomit-frame-pointer2019081920190816
21748gil/singlefileicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
21844gil/singlefileicc -xAVX -O3 -fomit-frame-pointer2019081920190816
21848gil/singlefile_unrolledicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
21852gil/singlefileicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
21878gil/singlefile_unrolledicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
21930gil/singlefile_unrolledicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
22428gil/singlefile_unrolledicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
22494gil/singlefileicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
22500gil/singlefileicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
22526gil/singlefile_unrolledicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
22580gil/singlefileicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
22608gil/singlefileicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
22622gil/singlefile_unrolledicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
23212gil/singlefile_unrolledicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
23230gil/singlefile_unrolledicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
23584gil/singlefile_unrolledicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
23586gil/singlefile_unrolledicc -xAVX -O3 -fomit-frame-pointer2019081920190816
23602gil/singlefile_unrolledicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
23784gil/singlefile_unrolledicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
24260gil/singlefile_unrolledicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
24266gil/singlefile_unrolledicc -xAVX -O2 -fomit-frame-pointer2019081920190816
30344oncore32bitsicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
30368oncore32bitsicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
30604oncore32bitsicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
30654oncore32bitsicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
30892oncore32bitsicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
31092oncore32bitsicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
31510oncore32bitsgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
34152oncore32bitsicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
34310oncore32bitsicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
34330oncore32bitsicc -xAVX -O2 -fomit-frame-pointer2019081920190816
34358oncore32bitsicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
34384oncore32bitsicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
34402oncore32bitsicc -xAVX -O3 -fomit-frame-pointer2019081920190816
34414oncore32bitsicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
34416oncore32bitsicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
35006oncore32bitsgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
35392oncore32bitsgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
36136oncore32bitsgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600AVX2
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600AVX2
Compiler: g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600AVX2
Compiler: g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/shake256/openssl
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_shake256_openssl':
hash.c: hash.c:13:36: warning: implicit declaration of function 'EVP_shake256'; did you mean 'EVP_sha256'? [-Wimplicit-function-declaration]
hash.c: 13 | if (ok) ok = EVP_DigestInit_ex(x,EVP_shake256(),NULL);
hash.c: | ^~~~~~~~~~~~
hash.c: | EVP_sha256
hash.c: hash.c:13:36: warning: passing argument 2 of 'EVP_DigestInit_ex' makes pointer from integer without a cast [-Wint-conversion]
hash.c: 13 | if (ok) ok = EVP_DigestInit_ex(x,EVP_shake256(),NULL);
hash.c: | ^~~~~~~~~~~~~~
hash.c: | |
hash.c: | int
hash.c: In file included from hash.c:2:
hash.c: /usr/include/openssl/evp.h:597:54: note: expected 'const EVP_MD *' {aka 'const struct env_md_st *'} but argument is of type 'int'
hash.c: 597 | int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl);
hash.c: | ~~~~~~~~~~~~~~^~~~
hash.c: hash.c:15:16: warning: implicit declaration of function 'EVP_DigestFinalXOF'; did you mean 'EVP_DigestFinal'? [-Wimplicit-function-declaration]
hash.c: 15 | if (ok) ok = EVP_DigestFinalXOF(x,out,crypto_hash_BYTES);
hash.c: | ^~~~~~~~~~~~~~~~~~
hash.c: | EVP_DigestFinal
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(hash.o): in function `crypto_hash_shake256_openssl':
try.c: hash.c:(.text+0x...): undefined reference to `EVP_shake256'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: hash.c:(.text+0x...): undefined reference to `EVP_DigestFinalXOF'
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600ARMv7A
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:10: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:13: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:14: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:16: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:17: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:24: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:53: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:269: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:270: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:271: Error: junk at end of line, first unrecognized character is `@'
keccak.s: ...

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv7A
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv7A
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv7A
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv7A
icc -xAVX -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xAVX -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX-I -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX-I -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX2 -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX2 -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xCORE-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xSSE4.1 -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xSSE4.1 -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xSSE4.2 -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
icc -xSSE4.2 -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600ARMv8A
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:258: Error: no such instruction: `movi v0.2d,'
keccak.s: keccak.s:259: Error: no such instruction: `movi v1.2d,'
keccak.s: keccak.s:260: Error: no such instruction: `movi v2.2d,'
keccak.s: keccak.s:261: Error: no such instruction: `movi v3.2d,'
keccak.s: keccak.s:262: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],'
keccak.s: keccak.s:263: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],'
keccak.s: keccak.s:264: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],'
keccak.s: keccak.s:265: Error: no such instruction: `st1 { v0.d }[0],[x0],'
keccak.s: keccak.s:276: Error: no such instruction: `ldrb w3,[x0,x2]'
keccak.s: keccak.s:277: Error: no such instruction: `eor w3,w3,w1'
keccak.s: keccak.s:278: Error: invalid char '[' beginning operand 2 `[x0'
keccak.s: keccak.s:289: Error: too many memory references for `add'
keccak.s: keccak.s:290: Error: too many memory references for `sub'
keccak.s: keccak.s:291: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Exit//length 0,move along'
keccak.s: keccak.s:293: Error: too many memory references for `sub'
keccak.s: keccak.s:294: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Lanes//Jump if length is negative'
keccak.s: keccak.s:295: Error: no such instruction: `ld4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0]'
keccak.s: keccak.s:296: Error: no such instruction: `ld4 { v4.2d,v5.2d,v6.2d,v7.2d },[x1],'
keccak.s: keccak.s:297: Error: no such instruction: `eor v0.16b,v0.16b,v4.16b'
keccak.s: keccak.s:298: Error: no such instruction: `eor v1.16b,v1.16b,v5.16b'
keccak.s: keccak.s:299: Error: no such instruction: `eor v2.16b,v2.16b,v6.16b'
keccak.s: keccak.s:300: Error: no such instruction: `eor v3.16b,v3.16b,v7.16b'
keccak.s: keccak.s:301: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],'
keccak.s: keccak.s:302: Error: no such instruction: `b KeccakP1600_AddBytes_8LanesLoop'
keccak.s: ...

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv8A
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv8A
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv8A
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv kcp/optimized1600ARMv8A
icc -xAVX -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xAVX -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX-I -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX-I -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX2 -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX2 -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xCORE-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xSSE4.1 -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xSSE4.1 -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xSSE4.2 -O2 -fomit-frame-pointer kcp/optimized1600ARMv8A
icc -xSSE4.2 -O3 -fomit-frame-pointer kcp/optimized1600ARMv8A

Compiler output

Implementation: crypto_hash/shake256/openssl
Compiler: icc -xAVX -O2 -fomit-frame-pointer
hash.c: hash.c(13): warning #266: function "EVP_shake256" declared implicitly
hash.c: if (ok) ok = EVP_DigestInit_ex(x,EVP_shake256(),NULL);
hash.c: ^
hash.c:
hash.c: hash.c(13): warning #167: argument of type "int" is incompatible with parameter of type "const EVP_MD *"
hash.c: if (ok) ok = EVP_DigestInit_ex(x,EVP_shake256(),NULL);
hash.c: ^
hash.c:
hash.c: hash.c(15): warning #266: function "EVP_DigestFinalXOF" declared implicitly
hash.c: if (ok) ok = EVP_DigestFinalXOF(x,out,crypto_hash_BYTES);
hash.c: ^
hash.c:
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(hash.o): in function `crypto_hash_shake256_openssl':
try.c: hash.c:(.text+0x...): undefined reference to `EVP_shake256'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: hash.c:(.text+0x...): undefined reference to `EVP_DigestFinalXOF'

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer openssl
icc -xAVX -O3 -fomit-frame-pointer openssl
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer openssl
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer openssl
icc -xCORE-AVX-I -O2 -fomit-frame-pointer openssl
icc -xCORE-AVX-I -O3 -fomit-frame-pointer openssl
icc -xCORE-AVX2 -O2 -fomit-frame-pointer openssl
icc -xCORE-AVX2 -O3 -fomit-frame-pointer openssl
icc -xCORE-AVX512 -O2 -fomit-frame-pointer openssl
icc -xCORE-AVX512 -O3 -fomit-frame-pointer openssl
icc -xSSE4.1 -O2 -fomit-frame-pointer openssl
icc -xSSE4.1 -O3 -fomit-frame-pointer openssl
icc -xSSE4.2 -O2 -fomit-frame-pointer openssl
icc -xSSE4.2 -O3 -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_hash/shake256/kcp/optimized1600AVX2
Compiler: icpc -xAVX -O2 -fomit-frame-pointer
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp(26): warning #3438: unsupported option is ignored
KeccakP-1600-AVX2.cpp: #pragma GCC optimize("2")
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp:
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_hash_shake256.a(KeccakSpongeWidth1600.o): in function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icpc -xAVX -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xAVX -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCOMMON-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCOMMON-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX-I -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX-I -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX2 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX2 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX512 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xCORE-AVX512 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xSSE4.1 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xSSE4.1 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xSSE4.2 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
icpc -xSSE4.2 -O3 -fomit-frame-pointer kcp/optimized1600AVX2