diff options
author | Jack Lloyd <[email protected]> | 2017-10-20 22:02:43 -0400 |
---|---|---|
committer | Jack Lloyd <[email protected]> | 2017-10-20 22:02:43 -0400 |
commit | 09ff689fcd24ee6d5e677f5769d2b4ac26a3a9e6 (patch) | |
tree | db71f2437201c081b9594e9c319415eccf010216 /src/lib/modes | |
parent | 9123c7b7193f671c0fe8646b62f73357a5b190e4 (diff) |
Fix for 32-bit Windows
The buffer is not aligned :/
Diffstat (limited to 'src/lib/modes')
-rw-r--r-- | src/lib/modes/aead/gcm/clmul_ssse3/clmul_ssse3.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lib/modes/aead/gcm/clmul_ssse3/clmul_ssse3.cpp b/src/lib/modes/aead/gcm/clmul_ssse3/clmul_ssse3.cpp index 3aace1094..207820ec7 100644 --- a/src/lib/modes/aead/gcm/clmul_ssse3/clmul_ssse3.cpp +++ b/src/lib/modes/aead/gcm/clmul_ssse3/clmul_ssse3.cpp @@ -34,10 +34,10 @@ void gcm_multiply_ssse3(uint8_t x[16], for(size_t i = 0; i != 64; i += 2) { - const __m128i HM0 = _mm_load_si128(HM_mm + 2*i); - const __m128i HM1 = _mm_load_si128(HM_mm + 2*i + 1); - const __m128i HM2 = _mm_load_si128(HM_mm + 2*i + 2); - const __m128i HM3 = _mm_load_si128(HM_mm + 2*i + 3); + const __m128i HM0 = _mm_loadu_si128(HM_mm + 2*i); + const __m128i HM1 = _mm_loadu_si128(HM_mm + 2*i + 1); + const __m128i HM2 = _mm_loadu_si128(HM_mm + 2*i + 2); + const __m128i HM3 = _mm_loadu_si128(HM_mm + 2*i + 3); const __m128i XMASK1 = _mm_add_epi64(_mm_srli_epi64(X, 63), ones); X = _mm_slli_epi64(X, 1); |