1 /* { dg-do compile } */
2
3 #include "arm_neon.h"
4
5 int32x4_t
6 foo (int32x4_t a, int16x4_t b, int16x4_t c, int d)
7 {
8 return vqdmlal_lane_s16 (a, b, c, d);
9 }
10
11 int32x4_t
12 foo1 (int32x4_t a, int16x4_t b, int16x8_t c, int d)
13 {
14 return vqdmlal_laneq_s16 (a, b, c, d);
15 }
16
17 int32x4_t
18 foo2 (int32x4_t a, int16x4_t b, int16x4_t c, int d)
19 {
20 return vqdmlsl_lane_s16 (a, b, c, d);
21 }
22
23 int32x4_t
24 foo3 (int32x4_t a, int16x4_t b, int16x8_t c, int d)
25 {
26 return vqdmlsl_laneq_s16 (a, b, c, d);
27 }
28
29 int32x4_t
30 foo4 (int32x4_t a, int16x8_t b, int16x4_t c, int d)
31 {
32 return vqdmlal_high_lane_s16 (a, b, c, d);
33 }
34
35 int32x4_t
36 foo5 (int32x4_t a, int16x8_t b, int16x4_t c, int d)
37 {
38 return vqdmlsl_high_lane_s16 (a, b, c, d);
39 }
40
41 int32x4_t
42 foo6 (int32x4_t a, int16x8_t b, int16x8_t c, int d)
43 {
44 return vqdmlal_high_laneq_s16 (a, b, c, d);
45 }
46
47 int32x4_t
48 foo7 (int32x4_t a, int16x8_t b, int16x8_t c, int d)
49 {
50 return vqdmlsl_high_laneq_s16 (a, b, c, d);
51 }
52
53
54 /* { dg-excess-errors "incompatible type for argument" } */