summaryrefslogtreecommitdiffstats
path: root/test/CodeGen/union-align.c
blob: 89a9456e609d26143758af5751751c1fc7e17a36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// RUN: %clang_cc1 -emit-llvm %s -o - | grep load | grep "4 x float" | not grep "align 4"
// RUN: %clang_cc1 -emit-llvm %s -o - | grep load | grep "4 x float" | grep "align 16"
// PR3432
// rdar://6536377

typedef float __m128 __attribute__ ((__vector_size__ (16)));

typedef union
{
  int i[4];
  float f[4];
  __m128 v;
} u_t;

__m128 t(u_t *a) {
  return a->v;
}