Implementation notes: armeabi, novenablue, crypto_hash/sha3384

Computer: novenablue
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20200702
Operation: crypto_hash
Primitive: sha3384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1181801240 0 022189 412 752oncore32bitsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1182111240 0 020493 412 752oncore32bitsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1182391240 0 020493 412 752oncore32bitsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1182461296 0 019495 408 752oncore32bitsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
118940912 0 018251 400 744oncore32bitsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
1193361244 0 022213 412 752oncore32bitsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1196251092 0 016879 400 744oncore32bitsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
1207911032 0 016331 392 744oncore32bitsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
1226021088 0 016735 400 744oncore32bitsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
165196904 0 0136351 400 744oncore64bitsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
165350566 0 0133979 392 744oncore64bitsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
165592540 0 0134299 400 744oncore64bitsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
165839744 0 0134639 400 744oncore64bitsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
1660441208 0 0140273 412 752oncore64bitsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1661201208 0 0138577 412 752oncore64bitsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1661451208 0 0138577 412 752oncore64bitsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1664661228 0 0140313 412 752oncore64bitsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
1674981044 0 0137363 408 752oncore64bitsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417

Compiler output

Implementation: kcp/optimized1600ARMv7A
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keccak.s: keccak.s:635:6: error: expected absolute expression
keccak.s: .if FastLoop != 0
keccak.s: ^

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv7A
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv7A
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv7A
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv7A
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv7A

Compiler output

Implementation: kcp/optimized1600ARMv7A
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:286: Error: selected FPU does not support instruction -- `vmov.i64 q0,#0'
keccak.s: keccak.s:287: Error: selected FPU does not support instruction -- `vmov.i64 q1,#0'
keccak.s: keccak.s:288: Error: selected FPU does not support instruction -- `vmov.i64 q2,#0'
keccak.s: keccak.s:289: Error: selected FPU does not support instruction -- `vmov.i64 q3,#0'
keccak.s: keccak.s:384: Error: selected FPU does not support instruction -- `vmov.i64 d0,#0'
keccak.s: keccak.s:539: Error: selected processor does not support ARM mode `veor.64 d0,d0,d30'
keccak.s: keccak.s:541: Error: selected processor does not support ARM mode `veor.64 d2,d2,d30'
keccak.s: keccak.s:543: Error: selected processor does not support ARM mode `veor.64 d4,d4,d30'
keccak.s: keccak.s:545: Error: selected processor does not support ARM mode `veor.64 d6,d6,d30'
keccak.s: keccak.s:547: Error: selected processor does not support ARM mode `veor.64 d8,d8,d30'
keccak.s: keccak.s:550: Error: selected processor does not support ARM mode `veor.64 d1,d1,d30'
keccak.s: keccak.s:552: Error: selected processor does not support ARM mode `veor.64 d3,d3,d30'
keccak.s: keccak.s:554: Error: selected processor does not support ARM mode `veor.64 d5,d5,d30'
keccak.s: keccak.s:556: Error: selected processor does not support ARM mode `veor.64 d7,d7,d30'
keccak.s: keccak.s:558: Error: selected processor does not support ARM mode `veor.64 d9,d9,d30'
keccak.s: keccak.s:561: Error: selected processor does not support ARM mode `veor.64 d10,d10,d30'
keccak.s: keccak.s:563: Error: selected processor does not support ARM mode `veor.64 d12,d12,d30'
keccak.s: keccak.s:565: Error: selected processor does not support ARM mode `veor.64 d14,d14,d30'
keccak.s: keccak.s:567: Error: selected processor does not support ARM mode `veor.64 d16,d16,d30'
keccak.s: keccak.s:569: Error: selected processor does not support ARM mode `veor.64 d18,d18,d30'
keccak.s: keccak.s:572: Error: selected processor does not support ARM mode `veor.64 d11,d11,d30'
keccak.s: keccak.s:574: Error: selected processor does not support ARM mode `veor.64 d13,d13,d30'
keccak.s: keccak.s:576: Error: selected processor does not support ARM mode `veor.64 d15,d15,d30'
keccak.s: keccak.s:578: Error: selected processor does not support ARM mode `veor.64 d17,d17,d30'
keccak.s: ...

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

Compiler output

Implementation: kcp/optimized1600ARMv8A
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keccak.s: keccak.s:258:5: error: invalid instruction
keccak.s: movi v0.2d, #0
keccak.s: ^
keccak.s: keccak.s:259:5: error: invalid instruction
keccak.s: movi v1.2d, #0
keccak.s: ^
keccak.s: keccak.s:260:5: error: invalid instruction
keccak.s: movi v2.2d, #0
keccak.s: ^
keccak.s: keccak.s:261:5: error: invalid instruction
keccak.s: movi v3.2d, #0
keccak.s: ^
keccak.s: keccak.s:262:15: error: register expected
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64 // Clear 8lanes=64 bytes at a time
keccak.s: ^
keccak.s: keccak.s:263:15: error: register expected
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:264:15: error: register expected
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:265:15: error: register expected
keccak.s: st1 { v0.d }[0], [x0], #8
keccak.s: ^
keccak.s: keccak.s:266:5: error: invalid instruction
keccak.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv8A
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv8A
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv8A
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv8A
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600ARMv8A

