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