| /* PR target/96506 */ |
| /* { dg-do compile } */ |
| /* { dg-require-effective-target power10_ok } */ |
| /* { dg-options "-mdejagnu-cpu=power10 -O2" } */ |
| |
| extern void bar0(); |
| extern void bar1(); |
| extern void bar2(); |
| extern void bar3(); |
| |
| typedef __vector_pair vpair_t; |
| typedef __vector_quad vquad_t; |
| |
| /* Verify we flag errors on the following. */ |
| |
| void |
| foo0 (void) |
| { |
| __vector_pair v; |
| bar0 (v); /* { dg-error "invalid use of MMA operand of type .__vector_pair. as a function parameter" } */ |
| } |
| |
| void |
| foo1 (void) |
| { |
| vpair_t v; |
| bar1 (v); /* { dg-error "invalid use of MMA operand of type .__vector_pair. as a function parameter" } */ |
| } |
| |
| void |
| foo2 (void) |
| { |
| __vector_quad v; |
| bar2 (v); /* { dg-error "invalid use of MMA operand of type .__vector_quad. as a function parameter" } */ |
| } |
| |
| void |
| foo3 (void) |
| { |
| vquad_t v; |
| bar3 (v); /* { dg-error "invalid use of MMA operand of type .__vector_quad. as a function parameter" } */ |
| } |