Implementation notes: amd64, kizomba, crypto_aead/aes128otrsv3

Computer: kizomba
Microarchitecture: amd64; Kaby Lake (906e9)
Architecture: amd64
CPU ID: GenuineIntel-000906e9-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: aes128otrsv3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1092114415 0 17631389 784 1104T:ni_p7m2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1100215183 0 17632157 784 1104T:ni_p8m2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1102011069 0 17625917 784 1104T:ni_p7m2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1112522719 0 17639693 784 1104T:ni_p7m1gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
111299678 0 17623734 808 1104T:ni_p7m2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1114523471 0 17640445 784 1104T:ni_p8m1gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1117719405 0 17634253 784 1104T:ni_p7m1gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1121510021 0 17624070 808 1104T:ni_p8m2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1148820285 0 17635141 784 1104T:ni_p8m1gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1149411981 0 17626837 784 1104T:ni_p8m2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1219510836 0 17625260 776 1104T:ni_p7m2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1230719096 0 17633516 776 1104T:ni_p7m1gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1266414449 0 17631524 816 1056T:ni_p7m2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1267714433 0 17631804 816 1104T:ni_p7m2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1273015057 0 17632132 816 1056T:ni_p8m2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1274615073 0 17632444 816 1104T:ni_p8m2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1280610890 0 17624132 816 1040T:ni_p7m2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1285111242 0 17624484 816 1040T:ni_p8m2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1374612013 0 17626444 776 1104T:ni_p8m2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1388720269 0 17634700 776 1104T:ni_p8m1gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
141747896 0 17621176 760 1072T:ni_p8m2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1444216270 0 17629560 760 1072T:ni_p8m1gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1478515934 0 17629224 760 1072T:ni_p7m1gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
150277572 0 17620856 760 1072T:ni_p7m2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8313720277 4392 32037205 5184 1264T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9221216687 4400 32032580 5224 1184T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9240015389 4400 32032300 5224 1200T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9265115405 4400 32032612 5224 1248T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
935617453 4392 32022237 5184 1264T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
973976066 4400 32020350 5216 1248T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
979136570 4392 32020956 5176 1264T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1013597157 4400 32020636 5224 1184T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1067145212 4392 32018376 5160 1232T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


encrypt.c: encrypt.c:250:96: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                                                ^~~
encrypt.c: encrypt.c:250:91: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                                           ^~~
encrypt.c: encrypt.c:250:86: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                                      ^~~
encrypt.c: encrypt.c:250:81: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                                 ^~~
encrypt.c: encrypt.c:250:76: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                            ^~~
encrypt.c: encrypt.c:250:71: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                                       ^~~
encrypt.c: encrypt.c:250:58: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                          ^~~
encrypt.c: encrypt.c:250:53: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c:         const block sh1 = _mm_set_epi8(255, 255, 255, 255, 255, 255, 15, 14, 255, 255, 255, 255, 255, 255, 7, 6);
encrypt.c:                           ~~~~~~~~~~~~                     ^~~
encrypt.c: encrypt.c:250:48: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:ni_p7m1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m1clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m1clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m1clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m1clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'EFunc':
encrypt.c: encrypt.c:471:24: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:   471 |         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:       |                        ^~~
encrypt.c: encrypt.c: In function 'DFunc':
encrypt.c: encrypt.c:666:24: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:   666 |         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:       |                        ^~~

Number of similar (implementation,compiler) pairs: 16, namely:
ImplementationCompiler
T:ni_p7m1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m1gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p7m2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m1gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ni_p8m2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:471:17: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:                        ^
encrypt.c: encrypt.c:666:17: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:                        ^
encrypt.c: encrypt.c:68:24: warning: unused function 'AES_256_Key_Expansion' [-Wunused-function]
encrypt.c: __inline__ static void AES_256_Key_Expansion(
encrypt.c:                        ^
encrypt.c: 3 warnings generated.

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:ni_p7m2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p7m2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:471:17: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:                        ^
encrypt.c: encrypt.c:666:17: warning: unused variable 'tmp' [-Wunused-variable]
encrypt.c:         ALIGN(16)uint8 tmp[BLOCK] = { 0 };
encrypt.c:                        ^
encrypt.c: encrypt.c:68:24: warning: unused function 'AES_256_Key_Expansion' [-Wunused-function]
encrypt.c: __inline__ static void AES_256_Key_Expansion(
encrypt.c:                        ^
encrypt.c: encrypt.c:304:18: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'mul2_PIPE' that is compiled without support for 'ssse3'
encrypt.c:         __m128i intmp = le(dat[0]);
encrypt.c:                         ^
encrypt.c: encrypt.c:42:15: note: expanded from macro 'le'
encrypt.c: #define le(b) _mm_shuffle_epi8(b,_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)) /*Byte order conversion*/
encrypt.c:               ^
encrypt.c: encrypt.c:312:11: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'mul2_PIPE' that is compiled without support for 'ssse3'
encrypt.c:         dat[1] = le(intmp);
encrypt.c:                  ^
encrypt.c: encrypt.c:42:15: note: expanded from macro 'le'
encrypt.c: #define le(b) _mm_shuffle_epi8(b,_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)) /*Byte order conversion*/
encrypt.c:               ^
encrypt.c: encrypt.c:319:11: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'mul2_PIPE' that is compiled without support for 'ssse3'
encrypt.c:         dat[2] = le(intmp);
encrypt.c:                  ^
encrypt.c: encrypt.c:42:15: note: expanded from macro 'le'
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:ni_p7m2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ni_p8m2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)