Implementation notes: amd64, wolfdale, crypto_aead/deoxysii128v141

Computer: wolfdale
Microarchitecture: amd64; Core 2 45nm (1067a)
Architecture: amd64
CPU ID: GenuineIntel-0001067a-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: deoxysii128v141
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
127830117767 0 592133208 812 1624T:bitsliceclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
127889117767 0 592132392 812 1624T:bitsliceclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
137533145755 0 624161048 780 1720T:bitslicegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
150702117386 0 592130422 804 1624T:bitsliceclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
151868114890 0 592127246 804 1624T:bitsliceclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
154146116362 0 624130752 780 1720T:bitslicegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
158461105241 0 624117979 756 1688T:bitslicegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
162557208134 0 624222176 780 1720T:bitslicegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
26245737672 0 62453152 780 1720T:tablegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
28623835854 0 59252160 812 1624T:tableclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
28665235774 0 59252208 812 1624T:tableclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
28825433865 0 62446771 756 1688T:tablegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
29067335774 0 59251392 812 1624T:tableclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
29581133515 0 59246886 804 1624T:tableclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
29949635842 0 62450408 780 1720T:tablegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
30279435515 0 62449760 780 1720T:tablegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
31849034229 0 59248230 804 1624T:tableclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
107246825084 0 040720 812 1016T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
130813828777 0 044216 780 1080T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
148183327116 0 043456 812 1016T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
148604226988 0 043456 812 1016T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
234794125606 0 040160 780 1080T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
387637223466 0 036862 804 1016T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
431525323765 0 037782 804 1016T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
449762624858 0 039072 780 1080T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625
481382323279 0 036171 756 1048T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062820240625

Compiler output


deoxys.c: deoxys.c:148:15: 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:               PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c:               ^
deoxys.c: ./ae.macros:53:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c:           AES8        ( States, subkeys, tTweak );          \
deoxys.c:           ^
deoxys.c: ./tweakable-cipher.macros:98:3: note: expanded from macro 'AES8'
deoxys.c:   ONE_ROUND( states , subkeys[ 1] , RT[ 1] ,  1 );\
deoxys.c:   ^
deoxys.c: ./tweakable-cipher.macros:85:8: note: expanded from macro 'ONE_ROUND'
deoxys.c: s[0] = enc( s[0] , tmp );\
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:148:15: 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: ./ae.macros:53:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c:           AES8        ( States, subkeys, tTweak );          \
deoxys.c:           ^
deoxys.c: ./tweakable-cipher.macros:98:3: note: expanded from macro 'AES8'
deoxys.c:   ONE_ROUND( states , subkeys[ 1] , RT[ 1] ,  1 );\
deoxys.c:   ^
deoxys.c: ./tweakable-cipher.macros:86:8: note: expanded from macro 'ONE_ROUND'
deoxys.c: s[1] = enc( s[1] , xor(tmp, tw_c[Round][1] ) );\
deoxys.c:        ^
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:aesniclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesniclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesniclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesniclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxys.c: deoxys.c:99:11: 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:107:3: 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:31: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:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c:   new_key = permute( new_key, 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:107:3: 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[ 1], subkeys[ 2] );    ts[ 2] = xor( subkeys[ 2], RCONS[ 2] ); \
deoxys.c:   ^
deoxys.c: ./tweakable-cipher.macros:27:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c:   new_key = permute( new_key, H_PERMUTATION);
deoxys.c:             ^
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:aesniclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxys.c: In file included from deoxys.c:30:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:61:1: error: inlining failed in call to 'always_inline' '_mm_aesenc_si128': target specific option mismatch
deoxys.c:    61 | _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c:       | ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:32:
deoxys.c: tweakable-cipher.macros:1:18: note: called from here
deoxys.c:     1 | #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c:       |                  ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:92:8: note: in expansion of macro 'enc'
deoxys.c:    92 | s[7] = enc( s[7] , xor(tmp, tw_c[Round][7] ) );\
deoxys.c:       |        ^~~
deoxys.c: tweakable-cipher.macros:111:3: note: in expansion of macro 'ONE_ROUND'
deoxys.c:   111 |   ONE_ROUND( states , subkeys[14] , RT[ 6] , 14 );\
deoxys.c:       |   ^~~~~~~~~
deoxys.c: ae.macros:53:11: note: in expansion of macro 'AES8'
deoxys.c:    53 |           AES8        ( States, subkeys, tTweak );     \
deoxys.c:       |           ^~~~
deoxys.c: deoxys.c:148:15: note: in expansion of macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c:   148 |               PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c:       |               ^~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:30:
deoxys.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:61:1: error: inlining failed in call to 'always_inline' '_mm_aesenc_si128': target specific option mismatch
deoxys.c:    61 | _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c:       | ^~~~~~~~~~~~~~~~
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:aesnigcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnigcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnigcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnigcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


deoxys.c: deoxys.c:89:16: warning: variable 'Auth' is uninitialized when used here [-Wuninitialized]
deoxys.c:     Auth = xor(Auth, Auth);
deoxys.c:                ^~~~
deoxys.c: ./tweakable-cipher.macros:5:32: note: expanded from macro 'xor'
deoxys.c: #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:                                ^
deoxys.c: deoxys.c:72:5: note: variable 'Auth' is declared here
deoxys.c:     __m128i Auth;
deoxys.c:     ^
deoxys.c: deoxys.c:90:18: warning: variable 'Tweak' is uninitialized when used here [-Wuninitialized]
deoxys.c:     Tweak = xor( Tweak, Tweak );
deoxys.c:                  ^~~~~
deoxys.c: ./tweakable-cipher.macros:5:32: note: expanded from macro 'xor'
deoxys.c: #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:                                ^
deoxys.c: deoxys.c:70:5: note: variable 'Tweak' is declared here
deoxys.c:     __m128i Tweak;
deoxys.c:     ^
deoxys.c: deoxys.c:108:17: 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:                 PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c:                 ^
deoxys.c: ./ae.macros:33:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c:           AES8        ( States, subkeys, Tweaks );          \
deoxys.c:           ^
deoxys.c: ./tweakable-cipher.macros:201:3: note: expanded from macro 'AES8'
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:aesnisclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesnisclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesnisclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:aesnisclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxys.c: deoxys.c:89:16: warning: variable 'Auth' is uninitialized when used here [-Wuninitialized]
deoxys.c:     Auth = xor(Auth, Auth);
deoxys.c:                ^~~~
deoxys.c: ./tweakable-cipher.macros:5:32: note: expanded from macro 'xor'
deoxys.c: #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:                                ^
deoxys.c: deoxys.c:72:5: note: variable 'Auth' is declared here
deoxys.c:     __m128i Auth;
deoxys.c:     ^
deoxys.c: deoxys.c:90:18: warning: variable 'Tweak' is uninitialized when used here [-Wuninitialized]
deoxys.c:     Tweak = xor( Tweak, Tweak );
deoxys.c:                  ^~~~~
deoxys.c: ./tweakable-cipher.macros:5:32: note: expanded from macro 'xor'
deoxys.c: #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:                                ^
deoxys.c: deoxys.c:70:5: note: variable 'Tweak' is declared here
deoxys.c:     __m128i Tweak;
deoxys.c:     ^
deoxys.c: deoxys.c:79: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( subkeys, key, tmp, tmp1 );
deoxys.c:     ^
deoxys.c: ./tweakable-cipher.macros:32:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c:   ONE_KEY_ROUND( tmp1, tmp2 );  subkeys[ 1] = xor( tmp2, RCONST( 1) ); \
deoxys.c:   ^
deoxys.c: ./tweakable-cipher.macros:26:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:aesnisclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxys.c: In file included from deoxys.c:30:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: tweakable-cipher.macros:5:18: warning: 'Auth' is used uninitialized in this function [-Wuninitialized]
deoxys.c:     5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:       |                  ^~~~~~~~~~~~~
deoxys.c: deoxys.c:72:13: note: 'Auth' was declared here
deoxys.c:    72 |     __m128i Auth;
deoxys.c:       |             ^~~~
deoxys.c: In file included from deoxys.c:30:
deoxys.c: tweakable-cipher.macros:5:18: warning: 'Tweak' is used uninitialized in this function [-Wuninitialized]
deoxys.c:     5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:       |                  ^~~~~~~~~~~~~
deoxys.c: deoxys.c:70:13: note: 'Tweak' was declared here
deoxys.c:    70 |     __m128i Tweak;
deoxys.c:       |             ^~~~~
deoxys.c: In file included from deoxys.c:30:
deoxys.c: deoxys.c: In function 'deoxys_aead_decrypt':
deoxys.c: tweakable-cipher.macros:5:18: warning: 'Auth' is used uninitialized in this function [-Wuninitialized]
deoxys.c:     5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c:       |                  ^~~~~~~~~~~~~
deoxys.c: deoxys.c:985:13: note: 'Auth' was declared here
deoxys.c:   985 |     __m128i Auth;
deoxys.c:       |             ^~~~
deoxys.c: In file included from deoxys.c:30:
deoxys.c: tweakable-cipher.macros:5:18: warning: 'Tweak' is used uninitialized in this function [-Wuninitialized]
deoxys.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:aesnisgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnisgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnisgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:aesnisgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


