summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/vmx/3a-03m.c
blob: 68feecee71368a9679c3508eb150db1109039dd1 (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 specific vector intrinsics.  */

vector float
f(vector float a, vector float b, vector float c) 
{
  return vec_nmsub(a, vec_vrefp(b), vec_nmsub(b, c, vec_vexptefp(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");
}