1/* { dg-do compile } */
2/* { dg-require-effective-target ia32 } */
3/* { dg-skip-if "no stack realignment" { *-*-darwin* } { "*" } { "" } } */
4/* { dg-options "-fstack-usage -msse2 -mforce-drap" } */
5
6typedef int __attribute__((vector_size(16))) vec;
7
8vec foo (vec v)
9{
10  return v;
11}
12
13int main (void)
14{
15  vec V;
16  V = foo (V);
17  return 0;
18}
19
20/* { dg-final { scan-stack-usage "main\t48\tdynamic,bounded" } } */
21/* { dg-final { cleanup-stack-usage } } */
22