From: Damjan Marion Date: Wed, 12 Feb 2020 17:25:39 +0000 (+0100) Subject: crypto-native: use and instead of blend X-Git-Tag: v20.09-rc0~609 X-Git-Url: https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commitdiff_plain;h=f0beeb0da03d584e60ecf7baf5f7ed552f7a082a crypto-native: use and instead of blend Faster and more portable... Type: improvement Change-Id: I915f8d3c45d1ba76ddfdbfac98482b04c98d148b Signed-off-by: Damjan Marion --- diff --git a/src/plugins/crypto_native/aes.h b/src/plugins/crypto_native/aes.h index 01298cd31d7..aacbf8ae34d 100644 --- a/src/plugins/crypto_native/aes.h +++ b/src/plugins/crypto_native/aes.h @@ -73,10 +73,7 @@ aes_block_store (u8 * p, u8x16 r) static_always_inline u8x16 aes_byte_mask (u8x16 x, u8 n_bytes) { - u8x16 mask = u8x16_is_greater (u8x16_splat (n_bytes), byte_mask_scale); - __m128i zero = { }; - - return (u8x16) _mm_blendv_epi8 (zero, (__m128i) x, (__m128i) mask); + return x & u8x16_is_greater (u8x16_splat (n_bytes), byte_mask_scale); } static_always_inline u8x16