Implementation notes: amd64, h8atom, crypto_aead/deoxysii256v141
Computer: h8atom
Microarchitecture: amd64; Bonnell (30661)
Architecture: amd64
CPU ID: GenuineIntel-00030661-bfebfbff
SUPERCOP version: 20240716
Operation: crypto_aead
Primitive: deoxysii256v141
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
380387 | 155137 0 624 | 171293 784 1552 | T:bitslice | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
419300 | 131201 0 624 | 145989 784 1552 | T:bitslice | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
443863 | 118930 0 624 | 131984 760 1520 | T:bitslice | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
480221 | 232570 0 624 | 247037 784 1552 | T:bitslice | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2215731 | 35869 0 592 | 51956 816 1456 | T:table | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2216431 | 35869 0 592 | 50780 816 1456 | T:table | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2300221 | 33688 0 592 | 46614 808 1456 | T:table | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2662863 | 35631 0 592 | 51628 816 1456 | T:table | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2834475 | 38944 0 624 | 55165 784 1552 | T:table | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
3052112 | 36460 0 624 | 51349 784 1552 | T:table | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
3371991 | 25375 0 0 | 40284 816 856 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
3390002 | 35315 0 592 | 49036 816 1456 | T:table | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
3805746 | 27135 0 0 | 43236 816 856 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
4465559 | 34378 0 624 | 47528 760 1520 | T:table | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
4656757 | 26963 0 0 | 42980 816 856 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
4768785 | 35927 0 624 | 50517 784 1552 | T:table | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
5633593 | 29426 0 0 | 45621 784 928 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
8191456 | 24913 0 0 | 38660 816 856 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
11257526 | 26084 0 0 | 40957 784 928 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
11621169 | 23531 0 0 | 36478 808 856 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
14703983 | 23984 0 0 | 37112 760 896 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
16396954 | 25446 0 0 | 39989 784 928 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
Compiler output
deoxys.c: deoxys.c:151: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:50:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:118:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:105: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:151: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:50:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:118:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:106: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:
Implementation | Compiler |
T:aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
deoxys.c: deoxys.c:104: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:112: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_SCHEDULE3( tsubkeys1,tsubkeys2,subkeys, key);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:43:3: note: expanded from macro 'TWEAKEY_SCHEDULE3'
deoxys.c: ONE_KEY_ROUND( subkeys1[ 0], subkeys1[ 1], subkeys2[ 0], subkeys2[ 1] ); ts[ 1] = xor( xor(subkeys1[ 1],subkeys2[ 1]), RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:34:16: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key1 = permute( new_key1, 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:112: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:43:3: note: expanded from macro 'TWEAKEY_SCHEDULE3'
deoxys.c: ONE_KEY_ROUND( subkeys1[ 0], subkeys1[ 1], subkeys2[ 0], subkeys2[ 1] ); ts[ 1] = xor( xor(subkeys1[ 1],subkeys2[ 1]), RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:35:16: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key2 = permute( new_key2, H_PERMUTATION);
deoxys.c: ^
deoxys.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
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/11/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:112:8: note: in expansion of macro 'enc'
deoxys.c: 112 | s[7] = enc( s[7] , xor(tmp, tw_c[Round][7] ) );\
deoxys.c: | ^~~
deoxys.c: tweakable-cipher.macros:133:3: note: in expansion of macro 'ONE_ROUND'
deoxys.c: 133 | ONE_ROUND( states , subkeys[16] , RT[ 0] , 16 );\
deoxys.c: | ^~~~~~~~~
deoxys.c: ae.macros:50:11: note: in expansion of macro 'AES8'
deoxys.c: 50 | AES8 ( States, subkeys, tTweak ); \
deoxys.c: | ^~~~
deoxys.c: deoxys.c:151:15: note: in expansion of macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: 151 | 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/11/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:
Implementation | Compiler |
T:aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
deoxys.c: deoxys.c:94: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:73:5: note: variable 'Auth' is declared here
deoxys.c: __m128i Auth;
deoxys.c: ^
deoxys.c: deoxys.c:95: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:71:5: note: variable 'Tweak' is declared here
deoxys.c: __m128i Tweak;
deoxys.c: ^
deoxys.c: deoxys.c:113: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:159:3: note: expanded from macro 'AES8'
deoxys.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesnis | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesnis | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesnis | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesnis | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
deoxys.c: deoxys.c:94: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:73:5: note: variable 'Auth' is declared here
deoxys.c: __m128i Auth;
deoxys.c: ^
deoxys.c: deoxys.c:95: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:71:5: note: variable 'Tweak' is declared here
deoxys.c: __m128i Tweak;
deoxys.c: ^
deoxys.c: deoxys.c:84: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_SCHEDULE3( subkeys, key, tmp,tmp2,tmp3,tmp4 );
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:40:3: note: expanded from macro 'TWEAKEY_SCHEDULE3'
deoxys.c: ONE_KEY_ROUND( tmp1, tmp2, tmp3, tmp4 ); subkeys[ 1] = xor( xor(tmp2,tmp4), RCONST( 1) ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:33:16: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesnis | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
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 [-Wuninitialized]
deoxys.c: 5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c: | ^~~~~~~~~~~~~
deoxys.c: deoxys.c:73:13: note: 'Auth' was declared here
deoxys.c: 73 | __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 [-Wuninitialized]
deoxys.c: 5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c: | ^~~~~~~~~~~~~
deoxys.c: deoxys.c:71:13: note: 'Tweak' was declared here
deoxys.c: 71 | __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 [-Wuninitialized]
deoxys.c: 5 | #define xor(a,b) _mm_xor_si128(a,b)
deoxys.c: | ^~~~~~~~~~~~~
deoxys.c: deoxys.c:992:13: note: 'Auth' was declared here
deoxys.c: 992 | __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 [-Wuninitialized]
deoxys.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesnis | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesnis | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesnis | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesnis | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
deoxysii256.c: deoxysii256.c:312:14: warning: variable 'TEMP' is uninitialized when used here [-Wuninitialized]
deoxysii256.c: TEMP=XOR(TEMP,TEMP);
deoxysii256.c: ^~~~
deoxysii256.c: ./deoxysii256.macros:38:39: note: expanded from macro 'XOR'
deoxysii256.c: #define XOR(a,b) _mm_xor_si128(a,b)
deoxysii256.c: ^
deoxysii256.c: deoxysii256.c:132:5: note: variable 'TEMP' is declared here
deoxysii256.c: __m128i Tweak, Tweak1, TEMP;
deoxysii256.c: ^
deoxysii256.c: deoxysii256.c:149:14: warning: variable 'AUTH' is uninitialized when used here [-Wuninitialized]
deoxysii256.c: AUTH=XOR(AUTH,AUTH);
deoxysii256.c: ^~~~
deoxysii256.c: ./deoxysii256.macros:38:39: note: expanded from macro 'XOR'
deoxysii256.c: #define XOR(a,b) _mm_xor_si128(a,b)
deoxysii256.c: ^
deoxysii256.c: deoxysii256.c:134:5: note: variable 'AUTH' is declared here
deoxysii256.c: __m128i AUTH;
deoxysii256.c: ^
deoxysii256.c: deoxysii256.c:516:14: warning: variable 'TEMP' is uninitialized when used here [-Wuninitialized]
deoxysii256.c: TEMP=XOR(TEMP,TEMP);
deoxysii256.c: ^~~~
deoxysii256.c: ./deoxysii256.macros:38:39: note: expanded from macro 'XOR'
deoxysii256.c: #define XOR(a,b) _mm_xor_si128(a,b)
deoxysii256.c: ^
deoxysii256.c: deoxysii256.c:408:5: note: variable 'TEMP' is declared here
deoxysii256.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:bitslice | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:bitslice | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:bitslice | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:bitslice | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
deoxysBCii256.c: deoxysBCii256.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'
deoxysBCii256.c: packing(a);
deoxysBCii256.c: ^
deoxysBCii256.c: ./deoxysii256.macros:473:14: note: expanded from macro 'packing'
deoxysBCii256.c: (x)[0] = shuffle_pack((x)[0]);\
deoxysBCii256.c: ^
deoxysBCii256.c: ./deoxysii256.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxysBCii256.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxysBCii256.c: ^
deoxysBCii256.c: ./deoxysii256.macros:31:25: note: expanded from macro 'permute'
deoxysBCii256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxysBCii256.c: ^
deoxysBCii256.c: deoxysBCii256.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'
deoxysBCii256.c: ./deoxysii256.macros:474:14: note: expanded from macro 'packing'
deoxysBCii256.c: (x)[1] = shuffle_pack((x)[1]);\
deoxysBCii256.c: ^
deoxysBCii256.c: ./deoxysii256.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxysBCii256.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxysBCii256.c: ^
deoxysBCii256.c: ./deoxysii256.macros:31:25: note: expanded from macro 'permute'
deoxysBCii256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxysBCii256.c: ^
deoxysBCii256.c: deoxysBCii256.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'
deoxysBCii256.c: ./deoxysii256.macros:475:14: note: expanded from macro 'packing'
deoxysBCii256.c: (x)[2] = shuffle_pack((x)[2]);\
deoxysBCii256.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:bitslice | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
deoxysii256.c: In file included from deoxysii256.c:30:
deoxysii256.c: deoxysii256.c: In function 'deoxys_aead_encrypt_8':
deoxysii256.c: deoxysii256.macros:38:25: warning: 'TEMP' is used uninitialized [-Wuninitialized]
deoxysii256.c: 38 | #define XOR(a,b) _mm_xor_si128(a,b)
deoxysii256.c: | ^~~~~~~~~~~~~
deoxysii256.c: deoxysii256.c:132:28: note: 'TEMP' was declared here
deoxysii256.c: 132 | __m128i Tweak, Tweak1, TEMP;
deoxysii256.c: | ^~~~
deoxysii256.c: In file included from deoxysii256.c:30:
deoxysii256.c: deoxysii256.c: In function 'deoxys_aead_decrypt_8':
deoxysii256.c: deoxysii256.macros:38:25: warning: 'TEMP' is used uninitialized [-Wuninitialized]
deoxysii256.c: 38 | #define XOR(a,b) _mm_xor_si128(a,b)
deoxysii256.c: | ^~~~~~~~~~~~~
deoxysii256.c: deoxysii256.c:408:28: note: 'TEMP' was declared here
deoxysii256.c: 408 | __m128i Tweak, Tweak1, TEMP;
deoxysii256.c: | ^~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:bitslice | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:bitslice | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:bitslice | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:bitslice | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |