* gcc.target/powerpc/builtins-1-be.c <vclzb>: Rename duplicate test
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / altivec-types-1.c
blobb26f16ed3a8960d8f7166910d8a5dfe36fd3ab60
1 /* { dg-do compile { target powerpc*-*-linux* } } */
2 /* { dg-require-effective-target powerpc_altivec_ok } */
3 /* { dg-options "-maltivec -mno-vsx" } */
5 /* Valid AltiVec vector types should be accepted with no warnings. */
7 __vector char vc;
8 __vector unsigned char vuc;
9 __vector signed char vsc;
10 __vector __bool char vbc;
11 __vector short vh;
12 __vector signed short vsh;
13 __vector unsigned short vuh;
14 __vector short int vhi;
15 __vector signed short int vshi;
16 __vector unsigned short int vuhi;
17 __vector __bool short vbh;
18 __vector __bool short int vbhi;
19 __vector int vi;
20 __vector unsigned int vui;
21 __vector signed int vsi;
22 __vector __bool int vbi;
23 __vector unsigned vuj;
24 __vector signed vsj;
25 __vector __bool vbj;
26 __vector float vf;
27 __vector _Bool vb;
29 /* These should be rejected as invalid AltiVec types. */
31 __vector long long vll; /* { dg-error "AltiVec types" } */
32 __vector unsigned long long vull; /* { dg-error "AltiVec types" } */
33 __vector signed long long vsll; /* { dg-error "AltiVec types" } */
34 __vector __bool long long vbll; /* { dg-error "AltiVec types" } */
35 __vector long long int vlli; /* { dg-error "AltiVec types" } */
36 __vector unsigned long long int vulli; /* { dg-error "AltiVec types" } */
37 __vector signed long long int vslli; /* { dg-error "AltiVec types" } */
38 __vector __bool long long int vblli; /* { dg-error "AltiVec types" } */
39 __vector double vd1; /* { dg-error "AltiVec types" } */
40 __vector long double vld; /* { dg-error "AltiVec types" } */
41 __vector _Complex float vcf; /* { dg-error "AltiVec types" } */
42 __vector _Complex double vcd; /* { dg-error "AltiVec types" } */
43 __vector _Complex long double vcld; /* { dg-error "AltiVec types" } */
44 __vector _Complex signed char vcsc; /* { dg-error "AltiVec types" } */
45 __vector _Complex unsigned char vcuc; /* { dg-error "AltiVec types" } */
46 __vector _Complex short vcss; /* { dg-error "AltiVec types" } */
47 __vector _Complex unsigned short vcus; /* { dg-error "AltiVec types" } */
48 __vector _Complex int vcsi; /* { dg-error "AltiVec types" } */
49 __vector _Complex unsigned int vcui; /* { dg-error "AltiVec types" } */
50 __vector _Complex long vcsl; /* { dg-error "AltiVec types" } */
51 __vector _Complex unsigned long vcul; /* { dg-error "AltiVec types" } */
52 __vector _Complex long long vcsll; /* { dg-error "AltiVec types" } */
53 __vector _Complex unsigned long long vcull; /* { dg-error "AltiVec types" } */
54 __vector __complex float v_cf; /* { dg-error "AltiVec types" } */
55 __vector __complex double v_cd; /* { dg-error "AltiVec types" } */
56 __vector __complex long double v_cld; /* { dg-error "AltiVec types" } */
57 __vector __complex signed char v_csc; /* { dg-error "AltiVec types" } */
58 __vector __complex unsigned char v_cuc; /* { dg-error "AltiVec types" } */
59 __vector __complex short v_css; /* { dg-error "AltiVec types" } */
60 __vector __complex unsigned short v_cus; /* { dg-error "AltiVec types" } */
61 __vector __complex int v_csi; /* { dg-error "AltiVec types" } */
62 __vector __complex unsigned int v_cui; /* { dg-error "AltiVec types" } */
63 __vector __complex long v_csl; /* { dg-error "AltiVec types" } */
64 __vector __complex unsigned long v_cul; /* { dg-error "AltiVec types" } */
65 __vector __complex long long v_csll; /* { dg-error "AltiVec types" } */
66 __vector __complex unsigned long long v_cull; /* { dg-error "AltiVec types" } */
68 /* These should be rejected because the component types are invalid. We
69 don't care about the actual error messages here. */
71 __vector __bool unsigned char vbuc; /* { dg-error "" } */
72 __vector __bool signed char vbsc; /* { dg-error "" } */
73 __vector __bool unsigned short vbuh; /* { dg-error "" } */
74 __vector __bool signed short vbsh; /* { dg-error "" } */
75 __vector __bool unsigned int vbui; /* { dg-error "" } */
76 __vector __bool signed int vbsi; /* { dg-error "" } */
77 __vector __bool unsigned vbuj; /* { dg-error "" } */
78 __vector __bool signed vbsj; /* { dg-error "" } */
80 __vector signed float vsf; /* { dg-error "" } */
81 /* { dg-message "note: previous" "prev vsf" { target *-*-* } .-1 } */
83 __vector unsigned float vuf; /* { dg-error "" } */
84 __vector short float vsf; /* { dg-error "" } */
86 __vector signed double vsd; /* { dg-error "" } */
87 /* { dg-message "note: previous" "prev vsd" { target *-*-* } .-1 } */
89 __vector unsigned double vud; /* { dg-error "" } */
90 __vector short double vsd; /* { dg-error "" } */
91 __vector __bool float vbf; /* { dg-error "" } */
92 __vector __bool double vbd; /* { dg-error "" } */
93 __vector __bool short float blf; /* { dg-error "" } */
94 __vector __bool short double vlbd; /* { dg-error "" } */