Limit alignment in SmallVector 8, otherwise GCC assumes 16 byte alignment.
opetaror new, and malloc only return 8-byte aligned memory on 32-bit Linux,
which cause a crash if code is compiled with -O3 (or -ftree-vectorize) and some
SmallVector code is vectorized.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102604
91177308-0d34-0410-b5e6-
96231b3b80d8
// number of union instances for the space, which guarantee maximal alignment.
struct U {
#ifdef __GNUC__
- char X __attribute__((aligned));
+ char X __attribute__((aligned(8)));
#else
union {
double D;