Implementation notes: amd64, speed2supercop, crypto_aead/aes128poetv2aes128ni

Computer: speed2supercop
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: aes128poetv2aes128ni
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2128813087 0 030542 808 872T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2129213087 0 030734 808 872T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2279611231 0 027069 768 928T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2282011278 0 025173 768 928T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2329210673 0 024959 800 920T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2360014926 0 028382 808 856T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
438927560 0 019976 744 896T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
447648610 0 022244 760 928T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625

Compiler output


poet.c: poet.c:491:29: error: '__builtin_ia32_vec_set_v16qi' needs target feature sse4.1
poet.c:     ctx->y = vxor(ctx->tau, one);
poet.c:                             ^
poet.c: poet.c:47:24: note: expanded from macro 'one'
poet.c: #define one            _mm_insert_epi8(zero, 1, 15)
poet.c:                        ^
poet.c: /usr/lib/llvm-16/lib/clang/16/include/smmintrin.h:923:13: note: expanded from macro '_mm_insert_epi8'
poet.c:   ((__m128i)__builtin_ia32_vec_set_v16qi((__v16qi)(__m128i)(X), (int)(I),      \
poet.c:             ^
poet.c: 1 error generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


poet.c: In file included from poet.c:33:
poet.c: In function '_mm_aesenc_si128',
poet.c:     inlined from 'encrypt_final' at poet.c:689:13:
poet.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/wmmintrin.h:63:20: warning: 'z' may be used uninitialized [-Wmaybe-uninitialized]
poet.c:    63 |   return (__m128i) __builtin_ia32_aesenc128 ((__v2di)__X, (__v2di)__Y);
poet.c:       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: poet.c: In function 'encrypt_final':
poet.c: poet.c:633:13: note: 'z' was declared here
poet.c:   633 |     __m128i z;
poet.c:       |             ^
poet.c: In function '_mm_aesdec_si128',
poet.c:     inlined from 'decrypt_final' at poet.c:861:13:
poet.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/wmmintrin.h:46:20: warning: 'z' may be used uninitialized [-Wmaybe-uninitialized]
poet.c:    46 |   return (__m128i) __builtin_ia32_aesdec128 ((__v2di)__X, (__v2di)__Y);
poet.c:       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: poet.c: In function 'decrypt_final':
poet.c: poet.c:811:13: note: 'z' was declared here
poet.c:   811 |     __m128i z;
poet.c:       |             ^

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


poet.c: In file included from poet.c:33:
poet.c: In function '_mm_aesenc_si128',
poet.c:     inlined from 'encrypt_final' at poet.c:689:13:
poet.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/wmmintrin.h:63:20: warning: 'z' may be used uninitialized [-Wmaybe-uninitialized]
poet.c:    63 |   return (__m128i) __builtin_ia32_aesenc128 ((__v2di)__X, (__v2di)__Y);
poet.c:       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: poet.c: In function 'encrypt_final':
poet.c: poet.c:633:13: note: 'z' was declared here
poet.c:   633 |     __m128i z;
poet.c:       |             ^

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)