summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/vmx/3a-03.c
blob: 5f46ee6f4570339706e99e00ee5ce2ae3237eb6b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "harness.h"

/* Small expression involving non-overloaded generic vector intrinsics.  */

vector float
f(vector float a, vector float b, vector float c) 
{
  return vec_nmsub(a, vec_re(b), vec_nmsub(b, c, vec_expte(a)));
}

static void test()
{
  check(vec_all_eq(f(((vector float){2,3,5,7}),
		     ((vector float){11,13,17,19}),
		     ((vector float){23,29,31,37})),
		   ((vector float){-249.181808, -369.230774, -495.294098, -575.368408})),
	"f");
}