Implementation notes: amd64, cannon, crypto_stream/chacha20

Computer: cannon
Architecture: amd64
CPU ID: GenuineIntel-00060663-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_stream
Primitive: chacha20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
115610274 0 125363 832 840dolbeau/amd64-avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
11589100 0 120617 824 808dolbeau/amd64-avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
116010274 0 125043 832 840dolbeau/amd64-avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
116210274 0 125043 832 840dolbeau/amd64-avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
132211197 0 422916 800 864dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
132211441 0 426069 808 864dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
132211603 0 423292 800 864dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
133610916 0 421556 784 832dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
21823657 0 018253 808 856krovetz/avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
21903657 0 015397 808 856krovetz/avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
22643342 0 013972 784 824krovetz/avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
24163532 0 015229 808 856krovetz/avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
27724418 0 119203 832 840dolbeau/generic-gccsimd128clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
27724418 0 119523 832 840dolbeau/generic-gccsimd128clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
27744418 0 119203 832 840dolbeau/generic-gccsimd128clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
28103312 0 114809 824 808dolbeau/generic-gccsimd128clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
30023937 0 414564 784 832dolbeau/generic-gccsimd128gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
30384365 0 416068 800 864dolbeau/generic-gccsimd128gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
30385009 0 419605 808 864dolbeau/generic-gccsimd128gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
31342840 0 017875 832 832krovetz/vec128clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
31382204 0 013689 824 800krovetz/vec128clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
31402232 0 016947 832 832krovetz/vec128clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
31422232 0 016947 832 832krovetz/vec128clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
32364225 0 415900 800 864dolbeau/generic-gccsimd128gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
41822809 0 014549 808 856krovetz/vec128gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
41822114 0 012748 784 824krovetz/vec128gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
41922809 0 017389 808 856krovetz/vec128gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
42582797 0 014501 808 856krovetz/vec128gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
44704409 0 415012 784 832e/amd64-xmm6gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
44804580 0 419133 808 864e/amd64-xmm6gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
44844558 0 416172 800 864e/amd64-xmm6gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
44904524 0 119283 832 840e/amd64-xmm6clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
44944510 0 116009 824 808e/amd64-xmm6clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
45024524 0 119603 832 840e/amd64-xmm6clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
45144580 0 416236 800 864e/amd64-xmm6gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
45284524 0 119283 832 840e/amd64-xmm6clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
77323474 0 118243 832 840e/mergedclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
77383474 0 118563 832 840e/mergedclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
77403474 0 118243 832 840e/mergedclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
77581786 0 113297 824 808e/mergedclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
90962461 0 414132 800 864e/mergedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
92482621 0 117379 832 840e/amd64-3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
92522621 0 117699 832 840e/amd64-3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
92562677 0 417229 808 864e/amd64-3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
92582607 0 114105 824 808e/amd64-3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
92622621 0 117379 832 840e/amd64-3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
92662677 0 414332 800 864e/amd64-3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
92702508 0 413076 784 832e/amd64-3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
92782655 0 414268 800 864e/amd64-3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
93722961 0 417525 808 864e/mergedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
94802619 0 417205 808 864e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
96822536 0 414172 800 864e/mergedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
97722619 0 417205 808 864e/regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
99822194 0 412788 784 832e/mergedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
113022722 0 117459 832 840e/refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
113442506 0 117275 832 840e/regsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
113902506 0 117275 832 840e/regsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
113922506 0 117595 832 840e/regsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
114042722 0 117779 832 840e/refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
114042722 0 117459 832 840e/refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
118101604 0 113097 824 808e/refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
118422291 0 413980 800 864e/regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
124401675 0 113193 824 808e/regsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
126582316 0 413948 800 864e/regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
130902275 0 413964 800 864e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
137902081 0 412676 784 832e/regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
139542181 0 413820 800 864e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
149601941 0 412532 784 832e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910

Compiler output

Implementation: amd64-ssse3
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(chacha.o): relocation R_X86_64_32S against symbol `R16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: nonrepresentable section on output
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: amd64-ssse3
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(chacha.o): relocation R_X86_64_32S against symbol `R16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: nonrepresentable section on output
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 amd64-ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64-ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64-ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64-ssse3

Compiler output

Implementation: krovetz/avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
stream.c: stream.c:56:18: warning: implicit declaration of function '_mm_broadcastsi128_si256' is invalid in C99 [-Wimplicit-function-declaration]
stream.c: __m256i s0 = _mm_broadcastsi128_si256((__m128i *)sigma);
stream.c: ^
stream.c: stream.c:56:13: error: initializing '__m256i' (vector of 4 'long long' values) with an expression of incompatible type 'int'
stream.c: __m256i s0 = _mm_broadcastsi128_si256((__m128i *)sigma);
stream.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stream.c: 1 warning and 1 error generated.

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

Compiler output

Implementation: moon/avx/64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_avx_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx_64'
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: moon/avx/64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_avx_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx_64'
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 moon/avx/64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx/64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx/64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx/64

Compiler output

Implementation: moon/avx2/64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_avx2_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx2_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx2_64'
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: moon/avx2/64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_avx2_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx2_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_avx2_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_avx2_64'
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 moon/avx2/64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx2/64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx2/64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/avx2/64

Compiler output

Implementation: moon/sse2/64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_sse2_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_sse2_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_sse2_64'
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: moon/sse2/64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_sse2_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_sse2_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_sse2_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_sse2_64'
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 moon/sse2/64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/sse2/64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/sse2/64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/sse2/64

Compiler output

Implementation: moon/ssse3/64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_ssse3_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_ssse3_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_ssse3_64'
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: moon/ssse3/64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_ssse3_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_ssse3_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_ssse3_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_ssse3_64'
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 moon/ssse3/64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/ssse3/64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/ssse3/64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/ssse3/64

Compiler output

Implementation: moon/xop/64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_xop_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_xop_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_xop_64'
try.c: clang-8: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: moon/xop/64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64':
try.c: crypto_stream.c:(.text+0x...): multiple definition of `crypto_stream_chacha20_moon_xop_64'; crypto_stream_chacha20.a(chacha.o):(.text+0x...): first defined here
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64_xor':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_xop_64'
try.c: /usr/bin/ld: crypto_stream_chacha20.a(crypto_stream.o): in function `crypto_stream_chacha20_moon_xop_64':
try.c: crypto_stream.c:(.text+0x...): undefined reference to `crypto_stream_chacha12_moon_xop_64'
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 moon/xop/64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/xop/64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/xop/64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE moon/xop/64