Implementation notes: amd64, luft, crypto_hash/sha3224

Computer: luft
Architecture: amd64
CPU ID: GenuineIntel-000306d4-bfebfbff
SUPERCOP version: 20200702
Operation: crypto_hash
Primitive: sha3224
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
150321589 0 077824 4096 0oncore64bitsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
15092574 0 073728 4096 0oncore64bitsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
15448625 0 073728 4096 0oncore64bitsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
275561573 0 077824 4096 0oncore64bitsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
279921573 0 077824 4096 0oncore64bitsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
285721243 0 077824 4096 0oncore64bitsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
29380630 0 073728 4096 0oncore64bitsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
294722475 0 077824 4096 0oncore64bitsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
295565347 0 032768 4096 0oncore32bitsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
296482426 0 028672 4096 0oncore32bitsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
29876695 0 073728 4096 0oncore64bitsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
336482093 0 024576 4096 0oncore32bitsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
530962068 0 028672 4096 0oncore32bitsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
534162068 0 028672 4096 0oncore32bitsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
554482320 0 028672 4096 0oncore32bitsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
589761523 0 024576 4096 0oncore32bitsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020070920200702
609481863 0 024576 4096 0oncore32bitsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702
634601889 0 024576 4096 0oncore32bitsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020070920200702

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:1:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:2:1: error: unexpected token at start of statement
keccak.s: @ Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni,
keccak.s: ^
keccak.s: keccak.s:3:1: error: unexpected token at start of statement
keccak.s: @ Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:4:1: error: unexpected token at start of statement
keccak.s: @ denoted as "the implementer".
keccak.s: ^
keccak.s: keccak.s:5:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:6:1: error: unexpected token at start of statement
keccak.s: @ For more information, feedback or questions, please refer to our websites:
keccak.s: ^
keccak.s: keccak.s:7:1: error: unexpected token at start of statement
keccak.s: @ http:
keccak.s: ^
keccak.s: keccak.s:8:1: error: unexpected token at start of statement
keccak.s: @ http:
keccak.s: ^
keccak.s: keccak.s:9:1: error: unexpected token at start of statement
keccak.s: @ http:
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:1:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:2:1: error: unexpected token at start of statement
keccak.s: @ Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni,
keccak.s: ^
keccak.s: keccak.s:3:1: error: unexpected token at start of statement
keccak.s: @ Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:4:1: error: unexpected token at start of statement
keccak.s: @ denoted as "the implementer".
keccak.s: ^
keccak.s: keccak.s:5:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:6:1: error: unexpected token at start of statement
keccak.s: @ For more information, feedback or questions, please refer to our websites:
keccak.s: ^
keccak.s: keccak.s:7:1: error: unexpected token at start of statement
keccak.s: @ http://keccak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:8:1: error: unexpected token at start of statement
keccak.s: @ http://keyak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:9:1: error: unexpected token at start of statement
keccak.s: @ http://ketje.noekeon.org/
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:17: error: unknown token in expression
keccak.s: movi v0.2d, #0
keccak.s: ^
keccak.s: keccak.s:259:17: error: unknown token in expression
keccak.s: movi v1.2d, #0
keccak.s: ^
keccak.s: keccak.s:260:17: error: unknown token in expression
keccak.s: movi v2.2d, #0
keccak.s: ^
keccak.s: keccak.s:261:17: error: unknown token in expression
keccak.s: movi v3.2d, #0
keccak.s: ^
keccak.s: keccak.s:262:11: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:263:11: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:264:11: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:265:11: error: unknown token in expression
keccak.s: st1 { v0.d }[0], [x0], #8
keccak.s: ^
keccak.s: keccak.s:276:14: error: brackets expression not supported on this target
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:258:20: error: unknown token in expression
keccak.s: movi v0.2d, #0
keccak.s: ^
keccak.s: keccak.s:259:20: error: unknown token in expression
keccak.s: movi v1.2d, #0
keccak.s: ^
keccak.s: keccak.s:260:20: error: unknown token in expression
keccak.s: movi v2.2d, #0
keccak.s: ^
keccak.s: keccak.s:261:20: error: unknown token in expression
keccak.s: movi v3.2d, #0
keccak.s: ^
keccak.s: keccak.s:262:15: error: unknown token in expression
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: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:264:15: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:265:15: error: unknown token in expression
keccak.s: st1 { v0.d }[0], [x0], #8
keccak.s: ^
keccak.s: keccak.s:276:17: error: brackets expression not supported on this target
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 [-Wdeprecated]
SHA3-224.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
try.cpp: Undefined symbols for architecture x86_64:
try.cpp: "KeccakP1600_AddByte(void*, unsigned char, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeSqueeze(KeccakWidth1600_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeAbsorbLastFewBits(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeSqueeze(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeAbsorb(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char const*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_Initialize(void*)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeInitialize(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned int, unsigned int) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeSqueeze(KeccakWidth1600_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeSqueeze(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: ...

Number of similar (compiler,implementation) pairs: 3, 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

Compiler output

