Implementation notes: amd64, floodyberry, crypto_hash/groestl512

Computer: floodyberry
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_hash
Primitive: groestl512
TimeImplementationCompilerBenchmark dateSUPERCOP version
56338vpermgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
56375vpermgcc -m64 -O3 -fomit-frame-pointer2014050720140505
57000vpermgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
57012vpermgcc -m64 -O2 -fomit-frame-pointer2014050720140505
57238vpermicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
57800core2duoicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
58175core2duogcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
58325core2duogcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
58350core2duogcc -m64 -O2 -fomit-frame-pointer2014050720140505
58388core2duogcc -m64 -O3 -fomit-frame-pointer2014050720140505
58550core2duoclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
58825core2duoicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
62400vperm-intricc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
63275vperm-intrgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
63625vperm-intrgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
63863vperm-intricc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
65088opteronicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
65300opteronclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
65613opterongcc -m64 -O3 -fomit-frame-pointer2014050720140505
65613opteronicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
65650opterongcc -m64 -O2 -fomit-frame-pointer2014050720140505
65650opterongcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
65687opterongcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
71400sphlibicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
73900sphlib-adaptedicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
78125opt64icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
80225sphlibicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
81913sphlib-adaptedicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
99013opt64icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
99775sphlib-smallicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
105450sphlibclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
109937sphlib-smallgcc -m64 -O3 -fomit-frame-pointer2014050720140505
110375sphlib-smallgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
110725sphlib-adaptedclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
112063sphlib-smallgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
114513sphlib-smallgcc -m64 -O2 -fomit-frame-pointer2014050720140505
116963mmxicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
117300sphlib-smallicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
118462sphlibgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
118938sphlibgcc -m64 -O2 -fomit-frame-pointer2014050720140505
120850sphlib-smallclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
120913sphlibgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
121350sphlibgcc -m64 -O3 -fomit-frame-pointer2014050720140505
122675opt64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
122837opt64gcc -m64 -O3 -fomit-frame-pointer2014050720140505
122875opt64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
123163opt64gcc -m64 -O2 -fomit-frame-pointer2014050720140505
124775mmxicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
125162sphlib-adaptedgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
125838sphlib-adaptedgcc -m64 -O3 -fomit-frame-pointer2014050720140505
126400mmxgcc -m64 -O3 -fomit-frame-pointer2014050720140505
127300sphlib-adaptedgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
127838mmxgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
128000mmxgcc -m64 -O2 -fomit-frame-pointer2014050720140505
128000mmxgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
128275sphlib-adaptedgcc -m64 -O2 -fomit-frame-pointer2014050720140505
205087opt32icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
207937opt32icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
209350opt32clang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
210475opt32gcc -m64 -O3 -fomit-frame-pointer2014050720140505
210663opt32gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
212350opt32clang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
212525opt32gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
212537opt32gcc -m64 -O2 -fomit-frame-pointer2014050720140505
31957532bit-bytesliced-c-smallicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
42583732bit-bytesliced-c-smallgcc -m64 -O3 -fomit-frame-pointer2014050720140505
43258832bit-bytesliced-c-smallgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
54915032bit-bytesliced-c-smallclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
60231332bit-bytesliced-c-smallgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
60241232bit-bytesliced-c-smallgcc -m64 -O2 -fomit-frame-pointer2014050720140505
69565032bit-bytesliced-c-smallicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
80292532bit-bytesliced-c-smallclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505

Test failure

Implementation: crypto_hash/groestl512/mmx
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer mmx vperm-intr
clang -O3 -march=native -m64 -fomit-frame-pointer mmx sphlib sphlib-adapted sphlib-small vperm-intr
gcc -m64 -O2 -fomit-frame-pointer aesni avx
gcc -m64 -O3 -fomit-frame-pointer aesni avx
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer aesni avx
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer aesni avx
icc -m64 -O1 -static -xHost -fomit-frame-pointer aesni aesni-intr avx avx-intr
icc -m64 -O3 -static -xHost -fomit-frame-pointer aesni aesni-intr avx avx-intr vperm

