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