Implementation: kcp/optimized1600AVX2
Security model: unknown
Compiler: clang++ -march=native -Os -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 [-Wdeprecated]
SHA3-224.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
try.cpp: Undefined symbols for architecture x86_64:
try.cpp: "KeccakP1600_AddByte(void*, unsigned char, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeAbsorbLastFewBits(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeAbsorb(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char const*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_Initialize(void*)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeInitialize(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned int, unsigned int) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeSqueeze(KeccakWidth1600_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_12rounds_SpongeSqueeze(KeccakWidth1600_12rounds_SpongeInstanceStruct*, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)", referenced from:
try.cpp: KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long) in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "KeccakP1600_Permute_12rounds(void*)", referenced from:
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
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
try.cpp: Undefined symbols for architecture x86_64:
try.cpp: "__Z19KeccakP1600_AddBytePvhj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z39KeccakWidth1600_SpongeAbsorbLastFewBitsP36KeccakWidth1600_SpongeInstanceStructh in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z48KeccakWidth1600_12rounds_SpongeAbsorbLastFewBitsP45KeccakWidth1600_12rounds_SpongeInstanceStructh in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z20KeccakP1600_AddBytesPvPKhjj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z28KeccakWidth1600_SpongeAbsorbP36KeccakWidth1600_SpongeInstanceStructPKhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z37KeccakWidth1600_12rounds_SpongeAbsorbP45KeccakWidth1600_12rounds_SpongeInstanceStructPKhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z22KeccakP1600_InitializePv", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z32KeccakWidth1600_SpongeInitializeP36KeccakWidth1600_SpongeInstanceStructjj in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z41KeccakWidth1600_12rounds_SpongeInitializeP45KeccakWidth1600_12rounds_SpongeInstanceStructjj in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z24KeccakP1600_ExtractBytesPKvPhjj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z29KeccakWidth1600_SpongeSqueezeP36KeccakWidth1600_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z38KeccakWidth1600_12rounds_SpongeSqueezeP45KeccakWidth1600_12rounds_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z27KeccakF1600_FastLoop_AbsorbPvjPKhm", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z28KeccakWidth1600_SpongeAbsorbP36KeccakWidth1600_SpongeInstanceStructPKhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z28KeccakP1600_Permute_12roundsPv", referenced from:
try.cpp: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -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/optimized1600AVX2
Security model: unknown
Compiler: g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: Undefined symbols for architecture x86_64:
try.cpp: "__Z19KeccakP1600_AddBytePvhj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z39KeccakWidth1600_SpongeAbsorbLastFewBitsP36KeccakWidth1600_SpongeInstanceStructh in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z29KeccakWidth1600_SpongeSqueezeP36KeccakWidth1600_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z48KeccakWidth1600_12rounds_SpongeAbsorbLastFewBitsP45KeccakWidth1600_12rounds_SpongeInstanceStructh in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z38KeccakWidth1600_12rounds_SpongeSqueezeP45KeccakWidth1600_12rounds_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z20KeccakP1600_AddBytesPvPKhjj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z28KeccakWidth1600_SpongeAbsorbP36KeccakWidth1600_SpongeInstanceStructPKhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z37KeccakWidth1600_12rounds_SpongeAbsorbP45KeccakWidth1600_12rounds_SpongeInstanceStructPKhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z22KeccakP1600_InitializePv", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z32KeccakWidth1600_SpongeInitializeP36KeccakWidth1600_SpongeInstanceStructjj in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z41KeccakWidth1600_12rounds_SpongeInitializeP45KeccakWidth1600_12rounds_SpongeInstanceStructjj in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z24KeccakP1600_ExtractBytesPKvPhjj", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z29KeccakWidth1600_SpongeSqueezeP36KeccakWidth1600_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z31KeccakWidth1600_12rounds_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: __Z38KeccakWidth1600_12rounds_SpongeSqueezeP45KeccakWidth1600_12rounds_SpongeInstanceStructPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: "__Z27KeccakF1600_FastLoop_AbsorbPvjPKhm", referenced from:
try.cpp: __Z22KeccakWidth1600_SpongejjPKhmhPhm in crypto_hash_sha3224.a(KeccakSpongeWidth1600.o)
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O3 -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: KeccakP-1600-AVX512.c:238:9: error: always_inline function '_mm512_mask_storeu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
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: KeccakP-1600-AVX512.c:238:37: error: always_inline function '_mm512_xor_si512' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
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:206:37: note: expanded from macro 'XOR'
KeccakP-1600-AVX512.c: #define XOR(a,b) _mm512_xor_si512(a,b)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:41: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
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:215:37: note: expanded from macro 'LOAD_8Lanes'
KeccakP-1600-AVX512.c: #define LOAD_8Lanes(a) LOAD_Lanes(0xFF,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:212:37: note: expanded from macro 'LOAD_Lanes'
KeccakP-1600-AVX512.c: #define LOAD_Lanes(m,a) _mm512_maskz_loadu_epi64(m,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:68: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
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: In function 'KeccakP1600_AddBytes':
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX512.c: 216 | #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: 219 | #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: 238 | STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~~
KeccakP-1600-AVX512.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.1.0/include/immintrin.h:55,
KeccakP-1600-AVX512.c: from KeccakP-1600-AVX512.c:26:
KeccakP-1600-AVX512.c: /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.1.0/include/avx512fintrin.h:6388:1: error: inlining failed in call to 'always_inline' '_mm512_mask_storeu_epi64': target specific option mismatch
KeccakP-1600-AVX512.c: 6388 | _mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: note: called from here
KeccakP-1600-AVX512.c: 216 | #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: 219 | #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: 238 | STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: | ^~~~~~~~~~~~
KeccakP-1600-AVX512.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.1.0/include/immintrin.h:55,
KeccakP-1600-AVX512.c: ...

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:2:10: fatal error: 'openssl/evp.h' file not found
hash.c: #include <openssl/evp.h>
hash.c: ^~~~~~~~~~~~~~~
hash.c: 1 error generated.

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:2:10: fatal error: openssl/evp.h: No such file or directory
hash.c: 2 | #include <openssl/evp.h>
hash.c: | ^~~~~~~~~~~~~~~
hash.c: compilation terminated.

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