Compiler output

Implementation: crypto_hash/groestl512/vperm
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: In file included from hash.c:19:
hash.c: ./groestl-asm-vperm.h:1196:3: error: invalid operand for instruction
hash.c: VPERM_Transform_RoundConst();
hash.c: ^
hash.c: ./groestl-asm-vperm.h:1173:3: note: expanded from macro 'VPERM_Transform_RoundConst'
hash.c: VPERM_Transform_RoundConst_CNT2(0, 1);\
hash.c: ^
hash.c: ./groestl-asm-vperm.h:1158:8: note: expanded from macro 'VPERM_Transform_RoundConst_CNT2'
hash.c: asm ("movaps xmm0, [ROUND_CONST_P+"tostr(i)"*16]");\
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm0, [ROUND_CONST_P+0*16]
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:19:
hash.c: ./groestl-asm-vperm.h:1196:3: error: invalid operand for instruction
hash.c: VPERM_Transform_RoundConst();
hash.c: ^
hash.c: ./groestl-asm-vperm.h:1173:3: note: expanded from macro 'VPERM_Transform_RoundConst'
hash.c: VPERM_Transform_RoundConst_CNT2(0, 1);\
hash.c: ^
hash.c: ./groestl-asm-vperm.h:1159:8: note: expanded from macro 'VPERM_Transform_RoundConst_CNT2'
hash.c: asm ("movaps xmm1, [ROUND_CONST_P+"tostr(j)"*16]");\
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm1, [ROUND_CONST_P+1*16]
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer vperm
clang -O3 -march=native -m64 -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_hash/groestl512/aesni-intr
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: In file included from hash.c:28:
hash.c: In file included from ./groestl-intr-aes.h:11:
hash.c: /usr/bin/../lib/clang/3.4/include/wmmintrin.h:30:3: error: "AES/PCLMUL instructions not enabled"
hash.c: # error "AES/PCLMUL instructions not enabled"
hash.c: ^
hash.c: In file included from hash.c:28:
hash.c: ./groestl-intr-aes.h:848:3: warning: implicit declaration of function '_mm_aesenclast_si128' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: ROUNDS_P();
hash.c: ^
hash.c: ./groestl-intr-aes.h:552:5: note: expanded from macro 'ROUNDS_P'
hash.c: SUBMIX(xmm8, xmm9, xmm10, xmm11, xmm12, xmm13, xmm14, xmm15, xmm0, xmm1, xmm2, xmm3, xmm4, xmm5, xmm6, xmm7);\
hash.c: ^
hash.c: ./groestl-intr-aes.h:525:8: note: expanded from macro 'SUBMIX'
hash.c: a0 = _mm_aesenclast_si128(a0, b0);\
hash.c: ^
hash.c: ./groestl-intr-aes.h:848:3: error: assigning to '__m128i' from incompatible type 'int'
hash.c: ROUNDS_P();
hash.c: ^~~~~~~~~~
hash.c: ./groestl-intr-aes.h:552:5: note: expanded from macro 'ROUNDS_P'
hash.c: SUBMIX(xmm8, xmm9, xmm10, xmm11, xmm12, xmm13, xmm14, xmm15, xmm0, xmm1, xmm2, xmm3, xmm4, xmm5, xmm6, xmm7);\
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: ./groestl-intr-aes.h:525:6: note: expanded from macro 'SUBMIX'
hash.c: a0 = _mm_aesenclast_si128(a0, b0);\
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: ./groestl-intr-aes.h:848:3: error: assigning to '__m128i' from incompatible type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer aesni-intr
clang -O3 -march=native -m64 -fomit-frame-pointer aesni-intr

Compiler output

