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