Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.target/arm/acle/cde-mve-error-2.c @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
145:1830386684a0 | 152:2b5abeee2509 |
---|---|
1 #include "arm_cde.h" | |
2 | |
3 /* { dg-do assemble } */ | |
4 /* { dg-require-effective-target arm_v8_1m_main_cde_mve_fp_ok } */ | |
5 /* { dg-add-options arm_v8_1m_main_cde_mve_fp } */ | |
6 | |
7 /* The error checking files are split since there are three kinds of | |
8 errors happening here. Different error types cause errors at different | |
9 times, which means the compiler stops and doesn't produce messages about the | |
10 later errors. Hence they need to be in a different file so we can inspect | |
11 these ones. */ | |
12 | |
13 uint8x16_t test_bad_immediates (uint8x16_t n, uint8x16_t m, int someval, | |
14 mve_pred16_t pred) | |
15 { | |
16 uint8x16_t accum = (uint8x16_t)(uint32x4_t){0, 0, 0, 0}; | |
17 | |
18 /* We always different constants for the pairs (__arm_vcx2q and | |
19 __arm_vcx2q_u8) and (__arm_vcx3q and __arm_vcx3q_u8) despite them mapping | |
20 to the same builtin and us wanting to test the same thing in each block. | |
21 | |
22 This is because we have told the compiler that these functions are | |
23 constant and pure (i.e. produce a value solely based on their arguments | |
24 and have no side-effects). | |
25 | |
26 With that information the compiler eliminates duplicate calls to the | |
27 functions, and we only get error messages for one of the pairs. | |
28 Hence, in order to get error messages for both function calls, we use | |
29 different constants. */ | |
30 | |
31 /* `coproc' not enabled. */ | |
32 accum += __arm_vcx1q_u8 (1, 4095); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
33 accum += __arm_vcx1qa (1, accum, 4095); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
34 accum += __arm_vcx2q (1, n, 126); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
35 accum += __arm_vcx2q_u8 (1, n, 127); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
36 accum += __arm_vcx2qa (1, accum, n, 127); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
37 accum += __arm_vcx3q_u8 (1, n, m, 14); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
38 accum += __arm_vcx3q (1, n, m, 15); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
39 accum += __arm_vcx3qa (1, accum, n, m, 15); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
40 | |
41 accum += __arm_vcx1q_m (1, accum, 4094, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
42 accum += __arm_vcx1qa_m (1, accum, 4095, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
43 accum += __arm_vcx2q_m (1, accum, n, 126, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
44 accum += __arm_vcx2qa_m (1, accum, n, 127, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
45 accum += __arm_vcx3q_m (1, accum, n, m, 15, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
46 accum += __arm_vcx3qa_m (1, accum, n, m, 15, pred); /* { dg-error {coprocessor 1 is not enabled with \+cdecp1} } */ | |
47 | |
48 /* `coproc' out of range. */ | |
49 accum += __arm_vcx1q_u8 (8, 4095); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
50 accum += __arm_vcx1qa (8, accum, 4095); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
51 accum += __arm_vcx2q (8, n, 126); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
52 accum += __arm_vcx2q_u8 (8, n, 127); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
53 accum += __arm_vcx2qa (8, accum, n, 127); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
54 accum += __arm_vcx3q_u8 (8, n, m, 14); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
55 accum += __arm_vcx3q (8, n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
56 accum += __arm_vcx3qa (8, accum, n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
57 | |
58 accum += __arm_vcx1q_m (8, accum, 4094, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
59 accum += __arm_vcx1qa_m (8, accum, 4095, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
60 accum += __arm_vcx2q_m (8, accum, n, 126, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
61 accum += __arm_vcx2qa_m (8, accum, n, 127, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
62 accum += __arm_vcx3q_m (8, accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
63 accum += __arm_vcx3qa_m (8, accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
64 | |
65 /* `imm' out of range. */ | |
66 accum += __arm_vcx1q_u8 (0, 4096); /* { dg-error {argument 2 to '__builtin_arm_vcx1qv16qi' must be a constant immediate in range \[0-4095\]} } */ | |
67 accum += __arm_vcx1qa (0, accum, 4096); /* { dg-error {argument 3 to '__builtin_arm_vcx1qav16qi' must be a constant immediate in range \[0-4095\]} } */ | |
68 accum += __arm_vcx2q (0, n, 128); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
69 accum += __arm_vcx2q_u8 (0, n, 129); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
70 accum += __arm_vcx2qa (0, accum, n, 128); /* { dg-error {argument 4 to '__builtin_arm_vcx2qav16qi' must be a constant immediate in range \[0-127\]} } */ | |
71 accum += __arm_vcx3q_u8 (0, n, m, 16); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
72 accum += __arm_vcx3q (0, n, m, 17); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
73 accum += __arm_vcx3qa (0, accum, n, m, 16); /* { dg-error {argument 5 to '__builtin_arm_vcx3qav16qi' must be a constant immediate in range \[0-15\]} } */ | |
74 | |
75 accum += __arm_vcx1q_m (0, accum, 4097, pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1q_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
76 accum += __arm_vcx1qa_m (0, accum, 4096, pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1qa_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
77 accum += __arm_vcx2q_m (0, accum, n, 128, pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2q_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
78 accum += __arm_vcx2qa_m (0, accum, n, 128, pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2qa_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
79 accum += __arm_vcx3q_m (0, accum, n, m, 17, pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3q_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
80 accum += __arm_vcx3qa_m (0, accum, n, m, 16, pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3qa_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
81 | |
82 /* `imm' is not an immediate. */ | |
83 accum += __arm_vcx1q_u8 (6, someval); /* { dg-error {argument 2 to '__builtin_arm_vcx1qv16qi' must be a constant immediate in range \[0-4095\]} } */ | |
84 accum += __arm_vcx1qa (0, accum, someval); /* { dg-error {argument 3 to '__builtin_arm_vcx1qav16qi' must be a constant immediate in range \[0-4095\]} } */ | |
85 accum += __arm_vcx2q (0, n, someval); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
86 accum += __arm_vcx2q_u8 (6, n, someval); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
87 accum += __arm_vcx2qa (0, accum, n, someval); /* { dg-error {argument 4 to '__builtin_arm_vcx2qav16qi' must be a constant immediate in range \[0-127\]} } */ | |
88 accum += __arm_vcx3q_u8 (0, n, m, someval); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
89 accum += __arm_vcx3q (6, n, m, someval); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
90 accum += __arm_vcx3qa (0, accum, n, m, someval); /* { dg-error {argument 5 to '__builtin_arm_vcx3qav16qi' must be a constant immediate in range \[0-15\]} } */ | |
91 | |
92 accum += __arm_vcx1q_m (6, accum, someval, pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1q_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
93 accum += __arm_vcx1qa_m (0, accum, someval, pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1qa_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
94 accum += __arm_vcx2q_m (0, accum, n, someval, pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2q_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
95 accum += __arm_vcx2qa_m (0, accum, n, someval, pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2qa_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
96 accum += __arm_vcx3q_m (6, accum, n, m, someval, pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3q_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
97 accum += __arm_vcx3qa_m (0, accum, n, m, someval, pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3qa_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
98 | |
99 /* `coproc' is not an immediate. */ | |
100 accum += __arm_vcx1q_u8 (someval, 4095); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
101 accum += __arm_vcx1qa (someval, accum, 4095); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
102 accum += __arm_vcx2q (someval, n, 126); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
103 accum += __arm_vcx2q_u8 (someval, n, 127); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
104 accum += __arm_vcx2qa (someval, accum, n, 127); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
105 accum += __arm_vcx3q_u8 (someval, n, m, 14); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
106 accum += __arm_vcx3q (someval, n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
107 accum += __arm_vcx3qa (someval, accum, n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
108 | |
109 accum += __arm_vcx1q_m (someval, accum, 4096, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
110 accum += __arm_vcx1qa_m (someval, accum, 4095, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
111 accum += __arm_vcx2q_m (someval, accum, n, 126, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
112 accum += __arm_vcx2qa_m (someval, accum, n, 127, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
113 accum += __arm_vcx3q_m (someval, accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
114 accum += __arm_vcx3qa_m (someval, accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
115 | |
116 /* `imm' is of wrong type. */ | |
117 accum += __arm_vcx1q_u8 (0, ""); /* { dg-error {argument 2 to '__builtin_arm_vcx1qv16qi' must be a constant immediate in range \[0-4095\]} } */ | |
118 /* { dg-warning {passing argument 2 of '__builtin_arm_vcx1qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 117 } */ | |
119 accum += __arm_vcx1qa (0, accum, ""); /* { dg-error {argument 3 to '__builtin_arm_vcx1qav16qi' must be a constant immediate in range \[0-4095\]} } */ | |
120 /* { dg-warning {passing argument 3 of '__builtin_arm_vcx1qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 119 } */ | |
121 accum += __arm_vcx2q (0, n, ""); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
122 /* { dg-warning {passing argument 3 of '__builtin_arm_vcx2qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 121 } */ | |
123 accum += __arm_vcx2q_u8 (0, n, "x"); /* { dg-error {argument 3 to '__builtin_arm_vcx2qv16qi' must be a constant immediate in range \[0-127\]} } */ | |
124 /* { dg-warning {passing argument 3 of '__builtin_arm_vcx2qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 123 } */ | |
125 accum += __arm_vcx2qa (0, accum, n, ""); /* { dg-error {argument 4 to '__builtin_arm_vcx2qav16qi' must be a constant immediate in range \[0-127\]} } */ | |
126 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx2qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 125 } */ | |
127 accum += __arm_vcx3q_u8 (0, n, m, ""); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
128 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx3qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 127 } */ | |
129 accum += __arm_vcx3q (0, n, m, "x"); /* { dg-error {argument 4 to '__builtin_arm_vcx3qv16qi' must be a constant immediate in range \[0-15\]} } */ | |
130 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx3qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 129 } */ | |
131 accum += __arm_vcx3qa (0, accum, n, m, ""); /* { dg-error {argument 5 to '__builtin_arm_vcx3qav16qi' must be a constant immediate in range \[0-15\]} } */ | |
132 /* { dg-warning {passing argument 5 of '__builtin_arm_vcx3qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 131 } */ | |
133 | |
134 accum += __arm_vcx1q_m (0, accum, "", pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1q_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
135 /* { dg-warning {passing argument 3 of '__builtin_arm_vcx1q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 134 } */ | |
136 accum += __arm_vcx1qa_m (0, accum, "", pred); /* { dg-error {argument 3 to '__builtin_arm_vcx1qa_p_v16qi' must be a constant immediate in range \[0-4095\]} } */ | |
137 /* { dg-warning {passing argument 3 of '__builtin_arm_vcx1qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 136 } */ | |
138 accum += __arm_vcx2q_m (0, accum, n, "", pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2q_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
139 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx2q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 138 } */ | |
140 accum += __arm_vcx2qa_m (0, accum, n, "", pred); /* { dg-error {argument 4 to '__builtin_arm_vcx2qa_p_v16qi' must be a constant immediate in range \[0-127\]} } */ | |
141 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx2qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 140 } */ | |
142 accum += __arm_vcx3q_m (0, accum, n, m, "x", pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3q_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
143 /* { dg-warning {passing argument 5 of '__builtin_arm_vcx3q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 142 } */ | |
144 accum += __arm_vcx3qa_m (0, accum, n, m, "", pred); /* { dg-error {argument 5 to '__builtin_arm_vcx3qa_p_v16qi' must be a constant immediate in range \[0-15\]} } */ | |
145 /* { dg-warning {passing argument 5 of '__builtin_arm_vcx3qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 144 } */ | |
146 | |
147 /* `coproc' is of wrong type. */ | |
148 accum += __arm_vcx1qa ("", accum, 4095); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
149 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx1qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 148 } */ | |
150 accum += __arm_vcx2q ("", n, 126); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
151 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx2qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 150 } */ | |
152 accum += __arm_vcx2qa ("", accum, n, 127); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
153 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx2qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 152 } */ | |
154 accum += __arm_vcx3q ("", n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
155 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx3qv16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 154 } */ | |
156 accum += __arm_vcx3qa ("", accum, n, m, 15); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
157 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx3qav16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 156 } */ | |
158 | |
159 accum += __arm_vcx1q_m ("", accum, 4094, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
160 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx1q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 159 } */ | |
161 accum += __arm_vcx1qa_m ("", accum, 4095, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
162 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx1qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 161 } */ | |
163 accum += __arm_vcx2q_m ("", accum, n, 126, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
164 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx2q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 163 } */ | |
165 accum += __arm_vcx2qa_m ("", accum, n, 127, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
166 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx2qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 165 } */ | |
167 accum += __arm_vcx3q_m ("", accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
168 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx3q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 167 } */ | |
169 accum += __arm_vcx3qa_m ("", accum, n, m, 15, pred); /* { dg-error {coproc must be a constant immediate in range \[0-7\] enabled with \+cdecp<N>} } */ | |
170 /* { dg-warning {passing argument 1 of '__builtin_arm_vcx3qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 169 } */ | |
171 | |
172 /* `pred" is of wrong type. */ | |
173 accum += __arm_vcx1q_m (0, accum, 4094, ""); | |
174 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx1q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 173 } */ | |
175 accum += __arm_vcx1qa_m (0, accum, 4095, ""); | |
176 /* { dg-warning {passing argument 4 of '__builtin_arm_vcx1qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 175 } */ | |
177 accum += __arm_vcx2q_m (0, accum, n, 126, ""); | |
178 /* { dg-warning {passing argument 5 of '__builtin_arm_vcx2q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 177 } */ | |
179 accum += __arm_vcx2qa_m (0, accum, n, 127, ""); | |
180 /* { dg-warning {passing argument 5 of '__builtin_arm_vcx2qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 179 } */ | |
181 accum += __arm_vcx3q_m (0, accum, n, m, 15, ""); | |
182 /* { dg-warning {passing argument 6 of '__builtin_arm_vcx3q_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 181 } */ | |
183 accum += __arm_vcx3qa_m (0, accum, n, m, 15, ""); | |
184 /* { dg-warning {passing argument 6 of '__builtin_arm_vcx3qa_p_v16qi' makes integer from pointer without a cast \[-Wint-conversion\]} "" { target *-*-* } 183 } */ | |
185 | |
186 return accum; | |
187 } |