Always 16-byte align |poly| elements. Even if the vector code isn't used in hrss.c, it might call external assembly that still requires alignment. Change-Id: I11ceb88f96deec6b20883872030ca090506ca150 Reviewed-on: https://boringssl-review.googlesource.com/c/33584 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: Adam Langley <agl@google.com>
diff --git a/crypto/hrss/hrss.c b/crypto/hrss/hrss.c index c059b83..b7002c1 100644 --- a/crypto/hrss/hrss.c +++ b/crypto/hrss/hrss.c
@@ -1022,7 +1022,9 @@ vec_t vectors[VECS_PER_POLY]; }; #else - uint16_t v[N + 3]; + // Even if !HRSS_HAVE_VECTOR_UNIT, external assembly may be called that + // requires alignment. + alignas(16) uint16_t v[N + 3]; #endif };