Compiler output

Implementation: kcp/optimized1600ARMv8A
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:258: Error: bad instruction `movi v0.2d,#0'
keccak.s: keccak.s:259: Error: bad instruction `movi v1.2d,#0'
keccak.s: keccak.s:260: Error: bad instruction `movi v2.2d,#0'
keccak.s: keccak.s:261: Error: bad instruction `movi v3.2d,#0'
keccak.s: keccak.s:262: Error: bad instruction `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],#64'
keccak.s: keccak.s:263: Error: bad instruction `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],#64'
keccak.s: keccak.s:264: Error: bad instruction `st4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0],#64'
keccak.s: keccak.s:265: Error: bad instruction `st1 { v0.d }[0],[x0],#8'
keccak.s: keccak.s:266: Error: bad instruction `ret'
keccak.s: keccak.s:276: Error: ARM register expected -- `ldrb w3,[x0,x2]'
keccak.s: keccak.s:277: Error: ARM register expected -- `eor w3,w3,w1'
keccak.s: keccak.s:278: Error: ARM register expected -- `strb w3,[x0,x2]'
keccak.s: keccak.s:279: Error: bad instruction `ret'
keccak.s: keccak.s:289: Error: ARM register expected -- `add x0,x0,x2'
keccak.s: keccak.s:290: Error: ARM register expected -- `subs w4,w3,#1'
keccak.s: keccak.s:291: Error: unexpected character `c' in type specifier
keccak.s: keccak.s:291: Error: bad instruction `b.cc KeccakP1600_AddBytes_Exit'
keccak.s: keccak.s:293: Error: ARM register expected -- `subs w3,w3,#64'
keccak.s: keccak.s:294: Error: unexpected character `c' in type specifier
keccak.s: keccak.s:294: Error: bad instruction `b.cc KeccakP1600_AddBytes_Lanes'
keccak.s: keccak.s:295: Error: bad instruction `ld4 { v0.2d,v1.2d,v2.2d,v3.2d },[x0]'
keccak.s: keccak.s:296: Error: bad instruction `ld4 { v4.2d,v5.2d,v6.2d,v7.2d },[x1],#64'
keccak.s: keccak.s:297: Error: ARM register expected -- `eor v0.16b,v0.16b,v4.16b'
keccak.s: keccak.s:298: Error: bad arguments to instruction -- `eor v1.16b,v1.16b,v5.16b'
keccak.s: ...

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

Compiler output

Implementation: kcp/optimized1600AVX2
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakSpongeWidth1600.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
SHA3-384.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
KeccakP-1600-AVX2.cpp: In file included from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: In file included from /usr/include/clang/3.5.0/include/x86intrin.h:27:
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:77:26: error: unknown register name 'flags' in asm
KeccakP-1600-AVX2.cpp: :"flags"
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:84:10: error: use of undeclared identifier '__builtin_ia32_rdpmc'; did you mean '__builtin_arm_dmb'?
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdpmc(__A);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:84:10: note: '__builtin_arm_dmb' declared here
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:84:10: error: argument to '__builtin_arm_dmb' must be a constant integer
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdpmc(__A);
KeccakP-1600-AVX2.cpp: ^ ~~~
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:90:10: error: use of undeclared identifier '__builtin_ia32_rdtsc'
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtsc();
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:96:10: error: use of undeclared identifier '__builtin_ia32_rdtscp'; did you mean '__builtin_arm_dsb'?
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtscp(__A);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:90:10: note: '__builtin_arm_dsb' declared here
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtsc();
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/3.5.0/include/ia32intrin.h:96:32: error: cannot initialize a parameter of type 'unsigned int' with an lvalue of type 'unsigned int *'
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtscp(__A);
KeccakP-1600-AVX2.cpp: ^~~
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:46:5: error: unknown type name '__m256i'
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX2
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX2
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX2
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX2

Compiler output

Implementation: kcp/optimized1600AVX2
Security model: unknown
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:18:27: fatal error: x86intrin.h: No such file or directory
KeccakP-1600-AVX2.cpp: #include <x86intrin.h>
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: compilation terminated.

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

Compiler output

