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