From 65ccbaa9b73d3a2eb0c3708df5a881d46a2216b4 Mon Sep 17 00:00:00 2001 From: Frank Denis Date: Sun, 1 Nov 2015 07:26:32 +0100 Subject: [PATCH] Passing unaligned pointers to _mm_{load|store}u_*() is fine --- src/libsodium/crypto_generichash/blake2/ref/blake2b-round.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libsodium/crypto_generichash/blake2/ref/blake2b-round.h b/src/libsodium/crypto_generichash/blake2/ref/blake2b-round.h index dad8a1d9..e92c3fb5 100644 --- a/src/libsodium/crypto_generichash/blake2/ref/blake2b-round.h +++ b/src/libsodium/crypto_generichash/blake2/ref/blake2b-round.h @@ -18,8 +18,8 @@ # error BLAKE2_USE_SSSE2 must be defined in order to use this file #endif -#define LOADU(p) _mm_loadu_si128( (const __m128i *)(p) ) -#define STOREU(p,r) _mm_storeu_si128((__m128i *)(p), r) +#define LOADU(p) _mm_loadu_si128( (const __m128i *)(const void *)(p) ) +#define STOREU(p,r) _mm_storeu_si128((__m128i *)(void *)(p), r) #define TOF(reg) _mm_castsi128_ps((reg)) #define TOI(reg) _mm_castps_si128((reg))