2 /* { dg-require-effective-target powerpc_vsx_ok } */
3 /* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
11 vector
signed int retsi
;
13 void test_int(vector
signed int a
, const int b
)
15 retf
= vec_ctf(a
,b
); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
16 retf
= vec_ctf(a
,-1); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
17 retf
= vec_ctf(a
,-31); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
18 retf
= vec_ctf(a
,-32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
21 retf
= vec_ctf(a
,32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
22 retf
= vec_ctf(a
,42); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
25 void test_uint(vector
unsigned int a
, const int b
)
27 retf
= vec_ctf(a
,b
); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
28 retf
= vec_ctf(a
,-1); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
29 retf
= vec_ctf(a
,-31); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
30 retf
= vec_ctf(a
,-32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
33 retf
= vec_ctf(a
,32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
34 retf
= vec_ctf(a
,42); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
37 void test_longlong(vector
signed long long a
, const int b
,int x
)
39 retd
= vec_ctf(a
,b
); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
40 retd
= vec_ctf(a
,-1); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
41 retd
= vec_ctf(a
,-31); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
42 retd
= vec_ctf(a
,-32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
45 retd
= vec_ctf(a
,32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
46 retd
= vec_ctf(a
,42); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
49 void test_ulonglong(vector
unsigned long long a
, const int b
,int x
)
51 retd
= vec_ctf(a
,b
); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
52 retd
= vec_ctf(a
,-1); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
53 retd
= vec_ctf(a
,-31); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
54 retd
= vec_ctf(a
,-32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
57 retd
= vec_ctf(a
,32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
58 retd
= vec_ctf(a
,42); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
62 void test_cts_1(vector
float a
, const int b
)
64 retsi
= vec_cts(a
,b
); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
65 retsi
= vec_cts(a
,-1); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
66 retsi
= vec_cts(a
,-31); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
67 retsi
= vec_cts(a
,-32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
69 retsi
= vec_cts(a
,31);
70 retsi
= vec_cts(a
,32); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */
71 retsi
= vec_cts(a
,42); /* { dg-error "argument 2 must be a literal between 0 and 31, inclusive" } */