This commit is contained in:
Frank Denis 2015-11-27 01:53:47 +01:00
parent e0b027f112
commit 0ec04baf95

View File

@ -166,7 +166,7 @@ poly1305_blocks(poly1305_state_internal_t *st, const unsigned char *m,
if (!(st->flags & poly1305_started)) { if (!(st->flags & poly1305_started)) {
/* H = [Mx,My] */ /* H = [Mx,My] */
/* Note that _mm_loadl_epi64() is turned into a simple MOVQ. So, unaligned accesses are totally fine, even though this intrinsic requires a __m128i input */ /* Note that _mm_loadl_epi64() is turned into a simple MOVQ. So, unaligned accesses are totally fine, even though this intrinsic requires a __m128i* input */
T5 = _mm_unpacklo_epi64(_mm_loadl_epi64((const xmmi *)(const void *)(m + 0)), _mm_loadl_epi64((const xmmi *)(const void *)(m + 16))); T5 = _mm_unpacklo_epi64(_mm_loadl_epi64((const xmmi *)(const void *)(m + 0)), _mm_loadl_epi64((const xmmi *)(const void *)(m + 16)));
T6 = _mm_unpacklo_epi64(_mm_loadl_epi64((const xmmi *)(const void *)(m + 8)), _mm_loadl_epi64((const xmmi *)(const void *)(m + 24))); T6 = _mm_unpacklo_epi64(_mm_loadl_epi64((const xmmi *)(const void *)(m + 8)), _mm_loadl_epi64((const xmmi *)(const void *)(m + 24)));
H0 = _mm_and_si128(MMASK, T5); H0 = _mm_and_si128(MMASK, T5);