Implementation notes: amd64, cannon, crypto_stream/aes128estream

Computer: cannon
Architecture: amd64
CPU ID: GenuineIntel-00060663-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_stream
Primitive: aes128estream
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
143725856 4096 417532 4904 864e/hongjun/v1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
146324278 4096 415956 4904 864e/hongjun/v0gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
146425615 4096 416236 4888 832e/hongjun/v1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
147143922 4096 414548 4888 832e/hongjun/v0gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
149027237 4096 421773 4912 864e/hongjun/v1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
150845615 4096 420165 4912 864e/hongjun/v0gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
151104299 4096 415932 4904 864e/hongjun/v0gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
154285932 4096 417556 4904 864e/hongjun/v1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
158966726 4096 121443 4936 840e/hongjun/v1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
159087567 4096 122603 4936 840e/hongjun/v1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
159906726 4096 121443 4936 840e/hongjun/v1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
162526069 4096 117561 4928 808e/hongjun/v1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
166928067 0 122803 832 840e/bernstein/little-4clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
166988067 0 122803 832 840e/bernstein/little-4clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
167128067 0 123123 832 840e/bernstein/little-4clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
168324998 4096 119731 4936 840e/hongjun/v0clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
168467198 0 118681 824 808e/bernstein/little-4clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
168785839 4096 120891 4936 840e/hongjun/v0clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
169044408 4096 115913 4928 808e/hongjun/v0clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
169084998 4096 119731 4936 840e/hongjun/v0clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
175544349 0 414956 784 832e/bernstein/little-2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
176245293 0 419853 808 864e/bernstein/little-2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
176504662 0 416364 800 864e/bernstein/little-2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
176504568 0 416220 800 864e/bernstein/little-2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
177704251 0 115737 824 808e/bernstein/little-3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
179205188 0 119923 832 840e/bernstein/little-3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
179226012 0 121067 832 840e/bernstein/little-3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
179265188 0 119923 832 840e/bernstein/little-3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
181288577 0 423141 808 864e/bernstein/little-4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
183388499 0 420196 800 864e/bernstein/little-4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
189328196 0 418804 784 832e/bernstein/little-4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
190444312 0 115793 824 808e/bernstein/little-2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
192205299 0 419861 808 864e/bernstein/little-3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
192704630 0 416324 800 864e/bernstein/little-3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
194385244 0 119979 832 840e/bernstein/little-2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
194526092 0 121147 832 840e/bernstein/little-2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
194585244 0 119979 832 840e/bernstein/little-2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
199048729 0 420380 800 864e/bernstein/little-4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
199608375 0 422941 808 864e/bernstein/little-1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
200026790 0 418484 800 864e/bernstein/little-1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
200226345 0 117825 824 808e/bernstein/little-1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
200546464 0 417076 784 832e/bernstein/little-1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
201586639 0 118113 824 808e/bernstein/big-1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
202748094 0 123147 832 840e/bernstein/little-1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
202867278 0 122011 832 840e/bernstein/little-1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
203387278 0 122011 832 840e/bernstein/little-1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
203408398 0 123419 832 840e/bernstein/big-1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
203527550 0 122251 832 840e/bernstein/big-1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
203567550 0 122251 832 840e/bernstein/big-1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091020190910
206386538 0 417156 784 832e/bernstein/big-1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
206626704 0 418356 800 864e/bernstein/little-1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
207568503 0 423077 808 864e/bernstein/big-1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
208726798 0 418500 800 864e/bernstein/big-1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
209984604 0 416260 800 864e/bernstein/little-3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
223567304 0 418948 800 864e/bernstein/big-1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910
269464374 0 414996 784 832e/bernstein/little-3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091020190910

Compiler output

Implementation: e/bernstein/amd64-1
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_aes128estream.a(aes-ctr.o): relocation R_X86_64_32S against `.rodata' 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: 20, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-1
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-1
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-1
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-1
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/bernstein/amd64-2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-1
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-1
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-1
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-1
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/athlon64-2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/core2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/core2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/core2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/schwabe/core2

Compiler output

Implementation: e/bernstein/amd64-1
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_stream_aes128estream.a(aes-ctr.o): relocation R_X86_64_32S against `.rodata' 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: 20, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/bernstein/amd64-2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/athlon64-2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/core2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/core2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/core2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/schwabe/core2