deoxysii128.c: deoxysii128.c:311:14: warning: variable 'TEMP' is uninitialized when used here [-Wuninitialized]
deoxysii128.c:     TEMP=XOR(TEMP,TEMP);
deoxysii128.c:              ^~~~
deoxysii128.c: ./deoxysii128.macros:38:39: note: expanded from macro 'XOR'
deoxysii128.c: #define XOR(a,b)        _mm_xor_si128(a,b)
deoxysii128.c:                                       ^
deoxysii128.c: deoxysii128.c:131:5: note: variable 'TEMP' is declared here
deoxysii128.c:     __m128i Tweak, Tweak1, TEMP;
deoxysii128.c:     ^
deoxysii128.c: deoxysii128.c:148:14: warning: variable 'AUTH' is uninitialized when used here [-Wuninitialized]
deoxysii128.c:     AUTH=XOR(AUTH,AUTH);
deoxysii128.c:              ^~~~
deoxysii128.c: ./deoxysii128.macros:38:39: note: expanded from macro 'XOR'
deoxysii128.c: #define XOR(a,b)        _mm_xor_si128(a,b)
deoxysii128.c:                                       ^
deoxysii128.c: deoxysii128.c:133:5: note: variable 'AUTH' is declared here
deoxysii128.c:     __m128i AUTH;
deoxysii128.c:     ^
deoxysii128.c: deoxysii128.c:515:14: warning: variable 'TEMP' is uninitialized when used here [-Wuninitialized]
deoxysii128.c:     TEMP=XOR(TEMP,TEMP);
deoxysii128.c:              ^~~~
deoxysii128.c: ./deoxysii128.macros:38:39: note: expanded from macro 'XOR'
deoxysii128.c: #define XOR(a,b)        _mm_xor_si128(a,b)
deoxysii128.c:                                       ^
deoxysii128.c: deoxysii128.c:407:5: note: variable 'TEMP' is declared here
deoxysii128.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:bitsliceclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:bitsliceclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:bitsliceclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:bitsliceclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxysBCii128.c: deoxysBCii128.c:237:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'DeoxysEncrypt_Auth' that is compiled without support for 'ssse3'
deoxysBCii128.c:     packing(a);
deoxysBCii128.c:     ^
deoxysBCii128.c: ./deoxysii128.macros:417:14: note: expanded from macro 'packing'
deoxysBCii128.c:     (x)[0] = shuffle_pack((x)[0]);\
deoxysBCii128.c:              ^
deoxysBCii128.c: ./deoxysii128.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxysBCii128.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxysBCii128.c:                         ^
deoxysBCii128.c: ./deoxysii128.macros:31:25: note: expanded from macro 'permute'
deoxysBCii128.c: #define permute(a,b)    _mm_shuffle_epi8(a,b)
deoxysBCii128.c:                         ^
deoxysBCii128.c: deoxysBCii128.c:237:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'DeoxysEncrypt_Auth' that is compiled without support for 'ssse3'
deoxysBCii128.c: ./deoxysii128.macros:418:14: note: expanded from macro 'packing'
deoxysBCii128.c:     (x)[1] = shuffle_pack((x)[1]);\
deoxysBCii128.c:              ^
deoxysBCii128.c: ./deoxysii128.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxysBCii128.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxysBCii128.c:                         ^
deoxysBCii128.c: ./deoxysii128.macros:31:25: note: expanded from macro 'permute'
deoxysBCii128.c: #define permute(a,b)    _mm_shuffle_epi8(a,b)
deoxysBCii128.c:                         ^
deoxysBCii128.c: deoxysBCii128.c:237:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'DeoxysEncrypt_Auth' that is compiled without support for 'ssse3'
deoxysBCii128.c: ./deoxysii128.macros:419:14: note: expanded from macro 'packing'
deoxysBCii128.c:     (x)[2] = shuffle_pack((x)[2]);\
deoxysBCii128.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:bitsliceclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


deoxysii128.c: In file included from deoxysii128.c:30:
deoxysii128.c: deoxysii128.c: In function 'deoxys_aead_encrypt_8':
deoxysii128.c: deoxysii128.macros:38:25: warning: 'TEMP' is used uninitialized in this function [-Wuninitialized]
deoxysii128.c:    38 | #define XOR(a,b)        _mm_xor_si128(a,b)
deoxysii128.c:       |                         ^~~~~~~~~~~~~
deoxysii128.c: deoxysii128.c:131:28: note: 'TEMP' was declared here
deoxysii128.c:   131 |     __m128i Tweak, Tweak1, TEMP;
deoxysii128.c:       |                            ^~~~
deoxysii128.c: In file included from deoxysii128.c:30:
deoxysii128.c: deoxysii128.c: In function 'deoxys_aead_decrypt_8':
deoxysii128.c: deoxysii128.macros:38:25: warning: 'TEMP' is used uninitialized in this function [-Wuninitialized]
deoxysii128.c:    38 | #define XOR(a,b)        _mm_xor_si128(a,b)
deoxysii128.c:       |                         ^~~~~~~~~~~~~
deoxysii128.c: deoxysii128.c:407:28: note: 'TEMP' was declared here
deoxysii128.c:   407 |     __m128i Tweak, Tweak1, TEMP;
deoxysii128.c:       |                            ^~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:bitslicegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:bitslicegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:bitslicegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:bitslicegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)