Implementation notes: amd64, gpu, crypto_aead/deoxyseq128128v1

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: deoxyseq128128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2018844248 0 060868 776 928optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
2968043513 0 058824 760 896optgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
3074444391 0 061252 776 928optgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
3082051574 0 070821 784 928optgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
3127244391 0 061252 776 928optgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
3250844391 0 061252 776 928optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
3378843513 0 058824 760 896optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
3455643513 0 058824 760 896optgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
3504451574 0 070725 784 928optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
3525644391 0 061252 776 928optgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
3541643513 0 058824 760 896optgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
3616044248 0 060868 776 928optgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
3644451574 0 070821 784 928optgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
3653644248 0 060868 776 928optgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
3744054275 0 074941 760 1160optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
3904051574 0 070821 784 928optgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
3960844248 0 060868 776 928optgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
4030853523 0 073405 760 1160optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
4219654275 0 074941 760 1160optclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
190814430456 0 047501 760 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
195083230595 0 049373 760 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082520190816
202525631160 0 048973 760 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
205656430579 0 050685 760 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
216881230579 0 050685 760 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
219815231160 0 048973 760 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
220316030456 0 047501 760 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082520190816
223676830579 0 050685 760 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
233878835646 0 050829 784 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
238241635968 0 051117 784 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082520190816
238577235646 0 050925 784 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
246650435678 0 050741 784 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082520190816
247877235968 0 051181 784 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082520190816
247961235646 0 050925 784 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
251010835646 0 050925 784 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
257446436280 0 051461 784 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082520190816
302439637368 0 054573 784 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
303992837368 0 054573 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
308797636308 0 051213 784 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
309580437607 0 055149 784 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082520190816
311141236518 0 051741 784 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
311245637607 0 055149 784 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019082520190816
314050036308 0 051213 784 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
323081236518 0 051741 784 928refgcc_-O3_-fomit-frame-pointer2019082520190816
325730836518 0 051741 784 928refgcc_-m64_-O3_-fomit-frame-pointer2019082520190816
332414874514 0 052949 784 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
332619237607 0 055149 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
335155637449 0 052933 784 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019082520190816
336781638533 0 056677 784 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
338182437257 0 052949 784 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
340762038430 0 056741 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
345124438533 0 056677 784 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082520190816
353725238430 0 056741 784 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
356431637449 0 052933 784 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
367255633032 0 049220 776 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082520190816
368074033032 0 049220 776 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
372676433178 0 049444 776 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
375050833226 0 049316 776 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082520190816
377272832986 0 048780 776 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
388532832986 0 048780 776 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
390715633178 0 049444 776 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
400898833032 0 049220 776 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019082520190816
412449633226 0 049316 776 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
427511226622 0 039532 776 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082520190816
427579226703 0 039612 776 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
428274426703 0 039612 776 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
428734026902 0 039812 776 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082520190816
432512426703 0 039612 776 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
440777626677 0 039244 776 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
443375226902 0 039812 776 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082520190816
452959626654 0 039564 776 928refgcc_-O2_-fomit-frame-pointer2019082520190816
455422426902 0 039812 776 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082520190816
455924426677 0 039244 776 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
457099626703 0 039612 776 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
464388426654 0 039564 776 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
469028426654 0 039564 776 928refgcc_-m64_-O2_-fomit-frame-pointer2019082520190816
470779253852 0 040132 776 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
474420826926 0 040132 776 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
485000026798 0 039716 776 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
490051226798 0 039716 776 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019082520190816
505702828382 0 044564 776 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
520404028542 0 044876 776 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
525472428382 0 044564 776 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
533082028542 0 044876 776 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082520190816
538886824722 0 036664 760 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
559560824690 0 036608 760 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
567986824720 0 036640 760 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
580882024722 0 036664 760 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082520190816
581469624690 0 036608 760 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
594785224722 0 036664 760 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019082520190816
599890424690 0 036608 760 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
606068428554 0 044948 776 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
611502825985 0 038916 776 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
613906428554 0 044948 776 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082520190816
617666424739 0 036656 760 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
618736024640 0 036560 760 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082520190816
623540424739 0 036656 760 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082520190816
625834824834 0 036776 760 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
628386024836 0 036776 760 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
630568424641 0 036560 760 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
634061628554 0 044948 776 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019082520190816
636844424740 0 036656 760 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
640581624837 0 036776 760 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082520190816
641224024739 0 036656 760 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082520190816
646720824641 0 036560 760 896refgcc_-Os_-fomit-frame-pointer2019082520190816
650447224737 0 036656 760 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
651640024836 0 036776 760 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
654587228559 0 044820 776 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
655566449478 0 036656 760 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
657548024834 0 036776 760 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
661510024740 0 036656 760 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019082520190816
669930826146 0 039092 776 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
673382424739 0 036656 760 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082520190816
673802828559 0 044820 776 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082520190816
678158426146 0 039092 776 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
679401251970 0 038916 776 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
679644824737 0 036656 760 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
687676424837 0 036776 760 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
690242424641 0 036560 760 896refgcc_-m64_-Os_-fomit-frame-pointer2019082520190816
691356026147 0 039108 776 928refgcc_-O_-fomit-frame-pointer2019082520190816
693750426146 0 039092 776 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082520190816
700492026146 0 039092 776 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082520190816
704728026124 0 039068 776 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
718998026147 0 039108 776 928refgcc_-m64_-O_-fomit-frame-pointer2019082520190816
719215626147 0 039108 776 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
729047626146 0 039092 776 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082520190816
729180026146 0 039092 776 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
730614426146 0 039092 776 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
739996026124 0 039068 776 928refgcc_-march=k8_-O_-fomit-frame-pointer2019082520190816
747844426136 0 039044 776 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019082520190816
748253226146 0 039092 776 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082520190816
781910826136 0 039044 776 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
1501461243897 0 058527 768 888refcc2019082520190816
1538722443897 0 058527 768 888refgcc_-funroll-loops2019082520190816
1566436043897 0 058527 768 888refgcc2019082520190816

