Implementation notes: amd64, gcc14, crypto_aead/romulust

Computer: gcc14
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20220506
Operation: crypto_aead
Primitive: romulust
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
315128428332 640 043099 1468 1008aadomn/opt32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022052820220506
326212628409 640 043019 1468 1008aadomn/opt32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022052820220506
361258324313 640 038299 1468 1008aadomn/opt32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022052820220506
362938924313 640 038299 1468 1008aadomn/opt32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022052820220506
428859519063 640 033870 1492 1040aadomn/opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022052820220506
432491634362 640 051262 1492 1040aadomn/opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022052820220506
433421820536 640 035574 1492 1040aadomn/opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022052820220506
465250218406 640 031921 1468 1040aadomn/opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022052820220506
489419719168 640 032565 1460 1008aadomn/opt32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022052820220506

Compiler output

Implementation: aadomn/x86
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128.c: skinny128.c:94:5: warning: implicit declaration of function '_mm_storeu_si64' is invalid in C99 [-Wimplicit-function-declaration]
skinny128.c: _mm_storeu_si64((__m128i*)rtk_1, tk_1);
skinny128.c: ^
skinny128.c: 1 warning generated.
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `skinny128_384_plus':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_23':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_3':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: aadomn/x86
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128.c: skinny128.c:94:5: warning: implicit declaration of function '_mm_storeu_si64' is invalid in C99 [-Wimplicit-function-declaration]
skinny128.c: _mm_storeu_si64((__m128i*)rtk_1, tk_1);
skinny128.c: ^
skinny128.c: skinny128.c:95:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, _mm_set_epi32(0x03040602, 0x05000701, 0x0b0c0e0a, 0x0d080f09));
skinny128.c: ^
skinny128.c: skinny128.c:97:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:99:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:101:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:103:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:105:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:107:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: tk_1 = _mm_shuffle_epi8(tk_1, perm_tk);
skinny128.c: ^
skinny128.c: skinny128.c:109:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'skinny128_384_plus' that is compiled without support for 'ssse3'
skinny128.c: ...

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

Compiler output

Implementation: aadomn/x86
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.c: skinny128.c: In function 'skinny128_384_plus':
skinny128.c: skinny128.c:94:5: warning: implicit declaration of function '_mm_storeu_si64' [-Wimplicit-function-declaration]
skinny128.c: _mm_storeu_si64((__m128i*)rtk_1, tk_1);
skinny128.c: ^~~~~~~~~~~~~~~
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `skinny128_384_plus':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_23':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_3':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_23':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/x86
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/x86
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/x86

Compiler output

Implementation: aadomn/x86
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.c: skinny128.c: In function 'skinny128_384_plus':
skinny128.c: skinny128.c:94:5: warning: implicit declaration of function '_mm_storeu_si64' [-Wimplicit-function-declaration]
skinny128.c: _mm_storeu_si64((__m128i*)rtk_1, tk_1);
skinny128.c: ^~~~~~~~~~~~~~~
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `skinny128_384_plus':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_23':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: libcrypto_aead_romulust.a(skinny128.o): In function `tk_schedule_3':
try.c: skinny128.c:(.text+0x...): undefined reference to `_mm_storeu_si64'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/x86

Namespace violations

Implementation: aadomn/opt32
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
romulus_t.o romulusht T
romulus_t.o romulust_generate_tag T
romulus_t.o romulust_init T
romulus_t.o romulust_kdf T
romulus_t.o romulust_process_msg T
skinny128.o mixcolumns_0 T
skinny128.o mixcolumns_1 T
skinny128.o mixcolumns_2 T
skinny128.o mixcolumns_3 T
skinny128.o skinny128_384_plus T
tk_schedule.o lfsr2_bs T
tk_schedule.o lfsr3_bs T
tk_schedule.o packing T
tk_schedule.o permute_tk T
tk_schedule.o permute_tk_10 T
tk_schedule.o permute_tk_12 T
tk_schedule.o permute_tk_14 T
tk_schedule.o permute_tk_2 T
tk_schedule.o permute_tk_4 T
tk_schedule.o permute_tk_6 T
tk_schedule.o permute_tk_8 T
tk_schedule.o precompute_lfsr_tk2 T
tk_schedule.o precompute_lfsr_tk3 T
tk_schedule.o rconst_32_bs D
tk_schedule.o tk_schedule_1 T
tk_schedule.o tk_schedule_123 T
tk_schedule.o tk_schedule_13 T
tk_schedule.o tk_schedule_23 T
tk_schedule.o unpacking T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/opt32
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/opt32
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/opt32
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/opt32
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/opt32
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/opt32
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/opt32
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/opt32
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/opt32