Implementation notes: aarch64, supercoplxc, crypto_stream/aes256estream

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_stream
Primitive: aes256estream
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
457608995 4096 422888 5000 808e/hongjun/v1gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
464809007 4096 422832 5000 808e/hongjun/v1gcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
478408991 4096 423473 5016 824e/hongjun/v1gcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
478407247 4096 418214 4984 800e/hongjun/v1gcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
478407247 4096 418214 4984 800e/hongjun/v1gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
481608043 4096 421145 5016 824e/hongjun/v1gcc_-O3_-fomit-frame-pointer2019090220190816
481609003 4096 423417 5016 824e/hongjun/v1gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
489607451 4096 419208 5000 808e/hongjun/v1gcc_-O2_-fomit-frame-pointer2019090220190816
496807019 4096 421505 5016 824e/hongjun/v0gcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
498406071 4096 419177 5016 824e/hongjun/v0gcc_-O3_-fomit-frame-pointer2019090220190816
502405039 4096 416800 5000 808e/hongjun/v0gcc_-O2_-fomit-frame-pointer2019090220190816
506406887 4096 420720 5000 808e/hongjun/v0gcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
520006839 4096 420744 5000 808e/hongjun/v0gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
526404743 4096 415718 4984 800e/hongjun/v0gcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
526404743 4096 415718 4984 800e/hongjun/v0gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
533606963 4096 421393 5016 824e/hongjun/v0gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
554407171 4096 121180 4896 840e/hongjun/v1clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
560004695 4096 118700 4896 840e/hongjun/v0clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
594404683 4096 118644 4896 840e/hongjun/v0clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
594404731 4096 118748 4896 840e/hongjun/v0clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
594404731 4096 118748 4896 840e/hongjun/v0clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
594404731 4096 118748 4896 840e/hongjun/v0clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
601607163 4096 121124 4896 840e/hongjun/v1clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
601607211 4096 121228 4896 840e/hongjun/v1clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
601607211 4096 121228 4896 840e/hongjun/v1clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
601607211 4096 121228 4896 840e/hongjun/v1clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
843208051 4096 421097 5016 824e/hongjun/v1gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
852807487 4096 419152 5000 808e/hongjun/v1gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
864807243 4096 418158 4984 800e/hongjun/v1gcc_-Os_-fomit-frame-pointer2019090220190816
864807243 4096 418158 4984 800e/hongjun/v1gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
884006019 4096 419081 5016 824e/hongjun/v0gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
884804979 4096 416664 5000 808e/hongjun/v0gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
885604743 4096 415654 4984 800e/hongjun/v0gcc_-Os_-fomit-frame-pointer2019090220190816
885604743 4096 415654 4984 800e/hongjun/v0gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
1116007623 4096 419528 5000 808e/hongjun/v1gcc_-O_-fomit-frame-pointer2019090220190816
1116007623 4096 419528 5000 808e/hongjun/v1gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
1120007435 4096 422576 5000 808e/hongjun/v0gcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
1120007435 4096 422576 5000 808e/hongjun/v0gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
1125605059 4096 416968 5000 808e/hongjun/v0gcc_-O_-fomit-frame-pointer2019090220190816
1125605059 4096 416968 5000 808e/hongjun/v0gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
1144009651 4096 424776 5000 808e/hongjun/v1gcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
1144009651 4096 424776 5000 808e/hongjun/v1gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
36816022804 4096 441984 4984 816e/hongjun/v1cc2019090220190816
36816022804 4096 441984 4984 816e/hongjun/v1gcc2019090220190816
36816022804 4096 441984 4984 816e/hongjun/v1gcc_-funroll-loops2019090220190816
37352014060 4096 433248 4984 816e/hongjun/v0cc2019090220190816
37352014060 4096 433248 4984 816e/hongjun/v0gcc2019090220190816
37352014060 4096 433248 4984 816e/hongjun/v0gcc_-funroll-loops2019090220190816

Compiler output

Implementation: e/gladman
Security model: unknown
Compiler: cc
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: #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: #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: 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: 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: #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: 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: Extern Align Const aes_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0);
aes-ctr.c: ...

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc e/gladman
gcc e/gladman
gcc -O2 -fomit-frame-pointer e/gladman
gcc -O3 -fomit-frame-pointer e/gladman
gcc -O -fomit-frame-pointer e/gladman
gcc -Os -fomit-frame-pointer e/gladman
gcc -fno-schedule-insns -O2 -fomit-frame-pointer e/gladman
gcc -fno-schedule-insns -O3 -fomit-frame-pointer e/gladman
gcc -fno-schedule-insns -O -fomit-frame-pointer e/gladman
gcc -fno-schedule-insns -Os -fomit-frame-pointer e/gladman
gcc -funroll-loops e/gladman
gcc -funroll-loops -O2 -fomit-frame-pointer e/gladman
gcc -funroll-loops -O3 -fomit-frame-pointer e/gladman
gcc -funroll-loops -O -fomit-frame-pointer e/gladman
gcc -funroll-loops -Os -fomit-frame-pointer e/gladman
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer e/gladman
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer e/gladman
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer e/gladman
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer e/gladman

Compiler output

Implementation: e/gladman
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
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: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments e/gladman
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments e/gladman
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments e/gladman
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments e/gladman
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/gladman