summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr43300.c
blob: a3d66fe70fa2f11f9300ed751d50e95c026b8c4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* { dg-do compile } */
/* { dg-options "-Os -w" } */
/* { dg-options "-Os -w -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */

typedef float V2SF __attribute__ ((vector_size (128)));

V2SF
foo (int x, V2SF a)
{
  V2SF b;
  if (x & 42)
    b = a;
  else
    b = a + (V2SF) {1.0f/0.0f - 1.0f/0.0f, 1.0f/0.0f - 1.0f/0.0f};
  while (x--)
    a += b;
      
  return a;
}