Compiler output

Implementation: e/gladman
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aes-ctr.c: In file included from aes-ctr.c:2:
aes-ctr.c: In file included from ./e/aes-ctr.c:17:
aes-ctr.c: In file included from ./e/aestab.c:41:
aes-ctr.c: ./e/aesopt.h:168:2: error: Could not detect endianness
aes-ctr.c: #error Could not detect endianness
aes-ctr.c: ^
aes-ctr.c: In file included from aes-ctr.c:2:
aes-ctr.c: In file included from ./e/aes-ctr.c:17:
aes-ctr.c: In file included from ./e/aestab.c:194:
aes-ctr.c: ./e/aestab.h:106:60: warning: implicit declaration of function 'bytes2word' is invalid in C99 [-Wimplicit-function-declaration]
aes-ctr.c: Extern Align Const aes_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0);
aes-ctr.c: ^
aes-ctr.c: ./e/aestab.h:106:60: error: initializer element is not a compile-time constant
aes-ctr.c: Extern Align Const aes_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0);
aes-ctr.c: ~~~~~~~~^~~
aes-ctr.c: ./e/aestab.c:148:5: note: expanded from macro 'rc_data'
aes-ctr.c: w(0x01), w(0x02), w(0x04), w(0x08), w(0x10),w(0x20), w(0x40), w(0x80),\
aes-ctr.c: ^~~~~~~
aes-ctr.c: ./e/aestab.c:153:17: note: expanded from macro 'w0'
aes-ctr.c: #define w0(p) bytes2word(p, 0, 0, 0)
aes-ctr.c: ^~~~~~~~~~~~~~~~~~~~~~
aes-ctr.c: In file included from aes-ctr.c:2:
aes-ctr.c: In file included from ./e/aes-ctr.c:17:
aes-ctr.c: In file included from ./e/aestab.c:194:
aes-ctr.c: ./e/aestab.h:124:39: error: initializer element is not a compile-time constant
aes-ctr.c: ...

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

Compiler output

Implementation: e/gladman
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aes-ctr.c: In file included from e/aestab.c:41,
aes-ctr.c: from e/aes-ctr.c:17,
aes-ctr.c: from aes-ctr.c:2:
aes-ctr.c: e/aesopt.h:168:2: error: #error Could not detect endianness
aes-ctr.c: 168 | #error Could not detect endianness
aes-ctr.c: | ^~~~~
aes-ctr.c: In file included from e/aes-ctr.c:17,
aes-ctr.c: from aes-ctr.c:2:
aes-ctr.c: e/aestab.c:153:17: warning: implicit declaration of function 'bytes2word' [-Wimplicit-function-declaration]
aes-ctr.c: 153 | #define w0(p) bytes2word(p, 0, 0, 0)
aes-ctr.c: | ^~~~~~~~~~
aes-ctr.c: e/aestab.c:148:5: note: in expansion of macro 'w0'
aes-ctr.c: 148 | w(0x01), w(0x02), w(0x04), w(0x08), w(0x10),w(0x20), w(0x40), w(0x80),\
aes-ctr.c: | ^
aes-ctr.c: e/aestab.h:106:52: note: in expansion of macro 'rc_data'
aes-ctr.c: 106 | Extern Align Const aes_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0);
aes-ctr.c: | ^~~~~~~
aes-ctr.c: e/aestab.c:153:17: error: initializer element is not constant
aes-ctr.c: 153 | #define w0(p) bytes2word(p, 0, 0, 0)
aes-ctr.c: | ^~~~~~~~~~
aes-ctr.c: e/aestab.c:148:5: note: in expansion of macro 'w0'
aes-ctr.c: 148 | w(0x01), w(0x02), w(0x04), w(0x08), w(0x10),w(0x20), w(0x40), w(0x80),\
aes-ctr.c: | ^
aes-ctr.c: e/aestab.h:106:52: note: in expansion of macro 'rc_data'
aes-ctr.c: 106 | Extern Align Const aes_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0);
aes-ctr.c: ...

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