Implementation notes: amd64, genji262, crypto_aead/paeq128tnm

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: paeq128tnm
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2367210664 28 6553623321 860 66464aesnig++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
2472834808 28 6553652158 892 66400aesniicpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
2499235624 28 6553652926 892 66400aesniicpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
2607034480 28 6553653030 892 66400aesniicpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
2607034256 28 6553652886 892 66400aesniicpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
2615834256 28 6553652886 892 66400aesniicpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
2615834256 28 6553652886 892 66400aesniicpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
2618034256 28 6553652886 892 66400aesniicpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
2622434480 28 6553653030 892 66400aesniicpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
2622434480 28 6553653030 892 66400aesniicpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
2629034480 28 6553653030 892 66400aesniicpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
2877634496 28 6553653102 892 66400aesniicpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
2886434496 28 6553653102 892 66400aesniicpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
2886434784 28 6553653742 892 66400aesniicpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
2888634496 28 6553653102 892 66400aesniicpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
2888634496 28 6553653102 892 66400aesniicpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
2893034784 28 6553653742 892 66400aesniicpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
2893034784 28 6553653742 892 66400aesniicpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
2904034784 28 6553653742 892 66400aesniicpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
3038211092 28 6553623921 860 66464aesnig++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
3047037622 28 6553651974 868 66464aesnig++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
357508205 28 6553619849 844 66464aesnig++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
209193612451 32 6553627512 856 66416refclang++_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
218204811690 32 6553625888 856 66416refclang++_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
220391611690 32 6553625888 856 66416refclang++_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
259509832664 28 6553649950 892 66400reficpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
267938028088 28 6553646654 892 66400reficpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
268052428088 28 6553646654 892 66400reficpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
268122828088 28 6553646654 892 66400reficpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
269024833064 28 6553650302 892 66400reficpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
269610028088 28 6553646654 892 66400reficpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
275314628424 28 6553646966 892 66400reficpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
275695228424 28 6553646966 892 66400reficpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
275939428424 28 6553646966 892 66400reficpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
283397428424 28 6553646966 892 66400reficpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
291887228896 28 6553647382 892 66400reficpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
292138028896 28 6553647382 892 66400reficpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
292437228896 28 6553647382 892 66400reficpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
292705628896 28 6553647382 892 66400reficpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
304180829264 28 6553648158 892 66400reficpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
304759429264 28 6553648158 892 66400reficpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
304968429264 28 6553648158 892 66400reficpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
307150829264 28 6553648158 892 66400reficpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
430372816547 28 6553630870 868 66464refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
63315787198 32 6553618614 848 66400refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
85037047466 28 6553620265 860 66464refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
91549046650 28 6553619281 860 66464refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
217224705060 28 6553616673 844 66464refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

Implementation: aesni
Security model: unknown
Compiler: icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: aesni
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.cpp: In file included from encrypt.cpp:10:
encrypt.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/algorithm:62:
encrypt.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/stl_algo.h:65:
encrypt.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/random:51:
encrypt.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h:33:
encrypt.cpp: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/x86intrin.h:27:
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: error: use of undeclared identifier '__builtin_ia32_bsrsi'
encrypt.cpp: return __builtin_ia32_bsrsi (__X);
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:112:1: error: definition of builtin function '__rdtsc'
encrypt.cpp: __rdtsc (void)
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:134:10: error: use of undeclared identifier '__builtin_ia32_rolqi'
encrypt.cpp: return __builtin_ia32_rolqi (__X, __C);
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:142:10: error: use of undeclared identifier '__builtin_ia32_rolhi'; did you mean '__builtin_ia32_korhi'?
encrypt.cpp: return __builtin_ia32_rolhi (__X, __C);
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: note: '__builtin_ia32_korhi' declared here
encrypt.cpp: return __builtin_ia32_bsrsi (__X);
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:159:10: error: use of undeclared identifier '__builtin_ia32_rorqi'; did you mean '__builtin_ia32_korhi'?
encrypt.cpp: return __builtin_ia32_rorqi (__X, __C);
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: note: '__builtin_ia32_korhi' declared here
encrypt.cpp: ...

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

Compiler output

Implementation: aesni
Security model: unknown
Compiler: icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.cpp: encrypt.cpp(21): warning #1879: unimplemented pragma ignored
encrypt.cpp: #pragma intrinsic(_mm_set_epi64x)
encrypt.cpp: ^
encrypt.cpp:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer aesni
icpc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer aesni
icpc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer aesni
icpc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer aesni
icpc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer aesni
icpc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer aesni
icpc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer aesni
icpc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer aesni
icpc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer aesni
icpc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer aesni
icpc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer aesni
icpc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer aesni
icpc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer aesni
icpc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer aesni
icpc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer aesni
icpc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer aesni
icpc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer aesni
icpc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer aesni

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.cpp: In file included from encrypt.cpp:12:
encrypt.cpp: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/wmmintrin.h:31:
encrypt.cpp: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/emmintrin.h:31:
encrypt.cpp: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/xmmintrin.h:31:
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:55:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:61:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:68:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:74:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:84:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:90:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:97:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: ...

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

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.cpp: encrypt.cpp:13:10: fatal error: intrin.h: No such file or directory
encrypt.cpp: 13 | #include <intrin.h>
encrypt.cpp: | ^~~~~~~~~~
encrypt.cpp: compilation terminated.

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

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.cpp: encrypt.cpp(13): catastrophic error: cannot open source file "intrin.h"
encrypt.cpp: #include <intrin.h>
encrypt.cpp: ^
encrypt.cpp:
encrypt.cpp: compilation aborted for encrypt.cpp (code 4)

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer opt-win-aes
icpc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer opt-win-aes
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt-win-aes
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer opt-win-aes
icpc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer opt-win-aes
icpc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer opt-win-aes
icpc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer opt-win-aes
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt-win-aes
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt-win-aes
icpc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer opt-win-aes
icpc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer opt-win-aes
icpc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer opt-win-aes
icpc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer opt-win-aes
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer opt-win-aes
icpc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer opt-win-aes

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.cpp: encrypt.cpp:355:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: encrypt.cpp:610:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: encrypt.cpp:864:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: 3 warnings generated.

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_paeq128tnm_ref_encrypt(unsigned char*, long long unsigned int*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:355:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 355 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_encrypt_no_nonce(unsigned char*, long long unsigned int*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:610:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 610 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_paeq128tnm_ref_decrypt(unsigned char*, long long unsigned int*, unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:864:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 864 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.cpp: encrypt.cpp(355): warning #69: integer conversion resulted in truncation
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ^
encrypt.cpp:
encrypt.cpp: encrypt.cpp(610): warning #69: integer conversion resulted in truncation
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ^
encrypt.cpp:
encrypt.cpp: encrypt.cpp(864): warning #69: integer conversion resulted in truncation
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits
encrypt.cpp: ^
encrypt.cpp:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer ref
icpc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer ref
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icpc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer ref
icpc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer ref
icpc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer ref
icpc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer ref
icpc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer ref
icpc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer ref
icpc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer ref
icpc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer ref
icpc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer ref
icpc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icpc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer ref
icpc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer ref
icpc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer ref
icpc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref
icpc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer ref
icpc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer ref