Implementation notes: amd64, margaux, crypto_aead/deoxysi128v141

Computer: margaux
Microarchitecture: amd64; Core 2 65nm (6fb)
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20240425
Operation: crypto_aead
Primitive: deoxysi128v141
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
106078100558 0 547114523 844 1600T:bitsliceclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
106495100558 0 547115635 844 1600T:bitsliceclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
121308100445 0 547112269 836 1600T:bitsliceclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
122196102328 0 547114979 844 1600T:bitsliceclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
125714123373 0 592139844 812 1696T:bitslicegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
12979892817 0 592106343 788 1664T:bitslicegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
130800102910 0 592118244 812 1696T:bitslicegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
139303160707 0 592175660 812 1696T:bitslicegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
17614236103 0 59251484 812 1696T:tablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
17732333536 0 59247143 788 1664T:tablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
17984436786 0 59253308 812 1696T:tablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
18774533946 0 54747165 836 1600T:tableclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
18936334985 0 59249996 812 1696T:tablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
19166934928 0 54751331 844 1600T:tableclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
19399934921 0 54750267 844 1600T:tableclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
19401134921 0 54751379 844 1600T:tableclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
20414834953 0 54749003 844 1600T:tableclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
75709124812 0 040163 844 1024T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
93199026492 0 042971 844 1024T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
93377126595 0 043019 844 1024T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
126492727926 0 044468 812 1088T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
144853024596 0 038675 844 1024T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
167170125889 0 041268 812 1088T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
238751824075 0 037309 836 1024T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
309882424616 0 039636 812 1088T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
321953323369 0 036983 788 1056T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
deoxys.c: deoxys.c:143: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:31:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:176:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:141: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:143: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:31:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:176:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:142: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 (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
deoxys.c: deoxys.c:98: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:105: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:39: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:35: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:105: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:40: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:35: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: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
deoxys.c: In file included from deoxys.c:28:
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:30:
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:148:8: note: in expansion of macro 'enc'
deoxys.c: 148 | s[7] = enc( s[7] , xor(tmp, tw_c[Round][7] ) );\
deoxys.c: | ^~~
deoxys.c: tweakable-cipher.macros:189:3: note: in expansion of macro 'ONE_ROUND'
deoxys.c: 189 | ONE_ROUND( states , subkeys[14] , RT[ 6] , 14 );\
deoxys.c: | ^~~~~~~~~
deoxys.c: ae.macros:31:11: note: in expansion of macro 'AES8'
deoxys.c: 31 | AES8 ( States, subkeys, tTweak ); \
deoxys.c: | ^~~~
deoxys.c: deoxys.c:143:15: note: in expansion of macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: 143 | PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:28:
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 (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesni

Compiler output

Implementation: T:aesnis
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
deoxys.c: deoxys.c:109: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:34:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, Tweaks ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:202:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND8( states , subkeys[ 1] , Tweaks ); UPDATE_TWEAKS8( Tweaks ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:191:8: note: expanded from macro 'ONE_ROUND8'
deoxys.c: s[0] = enc( s[0] , xor( subkey, Tweaks[0]) );\
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:109: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: ./ae.macros:34:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, Tweaks ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:202:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND8( states , subkeys[ 1] , Tweaks ); UPDATE_TWEAKS8( Tweaks ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:192:8: note: expanded from macro 'ONE_ROUND8'
deoxys.c: s[1] = enc( s[1] , xor( subkey, Tweaks[1]) );\
deoxys.c: ^
deoxys.c: ...

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

Compiler output

Implementation: T:aesnis
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
deoxys.c: deoxys.c:81: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:33: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: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:81: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:34:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( tmp2, tmp1 ); subkeys[ 2] = xor( tmp1, RCONST( 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: ./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:81: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:35:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( tmp1, tmp2 ); subkeys[ 3] = xor( tmp2, RCONST( 3) ); \
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesnis

Compiler output

Implementation: T:aesnis
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
deoxys.c: In file included from deoxys.c:28:
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:30:
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:198:8: note: in expansion of macro 'enc'
deoxys.c: 198 | s[7] = enc( s[7] , xor( subkey, Tweaks[7]) );
deoxys.c: | ^~~
deoxys.c: tweakable-cipher.macros:215:3: note: in expansion of macro 'ONE_ROUND8'
deoxys.c: 215 | ONE_ROUND8( states , subkeys[14] , Tweaks );
deoxys.c: | ^~~~~~~~~~
deoxys.c: ae.macros:34:11: note: in expansion of macro 'AES8'
deoxys.c: 34 | AES8 ( States, subkeys, Tweaks ); \
deoxys.c: | ^~~~
deoxys.c: deoxys.c:109:17: note: in expansion of macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: 109 | PROCESS_8_ASS_DATA_BLOCKS(States, ass_data + 16 * i, Auth);
deoxys.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:28:
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 (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesnis
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesnis
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesnis
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aesnis

Compiler output

Implementation: T:bitslice
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
deoxys_8.c: deoxys_8.c:178:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt_8' that is compiled without support for 'ssse3'
deoxys_8.c: KEY_SCHEDULE(key, subkey);
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:76:5: note: expanded from macro 'KEY_SCHEDULE'
deoxys_8.c: packing(subkey[0]);\
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:401:14: note: expanded from macro 'packing'
deoxys_8.c: (x)[0] = shuffle_pack((x)[0]);\
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxys_8.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:31:25: note: expanded from macro 'permute'
deoxys_8.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys_8.c: ^
deoxys_8.c: deoxys_8.c:178:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt_8' that is compiled without support for 'ssse3'
deoxys_8.c: ./deoxys.macros:76:5: note: expanded from macro 'KEY_SCHEDULE'
deoxys_8.c: packing(subkey[0]);\
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:402:14: note: expanded from macro 'packing'
deoxys_8.c: (x)[1] = shuffle_pack((x)[1]);\
deoxys_8.c: ^
deoxys_8.c: ./deoxys.macros:32:25: note: expanded from macro 'shuffle_pack'
deoxys_8.c: #define shuffle_pack(a) permute(a, SET8(15,11,7,3,14,10,6,2,13,9,5,1,12,8,4,0) )
deoxys_8.c: ^
deoxys_8.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:bitslice