Implementation: kcp/optimized1600AVX512
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-1600-AVX512.c: In file included from KeccakP-1600-AVX512.c:24:
KeccakP-1600-AVX512.c: /usr/include/clang/3.5.0/include/smmintrin.h:28:2: error: "SSE4.1 instruction set not enabled"
KeccakP-1600-AVX512.c: #error "SSE4.1 instruction set not enabled"
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from KeccakP-1600-AVX512.c:25:
KeccakP-1600-AVX512.c: In file included from /usr/include/clang/3.5.0/include/wmmintrin.h:27:
KeccakP-1600-AVX512.c: /usr/include/clang/3.5.0/include/emmintrin.h:28:2: error: "SSE2 instruction set not enabled"
KeccakP-1600-AVX512.c: #error "SSE2 instruction set not enabled"
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from KeccakP-1600-AVX512.c:25:
KeccakP-1600-AVX512.c: /usr/include/clang/3.5.0/include/wmmintrin.h:30:3: error: "AES/PCLMUL instructions not enabled"
KeccakP-1600-AVX512.c: # error "AES/PCLMUL instructions not enabled"
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:204:9: error: unknown type name '__m512i'
KeccakP-1600-AVX512.c: typedef __m512i V512;
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: warning: implicit declaration of function '_mm512_mask_storeu_epi64' is invalid in C99 [-Wimplicit-function-declaration]
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: expanded from macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: note: expanded from macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX512
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX512
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX512
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX512
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE kcp/optimized1600AVX512

Compiler output

Implementation: kcp/optimized1600AVX512
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:24:23: fatal error: smmintrin.h: No such file or directory
KeccakP-1600-AVX512.c: #include <smmintrin.h>
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: compilation terminated.

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

Compiler output

Implementation: openssl
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:14:19: warning: implicit declaration of function 'EVP_sha3_384' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: if (EVP_MD_size(EVP_sha3_384()) != crypto_hash_BYTES) ok = 0;
hash.c: ^
hash.c: hash.c:14:19: warning: incompatible integer to pointer conversion passing 'int' to parameter of type 'const EVP_MD *' (aka 'const struct env_md_st *') [-Wint-conversion]
hash.c: if (EVP_MD_size(EVP_sha3_384()) != crypto_hash_BYTES) ok = 0;
hash.c: ^~~~~~~~~~~~~~
hash.c: /usr/include/openssl/evp.h:498:31: note: passing argument to parameter 'md' here
hash.c: int EVP_MD_size(const EVP_MD *md);
hash.c: ^
hash.c: hash.c:15:36: warning: incompatible integer to pointer conversion passing 'int' to parameter of type 'const EVP_MD *' (aka 'const struct env_md_st *') [-Wint-conversion]
hash.c: if (ok) ok = EVP_DigestInit_ex(x,EVP_sha3_384(),NULL);
hash.c: ^~~~~~~~~~~~~~
hash.c: /usr/include/openssl/evp.h:572:54: note: passing argument to parameter 'type' here
hash.c: int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl);
hash.c: ^
hash.c: 3 warnings generated.
try.c: crypto_hash_sha3384.a(hash.o): In function `crypto_hash_sha3384_openssl':
try.c: hash.c:(.text+0x...): undefined reference to `EVP_sha3_384'
try.c: hash.c:(.text+0x...): undefined reference to `EVP_sha3_384'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl

Compiler output

Implementation: openssl
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_sha3384_openssl':
hash.c: hash.c:14:19: warning: passing argument 1 of 'EVP_MD_size' makes pointer from integer without a cast
hash.c: if (EVP_MD_size(EVP_sha3_384()) != crypto_hash_BYTES) ok = 0;
hash.c: ^
hash.c: In file included from hash.c:2:0:
hash.c: /usr/include/openssl/evp.h:498:5: note: expected 'const struct EVP_MD *' but argument is of type 'int'
hash.c: int EVP_MD_size(const EVP_MD *md);
hash.c: ^
hash.c: hash.c:15:36: warning: passing argument 2 of 'EVP_DigestInit_ex' makes pointer from integer without a cast
hash.c: if (ok) ok = EVP_DigestInit_ex(x,EVP_sha3_384(),NULL);
hash.c: ^
hash.c: In file included from hash.c:2:0:
hash.c: /usr/include/openssl/evp.h:572:5: note: expected 'const struct EVP_MD *' but argument is of type 'int'
hash.c: int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl);
hash.c: ^
try.c: crypto_hash_sha3384.a(hash.o): In function `crypto_hash_sha3384_openssl':
try.c: hash.c:(.text+0x...): undefined reference to `EVP_sha3_384'
try.c: hash.c:(.text+0x...): undefined reference to `EVP_sha3_384'
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 -fPIC -fPIE openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE openssl