[testsuite] require sqrt_insn effective target where needed
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / vec-msumc.c
blob524a2225c6cd68bace497521acff37fa64f6dceb
1 /* { dg-do run { target { power10_hw } } } */
2 /* { dg-require-effective-target power10_ok } */
3 /* { dg-options "-mdejagnu-cpu=power10 -O2" } */
4 #include <altivec.h>
6 #define DEBUG 0
8 #if DEBUG
9 #include <stdio.h>
10 #endif
12 extern void abort (void);
14 int
15 main ()
17 vector unsigned long long arg1, arg2;
18 vector unsigned __int128 arg3, result, expected;
19 unsigned __int128 c = (unsigned __int128) (-1); /* 2^128 - 1 */
21 arg1 = (vector unsigned long long) { 111ULL, 300ULL };
22 arg2 = (vector unsigned long long) { 700ULL, 222ULL };
23 arg3 = (vector unsigned __int128) { c };
24 expected = (vector unsigned __int128) { 1 };
26 result = vec_msumc (arg1, arg2, arg3);
27 if (result[0] != expected[0])
29 #if DEBUG
30 printf ("ERROR, expected %d, result %d\n",
31 (unsigned int) expected[0],
32 (unsigned int) result[0]);
33 #else
34 abort ();
35 #endif
38 return 0;