Test failure

Implementation: opt
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: opt
Security model: unknown
Compiler: cc
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: deoxys.c: In function 'XLS':
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/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:30:0:
deoxys.c: tweakable-cipher.macros:83:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[14] , t ) );
deoxys.c: deoxys.c:96:21: note: in expansion of macro 'AES'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc opt
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: clang -O3 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:79:45: warning: implicit conversion from 'int' to 'char' changes value from 128 to -128 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS1 = constant8( (0x8<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: deoxys.c:80:45: warning: implicit conversion from 'int' to 'char' changes value from 144 to -112 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS2 = constant8( (0x9<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: deoxys.c:94:12: error: always_inline function '_mm_aesimc_si128' requires target feature 'aes', but would be inlined into function 'XLS' that is compiled without support for 'aes'
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:4:23: note: expanded from macro 'mc_inv'
deoxys.c: #define mc_inv(a) _mm_aesimc_si128(a)
deoxys.c: ^
deoxys.c: deoxys.c:96:21: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'XLS' that is compiled without support for 'ssse3'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:69:41: note: expanded from macro 'AES'
deoxys.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:7:22: note: expanded from macro 'permute'
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:79:45: warning: implicit conversion from 'int' to 'char' changes value from 128 to -128 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS1 = constant8( (0x8<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: deoxys.c:80:45: warning: implicit conversion from 'int' to 'char' changes value from 144 to -112 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS2 = constant8( (0x9<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: 2 warnings generated.

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

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:79:45: warning: implicit conversion from 'int' to 'char' changes value from 128 to -128 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS1 = constant8( (0x8<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: deoxys.c:80:45: warning: implicit conversion from 'int' to 'char' changes value from 144 to -112 [-Wconstant-conversion]
deoxys.c: const __m128i MSB_XLS2 = constant8( (0x9<<4),0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 );
deoxys.c: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: ./tweakable-cipher.macros:12:171: note: expanded from macro 'constant8'
deoxys.c: #define constant8(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0) _mm_set_epi8 ((b0),(b1),(b2),(b3),(b4),(b5),(b6),(b7),(b8),(b9),(b10),(b11),(b12),(b13),(b14),(b15))
deoxys.c: ~~~~~~~~~~~~ ^~~
deoxys.c: deoxys.c:94:12: error: always_inline function '_mm_aesimc_si128' requires target feature 'aes', but would be inlined into function 'XLS' that is compiled without support for 'aes'
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:4:23: note: expanded from macro 'mc_inv'
deoxys.c: #define mc_inv(a) _mm_aesimc_si128(a)
deoxys.c: ^
deoxys.c: deoxys.c:96:21: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'XLS' that is compiled without support for 'aes'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:70: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: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments 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:28:0:
deoxys.c: deoxys.c: In function 'XLS':
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/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:30:0:
deoxys.c: tweakable-cipher.macros:83:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[14] , t ) );
deoxys.c: deoxys.c:96:21: note: in expansion of macro 'AES'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
deoxys.c: ...
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: deoxys.c: In function 'XLS':
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/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:30:0:
deoxys.c: tweakable-cipher.macros:83:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[14] , t ) );
deoxys.c: deoxys.c:96:21: note: in expansion of macro 'AES'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:29:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
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:28:0:
deoxys.c: deoxys.c: In function 'XLS':
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
deoxys.c: _mm_aesimc_si128 (__m128i __X)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:94:10: note: called from here
deoxys.c: dTweak = mc_inv(Tweak);
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/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:30:0:
deoxys.c: tweakable-cipher.macros:83:3: note: called from here
deoxys.c: s = enc( s , xor( subkeys[14] , t ) );
deoxys.c: deoxys.c:96:21: note: in expansion of macro 'AES'
deoxys.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys.c: ^~~
deoxys.c: In file included from deoxys.c:28:0:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
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