diff --git a/src/arch/x86/AVX2.cpp b/src/arch/x86/AVX2.cpp index 720da42..43baba7 100644 --- a/src/arch/x86/AVX2.cpp +++ b/src/arch/x86/AVX2.cpp @@ -29,7 +29,7 @@ namespace hat::detail { scan_result find_pattern_avx2(const std::byte* begin, const std::byte* end, signature_view signature) { // 256 bit vector containing first signature byte repeated const auto firstByte = _mm256_set1_epi8(static_cast(*signature[0])); - const auto [signatureBytes, signatureMask] = load_signature_256(signature); + alignas(__m256i) const auto [signatureBytes, signatureMask] = load_signature_256(signature); begin = next_boundary_align(begin); if (begin >= end) { diff --git a/src/arch/x86/AVX512.cpp b/src/arch/x86/AVX512.cpp index e340985..7fefd92 100644 --- a/src/arch/x86/AVX512.cpp +++ b/src/arch/x86/AVX512.cpp @@ -29,7 +29,7 @@ namespace hat::detail { scan_result find_pattern_avx512(const std::byte* begin, const std::byte* end, signature_view signature) { // 512 bit vector containing first signature byte repeated const auto firstByte = _mm512_set1_epi8(static_cast(*signature[0])); - const auto [signatureBytes, signatureMask] = load_signature_512(signature); + alignas(__m512i) const auto [signatureBytes, signatureMask] = load_signature_512(signature); begin = next_boundary_align(begin); if (begin >= end) { diff --git a/src/arch/x86/SSE.cpp b/src/arch/x86/SSE.cpp index c592502..230bc96 100644 --- a/src/arch/x86/SSE.cpp +++ b/src/arch/x86/SSE.cpp @@ -29,7 +29,7 @@ namespace hat::detail { scan_result find_pattern_sse(const std::byte* begin, const std::byte* end, signature_view signature) { // 256 bit vector containing first signature byte repeated const auto firstByte = _mm_set1_epi8(static_cast(*signature[0])); - const auto [signatureBytes, signatureMask] = load_signature_128(signature); + alignas(__m128i) const auto [signatureBytes, signatureMask] = load_signature_128(signature); begin = next_boundary_align(begin); if (begin >= end) {