Implementation notes: amd64, oki, crypto_aead/deoxysneq128128v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: deoxysneq128128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7158? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
7162? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
7178? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
7260? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
7262? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
7268? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
7268? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
7272? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
7274? ? ?? ? ?optgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
7276? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
7290? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
7290? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
7738? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
7954? ? ?? ? ?optclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
8682? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
8692? ? ?? ? ?optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
9230? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
9288? ? ?? ? ?optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
9390? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
9420? ? ?? ? ?optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
11542? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
11580? ? ?? ? ?optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
678078? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
723268? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
745784? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
746650? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
748550? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
748710? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
749414? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
749484? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
749620? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
750038? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
783440? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
785028? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
806388? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
806680? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
809864? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
810704? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
811190? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
962238? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
962452? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
962596? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
990896? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
991206? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
1067850? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
1068044? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
1069552? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
1069610? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
1073954? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
1073958? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
1074488? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
1079986? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
1080348? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
1080578? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
1111854? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
1112136? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
1128092? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
1128370? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
1175780? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
1177298? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
1178218? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
1185894? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
1187506? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
1207162? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
1207730? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
1211240? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
1211742? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
1220958? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
1235036? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
1235058? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
1243118? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
1243532? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
1243820? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
1244276? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
1244546? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
1246674? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
1246852? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
1246900? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
1247758? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
1248700? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
1248712? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
1249600? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
1264752? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
1266246? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
1615768? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
1619352? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
1626572? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
1628310? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
1628806? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
1697824? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
1698354? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
1848230? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
1853522? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
1928580? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
1928928? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
1929364? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
1936802? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
1937134? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
1943234? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
1945460? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
1964010? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
1966006? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
1984348? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
1989392? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
1989634? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
1991098? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
1993112? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
1993860? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
2006986? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
2008124? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
2009108? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
2009588? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
2009938? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
2010528? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
2010602? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
2013940? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
2014058? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
2015562? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
2017508? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
2018908? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
2023240? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
2023956? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
2024314? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
2030566? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
2038046? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
2038920? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
2039166? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
2039428? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
2043076? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
2057644? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
2077056? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
2077336? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
2077646? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
2139662? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
2147396? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
2147538? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
2186924? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
2187196? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
4326882? ? ?? ? ?refgcc_-funroll-loops2018112920181123
4328170? ? ?? ? ?refgcc2018112920181123
4345078? ? ?? ? ?refcc2018112920181123

Compiler output

