[RS6000] dg-do !compile and scan-assembler
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / pr96506.c
blobb1b40c5a5c8082101135bc9d4743bfef43ae0a5c
1 /* PR target/96506 */
2 /* { dg-do compile } */
3 /* { dg-require-effective-target power10_ok } */
4 /* { dg-options "-mdejagnu-cpu=power10 -O2" } */
6 extern void bar0();
7 extern void bar1();
8 extern void bar2();
9 extern void bar3();
11 typedef __vector_pair vpair_t;
12 typedef __vector_quad vquad_t;
14 /* Verify we flag errors on the following. */
16 void
17 foo0 (void)
19 __vector_pair v;
20 bar0 (v); /* { dg-error "invalid use of MMA operand of type .__vector_pair. as a function parameter" } */
23 void
24 foo1 (void)
26 vpair_t v;
27 bar1 (v); /* { dg-error "invalid use of MMA operand of type .__vector_pair. as a function parameter" } */
30 void
31 foo2 (void)
33 __vector_quad v;
34 bar2 (v); /* { dg-error "invalid use of MMA operand of type .__vector_quad. as a function parameter" } */
37 void
38 foo3 (void)
40 vquad_t v;
41 bar3 (v); /* { dg-error "invalid use of MMA operand of type .__vector_quad. as a function parameter" } */
44 __vector_pair
45 foo4 (__vector_pair *src) /* { dg-error "invalid use of MMA type .__vector_pair. as a function return value" } */
47 return *src;
50 vpair_t
51 foo5 (vpair_t *src) /* { dg-error "invalid use of MMA type .__vector_pair. as a function return value" } */
53 return *src;
56 __vector_quad
57 foo6 (__vector_quad *src) /* { dg-error "invalid use of MMA type .__vector_quad. as a function return value" } */
59 return *src;
62 vquad_t
63 foo7 (vquad_t *src) /* { dg-error "invalid use of MMA type .__vector_quad. as a function return value" } */
65 return *src;