Implementation: crypto_hash/groestl512/avx-intr
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: In file included from hash.c:31:
hash.c: In file included from ./groestl-intr-avx.h:11:
hash.c: /usr/bin/../lib/clang/3.4/include/wmmintrin.h:30:3: error: "AES/PCLMUL instructions not enabled"
hash.c: # error "AES/PCLMUL instructions not enabled"
hash.c: ^
hash.c: In file included from hash.c:31:
hash.c: ./groestl-intr-avx.h:27:1: error: unknown type name '__m256d'
hash.c: __m256d ALL_1B;
hash.c: ^
hash.c: ./groestl-intr-avx.h:868:10: error: unknown type name '__m256d'
hash.c: static __m256d ymm0, ymm1, ymm2, ymm3, ymm4, ymm5, ymm6, ymm7;
hash.c: ^
hash.c: ./groestl-intr-avx.h:869:10: error: unknown type name '__m256d'
hash.c: static __m256d ymm8, ymm9, ymm10, ymm11, ymm12, ymm13, ymm14, ymm15;
hash.c: ^
hash.c: ./groestl-intr-avx.h:870:10: error: unknown type name '__m256d'
hash.c: static __m256d ymmJ;
hash.c: ^
hash.c: ./groestl-intr-avx.h:871:10: error: unknown type name '__m256d'
hash.c: static __m256d TEMP0;
hash.c: ^
hash.c: ./groestl-intr-avx.h:872:10: error: unknown type name '__m256d'
hash.c: static __m256d TEMP1;
hash.c: ^
hash.c: ./groestl-intr-avx.h:873:10: error: unknown type name '__m256d'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer avx-intr
clang -O3 -march=native -m64 -fomit-frame-pointer avx-intr

Compiler output

Implementation: crypto_hash/groestl512/opt64
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: hash.c:191:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:192:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:193:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:194:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer opt64
clang -O3 -march=native -m64 -fomit-frame-pointer opt64

Compiler output

Implementation: crypto_hash/groestl512/aesni
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: hash.c:97:3: warning: while loop has empty body [-Wempty-body]
hash.c: SET_CONSTANTS();
hash.c: ^
hash.c: ./groestl-asm-aes.h:567:10: note: expanded from macro 'SET_CONSTANTS'
hash.c: }while(0);
hash.c: ^
hash.c: hash.c:97:3: note: put the semicolon on a separate line to silence this warning
hash.c: ./groestl-asm-aes.h:567:10: note: expanded from macro 'SET_CONSTANTS'
hash.c: }while(0);
hash.c: ^
hash.c: ./groestl-asm-aes.h:851:8: error: invalid operand for instruction
hash.c: asm ("movaps xmm8, [rdi+0*16]");
hash.c: ^
hash.c: gt;:1:16: note: instantiated into assembly here
hash.c: movaps xmm8, [rdi+0*16]
hash.c: ^~~~~~~~~~
hash.c: In file included from hash.c:13:
hash.c: ./groestl-asm-aes.h:852:8: error: invalid operand for instruction
hash.c: asm ("movaps xmm9, [rdi+1*16]");
hash.c: ^
hash.c: gt;:1:16: note: instantiated into assembly here
hash.c: movaps xmm9, [rdi+1*16]
hash.c: ^~~~~~~~~~
hash.c: In file included from hash.c:13:
hash.c: ./groestl-asm-aes.h:853:8: error: invalid operand for instruction
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer aesni
clang -O3 -march=native -m64 -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_hash/groestl512/avx
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: hash.c:97:3: warning: while loop has empty body [-Wempty-body]
hash.c: SET_CONSTANTS();
hash.c: ^
hash.c: ./groestl-asm-avx.h:560:10: note: expanded from macro 'SET_CONSTANTS'
hash.c: }while(0);
hash.c: ^
hash.c: hash.c:97:3: note: put the semicolon on a separate line to silence this warning
hash.c: ./groestl-asm-avx.h:560:10: note: expanded from macro 'SET_CONSTANTS'
hash.c: }while(0);
hash.c: ^
hash.c: ./groestl-asm-avx.h:925:8: error: invalid operand for instruction
hash.c: asm ("vmovaps xmm8, [rdi+0*16]");
hash.c: ^
hash.c: gt;:1:17: note: instantiated into assembly here
hash.c: vmovaps xmm8, [rdi+0*16]
hash.c: ^~~~~~~~~~
hash.c: In file included from hash.c:16:
hash.c: ./groestl-asm-avx.h:926:8: error: invalid operand for instruction
hash.c: asm ("vmovaps xmm9, [rdi+1*16]");
hash.c: ^
hash.c: gt;:1:17: note: instantiated into assembly here
hash.c: vmovaps xmm9, [rdi+1*16]
hash.c: ^~~~~~~~~~
hash.c: In file included from hash.c:16:
hash.c: ./groestl-asm-avx.h:927:8: error: invalid operand for instruction
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer avx
clang -O3 -march=native -m64 -fomit-frame-pointer avx

Compiler output

Implementation: crypto_hash/groestl512/core2duo
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
try.c: crypto_hash_groestl512.a(hash.o):hash.c:function Transform: error: undefined reference to 'Q1024ASM'
try.c: crypto_hash_groestl512.a(hash.o):hash.c:function Transform: error: undefined reference to 'P1024ASM'
try.c: crypto_hash_groestl512.a(hash.o):hash.c:function OutputTransformation: error: undefined reference to 'P1024ASM'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer core2duo opteron

Compiler output

Implementation: crypto_hash/groestl512/aesni-intr
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: In file included from groestl-intr-aes.h:10:0,
hash.c: from hash.c:28:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
hash.c: In file included from groestl-intr-aes.h:11:0,
hash.c: from hash.c:28:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
hash.c: In file included from hash.c:28:0:
hash.c: groestl-intr-aes.h: In function 'INIT':
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:784:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h: In function 'TF1024':
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-aes.h:823:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer aesni-intr
gcc -m64 -O3 -fomit-frame-pointer aesni-intr
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer aesni-intr
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer aesni-intr

Compiler output

Implementation: crypto_hash/groestl512/avx-intr
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: In file included from groestl-intr-avx.h:10:0,
hash.c: from hash.c:31:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
hash.c: In file included from groestl-intr-avx.h:11:0,
hash.c: from hash.c:31:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
hash.c: In file included from hash.c:31:0:
hash.c: groestl-intr-avx.h:27:1: error: unknown type name '__m256d'
hash.c: In file included from hash.c:31:0:
hash.c: groestl-intr-avx.h: In function 'INIT':
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:848:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h: In function 'TF1024':
hash.c: groestl-intr-avx.h:868:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:869:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:870:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:871:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:872:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:873:3: error: unknown type name '__m256d'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer avx-intr
gcc -m64 -O3 -fomit-frame-pointer avx-intr

Compiler output

Implementation: crypto_hash/groestl512/vperm-intr
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: In file included from groestl-intr-vperm.h:13:0,
hash.c: from hash.c:34:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
hash.c: In file included from hash.c:34:0:
hash.c: groestl-intr-vperm.h:17:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:18:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:19:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:20:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:21:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:22:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:23:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:24:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:25:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:26:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:27:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:28:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:29:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:30:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:31:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:32:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:33:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:34:1: error: unknown type name '__m128i'
hash.c: groestl-intr-vperm.h:35:1: error: unknown type name '__m128i'
hash.c: In file included from hash.c:34:0:
hash.c: groestl-intr-vperm.h: In function 'INIT':
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer vperm-intr
gcc -m64 -O3 -fomit-frame-pointer vperm-intr

Compiler output

Implementation: crypto_hash/groestl512/avx-intr
Compiler: gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
hash.c: In file included from groestl-intr-avx.h:10:0,
hash.c: from hash.c:31:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
hash.c: In file included from groestl-intr-avx.h:11:0,
hash.c: from hash.c:31:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
hash.c: In file included from hash.c:31:0:
hash.c: groestl-intr-avx.h:27:1: error: unknown type name '__m256d'
hash.c: In file included from hash.c:31:0:
hash.c: groestl-intr-avx.h: In function 'TF1024':
hash.c: groestl-intr-avx.h:868:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:869:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:870:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:871:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:872:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:873:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:874:3: error: unknown type name '__m256d'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: groestl-intr-avx.h:925:3: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx-intr
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx-intr