X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fcrypto_native%2Fcrypto_native.h;h=d5c33daa1a637d5d4b756d5fb32c90a1a189b193;hb=85a9c101bffe99da141b496f95966258b922a440;hp=d496cc6f63dbe7bebf60de40487af8dcbb5d1c26;hpb=93975e699a89c5a99dcfb9d6b987f71d2af9c835;p=vpp.git diff --git a/src/plugins/crypto_native/crypto_native.h b/src/plugins/crypto_native/crypto_native.h index d496cc6f63d..d5c33daa1a6 100644 --- a/src/plugins/crypto_native/crypto_native.h +++ b/src/plugins/crypto_native/crypto_native.h @@ -22,7 +22,8 @@ typedef void *(crypto_native_key_fn_t) (vnet_crypto_key_t * key); typedef struct { - u8x16 cbc_iv[4]; + CLIB_CACHE_LINE_ALIGN_MARK (cacheline0); + u8x16 cbc_iv[16]; } crypto_native_per_thread_data_t; typedef struct @@ -35,15 +36,15 @@ typedef struct extern crypto_native_main_t crypto_native_main; -clib_error_t *crypto_native_aes_cbc_init_sse42 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_cbc_init_avx2 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_cbc_init_avx512 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_cbc_init_vaes (vlib_main_t * vm); +#define foreach_crypto_native_march_variant _(slm) _(hsw) _(skx) _(icl) _(neon) + +#define _(v) \ +clib_error_t __clib_weak *crypto_native_aes_cbc_init_##v (vlib_main_t * vm); \ +clib_error_t __clib_weak *crypto_native_aes_gcm_init_##v (vlib_main_t * vm); \ + +foreach_crypto_native_march_variant; +#undef _ -clib_error_t *crypto_native_aes_gcm_init_sse42 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_gcm_init_avx2 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_gcm_init_avx512 (vlib_main_t * vm); -clib_error_t *crypto_native_aes_gcm_init_vaes (vlib_main_t * vm); #endif /* __crypto_native_h__ */ /*