Implementation: opt
Security model: unknown
Compiler: cc
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
deoxys.c: # error "AES/PCLMUL instructions not enabled"
deoxys.c: ^
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
deoxys.c: # error "SSSE3 instruction set not enabled"
deoxys.c: ^
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: deoxys.c:96:11: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: ^
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:21:12: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys.c: rot_cons = _mm_shuffle_epi8( simply_1b, multi_mask); \
deoxys.c: ^
deoxys.c: tweakable-cipher.macros:27:3: note: in expansion of macro 'TIMES2'
deoxys.c: TIMES2( key, new_key );\
deoxys.c: ^
deoxys.c: tweakable-cipher.macros:32:3: note: in expansion of macro 'ONE_KEY_ROUND'
deoxys.c: ONE_KEY_ROUND( subkeys[ 0], subkeys[ 1] ); ts[ 1] = xor( subkeys[ 1], RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: deoxys.c:104:5: note: in expansion of macro 'TWEAKEY_SCHEDULE2'
deoxys.c: TWEAKEY_SCHEDULE2( tsubkeys,subkeys, key);
deoxys.c: ^
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:96:13: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:7:22: note: expanded from macro 'permute'
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:104:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: TWEAKEY_SCHEDULE2( tsubkeys,subkeys, key);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:32:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( subkeys[ 0], subkeys[ 1] ); ts[ 1] = xor( subkeys[ 1], RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:27:3: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: TIMES2( key, new_key );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:21:14: note: expanded from macro 'TIMES2'
deoxys.c: rot_cons = _mm_shuffle_epi8( simply_1b, multi_mask); \
deoxys.c: ^
deoxys.c: deoxys.c:104:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: ./tweakable-cipher.macros:32:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( subkeys[ 0], subkeys[ 1] ); ts[ 1] = xor( subkeys[ 1], RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:28:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key = permute( new_key, H_PERMUTATION);
deoxys.c: ^
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments opt
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:446:15: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
deoxys.c: if( c_len < 0 )
deoxys.c: ~~~~~ ^ ~
deoxys.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0xb31f60: v4i64 = X86ISD::VTRUNC 0xb31d90
try.c: 0xb31d90: v16i32 = vselect 0xb39de0, 0xacc1c0, 0xb31c60
try.c: 0xb39de0: v4i1 = X86ISD::PCMPGTM 0xb1a080, 0xaccf70
try.c: 0xb1a080: v4i64 = X86ISD::VBROADCAST 0xacd300
try.c: 0xacd300: i64,ch = load<LD8[%uglygep72]> 0xa15db0, 0xb05890, undef:i64
try.c: 0xb05890: i64 = add 0xb1af60, 0xabe630
try.c: 0xb1af60: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xb13510: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xabe630: i64 = shl 0xb12cc0, Constant:i8<3>
try.c: 0xb12cc0: i64,ch = CopyFromReg 0xa15db0, Register:i64 %vreg50
try.c: 0xb1b420: i64 = Register %vreg50
try.c: 0xa97c90: i8 = Constant<3>
try.c: 0xb186f0: i64 = undef
try.c: 0xaccf70: v4i64,ch = CopyFromReg 0xa15db0, Register:v4i64 %vreg13
try.c: 0xad9d90: v4i64 = Register %vreg13
try.c: 0xacc1c0: v16i32 = X86ISD::VBROADCAST 0xb12f20
try.c: 0xb12f20: i32,ch = load<LD4[ConstantPool]> 0xa15db0, 0xb318d0, undef:i64
try.c: 0xb318d0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xab4b30: i64 = TargetConstantPool<i32 1> 0
try.c: 0xb186f0: i64 = undef
try.c: 0xb31c60: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0xb31b30: i32 = Constant<0>
try.c: 0xb31b30: i32 = Constant<0>
try.c: 0xb31b30: i32 = Constant<0>
try.c: 0xb31b30: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:446:15: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
deoxys.c: if( c_len < 0 )
deoxys.c: ~~~~~ ^ ~
deoxys.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:120:4: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: AES( State, subkeys, Tweak, tTweak );
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:69:5: note: expanded from macro 'AES'
deoxys.c: s = enc( s , xor( subkeys[ 1] , t ) );t=permute( t , H_PERMUTATION);\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:1:18: note: expanded from macro 'enc'
deoxys.c: #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:120:4: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: ./tweakable-cipher.macros:70:5: note: expanded from macro 'AES'
deoxys.c: s = enc( s , xor( subkeys[ 2] , t ) );t=permute( t , H_PERMUTATION);\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:1:18: note: expanded from macro 'enc'
deoxys.c: #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:120:4: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: ./tweakable-cipher.macros:71:5: note: expanded from macro 'AES'
deoxys.c: s = enc( s , xor( subkeys[ 3] , t ) );t=permute( t , H_PERMUTATION);\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:1:18: note: expanded from macro 'enc'
deoxys.c: #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:120:4: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: ./tweakable-cipher.macros:72:5: note: expanded from macro 'AES'
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
deoxys.c: deoxys.c:446:15: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
deoxys.c: if( c_len < 0 )
deoxys.c: ~~~~~ ^ ~
deoxys.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x127fa50: v4i64 = X86ISD::VTRUNC 0x127f880
try.c: 0x127f880: v16i32 = vselect 0x127c4c0, 0x122bd30, 0x127f750
try.c: 0x127c4c0: v4i1 = X86ISD::PCMPGTM 0x1267320, 0x122cae0
try.c: 0x1267320: v4i64 = X86ISD::VBROADCAST 0x122ce70
try.c: 0x122ce70: i64,ch = load<LD8[%uglygep72]> 0x1162dd0, 0x1208280, undef:i64
try.c: 0x1208280: i64 = add 0x1268200, 0x11e4b20
try.c: 0x1268200: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x121d920: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x11e4b20: i64 = shl 0x121d0d0, Constant:i8<3>
try.c: 0x121d0d0: i64,ch = CopyFromReg 0x1162dd0, Register:i64 %vreg50
try.c: 0x12686c0: i64 = Register %vreg50
try.c: 0x1218280: i8 = Constant<3>
try.c: 0x1265990: i64 = undef
try.c: 0x122cae0: v4i64,ch = CopyFromReg 0x1162dd0, Register:v4i64 %vreg13
try.c: 0x120f6b0: v4i64 = Register %vreg13
try.c: 0x122bd30: v16i32 = X86ISD::VBROADCAST 0x121d330
try.c: 0x121d330: i32,ch = load<LD4[ConstantPool]> 0x1162dd0, 0x127f3c0, undef:i64
try.c: 0x127f3c0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x11fe290: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1265990: i64 = undef
try.c: 0x127f750: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x127f620: i32 = Constant<0>
try.c: 0x127f620: i32 = Constant<0>
try.c: 0x127f620: i32 = Constant<0>
try.c: 0x127f620: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:28:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, H_PERMUTATION);
deoxys.c: ^~~~~~~
deoxys.c: tweakable-cipher.macros:45:3: note: in expansion of macro 'ONE_KEY_ROUND'
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 70, namely:
CompilerImplementations
gcc opt
gcc -O2 -fomit-frame-pointer opt
gcc -O3 -fomit-frame-pointer opt
gcc -O -fomit-frame-pointer opt
gcc -Os -fomit-frame-pointer opt
gcc -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops opt
gcc -funroll-loops -O2 -fomit-frame-pointer opt
gcc -funroll-loops -O3 -fomit-frame-pointer opt
gcc -funroll-loops -O -fomit-frame-pointer opt
gcc -funroll-loops -Os -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer opt
gcc -m64 -O2 -fomit-frame-pointer opt
gcc -m64 -O3 -fomit-frame-pointer opt
gcc -m64 -O -fomit-frame-pointer opt
gcc -m64 -Os -fomit-frame-pointer opt
gcc -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -march=barcelona -O2 -fomit-frame-pointer opt
gcc -march=barcelona -O3 -fomit-frame-pointer opt
gcc -march=barcelona -O -fomit-frame-pointer opt
gcc -march=barcelona -Os -fomit-frame-pointer opt
gcc -march=k8 -O2 -fomit-frame-pointer opt
gcc -march=k8 -O3 -fomit-frame-pointer opt
gcc -march=k8 -O -fomit-frame-pointer opt
gcc -march=k8 -Os -fomit-frame-pointer opt
gcc -march=nocona -O2 -fomit-frame-pointer opt
gcc -march=nocona -O3 -fomit-frame-pointer opt
gcc -march=nocona -O -fomit-frame-pointer opt
gcc -march=nocona -Os -fomit-frame-pointer opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:28:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, H_PERMUTATION);
deoxys.c: ^~~~~~~
deoxys.c: tweakable-cipher.macros:45:3: note: in expansion of macro 'ONE_KEY_ROUND'
deoxys.c: ...
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:96:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:28:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, H_PERMUTATION);
deoxys.c: ^~~~~~~
deoxys.c: tweakable-cipher.macros:45:3: note: in expansion of macro 'ONE_KEY_ROUND'
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -m64 -march=barcelona -Os -fomit-frame-pointer opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
deoxys.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:82:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[14] , t ) );
deoxys.c: deoxys.c:120:4: note: in expansion of macro 'AES'
deoxys.c: AES( State, subkeys, Tweak, tTweak );
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
deoxys.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: tweakable-cipher.macros:81:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[13] , t ) );t=permute( t , H_PERMUTATION);\
deoxys.c: deoxys.c:120:4: note: in expansion of macro 'AES'
deoxys.c: AES( State, subkeys, Tweak, tTweak );
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
deoxys.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O -fomit-frame-pointer opt
gcc -m64 -march=corei7 -Os -fomit-frame-pointer opt

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x17dc000: v4i64 = X86ISD::VTRUNC 0x17dbe30
try.c: 0x17dbe30: v16i32 = vselect 0x17e5830, 0x176be80, 0x17dbd00
try.c: 0x17e5830: v4i1 = X86ISD::PCMPGTM 0x17d6a60, 0x176cc30
try.c: 0x17d6a60: v4i64 = X86ISD::VBROADCAST 0x176cfc0
try.c: 0x176cfc0: i64,ch = load<LD8[%uglygep72]> 0x16d1db0, 0x17d3990, undef:i64
try.c: 0x17d3990: i64 = add 0x17d7940, 0x17660f0
try.c: 0x17d7940: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x178d5e0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x17660f0: i64 = shl 0x178cd90, Constant:i8<3>
try.c: 0x178cd90: i64,ch = CopyFromReg 0x16d1db0, Register:i64 %vreg50
try.c: 0x17d7e00: i64 = Register %vreg50
try.c: 0x1787220: i8 = Constant<3>
try.c: 0x17d48c0: i64 = undef
try.c: 0x176cc30: v4i64,ch = CopyFromReg 0x16d1db0, Register:v4i64 %vreg13
try.c: 0x1771af0: v4i64 = Register %vreg13
try.c: 0x176be80: v16i32 = X86ISD::VBROADCAST 0x178cff0
try.c: 0x178cff0: i32,ch = load<LD4[ConstantPool]> 0x16d1db0, 0x17db970, undef:i64
try.c: 0x17db970: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x176f610: i64 = TargetConstantPool<i32 1> 0
try.c: 0x17d48c0: i64 = undef
try.c: 0x17dbd00: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x17dbbd0: i32 = Constant<0>
try.c: 0x17dbbd0: i32 = Constant<0>
try.c: 0x17dbbd0: i32 = Constant<0>
try.c: 0x17dbbd0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x1638880: v4i64 = X86ISD::VTRUNC 0x16386b0
try.c: 0x16386b0: v16i32 = vselect 0x162ba10, 0x15b9f00, 0x1638580
try.c: 0x162ba10: v4i1 = X86ISD::PCMPGTM 0x161f560, 0x15c7050
try.c: 0x161f560: v4i64 = X86ISD::VBROADCAST 0x15c73e0
try.c: 0x15c73e0: i64,ch = load<LD8[%uglygep72]> 0x151add0, 0x15e03c0, undef:i64
try.c: 0x15e03c0: i64 = add 0x1620440, 0x15af140
try.c: 0x1620440: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x15d0c70: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x15af140: i64 = shl 0x15d0420, Constant:i8<3>
try.c: 0x15d0420: i64,ch = CopyFromReg 0x151add0, Register:i64 %vreg50
try.c: 0x1620900: i64 = Register %vreg50
try.c: 0x159cd20: i8 = Constant<3>
try.c: 0x161d3c0: i64 = undef
try.c: 0x15c7050: v4i64,ch = CopyFromReg 0x151add0, Register:v4i64 %vreg13
try.c: 0x15b63d0: v4i64 = Register %vreg13
try.c: 0x15b9f00: v16i32 = X86ISD::VBROADCAST 0x15d0680
try.c: 0x15d0680: i32,ch = load<LD4[ConstantPool]> 0x151add0, 0x16381f0, undef:i64
try.c: 0x16381f0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x15b3ef0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x161d3c0: i64 = undef
try.c: 0x1638580: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x1638450: i32 = Constant<0>
try.c: 0x1638450: i32 = Constant<0>
try.c: 0x1638450: i32 = Constant<0>
try.c: 0x1638450: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref