[PATCH 29/57][Arm][GAS] Add support for MVE instructions: vqdmullt and vqdmullb
[external/binutils.git] / gas / ChangeLog
1 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2
3         * config/tc-arm.c (enum operand_parse_code): Add new operand.
4         (parse_operands): Handle new operand.
5         (do_mve_vqdmull): New encoding function.
6         (insns): Add entry for MVE mnemonics.
7         * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
8         * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
9         * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
10
11 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
12
13         * config/tc-arm.c (enum operand_parse_code): Add new operand.
14         (parse_operands): Handle new operand.
15         (mve_encode_qqr): Handle new instructions.
16         (do_neon_qdmulh): Add support for MVE variants.
17         (do_neon_qrdmlah): Likewise.
18         (do_mve_vqdmlah): New encoding function.
19         (insns): Change entries and add new entries for MVE mnemonics.
20         * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
21         * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
22         * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
23
24 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
25
26         * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
27         (insns): Add entries for MVE mnemonics.
28         * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
29         * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
30         * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
31         * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
32         * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
33         * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
34
35 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
36
37         * config/tc-arm.c (do_mve_vpsel): New encoding function.
38         (do_mve_vpnot): Likewise.
39         (insns): Add entries for MVE mnemonics.
40         * testsuite/gas/arm/mve-vpnot-bad.d: New test.
41         * testsuite/gas/arm/mve-vpnot-bad.l: New test.
42         * testsuite/gas/arm/mve-vpnot-bad.s: New test.
43         * testsuite/gas/arm/mve-vpsel-bad.d: New test.
44         * testsuite/gas/arm/mve-vpsel-bad.l: New test.
45         * testsuite/gas/arm/mve-vpsel-bad.s: New test.
46
47 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
48
49         * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
50         (do_neon_sat_abs_neg): Likewise.
51         (insns): Likewise.
52         * testsuite/gas/arm/mve-vmvn-bad.d: New test.
53         * testsuite/gas/arm/mve-vmvn-bad.l: New test.
54         * testsuite/gas/arm/mve-vmvn-bad.s: New test.
55         * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
56         * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
57         * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
58
59 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
60
61         * config/tc-arm.c (do_mve_vmlas): New encoding function.
62         (do_mve_vmulh): Likewise.
63         (insns): Add entries for MVE mnemonics.
64         * testsuite/gas/arm/mve-vmlas-bad.d: New test.
65         * testsuite/gas/arm/mve-vmlas-bad.l: New test.
66         * testsuite/gas/arm/mve-vmlas-bad.s: New test.
67         * testsuite/gas/arm/mve-vmulh-bad.d: New test.
68         * testsuite/gas/arm/mve-vmulh-bad.l: New test.
69         * testsuite/gas/arm/mve-vmulh-bad.s: New test.
70
71 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
72
73         * config/tc-arm.c (enum operand_parse_code): New operand.
74         (parse_operands): Handle new operand.
75         (mve_encode_qqr): Handle new instructions.
76         (do_neon_dyadic_i64_su): Accept MVE variants.
77         (neon_dyadic_misc): Likewise.
78         (do_neon_mac_maybe_scalar): Likewise.
79         (do_neon_mul): Likewise.
80         (insns): Change to accept MVE variants.
81         * testsuite/gas/arm/mve-vmla-bad.d: New test.
82         * testsuite/gas/arm/mve-vmla-bad.l: New test.
83         * testsuite/gas/arm/mve-vmla-bad.s: New test.
84         * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
85         * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
86         * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
87         * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
88         * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
89         * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
90         * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
91         * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
92         * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
93
94 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
95
96         * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
97          M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
98          M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
99          M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
100          M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
101         instruction encodings.
102         (NEON_SHAPE_DEF): New shape
103         (mve_encode_rrqq): New encoding helper function.
104         (do_mve_vmlaldav): New encoding function.
105         (do_mve_vrmlaldavh): New encoding function.
106         (insns): Add entries for MVE mnemonics.
107         * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
108         * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
109         * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
110         * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
111         * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
112         * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
113         * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
114         * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
115         * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
116         * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
117         * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
118         * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
119
120 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
121
122         * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
123          M_MNEM_vminav): New instruction encodings.
124         (do_mve_vmaxv): New encoding function.
125         (insns): Add entries for new MVE mnemonics.
126         * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
127         * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
128         * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
129
130 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
131
132         * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
133         (insns): Add entries for new mnemonics.
134         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
135         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
136         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
137
138 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
139
140         * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
141         (do_mve_vmaxnma_vminnma): Likewise.
142         (do_neon_dyadic_if_su): Change to support MVE variants.
143         (do_vmaxnm): Likewise.
144         (insns): Change to accept MVE variants and add new.
145         * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
146         * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
147         * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
148         * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
149         * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
150         * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
151         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
152         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
153         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
154         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
155         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
156         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
157
158 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
159
160         * config/tc-arm.c (enum operand_parse_code): New operand.
161         (parse_operands): Handle new operand.
162         (mve_encode_qqr): Change to support new instructions.
163         (enum vfp_or_neon_is_neon_bits): Moved.
164         (vfp_or_neon_is_neon): Moved.
165         (check_simd_pred_availability): Moved.
166         (do_neon_dyadic_i_su): Changed to support MVE variants.
167         (neon_dyadic_misc): Changed mve_encode_qqr call.
168         (do_mve_vbrsr): Likewise.
169         (do_mve_vhcadd): New encoding function.
170         (insns): Change existing to accept MVE variants and add new.
171         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
172         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
173         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
174         * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
175         * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
176         * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
177
178 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
179
180         * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
181         (insns): Change to accept MVE variants.
182         * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
183         * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
184         * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
185
186 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
187
188         * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
189          M_MNEM_viwdup): New instruction encodings.
190         (NEON_SHAPE_DEF): New shapes.
191         (do_mve_viddup): New encoding function.
192         (do_neon_dup): Change to support new MVE variants.
193         (insns): Change existing to accept MVE variants and add new.
194         * testsuite/gas/arm/mve-vddup-bad.d: New test.
195         * testsuite/gas/arm/mve-vddup-bad.l: New test.
196         * testsuite/gas/arm/mve-vddup-bad.s: New test.
197         * testsuite/gas/arm/mve-vdup-bad.d: New test.
198         * testsuite/gas/arm/mve-vdup-bad.l: New test.
199         * testsuite/gas/arm/mve-vdup-bad.s: New test.
200         * testsuite/gas/arm/mve-vidup-bad.d: New test.
201         * testsuite/gas/arm/mve-vidup-bad.l: New test.
202         * testsuite/gas/arm/mve-vidup-bad.s: New test.
203
204 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
205
206         * config/tc-arm.c (do_mve_vfmas): New encoding function.
207         (do_neon_cls): Change to support MVE variants.
208         (do_neon_clz): Change to support MVE variants.
209         (insns): Change to support MVE variants and add new.
210         * testsuite/gas/arm/mve-vcls-bad.d: New test.
211         * testsuite/gas/arm/mve-vcls-bad.l: New test.
212         * testsuite/gas/arm/mve-vcls-bad.s: New test.
213         * testsuite/gas/arm/mve-vclz-bad.d: New test.
214         * testsuite/gas/arm/mve-vclz-bad.l: New test.
215         * testsuite/gas/arm/mve-vclz-bad.s: New test.
216         * testsuite/gas/arm/mve-vfmas-bad.d: New test.
217         * testsuite/gas/arm/mve-vfmas-bad.l: New test.
218         * testsuite/gas/arm/mve-vfmas-bad.s: New test.
219
220 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
221
222         * config/tc-arm.c (enum operand_parse_code): New operands.
223         (parse_operands): Handle new operands.
224         (do_mve_vcmul): New encoding function.
225         (do_vcmla): Change to support MVE variants.
226         (do_vcadd): Change to support MVE variants.
227         (insns): Change existing to support MVE variants and add new.
228         * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
229         * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
230         * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
231         * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
232         * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
233         * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
234         * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
235         * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
236         * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
237         * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
238         * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
239         * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
240         * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
241         * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
242         * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
243         * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
244         * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
245         * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
246
247 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
248
249         * config/tc-arm.c (enum operand_parse_code): New operands.
250         (parse_operands): Handle new operands.
251         (enum vfp_or_neon_is_neon_bits): Moved
252         (vfp_or_neon_is_neon): Moved
253         (check_simd_pred_availability): Moved.
254         (do_neon_logic): Change to accept MVE variants.
255         (insns): Changed to accept MVE variants.
256         * testsuite/gas/arm/mve-vand-bad.d: New test.
257         * testsuite/gas/arm/mve-vand-bad.l: New test.
258         * testsuite/gas/arm/mve-vand-bad.s: New test.
259         * testsuite/gas/arm/mve-vbic-bad.d: New test.
260         * testsuite/gas/arm/mve-vbic-bad.l: New test.
261         * testsuite/gas/arm/mve-vbic-bad.s: New test.
262         * testsuite/gas/arm/mve-veor-bad.d: New test.
263         * testsuite/gas/arm/mve-veor-bad.l: New test.
264         * testsuite/gas/arm/mve-veor-bad.s: New test.
265         * testsuite/gas/arm/mve-vorn-bad.d: New test.
266         * testsuite/gas/arm/mve-vorn-bad.l: New test.
267         * testsuite/gas/arm/mve-vorn-bad.s: New test.
268         * testsuite/gas/arm/mve-vorr-bad.d: New test.
269         * testsuite/gas/arm/mve-vorr-bad.l: New test.
270         * testsuite/gas/arm/mve-vorr-bad.s: New test.
271
272 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
273
274         * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
275          M_MNEM_vaddva): New instruction encodings.
276         (mve_encode_rq): New encoding helper function.
277         (do_mve_vaddlv): New encoding function.
278         (do_mve_vaddv): New encoding function.
279         * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
280         * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
281         * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
282         * testsuite/gas/arm/mve-vaddv-bad.d: New test.
283         * testsuite/gas/arm/mve-vaddv-bad.l: New test.
284         * testsuite/gas/arm/mve-vaddv-bad.s: New test.
285
286 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
287
288         * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
289         New instruction encodings.
290         (do_mve_vadc): New encoding instruction.
291         (do_mve_vbrsr): Likewise.
292         (do_mve_vsbc): Likewise.
293         * testsuite/gas/arm/mve-vadc-bad.d: New test.
294         * testsuite/gas/arm/mve-vadc-bad.l: New test.
295         * testsuite/gas/arm/mve-vadc-bad.s: New test.
296         * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
297         * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
298         * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
299         * testsuite/gas/arm/mve-vsbc-bad.d: New test.
300         * testsuite/gas/arm/mve-vsbc-bad.l: New test.
301         * testsuite/gas/arm/mve-vsbc-bad.s: New test.
302
303 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
304
305         * config/tc-arm.c (MVE_BAD_QREG): New error message.
306         (enum operand_parse_code): Define new operand.
307         (parse_operands): Handle new operand.
308         (do_mve_vpt): Change for VPT blocks.
309         (NEON_SHAPE_DEF): New shape.
310         (neon_logbits): Moved.
311         (LOW4): Moved
312         (HI1): Moved
313         (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
314         (do_mve_vcmp): New encoding function.
315         (do_vfp_nsyn_cmp): Changed to support MVE variants.
316         (insns): Change to support MVE variants of vcmp and add vpt.
317         * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
318         * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
319         * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
320         * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
321         * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
322         * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
323         * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
324         * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
325         * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
326         * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
327         * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
328         * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
329
330 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
331
332         * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
333         distinguish between types of scalar.
334         (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
335         (parse_scalar): Likewise.
336         (parse_neon_mov): Accept MVE variant.
337         (po_scalar_or_goto): Make use reg_type.
338         (parse_operands): Change uses of po_scalar_or_goto.
339         (do_vfp_sp_monadic): Change to accept MVE variants.
340         (do_vfp_reg_from_sp): Likewise.
341         (do_vfp_sp_from_reg): Likewise.
342         (do_vfp_dp_rd_rm): Likewise.
343         (do_vfp_dp_rd_rn_rm): Likewise.
344         (do_vfp_dp_rm_rd_rn): Likewise.
345         (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
346         instruction encodings.
347         (NEON_SHAPE_DEF): New shape.
348         (do_mve_mov): New encoding fuction.
349         (do_mve_movn): Likewise.
350         (do_mve_movl): Likewise.
351         (do_neon_mov): Change to accept MVE variants.
352         (mcCE): New MACRO.
353         (insns): Accept new MVE variants and instructions.
354         * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
355         * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
356         * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
357         * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
358         * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
359         * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
360
361 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
362
363         * config/tc-arm.c (enum operand_parse_code): Add new operand.
364         (parse_operands): Handle new operand.
365         (do_neon_cvt_1): Handle MVE variants.
366         (do_neon_cvttb_1): Likewise.
367         (insns): Accept MVE variants.
368         * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
369         * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
370         * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
371         * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
372         * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
373         * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
374         * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
375         * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
376         * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
377         * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
378         * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
379         * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
380         * testsuite/gas/arm/mve-vcvt-bad.d: New test.
381         * testsuite/gas/arm/mve-vcvt-bad.l: New test.
382         * testsuite/gas/arm/mve-vcvt-bad.s: New test.
383
384 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
385
386         * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
387         type of register.
388         (enum shift_kind): Add SHIFT_UXTW shift kind.
389         (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
390         (parse_shift): Handle new shift type.
391         (parse_address_main): Accept new addressing modes.
392         (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
393          M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
394         instruction encodings.
395         (do_mve_vstr_vldr_QI): New encoding functions.
396         (do_mve_vstr_vldr_RQ): Likewise.
397         (do_mve_vstr_vldr_RI): Likewise.
398         (do_mve_vstr_vldr): Likewise.
399         * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
400         * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
401         * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
402         * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
403         * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
404         * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
405         * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
406         * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
407         * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
408         * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
409         * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
410         * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
411         * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
412         * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
413         * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
414         * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
415         * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
416         * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
417
418 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
419
420         * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
421         (BAD_EL_TYPE): New error message.
422         (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
423         (parse_address_main): Likewise.
424         (group_reloc_type): Add GROUP_MVE.
425         (enum operand_parse_code): Add new operands.
426         (parse_operands): Handle new operands.
427         (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
428          M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
429          M_MNEM_vld42, M_MNEM_vld43): New encodings.
430         (do_mve_vst_vld): New encoding function.
431         (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
432         (it_fsm_pre_encode): Handle new it_instruction_type
433         (handle_pred_state): Likewise.
434         * testsuite/gas/arm/mve-vstld-bad.d: New test.
435         * testsuite/gas/arm/mve-vstld-bad.l: New test.
436         * testsuite/gas/arm/mve-vstld-bad.s: New test.
437
438 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
439
440         * config/tc-arm.c (BAD_MVE_AUTO): New error message.
441         (BAD_MVE_SRCDEST): Likewise.
442         (mark_feature_used): Diagnose MVE only instructions when in
443         auto-detection mode or -march=all.
444         (enum operand_parse_code): Define new operand.
445         (parse_operands): Handle new operand.
446         (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
447         (mve_encode_qqq): New encoding helper function.
448         (do_mve_vmull): New encoding function.
449         (insns): Handle new instructions.
450         * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
451         * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
452         * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
453
454 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
455
456         * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
457         (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
458         (enum operand_parse_code): Handle new operands.
459         (parse_operands): Likewise.
460         (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
461          M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
462          M_MNEM_vmlsdavax): Define new encodings.
463         (NEON_SHAPE_DEF): Add new shape.
464         (neon_check_type): Use BAD_SIMD_TYPE.
465         (mve_encode_rqq): New encoding helper function.
466         (do_mve_vabav, do_mve_vmladav): New encoding functions.
467         (mCEF): New MACRO.
468         * testsuite/gas/arm/mve-vabav-bad.d: New test.
469         * testsuite/gas/arm/mve-vabav-bad.l: New test.
470         * testsuite/gas/arm/mve-vabav-bad.s: New test.
471         * testsuite/gas/arm/mve-vmladav-bad.d: New test.
472         * testsuite/gas/arm/mve-vmladav-bad.l: New test.
473         * testsuite/gas/arm/mve-vmladav-bad.s: New test.
474         * testsuite/gas/arm/mve-vmlav-bad.d: New test.
475         * testsuite/gas/arm/mve-vmlav-bad.l: New test.
476         * testsuite/gas/arm/mve-vmlav-bad.s: New test.
477         * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
478         * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
479         * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
480
481 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
482
483         * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
484         (insns): Change vabs and vneg entries to accept MVE variants.
485         * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
486         * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
487         * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
488         * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
489         * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
490         * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
491
492 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
493
494         * config/tc-arm.c (enum it_instruction_type): Rename to...
495         (enum pred_instruction_type): ... this. Include VPT types.
496         (it_insn_type): Rename to ...
497         (pred_insn_type): .. this.
498         (arm_it): Change comment.
499         (enum arm_reg_type): Add new value.
500         (reg_expected_msgs): New entry.
501         (asm_opcode): Add mayBeVecPred member.
502         (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
503          MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
504         (arm_vcond_hsh): New table for vector condition codes.
505         (now_it): Rename to ...
506         (now_pred): ... this.
507         (now_it_compatible): Rename to ...
508         (now_pred_compatible): ... this.
509         (in_it_block): Rename to ...
510         (in_pred_block): ... this.
511         (handle_it_state): Rename to ...
512         (handle_pred_state): ... this. And change it to accept VPT blocks.
513         (set_it_insn_type): Rename to ...
514         (set_pred_insn_type): ... this.
515         (set_it_insn_type_nonvoid): Rename to ...
516         (set_pred_insn_type_nonvoid): ... this.
517         (set_it_insn_type_last): Rename to ...
518         (set_pred_insn_type_last): ... this.
519         (record_feature_use): Moved.
520         (mark_feature_used): Likewise.
521         (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
522         (emit_insn): Use renamed functions and variables.
523         (enum operand_parse_code): Add new operands.
524         (parse_operands): Handle new operands.
525         (do_scalar_fp16_v82_encode): Change predication detection.
526         (do_it): Use renamed functions and variables.
527         (do_t_add_sub): Likewise.
528         (do_t_arit3): Likewise.
529         (do_t_arit3c): Likewise.
530         (do_t_blx): Likewise.
531         (do_t_branch): Likewise.
532         (do_t_bkpt_hlt1): Likewise.
533         (do_t_branch23): Likewise.
534         (do_t_bx): Likewise.
535         (do_t_bxj): Likewise.
536         (do_t_cond): Likewise.
537         (do_t_csdb): Likewise.
538         (do_t_cps): Likewise.
539         (do_t_cpsi): Likewise.
540         (do_t_cbz): Likewise.
541         (do_t_it): Likewise.
542         (do_mve_vpt): New function to handle VPT blocks.
543         (encode_thumb2_multi): Use renamed functions and variables.
544         (do_t_ldst): Use renamed functions and variables.
545         (do_t_mov_cmp): Likewise.
546         (do_t_mvn_tst): Likewise.
547         (do_t_mul): Likewise.
548         (do_t_nop): Likewise.
549         (do_t_neg): Likewise.
550         (do_t_rsb): Likewise.
551         (do_t_setend): Likewise.
552         (do_t_shift): Likewise.
553         (do_t_smc): Likewise.
554         (do_t_tb): Likewise.
555         (do_t_udf): Likewise.
556         (do_t_loloop): Likewise.
557         (do_neon_cvt_1): Likewise.
558         (do_vfp_nsyn_cvt_fpv8): Likewise.
559         (do_vsel): Likewise.
560         (do_vmaxnm): Likewise.
561         (do_vrint_1): Likewise.
562         (do_crypto_2op_1): Likewise.
563         (do_crypto_3op_1): Likewise.
564         (do_crc32_1): Likewise.
565         (it_fsm_pre_encode): Likewise.
566         (it_fsm_post_encode): Likewise.
567         (force_automatic_it_block_close): Likewise.
568         (check_it_blocks_finished): Likewise.
569         (check_pred_blocks_finished): Likewise.
570         (arm_cleanup): Likewise.
571         (now_it_add_mask): Rename to ...
572         (now_pred_add_mask): ... this. And use new variables and functions.
573         (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
574         (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
575         (neon_check_type): Generalize error message.
576         (mve_encode_qqr): New MVE generic encoding function.
577         (neon_dyadic_misc): Change to accept MVE variants.
578         (do_neon_dyadic_if_su): Likewise.
579         (do_neon_addsub_if_i): Likewise.
580         (do_neon_dyadic_long): Likewise.
581         (vfp_or_neon_is_neon): Add extra checks.
582         (check_simd_pred_availability): Helper function to check SIMD
583         instruction availability with respect to predication.
584         (enum opcode_tag): New suffix value.
585         (opcode_lookup): Change to handle VPT blocks.
586         (new_automatic_it_block): Rename to ...
587         (close_automatic_it_block): ...this.
588         (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
589          toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
590          NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
591         field.
592         (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
593         (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
594         variants. Add entries for vscclrm, and vpst.
595         (md_begin): Add arm_vcond_hsh initialization.
596         * config/tc-arm.h (enum it_state): Rename to...
597         (enum pred_state): ...this.
598         (struct current_it): Rename to...
599         (struct current_pred): ...this.
600         (enum pred_type): New enum.
601         (struct arm_segment_info_type): Use current_pred.
602         * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
603         * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
604         * testsuite/gas/arm/dotprod-illegal.l: Update error message.
605         * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
606         * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
607         * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
608         * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
609         * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
610         * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
611         * testsuite/gas/arm/mve-vpst-bad.d: New test.
612         * testsuite/gas/arm/mve-vpst-bad.l: New test.
613         * testsuite/gas/arm/mve-vpst-bad.s: New test.
614         * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
615
616 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
617
618         * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
619         (armv8_1m_main_ext_table): Add new extensions.
620         (aeabi_set_public_attributes): Translate new features to new build attributes.
621         (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
622         * doc/c-arm.texi: Document new extensions and new build attribute.
623
624 2019-05-15  John Darrington <john@darrington.wattle.id.au>
625
626         * config/tc-s12z.c (register_prefix): New variable.  (md_show_usage,
627         md_parse_option):  parse the new option.
628         (lex_reg_name): Scan the prefix if one is set.
629         * doc/c-s12z.texi (S12Z-Opts): Document the new option.
630         * testsuite/gas/s12z/reg-prefix.d: New file.
631         * testsuite/gas/s12z/reg-prefix.s: New file.
632         * testsuite/gas/s12z/s12z.exp: Add them.
633
634 2019-05-14  John Darrington <john@darrington.wattle.id.au>
635
636         * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
637
638 2019-05-15  Alan Modra  <amodra@gmail.com>
639
640         * config/tc-csky.c (md_convert_frag): Initialise trailing
641         padding for COND_JUMP_PIC.
642
643 2019-05-15  Alan Modra  <amodra@gmail.com>
644
645         * dwarf2dbg.c: Whitespace fixes.
646         (get_filenum): Don't strdup "file".  Adjust error message.
647         (dwarf2_directive_filename): Use an unsigned type for "num".
648         Catch truncation of file number and overflow of get_filenum
649         XRESIZEVEC multiplication.  Delete dead code.
650
651 2019-05-15  Alan Modra  <amodra@gmail.com>
652
653         PR 24538
654         * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
655         chars in setting endp.
656
657 2019-05-14  Nick Clifton  <nickc@redhat.com>
658
659         PR 24538
660         * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
661         illegal register numbers.
662
663 2019-05-10  Nick Clifton  <nickc@redhat.com>
664
665         PR 24538
666         * macro.c (get_any_string): Increase size of buffer used to hold
667         decimal value of expression result.
668         * dw2gencfi.c (get_debugseg_name): Handle an empty name.
669         * dwarf2dbg.c (get_filenum): Catch integer wraparound when
670         extending allocate file array.
671         (dwarf2_directive_filename): Add extra checks of the computed file
672         number.
673         * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
674         warning hash table.
675         (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
676         returning -1.
677         * config/tc-i386.c (i386_output_nops): Catch an attempt to
678         generate nops of negative lengths.
679         * as.h (MAX_LITTLENUMS): Move definition to here from...
680         * config/atof-ieee.c: ...here.
681         * config/tc-aarch64.c: ...here.
682         * config/tc-arc.c: ...here.
683         * config/tc-arm.c: ...here.
684         * config/tc-epiphany.c: ...here.
685         * config/tc-i386.c: ...here.
686         * config/tc-ia64.c: ...here.  (And correct the value).
687         * config/tc-m32c.c: ...here.
688         * config/tc-m32r.c: ...here.
689         * config/tc-metag.c: ...here.
690         * config/tc-microblaze.c: ...here.
691         * config/tc-nds32.c: ...here.
692         * config/tc-or1k.c: ...here.
693         * config/tc-score.c: ...here.
694         * config/tc-score7.c: ...here.
695         * config/tc-tic4x.c: ...here.
696         * config/tc-tilegx.c: ...here.
697         * config/tc-tilepro.c: ...here.
698         * config/tc-visium.c: ...here.
699         * config/tc-sh.c (md_assemble): Add check for an instruction with
700         no opcodes.
701         * config/tc-mips.c (mips_lookup_insn): Add check for very short
702         instruction name.
703         * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
704         array.
705         (tic54x_start_line_hook): Check for an empty line.
706         (next_line_shows_parallel): Do not walk off the end of the string.
707         (tic54x_macro_start): Check for too much macro nesting.
708         (tic54x_start_label): Add label_start parameter.  Use this
709         parameter to check the first character of the label.
710
711         * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
712         line_start variable to tic54x_start_label.
713
714 2019-05-10  Faraz Shahbazker  <fshahbazker@wavecomp.com>
715
716         * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
717         Add expansions for MIPS r6.
718         * testsuite/gas/mips/add.s: Enable tests for R6.
719         * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
720         * testsuite/gas/mips/mipsr6@add.d: Likewise.
721         * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
722         * gas/testsuite/gas/mips/mips.exp: Run the new test.
723
724 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
725
726         * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
727
728 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
729
730         * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
731         * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
732         * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
733         * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
734         * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
735         * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
736         * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
737         * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
738         * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
739         * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
740         * testsuite/gas/aarch64/sve2.d: Test new instructions.
741         * testsuite/gas/aarch64/sve2.s: Test new instructions.
742
743 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
744
745         * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
746         operand.
747
748 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
749
750         * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
751         operand.
752
753 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
754
755         * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
756         operand.
757
758 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
759
760         * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
761         (parse_address_main): Account for new addressing mode [Zn.S, Xm].
762         (parse_operands): Handle new SVE_ADDR_ZX operand.
763
764 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
765
766         * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
767         operand.
768
769 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
770
771         * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
772
773 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
774
775         * config/tc-aarch64.c: Add command line architecture feature flags
776         "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
777         * doc/c-aarch64.texi: Document new architecture feature flags.
778
779 2019-05-08  Alan Modra  <amodra@gmail.com>
780
781         * testsuite/gas/elf/dwarf2-1.s,
782         * testsuite/gas/elf/dwarf2-2.s,
783         * testsuite/gas/elf/dwarf2-5.s,
784         * testsuite/gas/elf/dwarf2-7.s,
785         * testsuite/gas/elf/dwarf2-8.s,
786         * testsuite/gas/elf/dwarf2-9.s,
787         * testsuite/gas/elf/dwarf2-10.s,
788         * testsuite/gas/elf/dwarf2-11.s,
789         * testsuite/gas/elf/dwarf2-12.s,
790         * testsuite/gas/elf/dwarf2-13.s,
791         * testsuite/gas/elf/dwarf2-14.s,
792         * testsuite/gas/elf/dwarf2-15.s,
793         * testsuite/gas/elf/dwarf2-16.s,
794         * testsuite/gas/elf/dwarf2-17.s,
795         * testsuite/gas/elf/dwarf2-18.s,
796         * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
797         instructions.
798         * testsuite/gas/elf/dwarf2-1.d,
799         * testsuite/gas/elf/dwarf2-2.d,
800         * testsuite/gas/elf/dwarf2-5.d,
801         * testsuite/gas/elf/dwarf2-7.d,
802         * testsuite/gas/elf/dwarf2-8.d,
803         * testsuite/gas/elf/dwarf2-9.d,
804         * testsuite/gas/elf/dwarf2-10.d,
805         * testsuite/gas/elf/dwarf2-11.d,
806         * testsuite/gas/elf/dwarf2-12.d,
807         * testsuite/gas/elf/dwarf2-13.d,
808         * testsuite/gas/elf/dwarf2-14.d,
809         * testsuite/gas/elf/dwarf2-15.d,
810         * testsuite/gas/elf/dwarf2-16.d,
811         * testsuite/gas/elf/dwarf2-17.d,
812         * testsuite/gas/elf/dwarf2-18.d,
813         * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
814         Remove avr, pru, tile, xtensa from xfails.  Update expected output.
815         * testsuite/gas/elf/elf.exp: Sort targets.
816         (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
817         for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
818         * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
819
820 2019-05-08  Alan Modra  <amodra@gmail.com>
821
822         * config/tc-xtensa.c (opt_linkrelax): New variable.
823         (md_parse_option): Set it here.
824         (md_begin): Copy opt_linkrelax to linkrelax.
825
826 2019-05-07  Alexandre Oliva <aoliva@redhat.com>
827
828         * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
829         * testsuite/gas/elf/dwarf2-19.d: Likewise.
830
831 2019-05-07  Alan Modra  <amodra@gmail.com>
832
833         * symbols.c (use_complex_relocs_for): Formatting.  Factor out
834         X_add_symbol tests.
835
836 2019-05-06  Andrew Bennett  <andrew.bennett@imgtec.com>
837             Faraz Shahbazker  <fshahbazker@wavecomp.com>
838
839         * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
840         (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
841         (mips_after_parse_args): Translate EVA to EVA_R6.
842         * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
843         * testsuite/gas/mips/eva.s: Likewise.
844         * testsuite/gas/mips/ase-errors-1.l: Check errors for
845          new instructions.
846         * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
847
848 2019-05-06  Alan Modra  <amodra@gmail.com>
849
850         * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
851         directly.
852
853 2019-05-06  Alan Modra  <amodra@gmail.com>
854
855         * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
856         relocs, and VLE sdarel relocs.
857         * testsuite/gas/ppc/power4.d: Adjust.
858
859 2019-05-05  Alexandre Oliva <aoliva@redhat.com>
860
861         * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
862         views of prior locs.
863         (dwarf2_gen_line_info_1): Skip heads.
864         (size_inc_line_addr, emit_inc_line_addr): Drop
865         DW_LNS_advance_pc for zero addr delta.
866         (dwarf2_finish): Assign views for heads of segments.
867         * testsuite/gas/elf/dwarf2-19.d: New.
868         * testsuite/gas/elf/dwarf2-19.s: New.
869         * testsuite/gas/elf/elf.exp: Test it.
870
871 2019-05-04  Alan Modra  <amodra@gmail.com>
872
873         * config/tc-m32c.c (insn_size): Delete static var.
874         (md_begin): Don't set it.
875         (m32c_md_end): Delete.
876         (md_assemble): Add insn_size auto var.
877         * config/tc-m32c.h (md_end): Don't define.
878         (m32c_md_end): Delete.
879         (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
880         * testsuite/gas/all/align.d: Remove m32c from notarget list.
881         * testsuite/gas/all/incbin.d: Likewise.
882         * testsuite/gas/elf/dwarf2-11.d: Likewise.
883         * testsuite/gas/macros/semi.d: Likewise.
884         * testsuite/gas/all/gas.exp (do_comment): Similarly.
885
886 2019-05-02  H.J. Lu  <hongjiu.lu@intel.com>
887
888         PR gas/24485
889         * config/tc-i386.c (process_suffix): Issue a warning to IRET
890         without a suffix for .code16gcc.
891         * testsuite/gas/i386/jump16.s: Add tests for iretX.
892         * testsuite/gas/i386/jump16.d: Updated.
893         * testsuite/gas/i386/jump16.e: New file.
894
895 2019-05-01  Sudakshina Das  <sudi.das@arm.com>
896
897         * config/tc-aarch64.c (parse_operands): Add case for
898         AARCH64_OPND_TME_UIMM16.
899         (aarch64_features): Add "tme".
900         * doc/c-aarch64.texi: Document the same.
901         * testsuite/gas/aarch64/tme-invalid.d: New test.
902         * testsuite/gas/aarch64/tme-invalid.l: New test.
903         * testsuite/gas/aarch64/tme-invalid.s: New test.
904         * testsuite/gas/aarch64/tme.d: New test.
905         * testsuite/gas/aarch64/tme.s: New test.
906
907 2019-04-29  John Darrington <john@darrington.wattle.id.au>
908
909         * testsuite/gas/s12z/truncated.d: New file.
910         * testsuite/gas/s12z/truncated.s: New file.
911         * testsuite/gas/s12z/s12z.exp: Add new test.
912
913 2019-04-26  Andrew Bennett  <andrew.bennett@imgtec.com>
914             Faraz Shahbazker  <fshahbazker@wavecomp.com>
915
916         * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
917         M_SCDP_AB>: New cases and expansions for paired instructions.
918         * testsuite/gas/mips/llpscp-32.s: New test source.
919         * testsuite/gas/mips/llpscp-64.s: Likewise.
920         * testsuite/gas/mips/llpscp-32.d: New test.
921         * testsuite/gas/mips/llpscp-64.d: Likewise.
922         * testsuite/gas/mips/mips.exp: Run the new tests.
923         * testsuite/gas/mips/r6.s: Add new instructions to test source.
924         * testsuite/gas/mips/r6-64.s: Likewise.
925         * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
926         * testsuite/gas/mips/r6-64-n64.d: Likewise.
927         * testsuite/gas/mips/r6-n32.d: Likewise.
928         * testsuite/gas/mips/r6-n64.d: Likwwise.
929         * testsuite/gas/mips/r6.d: Likewise.
930
931 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
932
933         PR gas/24485
934         * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
935         to IRET for .code16gcc.
936         * testsuite/gas/i386/jump16.s: Add IRET tests.
937         * testsuite/gas/i386/jump16.d: Updated.
938
939 2019-04-25  Alexandre Oliva  <aoliva@redhat.com>
940             Alan Modra  <amodra@gmail.com>
941
942         PR gas/24444
943         * frags.c (frag_gtoffset_p): New.
944         * frags.h (frag_gtoffset_p): Declare it.
945         * expr.c (resolve_expression): Use it.
946
947 2019-04-24  Alan Modra  <amodra@gmail.com>
948
949         PR 24444
950         * symbols.c (resolve_symbol_value): When handling symbols
951         marked as sy_flags.resolved, return correct value for the
952         case of expression symbols left as an O_symbol expression.
953         Merge O_symbol code handling undefined and common symbols with
954         code handling special cases of expression symbols.  Use
955         seg_left to test for undefined and common symbols.  Don't
956         leave an O_symbol expression when X_add_symbol resolves to
957         the absolute_section.  Init final_val later.
958         * testsuite/gas/mmix/basep-7.d: Adjust expected output.
959
960 2019-04-24  John Darrington <john@darrington.wattle.id.au>
961
962         * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
963         and BCLR instructions with an invalid mode.
964         * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
965
966 2019-04-19  Nick Clifton  <nickc@redhat.com>
967
968         PR 24464
969         * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
970         to the relaxation function.
971         * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
972         number of iterations.  Make sure that our internal iteration limit
973         does not exceed this external iteration limit.
974
975 2019-04-18  Matthew Fortune  <matthew.fortune@mips.com>
976
977         * config/tc-mips.c (match_non_zero_reg_operand): Update
978         warning message.
979         * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
980
981 2019-04-18  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
982
983         * config/tc-msp430.c (msp430_make_init_symbols): Define
984         __crt0_run_{preinit,init,fini}_array symbols if
985         .{preinit,init,fini}_array sections exist.
986         * testsuite/gas/msp430/fini-array.d: New test.
987         * testsuite/gas/msp430/init-array.d: New test.
988         * testsuite/gas/msp430/preinit-array.d: New test.
989         * testsuite/gas/msp430/fini-array.s: New test source.
990         * testsuite/gas/msp430/init-array.s: New test source.
991         * testsuite/gas/msp430/preinit-array.s: New test source.
992         * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
993
994 2019-04-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
995
996         * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
997         symbol when .lower.bss or .either.bss sections exist.
998         Define __crt0_movedata when .lower.data or .either.data sections exist.
999         * testsuite/gas/msp430/either-data-bss-sym.d: New test.
1000         * testsuite/gas/msp430/low-data-bss-sym.d: New test.
1001         * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
1002         * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
1003         * testsuite/gas/msp430/msp430.exp: Run new tests.
1004         Enable large code model when running -mdata-region={upper,either}
1005         tests.
1006
1007 2019-04-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
1008
1009         * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
1010         OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
1011         (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
1012         OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
1013         accordingly.
1014         (md_show_usage): Likewise.
1015         (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
1016         "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
1017         (md_longopts): Likewise.
1018         (warn_eint_nop): Update comment.
1019         (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
1020         prev_insn_is_dint or we are assembling for 430 ISA.
1021         (msp430_operands): Only call warn_unsure_interrupt if
1022         do_unknown_interrupt_nops == TRUE.
1023         * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
1024         * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
1025         * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
1026         * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
1027         * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
1028         test.
1029         * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
1030         * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
1031
1032 2019-04-16  Alan Modra  <amodra@gmail.com>
1033
1034         * testsuite/gas/all/weakref1.d: xfail nds32.
1035
1036 2019-04-16  Alan Modra  <amodra@gmail.com>
1037
1038         * testsuite/gas/all/gas.exp: Remove ns32k xfails.
1039         * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
1040
1041 2019-04-16  Alan Modra  <amodra@gmail.com>
1042
1043         * write.h: Don't include bit_fix.h.
1044         (struct fix): Rearrange some fields.  Delete fx_im_disp and
1045         fx_bit_fixP.  Use bitfields for fx_size and fx_pcrel_adjust.
1046         * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
1047         (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
1048         (print_fixup): Don't print im_disp.
1049         * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
1050         and fx_im_disp.
1051         * config/tc-dlx.c (md_apply_fix): Remove wrong debug code.  Set
1052         fx_no_overflow when fx_bit_fixP.
1053         * config/tc-dlx.h: Include bit_fix.h.
1054         (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
1055         * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
1056         fx_no_overflow when bit_fixP.
1057         * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
1058         (fix_im_disp, fix_bit_fixP): Adjust to suit.
1059         (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
1060
1061 2019-04-16  Alan Modra  <amodra@gmail.com>
1062
1063         * write.h (struct fix <fx_where>): Make unsigned.
1064         (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
1065         * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
1066         "size" parameters unsigned long.
1067         (fix_new_internal): Likewise.  Adjust error format string to suit.
1068         * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
1069         * config/tc-sparc.c (md_apply_fix): Likewise.
1070         * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
1071         * config/tc-score7.c (s7_convert_frag): Likewise.
1072
1073 2019-04-16  Alan Modra  <amodra@gmail.com>
1074
1075         * frags.h (struct frag <fr_fix>): Use unsigned type.
1076         * frags.c (frag_new): Assert that current size exceeds
1077         old_frags_var_max_size.
1078         * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
1079         * listing.c (calc_hex): Likewise.
1080         * write.c (cvt_frag_to_fill, write_relocs): Likewise.
1081         * config/tc-arc.c (md_convert_frag): Likewise.
1082         * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
1083         * config/tc-mips.c (md_convert_frag): Likewise.
1084         * config/tc-rl78.c (md_convert_frag): Likewise.
1085         * config/tc-rx.c (md_convert_frag): Likewise.
1086         * config/tc-sparc.c (md_apply_fix): Likewise.
1087         * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
1088         (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
1089
1090 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1091
1092         * config/tc-arm.c (parse_sys_vldr_vstr): New function.
1093         (OP_VLDR): New enum operand_parse_code enumerator.
1094         (parse_operands): Add logic for OP_VLDR.
1095         (do_t_vldr_vstr_sysreg): New function.
1096         (do_vldr_vstr): Likewise.
1097         (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
1098         (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
1099         Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
1100         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
1101         uses of VLDR and VSTR.
1102         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
1103         above bad uses.
1104         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
1105         VSTR valid uses.
1106         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
1107         above examples.
1108
1109 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1110
1111         * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
1112         (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1113         enumerators.
1114         (parse_vfp_reg_list): Add new partial_match parameter.  Set
1115         *partial_match to TRUE if at least one element in the register list has
1116         matched.  Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1117         register lists which expect VPR as last element in the list.
1118         (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
1119         prototype.
1120         (s_arm_unwind_save_vfp): Likewise.
1121         (enum operand_parse_code): New OP_VRSDVLST enumerator.
1122         (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
1123         Handle new OP_VRSDVLST case.
1124         (do_t_vscclrm): New function.
1125         (insns): New entry for VSCCLRM instruction.
1126         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
1127         instructions.
1128         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
1129         for above instructions.
1130         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
1131         instruction.
1132         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
1133         for above instructions.
1134
1135 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1136
1137         * config/tc-arm.c (enum reg_list_els): Define earlier and add
1138         REGLIST_RN and REGLIST_CLRM enumerators.
1139         (parse_reg_list): Add etype parameter to distinguish between regular
1140         core register list and CLRM register list.  Add logic to
1141         recognize CLRM register list.
1142         (parse_vfp_reg_list): Assert type is not for core register list.
1143         (s_arm_unwind_save_core): Update call to parse_reg_list to new
1144         prototype.
1145         (enum operand_parse_code): Declare OP_CLRMLST enumerator.
1146         (parse_operands): Update call to parse_reg_list to new prototype.  Add
1147         logic for OP_CLRMLST.
1148         (encode_thumb2_ldmstm): Rename into ...
1149         (encode_thumb2_multi): This.  Add do_io parameter.  Add logic to
1150         encode CLRM and guard LDM/STM only code by do_io.
1151         (do_t_ldmstm): Adapt to use encode_thumb2_multi.
1152         (do_t_push_pop): Likewise.
1153         (do_t_clrm): New function.
1154         (insns): Define CLRM.
1155         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
1156         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
1157         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
1158         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
1159         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
1160
1161 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1162             Andre Vieira  <andre.simoesdiasvieira@arm.com>
1163
1164         * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
1165         for the LR operand and optional LR operand.
1166         (parse_operands): Add switch cases for OP_LR and OP_oLR for
1167         both type checking and value checking.
1168         (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
1169         (v8_1_loop_reloc): New helper function for handling labels
1170         for the low overhead loop instructions.
1171         (do_t_loloop): New function to encode DLS, WLS and LE.
1172         (insns): New entries for WLS, DLS and LE.
1173         (md_pcrel_from_section): New switch case
1174         for BFD_RELOC_ARM_THUMB_LOOP12.
1175         (md_appdy_fix): Likewise.
1176         (tc_gen_reloc): Likewise.
1177         * testsuite/gas/arm/armv8_1-m-tloop.s: New.
1178         * testsuite/gas/arm/armv8_1-m-tloop.d: New.
1179         * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
1180         * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
1181         * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
1182
1183 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1184             Andre Vieira  <andre.simoesdiasvieira@arm.com>
1185
1186         * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
1187         (do_t_v8_1_branch): New switch case for bfcsel.
1188         (toU): Define.
1189         (insns): New instruction for bfcsel.
1190         (md_pcrel_from_section): New switch case
1191         for BFD_RELOC_THUMB_PCREL_BFCSEL.
1192         (md_appdy_fix): Likewise
1193         (tc_gen_reloc): Likewise.
1194         * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
1195         * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
1196
1197 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1198
1199         * config/tc-arm.c (md_pcrel_from_section): New switch case for
1200         BFD_RELOC_ARM_THUMB_BF13.
1201         (md_appdy_fix): Likewise.
1202         (tc_gen_reloc): Likewise.
1203
1204 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1205             Andre Vieira  <andre.simoesdiasvieira@arm.com>
1206
1207         * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
1208         (do_t_v8_1_branch): New switch case for bfl.
1209         (insns): New instruction for bfl.
1210         * testsuite/gas/arm/armv8_1-m-bfl.d: New.
1211         * testsuite/gas/arm/armv8_1-m-bfl.s: New.
1212         * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
1213         * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
1214         * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
1215         * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
1216         * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
1217
1218 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1219
1220         * config/tc-arm.c (md_pcrel_from_section): New switch case for
1221         BFD_RELOC_ARM_THUMB_BF19.
1222         (md_appdy_fix): Likewise.
1223         (tc_gen_reloc): Likewise.
1224
1225 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1226
1227         * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
1228         (do_t_v8_1_branch): New switch cases for bfx and bflx.
1229         (insns): New instruction for bfx and bflx.
1230         * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
1231         * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
1232         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
1233         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
1234         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
1235
1236 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1237             Andre Vieira  <andre.simoesdiasvieira@arm.com>
1238
1239         * config/tc-arm.c (T16_32_TAB): New entries for bf.
1240         (do_t_branch_future): New.
1241         (insns): New instruction for bf.
1242         * testsuite/gas/arm/armv8_1-m-bf.d: New.
1243         * testsuite/gas/arm/armv8_1-m-bf.s: New.
1244         * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
1245         * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
1246         * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
1247         * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
1248         * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
1249
1250 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1251
1252         * config/tc-arm.c (md_pcrel_from_section): New switch case for
1253         BFD_RELOC_ARM_THUMB_BF17.
1254         (md_appdy_fix): Likewise.
1255         (tc_gen_reloc): Likewise.
1256
1257 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1258
1259         * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
1260         (arm_it): Member reloc renamed relocs and updated to an array.
1261         Rest: Replace all occurrences of reloc to relocs[0].
1262
1263 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
1264
1265         * config/tc-arm.c (md_pcrel_from_section): New switch case
1266         for BFD_RELOC_THUMB_PCREL_BRANCH5.
1267         (v8_1_branch_value_check): New function to check branch
1268         offsets.
1269         (md_appdy_fix): New switch case for
1270         BFD_RELOC_THUMB_PCREL_BRANCH5.
1271         (tc_gen_reloc): Likewise.
1272
1273 2019-04-15  Andre Vieira  <andre.simoesdiasvieira@arm.com>
1274
1275         * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
1276         (armv8_1m_main_ext_table): New extension table.
1277         (arm_archs): Use the new extension table.
1278         * doc/c-arm.texi: Add missing arch and document new extensions.
1279         * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
1280         * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
1281         * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
1282
1283 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1284
1285         * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
1286         Tag_CPU_arch build attribute value.  Reindent.
1287         (get_aeabi_cpu_arch_from_fset): Update assert.
1288         (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
1289         * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
1290
1291 2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
1292
1293         * config/tc-mips.c (mips_cpu_info_table): Add i6500.  Update
1294         default ASEs for i6400.
1295         * doc/c-mips.texi (-march): Document i6500.
1296         * testsuite/gas/mips/elf_mach_i6400.d: New test.
1297         * testsuite/gas/mips/elf_mach_i6500.d: New test.
1298         * testsuite/gas/mips/mips.exp: Run the new tests.
1299
1300 2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
1301
1302         * config/tc-mips.c (mips_set_options) <init_ase>: New field.
1303         (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
1304         (file_mips_check_options): Propagate initial ASE settings.
1305         (mips_after_parse_args, parse_code_option): Track the initial
1306         ASE settings for a CPU.
1307         (s_mipsset): Restore the initial ASE settings when reverting
1308         to the default arch.
1309         * testsuite/gas/mips/elf_mach_p6600.d: New test.
1310         * testsuite/gas/mips/mips.exp: Run the new test.
1311
1312 2019-04-12  John Darrington <john@darrington.wattle.id.au>
1313
1314         config/tc-s12z.h: Remove definition of macro TC_M68K
1315
1316 2019-04-01  John Darrington <john@darrington.wattle.id.au>
1317
1318         config/tc-s12z.c: Use bfd_boolean where appropriate.
1319
1320 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
1321
1322         * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
1323         * testsuite/gas/xtensa/loop-relax.d: New test definition.
1324         * testsuite/gas/xtensa/loop-relax.s: New test source.
1325         * testsuite/gas/xtensa/text-section-literals-1a.d: New test
1326         definition.
1327         * testsuite/gas/xtensa/text-section-literals-2.d: New test
1328         definition.
1329         * testsuite/gas/xtensa/text-section-literals-2.s: New test
1330         source.
1331         * testsuite/gas/xtensa/text-section-literals-2a.d: New test
1332         definition.
1333         * testsuite/gas/xtensa/text-section-literals-3.d: New test
1334         definition.
1335         * testsuite/gas/xtensa/text-section-literals-3.s: New test
1336         source.
1337         * testsuite/gas/xtensa/text-section-literals-4.d: New test
1338         definition.
1339         * testsuite/gas/xtensa/text-section-literals-4.s: New test
1340         source.
1341         * testsuite/gas/xtensa/text-section-literals-4a.d: New test
1342         definition.
1343
1344 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
1345
1346         * testsuite/gas/xtensa/all.exp: Remove all expect-based
1347         tests and all explicit run_dump_test / run_list_test
1348         invocations. Add run_dump_tests for all .d files in the
1349         test subdirectory.
1350         * testsuite/gas/xtensa/entry_align.d: New test definition.
1351         * testsuite/gas/xtensa/entry_align.l: New test output.
1352         * testsuite/gas/xtensa/entry_misalign.d: New test definition.
1353         * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
1354         * testsuite/gas/xtensa/j_too_far.d: New test definition.
1355         * testsuite/gas/xtensa/j_too_far.l: New test output.
1356         * testsuite/gas/xtensa/loop_align.d: New test definition.
1357         * testsuite/gas/xtensa/loop_misalign.d: New test definition.
1358         * testsuite/gas/xtensa/trampoline-2.d: New test definition.
1359         * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
1360         * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
1361
1362 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
1363
1364         * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
1365         no effect.
1366         (get_literal_pool_location): Only search for the literal pool
1367         when auto litpools is used, otherwise take one recorded in the
1368         tc_segment_info_data.
1369         (xtensa_assign_litpool_addresses): New function.
1370         (xtensa_move_literals): Don't duplicate 'literal pool location
1371         required...' error message. Call xtensa_assign_litpool_addresses.
1372
1373 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
1374
1375         * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
1376         (xtensa_mark_literal_pool_location): Don't add fill frag to literal
1377         section that records literal pool location.
1378         (md_begin): Call xtensa_mark_literal_pool_location when text
1379         section literals or auto litpools are used.
1380         (xtensa_elf_section_change_hook): Call
1381         xtensa_mark_literal_pool_location when text section literals or
1382         auto litpools are used, there's no literal pool location defined
1383         for the current section and it's not .init or .fini.
1384         * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
1385         * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
1386         * testsuite/gas/xtensa/auto-litpools.d: Likewise.
1387
1388 2019-04-11  Sudakshina Das  <sudi.das@arm.com>
1389
1390         * config/tc-aarch64.c (process_omitted_operand): Add case for
1391         AARCH64_OPND_Rt_SP.
1392         (parse_operands): Likewise.
1393         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
1394         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
1395         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
1396         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
1397
1398 2019-04-11  Sudakshina Das  <sudi.das@arm.com>
1399
1400         * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
1401         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
1402         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
1403         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
1404
1405 2019-04-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1406
1407         * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
1408         * testsuite/gas/i386/solaris/solaris.exp: New driver.
1409         * testsuite/gas/i386/solaris/reloc64.d,
1410         testsuite/gas/i386/solaris/x86-64-jump.d,
1411         testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
1412         testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
1413         testsuite/gas/i386/solaris/x86-64-nop-3.d,
1414         testsuite/gas/i386/solaris/x86-64-nop-4.d,
1415         testsuite/gas/i386/solaris/x86-64-nop-5.d,
1416         testsuite/gas/i386/solaris/x86-64-relax-2.d,
1417         testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
1418         * testsuite/gas/i386/reloc64.d,
1419         testsuite/gas/i386/x86-64-jump.d,
1420         testsuite/gas/i386/x86-64-mpx-branch-1.d,
1421         testsuite/gas/i386/x86-64-mpx-branch-2.d,
1422         testsuite/gas/i386/x86-64-nop-3.d,
1423         testsuite/gas/i386/x86-64-nop-4.d,
1424         testsuite/gas/i386/x86-64-nop-5.d,
1425         testsuite/gas/i386/x86-64-relax-2.d,
1426         testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
1427
1428 2019-04-10  Alan Modra  <amodra@gmail.com>
1429
1430         * config/te-cloudabi.h: New file.
1431         * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
1432         rather than TARGET_OS to select cloudabi.
1433         * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
1434         * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
1435
1436 2019-04-09  Robert Suchanek  <robert.suchanek@mips.com>
1437
1438         * testsuite/gas/mips/mips.exp: Run hwr-names test.
1439         * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
1440         the SEL field.
1441         * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
1442
1443 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1444
1445         * config/tc-i386.c (output_insn): Support
1446         GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
1447         * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
1448         * testsuite/gas/i386/property-2.d: Updated.
1449         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1450
1451 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
1452
1453         * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
1454         * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
1455         check.
1456
1457 2019-04-05  H.J. Lu  <hongjiu.lu@intel.com>
1458
1459         * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
1460         * testsuite/gas/i386/property-2.d: New file.
1461         * testsuite/gas/i386/property-2.s: Likewise.
1462         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1463
1464 2019-04-05  Xuepeng Guo  <xuepeng.guo@intel.com>
1465
1466         * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
1467         (cpu_noarch): Add noavx512_bf16.
1468         * doc/c-i386.texi: Document avx512_bf16.
1469         * testsuite/gas/i386/avx512_bf16.d: New file.
1470         * testsuite/gas/i386/avx512_bf16.s: Likewise.
1471         * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
1472         * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
1473         * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
1474         * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
1475         * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
1476         * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
1477         * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
1478         * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
1479         * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
1480         * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
1481         * testsuite/gas/i386/i386.exp: Add BF16 related tests.
1482
1483 2019-04-05  Alan Modra  <amodra@gmail.com>
1484
1485         * testsuite/gas/ppc/bc.s,
1486         * testsuite/gas/ppc/bcat.d,
1487         * testsuite/gas/ppc/bcaterr.d,
1488         * testsuite/gas/ppc/bcaterr.l,
1489         * testsuite/gas/ppc/bcy.d,
1490         * testsuite/gas/ppc/bcyerr.d,
1491         * testsuite/gas/ppc/bcyerr.l: New tests.
1492         * testsuite/gas/ppc/ppc.exp: Run them.
1493
1494 2019-04-05  Alan Modra  <amodra@gmail.com>
1495
1496         * testsuite/gas/ppc/476.d: Remove trailing spaces.
1497         * testsuite/gas/ppc/a2.d: Likewise.
1498         * testsuite/gas/ppc/booke.d: Likewise.
1499         * testsuite/gas/ppc/booke_xcoff.d: Likewise.
1500         * testsuite/gas/ppc/e500.d: Likewise.
1501         * testsuite/gas/ppc/e500mc.d: Likewise.
1502         * testsuite/gas/ppc/e6500.d: Likewise.
1503         * testsuite/gas/ppc/htm.d: Likewise.
1504         * testsuite/gas/ppc/power6.d: Likewise.
1505         * testsuite/gas/ppc/power8.d: Likewise.
1506         * testsuite/gas/ppc/power9.d: Likewise.
1507         * testsuite/gas/ppc/vle.d: Likewise.
1508
1509 2019-04-04  Peter Bergner  <bergner@linux.ibm.com>
1510
1511         PR gas/24349
1512         * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
1513         btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
1514         bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
1515         bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
1516         bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
1517         bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
1518         bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
1519         bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
1520         bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
1521         beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
1522         bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
1523         buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
1524         bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
1525         bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
1526         bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
1527         bttarl+): Add tests of extended mnemonics.
1528         * testsuite/gas/ppc/power8.d: Likewise.  Update previous bctar tests
1529         to expect new extended mnemonics.
1530         * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
1531         to not use illegal BO value.  Use a more convenient BI value.
1532         * testsuite/gas/ppc/a2.d: Update tests for new expect output.
1533
1534 2019-04-03  Max Filippov  <jcmvbkbc@gmail.com>
1535
1536         * config/tc-xtensa.c (convert_frag_immed): Drop
1537         convert_frag_immed_finish_loop invocation.
1538         (convert_frag_immed_finish_loop): Drop declaration and
1539         definition.
1540         * config/xtensa-relax.c (widen_spec_list): Replace loop
1541         widening that uses addi/addmi with widening that uses l32r
1542         and const16.
1543
1544 2019-04-01  Andre Vieira  <andre.simoesdiasvieira@arm.com>
1545
1546         * config/tc-arm.c (arm_ext_table): New struct type.
1547         (arm_arch_option_table): Add new 'arm_ext_table' field.
1548         (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
1549         (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
1550         armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
1551         armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
1552         armv85a_ext_table, armv8m_main_ext_table,
1553         armv8r_ext_table): New architecture extension tables.
1554         (ARM_ARCH_OPT): Add new default field.
1555         (ARM_ARCH_OPT2): New macro.
1556         (arm_archs): Extend some architectures with the new architecture
1557         extension tables mentioned above.
1558         (arm_extensions): Add DEPRECATED comment with instructions to
1559         use new table.
1560         (arm_parse_extension): Change to use new extension tables.
1561         (arm_parse_cpu): Don't change existing behavior.
1562         (arm_parse_arch): Change to use new extension tables.
1563         * doc/c-arm.texi: Document new architecture extensions.
1564         * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
1565         extension option rather than -mfpu and change expected behaviour to
1566         sane outputs.
1567         * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
1568         * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
1569         * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
1570         * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
1571         * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
1572         * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
1573         * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
1574         * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
1575         * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
1576         * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
1577         * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
1578         * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
1579         * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
1580         * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
1581         * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
1582         * testsuite/gas/arm/armv8m.main+fp.d: New.
1583         * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
1584         * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
1585         * testsuite/gas/arm/attr-ext-fpv5.d: New.
1586         * testsuite/gas/arm/attr-ext-idiv.d: New.
1587         * testsuite/gas/arm/attr-ext-mp.d: New.
1588         * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
1589         * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
1590         * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
1591         * testsuite/gas/arm/attr-ext-sec.d: New.
1592         * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
1593         * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
1594         * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
1595         * testsuite/gas/arm/attr-ext-vfpv3.d: New.
1596         * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
1597         * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
1598         * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
1599         * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
1600         * testsuite/gas/arm/attr-ext-vfpv4.d: New.
1601         * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
1602         * testsuite/gas/arm/fpv5-d16.s: New.
1603         * testsuite/gas/arm/fpv5-sp-d16.s: New.
1604
1605 2019-03-28  Alan Modra  <amodra@gmail.com>
1606
1607         PR 24390
1608         * testsuite/gas/ppc/476.d: Update mtfsb*.
1609         * testsuite/gas/ppc/a2.d: Likewise.
1610
1611 2019-03-21  Alan Modra  <amodra@gmail.com>
1612
1613         * emul.h (struct emulation): Delete strip_underscore.
1614         * emul-target.h (emul_strip_underscore): Don't define.
1615         (emul_struct_name): Update initialization.
1616
1617 2019-03-21  Alan Modra  <amodra@gmail.com>
1618
1619         * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
1620         * config/tc-pdp11.c (md_apply_fix): Likewise.
1621         * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
1622         BFD_RELOC_16, and BFD_RELOC_64.
1623         * testsuite/gas/all/gas.exp: Move target exclusions for forward
1624         test, but not cr16, to..
1625         * testsuite/gas/all/forward.d: ..here, with explanation.  Remove
1626         d10v, d30v, and pdp11 xfails.
1627
1628 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
1629
1630         * config/tc-i386.c (optimize_encoding): Don't check AVX for
1631         EVEX vector load/store optimization.  Check both operands for
1632         ZMM register.  Update EVEX vector load/store opcode check.
1633         Choose EVEX Disp8 over VEX Disp32.
1634         * testsuite/gas/i386/optimize-1.d: Updated.
1635         * testsuite/gas/i386/optimize-1a.d: Likewise.
1636         * testsuite/gas/i386/optimize-2.d: Likewise.
1637         * testsuite/gas/i386/optimize-4.d: Likewise.
1638         * testsuite/gas/i386/optimize-5.d: Likewise.
1639         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
1640         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
1641         * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
1642         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
1643         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
1644         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
1645         * testsuite/gas/i386/optimize-1.s: Add ZMM register load
1646         test.
1647         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
1648
1649 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
1650
1651         PR gas/24352
1652         * config/tc-i386.c (optimize_encoding): Check only
1653         cpu_arch_flags.bitfield.cpuavx512vl.
1654         * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
1655         * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
1656         change.
1657         * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
1658         * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
1659
1660 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
1661
1662         PR gas/24359
1663         * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
1664         x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
1665         Remove optimize-6c and x86-64-optimize-7c tests.
1666         * testsuite/gas/i386/noavx-3.l: Updated.
1667         * testsuite/gas/i386/noavx-4.d: Likewise.
1668         * testsuite/gas/i386/noavx-5.d: Likewise.
1669         * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
1670         * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
1671         * testsuite/gas/i386/nosse-5.s: Likewise.
1672         * testsuite/gas/i386/optimize-6a.d: Removed.
1673         * testsuite/gas/i386/optimize-6c.d: Likewise.
1674         * testsuite/gas/i386/optimize-7.d: Likewise.
1675         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
1676         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
1677         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
1678         * testsuite/gas/i386/optimize-6a.l: New file.
1679         * testsuite/gas/i386/optimize-6a.s: Likewise.
1680         * testsuite/gas/i386/optimize-7.l: Likewise.
1681         * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
1682         * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
1683         * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
1684
1685 2019-03-18  Alan Modra  <amodra@gmail.com>
1686
1687         * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
1688         * as.c (macro_expr): Likewise.
1689         * macro.c (buffer_and_nest): Likewise.
1690         * read.c (temp_ilp): Remove FIXME.
1691
1692 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1693
1694         * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
1695         * testsuite/gas/i386/avx512bw-intel.d: Likewise.
1696         * testsuite/gas/i386/avx512bw.d: Likewise.
1697         * testsuite/gas/i386/avx512f-intel.d: Likewise.
1698         * testsuite/gas/i386/avx512f.d: Likewise.
1699         * testsuite/gas/i386/disp32.d: Likewise.
1700         * testsuite/gas/i386/intel-regs.d: Likewise.
1701         * testsuite/gas/i386/pseudos.d: Likewise.
1702         * testsuite/gas/i386/x86-64-disp32.d: Likewise.
1703         * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1704
1705 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1706
1707         PR gas/24348
1708         * config/tc-i386.c (optimize_encoding): Encode 128-bit and
1709         256-bit EVEX vector register load/store instructions as VEX
1710         vector register load/store instructions for -O1.
1711         * doc/c-i386.texi: Update -O1 documentation.
1712         * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
1713         * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
1714         load/store instructions.
1715         * testsuite/gas/i386/optimize-2.s: Likewise.
1716         * testsuite/gas/i386/optimize-3.s: Likewise.
1717         * testsuite/gas/i386/optimize-5.s: Likewise.
1718         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
1719         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
1720         * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
1721         * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
1722         * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
1723         * testsuite/gas/i386/optimize-1.d: Updated.
1724         * testsuite/gas/i386/optimize-2.d: Likewise.
1725         * testsuite/gas/i386/optimize-3.d: Likewise.
1726         * testsuite/gas/i386/optimize-4.d: Likewise.
1727         * testsuite/gas/i386/optimize-5.d: Likewise.
1728         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
1729         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
1730         * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
1731         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
1732         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
1733         * testsuite/gas/i386/optimize-7.d: New file.
1734         * testsuite/gas/i386/optimize-7.s: Likewise.
1735         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
1736         * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
1737
1738 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1739
1740         * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
1741         VEX/EVEX vector register clearing instructions with 128-bit VEX
1742         vector register clearing instructions at -O1.
1743         * doc/c-i386.texi: Update -O1 and -O2 documentation.
1744         * testsuite/gas/i386/i386.exp: Run optimize-1a and
1745         x86-64-optimize-2a.
1746         * testsuite/gas/i386/optimize-1a.d: New file.
1747         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
1748
1749 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
1750
1751         PR gas/24353
1752         * config/tc-i386.c: Include <limits.h> if it exists and try
1753         including <sys/param.h> if we have it.
1754         (INT_MAX): Define if not defined.
1755         (md_parse_option): Set optimize to INT_MAX for -Os.
1756         * testsuite/gas/i386/optimize-2.s: Add a test.
1757         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
1758         * testsuite/gas/i386/optimize-2.d: Updated.
1759         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
1760
1761 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
1762
1763         PR gas/24352
1764         * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
1765         with 128-bit VEX encoding only when AVX is enabled and with
1766         128-bit EVEX encoding only when AVX512VL is enabled.
1767         * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
1768         * testsuite/gas/i386/optimize-6.s: New file.
1769         * testsuite/gas/i386/optimize-6a.d: Likewise.
1770         * testsuite/gas/i386/optimize-6b.d: Likewise.
1771         * testsuite/gas/i386/optimize-6c.d: Likewise.
1772         * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
1773         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
1774         * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
1775         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
1776         * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
1777
1778 2019-03-15  Li Hao  <li.hao296@zte.com.cn>
1779
1780         PR 24308
1781         * config/tc-i386.c (parse_insn): Check mnemp before using it to
1782         determine if a suffix can be trimmed.
1783
1784 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1785
1786         * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
1787
1788 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1789
1790         * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
1791
1792 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1793
1794         * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
1795
1796 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1797
1798         * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
1799
1800 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1801
1802         * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
1803         (out_debug_aranges, out_debug_info): Likewise.
1804
1805 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1806
1807         * symbols.h (symbol_temp_new_now_octets): Declare.
1808         (symbol_set_value_now_octets, symbol_octets_p): Declare.
1809         * symbols.c (struct symbol_flags): New member sy_octets.
1810         (symbol_temp_new_now_octets): New function.
1811         (resolve_symbol_value): Return octets instead of bytes if
1812         sy_octets is set.
1813         (symbol_set_value_now_octets): New function.
1814         (symbol_octets_p): New function.
1815
1816 2019-03-13  Christian Eggers  <ceggers@gmx.de>
1817
1818         * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
1819
1820 2019-03-12  Andreas Krebbel  <krebbel@linux.ibm.com>
1821
1822         * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
1823         * testsuite/gas/s390/zarch-arch13.d: Likewise.
1824
1825 2019-02-27  Matthew Malcomson  <matthew.malcomson@arm.com>
1826
1827         * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
1828         * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
1829         * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
1830         * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
1831         lines.
1832         * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
1833         * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
1834
1835 2019-02-24  Alan Modra  <amodra@gmail.com>
1836
1837         * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
1838
1839 2019-02-24  Alan Modra  <amodra@gmail.com>
1840
1841         PR 24144
1842         * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
1843         of section to ensure file contents cover aligned section size.
1844
1845 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1846
1847         * config/tc-arm.c (arm_cpus): Add neoverse-n1.
1848         * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
1849
1850 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1851
1852         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
1853         * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
1854
1855 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1856
1857         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
1858         * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
1859
1860 2019-02-19  Paul Hua  <paul.hua.gm@gmail.com>
1861
1862         * NEWS: Mention -m[no-]fix-loongson3-llsc.
1863         * configure.ac: Add --enable-mips-fix-loongson3-llsc.
1864         Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
1865         * config.in: Regenerated.
1866         * configure: Likewise.
1867         * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
1868         New variables.
1869         (options): New OPTION_FIX_LOONGSON3_LLSC,
1870         OPTION_NO_FIX_LOONGSON3_LLSC.
1871         (md_longopts): Add -m[no-]fix-loongson3-llsc.
1872         (md_begin): Initialize sync insn.
1873         (fix_loongson3_llsc): New.
1874         (append_insn): Call fix_loongson3_llsc.
1875         (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
1876         OPTION_NO_FIX_LOONGSON3_LLSC.
1877         (md_show_usage): Display -m[no-]fix-loongson3-llsc.
1878         * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
1879         --enable-mips-fix-loongson3-llsc=[yes|no].
1880
1881 2019-02-10  H.J. Lu  <hongjiu.lu@intel.com>
1882
1883         PR gas/24165
1884         * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
1885         max_bytes.
1886         * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
1887         aarch64_init_frag.
1888         * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
1889         arm_init_frag.
1890         * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
1891         * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
1892         * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
1893         * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
1894         * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
1895         * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
1896         * config/tc-rx.h (TC_FRAG_INIT): Likewise.
1897         * config/tc-score.h (TC_FRAG_INIT): Likewise.
1898         * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
1899         * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
1900         * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
1901         * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
1902         (alignment ? ((1 << alignment) - 1) : 1)
1903         (i386_tc_frag_data): Add max_bytes.
1904         (TC_FRAG_INIT): Add and track max_bytes.
1905         (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
1906         fragP->tc_frag_data.max_bytes.
1907         * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
1908
1909 2019-02-08  Jim Wilson  <jimw@sifive.com>
1910
1911         * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
1912         (riscv_ip) <'C'>: Add 'z' support.
1913
1914 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
1915
1916         * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
1917         hlt to armv1.
1918         * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
1919         * testsuite/gas/arm/hlt.d: New test.
1920         * testsuite/gas/arm/hlt.s: New test.
1921
1922 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
1923
1924         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
1925         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
1926
1927 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
1928
1929         PR binutils/23212
1930         * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
1931         * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
1932
1933 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
1934
1935         * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
1936         64-bit boundaries for the GR6.
1937         * testsuite/gas/visium/allinsn_gr6.s: Tweak.
1938         * testsuite/gas/visium/allinsn_gr6.d: Likewise.
1939         * testsuite/gas/visium/bra-1.d: New test.
1940         * testsuite/gas/visium/bra-1.s: Likewise.
1941         * testsuite/gas/visium/visium.exp: Run bra-1 test.
1942
1943 2019-01-31  John Darrington <john@darrington.wattle.id.au>
1944
1945         * config/tc-s12z.c (lex_imm): Add new argument exp_o.
1946         (emit_reloc): New function.
1947         (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
1948         can be either 2 bytes or 3 bytes long.
1949         * testsuite/gas/s12z/mov-imm-reloc.d: New file.
1950         * testsuite/gas/s12z/mov-imm-reloc.s: New file.
1951         * testsuite/gas/s12z/s12z.exp: Add them.
1952
1953 2019-01-31  John Darrington <john@darrington.wattle.id.au>
1954
1955         * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
1956         * testsuite/gas/s12z/pc-rel-bad.d: New file.
1957         * testsuite/gas/s12z/pc-rel-bad.l: New file.
1958         * testsuite/gas/s12z/pc-rel-bad.s: New file.
1959         * testsuite/gas/s12z/pc-rel-good.d: New file.
1960         * testsuite/gas/s12z/pc-rel-good.s: New file.
1961         * testsuite/gas/s12z/s12z.exp: Add them.
1962
1963 2019-01-31  John Darrington <john@darrington.wattle.id.au>
1964
1965         * config/tc-s12z.c (tfr): Emit warning if operands are the same.
1966         * testsuite/gas/s12z/exg.d: New test case.
1967         * testsuite/gas/s12z/exg.l: New file.
1968
1969 2019-01-31  John Darrington <john@darrington.wattle.id.au>
1970
1971         * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
1972         immediate mode operands should be permitted.
1973         * testsuite/s12z/imm-dest.d: New file.
1974         * testsuite/s12z/imm-dest.l: New file.
1975         * testsuite/s12z/imm-dest.s: New file.
1976         * testsuite/s12z/s12z.exp: Add them.
1977
1978 2019-01-31  Andreas Krebbel  <krebbel@linux.ibm.com>
1979
1980         * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
1981         * doc/c-s390.texi: Document arch13 march option.
1982         * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
1983         * testsuite/gas/s390/zarch-arch13.d: New test.
1984         * testsuite/gas/s390/zarch-arch13.s: New test.
1985         * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
1986         also for z13.
1987
1988 2019-01-31  Alan Modra  <amodra@gmail.com>
1989
1990         * config/tc-alpha.c (md_apply_fix): Correct range checks for
1991         BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
1992         * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
1993         * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
1994
1995 2019-01-28  Max Filippov  <jcmvbkbc@gmail.com>
1996
1997         * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
1998         symbols as done in md_apply_fix.
1999         * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
2000
2001 2019-01-28  Nick Clifton  <nickc@redhat.com>
2002
2003         * po/fr.po: Updated French translation.
2004         * po/ru.po: Updated Russian translation.
2005
2006 2019-01-28  Alan Modra  <amodra@gmail.com>
2007
2008         * configure.ac (ac_checking): Set from bfd/development.sh
2009         development variable.
2010         * configure: Regenerate.
2011
2012 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
2013
2014         * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
2015         stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
2016         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
2017         stg, stzg, st2g and stz2g.
2018         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2019         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2020         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2021
2022 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
2023
2024         * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
2025         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2026         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2027         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2028
2029 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
2030             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2031
2032         * config/tc-aarch64.c (parse_address_main): Remove support for
2033         [base]! address expression.
2034         (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
2035         (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
2036         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
2037         and stgv.
2038         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2039         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2040         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2041
2042 2019-01-25  Wu Heng  <wu.heng@zte.com.cn>
2043
2044         PR gas/23940
2045         * macro.c (getstring): Check array bound before accessing.
2046
2047 2019-01-25  Alan Modra  <amodra@gmail.com>
2048
2049         PR 20902
2050         PR 24125
2051         * read.c (stringer): Delete assertion.
2052
2053 2019-01-21  Nick Clifton  <nickc@redhat.com>
2054
2055         * po/uk.po: Updated Ukranian translation.
2056
2057 2019-01-19  Nick Clifton  <nickc@redhat.com>
2058
2059         * config.in: Regenerate.
2060         * configure: Regenerate.
2061         * po/gas.pot: Regenerate.
2062
2063 2018-06-24  Nick Clifton  <nickc@redhat.com>
2064
2065         2.32 branch created.
2066
2067 2019-01-17  Tamar Christina  <tamar.christina@arm.com>
2068
2069         * testsuite/gas/arm/archv6t2-1-pe.d: New test.
2070         * testsuite/gas/arm/archv6t2-1.d: Skip pe.
2071         * testsuite/gas/arm/csdb.d: Skip pe.
2072         * testsuite/gas/arm/sb-thumb1-pe.d: New test.
2073         * testsuite/gas/arm/sb-thumb1.d: Skip pe.
2074         * testsuite/gas/arm/sb-thumb2-pe.d: New test.
2075         * testsuite/gas/arm/sb-thumb2.d: Skip pe.
2076         * testsuite/gas/arm/udf.d: Skip pe.
2077
2078 2019-01-16  Kito Cheng  <kito@andestech.com>
2079
2080         * testsuite/gas/riscv/attribute-empty.d: New.
2081
2082 2019-01-16  Kito Cheng  <kito@andestech.com>
2083             Nelson Chu  <nelson@andestech.com>
2084
2085         * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
2086         (riscv_set_options): Add `arch_attr` field.
2087         (riscv_opts): Set default value for arch_attr.
2088         (riscv_write_out_arch_attr): New.
2089         (riscv_set_public_attributes): Likewise.
2090         (riscv_md_end): Likewise.
2091         (riscv_convert_symbolic_attribute): Likewise.
2092         (s_riscv_attribute): Likewise.
2093         (explicit_arch_attr): Likewise.
2094         (riscv_pseudo_table): Add .attribute to the table.
2095         (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
2096         enumeration constants.
2097         (md_longopts): Add `march-attr' and `mno-arch-attr' options.
2098         (md_parse_option): Handle the new options.
2099         (md_show_usage): Document the `march-attr' option.
2100         * config/tc-riscv.h (md_end): Define as riscv_md_end
2101         (riscv_md_end): Declare.
2102         (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
2103         riscv_convert_symbolic_attribute.
2104         (riscv_convert_symbolic_attribute): Declare.
2105         (start_assemble): Declare.
2106         * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
2107         * testsuite/gas/elf/section2.e-riscv: New.
2108         * testsuite/gas/riscv/attribute-01.d: New test
2109         * testsuite/gas/riscv/attribute-02.d: Likewise.
2110         * testsuite/gas/riscv/attribute-03.d: Likewise.
2111         * testsuite/gas/riscv/attribute-04.d: Likewise.
2112         * testsuite/gas/riscv/attribute-04.s: Likewise.
2113         * testsuite/gas/riscv/attribute-05.d: Likewise.
2114         * testsuite/gas/riscv/attribute-05.s: Likewise.
2115         * testsuite/gas/riscv/attribute-06.d: Likewise.
2116         * testsuite/gas/riscv/attribute-06.s: Likewise.
2117         * testsuite/gas/riscv/attribute-07.d: Likewise.
2118         * testsuite/gas/riscv/attribute-07.s: Likewise.
2119         * testsuite/gas/riscv/attribute-08.d: Likewise.
2120         * testsuite/gas/riscv/attribute-08.s: Likewise.
2121         * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2122         * testsuite/gas/riscv/attribute-unknown.s: Likewise.
2123         * testsuite/gas/riscv/empty.l: Likewise.
2124         * doc/c-riscv.texi (.attribute): Add documentation.
2125         * configure.ac (--enable-default-riscv-attribute): New options.
2126         * configure: Re-generate.
2127         * config.in: Re-generate.
2128
2129 2019-01-16  John Darrington <john@darrington.wattle.id.au>
2130
2131         * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
2132         before the contents.
2133         * testsuite/gas/s12z/labels.d: New file.
2134         * testsuite/gas/s12z/labels.s: New file.
2135         * testsuite/gas/s12z/s12z.exp: Add them.
2136         * config/tc-s12z.c (tfr): Change as_bad to as_warn.
2137         Also fix message typo and semantics.
2138         * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
2139         BFD_RELOC_24.
2140         * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
2141         of R_S12Z_EXT24.
2142
2143 2019-01-14  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
2144
2145         * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
2146         (insns) [ARM_VARIANT]: Modified.
2147         (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
2148         in ARMv6T2 as well.
2149         * testsuite/gas/arm/archv6t2-1.d: New test.
2150         * testsuite/gas/arm/archv6t2-1.s: Likewise.
2151         * testsuite/gas/arm/archv6t2-2.d: Likewise.
2152
2153 2019-01-11  Alan Modra  <amodra@gmail.com>
2154
2155         PR 23963
2156         * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
2157         * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
2158
2159 2019-01-10  Nick Clifton  <nickc@redhat.com>
2160
2161         PR 23963
2162         * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
2163         fact that control characters are now displayed as escape
2164         sequences.
2165         * testsuite/gas/mips/mips16-e.d: Likewise.
2166         * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
2167         * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
2168         * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
2169         * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
2170         * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
2171         * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
2172         * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
2173         * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
2174         * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
2175         * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
2176         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
2177         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
2178         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
2179         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
2180         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
2181         Likewise.
2182         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
2183         Likewise.
2184         * testsuite/gas/mips/mipsel16-e.d: Likewise.
2185         * testsuite/gas/mips/mipsr6@msa.d: Likewise.
2186         * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
2187         * testsuite/gas/mips/r6-64-n32.d: Likewise.
2188         * testsuite/gas/mips/r6-64-n64.d: Likewise.
2189         * testsuite/gas/mips/r6-n32.d: Likewise.
2190         * testsuite/gas/mips/r6-n64.d: Likewise.
2191         * testsuite/gas/mips/r6.d: Likewise.
2192         * testsuite/gas/mips/tmips16-e.d: Likewise.
2193         * testsuite/gas/mips/tmipsel16-e.d: Likewise.
2194         * testsuite/gas/mn10300/relax.d: Likewise.
2195
2196 2019-01-09  John Darrington <john@darrington.wattle.id.au>
2197
2198         * testsuite/gas/s12z/jsr.s: New case.
2199         * testsuite/gas/s12z/jsr.d: New case.
2200
2201 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
2202
2203         * configure: Regenerate.
2204
2205 2019-01-08  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
2206
2207         * config/tc-aarch64.c (aarch64_cpus): Add ares.
2208         * doc/c-aarch64.texi (-mcpu): Document ares value.
2209
2210 2019-01-08  Alan Modra  <amodra@gmail.com>
2211
2212         * testsuite/gas/rx/rx.exp: Create generated test source in
2213         current directory.
2214         * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
2215         * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
2216         * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
2217         * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
2218         * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
2219         * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
2220         * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
2221         * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
2222         * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
2223         * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
2224         * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
2225         * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
2226         * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
2227         * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
2228         * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
2229         * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
2230         * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
2231         * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
2232         * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
2233         * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
2234         * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
2235         * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
2236         * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
2237         * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
2238         * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
2239         * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
2240         * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
2241         * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
2242         * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
2243         * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
2244         * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
2245         * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
2246         * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
2247         * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
2248         * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
2249         * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
2250         * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
2251         * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
2252         * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
2253         * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
2254         * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
2255         * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
2256         * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
2257         * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
2258         * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
2259         * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
2260         * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
2261         * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
2262         * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
2263         * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
2264         * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
2265         * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
2266         * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
2267         * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
2268         * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
2269         * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
2270         * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
2271         * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
2272         * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
2273         * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
2274         * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
2275         * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
2276         * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
2277         * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
2278         * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
2279         * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
2280         * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
2281         * testsuite/gas/rx/xor.d: Add #source line.
2282
2283 2019-01-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
2284
2285         * config/tc-arm.c (arm_cpus): Add ares.
2286         * doc/c-arm.texi (-mcpu): Document ares value.
2287
2288 2019-01-05  Yoshinori Sato  <ysato@users.sourceforge.jp>
2289
2290         * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
2291         (rx_bfield): Add prototype.
2292         (rx_post): Likewise.
2293         * config/rx-parse.y: Add v3 instructions and Double FPU registers.
2294         (DSIZE): Define.
2295         (POST): Define.
2296         (rx_check_v3): New. check v3 type.
2297         (rx_check_dfpu): New. check have double support.
2298         (double_condition_table): New. dcmp<cond> contiditon.
2299         (check_condition): Multiple condition support.
2300         (rx_lex): RXv3 instructions support.
2301         Add parse dcmp<cond> instruction and Double FPU registers.
2302         (immediate): Disable optimize in dmov #imm case.
2303         (displacement): Add double displacement in dmov instraction.
2304         * config/tc-rx.c (rx_use_conventional_section_names):
2305         Invert default value in rx-*-linux target.
2306         (cpu_type): Add additional ELF flags.
2307         (cpu_type_list): Add RXv3.
2308         (md_parse_option): Refer elf_flags from cpu_type_list.
2309         (md_show_usage): Add rxv3 and rxv3-dfpu.
2310         (rx_bytesT): Add post byte.
2311         (rx_bfield): New. generate bfmov / bfmovz "imm" field.
2312         (rx_post): New. Set instruction post byte.
2313         (md_assemble): Add post byte.
2314         doc/c-rx.texi: Add cpu types.
2315         * testsuite/gas/rx/Xtod.d: New.
2316         * testsuite/gas/rx/Xtod.sm: New.
2317         * testsuite/gas/rx/bfmov.d: New.
2318         * testsuite/gas/rx/bfmov.sm: New.
2319         * testsuite/gas/rx/dabs.d: New.
2320         * testsuite/gas/rx/dabs.sm: New.
2321         * testsuite/gas/rx/dadd.d: New.
2322         * testsuite/gas/rx/dadd.sm: New.
2323         * testsuite/gas/rx/dcmp.d: New.
2324         * testsuite/gas/rx/dcmp.sm: New.
2325         * testsuite/gas/rx/ddiv.d: New.
2326         * testsuite/gas/rx/ddiv.sm: New.
2327         * testsuite/gas/rx/dmov.d: New.
2328         * testsuite/gas/rx/dmov.sm: New.
2329         * testsuite/gas/rx/dmul.d: New.
2330         * testsuite/gas/rx/dmul.sm: New.
2331         * testsuite/gas/rx/dneg.d: New.
2332         * testsuite/gas/rx/dneg.sm: New.
2333         * testsuite/gas/rx/dpopm.d: New.
2334         * testsuite/gas/rx/dpopm.sm: New.
2335         * testsuite/gas/rx/dpushm.d: New.
2336         * testsuite/gas/rx/dpushm.sm: New.
2337         * testsuite/gas/rx/dround.d: New.
2338         * testsuite/gas/rx/dround.sm: New.
2339         * testsuite/gas/rx/dsqrt.d: New.
2340         * testsuite/gas/rx/dsqrt.sm: New.
2341         * testsuite/gas/rx/dsub.d: New.
2342         * testsuite/gas/rx/dsub.sm: New.
2343         * testsuite/gas/rx/dtoX.d: New.
2344         * testsuite/gas/rx/dtoX.sm: New.
2345         * testsuite/gas/rx/macros.inc: Add double FPU registers.
2346         * testsuite/gas/rx/mvfdc.d: New.
2347         * testsuite/gas/rx/mvfdc.sm: New.
2348         * testsuite/gas/rx/mvfdr.d: New.
2349         * testsuite/gas/rx/mvfdr.sm: New.
2350         * testsuite/gas/rx/mvtdc.d: New.
2351         * testsuite/gas/rx/mvtdc.sm: New.
2352         * testsuite/gas/rx/rstr.d: New.
2353         * testsuite/gas/rx/rstr.sm: New.
2354         * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
2355         * testsuite/gas/rx/save.d: New.
2356         * testsuite/gas/rx/save.sm: New.
2357         * testsuite/gas/rx/xor.d: New.
2358         * testsuite/gas/rx/xor.sm: Add pattern.
2359
2360 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
2361
2362         PR 24010
2363         * macro.c (get_any_string): Check for end of input whilst scanning
2364         for separators.
2365
2366 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
2367
2368         PR 24009
2369         * read.c (stringer): Fix handling of missing '>' character at end
2370         of <...> sequence.
2371
2372 2019-01-01  Alan Modra  <amodra@gmail.com>
2373
2374         Update year range in copyright notice of all files.
2375
2376 For older changes see ChangeLog-2018
2377 \f
2378 Copyright (C) 2019 Free Software Foundation, Inc.
2379
2380 Copying and distribution of this file, with or without modification,
2381 are permitted in any medium without royalty provided the copyright
2382 notice and this notice are preserved.
2383
2384 Local Variables:
2385 mode: change-log
2386 left-margin: 8
2387 fill-column: 74
2388 version-control: never
2389 End: