Regen bfd-in2.h
[binutils-gdb.git] / gas / ChangeLog-2019
blobdc028c9f055fbfc67fd43da101c28ea5ac8dd5b4
1 2019-12-27  Jan Beulich  <jbeulich@suse.com>
3         * config/tc-i386.c (output_branch, output_jump,
4         output_interseg_jump): Also emit skipped prefix warning in Intel
5         syntax mode. Name instruction in the warning text.
6         * testsuite/gas/i386/mpx-inval-1.l,
7         testsuite/gas/i386/notrackbad.l,
8         testsuite/gas/i386/x86-64-notrackbad.l: Adjust expectations.
10 2019-12-27  Jan Beulich  <jbeulich@suse.com>
12         * config/tc-i386.c (output_branch): Handle BND prefix the same
13         way as other prefixes. Emit it last before REX.
14         (output_jump): Emit BND before REX.
15         (output_interseg_jump): Don't emit REX.
16         * testsuite/gas/i386/x86-64-branch-2.s,
17         testsuite/gas/i386/x86-64-branch-3.s,
18         testsuite/gas/i386/x86-64-mpx-branch-1.s,
19         testsuite/gas/i386/x86-64-mpx-branch-2.s: Add REX.W cases.
20         * testsuite/gas/i386/x86-64-mpx-branch-2.d: Match output against
21         x86-64-mpx-branch-1.d.
22         * testsuite/gas/i386/x86-64-branch-2.d,
23         testsuite/gas/i386/x86-64-branch-3.d,
24         testsuite/gas/i386/x86-64-mpx-branch-1.d: Adjust expectations.
26 2019-12-27  Jan Beulich  <jbeulich@suse.com>
28         * config/tc-i386.c (flip_code16): New.
29         (output_branch, output_jump): Use it.
30         (i386_displacement): Restrict template set to just direct
31         branches when handling a respective operand. Don't set Disp16
32         when in Intel64 mode and there's a respective template.
33         * testsuite/gas/i386/i386.exp: Convert x86-64-branch-3 from list
34         to dump test. Drop its XFail again.
35         * testsuite/gas/i386/x86-64-branch-3.d: New.
36         * testsuite/gas/i386/x86-64-branch-3.l: Delete.
37         * testsuite/gas/i386/x86-64-branch-3.s: Add XBEGIN case.
39 2019-12-27  Jan Beulich  <jbeulich@suse.com>
41         * config/tc-i386.c (i386_addressing_mode): Declare.
42         (match_template): Don't transform displacement width flags for
43         non-indirect branches. Re-write transformation logic.
44         (i386_displacement): Also check BaseIndex when deciding whether
45         an operand belongs to a direct branch. Restrict which DispNN get
46         set.
47         (i386_finalize_displacement): Set Disp8 for JumpByte templates.
48         * config/tc-i386-intel.c (i386_intel_operand): Don't set Disp32
49         for 64-bit addressing.
50         * testsuite/gas/i386/i386.exp: XFail x86-64-branch-3.
52 2019-12-17  Alan Modra  <amodra@gmail.com>
54         * doc/as.texi: Remove mention of tic80.
56 2019-12-12  H.J. Lu  <hongjiu.lu@intel.com>
58         PR gas/25274
59         * config/tc-i386.c (optimize_encoding): Also check R12-R15
60         registers for "test $imm7, %r64/%r32/%r16 -> test $imm7, %r8"
61         optimization.
62         * testsuite/gas/i386/x86-64-optimize-3.s: Add tests for test
63         with r12.
64         * testsuite/gas/i386/x86-64-optimize-3.d: Updated.
65         * testsuite/gas/i386/x86-64-optimize-3b.d: Likewise.
67 2019-12-12  H.J. Lu  <hongjiu.lu@intel.com>
69         * testsuite/gas/i386/align-branch-1.s: New file.
70         * testsuite/gas/i386/align-branch-1a.d: Likewise.
71         * testsuite/gas/i386/align-branch-1b.d: Likewise.
72         * testsuite/gas/i386/align-branch-1c.d: Likewise.
73         * testsuite/gas/i386/align-branch-1d.d: Likewise.
74         * testsuite/gas/i386/align-branch-1e.d: Likewise.
75         * testsuite/gas/i386/align-branch-1f.d: Likewise.
76         * testsuite/gas/i386/align-branch-1g.d: Likewise.
77         * testsuite/gas/i386/align-branch-1h.d: Likewise.
78         * testsuite/gas/i386/align-branch-2.s: Likewise.
79         * testsuite/gas/i386/align-branch-2a.d: Likewise.
80         * testsuite/gas/i386/align-branch-2b.d: Likewise.
81         * testsuite/gas/i386/align-branch-2c.d: Likewise.
82         * testsuite/gas/i386/align-branch-3.d: Likewise.
83         * testsuite/gas/i386/align-branch-3.s: Likewise.
84         * testsuite/gas/i386/align-branch-4.s: Likewise.
85         * testsuite/gas/i386/align-branch-4a.d: Likewise.
86         * testsuite/gas/i386/align-branch-4b.d: Likewise.
87         * testsuite/gas/i386/align-branch-5.d: Likewise.
88         * testsuite/gas/i386/align-branch-5.s: Likewise.
89         * testsuite/gas/i386/align-branch-6.d: Likewise.
90         * testsuite/gas/i386/align-branch-6.s: Likewise.
91         * testsuite/gas/i386/align-branch-7.d: Likewise.
92         * testsuite/gas/i386/align-branch-7.s: Likewise.
93         * testsuite/gas/i386/align-branch-8.d: Likewise.
94         * testsuite/gas/i386/align-branch-8.s: Likewise.
95         * testsuite/gas/i386/x86-64-align-branch-1.s: Likewise.
96         * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
97         * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
98         * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
99         * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
100         * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
101         * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
102         * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
103         * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
104         * testsuite/gas/i386/x86-64-align-branch-2.s: Likewise.
105         * testsuite/gas/i386/x86-64-align-branch-2a.d: Likewise.
106         * testsuite/gas/i386/x86-64-align-branch-2b.d: Likewise.
107         * testsuite/gas/i386/x86-64-align-branch-2c.d: Likewise.
108         * testsuite/gas/i386/x86-64-align-branch-3.d: Likewise.
109         * testsuite/gas/i386/x86-64-align-branch-3.s: Likewise.
110         * testsuite/gas/i386/x86-64-align-branch-4.s: Likewise.
111         * testsuite/gas/i386/x86-64-align-branch-4a.d: Likewise.
112         * testsuite/gas/i386/x86-64-align-branch-4b.d: Likewise.
113         * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
114         * testsuite/gas/i386/x86-64-align-branch-6.d: Likewise.
115         * testsuite/gas/i386/x86-64-align-branch-7.d: Likewise.
116         * testsuite/gas/i386/x86-64-align-branch-7.s: Likewise.
117         * testsuite/gas/i386/x86-64-align-branch-8.d: Likewise.
118         * testsuite/gas/i386/x86-64-align-branch-8.s: Likewise.
119         * testsuite/gas/i386/i386.exp: Run new tests.
121 2019-12-12  H.J. Lu  <hongjiu.lu@intel.com>
123         * config/tc-i386.c (OPTION_MBRANCHES_WITH_32B_BOUNDARIES): New.
124         (md_longopts): Add -mbranches-within-32B-boundaries.
125         (md_parse_option): Handle -mbranches-within-32B-boundaries.
126         (md_show_usage): Add -mbranches-within-32B-boundaries.
128 2019-12-12  H.J. Lu  <hongjiu.lu@intel.com>
130         * config/tc-i386.c (_i386_insn): Add has_gotpc_tls_reloc.
131         (tls_get_addr): New.
132         (last_insn): New.
133         (align_branch_power): New.
134         (align_branch_kind): New.
135         (align_branch_bit): New.
136         (align_branch): New.
137         (MAX_FUSED_JCC_PADDING_SIZE): New.
138         (align_branch_prefix_size): New.
139         (BRANCH_PADDING): New.
140         (BRANCH_PREFIX): New.
141         (FUSED_JCC_PADDING): New.
142         (i386_generate_nops): Support BRANCH_PADDING and FUSED_JCC_PADDING.
143         (md_begin): Abort if align_branch_prefix_size <
144         MAX_FUSED_JCC_PADDING_SIZE.
145         (md_assemble): Set last_insn.
146         (maybe_fused_with_jcc_p): New.
147         (add_fused_jcc_padding_frag_p): New.
148         (add_branch_prefix_frag_p): New.
149         (add_branch_padding_frag_p): New.
150         (output_insn): Generate a BRANCH_PADDING, FUSED_JCC_PADDING or
151         BRANCH_PREFIX frag and terminate each frag to align branches.
152         (output_disp): Set i.has_gotpc_tls_reloc to TRUE for GOTPC and
153         relaxable TLS relocations.
154         (output_imm): Likewise.
155         (i386_next_non_empty_frag): New.
156         (i386_next_jcc_frag): New.
157         (i386_classify_machine_dependent_frag): New.
158         (i386_branch_padding_size): New.
159         (i386_generic_table_relax_frag): New.
160         (md_estimate_size_before_relax): Handle COND_JUMP_PADDING,
161         FUSED_JCC_PADDING and COND_JUMP_PREFIX frags.
162         (md_convert_frag): Handle BRANCH_PADDING, BRANCH_PREFIX and
163         FUSED_JCC_PADDING frags.
164         (OPTION_MALIGN_BRANCH_BOUNDARY): New.
165         (OPTION_MALIGN_BRANCH_PREFIX_SIZE): New.
166         (OPTION_MALIGN_BRANCH): New.
167         (md_longopts): Add -malign-branch-boundary=,
168         -malign-branch-prefix-size= and -malign-branch=.
169         (md_parse_option): Handle -malign-branch-boundary=,
170         -malign-branch-prefix-size= and -malign-branch=.
171         (md_show_usage): Display -malign-branch-boundary=,
172         -malign-branch-prefix-size= and -malign-branch=.
173         (i386_target_format): Set tls_get_addr.
174         (i386_cons_align): New.
175         * config/tc-i386.h (i386_cons_align): New.
176         (md_cons_align): New.
177         (i386_generic_table_relax_frag): New.
178         (md_generic_table_relax_frag): New.
179         (i386_tc_frag_data): Add u, padding_address, length,
180         max_prefix_length, prefix_length, default_prefix, cmp_size,
181         classified and branch_type.
182         (TC_FRAG_INIT): Initialize u, padding_address, length,
183         max_prefix_length, prefix_length, default_prefix, cmp_size,
184         classified and branch_type.
185         * doc/c-i386.texi: Document -malign-branch-boundary=,
186         -malign-branch= and -malign-branch-prefix-size=.
188 2019-12-12  H.J. Lu  <hongjiu.lu@intel.com>
190         * write.c (md_generic_table_relax_frag): New.  Defined to
191         relax_frag if not defined.
192         (relax_segment): Call md_generic_table_relax_frag instead of
193         relax_frag.
195 2019-12-12  Alan Modra  <amodra@gmail.com>
197         * config/tc-aarch64.c (get_aarch64_insn): Avoid signed overflow.
198         * config/tc-metag.c (parse_dalu): Likewise.
199         * config/tc-tic4x.c (md_pcrel_from): Likewise.
200         * config/tc-tic6x.c (tic6x_output_unwinding): Likewise.
201         * config/tc-csky.c (parse_fexp): Use an unsigned char temp buffer.
202         Don't use register keyword.  Avoid signed overflow and remove now
203         unneccesary char masks.  Formatting.
204         * config/tc-ia64.c (operand_match): Don't use shifts to sign extend.
205         * config/tc-mep.c (mep_apply_fix): Likewise.
206         * config/tc-pru.c (md_apply_fix): Likewise.
207         * config/tc-riscv.c (load_const): Likewise.
208         * config/tc-nios2.c (md_apply_fix): Likewise.  Don't potentially
209         truncate fixup before right shift.  Tidy BFD_RELOC_NIOS2_HIADJ16
210         calculation.
212 2019-12-12  Alan Modra  <amodra@gmail.com>
214         * config/obj-evax.c (crc32, encode_32, encode_16, decode_16):
215         Remove unnecessary prototypes.
216         (number_of_codings): Delete, use ARRAY_SIZE instead throughout.
217         (codings, decodings): Make arrays of unsigned char.
218         (crc32): Use unsigned variables.  Delete unnecessary mask.
219         (encode_32, encode_16): Return unsigned char*, and make static
220         buffer an unsigned char array.
221         (decode_16): Make arg an unsigned char*.  Remove useless casts.
222         (shorten_identifier): Use unsigned char crc_chars.
223         (is_truncated_identifier): Make ptr an unsigned char*.
225 2019-12-11  Wilco Dijkstra  <wdijkstr@arm.com>
227         * config/tc-arm.c (warn_on_restrict_it): Add new variable.
228         (it_fsm_post_encode): Check warn_on_restrict_it.
229         (arm_option_table): Add -mwarn-restrict-it/-mno-warn-restrict-it.
230         * testsuite/gas/arm/armv8-2-fp16-scalar-bad.d: Add -mwarn-restrict-it.
231         * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: Likewise.
232         * testsuite/gas/arm/armv8-a-bad.d: Likewise.
233         * testsuite/gas/arm/armv8-a-it-bad.d: Likewise.
234         * testsuite/gas/arm/armv8-r-bad.d: Likewise.
235         * testsuite/gas/arm/armv8-r-it-bad.d: Likewise.
236         * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: Likewise.
237         * testsuite/gas/arm/udf.d: Likewise.
239 2018-12-11  Jan Beulich  <jbeulich@suse.com>
241         * config/tc-i386.c (md_assemble): Extend SSE check conditional.
242         * testsuite/gas/i386/sse-check.s: Add SSE4a and SHA tests.
243         Extend GFNI tests.
244         * testsuite/gas/i386/sse-check.d: Adjust expectations.
245         * testsuite/gas/i386/sse-check-error.l,
246         testsuite/gas/i386/x86-64-sse-check-error.l: Likewise.
247         * testsuite/gas/i386/sse-check-warn.e: Likewise.
249 2019-12-10  Vladimir Murzin  <vladimir.murzin@arm.com>
251         * config/tc-arm.c (s_arm_arch): Set selected_ctx_ext_table.
252         * testsuite/gas/arm/mve-arch-ext.s: New.
253         * testsuite/gas/arm/mve-arch-ext.d: New.
255 2019-12-09  Jan Beulich  <jbeulich@suse.com>
257         * config/tc-i386-intel.c (O_oword_ptr): Move.
258         (O_xmmword_ptr): Alias to O_oword_ptr.
259         (O_fword_ptr, O_tbyte_ptr, O_ymmword_ptr, O_zmmword_ptr): Adjust
260         expansion.
261         (i386_intel_simplify, i386_intel_operand): Fold O_oword_ptr and
262         O_xmmword_ptr cases, leaving comments.
264 2019-12-09  Jan Beulich  <jbeulich@suse.com>
266         * config/tc-i386-intel.c (O_mmword_ptr): Define.
267         (i386_types): Add mmword entry.
268         (i386_intel_simplify, i386_intel_operand): Add comment.
269         * testsuite/gas/i386/intel-expr.s: Also test mmword and zmmword.
270         * testsuite/gas/i386/intelok.s: Also test "mmword ptr".
271         * testsuite/gas/i386/intel-expr.d, testsuite/gas/i386/intelok.d,
272         testsuite/gas/i386/intelok.e: Adjust expectations.
274 2019-12-09  Jan Beulich  <jbeulich@suse.com>
276         * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
277         attribute suffix instead of suffix for floating point insns when
278         handling O_near_ptr / O_far_ptr.
279         * testsuite/gas/i386/intelbad.s: Add FPU tests.
280         * testsuite/gas/i386/intelbad.l: Adjust expectations.
282 2019-12-09  Jan Beulich  <jbeulich@suse.com>
284         * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
285         attribute suffix instead of suffix uniformly for insns not
286         possibly accepting "tbyte ptr" explicitly.
288 2019-12-09  Jan Beulich  <jbeulich@suse.com>
290         * config/tc-i386-intel.c (i386_intel_operand): Don't set suffix
291         for floating point insns when handling O_fword_ptr.
293 2019-12-09  Jan Beulich  <jbeulich@suse.com>
295         * config/tc-i386-intel.c (i386_intel_operand): Don't special
296         case LDS et al when handling O_word_ptr.
298 2019-12-08  Alan Modra  <amodra@gmail.com>
300         * testsuite/gas/aarch64/bfloat16.d: Match 32-bit and 64-bit output.
301         * testsuite/gas/aarch64/dgh.d: Likewise.
302         * testsuite/gas/aarch64/f32mm.d: Likewise.
303         * testsuite/gas/aarch64/f64mm.d: Likewise.
304         * testsuite/gas/aarch64/i8mm.d: Likewise.
305         * testsuite/gas/aarch64/pac_ab_key.d: Likewise.
306         * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
307         * testsuite/gas/aarch64/reloc-prel_g0.d: Likewise.
308         * testsuite/gas/aarch64/reloc-prel_g0_nc.d: Likewise.
309         * testsuite/gas/aarch64/reloc-prel_g1.d: Likewise.
310         * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Likewise.
311         * testsuite/gas/aarch64/sve-movprfx-mm.d: Likewise.
312         * testsuite/gas/aarch64/sve2.d: Likewise.
314 2019-12-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
316         * dw2gencfi.c (cfi_pseudo_table): Add cfi_negate_ra_state.
317         * testsuite/gas/aarch64/pac_negate_ra_state.s: New file.
318         * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
320 2019-12-05  Jan Beulich  <jbeulich@suse.com>
322         * config/tc-aarch64.c (aarch64_features): Drop redundant AES and
323         SHA2 flags from "crypto" entry.
325 2019-12-05  Jan Beulich  <jbeulich@suse.com>
327         * config/tc-aarch64.c (aarch64_features): Make SHA2 a prereq of
328         SHA3.
329         * testsuite/gas/aarch64/crypto.s
330         * testsuite/gas/aarch64/crypto-directive.d: Refer to crypto.d
331         for actual output.
332         * testsuite/gas/aarch64/illegal-crypto-nofp.l: Relax
333         expectations.
334         * testsuite/gas/aarch64/crypto-directive2.d,
335         testsuite/gas/aarch64/crypto-directive3.d: New.
337 2019-12-04  Jan Beulich  <jbeulich@suse.com>
339         * config/tc-i386-intel.c (i386_intel_operand): Handle LFS et al
340         as well as LGDT at al when processing O_tbyte_ptr.
341         * testsuite/gas/i386/intelbad.s: Add LDS et al cases.
342         * testsuite/gas/i386/x86-64-intel64.s,
343         * testsuite/gas/i386/x86-64-opcode.s:  Add LFS et al cases.
344         * testsuite/gas/i386/ilp32/x86-64-intel64.d: Add -mintel64
345         command line option and fold expectations with parent dir test.
346         * testsuite/gas/i386/x86-64-intel64.d: Add -mintel64 command
347         line option and adjust expectations.
348         * testsuite/gas/i386/intelbad.l,
349         testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
351 2019-12-04  Jan Beulich  <jbeulich@suse.com>
353         * config/tc-i386-intel.c (i386_intel_operand): Also handle DWORD
354         with 64-bit mode branches.
355         * testsuite/gas/i386/x86-64-jump.s: Extend Intel syntax branch
356         operand coverage.
357         * testsuite/gas/i386/x86-64-jump.d: Adjust expectations.
359 2019-12-04  Jan Beulich  <jbeulich@suse.com>
361         * config/tc-i386.c (output_insn): Don't consider Cpu* settings
362         when setting GNU_PROPERTY_X86_FEATURE_2_MMX.
364 2019-12-04  Jan Beulich  <jbeulich@suse.com>
366         * testsuite/gas/i386/movdir.s: Add Intel syntax case with
367         operand size specifier.
368         * testsuite/gas/i386/x86-64-movdir.s: Add Intel syntax cases
369         with operand size specifier and wit 32-bit operands.
370         * testsuite/gas/i386/movdir-intel.d,
371         testsuite/gas/i386/movdir.d,
372         testsuite/gas/i386/x86-64-movdir-intel.d,
373         testsuite/gas/i386/x86-64-movdir.d: Adjust expectations.
375 2019-12-04  Jan Beulich  <jbeulich@suse.com>
377         * config/tc-i386.c (process_suffix): Arrange for insns with a
378         single non-GPR register operand to not have its suffix guessed
379         from GPR operands. Extend DefaultSize handling to cover PUSH/POP
380         of segment registers.
381         * testsuite/gas/i386/general.s: Add PUSH/POP sreg to .code16gcc
382         set of insns.
383         * testsuite/gas/i386/general.l: Adjust expectations.
385 2019-12-04  Jan Beulich  <jbeulich@suse.com>
387         * config/tc-i386.c (process_suffix): Exclude SYSRET alongside
388         FLDENV et al.
389         * testsuite/gas/i386/general.s: Expand .code16gcc set of insns.
390         * testsuite/gas/i386/general.l: Adjust expectations.
392 2019-11-22  Andrew Burgess  <andrew.burgess@embecosm.com>
394         * as.c (flag_dwarf_cie_version): Change initial value to -1, and
395         update comment.
396         * config/tc-riscv.c (riscv_after_parse_args): Set
397         flag_dwarf_cie_version if it has not already been set.
398         * dwarf2dbg.c (dwarf2_init): Initialise flag_dwarf_cie_version if
399         needed.
400         * testsuite/gas/riscv/default-cie-version.d: New file.
401         * testsuite/gas/riscv/default-cie-version.s: New file.
403 2019-11-22  Andrew Burgess  <andrew.burgess@embecosm.com>
405         * dw2gencfi.c (output_cie): Error on return column overflow.
406         * testsuite/gas/riscv/cie-rtn-col-1.d: New file.
407         * testsuite/gas/riscv/cie-rtn-col-3.d: New file.
408         * testsuite/gas/riscv/cie-rtn-col.s: New file.
410 2019-11-22  Andrew Burgess  <andrew.burgess@embecosm.com>
412         * config/tc-riscv.c (tc_riscv_regname_to_dw2regnum): Lookup CSR
413         names too.
414         * testsuite/gas/riscv/csr-dw-regnums.d: New file.
415         * testsuite/gas/riscv/csr-dw-regnums.s: New file.
417 2019-11-22  Andrew Burgess  <andrew.burgess@embecosm.com>
419         * config/tc-riscv.c (struct regname): Delete.
420         (hash_reg_names): Handle value as 'void *'.
422 2019-11-25  Andrew Pinski  <apinski@marvell.com>
424         * config/tc-aarch64.c (md_begin): Use correct
425         hash table for uppercase version of hint.
426         * testsuite/gas/aarch64/system-2.s: Extend psb case to uppercase.
427         * testsuite/gas/aarch64/system-2.d: Update.
429 2019-11-25  Christian Eggers  <ceggers@gmx.de>
431         * as.h: Define SEC_OCTETS as SEC_ELF_OCTETS if OBJ_ELF.
432         * dwarf2dbg.c: (dwarf2_finish): Set section flag SEC_OCTETS for
433         .debug_line, .debug_info, .debug_abbrev, .debug_aranges, .debug_str
434         and .debug_ranges sections.
435         * write.c (maybe_generate_build_notes): Set section flag
436         SEC_OCTETS for .gnu.build.attributes section.
437         * frags.c (frag_now_fix): Don't divide by OCTETS_PER_BYTE if
438         SEC_OCTETS is set.
439         * symbols.c (resolve_symbol_value): Likewise.
441 2019-11-25  Christian Eggers  <ceggers@gmx.de>
443         * dwarf2dbg.c (out_set_addr): Revert 2019-03-13 change.
444         (out_debug_line, out_debug_aranges, out_debug_info): Likewise.
445         * symbols.h (symbol_set_value_now_octets, symbol_octets_p): Remove.
446         * symbols.c (struct symbol_flags): Remove member sy_octets.
447         (symbol_temp_new_now_octets): Don't set symbol_flags::sy_octets.
448         (resolve_symbol_value): Revert: Return octets instead of bytes if
449         sy_octets is set.
450         (symbol_set_value_now_octets): Remove.
451         (symbol_octets_p): Remove.
453 2019-11-22  Mihail Ionescu  <mihail.ionescu@arm.com>
455         * config/tc-arm.c (arm_ext_crc): New.
456         (crc_ext_armv8): Remove.
457         (insns): Rename crc_ext_armv8 to arm_ext_crc.
458         (arm_cpus): Replace CRC_EXT_ARMV8 with ARM_EXT2_CRC.
459         (armv8a_ext_table, armv8r_ext_table,
460         arm_option_extension_value_table): Redefine the crc
461         extension in terms of ARM_EXT2_CRC.
462         * gas/testsuite/gas/arm/crc-ext.s: New.
463         * gas/testsuite/gas/arm/crc-ext.d: New.
465 2019-11-20  Alan Modra  <amodra@gmail.com>
467         PR 24944
468         * atof-generic.c (atof_generic): Increase decimal guard digits.
469         * testsuite/gas/i386/fp.s: Add more tests.
470         * testsuite/gas/i386/fp.d: Update.
472 2019-11-18  Andrew Burgess  <andrew.burgess@embecosm.com>
474         * as.c (parse_args): Parse --gdwarf-cie-version option.
475         (flag_dwarf_cie_version): New variable.
476         * as.h (flag_dwarf_cie_version): Declare.
477         * dw2gencfi.c (output_cie): Switch from DW_CIE_VERSION to
478         flag_dwarf_cie_version.
479         * doc/as.texi (Overview): Document --gdwarf-cie-version.
480         * NEWS: Likewise.
481         * testsuite/gas/cfi/cfi.exp: Add new tests.
482         * testsuite/gas/cfi/cie-version-0.d: New file.
483         * testsuite/gas/cfi/cie-version-1.d: New file.
484         * testsuite/gas/cfi/cie-version-2.d: New file.
485         * testsuite/gas/cfi/cie-version-3.d: New file.
486         * testsuite/gas/cfi/cie-version-4.d: New file.
487         * testsuite/gas/cfi/cie-version.s: New file.
489 2019-11-14  Jan Beulich  <jbeulich@suse.com>
491         * config/tc-i386.c (operand_size_match, md_assemble,
492         parse_insn, match_template, process_suffix, output_jump,
493         output_insn, i386_displacement): Adjust jump* field use/
494         handling.
495         * config/tc-i386-intel.c (i386_intel_operand): Likewise.
497 2019-11-14  Jan Beulich  <jbeulich@suse.com>
499         * config/tc-i386.c (struct _i386_insn): Add jumpabsolute field.
500         (operand_type_match): Drop jumpabsolute use.
501         (type_names): Remove OPERAND_TYPE_JUMPABSOLUTE entry.
502         (process_suffix, i386_displacement): Adjust jumpabsolute uses.
503         (match_template, i386_att_operand): Adjust jumpabsolute
504         handling.       
505         * config/tc-i386-intel.c (i386_intel_operand): Likewise.
507 2019-11-14  Jan Beulich  <jbeulich@suse.com>
509         * config/tc-i386.c (operand_size_match): Adjust anysize use.
511 2019-11-14  Jan Beulich  <jbeulich@suse.com>
513         * testsuite/gas/i386/intel-cmps32.d,
514         testsuite/gas/i386/intel-cmps64.d: Correct regexp closing
515         parentheses placement.
517 2019-11-14  Jan Beulich  <jbeulich@suse.com>
519         * testsuite/gas/i386/intel-cmps.s,
520         testsuite/gas/i386/intel-movs.s: Extend.
521         * testsuite/gas/i386/intel-cmps32.d,
522         testsuite/gas/i386/intel-cmps64.d,
523         testsuite/gas/i386/intel-movs32.d,
524         testsuite/gas/i386/intel-movs64.d: Adjust expectations.
525         * testsuite/gas/i386/intel-cmps16.d,
526         testsuite/gas/i386/intel-movs16.d: New.
527         * testsuite/gas/i386/i386.exp: Run new tests.
529 2019-11-12  Nelson Chu  <nelson.chu@sifive.com>
531         * testsuite/gas/riscv/insn.d: Add the f extension to -march option.
533 2019-11-12  Mihail Ionescu  <mihail.ionescu@arm.com>
535         * config/tc-arm.c (do_vfp_nsyn_push): Move in order to enable it for
536         both fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vstm
537         instruction for mve_ext.
538         (do_vfp_nsyn_pop): Move in order to enable it for both
539         fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vldm
540         instruction for mve_ext.
541         (do_neon_ldm_stm): Add fpu_vfp_ext_v1 and mve_ext checks.
542         (insns): Enable vldm, vldmia, vldmdb, vstm, vstmia, vstmdb, vpop,
543         vpush, and fldd, fstd, flds, fsts for arm_ext_v6t2 instead
544         of fpu_vfp_ext_v1xd.
545         * testsuite/gas/arm/v8_1m-mve.s: New.
546         * testsuite/gas/arm/v8_1m-mve.d: New.
548 2019-11-12  Mihail Ionescu  <mihail.ionescu@arm.com>
550         * gas/config/tc-arm.c (do_neon_mvn): Allow mve_ext cmode=0xd.
551         * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.s: New test.
552         * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.d: Likewise.
554 2019-11-12  Mihail Ionescu  <mihail.ionescu@arm.com>
556         * config/tc-arm.c (s_arm_fpu): Clear selected_cpu fpu bits.
557         (fpu_any): Remove OBJ_ELF guards.
558         * testsuite/gas/arm/fpu-rst.s: New.
559         * testsuite/gas/arm/fpu-rst.d: New.
560         * testsuite/gas/arm/fpu-rst.l: New.
562 2019-11-12  Jan Beulich  <jbeulich@suse.com>
564         * config/tc-i386.c (type_names): Remove OPERAND_TYPE_ESSEG
565         entry.
566         (md_assemble): Adjust isstring field use. Add assertion.
567         (check_string): Mostly re-write.
568         (i386_index_check): Adjust isstring field use and related code.
570 2019-11-12  Jan Beulich  <jbeulich@suse.com>
572         * config/tc-i386.c (process_immext): Remove SSE3, SVME, and
573         MWAITX special case logic.
574         (process_suffix): Replace immext field uses by instance ones.
575         * testsuite/gas/i386/arch-13.s,
576         testsuite/gas/i386/x86-64-arch-3.s: Add CLZERO with operand
577         cases.
578         * testsuite/gas/i386/svme.s: Add 16-bit operand cases.
579         * testsuite/gas/i386/x86-64-specific-reg.s: Drop FIXME comments.
580         * testsuite/gas/i386/arch-13.d,
581         testsuite/gas/i386/mwaitx-reg.l, testsuite/gas/i386/svme.d,
582         testsuite/gas/i386/x86-64-arch-3.d,
583         testsuite/gas/i386/x86-64-mwaitx-reg.l,
584         testsuite/gas/i386/x86-64-specific-reg.l: Adjust expectations.
586 2019-11-12  Jan Beulich  <jbeulich@suse.com>
588         * config/tc-i386.c (operand_type_set, operand_type_and,
589         operand_type_and_not, operand_type_or, operand_type_xor): Handle
590         "instance" field specially.
591         (operand_size_match, md_assemble, match_template, process_suffix,
592         check_byte_reg, check_long_reg, check_qword_reg, check_word_reg,
593         process_operands, build_modrm_byte): Use "instance" instead of
594         "acc" / "inoutportreg" / "shiftcount" fields.
595         (optimize_imm): Adjust comment.
597 2019-11-11  Jan Beulich  <jbeulich@suse.com>
599         * testsuite/gas/aarch64/illegal-sve2.s: Add smaxp/sminp cases
600         with mismatched 1st and 3rd operands.
601         * testsuite/gas/aarch64/illegal-sve2.l: Adjust expectations.
603 2019-11-08  H.J. Lu  <hongjiu.lu@intel.com>
605         PR gas/25167
606         * config/tc-i386.c (match_template): Don't check instruction
607         suffix set from operand.
608         * testsuite/gas/i386/code16.d: New file.
609         * testsuite/gas/i386/code16.s: Likewise.
610         * testsuite/gas/i386/i386.exp: Run code16.
612 2019-11-08  Jan Beulich  <jbeulich@suse.com>
614         * config/tc-i386.c (optimize_encoding, build_modrm_byte,
615         check_VecOperations, parse_real_register): Use "class" instead
616         of "regmask" and "regbnd" fields.
618 2019-11-08  Jan Beulich  <jbeulich@suse.com>
620         * config/tc-i386.c (match_mem_size, operand_size_match,
621         operand_type_register_match, pi, check_VecOperands, match_template,
622         check_byte_reg, check_long_reg, check_qword_reg, process_operands,
623         build_modrm_byte, parse_real_register): Use "class" instead of
624         "regsimd" / "regmmx" fields.
626 2019-11-08  Jan Beulich  <jbeulich@suse.com>
628         * config/tc-i386.c (pi, check_byte_reg, build_modrm_byte,
629         parse_real_register): Use "class" instead of "control"/"debug"/
630         "test" fields.
632 2019-11-08  Jan Beulich  <jbeulich@suse.com>
634         * config/tc-i386.c (pi, check_byte_reg, process_operands,
635         build_modrm_byte, i386_att_operand, parse_real_register): Use
636         "class" instead of "sreg" field.
637         * config/tc-i386-intel.c (i386_intel_simplify_register,
638         i386_intel_operand): Likewise.
640 2019-11-08  Jan Beulich  <jbeulich@suse.com>
642         * config/tc-i386.c (operand_type_set, operand_type_and,
643         operand_type_and_not, operand_type_or, operand_type_xor): Handle
644         "class" field specially.
645         (anyimm): New.
646         (operand_type_check, operand_size_match,
647         operand_type_register_match, pi, md_assemble, is_short_form,
648         process_suffix, check_byte_reg, check_long_reg, check_qword_reg,
649         check_word_reg, process_operands, build_modrm_byte): Use "class"
650         instead of "reg" field.
651         (optimize_imm): Likewise. Reduce redundancy. Adjust calculation
652         of "allowed".
654 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
656         * testsuite/gas/aarch64/dgh.s: New test.
657         * testsuite/gas/aarch64/dgh.d: New test.
659 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
661         * config/tc-arm.c (arm_ext_i8mm): New feature set.
662         (do_vusdot): New.
663         (do_vsudot): New.
664         (do_vsmmla): New.
665         (do_vummla): New.
666         (insns): Add vsmmla, vummla, vusmmla, vusdot, vsudot mnemonics.
667         (armv86a_ext_table): Add i8mm extension.
668         (arm_extensions): Move bf16 extension to context sensitive table.
669         (armv82a_ext_table, armv84a_ext_table, armv85a_ext_table):
670         Move bf16 extension to context sensitive table.
671         (armv86a_ext_table): Add i8mm extension.
672         * doc/c-arm.texi: Document i8mm extension.
673         * testsuite/gas/arm/i8mm.s: New test.
674         * testsuite/gas/arm/i8mm.d: New test.
675         * testsuite/gas/arm/bfloat17-cmdline-bad-3.d: Update test.
677 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
679         * config/tc-aarch64.c: Add new arch fetures to suppport the mm extension.
680         (parse_operands): Add new operand.
681         * testsuite/gas/aarch64/i8mm.s: New test.
682         * testsuite/gas/aarch64/i8mm.d: New test.
683         * testsuite/gas/aarch64/f32mm.s: New test.
684         * testsuite/gas/aarch64/f32mm.d: New test.
685         * testsuite/gas/aarch64/f64mm.s: New test.
686         * testsuite/gas/aarch64/f64mm.d: New test.
687         * testsuite/gas/aarch64/sve-movprfx-mm.s: New test.
688         * testsuite/gas/aarch64/sve-movprfx-mm.d: New test.
690 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
691 2019-11-07  Barnaby Wilks  <barnaby.wilks@arm.com>
693         * config/tc-aarch64.c (md_atof): Add encoding for the bfloat16 format.
694         * testsuite/gas/aarch64/bfloat16-directive-le.d: New test.
695         * testsuite/gas/aarch64/bfloat16-directive-be.d: New test.
696         * testsuite/gas/aarch64/bfloat16-directive.s: New test.
698 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
699 2019-11-07  Barnaby Wilks  <barnaby.wilks@arm.com>
701         * config/tc-arm.c (md_atof): Add encoding for bfloat16
702         * testsuite/gas/arm/bfloat16-directive-le.d: New test.
703         * testsuite/gas/arm/bfloat16-directive-be.d: New test.
704         * testsuite/gas/arm/bfloat16-directive.s: New test.
706 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
707 2019-11-07  Barnaby Wilks  <barnaby.wilks@arm.com>
709         * as.h (atof_ieee_detail): Add prototype for atof_ieee_detail function.
710         (atof_ieee): Move some code into the atof_ieee_detail function.
711         (atof_ieee_detail): Add function that provides a higher level of
712         control over generating IEEE-like numbers.
714 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
715 2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>
717         * config/tc-arm.c (arm_archs): Add armv8.6-a option.
718         (cpu_arch_ver): Add TAG_CPU_ARCH_V8 tag for Armv8.6-a.
719         * doc/c-arm.texi (-march): New armv8.6-a arch.
720         * config/tc-arm.c (arm_ext_bf16): New feature set.
721         (enum neon_el_type): Add NT_bfloat value.
722         (B_MNEM_vfmat, B_MNEM_vfmab): New bfloat16 encoder
723         helpers.
724         (BAD_BF16): New message.
725         (parse_neon_type): Add bf16 type specifier.
726         (enum neon_type_mask): Add N_BF16 type.
727         (type_chk_of_el_type): Account for NT_bfloat.
728         (el_type_of_type_chk): Account for N_BF16.
729         (neon_three_args): Split out from neon_three_same.
730         (neon_three_same): Part split out into neon_three_args.
731         (CVT_FLAVOUR_VAR): Add bf16_f32 cvt flavour.
732         (do_neon_cvt_1): Account for vcvt.bf16.f32.
733         (do_bfloat_vmla): New.
734         (do_mve_vfma): New function to deal with the mnemonic clash between the BF16
735         vfmat and the MVE vfma in a VPT block with a 't'rue condition.
736         (do_neon_cvttb_1): Account for vcvt{t,b}.bf16.f32.
737         (do_vdot): New
738         (do_vmmla): New
739         (insns): Add vdot and vmmla mnemonics.
740         (arm_extensions): Add "bf16" extension.
741         * doc/c-arm.texi: Document "bf16" extension.
742         * testsuite/gas/arm/attr-march-armv8_6-a.d: New test.
743         * testsuite/gas/arm/bfloat16-bad.d: New test.
744         * testsuite/gas/arm/bfloat16-bad.l: New test.
745         * testsuite/gas/arm/bfloat16-bad.s: New test.
746         * testsuite/gas/arm/bfloat16-cmdline-bad-2.d: New test.
747         * testsuite/gas/arm/bfloat16-cmdline-bad-3.d: New test.
748         * testsuite/gas/arm/bfloat16-cmdline-bad.d: New test.
749         * testsuite/gas/arm/bfloat16-neon.s: New test.
750         * testsuite/gas/arm/bfloat16-non-neon.s: New test.
751         * testsuite/gas/arm/bfloat16-thumb-bad.d: New test.
752         * testsuite/gas/arm/bfloat16-thumb-bad.l: New test.
753         * testsuite/gas/arm/bfloat16-thumb.d: New test.
754         * testsuite/gas/arm/bfloat16-vfp.d: New test.
755         * testsuite/gas/arm/bfloat16.d: New test.
756         * testsuite/gas/arm/bfloat16.s: New test.
758 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
759 2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>
761         * config/tc-aarch64.c (vectype_to_qualifier): Special case the
762         S_2H operand qualifier.
763         * doc/c-aarch64.texi: Document bf16 extension.
764         * testsuite/gas/aarch64/bfloat16.d: New test.
765         * testsuite/gas/aarch64/bfloat16.s: New test.
766         * testsuite/gas/aarch64/illegal-bfloat16.d: New test.
767         * testsuite/gas/aarch64/illegal-bfloat16.l: New test.
768         * testsuite/gas/aarch64/illegal-bfloat16.s: New test.
769         * testsuite/gas/aarch64/sve-bfloat-movprfx.s: New test.
770         * testsuite/gas/aarch64/sve-bfloat-movprfx.d: New test.
772 2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
773 2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>
775         * config/tc-aarch64.c (armv8.6-a): New arch.
776         * doc/c-aarch64.texi (armv8.6-a): Document new arch.
778 2019-11-07  Jan Beulich  <jbeulich@suse.com>
780         * config/tc-i386.c (cpu_arch): Add .rdpru and .mcommit entries.
781         * doc/c-i386.texi: Mention rdpru and mcommit.
782         * testsuite/gas/i386/arch-13.s,
783         testsuite/gas/i386/x86-64-arch-3.s: Add mcommit and rdpru cases.
784         * testsuite/gas/i386/arch-13.d,
785         testsuite/gas/i386/x86-64-arch-3.d: Extend -march=. Adjust
786         expectations.
787         * testsuite/gas/i386/arch-13-znver1.d: Extend -march=. Redirect
788         expectations to arch-13.d.
789         * testsuite/gas/i386/arch-13-znver2.d: Redirect expectations to
790         arch-13.d.
791         testsuite/gas/i386/x86-64-arch-3-znver1.d: Extend -march=.
793 2019-11-07  Jan Beulich  <jbeulich@suse.com>
795         * testsuite/gas/i386/x86-64-arch-3.s: Add monitorx/mwaitx cases
796         with canonical operand sizes.
797         * testsuite/gas/i386/x86-64-sse3.s: Add monitor/mwait cases with
798         canonical operand sizes.
799         * testsuite/gas/i386/x86-64-arch-3-znver1.d,
800         testsuite/gas/i386/x86-64-arch-3-znver2.d: Redirect expectations
801         to x86-64-arch-3.d.
802         * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Redirect
803         expectations to parent dir's x86-64-sse-noavx.d.
804         * testsuite/gas/i386/ilp32/x86-64-sse3.d: Redirect expectations
805         to to parent dir's x86-64-sse3.d.
806         * testsuite/gas/i386/x86-64-arch-3.d,
807         testsuite/gas/i386/x86-64-mwaitx-bdver4.d,
808         testsuite/gas/i386/x86-64-sse-noavx.d,
809         testsuite/gas/i386/x86-64-sse3.d,
810         testsuite/gas/i386/x86-64-suffix.d: Adjust expectations.
812 2019-11-04  Jan Beulich  <jbeulich@suse.com>
814         * config/tc-i386.c (process_operands): Handle ShortForm insns
815         later, splitting out their segment register sub-form.
817 2019-10-31  H.J. Lu  <hongjiu.lu@intel.com>
819         * testsuite/gas/i386/general.s: Add .code16gcc fldenv tests.
820         * testsuite/gas/i386/general.l: Updated.
822 2019-10-31  Mihail Ionescu  <mihail.ionescu@arm.com>
824         * config/tc-arm.c (selected_ctx_ext_table) New static variable.
825         (arm_parse_arch): Set context sensitive extension table based on the
826         chosen base architecture.
827         (s_arm_arch_extension): Change to lookup extensions in the new context
828         sensitive tables.
829         * gas/testsuite/gas/arm/mve-ext.s: New.
830         * gas/testsuite/gas/arm/mve-ext.d: New.
831         * gas/testsuite/gas/arm/mvefp-ext.s: New.
832         * gas/testsuite/gas/arm/mvefp-ext.d: New.
834 2019-10-30  Delia Burduv  <Delia.Burduv@arm.com>
836         * config/tc-aarch64.c (parse_address_main): Accept the omission of
837         the immediate argument for ldraa and ldrab as a shorthand for the
838         immediate being 0.
839         * testsuite/gas/aarch64/ldraa-ldrab-no-offset.d: New test.
840         * testsuite/gas/aarch64/ldraa-ldrab-no-offset.s: New test.
841         * testsuite/gas/aarch64/illegal-ldraa.s: Modified to accept the
842         writeback form with no offset.
843         * testsuite/gas/aarch64/illegal-ldraa.s: Removed missing offset
844         error.
846 2019-10-30  Jan Beulich  <jbeulich@suse.com>
848         * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.s,
849         testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.s,
850         testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.s: New.
851         * testsuite/gas/i386/i386.exp: Run new tests.
853 2019-10-30  Jan Beulich  <jbeulich@suse.com>
855         * config/tc-i386.c (optimize_encoding): Adjust opcodes compared
856         against. Adjust replacement opcode and clear .w.
858 2019-10-29  Alan Modra  <amodra@gmail.com>
860         PR 25125
861         * dw2gencfi.c (output_cfi_insn): Don't allow DW_CFA_advance_loc4
862         to be placed in a different frag to the rs_cfa.
864 2019-10-26  John David Anglin  <danglin@gcc.gnu.org>
866         PR gas/25121
867         * config/tc-hppa.c (tc_gen_reloc): Cast some enums to int.
868         (md_assemble): Likewise.
870 2019-10-26  Alan Modra  <amodra@gmail.com>
872         PR 25125
873         * dw2gencfi.c (output_cfi_insn): Don't output DW_CFA_advance_loc+0.
874         * ehopt.c (eh_frame_estimate_size_before_relax): Return -1 for
875         an advance_loc of zero.
876         (eh_frame_relax_frag): Translate fr_subtype of 7 to size -1.
877         (eh_frame_convert_frag): Handle fr_subtype of 7.  Abort on
878         unexpected fr_subtype.
880 2019-10-25  Alan Modra  <amodra@gmail.com>
882         PR gas/25125
883         PR gas/12049
884         * write.c (relax_frag): Correct calculation of delta for
885         positive branches where "stretch" would make the branch
886         negative.  Return zero immediately in that case.  Correct
887         TC_PCREL_ADJUST comment.
889 2019-10-16  Alan Modra  <amodra@gmail.com>
891         * config/tc-xtensa.c (xg_order_trampoline_chain_entry): Don't
892         call S_GET_VALUE multiple times for a symbol.  Rearrange code
893         so it is obvious what is the primary sort key.
894         (xg_order_trampoline_chain): Similarly.
896 2019-10-15  Alan Modra  <amodra@gmail.com>
898         * config/tc-nds32.c (nds32_set_section_relocs): Use relocs and n
899         parameters rather than equivalent sec->orelocation and
900         sec->reloc_count.  Don't sort for n <= 1.  Tidy.
902 2019-10-09  Nick Clifton  <nickc@redhat.com>
904         PR 25041
905         * testsuite/gas/avr/pr25041.s: New test.
906         * testsuite/gas/avr/pr25041.d: New test driver.
908 2019-10-07  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
910         * config/tc-msp430.c (md_parse_option): Set lower_data_region_only
911         to FALSE if the data region is set to "upper", "either" or "none".
912         (msp430_object_attribute): New.
913         (md_pseudo_table): Handle .mspabi_attribute and .gnu_attribute.
914         (msp430_md_end): Replace hard-coded attribute values with enums.
915         Handle data region object attribute.
916         * doc/as.texi: Document MSP430 Data Region object attribute.
917         * doc/c-msp430.texi: Document the .mspabi_attribute directive.
918         * testsuite/gas/msp430/attr-430-small-bad.d: New test.
919         * testsuite/gas/msp430/attr-430-small-bad.l: New test.
920         * testsuite/gas/msp430/attr-430-small-good.d: New test.
921         * testsuite/gas/msp430/attr-430-small.s: New test.
922         * testsuite/gas/msp430/attr-430x-large-any-bad.d: New test.
923         * testsuite/gas/msp430/attr-430x-large-any-bad.l: New test.
924         * testsuite/gas/msp430/attr-430x-large-any-good.d: New test.
925         * testsuite/gas/msp430/attr-430x-large-any.s: New test.
926         * testsuite/gas/msp430/attr-430x-large-lower-bad.d: New test.
927         * testsuite/gas/msp430/attr-430x-large-lower-bad.l: New test.
928         * testsuite/gas/msp430/attr-430x-large-lower-good.d: New test.
929         * testsuite/gas/msp430/attr-430x-large-lower.s: New test.
930         * testsuite/gas/msp430/msp430.exp: Run new tests.
932 2019-10-07  Jan Beulich  <jbeulich@suse.com>
934         * config/tc-i386.c (check_string): Make reported operand number
935         depend on Intel syntax.
936         * testsuite/gas/i386/intel-cmps.s,
937         testsuite/gas/i386/intel-cmps32.d,
938         testsuite/gas/i386/intel-cmps64.d: New.
939         * testsuite/gas/i386/i386.exp: Run new tests.
940         * testsuite/gas/i386/intel-movs.s: Extend.
941         * testsuite/gas/i386/intel-movs32.d,
942         testsuite/gas/i386/intel-movs64.d: Adjust expectations.
943         * testsuite/gas/i386/string-bad.l: Tighten expectations.
945 2019-09-24  Tamar Christina  <tamar.christina@arm.com>
947         PR gas/24991
948         * config/tc-arm.c (out_of_range_p): New.
949         (md_apply_fix): Use it in BFD_RELOC_THUMB_PCREL_BRANCH9,
950         BFD_RELOC_THUMB_PCREL_BRANCH12, BFD_RELOC_THUMB_PCREL_BRANCH20,
951         BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_THUMB_PCREL_BRANCH25
952         * testsuite/gas/arm/pr24991.d: New test.
953         * testsuite/gas/arm/pr24991.l: New test.
954         * testsuite/gas/arm/pr24991.s: New test.
956 2019-09-23  Alan Modra  <amodra@gmail.com>
958         * config/obj-ecoff.c: Include ecoff-bfd.h.
959         * config/obj-elf.c: Likewise.
961 2019-09-23  Alan Modra  <amodra@gmail.com>
963         * config/tc-arm.c: Include cpu-arm.h.
965 2019-09-21  Alan Modra  <amodra@gmail.com>
967         * config/tc-i386.c (md_parse_option): Fix warning on vexwig assignment.
969 2019-09-20  Alan Modra  <amodra@gmail.com>
971         * config/tc-tic6x.c (tc_gen_reloc): Correct common symbol check.
973 2018-09-20  Jan Beulich  <jbeulich@suse.com>
975         PR gas/25012
976         * config/tc-i386.c (process_operands): Adjust handling of
977         PUSH/POP of segment registers.
978         * testsuite/gas/i386/x86-64-opcode.s: Add PUSHq/POPq case with
979         %fs/%gs operands. Add PUSHF/POPF case without suffix.
980         * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
982 2019-09-19  Matthew Malcomson  <matthew.malcomson@arm.com>
984         * NEWS: Add SVE2 and TME entries.
986 2019-09-18  Alan Modra  <amodra@gmail.com>
988         * as.c, * as.h, * dw2gencfi.c, * dwarf2dbg.c, * ecoff.c,
989         * read.c, * stabs.c, * subsegs.c, * subsegs.h, * write.c,
990         * config/obj-coff-seh.c, * config/obj-coff.c, * config/obj-ecoff.c,
991         * config/obj-elf.c, * config/obj-macho.c, * config/obj-som.c,
992         * config/tc-aarch64.c, * config/tc-alpha.c, * config/tc-arc.c,
993         * config/tc-arm.c, * config/tc-avr.c, * config/tc-bfin.c,
994         * config/tc-bpf.c, * config/tc-d10v.c, * config/tc-d30v.c,
995         * config/tc-epiphany.c, * config/tc-fr30.c, * config/tc-frv.c,
996         * config/tc-h8300.c, * config/tc-hppa.c, * config/tc-i386.c,
997         * config/tc-ia64.c, * config/tc-ip2k.c, * config/tc-iq2000.c,
998         * config/tc-lm32.c, * config/tc-m32c.c, * config/tc-m32r.c,
999         * config/tc-m68hc11.c, * config/tc-mep.c, * config/tc-microblaze.c,
1000         * config/tc-mips.c, * config/tc-mmix.c, * config/tc-mn10200.c,
1001         * config/tc-mn10300.c, * config/tc-msp430.c, * config/tc-mt.c,
1002         * config/tc-nds32.c, * config/tc-or1k.c, * config/tc-ppc.c,
1003         * config/tc-pru.c, * config/tc-rl78.c, * config/tc-rx.c,
1004         * config/tc-s12z.c, * config/tc-s390.c, * config/tc-score.c,
1005         * config/tc-score7.c, * config/tc-sh.c, * config/tc-sparc.c,
1006         * config/tc-spu.c, * config/tc-tic4x.c, * config/tc-tic54x.c,
1007         * config/tc-tic6x.c, * config/tc-tilegx.c, * config/tc-tilepro.c,
1008         * config/tc-v850.c, * config/tc-visium.c, * config/tc-wasm32.c,
1009         * config/tc-xc16x.c, * config/tc-xgate.c, * config/tc-xstormy16.c,
1010         * config/tc-xtensa.c, * config/tc-z8k.c: Update throughout for
1011         bfd section macro and function changes.
1012         * write.c (compress_debug): Use bfd_rename_section.
1014 2019-09-18  Alan Modra  <amodra@gmail.com>
1016         * symbols.c (S_IS_LOCAL): Update bfd_get_section to
1017         bfd_asymbol_section.
1019 2019-09-18  Simon Marchi  <simon.marchi@polymtl.ca>
1021         * Makefile.in: Re-generate.
1022         * configure: Re-generate.
1023         * doc/Makefile.in: Re-generate.
1025 2019-09-17  Maxim Blinov  <maxim.blinov@embecosm.com>
1027         * config/tc-riscv.c (riscv_multi_subset_supports): Handle
1028         insn_class enum rather than subset char string.
1029         (riscv_ip): Update call to riscv_multi_subset_supports.
1031 2019-09-16  Phil Blundell  <pb@pbcl.net>
1033         * Makefile.in, configure, doc/Makefile.in: Regenerated.
1035 2019-09-10  Nick Clifton  <nickc@redhat.com>
1037         PR 24907
1038         * testsuite/gas/arm/pr24907.s: New test.
1039         * testsuite/gas/arm/pr24907.d: Expected disassembly.
1041 2019-09-09  Phil Blundell  <pb@pbcl.net>
1043         binutils 2.33 branch created.
1045 2019-09-05  Alan Modra  <amodra@gmail.com>
1047         * config/tc-ppc.c (ppc_elf_suffix): Display the relocation
1048         operator on GOT reloc warnings/errors.
1050 2019-08-27  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
1052         * config/tc-arm.c (parse_neon_mov): Add check to accept vector
1053         register to both the arguments in VMOV instruction.
1054         * testsuite/gas/arm/mve-vmov-1.d: Modify.
1055         * testsuite/gas/arm/mve-vmov-1.s: Likewise.
1056         * testsuite/gas/arm/mve-vorr.d: Likewise.
1058 2019-08-23  Nick Clifton  <nickc@redhat.com>
1060         * po/sv.po: Updated Swedish translation.
1062 2019-08-22  Dennis Zhang  <dennis.zhang@arm.com>
1064         * config/tc-arm.c: New entries for Cortex-M35P, Cortex-A77,
1065         and Cortex-A76AE.
1066         * doc/c-arm.texi: Document new processors.
1067         * testsuite/gas/arm/cpu-cortex-a76ae.d: New test.
1068         * testsuite/gas/arm/cpu-cortex-a77.d: New test.
1069         * testsuite/gas/arm/cpu-cortex-m35p.d: New test.
1071 2019-08-22  Bosco García  <jbgg.gnu@gmail.com>
1072             Nick Clifton  <nickc@redhat.com>
1074         * atof-generic.c (atof_generic): Do not ignore leading zeros if
1075         they appear after a decimal point.
1076         * testsuite/gas/all/float.s: Extend test to include a number with
1077         a leading decimal point followed by several zeroes.
1078         * testsuite/gas/i386/fp.s: Likewise.
1079         * testsuite/gas/i386/fp.d: Update expected output.
1081 2019-08-22  Barnaby Wilks  <barnaby.wilks@arm.com>
1083         * config/tc-aarch64.c: Add float16 directive and add "Hh" to
1084         acceptable float characters.
1085         * doc/c-aarch64.texi: Documentation for float16 directive.
1086         * testsuite/gas/aarch64/float16-be.d: New test.
1087         * testsuite/gas/aarch64/float16-le.d: New test.
1088         * testsuite/gas/aarch64/float16.s: New test.
1089         * NEWS: Add NEWS entry.
1091 2019-08-22  Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1093         * testsuite/gas/aarch64/sysreg-4.d: Update expected disassembly for
1094         tfsre0_el1, tfsr_el1, tfsr_el2, tfsr_el3, tfsr_el12 system registers.
1096 2019-08-20  Dennis Zhang  <dennis.zhang@arm.com>
1098         * NEWS: Mention the Arm and AArch64 new processors.
1099         * config/tc-aarch64.c: New entries for Cortex-A34, Cortex-A65,
1100         Cortex-A77, cortex-A65AE, and Cortex-A76AE.
1101         * doc/c-aarch64.texi: Document new CPUs.
1102         * testsuite/gas/aarch64/cpu-cortex-a34.d: New test.
1103         * testsuite/gas/aarch64/cpu-cortex-a65.d: New test.
1104         * testsuite/gas/aarch64/cpu-cortex-a65ae.d: New test.
1105         * testsuite/gas/aarch64/cpu-cortex-a76ae.d: New test.
1106         * testsuite/gas/aarch64/cpu-cortex-a77.d: New test.
1107         * testsuite/gas/aarch64/nop-asm.s: New test.
1109 2019-08-19  Faraz Shahbazker  <fshahbazker@wavecomp.com>
1111         * config/tc-mips.c (fix_bad_misaligned_address): New function.
1112         (fix_validate_branch): Call fix_bad_misaligned address_to
1113         calculate the target address.
1114         (md_apply_fix): Likewise.
1115         (md_convert_frag): Update misaligned address calculation to
1116         disregard ISA mode bit.
1118 2019-08-19  Faraz Shahbazker  <fshahbazker@wavecomp.com>
1120         * config/tc-mips.c (mips_move_labels): Retain ISA mode bit
1121         when moving labels in text segments.
1122         (mips_align): Indicate text mode when aligning labels in
1123         text segments.
1124         * gas/testsuite/gas/mips/insn-isa-mode.d: New test.
1125         * gas/testsuite/gas/mips/insn-isa-mode.s: New test source.
1126         * gas/testsuite/gas/mips/mips.exp: Run the new test.
1128 2019-08-19  Barnaby Wilks  <Barnaby.Wilks@arm.com>
1130         * config/tc-arm.c (md_atof): Add precision check.  Formatting.
1132 2019-08-15  Nick Clifton  <nickc@redhat.com>
1134         * po/sv.po: Updated Swedish translation.
1136 2019-08-12  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
1138         * config/tc-arm.c (enum operand_parse_code): Add the entry OP_I48_I64.
1139         (po_imm1_or_imm2_or_fail): Marco to check the immediate is either of
1140         48 or 64.
1141         (parse_operands): Add case OP_I48_I64.
1142         (do_mve_scalar_shift1): Add function to encode the MVE shift
1143         instructions with 4 arguments.
1144         * testsuite/gas/arm/mve-shift-bad.l: Modify.
1145         * testsuite/gas/arm/mve-shift-bad.s: Likewise.
1146         * testsuite/gas/arm/mve-shift.d: Likewise.
1147         * testsuite/gas/arm/mve-shift.s: Likewise.
1149 2019-08-12  Barnaby Wilks  <barnaby.wilks@arm.com>
1151         * config/tc-arm.c (enum fp_16bit_format): Add enum to represent the 2 float16 encodings.
1152         (md_atof): Set precision for float16 type.
1153         (arm_is_largest_exponent_ok): Check for whether to encode with the IEEE or alternative
1154         format.
1155         (set_fp16_format): Parse a float16_format directive.
1156         (arm_parse_fp16_opt): Parse the fp16-format command line option.
1157         (aeabi_set_public_attributes): For ELF encode the FP16 format EABI attribute.
1158         * config/tc-arm.h (TC_LARGEST_EXPONENT_IS_NORMAL): Macro that expands to
1159         arm_is_largest_exponent_ok.
1160         (arm_is_largest_exponent_ok): Add prototype for arm_is_largest_exponent_ok function.
1161         * doc/c-arm.texi: Add documentation for .float16, .float16_format and -mfp16-format=
1162         * testsuite/gas/arm/float16-bad.d: New test.
1163         * testsuite/gas/arm/float16-bad.l: New test.
1164         * testsuite/gas/arm/float16-bad.s: New test.
1165         * testsuite/gas/arm/float16-be.d: New test.
1166         * testsuite/gas/arm/float16-format-bad.d: New test.
1167         * testsuite/gas/arm/float16-format-bad.l: New test.
1168         * testsuite/gas/arm/float16-format-bad.s: New test.
1169         * testsuite/gas/arm/float16-format-opt-bad.d: New test.
1170         * testsuite/gas/arm/float16-format-opt-bad.l: New test.
1171         * testsuite/gas/arm/float16-le.d: New test.
1172         * testsuite/gas/arm/float16.s: New test.
1173         * testsuite/gas/arm/float16-eabi-alternative-format.d: New test.
1174         * testsuite/gas/arm/float16-eabi-ieee-format.d: New test.
1175         * testsuite/gas/arm/float16-eabi-no-format.d: New test.
1176         * testsuite/gas/arm/float16-eabi.s: New test.
1178 2019-08-12  Barnaby Wilks  <barnaby.wilks@arm.com>
1180         * config/atof-ieee.c (H_PRECISION): Macro for precision of float16
1181         type.
1182         (atof_ieee): Set precision and exponent bits for encoding float16
1183         types.
1184         (gen_to_words): NaN and Infinity encoding for float16.
1185         (ieee_md_atof): Set precision for encoding float16 type.
1187 2019-08-12  Alan Modra  <amodra@gmail.com>
1189         PR 24851
1190         * config/tc-epiphany.c (md_estimate_size_before_relax): Clear
1191         extra opcode bytes when changing from a 2-byte to a 4-byte insn.
1193 2019-08-09  Jan Beulich  <jbeulich@suse.com>
1195         * testsuite/gas/i386/ilp32/x86-64-simd-intel.d,
1196         testsuite/gas/i386/ilp32/x86-64-simd-suffix.d,
1197         testsuite/gas/i386/ilp32/x86-64-simd.d: Redirect to parent dir
1198         output expectations.
1199         * testsuite/gas/i386/x86-64-simd-intel.d,
1200         testsuite/gas/i386/x86-64-simd-suffix.d,
1201         testsuite/gas/i386/x86-64-simd.d: Don't hard-code hex addresses
1202         and symbol-relative offsets.
1204 2019-08-08  Nick Clifton  <nickc@redhat.com>
1206         PR 24887
1207         * testsuite/gas/i386/property-1.d: Adjust for new output format
1208         from readelf.
1209         * testsuite/gas/i386/property-2.d: Likewise.
1210         * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1211         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1213 2019-08-08  Yoshinori Sato  <ysato@users.sourceforge.jp>
1215         * testsuite/gas/h8300/h8300.exp: Fix movfpe and movtpe tests.
1216         * testsuite/gas/h8300/misc.s: Likewise.
1217         * testsuite/gas/h8300/misch.s: Likewise.
1218         * testsuite/gas/h8300/miscs.s: Likewise.
1220 2019-08-05  Barnaby Wilks  <barnaby.wilks@arm.com>
1222         * config/tc-arm.c (do_mve_vqdmlah): Use N_S_32 macro.
1223         (do_neon_qrdmlah): Use N_S_32 macro.
1224         * testsuite/gas/arm/mve-vqdmlah-bad.d: New test.
1225         * testsuite/gas/arm/mve-vqdmlah-bad.l: New test.
1226         * testsuite/gas/arm/mve-vqdmlah-bad.s: New test.
1227         * testsuite/gas/arm/mve-vqdmlah.d: Remove unsigned instruction tests.
1228         * testsuite/gas/arm/mve-vqdmlah.s: Remove unsigned instruction tests.
1229         * testsuite/gas/arm/mve-vqdmlash-bad.d: New test.
1230         * testsuite/gas/arm/mve-vqdmlash-bad.l: New test.
1231         * testsuite/gas/arm/mve-vqdmlash-bad.s: New test.
1232         * testsuite/gas/arm/mve-vqdmlash.d: Remove unsigned instruction tests.
1233         * testsuite/gas/arm/mve-vqdmlash.s: Remove unsigned instruction tests.
1235 2019-07-30  Mel Chen <mel.chen@sifive.com>
1237         * testsuite/gas/riscv/alias-csr.s: Add testcase for CSR-access
1238         alias instructions.
1239         * testsuite/gas/riscv/no-aliases-csr.d: Run testcase alias-csr.s with
1240         -Mno-aliases.
1242         * testsuite/gas/riscv/alias-csr.d: Run testcase alias-csr.s.
1243         * testsuite/gas/riscv/priv-reg.d: Update.
1245 2019-07-24  Nick Clifton  <nickc@redhat.com>
1247         * po/sv.po: Updated Swedish translation.
1249 2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
1251         * testsuite/gas/arc/nps400-6.d: Update test.
1253 2019-07-24  Alan Modra  <amodra@gmail.com>
1255         * config/obj-elf.c (obj_elf_section, obj_elf_type): Set has_gnu_osabi.
1256         * testsuite/gas/elf/section12a.d: Update xfails.
1257         * testsuite/gas/elf/section12b.d: Likewise.
1259 2019-07-24  Alan Modra  <amodra@gmail.com>
1261         * testsuite/gas/elf/section12a.d: xfail visium and cloudabi.
1262         * testsuite/gas/elf/section12b.d: Likewise.
1263         * testsuite/gas/elf/section13.d: Likewise.
1265 2019-07-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1267         * testsuite/gas/aarch64/sysreg-4.s: Test gmid_el1 read.
1268         * testsuite/gas/aarch64/sysreg-4.d: Update expected output.
1269         * testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
1271 2019-07-23  Alan Modra  <amodra@gmail.com>
1273         * config/obj-elf.c (obj_elf_change_section): Don't emit a fatal
1274         error for non-SHF_ALLOC SHF_GNU_MBIND here.
1275         (obj_elf_parse_section_letters): Return SHF_GNU_MBIND in new
1276         gnu_attr param.
1277         (obj_elf_section): Adjust obj_elf_parse_section_letters call.
1278         Formatting.  Set SHF_GNU_MBIND and elf_osabi from gnu_attr.
1279         Emit normal error for non-SHF_ALLOC SHF_GNU_MBIND and wrong osabi.
1280         (obj_elf_type): Set elf_osabi for ifunc.
1281         * testsuite/gas/elf/section12a.d: xfail msp430 and hpux.
1282         * testsuite/gas/elf/section12b.d: Likewise.
1283         * testsuite/gas/elf/section13.d: Likewise.
1284         * testsuite/gas/elf/section13.l: Adjust expected error.
1286 2019-07-23  Alan Modra  <amodra@gmail.com>
1288         * testsuite/gas/elf/section12a.d: Don't skip for rx.
1290 2019-07-22  Barnaby Wilks  <barnaby.wilks@arm.com>
1292         * config/tc-arm.c (do_mve_vqdmladh): Remove check for UNPREDICTABLE.
1293         * testsuite/gas/arm/mve-vqdmladh-bad.l: Remove tests.
1294         * testsuite/gas/arm/mve-vqdmladh-bad.s: Remove tests.
1295         * testsuite/gas/arm/mve-vqdmladh.d: New tests.
1296         * testsuite/gas/arm/mve-vqdmladh.s: New tests.
1297         * testsuite/gas/arm/mve-vqdmlsdh-bad.l: Remove tests.
1298         * testsuite/gas/arm/mve-vqdmlsdh-bad.s: Remove tests.
1299         * testsuite/gas/arm/mve-vqdmlsdh.d: New tests.
1300         * testsuite/gas/arm/mve-vqdmlsdh.s: New tests.
1302 2019-07-19  H.J. Lu  <hongjiu.lu@intel.com>
1304         * testsuite/gas/i386/noextreg.d: Pass -O0 to assembler.
1306 2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
1308         * testsuite/gas/bpf/alu.d: Use %r6 instead of %ctx.
1309         * testsuite/gas/bpf/lddw-be.d: Likewise.
1310         * testsuite/gas/bpf/lddw.d: Likewise.
1311         * testsuite/gas/bpf/alu-be.d: Likewise.
1312         * testsuite/gas/bpf/alu32.d: Likewise.
1314 2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
1316         * config/tc-bpf.c (pe_lcomm_internal): Adapted from tc-i386.c.
1317         (pe_lcomm): Likewise.
1318         (md_pseudo_table): Use pe_lcomm to implement .lcomm.
1320 2019-07-19  Richard Sandiford  <richard.sandiford@arm.com>
1322         * doc/c-aarch64.texi: Remame the +bitperm extension to +sve2-bitperm.
1323         * config/tc-aarch64.c (aarch64_features): Likewise.
1324         * testsuite/gas/aarch64/illegal-sve2-aes.d: Update accordingly.
1325         * testsuite/gas/aarch64/illegal-sve2-sha3.d: Likewise.
1326         * testsuite/gas/aarch64/illegal-sve2-sm4.d: Likewise.
1327         * testsuite/gas/aarch64/illegal-sve2.d: Likewise.
1328         * testsuite/gas/aarch64/sve2.d: Likewise.
1330 2019-07-19  Alan Modra  <amodra@gmail.com>
1332         * config/tc-ppc.c (ppc_elf_suffix): Map "tls@pcrel", "got@tlsgd@pcrel",
1333         "got@tlsld@pcrel", "got@tprel@pcrel", and "got@dtprel@pcrel".
1334         (fixup_size, md_assemble): Handle pcrel tls relocs.
1335         (ppc_force_relocation, ppc_fix_adjustable): Likewise.
1336         (md_apply_fix, tc_gen_reloc): Likewise.
1338 2019-07-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
1340         * config/tc-bpf.c: Make .lcomm to get a third argument with the
1341         alignment.
1343 2019-07-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
1345         * config/tc-bpf.c (md_pseudo_table): .half, .word and .dword.
1347         * testsuite/gas/bpf/data.s: New file.
1348         * testsuite/gas/bpf/data.d: Likewise.
1349         * testsuite/gas/bpf/data-be.d: Likewise.
1350         * testsuite/gas/bpf/bpf.exp: Run data and data-be.
1351         * doc/c-bpf.texi (BPF Directives): New section.
1353 2019-07-17  Jan Beulich  <jbeulich@suse.com>
1355         * config/tc-i386.c (check_hle, md_assemble, check_VecOperands,
1356         match_template, check_string, build_modrm_byte): Replace
1357         operand_type_check(..., anymem) by Operand_Mem ones.
1358         (process_operands): Also copy i.flags[] when copying other
1359         operand properties.
1361 2019-07-16  Jan Beulich  <jbeulich@suse.com>
1363         * config/tc-i386.c (match_template): Adjust regmem reference.
1364         Adjust comment and update regmem when swapping operands.
1365         (build_modrm_byte): Drop clearing of regmem and stale part of
1366         comment. Correct comment. Adjust regmem reference.
1368 2019-07-16  Jan Beulich  <jbeulich@suse.com>
1370         * config/tc-i386.c (type_names): Replace SReg entries.
1371         (pi, check_byte_reg, build_modrm_byte, i386_att_operand,
1372         parse_real_register): Switch to using sreg field.
1373         (process_operands): Likewise. Extend handling of PUSH/POP of
1374         segment registers. Drop dead setting of REX_B.
1375         * config/tc-i386-intel.c (i386_intel_simplify_register,
1376         i386_intel_operand): Switch to using sreg field.
1377         * testsuite/gas/i386/x86-64-opcode.s: Add PUSH/POP of %fs/%gs.
1378         * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
1379         * testsuite/gas/i386/ilp32/x86-64-opcode.d: Use parent dir
1380         expectations.
1382 2019-07-15  Jose E. Marchesi  <jose.marchesi@oracle.com>
1384         * testsuite/gas/bpf/mem.s: ldabs instructions do not take a `src'
1385         register as an argument.
1386         * testsuite/gas/bpf/mem.d: Updated accordingly.
1387         * testsuite/gas/bpf/mem-be.d: Likewise.
1388         * doc/c-bpf.texi (BPF Opcodes): Update to reflect the correct
1389         explicit arguments to ldabs and ldind instructions.
1391 2019-07-14  Jose E. Marchesi  <jose.marchesi@oracle.com>
1393         * testsuite/gas/bpf/mem.s: Do not use explicit arguments for
1394         ldabs and ldind instructions.
1395         * testsuite/gas/bpf/mem.d: Updated accordingly.
1396         * testsuite/gas/bpf/mem-be.d: Likewise.
1398 2019-07-09  Alan Modra  <amodra@gmail.com>
1400         * config/obj-elf.c (elf_frob_symbol): Remove mips hacks.
1401         * config/tc-mips.h (tc_frob_symbol): Define.
1402         (mips_frob_symbol): Declare.
1403         * config/tc-mips.c (s_mips_globl): Don't set BSF_OBJECT for irix.
1404         (mips_frob_symbol): Fudge symbols for irix here.
1405         * testsuite/gas/elf/type-2.e: Allow random target symbols.
1407 2019-07-05  Kito Cheng <kito.cheng@sifive.com>
1409         * doc/c-riscv.texi (Instruction Formats): Add r4 type.
1410         * testsuite/gas/riscv/insn.d: Add testcase for r4 type.
1411         * testsuite/gas/riscv/insn.s: Ditto.
1413         * doc/c-riscv.texi (Instruction Formats): Add b and j type.
1414         * testsuite/gas/riscv/insn.d: Add test case for b and j type.
1415         * testsuite/gas/riscv/insn.s: Ditto.
1417         * testsuite/gas/riscv/insn.s: Correct instruction type for load
1418         and store.
1420         * testsuite/gas/riscv/insn.d: Using regular expression to match
1421         address.
1423         * doc/c-riscv.texi (Instruction Formats): Fix encoding table for SB
1424         type and fix typo.
1426 2019-07-04  Jan Beulich  <jbeulich@suse.com>
1428         * config/tc-i386.c (md_parse_option): Don't blindly accept all
1429         -Q options.
1430         (md_show_usage): Correctly name the ignored -Q option flavors.
1432 2019-07-04  Jan Beulich  <jbeulich@suse.com>
1434         * config/obj-elf.c (obj_elf_type): Check for conflicts between
1435         old and new types.
1436         * config/tc-hppa.h (md_elf_symbol_type_change): New.
1437         * doc/as.texi: Mention warning behavior for the ELF flavor of
1438         .type.
1439         * testsuite/gas/elf/type-2.e, testsuite/gas/elf/type-2.l,
1440         testsuite/gas/elf/type-2.s: New.
1441         * testsuite/gas/elf/elf.exp: Run new test.
1443 2019-07-03  Nick Clifton  <nickc@redhat.com>
1445         * testsuite/gas/aarch64/codealign.d: Update to work with a
1446         toolchain configured to generate build notes.
1447         * testsuite/gas/aarch64/codealign_1.d: Likewise.
1448         * testsuite/gas/aarch64/dwarf.d: Likewise.
1449         * testsuite/gas/aarch64/mapmisc.d: Likewise.
1450         * testsuite/gas/aarch64/mapping.d: Likewise.
1451         * testsuite/gas/aarch64/mapping2.d: Likewise.
1452         * testsuite/gas/aarch64/mapping3.d: Likewise.
1453         * testsuite/gas/aarch64/mapping4.d: Likewise.
1454         * testsuite/gas/aarch64/mapping_5.d: Likewise.
1455         * testsuite/gas/aarch64/mapping_6.d: Likewise.
1456         * testsuite/gas/aarch64/sve-movprfx_1.d: Likewise.
1457         * testsuite/gas/aarch64/sve-movprfx_10.d: Likewise.
1458         * testsuite/gas/aarch64/sve-movprfx_11.d: Likewise.
1459         * testsuite/gas/aarch64/sve-movprfx_12.d: Likewise.
1460         * testsuite/gas/aarch64/sve-movprfx_13.d: Likewise.
1461         * testsuite/gas/aarch64/sve-movprfx_14.d: Likewise.
1462         * testsuite/gas/aarch64/sve-movprfx_15.d: Likewise.
1463         * testsuite/gas/aarch64/sve-movprfx_16.d: Likewise.
1464         * testsuite/gas/aarch64/sve-movprfx_17.d: Likewise.
1465         * testsuite/gas/aarch64/sve-movprfx_18.d: Likewise.
1466         * testsuite/gas/aarch64/sve-movprfx_19.d: Likewise.
1467         * testsuite/gas/aarch64/sve-movprfx_2.d: Likewise.
1468         * testsuite/gas/aarch64/sve-movprfx_20.d: Likewise.
1469         * testsuite/gas/aarch64/sve-movprfx_21.d: Likewise.
1470         * testsuite/gas/aarch64/sve-movprfx_22.d: Likewise.
1471         * testsuite/gas/aarch64/sve-movprfx_23.d: Likewise.
1472         * testsuite/gas/aarch64/sve-movprfx_24.d: Likewise.
1473         * testsuite/gas/aarch64/sve-movprfx_25.d: Likewise.
1474         * testsuite/gas/aarch64/sve-movprfx_26.d: Likewise.
1475         * testsuite/gas/aarch64/sve-movprfx_27.d: Likewise.
1476         * testsuite/gas/aarch64/sve-movprfx_3.d: Likewise.
1477         * testsuite/gas/aarch64/sve-movprfx_4.d: Likewise.
1478         * testsuite/gas/aarch64/sve-movprfx_5.d: Likewise.
1479         * testsuite/gas/aarch64/sve-movprfx_6.d: Likewise.
1480         * testsuite/gas/aarch64/sve-movprfx_7.d: Likewise.
1481         * testsuite/gas/aarch64/sve-movprfx_8.d: Likewise.
1482         * testsuite/gas/aarch64/sve-movprfx_9.d: Likewise.
1483         * testsuite/gas/aarch64/symbol-variant_pcs-1.d: Likewise.
1484         * testsuite/gas/aarch64/symbol-variant_pcs-2.d: Likewise.
1485         * testsuite/gas/aarch64/symbol-variant_pcs-3.d: Likewise.
1486         * testsuite/gas/all/assign.d: Likewise.
1487         * testsuite/gas/all/none.d: Likewise.
1488         * testsuite/gas/all/weakref1.d: Likewise.
1489         * testsuite/gas/arm/got_prel.d: Likewise.
1490         * testsuite/gas/arm/local_function.d: Likewise.
1491         * testsuite/gas/arm/mapdir.d: Likewise.
1492         * testsuite/gas/arm/mapmisc.d: Likewise.
1493         * testsuite/gas/arm/mapping2.d: Likewise.
1494         * testsuite/gas/arm/mapping3.d: Likewise.
1495         * testsuite/gas/arm/mapping4.d: Likewise.
1496         * testsuite/gas/arm/mapsecs.d: Likewise.
1497         * testsuite/gas/arm/mapshort-eabi.d: Likewise.
1498         * testsuite/gas/arm/thumbrel.d: Likewise.
1499         * testsuite/gas/arm/unwind.d: Likewise.
1500         * testsuite/gas/cfi/cfi-label.d: Likewise.
1501         * testsuite/gas/elf/elf.exp: Likewise.
1502         * testsuite/gas/i386/bss.d: Likewise.
1503         * testsuite/gas/i386/ifunc-3.d: Likewise.
1504         * testsuite/gas/i386/ilp32/mixed-mode-reloc64.d: Likewise.
1505         * testsuite/gas/i386/ilp32/quad.d: Likewise.
1506         * testsuite/gas/i386/ilp32/reloc64.d: Likewise.
1507         * testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
1508         * testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
1509         * testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
1510         * testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
1511         * testsuite/gas/i386/mixed-mode-reloc32.d: Likewise.
1512         * testsuite/gas/i386/mixed-mode-reloc64.d: Likewise.
1513         * testsuite/gas/i386/nop-6.d: Likewise.
1514         * testsuite/gas/i386/property-1.d: Likewise.
1515         * testsuite/gas/i386/property-2.d: Likewise.
1516         * testsuite/gas/i386/relax.d: Likewise.
1517         * testsuite/gas/i386/reloc64.d: Likewise.
1518         * testsuite/gas/i386/size-1.d: Likewise.
1519         * testsuite/gas/i386/size-3.d: Likewise.
1520         * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
1521         * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1522         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1523         * testsuite/gas/i386/x86-64-size-1.d: Likewise.
1524         * testsuite/gas/i386/x86-64-size-3.d: Likewise.
1525         * testsuite/gas/i386/x86-64-size-5.d: Likewise.
1526         * testsuite/gas/i386/x86-64-unwind.d: Likewise.
1527         * testsuite/gas/macros/irp.d: Likewise.
1528         * testsuite/gas/macros/repeat.d: Likewise.
1529         * testsuite/gas/macros/rept.d: Likewise.
1530         * testsuite/gas/macros/test2.d: Likewise.
1531         * testsuite/gas/macros/test3.d: Likewise.
1532         * testsuite/gas/macros/vararg.d: Likewise.
1533         * testsuite/gas/ppc/astest2.d: Likewise.
1534         * testsuite/gas/ppc/astest2_64.d: Likewise.
1535         * testsuite/gas/ppc/astest64.d: Likewise.
1536         * testsuite/gas/ppc/power4.d: Likewise.
1537         * testsuite/gas/ppc/test1elf64.d: Likewise.
1539 2019-07-02  Barnaby Wilks  <barnaby.wilks@arm.com>
1541         * config/tc-aarch64.c (parse_operands): Add error check.
1542         * testsuite/gas/aarch64/diagnostic.l: New test.
1543         * testsuite/gas/aarch64/diagnostic.s: New test.
1544         * testsuite/gas/aarch64/illegal.l: New tests.
1545         * testsuite/gas/aarch64/illegal.s: New tests.
1547 2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
1549         * testsuite/gas/aarch64/sve-movprfx_27.s,
1550         * testsuite/gas/aarch64/sve-movprfx_27.d: New test.
1552 2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
1554         * testsuite/gas/aarch64/sve-movprfx_26.s: Also test FCVTZS, FCVTZU,
1555         SCVTF, UCVTF, LSR and ASR.
1556         * testsuite/gas/aarch64/sve-movprfx_26.d: Update accordingly.
1557         * testsuite/gas/aarch64/sve-movprfx_26.l: Likewise.
1559 2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
1561         * testsuite/gas/aarch64/sve-movprfx_25.s: Allow CPY Z1.D.P1/M,X1
1562         to be prefixed by MOVPRFX.
1563         * testsuite/gas/aarch64/sve-movprfx_25.d: Update accordingly.
1564         * testsuite/gas/aarch64/sve-movprfx_25.l: Likewise.
1566 2019-07-01  Nick Clifton  <nickc@redhat.com>
1568         PR 24748
1569         * write.c (create_note_reloc): Add desc2_offset parameter.  Change
1570         name of offset parameter to note_offset.  Only use desc2_offset
1571         when placing addend into REL reloc's address space.
1572         (maybe_generate_build_notes): Update parameters passed to
1573         create_note_reloc.
1575 2019-07-01  Matthew Malcomson  <matthew.malcomson@arm.com>
1577         * testsuite/gas/aarch64/illegal-sve2-aes.d: Update tests.
1578         * testsuite/gas/aarch64/illegal-sve2.l: Update tests.
1579         * doc/c-aarch64.texi: Add special note of pmull{t,b}
1580         instructions under the sve2-aes architecture extension.
1581         * testsuite/gas/aarch64/illegal-sve2.s: Add small size
1582         pmull{t,b} instructions.
1583         * testsuite/gas/aarch64/sve2.d: Add small size pmull{t,b}
1584         disassembly.
1585         * testsuite/gas/aarch64/sve2.s: Add small size pmull{t,b}
1586         instructions.
1588 2019-07-01  Nick Clifton  <nickc@redhat.com>
1590         PR 24738
1591         * doc/c-i386.texi (i386-Directives): Add a description of the
1592         Value directive.
1594 2019-07-01  Nick Clifton  <nickc@redhat.com>
1596         PR 24737
1597         * doc/as.texi (Align): Add missing word to description of
1598         pseudo-op.
1599         (P2align): Likewise.
1601 2019-06-28  Nick Clifton  <nickc@redhat.com>
1603         PR 24735
1604         * doc/as.texi (Zero): Fix spelling typo.
1606 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1608         * config/tc-i386.c (vec_imm4): Delete.
1609         (VEX_check_operands): Replace Vec_Imm4 check by CpuXOP with five
1610         operands one.  Clear Imm<N> by different means.
1611         (build_modrm_byte): Adjust comment.  Remove dead code.  Add and
1612         adjust assertions.
1614 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1616         * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
1617         insns. Move PadLock special case of prefix emission to 3-byte
1618         long base opcode handling.
1619         (i386_index_check): Check for CpuPadLock instead of ImmExt.
1621 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1623         * config/tc-i386.c (optimize_encoding): Handle AND / OR with
1624         both operands being the same register.
1625         * doc/c-i386.texi: Update -O2 documentation.
1626         * testsuite/gas/i386/optimize-2.s,
1627         testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
1628         with both operands being the same register.
1629         * testsuite/gas/i386/optimize-2.d,
1630         testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
1631         * testsuite/gas/i386/optimize-2b.d,
1632         testsuite/gas/i386/x86-64-optimize-3b.d: New.
1633         * testsuite/gas/i386/i386.exp: Run new test.
1635 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1637         * config/tc-i386.c (commutative): New.
1638         (build_vex_prefix): Handle commutative case.
1639         (optimize_encoding): Set commutative flag when appropriate.
1640         * doc/c-i386.texi: Update -O2 documentation.
1641         * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
1642         output.
1643         * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
1644         numbered source operands.
1645         * testsuite/gas/i386/x86-64-optimize-2.d,
1646         testsuite/gas/i386/x86-64-optimize-2b.d,
1647         testsuite/gas/i386/x86-64-optimize-3.d,
1648         testsuite/gas/i386/x86-64-optimize-5.d,
1649         testsuite/gas/i386/x86-64-optimize-6.d,
1650         testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
1651         * testsuite/gas/i386/x86-64-avx-swap-2.d,
1652         testsuite/gas/i386/x86-64-avx-swap-2.s: New.
1653         * testsuite/gas/i386/i386.exp: Run new test.
1655 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1657         * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
1658         (check_VecOperands): Simplify static rounding / SAE checking.
1660 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1662         * config/tc-i386.c (optimize_encoding): Make j unsigned.  Handle
1663         vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}.  Also check/
1664         clear broadcast.  Eliminate a loop.
1665         * doc/c-i386.texi: Update -O1 documentation.
1666         * testsuite/gas/i386/optimize-1.s,
1667         testsuite/gas/i386/optimize-2.s,
1668         testsuite/gas/i386/optimize-3.s,
1669         testsuite/gas/i386/optimize-5.s,
1670         testsuite/gas/i386/x86-64-optimize-2.s,
1671         testsuite/gas/i386/x86-64-optimize-3.s,
1672         testsuite/gas/i386/x86-64-optimize-4.s,
1673         testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
1674         vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
1675         testsuite/gas/i386/optimize-1.d,
1676         testsuite/gas/i386/optimize-1a.d,
1677         testsuite/gas/i386/optimize-2.d,
1678         testsuite/gas/i386/optimize-3.d,
1679         testsuite/gas/i386/optimize-4.d,
1680         testsuite/gas/i386/optimize-5.d,
1681         testsuite/gas/i386/x86-64-optimize-2.d,
1682         testsuite/gas/i386/x86-64-optimize-2a.d,
1683         testsuite/gas/i386/x86-64-optimize-2b.d,
1684         testsuite/gas/i386/x86-64-optimize-3.d,
1685         testsuite/gas/i386/x86-64-optimize-4.d,
1686         testsuite/gas/i386/x86-64-optimize-5.d,
1687         testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
1689 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1691         * testsuite/gas/i386/avx512f_vpclmulqdq.s,
1692         testsuite/gas/i386/avx512vl_vpclmulqdq.s,
1693         testsuite/gas/i386/vpclmulqdq.s,
1694         testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
1695         testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
1696         * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
1697         high 16 [xy]mm registers.
1698         * testsuite/gas/i386/avx512f_vpclmulqdq.d,
1699         testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
1700         testsuite/gas/i386/avx512vl_vpclmulqdq.d,
1701         testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
1702         testsuite/gas/i386/vpclmulqdq.d,
1703         testsuite/gas/i386/vpclmulqdq-intel.d,
1704         testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
1705         testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
1706         testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
1707         testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
1708         testsuite/gas/i386/x86-64-vpclmulqdq.d,
1709         testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
1710         expectations.
1712 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1714         * tc-i386.c (output_disp, output_imm): Use encoding_length.
1716 2019-07-01  Jan Beulich  <jbeulich@suse.com>
1718         * tc-i386.c (encoding_length): New.
1719         (output_insn): Use it.
1720         * testsuite/gas/i386/oversized16.l,
1721         testsuite/gas/i386/oversized16.s,
1722         testsuite/gas/i386/oversized64.l,
1723         testsuite/gas/i386/oversized64.s: New.
1724         * testsuite/gas/i386/i386.exp: Run new tests.
1726 2019-06-27  H.J. Lu  <hongjiu.lu@intel.com>
1728         PR binutils/24719
1729         * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
1730         with invalid vector length.
1731         * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1732         * testsuite/gas/i386/disassem.d: Updated.
1733         * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1735 2019-06-27  Barnaby Wilk  s<barnaby.wilks@arm.com>
1737         * config/tc-arm.c (do_smc): Add range check for immediate operand.
1738         (do_t_smc): Add range check for immediate operand. Remove
1739         obsolete immediate encoding.
1740         (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
1741         * testsuite/gas/arm/arch6zk.d: Fix test.
1742         * testsuite/gas/arm/arch6zk.s: Fix test.
1743         * testsuite/gas/arm/smc-bad.d: New test.
1744         * testsuite/gas/arm/smc-bad.l: New test.
1745         * testsuite/gas/arm/smc-bad.s: New test.
1746         * testsuite/gas/arm/thumb32.d: Fix test.
1747         * testsuite/gas/arm/thumb32.s: Fix test.
1749 2019-06-27  Jan Beulich  <jbeulich@suse.com>
1751         config/tc-i386.c (md_assemble): Check for protected mode
1752         incapable processor before encoding VEX and alike insns.
1753         * testsuite/gas/i386/inval-16.s: For 80186 architecture.
1754         * testsuite/gas/i386/inval-16.l: Adjust expectations.
1755         * testsuite/gas/i386/avx-16bit.d,
1756         testsuite/gas/i386/avx-16bit.s,
1757         testsuite/gas/i386/avx512f-16bit.d,
1758         testsuite/gas/i386/avx512f-16bit.s,
1759         testsuite/gas/i386/bmi-16bit.d,
1760         testsuite/gas/i386/bmi-16bit.s,
1761         testsuite/gas/i386/bmi2-16bit.d,
1762         testsuite/gas/i386/bmi2-16bit.s,
1763         testsuite/gas/i386/lwp-16bit.d,
1764         testsuite/gas/i386/lwp-16bit.s: New
1765         testsuite/gas/i386/i386.exp: Run new tests.
1767 2019-06-26  Jim Wilson  <jimw@sifive.com>
1769         * testsuite/gas/xstormy16/allinsn.sh: Change first line to
1770         #!/bin/bash and make it executable.
1771         * testsuite/gas/xstormy16/gcc.sh: Likewise.
1773 2019-06-26  Lili Cui  <lili.cui@intel.com>
1775         * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
1776         syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
1777         Intel syntax.
1779 2019-06-25  Faraz Shahbazker  <fshahbazker@wavecomp.com>
1781         * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
1782         respect to MTC1 and use $0 for either part where possible.
1783         * testsuite/gas/mips/li-d.s: Add test cases for non-zero
1784         words in double precision constants.
1785         * testsuite/gas/mips/li-d.d: Update reference output.
1786         * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
1787         * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
1788         * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
1790 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1792         * tc-i386.c (acc32, acc64): Delete.
1793         (pi): Make first parameter pinter-to-const.
1794         (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
1795         (pt): Use operand_type_equal().
1796         (match_template): Replace use of acc32.
1797         (process_suffix): Replace use of acc64.
1799 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1801         * doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
1802         use.
1804 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1806         * tc-i386.c (process_suffix): Use is_any_vex_encoding().
1808 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1810         * testsuite/gas/i386/sse2-16bit.d,
1811         testsuite/gas/i386/sse2-16bit.s: New.
1812         testsuite/gas/i386/i386.exp: Run new test.
1814 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1816         * config/tc-i386.c (optimize_encoding): Also handle ANDQ with
1817         immediatie fitting in 7 bits.
1818         * testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
1819         7- and 8-bit immediates.
1820         * testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
1822 2019-06-25  Jan Beulich  <jbeulich@suse.com>
1824         * testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
1825         tests.
1826         * testsuite/gas/i386/xmmword.l: Adjust expectations.
1828 2019-06-25  Alan Modra  <amodra@gmail.com>
1830         * config/tc-ppc.c (ppc_handle_align): Add parentheses.
1832 2019-06-25  Alan Modra  <amodra@gmail.com>
1834         * config/tc-ppc.h (ppc_nop_select): Declare.
1835         (NOP_OPCODE): Define.
1836         * config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
1837         (ppc_nop_encoding_for_rs_align_code): New enum.
1838         (ppc_nop_select): New function.
1839         (ppc_handle_align): Don't use ppc_cpu here.  Get nop type from frag.
1840         * testsuite/gas/ppc/groupnop.d,
1841         * testsuite/gas/ppc/groupnop.s: New test.
1842         * testsuite/gas/ppc/ppc.exp: Run it.
1844 2019-06-19  H.J. Lu  <hongjiu.lu@intel.com>
1846         PR binutils/24700
1847         * testsuite/gas/i386/disassem.s: Add test for vbroadcasti32x8
1848         with invalid vector length.
1849         * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1850         * testsuite/gas/i386/disassem.d: Updated.
1851         * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1853 2019-06-17  H.J. Lu  <hongjiu.lu@intel.com>
1855         PR binutils/24691
1856         * testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
1857         invalid vector length.
1858         * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1859         * testsuite/gas/i386/disassem.d: Updated.
1860         * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1862 2019-06-14  Alan Modra  <amodra@gmail.com>
1864         * Makefile.in: Regenerate.
1865         * configure: Regenerate.
1866         * doc/Makefile.in: Regenerate.
1868 2019-06-12  Peter Bergner  <bergner@linux.ibm.com>
1870         * testsuite/gas/ppc/power9.d: Delete ldmx tests.
1871         * testsuite/gas/ppc/power9.s: Likewise.
1873 2019-06-06  Lili Cui  <lili.cui@intel.com>
1875         * config/tc-i386.c (cpu_arch): Add .enqcmd.
1876         (cpu_noarch): Add noenqcmd.
1877         * doc/c-i386.texi: Document noenqcmd.
1879 2019-06-05  H.J. Lu  <hongjiu.lu@intel.com>
1881         PR binutils/24633
1882         * testsuite/gas/i386/disassem.s: Add tests for invalid vector
1883         lengths for EVEX vextractfXX and vinsertfXX.
1884         * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1885         * testsuite/gas/i386/disassem.d: Updated.
1886         * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1888 2019-06-04  H.J. Lu  <hongjiu.lu@intel.com>
1890         PR binutils/24626
1891         * testsuite/gas/i386/disassem.s: Add tests for reserved VEX.vvvv
1892         and EVEX.vvvv.
1893         * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1894         * testsuite/gas/i386/disassem.d: Updated.
1895         * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1897 2019-06-04  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1898             Lili Cui  <lili.cui@intel.com>
1900         * config/tc-i386.c (cpu_arch): Add .avx512_vp2intersect.
1901         (cpu_noarch): Likewise.
1902         * doc/c-i386.texi: Document avx512_vp2intersect.
1903         * testsuite/gas/i386/i386.exp: Run vp2intersect tests.
1904         * testsuite/gas/i386/vp2intersect-intel.d: New test.
1905         * testsuite/gas/i386/vp2intersect.d: Likewise.
1906         * testsuite/gas/i386/vp2intersect.s: Likewise.
1907         * testsuite/gas/i386/vp2intersect-inval-bcast.l: Likewise.
1908         * testsuite/gas/i386/vp2intersect-inval-bcast.s: Likewise.
1909         * testsuite/gas/i386/x86-64-vp2intersect-intel.d: Likewise.
1910         * testsuite/gas/i386/x86-64-vp2intersect.d: Likewise.
1911         * testsuite/gas/i386/x86-64-vp2intersect.s: Likewise.
1912         * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.l: Likewise.
1913         * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.s: Likewise.
1915 2019-06-04  Xuepeng Guo  <xuepeng.guo@intel.com>
1916             Lili Cui  <lili.cui@intel.com>
1918         * doc/c-i386.texi: Document enqcmd.
1919         * testsuite/gas/i386/enqcmd-intel.d: New file.
1920         * testsuite/gas/i386/enqcmd-inval.l: Likewise.
1921         * testsuite/gas/i386/enqcmd-inval.s: Likewise.
1922         * testsuite/gas/i386/enqcmd.d: Likewise.
1923         * testsuite/gas/i386/enqcmd.s: Likewise.
1924         * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
1925         * testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
1926         * testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
1927         * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
1928         * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
1929         * testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
1930         enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
1931         and x86-64-enqcmd.
1933 2019-05-30  Jim Wilson  <jimw@sifive.com>
1935         * config/tc-riscv.c (riscv_ip) <'u'>: Move O_constant check inside if
1936         statement.  Delete O_symbol and O_constant check after if statement.
1937         * testsuite/gas/riscv/auipc-parsing.s: Test lui with missing %hi.
1938         * testsuite/gas/riscv/auipc-parsing.l: Update.
1940 2019-05-28  H.J. Lu  <hongjiu.lu@intel.com>
1942         PR gas/24625
1943         * testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
1944         instructions with invalid broadcast.
1945         * testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
1946         * testsuite/gas/i386/inval-avx512f.l: Updated.
1947         * testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
1949 2019-05-27  Alan Modra  <amodra@gmail.com>
1951         * config/tc-ppc.c (is_ppc64_target): New function.
1952         (md_show_usage): Split up usage message.  Don't show -a64 when
1953         unsupported.
1954         testsuite/gas/ppc/ppc.exp (supports_ppc64): New.
1955         (prefix-reloc): Only run for ppc64.
1957 2019-05-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1959         * config/tc-aarch64.c (aarch64_elf_copy_symbol_attributes): Define.
1960         * config/tc-aarch64.h (aarch64_elf_copy_symbol_attributes): Declare.
1961         (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1962         * testsuite/gas/aarch64/symbol-variant_pcs-3.d: New test.
1963         * testsuite/gas/aarch64/symbol-variant_pcs-3.s: New test.
1965 2019-05-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1967         * config/tc-aarch64.c (s_variant_pcs): New function.
1968         * doc/c-aarch64.texi: Document .variant_pcs.
1969         * testsuite/gas/aarch64/symbol-variant_pcs-1.d: New test.
1970         * testsuite/gas/aarch64/symbol-variant_pcs-1.s: New test.
1971         * testsuite/gas/aarch64/symbol-variant_pcs-2.d: New test.
1972         * testsuite/gas/aarch64/symbol-variant_pcs-2.s: New test.
1974 2019-05-24  Alan Modra  <amodra@gmail.com>
1976         * po/POTFILES.in: Regenerate.
1978 2019-05-24  Alan Modra  <amodra@gmail.com>
1980         * config/tc-ppc.c (ppc_elf_suffix): Support @pcrel, @got@pcrel,
1981         @plt@pcrel, @higher34, @highera34, @highest34, and @highesta34.
1982         (fixup_size): Handle new powerxx relocs.
1983         (md_assemble): Warn for @pcrel on non-prefix insns.
1984         Accept @l, @h and @ha on prefix insns, and infer reloc without
1985         any @ suffix.  Translate powerxx relocs to suit DQ and DS field
1986         instructions.  Include operand tests as well as opcode test to
1987         translate BFD_RELOC_HI16_S to BFD_RELOC_PPC_16DX_HA.
1988         (ppc_fix_adjustable): Return false for pcrel GOT and PLT relocs.
1989         (md_apply_fix): Handle new powerxx relocs.
1990         * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Accept
1991         BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34,
1992         BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34,
1993         BFD_RELOC_PPC64_D34, and BFD_RELOC_PPC64_D28.
1994         * testsuite/gas/ppc/prefix-reloc.d,
1995         * testsuite/gas/ppc/prefix-reloc.s: New test.
1996         * testsuite/gas/ppc/ppc.exp: Run it.
1998 2019-05-24  Peter Bergner  <bergner@linux.ibm.com>
1999             Alan Modra  <amodra@gmail.com>
2001         * config/tc-ppc.c (ppc_insert_operand): Only sign extend fields that
2002         are 32-bits or smaller.
2003         * messages.c (as_internal_value_out_of_range): Do not truncate
2004         variables and use BFD_VMA_FMT to print them.
2005         * testsuite/gas/ppc/prefix-pcrel.s,
2006         * testsuite/gas/ppc/prefix-pcrel.d: New test.
2007         * testsuite/gas/ppc/ppc.exp: Run it.
2009 2019-05-24  Peter Bergner  <bergner@linux.ibm.com>
2010             Alan Modra  <amodra@gmail.com>
2012         * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
2013         (struct insn_label_list): New.
2014         (insn_labels, free_insn_labels): New variables.
2015         (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
2016         (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
2017         and call ppc_record_label.
2018         (md_assemble): Handle 64-bit prefix instructions.  Align labels
2019         that are on the same line as a prefix instruction.
2020         * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
2021         later in the file.
2022         (md_start_line_hook): Define.
2023         (ppc_start_line_hook): Declare.
2024         * testsuite/gas/ppc/prefix-align.d,
2025         * testsuite/gas/ppc/prefix-align.s: New test.
2026         * testsuite/gas/ppc/ppc.exp: Run new test.
2028 2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
2030         * configure.ac: Handle bpf-*-* targets.
2031         * configure.tgt (generic_target): Likewise.
2032         * configure: Regenerate.
2033         * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
2034         (TARGET_CPU_HFILES): Add tc-bpf.h.
2035         * Makefile.in: Regenerated.
2036         * config/tc-bpf.c: New file.
2037         * config/tc-bpf.h: Likewise.
2038         * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
2039         * doc/Makefile.in: Regenerated.
2040         * doc/all.texi: set BPF.
2041         * doc/as.texi: Add eBPF contents.
2042         * doc/c-bpf.texi: New file.
2043         * testsuite/gas/bpf/alu.d: New file.
2044         * testsuite/gas/bpf/mem-be.d: Likewise.
2045         * testsuite/gas/bpf/mem.s: Likewise.
2046         * testsuite/gas/bpf/mem.d: Likewise.
2047         * testsuite/gas/bpf/lddw-be.d: Likewise.
2048         * testsuite/gas/bpf/lddw.s: Likewise.
2049         * testsuite/gas/bpf/lddw.d: Likewise.
2050         * testsuite/gas/bpf/jump-be.d: Likewise.
2051         * testsuite/gas/bpf/jump.s: Likewise.
2052         * testsuite/gas/bpf/jump.d: Likewise.
2053         * testsuite/gas/bpf/exit-be.d: Likewise.
2054         * testsuite/gas/bpf/exit.s: Likewise.
2055         * testsuite/gas/bpf/exit.d: Likewise.
2056         * testsuite/gas/bpf/call-be.d: Likewise.
2057         * testsuite/gas/bpf/call.s: Likewise.
2058         * testsuite/gas/bpf/call.d: Likewise.
2059         * testsuite/gas/bpf/bpf.exp: Likewise.
2060         * testsuite/gas/bpf/atomic-be.d: Likewise.
2061         * testsuite/gas/bpf/atomic.s: Likewise.
2062         * testsuite/gas/bpf/atomic.d: Likewise.
2063         * testsuite/gas/bpf/alu-be.d: Likewise.
2064         * testsuite/gas/bpf/alu32-be.d: Likewise.
2065         * testsuite/gas/bpf/alu32.s: Likewise.
2066         * testsuite/gas/bpf/alu32.d: Likewise.
2067         * testsuite/gas/bpf/alu.s: Likewise.
2068         * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
2069         * testsuite/gas/all/org-1.s: Support nop_type 6.
2070         * testsuite/gas/all/org-1.l: Updated to reflect changes in
2071         org-1.s.
2073 2019-05-22  John Darrington <john@darrington.wattle.id.au>
2075         * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
2076         (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
2077         (<global>): Use s12z_strtol instead of strtol.
2078         * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
2079         * testsuite/gas/s12z/dollar-hex.d: New file.
2080         * testsuite/gas/s12z/dollar-hex.s: New file.
2081         * testsuite/gas/s12z/s12z.exp: Add them.
2083 2019-05-21  Sudakshina Das  <sudi.das@arm.com>
2085         * config/tc-arm.c (parse_operands): Update case OP_RVC to
2086         parse p0 and P0.
2087         (do_vmrs): Add checks for valid operands with respect to
2088         cpu and fpu options.
2089         (do_vmsr): Likewise.
2090         (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
2091         and FPCXT_S.
2092         * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
2093         * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
2094         * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
2095         * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
2096         * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
2097         * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
2098         * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
2099         * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
2100         * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
2101         * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
2103 2019-05-21  Sudakshina Das  <sudi.das@arm.com>
2105         * config/tc-arm.c (TOGGLE_BIT): New.
2106         (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
2107         csinv, csneg, cset, csetm and csel.
2108         (operand_parse_code): New OP_RR_ZR.
2109         (parse_operand): Handle case for OP_RR_ZR.
2110         (do_t_cond): New.
2111         (insns): New instructions for cinc, cinv, cneg, csinc,
2112         csinv, csneg, cset, csetm, csel.
2113         * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
2114         * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
2115         * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
2116         * testsuite/gas/arm/armv8_1-m-cond.d: New test.
2117         * testsuite/gas/arm/armv8_1-m-cond.s: New test.
2119 2019-05-21  Sudakshina Das  <sudi.das@arm.com>
2121         * config/tc-arm.c (operand_parse_code): New entries for
2122         OP_RRnpcsp_I32 (register or integer operands).
2123         (do_mve_scalar_shift): New.
2124         (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
2125         sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
2126         * testsuite/gas/arm/mve-shift.d: New.
2127         * testsuite/gas/arm/mve-shift.s: New.
2128         * testsuite/gas/arm/mve-shift-bad.d: New.
2129         * testsuite/gas/arm/mve-shift-bad.s: New.
2130         * testsuite/gas/arm/mve-shift-bad.l: New.
2132 2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
2134         * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
2135         * testsuite/gas/mips/r6-reg-constraints.s: this and add test
2136         case for DAUI.
2137         * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
2138         * testsuite/gas/mips/r6-reg-constraints.l: this and add test
2139         for DAUI.
2140         * testsuite/gas/mips/mips.exp: Rename test from
2141         r6-branch-constraints to r6-reg-constraints.
2143 2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2145         PR 24559
2146         * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
2147         replacement.
2148         * testsuite/gas/arm/load-pseudo.s: New test input.
2149         * testsuite/gas/arm/m0-load-pseudo.d: New test.
2150         * testsuite/gas/arm/m23-load-pseudo.d: New test.
2151         * testsuite/gas/arm/m33-load-pseudo.d: New test.
2153 2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2155         * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
2156         conventions.
2157         * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
2158         * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
2159         * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
2160         * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
2161         * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
2162         * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
2163         * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
2165 2019-05-21  John Darrington <john@darrington.wattle.id.au>
2167         * expr.c (literal_prefix_dollar_hex): New variable.
2168         (operand)[case '$']: Use the new variable instead of the old macro.
2169         Also, move this instance of "case '$'" next to the other one, and
2170         enable it only in the complementary proprocessor case.
2171         * expr.h (literal_prefix_dollar_hex): Declare it.
2172         * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
2173         * config/tc-ip2k.c:      ditto
2174         * config/tc-mt.c:        ditto
2175         * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
2176         * config/tc-ip2k.h:      ditto
2177         * config/tc-mt.h:        ditto
2179 2019-05-20  Faraz Shahbazker  <fshahbazker@wavecomp.com>
2181         PR 14798
2182         * config/tc-mips.c (s_mips_globl): Only treat symbols that are
2183         not explicitly labelled as BSF_OBJECTs for IRIX targets.
2184         * testsuite/gas/mips/pr14798.s: New test source.
2185         * testsuite/gas/mips/pr14798-irix.d: New test.
2186         * testsuite/gas/mips/pr14798.d: Likewise.
2187         * testsuite/gas/mips/mips.exp: Run the new tests.
2189 2019-05-17  John Darrington  <john@darrington.wattle.id.au>
2191         * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
2192         * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
2194 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2196         * config/tc-arm.c (check_simd_pred_availability): Refactor.
2197         (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
2198         (do_neon_dyadic_i64_su): Likewise.
2199         (do_neon_shl): Likewise.
2200         (do_neon_qshl): Likewise.
2201         (do_neon_rshl): Likewise.
2202         (do_neon_logic): Likewise.
2203         (do_neon_dyadic_if_su): Likewise.
2204         (do_neon_addsub_if_i): Likewise.
2205         (do_neon_mac_maybe_scalar): Likewise.
2206         (do_neon_fmac): Likewise.
2207         (do_neon_mul): Likewise.
2208         (do_neon_qdmulh): Likewise.
2209         (do_neon_qrdmlah): Likewise.
2210         (do_neon_abs_neg): Likewise.
2211         (do_neon_sli): Likewise.
2212         (do_neon_sri): Likewise.
2213         (do_neon_qshlu_imm): Likewise.
2214         (do_neon_cvt_1): Likewise.
2215         (do_neon_cvttb_1): Likewise.
2216         (do_neon_mvn): Likewise.
2217         (do_neon_rev): Likewise.
2218         (do_neon_dup): Likewise.
2219         (do_neon_mov): Likewise.
2220         (do_neon_rshift_round_imm): Likewise.
2221         (do_neon_sat_abs_neg): Likewise.
2222         (do_neon_cls): Likewise.
2223         (do_neon_clz): Likewise.
2224         (do_vmaxnm): Likewise.
2225         (do_vrint_1): Likewise.
2226         (do_vcmla): Likewise.
2227         (do_vcadd): Likewise.
2229 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2231         * NEWS: Mention Armv8.1-M Mainline and MVE.
2233 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2235         * testsuite/gas/arm/mve-tailpredloop.d: New test.
2236         * testsuite/gas/arm/mve-tailpredloop.s: New test.
2237         * testsuite/gas/arm/mve-vabav.d: New test.
2238         * testsuite/gas/arm/mve-vabav.s: New test.
2239         * testsuite/gas/arm/mve-vabd.d: New test.
2240         * testsuite/gas/arm/mve-vabd.s: New test.
2241         * testsuite/gas/arm/mve-vabsneg.d: New test.
2242         * testsuite/gas/arm/mve-vabsneg.s: New test.
2243         * testsuite/gas/arm/mve-vadc.d: New test.
2244         * testsuite/gas/arm/mve-vadc.s: New test.
2245         * testsuite/gas/arm/mve-vaddlv.d: New test.
2246         * testsuite/gas/arm/mve-vaddlv.s: New test.
2247         * testsuite/gas/arm/mve-vaddsub.d: New test.
2248         * testsuite/gas/arm/mve-vaddsub.s: New test.
2249         * testsuite/gas/arm/mve-vaddv.d: New test.
2250         * testsuite/gas/arm/mve-vaddv.s: New test.
2251         * testsuite/gas/arm/mve-vand.d: New test.
2252         * testsuite/gas/arm/mve-vand.s: New test.
2253         * testsuite/gas/arm/mve-vbic.d: New test.
2254         * testsuite/gas/arm/mve-vbic.s: New test.
2255         * testsuite/gas/arm/mve-vbrsr.d: New test.
2256         * testsuite/gas/arm/mve-vbrsr.s: New test.
2257         * testsuite/gas/arm/mve-vcadd.d: New test.
2258         * testsuite/gas/arm/mve-vcadd.s: New test.
2259         * testsuite/gas/arm/mve-vcls.d: New test.
2260         * testsuite/gas/arm/mve-vcls.s: New test.
2261         * testsuite/gas/arm/mve-vclz.d: New test.
2262         * testsuite/gas/arm/mve-vclz.s: New test.
2263         * testsuite/gas/arm/mve-vcmla.d: New test.
2264         * testsuite/gas/arm/mve-vcmla.s: New test.
2265         * testsuite/gas/arm/mve-vcmp.d: New test.
2266         * testsuite/gas/arm/mve-vcmp.s: New test.
2267         * testsuite/gas/arm/mve-vcmul.d: New test.
2268         * testsuite/gas/arm/mve-vcmul.s: New test.
2269         * testsuite/gas/arm/mve-vcvt-1.d: New test.
2270         * testsuite/gas/arm/mve-vcvt-1.s: New test.
2271         * testsuite/gas/arm/mve-vcvt-2.d: New test.
2272         * testsuite/gas/arm/mve-vcvt-2.s: New test.
2273         * testsuite/gas/arm/mve-vcvt-3.d: New test.
2274         * testsuite/gas/arm/mve-vcvt-3.s: New test.
2275         * testsuite/gas/arm/mve-vcvt-4.d: New test.
2276         * testsuite/gas/arm/mve-vcvt-4.s: New test.
2277         * testsuite/gas/arm/mve-vddup.d: New test.
2278         * testsuite/gas/arm/mve-vddup.s: New test.
2279         * testsuite/gas/arm/mve-vdup.d: New test.
2280         * testsuite/gas/arm/mve-vdup.s: New test.
2281         * testsuite/gas/arm/mve-veor.d: New test.
2282         * testsuite/gas/arm/mve-veor.s: New test.
2283         * testsuite/gas/arm/mve-vfma-vfms.d: New test.
2284         * testsuite/gas/arm/mve-vfma-vfms.s: New test.
2285         * testsuite/gas/arm/mve-vfmas.d: New test.
2286         * testsuite/gas/arm/mve-vfmas.s: New test.
2287         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
2288         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
2289         * testsuite/gas/arm/mve-vhcadd.d: New test.
2290         * testsuite/gas/arm/mve-vhcadd.s: New test.
2291         * testsuite/gas/arm/mve-vmax-vmin.d: New test.
2292         * testsuite/gas/arm/mve-vmax-vmin.s: New test.
2293         * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
2294         * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
2295         * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
2296         * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
2297         * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
2298         * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
2299         * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
2300         * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
2301         * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
2302         * testsuite/gas/arm/mve-vmla.d: New test.
2303         * testsuite/gas/arm/mve-vmla.s: New test.
2304         * testsuite/gas/arm/mve-vmladav.d: New test.
2305         * testsuite/gas/arm/mve-vmladav.s: New test.
2306         * testsuite/gas/arm/mve-vmlaldav.d: New test.
2307         * testsuite/gas/arm/mve-vmlaldav.s: New test.
2308         * testsuite/gas/arm/mve-vmlalv.d: New test.
2309         * testsuite/gas/arm/mve-vmlalv.s: New test.
2310         * testsuite/gas/arm/mve-vmlas.d: New test.
2311         * testsuite/gas/arm/mve-vmlas.s: New test.
2312         * testsuite/gas/arm/mve-vmlav.d: New test.
2313         * testsuite/gas/arm/mve-vmlav.s: New test.
2314         * testsuite/gas/arm/mve-vmlsdav.d: New test.
2315         * testsuite/gas/arm/mve-vmlsdav.s: New test.
2316         * testsuite/gas/arm/mve-vmlsldav.d: New test.
2317         * testsuite/gas/arm/mve-vmlsldav.s: New test.
2318         * testsuite/gas/arm/mve-vmov-1.d: New test.
2319         * testsuite/gas/arm/mve-vmov-1.s: New test.
2320         * testsuite/gas/arm/mve-vmov-2.d: New test.
2321         * testsuite/gas/arm/mve-vmov-2.s: New test.
2322         * testsuite/gas/arm/mve-vmul.d: New test.
2323         * testsuite/gas/arm/mve-vmul.s: New test.
2324         * testsuite/gas/arm/mve-vmulh.d: New test.
2325         * testsuite/gas/arm/mve-vmulh.s: New test.
2326         * testsuite/gas/arm/mve-vmullbt.d: New test.
2327         * testsuite/gas/arm/mve-vmullbt.s: New test.
2328         * testsuite/gas/arm/mve-vmvn.d: New test.
2329         * testsuite/gas/arm/mve-vmvn.s: New test.
2330         * testsuite/gas/arm/mve-vorn.d: New test.
2331         * testsuite/gas/arm/mve-vorn.s: New test.
2332         * testsuite/gas/arm/mve-vorr.d: New test.
2333         * testsuite/gas/arm/mve-vorr.s: New test.
2334         * testsuite/gas/arm/mve-vpnot.d: New test.
2335         * testsuite/gas/arm/mve-vpnot.s: New test.
2336         * testsuite/gas/arm/mve-vpsel.d: New test.
2337         * testsuite/gas/arm/mve-vpsel.s: New test.
2338         * testsuite/gas/arm/mve-vpt.d: New test.
2339         * testsuite/gas/arm/mve-vpt.s: New test.
2340         * testsuite/gas/arm/mve-vqabsneg.s: New test.
2341         * testsuite/gas/arm/mve-vqaddsub.d: New test.
2342         * testsuite/gas/arm/mve-vqaddsub.s: New test.
2343         * testsuite/gas/arm/mve-vqdmladh.d: New test.
2344         * testsuite/gas/arm/mve-vqdmladh.s: New test.
2345         * testsuite/gas/arm/mve-vqdmlah.d: New test.
2346         * testsuite/gas/arm/mve-vqdmlah.s: New test.
2347         * testsuite/gas/arm/mve-vqdmlash.d: New test.
2348         * testsuite/gas/arm/mve-vqdmlash.s: New test.
2349         * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
2350         * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
2351         * testsuite/gas/arm/mve-vqdmulh.d: New test.
2352         * testsuite/gas/arm/mve-vqdmulh.s: New test.
2353         * testsuite/gas/arm/mve-vqdmull.d: New test.
2354         * testsuite/gas/arm/mve-vqdmull.s: New test.
2355         * testsuite/gas/arm/mve-vqmovn.d: New test.
2356         * testsuite/gas/arm/mve-vqmovn.s: New test.
2357         * testsuite/gas/arm/mve-vqrshl.d: New test.
2358         * testsuite/gas/arm/mve-vqrshl.s: New test.
2359         * testsuite/gas/arm/mve-vqrshrn.d: New test.
2360         * testsuite/gas/arm/mve-vqrshrn.s: New test.
2361         * testsuite/gas/arm/mve-vqshl.d: New test.
2362         * testsuite/gas/arm/mve-vqshl.s: New test.
2363         * testsuite/gas/arm/mve-vrev.d: New test.
2364         * testsuite/gas/arm/mve-vrev.s: New test.
2365         * testsuite/gas/arm/mve-vrint.d: New test.
2366         * testsuite/gas/arm/mve-vrint.s: New test.
2367         * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
2368         * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
2369         * testsuite/gas/arm/mve-vrshl.d: New test.
2370         * testsuite/gas/arm/mve-vrshl.s: New test.
2371         * testsuite/gas/arm/mve-vsbc.d: New test.
2372         * testsuite/gas/arm/mve-vsbc.s: New test.
2373         * testsuite/gas/arm/mve-vshl.d: New test.
2374         * testsuite/gas/arm/mve-vshl.s: New test.
2375         * testsuite/gas/arm/mve-vshlc.d: New test.
2376         * testsuite/gas/arm/mve-vshlc.s: New test.
2377         * testsuite/gas/arm/mve-vshll.d: New test.
2378         * testsuite/gas/arm/mve-vshll.s: New test.
2379         * testsuite/gas/arm/mve-vshr.d: New test.
2380         * testsuite/gas/arm/mve-vshr.s: New test.
2381         * testsuite/gas/arm/mve-vshrn.d: New test.
2382         * testsuite/gas/arm/mve-vshrn.s: New test.
2383         * testsuite/gas/arm/mve-vsli.d: New test.
2384         * testsuite/gas/arm/mve-vsli.s: New test.
2385         * testsuite/gas/arm/mve-vsri.d: New test.
2386         * testsuite/gas/arm/mve-vsri.s: New test.
2387         * testsuite/gas/arm/mve-vstld.d: New test.
2388         * testsuite/gas/arm/mve-vstld.s: New test.
2389         * testsuite/gas/arm/mve-vstrldr-1.d: New test.
2390         * testsuite/gas/arm/mve-vstrldr-1.s: New test.
2391         * testsuite/gas/arm/mve-vstrldr-2.d: New test.
2392         * testsuite/gas/arm/mve-vstrldr-2.s: New test.
2393         * testsuite/gas/arm/mve-vstrldr-3.d: New test.
2394         * testsuite/gas/arm/mve-vstrldr-3.s: New test.
2396 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2398         * config/tc-arm.c (T16_32_TAB): Add new instructions.
2399         (do_t_loloop): Changed to handle tail predication variants.
2400         (md_apply_fix): Likewise.
2401         (insns): Add entries for MVE mnemonics.
2402         * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
2403         * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
2404         * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
2405         * testsuite/gas/arm/mve-tailpredloop.d: New test.
2407 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2409         * config/tc-arm.c (do_mve_vshll): New encoding function.
2410         (do_mve_vshlc): Likewise.
2411         (insns): Add entries for MVE mnemonics.
2412         * testsuite/gas/arm/mve-vshlc-bad.d: New test.
2413         * testsuite/gas/arm/mve-vshlc-bad.l: New test.
2414         * testsuite/gas/arm/mve-vshlc-bad.s: New test.
2415         * testsuite/gas/arm/mve-vshll-bad.d: New test.
2416         * testsuite/gas/arm/mve-vshll-bad.l: New test.
2417         * testsuite/gas/arm/mve-vshll-bad.s: New test.
2419 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2421         * config/tc-arm.c (enum operand_parse_code): Add new operand.
2422         (parse_operands): Handle new operand.
2423         (do_neon_shl_imm): Accept MVE variants.
2424         (do_neon_shl): Likewise.
2425         (do_neon_qshl_imm): Likewise.
2426         (do_neon_qshl): Likewise.
2427         (do_neon_qshlu_imm): Likewise.
2428         (insns): Likewise.
2429         * testsuite/gas/arm/mve-vqshl-bad.d: New test.
2430         * testsuite/gas/arm/mve-vqshl-bad.l: New test.
2431         * testsuite/gas/arm/mve-vqshl-bad.s: New test.
2432         * testsuite/gas/arm/mve-vshl-bad.d: New test.
2433         * testsuite/gas/arm/mve-vshl-bad.l: New test.
2434         * testsuite/gas/arm/mve-vshl-bad.s: New test.
2436 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2438         * config/tc-arm.c (do_neon_sli): Accept MVE variants.
2439         (do_neon_sri): Likewise.
2440         (do_neon_rev): Likewise.
2441         (do_neon_rshift_round_imm): Likewise.
2442         (insns): Likewise.
2443         * testsuite/gas/arm/mve-vrev-bad.d: New test.
2444         * testsuite/gas/arm/mve-vrev-bad.l: New test.
2445         * testsuite/gas/arm/mve-vrev-bad.s: New test.
2446         * testsuite/gas/arm/mve-vshr-bad.d: New test.
2447         * testsuite/gas/arm/mve-vshr-bad.l: New test.
2448         * testsuite/gas/arm/mve-vshr-bad.s: New test.
2449         * testsuite/gas/arm/mve-vsli-bad.d: New test.
2450         * testsuite/gas/arm/mve-vsli-bad.l: New test.
2451         * testsuite/gas/arm/mve-vsli-bad.s: New test.
2452         * testsuite/gas/arm/mve-vsri-bad.d: New test.
2453         * testsuite/gas/arm/mve-vsri-bad.l: New test.
2454         * testsuite/gas/arm/mve-vsri-bad.s: New test.
2456 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2458         * config/tc-arm.c (do_vrint_1): Accept MVE variants.
2459         (insns): Change entries to accept MVE variants.
2460         * testsuite/gas/arm/mve-vrint-bad.d: New test.
2461         * testsuite/gas/arm/mve-vrint-bad.l: New test.
2462         * testsuite/gas/arm/mve-vrint-bad.s: New test.
2464 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2466         * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
2467          M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
2468          M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
2469          M_MNEM_vqrshrunb): New instruction encodings.
2470         (do_mve_vshrn): New encoding function.
2471         (insns): Add entries for MVE mnemonics.
2472         * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
2473         * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
2474         * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
2475         * testsuite/gas/arm/mve-vshrn-bad.d: New test.
2476         * testsuite/gas/arm/mve-vshrn-bad.l: New test.
2477         * testsuite/gas/arm/mve-vshrn-bad.s: New test.
2479 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2481         * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
2482          M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
2483         (do_mve_vqmovn): New encoding function.
2484         (do_neon_rshl): Change to accepte MVE variants.
2485         (insns): Change entries and add new for MVE mnemonics.
2486         * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
2487         * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
2488         * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
2489         * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
2490         * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
2491         * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
2492         * testsuite/gas/arm/mve-vrshl-bad.d: New test.
2493         * testsuite/gas/arm/mve-vrshl-bad.l: New test.
2494         * testsuite/gas/arm/mve-vrshl-bad.s: New test.
2496 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2498         * config/tc-arm.c (enum operand_parse_code): Add new operand.
2499         (parse_operands): Handle new operand.
2500         (do_mve_vqdmull): New encoding function.
2501         (insns): Add entry for MVE mnemonics.
2502         * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
2503         * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
2504         * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
2506 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2508         * config/tc-arm.c (enum operand_parse_code): Add new operand.
2509         (parse_operands): Handle new operand.
2510         (mve_encode_qqr): Handle new instructions.
2511         (do_neon_qdmulh): Add support for MVE variants.
2512         (do_neon_qrdmlah): Likewise.
2513         (do_mve_vqdmlah): New encoding function.
2514         (insns): Change entries and add new entries for MVE mnemonics.
2515         * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
2516         * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
2517         * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
2519 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2521         * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
2522         (insns): Add entries for MVE mnemonics.
2523         * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
2524         * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
2525         * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
2526         * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
2527         * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
2528         * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
2530 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2532         * config/tc-arm.c (do_mve_vpsel): New encoding function.
2533         (do_mve_vpnot): Likewise.
2534         (insns): Add entries for MVE mnemonics.
2535         * testsuite/gas/arm/mve-vpnot-bad.d: New test.
2536         * testsuite/gas/arm/mve-vpnot-bad.l: New test.
2537         * testsuite/gas/arm/mve-vpnot-bad.s: New test.
2538         * testsuite/gas/arm/mve-vpsel-bad.d: New test.
2539         * testsuite/gas/arm/mve-vpsel-bad.l: New test.
2540         * testsuite/gas/arm/mve-vpsel-bad.s: New test.
2542 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2544         * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
2545         (do_neon_sat_abs_neg): Likewise.
2546         (insns): Likewise.
2547         * testsuite/gas/arm/mve-vmvn-bad.d: New test.
2548         * testsuite/gas/arm/mve-vmvn-bad.l: New test.
2549         * testsuite/gas/arm/mve-vmvn-bad.s: New test.
2550         * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
2551         * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
2552         * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
2554 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2556         * config/tc-arm.c (do_mve_vmlas): New encoding function.
2557         (do_mve_vmulh): Likewise.
2558         (insns): Add entries for MVE mnemonics.
2559         * testsuite/gas/arm/mve-vmlas-bad.d: New test.
2560         * testsuite/gas/arm/mve-vmlas-bad.l: New test.
2561         * testsuite/gas/arm/mve-vmlas-bad.s: New test.
2562         * testsuite/gas/arm/mve-vmulh-bad.d: New test.
2563         * testsuite/gas/arm/mve-vmulh-bad.l: New test.
2564         * testsuite/gas/arm/mve-vmulh-bad.s: New test.
2566 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2568         * config/tc-arm.c (enum operand_parse_code): New operand.
2569         (parse_operands): Handle new operand.
2570         (mve_encode_qqr): Handle new instructions.
2571         (do_neon_dyadic_i64_su): Accept MVE variants.
2572         (neon_dyadic_misc): Likewise.
2573         (do_neon_mac_maybe_scalar): Likewise.
2574         (do_neon_mul): Likewise.
2575         (insns): Change to accept MVE variants.
2576         * testsuite/gas/arm/mve-vmla-bad.d: New test.
2577         * testsuite/gas/arm/mve-vmla-bad.l: New test.
2578         * testsuite/gas/arm/mve-vmla-bad.s: New test.
2579         * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
2580         * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
2581         * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
2582         * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
2583         * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
2584         * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
2585         * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
2586         * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
2587         * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
2589 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2591         * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
2592          M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
2593          M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
2594          M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
2595          M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
2596         instruction encodings.
2597         (NEON_SHAPE_DEF): New shape
2598         (mve_encode_rrqq): New encoding helper function.
2599         (do_mve_vmlaldav): New encoding function.
2600         (do_mve_vrmlaldavh): New encoding function.
2601         (insns): Add entries for MVE mnemonics.
2602         * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
2603         * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
2604         * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
2605         * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
2606         * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
2607         * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
2608         * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
2609         * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
2610         * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
2611         * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
2612         * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
2613         * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
2615 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2617         * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
2618          M_MNEM_vminav): New instruction encodings.
2619         (do_mve_vmaxv): New encoding function.
2620         (insns): Add entries for new MVE mnemonics.
2621         * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
2622         * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
2623         * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
2625 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2627         * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
2628         (insns): Add entries for new mnemonics.
2629         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
2630         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
2631         * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
2633 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2635         * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
2636         (do_mve_vmaxnma_vminnma): Likewise.
2637         (do_neon_dyadic_if_su): Change to support MVE variants.
2638         (do_vmaxnm): Likewise.
2639         (insns): Change to accept MVE variants and add new.
2640         * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
2641         * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
2642         * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
2643         * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
2644         * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
2645         * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
2646         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
2647         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
2648         * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
2649         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
2650         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
2651         * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
2653 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2655         * config/tc-arm.c (enum operand_parse_code): New operand.
2656         (parse_operands): Handle new operand.
2657         (mve_encode_qqr): Change to support new instructions.
2658         (enum vfp_or_neon_is_neon_bits): Moved.
2659         (vfp_or_neon_is_neon): Moved.
2660         (check_simd_pred_availability): Moved.
2661         (do_neon_dyadic_i_su): Changed to support MVE variants.
2662         (neon_dyadic_misc): Changed mve_encode_qqr call.
2663         (do_mve_vbrsr): Likewise.
2664         (do_mve_vhcadd): New encoding function.
2665         (insns): Change existing to accept MVE variants and add new.
2666         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
2667         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
2668         * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
2669         * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
2670         * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
2671         * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
2673 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2675         * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
2676         (insns): Change to accept MVE variants.
2677         * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
2678         * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
2679         * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
2681 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2683         * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
2684          M_MNEM_viwdup): New instruction encodings.
2685         (NEON_SHAPE_DEF): New shapes.
2686         (do_mve_viddup): New encoding function.
2687         (do_neon_dup): Change to support new MVE variants.
2688         (insns): Change existing to accept MVE variants and add new.
2689         * testsuite/gas/arm/mve-vddup-bad.d: New test.
2690         * testsuite/gas/arm/mve-vddup-bad.l: New test.
2691         * testsuite/gas/arm/mve-vddup-bad.s: New test.
2692         * testsuite/gas/arm/mve-vdup-bad.d: New test.
2693         * testsuite/gas/arm/mve-vdup-bad.l: New test.
2694         * testsuite/gas/arm/mve-vdup-bad.s: New test.
2695         * testsuite/gas/arm/mve-vidup-bad.d: New test.
2696         * testsuite/gas/arm/mve-vidup-bad.l: New test.
2697         * testsuite/gas/arm/mve-vidup-bad.s: New test.
2699 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2701         * config/tc-arm.c (do_mve_vfmas): New encoding function.
2702         (do_neon_cls): Change to support MVE variants.
2703         (do_neon_clz): Change to support MVE variants.
2704         (insns): Change to support MVE variants and add new.
2705         * testsuite/gas/arm/mve-vcls-bad.d: New test.
2706         * testsuite/gas/arm/mve-vcls-bad.l: New test.
2707         * testsuite/gas/arm/mve-vcls-bad.s: New test.
2708         * testsuite/gas/arm/mve-vclz-bad.d: New test.
2709         * testsuite/gas/arm/mve-vclz-bad.l: New test.
2710         * testsuite/gas/arm/mve-vclz-bad.s: New test.
2711         * testsuite/gas/arm/mve-vfmas-bad.d: New test.
2712         * testsuite/gas/arm/mve-vfmas-bad.l: New test.
2713         * testsuite/gas/arm/mve-vfmas-bad.s: New test.
2715 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2717         * config/tc-arm.c (enum operand_parse_code): New operands.
2718         (parse_operands): Handle new operands.
2719         (do_mve_vcmul): New encoding function.
2720         (do_vcmla): Change to support MVE variants.
2721         (do_vcadd): Change to support MVE variants.
2722         (insns): Change existing to support MVE variants and add new.
2723         * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
2724         * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
2725         * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
2726         * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
2727         * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
2728         * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
2729         * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
2730         * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
2731         * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
2732         * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
2733         * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
2734         * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
2735         * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
2736         * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
2737         * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
2738         * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
2739         * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
2740         * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
2742 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2744         * config/tc-arm.c (enum operand_parse_code): New operands.
2745         (parse_operands): Handle new operands.
2746         (enum vfp_or_neon_is_neon_bits): Moved
2747         (vfp_or_neon_is_neon): Moved
2748         (check_simd_pred_availability): Moved.
2749         (do_neon_logic): Change to accept MVE variants.
2750         (insns): Changed to accept MVE variants.
2751         * testsuite/gas/arm/mve-vand-bad.d: New test.
2752         * testsuite/gas/arm/mve-vand-bad.l: New test.
2753         * testsuite/gas/arm/mve-vand-bad.s: New test.
2754         * testsuite/gas/arm/mve-vbic-bad.d: New test.
2755         * testsuite/gas/arm/mve-vbic-bad.l: New test.
2756         * testsuite/gas/arm/mve-vbic-bad.s: New test.
2757         * testsuite/gas/arm/mve-veor-bad.d: New test.
2758         * testsuite/gas/arm/mve-veor-bad.l: New test.
2759         * testsuite/gas/arm/mve-veor-bad.s: New test.
2760         * testsuite/gas/arm/mve-vorn-bad.d: New test.
2761         * testsuite/gas/arm/mve-vorn-bad.l: New test.
2762         * testsuite/gas/arm/mve-vorn-bad.s: New test.
2763         * testsuite/gas/arm/mve-vorr-bad.d: New test.
2764         * testsuite/gas/arm/mve-vorr-bad.l: New test.
2765         * testsuite/gas/arm/mve-vorr-bad.s: New test.
2767 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2769         * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
2770          M_MNEM_vaddva): New instruction encodings.
2771         (mve_encode_rq): New encoding helper function.
2772         (do_mve_vaddlv): New encoding function.
2773         (do_mve_vaddv): New encoding function.
2774         * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
2775         * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
2776         * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
2777         * testsuite/gas/arm/mve-vaddv-bad.d: New test.
2778         * testsuite/gas/arm/mve-vaddv-bad.l: New test.
2779         * testsuite/gas/arm/mve-vaddv-bad.s: New test.
2781 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2783         * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
2784         New instruction encodings.
2785         (do_mve_vadc): New encoding instruction.
2786         (do_mve_vbrsr): Likewise.
2787         (do_mve_vsbc): Likewise.
2788         * testsuite/gas/arm/mve-vadc-bad.d: New test.
2789         * testsuite/gas/arm/mve-vadc-bad.l: New test.
2790         * testsuite/gas/arm/mve-vadc-bad.s: New test.
2791         * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
2792         * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
2793         * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
2794         * testsuite/gas/arm/mve-vsbc-bad.d: New test.
2795         * testsuite/gas/arm/mve-vsbc-bad.l: New test.
2796         * testsuite/gas/arm/mve-vsbc-bad.s: New test.
2798 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2800         * config/tc-arm.c (MVE_BAD_QREG): New error message.
2801         (enum operand_parse_code): Define new operand.
2802         (parse_operands): Handle new operand.
2803         (do_mve_vpt): Change for VPT blocks.
2804         (NEON_SHAPE_DEF): New shape.
2805         (neon_logbits): Moved.
2806         (LOW4): Moved
2807         (HI1): Moved
2808         (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
2809         (do_mve_vcmp): New encoding function.
2810         (do_vfp_nsyn_cmp): Changed to support MVE variants.
2811         (insns): Change to support MVE variants of vcmp and add vpt.
2812         * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
2813         * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
2814         * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
2815         * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
2816         * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
2817         * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
2818         * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
2819         * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
2820         * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
2821         * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
2822         * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
2823         * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
2825 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2827         * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
2828         distinguish between types of scalar.
2829         (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
2830         (parse_scalar): Likewise.
2831         (parse_neon_mov): Accept MVE variant.
2832         (po_scalar_or_goto): Make use reg_type.
2833         (parse_operands): Change uses of po_scalar_or_goto.
2834         (do_vfp_sp_monadic): Change to accept MVE variants.
2835         (do_vfp_reg_from_sp): Likewise.
2836         (do_vfp_sp_from_reg): Likewise.
2837         (do_vfp_dp_rd_rm): Likewise.
2838         (do_vfp_dp_rd_rn_rm): Likewise.
2839         (do_vfp_dp_rm_rd_rn): Likewise.
2840         (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
2841         instruction encodings.
2842         (NEON_SHAPE_DEF): New shape.
2843         (do_mve_mov): New encoding fuction.
2844         (do_mve_movn): Likewise.
2845         (do_mve_movl): Likewise.
2846         (do_neon_mov): Change to accept MVE variants.
2847         (mcCE): New MACRO.
2848         (insns): Accept new MVE variants and instructions.
2849         * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
2850         * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
2851         * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
2852         * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
2853         * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
2854         * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
2856 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2858         * config/tc-arm.c (enum operand_parse_code): Add new operand.
2859         (parse_operands): Handle new operand.
2860         (do_neon_cvt_1): Handle MVE variants.
2861         (do_neon_cvttb_1): Likewise.
2862         (insns): Accept MVE variants.
2863         * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
2864         * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
2865         * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
2866         * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
2867         * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
2868         * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
2869         * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
2870         * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
2871         * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
2872         * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
2873         * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
2874         * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
2875         * testsuite/gas/arm/mve-vcvt-bad.d: New test.
2876         * testsuite/gas/arm/mve-vcvt-bad.l: New test.
2877         * testsuite/gas/arm/mve-vcvt-bad.s: New test.
2879 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2881         * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
2882         type of register.
2883         (enum shift_kind): Add SHIFT_UXTW shift kind.
2884         (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
2885         (parse_shift): Handle new shift type.
2886         (parse_address_main): Accept new addressing modes.
2887         (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
2888          M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
2889         instruction encodings.
2890         (do_mve_vstr_vldr_QI): New encoding functions.
2891         (do_mve_vstr_vldr_RQ): Likewise.
2892         (do_mve_vstr_vldr_RI): Likewise.
2893         (do_mve_vstr_vldr): Likewise.
2894         * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
2895         * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
2896         * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
2897         * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
2898         * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
2899         * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
2900         * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
2901         * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
2902         * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
2903         * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
2904         * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
2905         * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
2906         * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
2907         * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
2908         * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
2909         * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
2910         * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
2911         * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
2913 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2915         * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
2916         (BAD_EL_TYPE): New error message.
2917         (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
2918         (parse_address_main): Likewise.
2919         (group_reloc_type): Add GROUP_MVE.
2920         (enum operand_parse_code): Add new operands.
2921         (parse_operands): Handle new operands.
2922         (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
2923          M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
2924          M_MNEM_vld42, M_MNEM_vld43): New encodings.
2925         (do_mve_vst_vld): New encoding function.
2926         (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
2927         (it_fsm_pre_encode): Handle new it_instruction_type
2928         (handle_pred_state): Likewise.
2929         * testsuite/gas/arm/mve-vstld-bad.d: New test.
2930         * testsuite/gas/arm/mve-vstld-bad.l: New test.
2931         * testsuite/gas/arm/mve-vstld-bad.s: New test.
2933 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2935         * config/tc-arm.c (BAD_MVE_AUTO): New error message.
2936         (BAD_MVE_SRCDEST): Likewise.
2937         (mark_feature_used): Diagnose MVE only instructions when in
2938         auto-detection mode or -march=all.
2939         (enum operand_parse_code): Define new operand.
2940         (parse_operands): Handle new operand.
2941         (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
2942         (mve_encode_qqq): New encoding helper function.
2943         (do_mve_vmull): New encoding function.
2944         (insns): Handle new instructions.
2945         * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
2946         * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
2947         * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
2949 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2951         * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
2952         (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
2953         (enum operand_parse_code): Handle new operands.
2954         (parse_operands): Likewise.
2955         (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
2956          M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
2957          M_MNEM_vmlsdavax): Define new encodings.
2958         (NEON_SHAPE_DEF): Add new shape.
2959         (neon_check_type): Use BAD_SIMD_TYPE.
2960         (mve_encode_rqq): New encoding helper function.
2961         (do_mve_vabav, do_mve_vmladav): New encoding functions.
2962         (mCEF): New MACRO.
2963         * testsuite/gas/arm/mve-vabav-bad.d: New test.
2964         * testsuite/gas/arm/mve-vabav-bad.l: New test.
2965         * testsuite/gas/arm/mve-vabav-bad.s: New test.
2966         * testsuite/gas/arm/mve-vmladav-bad.d: New test.
2967         * testsuite/gas/arm/mve-vmladav-bad.l: New test.
2968         * testsuite/gas/arm/mve-vmladav-bad.s: New test.
2969         * testsuite/gas/arm/mve-vmlav-bad.d: New test.
2970         * testsuite/gas/arm/mve-vmlav-bad.l: New test.
2971         * testsuite/gas/arm/mve-vmlav-bad.s: New test.
2972         * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
2973         * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
2974         * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
2976 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2978         * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
2979         (insns): Change vabs and vneg entries to accept MVE variants.
2980         * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
2981         * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
2982         * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
2983         * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
2984         * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
2985         * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
2987 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
2989         * config/tc-arm.c (enum it_instruction_type): Rename to...
2990         (enum pred_instruction_type): ... this. Include VPT types.
2991         (it_insn_type): Rename to ...
2992         (pred_insn_type): .. this.
2993         (arm_it): Change comment.
2994         (enum arm_reg_type): Add new value.
2995         (reg_expected_msgs): New entry.
2996         (asm_opcode): Add mayBeVecPred member.
2997         (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
2998          MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
2999         (arm_vcond_hsh): New table for vector condition codes.
3000         (now_it): Rename to ...
3001         (now_pred): ... this.
3002         (now_it_compatible): Rename to ...
3003         (now_pred_compatible): ... this.
3004         (in_it_block): Rename to ...
3005         (in_pred_block): ... this.
3006         (handle_it_state): Rename to ...
3007         (handle_pred_state): ... this. And change it to accept VPT blocks.
3008         (set_it_insn_type): Rename to ...
3009         (set_pred_insn_type): ... this.
3010         (set_it_insn_type_nonvoid): Rename to ...
3011         (set_pred_insn_type_nonvoid): ... this.
3012         (set_it_insn_type_last): Rename to ...
3013         (set_pred_insn_type_last): ... this.
3014         (record_feature_use): Moved.
3015         (mark_feature_used): Likewise.
3016         (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
3017         (emit_insn): Use renamed functions and variables.
3018         (enum operand_parse_code): Add new operands.
3019         (parse_operands): Handle new operands.
3020         (do_scalar_fp16_v82_encode): Change predication detection.
3021         (do_it): Use renamed functions and variables.
3022         (do_t_add_sub): Likewise.
3023         (do_t_arit3): Likewise.
3024         (do_t_arit3c): Likewise.
3025         (do_t_blx): Likewise.
3026         (do_t_branch): Likewise.
3027         (do_t_bkpt_hlt1): Likewise.
3028         (do_t_branch23): Likewise.
3029         (do_t_bx): Likewise.
3030         (do_t_bxj): Likewise.
3031         (do_t_cond): Likewise.
3032         (do_t_csdb): Likewise.
3033         (do_t_cps): Likewise.
3034         (do_t_cpsi): Likewise.
3035         (do_t_cbz): Likewise.
3036         (do_t_it): Likewise.
3037         (do_mve_vpt): New function to handle VPT blocks.
3038         (encode_thumb2_multi): Use renamed functions and variables.
3039         (do_t_ldst): Use renamed functions and variables.
3040         (do_t_mov_cmp): Likewise.
3041         (do_t_mvn_tst): Likewise.
3042         (do_t_mul): Likewise.
3043         (do_t_nop): Likewise.
3044         (do_t_neg): Likewise.
3045         (do_t_rsb): Likewise.
3046         (do_t_setend): Likewise.
3047         (do_t_shift): Likewise.
3048         (do_t_smc): Likewise.
3049         (do_t_tb): Likewise.
3050         (do_t_udf): Likewise.
3051         (do_t_loloop): Likewise.
3052         (do_neon_cvt_1): Likewise.
3053         (do_vfp_nsyn_cvt_fpv8): Likewise.
3054         (do_vsel): Likewise.
3055         (do_vmaxnm): Likewise.
3056         (do_vrint_1): Likewise.
3057         (do_crypto_2op_1): Likewise.
3058         (do_crypto_3op_1): Likewise.
3059         (do_crc32_1): Likewise.
3060         (it_fsm_pre_encode): Likewise.
3061         (it_fsm_post_encode): Likewise.
3062         (force_automatic_it_block_close): Likewise.
3063         (check_it_blocks_finished): Likewise.
3064         (check_pred_blocks_finished): Likewise.
3065         (arm_cleanup): Likewise.
3066         (now_it_add_mask): Rename to ...
3067         (now_pred_add_mask): ... this. And use new variables and functions.
3068         (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
3069         (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
3070         (neon_check_type): Generalize error message.
3071         (mve_encode_qqr): New MVE generic encoding function.
3072         (neon_dyadic_misc): Change to accept MVE variants.
3073         (do_neon_dyadic_if_su): Likewise.
3074         (do_neon_addsub_if_i): Likewise.
3075         (do_neon_dyadic_long): Likewise.
3076         (vfp_or_neon_is_neon): Add extra checks.
3077         (check_simd_pred_availability): Helper function to check SIMD
3078         instruction availability with respect to predication.
3079         (enum opcode_tag): New suffix value.
3080         (opcode_lookup): Change to handle VPT blocks.
3081         (new_automatic_it_block): Rename to ...
3082         (close_automatic_it_block): ...this.
3083         (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
3084          toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
3085          NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
3086         field.
3087         (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
3088         (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
3089         variants. Add entries for vscclrm, and vpst.
3090         (md_begin): Add arm_vcond_hsh initialization.
3091         * config/tc-arm.h (enum it_state): Rename to...
3092         (enum pred_state): ...this.
3093         (struct current_it): Rename to...
3094         (struct current_pred): ...this.
3095         (enum pred_type): New enum.
3096         (struct arm_segment_info_type): Use current_pred.
3097         * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
3098         * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
3099         * testsuite/gas/arm/dotprod-illegal.l: Update error message.
3100         * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
3101         * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
3102         * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
3103         * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
3104         * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
3105         * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
3106         * testsuite/gas/arm/mve-vpst-bad.d: New test.
3107         * testsuite/gas/arm/mve-vpst-bad.l: New test.
3108         * testsuite/gas/arm/mve-vpst-bad.s: New test.
3109         * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
3111 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
3113         * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
3114         (armv8_1m_main_ext_table): Add new extensions.
3115         (aeabi_set_public_attributes): Translate new features to new build attributes.
3116         (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
3117         * doc/c-arm.texi: Document new extensions and new build attribute.
3119 2019-05-15  John Darrington <john@darrington.wattle.id.au>
3121         * config/tc-s12z.c (register_prefix): New variable.  (md_show_usage,
3122         md_parse_option):  parse the new option.
3123         (lex_reg_name): Scan the prefix if one is set.
3124         * doc/c-s12z.texi (S12Z-Opts): Document the new option.
3125         * testsuite/gas/s12z/reg-prefix.d: New file.
3126         * testsuite/gas/s12z/reg-prefix.s: New file.
3127         * testsuite/gas/s12z/s12z.exp: Add them.
3129 2019-05-14  John Darrington <john@darrington.wattle.id.au>
3131         * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
3133 2019-05-15  Alan Modra  <amodra@gmail.com>
3135         * config/tc-csky.c (md_convert_frag): Initialise trailing
3136         padding for COND_JUMP_PIC.
3138 2019-05-15  Alan Modra  <amodra@gmail.com>
3140         * dwarf2dbg.c: Whitespace fixes.
3141         (get_filenum): Don't strdup "file".  Adjust error message.
3142         (dwarf2_directive_filename): Use an unsigned type for "num".
3143         Catch truncation of file number and overflow of get_filenum
3144         XRESIZEVEC multiplication.  Delete dead code.
3146 2019-05-15  Alan Modra  <amodra@gmail.com>
3148         PR 24538
3149         * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
3150         chars in setting endp.
3152 2019-05-14  Nick Clifton  <nickc@redhat.com>
3154         PR 24538
3155         * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
3156         illegal register numbers.
3158 2019-05-10  Nick Clifton  <nickc@redhat.com>
3160         PR 24538
3161         * macro.c (get_any_string): Increase size of buffer used to hold
3162         decimal value of expression result.
3163         * dw2gencfi.c (get_debugseg_name): Handle an empty name.
3164         * dwarf2dbg.c (get_filenum): Catch integer wraparound when
3165         extending allocate file array.
3166         (dwarf2_directive_filename): Add extra checks of the computed file
3167         number.
3168         * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
3169         warning hash table.
3170         (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
3171         returning -1.
3172         * config/tc-i386.c (i386_output_nops): Catch an attempt to
3173         generate nops of negative lengths.
3174         * as.h (MAX_LITTLENUMS): Move definition to here from...
3175         * config/atof-ieee.c: ...here.
3176         * config/tc-aarch64.c: ...here.
3177         * config/tc-arc.c: ...here.
3178         * config/tc-arm.c: ...here.
3179         * config/tc-epiphany.c: ...here.
3180         * config/tc-i386.c: ...here.
3181         * config/tc-ia64.c: ...here.  (And correct the value).
3182         * config/tc-m32c.c: ...here.
3183         * config/tc-m32r.c: ...here.
3184         * config/tc-metag.c: ...here.
3185         * config/tc-microblaze.c: ...here.
3186         * config/tc-nds32.c: ...here.
3187         * config/tc-or1k.c: ...here.
3188         * config/tc-score.c: ...here.
3189         * config/tc-score7.c: ...here.
3190         * config/tc-tic4x.c: ...here.
3191         * config/tc-tilegx.c: ...here.
3192         * config/tc-tilepro.c: ...here.
3193         * config/tc-visium.c: ...here.
3194         * config/tc-sh.c (md_assemble): Add check for an instruction with
3195         no opcodes.
3196         * config/tc-mips.c (mips_lookup_insn): Add check for very short
3197         instruction name.
3198         * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
3199         array.
3200         (tic54x_start_line_hook): Check for an empty line.
3201         (next_line_shows_parallel): Do not walk off the end of the string.
3202         (tic54x_macro_start): Check for too much macro nesting.
3203         (tic54x_start_label): Add label_start parameter.  Use this
3204         parameter to check the first character of the label.
3206         * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
3207         line_start variable to tic54x_start_label.
3209 2019-05-10  Faraz Shahbazker  <fshahbazker@wavecomp.com>
3211         * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
3212         Add expansions for MIPS r6.
3213         * testsuite/gas/mips/add.s: Enable tests for R6.
3214         * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
3215         * testsuite/gas/mips/mipsr6@add.d: Likewise.
3216         * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
3217         * gas/testsuite/gas/mips/mips.exp: Run the new test.
3219 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3221         * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
3223 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3225         * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
3226         * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
3227         * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
3228         * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
3229         * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
3230         * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
3231         * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
3232         * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
3233         * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
3234         * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
3235         * testsuite/gas/aarch64/sve2.d: Test new instructions.
3236         * testsuite/gas/aarch64/sve2.s: Test new instructions.
3238 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3240         * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
3241         operand.
3243 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3245         * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
3246         operand.
3248 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3250         * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
3251         operand.
3253 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3255         * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
3256         (parse_address_main): Account for new addressing mode [Zn.S, Xm].
3257         (parse_operands): Handle new SVE_ADDR_ZX operand.
3259 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3261         * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
3262         operand.
3264 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3266         * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
3268 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
3270         * config/tc-aarch64.c: Add command line architecture feature flags
3271         "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
3272         * doc/c-aarch64.texi: Document new architecture feature flags.
3274 2019-05-08  Alan Modra  <amodra@gmail.com>
3276         * testsuite/gas/elf/dwarf2-1.s,
3277         * testsuite/gas/elf/dwarf2-2.s,
3278         * testsuite/gas/elf/dwarf2-5.s,
3279         * testsuite/gas/elf/dwarf2-7.s,
3280         * testsuite/gas/elf/dwarf2-8.s,
3281         * testsuite/gas/elf/dwarf2-9.s,
3282         * testsuite/gas/elf/dwarf2-10.s,
3283         * testsuite/gas/elf/dwarf2-11.s,
3284         * testsuite/gas/elf/dwarf2-12.s,
3285         * testsuite/gas/elf/dwarf2-13.s,
3286         * testsuite/gas/elf/dwarf2-14.s,
3287         * testsuite/gas/elf/dwarf2-15.s,
3288         * testsuite/gas/elf/dwarf2-16.s,
3289         * testsuite/gas/elf/dwarf2-17.s,
3290         * testsuite/gas/elf/dwarf2-18.s,
3291         * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
3292         instructions.
3293         * testsuite/gas/elf/dwarf2-1.d,
3294         * testsuite/gas/elf/dwarf2-2.d,
3295         * testsuite/gas/elf/dwarf2-5.d,
3296         * testsuite/gas/elf/dwarf2-7.d,
3297         * testsuite/gas/elf/dwarf2-8.d,
3298         * testsuite/gas/elf/dwarf2-9.d,
3299         * testsuite/gas/elf/dwarf2-10.d,
3300         * testsuite/gas/elf/dwarf2-11.d,
3301         * testsuite/gas/elf/dwarf2-12.d,
3302         * testsuite/gas/elf/dwarf2-13.d,
3303         * testsuite/gas/elf/dwarf2-14.d,
3304         * testsuite/gas/elf/dwarf2-15.d,
3305         * testsuite/gas/elf/dwarf2-16.d,
3306         * testsuite/gas/elf/dwarf2-17.d,
3307         * testsuite/gas/elf/dwarf2-18.d,
3308         * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
3309         Remove avr, pru, tile, xtensa from xfails.  Update expected output.
3310         * testsuite/gas/elf/elf.exp: Sort targets.
3311         (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
3312         for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
3313         * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
3315 2019-05-08  Alan Modra  <amodra@gmail.com>
3317         * config/tc-xtensa.c (opt_linkrelax): New variable.
3318         (md_parse_option): Set it here.
3319         (md_begin): Copy opt_linkrelax to linkrelax.
3321 2019-05-07  Alexandre Oliva <aoliva@redhat.com>
3323         * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
3324         * testsuite/gas/elf/dwarf2-19.d: Likewise.
3326 2019-05-07  Alan Modra  <amodra@gmail.com>
3328         * symbols.c (use_complex_relocs_for): Formatting.  Factor out
3329         X_add_symbol tests.
3331 2019-05-06  Andrew Bennett  <andrew.bennett@imgtec.com>
3332             Faraz Shahbazker  <fshahbazker@wavecomp.com>
3334         * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
3335         (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
3336         (mips_after_parse_args): Translate EVA to EVA_R6.
3337         * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
3338         * testsuite/gas/mips/eva.s: Likewise.
3339         * testsuite/gas/mips/ase-errors-1.l: Check errors for
3340          new instructions.
3341         * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
3343 2019-05-06  Alan Modra  <amodra@gmail.com>
3345         * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
3346         directly.
3348 2019-05-06  Alan Modra  <amodra@gmail.com>
3350         * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
3351         relocs, and VLE sdarel relocs.
3352         * testsuite/gas/ppc/power4.d: Adjust.
3354 2019-05-05  Alexandre Oliva <aoliva@redhat.com>
3356         * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
3357         views of prior locs.
3358         (dwarf2_gen_line_info_1): Skip heads.
3359         (size_inc_line_addr, emit_inc_line_addr): Drop
3360         DW_LNS_advance_pc for zero addr delta.
3361         (dwarf2_finish): Assign views for heads of segments.
3362         * testsuite/gas/elf/dwarf2-19.d: New.
3363         * testsuite/gas/elf/dwarf2-19.s: New.
3364         * testsuite/gas/elf/elf.exp: Test it.
3366 2019-05-04  Alan Modra  <amodra@gmail.com>
3368         * config/tc-m32c.c (insn_size): Delete static var.
3369         (md_begin): Don't set it.
3370         (m32c_md_end): Delete.
3371         (md_assemble): Add insn_size auto var.
3372         * config/tc-m32c.h (md_end): Don't define.
3373         (m32c_md_end): Delete.
3374         (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
3375         * testsuite/gas/all/align.d: Remove m32c from notarget list.
3376         * testsuite/gas/all/incbin.d: Likewise.
3377         * testsuite/gas/elf/dwarf2-11.d: Likewise.
3378         * testsuite/gas/macros/semi.d: Likewise.
3379         * testsuite/gas/all/gas.exp (do_comment): Similarly.
3381 2019-05-02  H.J. Lu  <hongjiu.lu@intel.com>
3383         PR gas/24485
3384         * config/tc-i386.c (process_suffix): Issue a warning to IRET
3385         without a suffix for .code16gcc.
3386         * testsuite/gas/i386/jump16.s: Add tests for iretX.
3387         * testsuite/gas/i386/jump16.d: Updated.
3388         * testsuite/gas/i386/jump16.e: New file.
3390 2019-05-01  Sudakshina Das  <sudi.das@arm.com>
3392         * config/tc-aarch64.c (parse_operands): Add case for
3393         AARCH64_OPND_TME_UIMM16.
3394         (aarch64_features): Add "tme".
3395         * doc/c-aarch64.texi: Document the same.
3396         * testsuite/gas/aarch64/tme-invalid.d: New test.
3397         * testsuite/gas/aarch64/tme-invalid.l: New test.
3398         * testsuite/gas/aarch64/tme-invalid.s: New test.
3399         * testsuite/gas/aarch64/tme.d: New test.
3400         * testsuite/gas/aarch64/tme.s: New test.
3402 2019-04-29  John Darrington <john@darrington.wattle.id.au>
3404         * testsuite/gas/s12z/truncated.d: New file.
3405         * testsuite/gas/s12z/truncated.s: New file.
3406         * testsuite/gas/s12z/s12z.exp: Add new test.
3408 2019-04-26  Andrew Bennett  <andrew.bennett@imgtec.com>
3409             Faraz Shahbazker  <fshahbazker@wavecomp.com>
3411         * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
3412         M_SCDP_AB>: New cases and expansions for paired instructions.
3413         * testsuite/gas/mips/llpscp-32.s: New test source.
3414         * testsuite/gas/mips/llpscp-64.s: Likewise.
3415         * testsuite/gas/mips/llpscp-32.d: New test.
3416         * testsuite/gas/mips/llpscp-64.d: Likewise.
3417         * testsuite/gas/mips/mips.exp: Run the new tests.
3418         * testsuite/gas/mips/r6.s: Add new instructions to test source.
3419         * testsuite/gas/mips/r6-64.s: Likewise.
3420         * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
3421         * testsuite/gas/mips/r6-64-n64.d: Likewise.
3422         * testsuite/gas/mips/r6-n32.d: Likewise.
3423         * testsuite/gas/mips/r6-n64.d: Likwwise.
3424         * testsuite/gas/mips/r6.d: Likewise.
3426 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
3428         PR gas/24485
3429         * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
3430         to IRET for .code16gcc.
3431         * testsuite/gas/i386/jump16.s: Add IRET tests.
3432         * testsuite/gas/i386/jump16.d: Updated.
3434 2019-04-25  Alexandre Oliva  <aoliva@redhat.com>
3435             Alan Modra  <amodra@gmail.com>
3437         PR gas/24444
3438         * frags.c (frag_gtoffset_p): New.
3439         * frags.h (frag_gtoffset_p): Declare it.
3440         * expr.c (resolve_expression): Use it.
3442 2019-04-24  Alan Modra  <amodra@gmail.com>
3444         PR 24444
3445         * symbols.c (resolve_symbol_value): When handling symbols
3446         marked as sy_flags.resolved, return correct value for the
3447         case of expression symbols left as an O_symbol expression.
3448         Merge O_symbol code handling undefined and common symbols with
3449         code handling special cases of expression symbols.  Use
3450         seg_left to test for undefined and common symbols.  Don't
3451         leave an O_symbol expression when X_add_symbol resolves to
3452         the absolute_section.  Init final_val later.
3453         * testsuite/gas/mmix/basep-7.d: Adjust expected output.
3455 2019-04-24  John Darrington <john@darrington.wattle.id.au>
3457         * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
3458         and BCLR instructions with an invalid mode.
3459         * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
3461 2019-04-19  Nick Clifton  <nickc@redhat.com>
3463         PR 24464
3464         * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
3465         to the relaxation function.
3466         * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
3467         number of iterations.  Make sure that our internal iteration limit
3468         does not exceed this external iteration limit.
3470 2019-04-18  Matthew Fortune  <matthew.fortune@mips.com>
3472         * config/tc-mips.c (match_non_zero_reg_operand): Update
3473         warning message.
3474         * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
3476 2019-04-18  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
3478         * config/tc-msp430.c (msp430_make_init_symbols): Define
3479         __crt0_run_{preinit,init,fini}_array symbols if
3480         .{preinit,init,fini}_array sections exist.
3481         * testsuite/gas/msp430/fini-array.d: New test.
3482         * testsuite/gas/msp430/init-array.d: New test.
3483         * testsuite/gas/msp430/preinit-array.d: New test.
3484         * testsuite/gas/msp430/fini-array.s: New test source.
3485         * testsuite/gas/msp430/init-array.s: New test source.
3486         * testsuite/gas/msp430/preinit-array.s: New test source.
3487         * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3489 2019-04-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
3491         * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
3492         symbol when .lower.bss or .either.bss sections exist.
3493         Define __crt0_movedata when .lower.data or .either.data sections exist.
3494         * testsuite/gas/msp430/either-data-bss-sym.d: New test.
3495         * testsuite/gas/msp430/low-data-bss-sym.d: New test.
3496         * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
3497         * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
3498         * testsuite/gas/msp430/msp430.exp: Run new tests.
3499         Enable large code model when running -mdata-region={upper,either}
3500         tests.
3502 2019-04-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
3504         * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
3505         OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
3506         (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
3507         OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
3508         accordingly.
3509         (md_show_usage): Likewise.
3510         (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
3511         "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
3512         (md_longopts): Likewise.
3513         (warn_eint_nop): Update comment.
3514         (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
3515         prev_insn_is_dint or we are assembling for 430 ISA.
3516         (msp430_operands): Only call warn_unsure_interrupt if
3517         do_unknown_interrupt_nops == TRUE.
3518         * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
3519         * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
3520         * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
3521         * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
3522         * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
3523         test.
3524         * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
3525         * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3527 2019-04-16  Alan Modra  <amodra@gmail.com>
3529         * testsuite/gas/all/weakref1.d: xfail nds32.
3531 2019-04-16  Alan Modra  <amodra@gmail.com>
3533         * testsuite/gas/all/gas.exp: Remove ns32k xfails.
3534         * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
3536 2019-04-16  Alan Modra  <amodra@gmail.com>
3538         * write.h: Don't include bit_fix.h.
3539         (struct fix): Rearrange some fields.  Delete fx_im_disp and
3540         fx_bit_fixP.  Use bitfields for fx_size and fx_pcrel_adjust.
3541         * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
3542         (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
3543         (print_fixup): Don't print im_disp.
3544         * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
3545         and fx_im_disp.
3546         * config/tc-dlx.c (md_apply_fix): Remove wrong debug code.  Set
3547         fx_no_overflow when fx_bit_fixP.
3548         * config/tc-dlx.h: Include bit_fix.h.
3549         (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
3550         * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
3551         fx_no_overflow when bit_fixP.
3552         * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
3553         (fix_im_disp, fix_bit_fixP): Adjust to suit.
3554         (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
3556 2019-04-16  Alan Modra  <amodra@gmail.com>
3558         * write.h (struct fix <fx_where>): Make unsigned.
3559         (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
3560         * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
3561         "size" parameters unsigned long.
3562         (fix_new_internal): Likewise.  Adjust error format string to suit.
3563         * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
3564         * config/tc-sparc.c (md_apply_fix): Likewise.
3565         * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
3566         * config/tc-score7.c (s7_convert_frag): Likewise.
3568 2019-04-16  Alan Modra  <amodra@gmail.com>
3570         * frags.h (struct frag <fr_fix>): Use unsigned type.
3571         * frags.c (frag_new): Assert that current size exceeds
3572         old_frags_var_max_size.
3573         * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
3574         * listing.c (calc_hex): Likewise.
3575         * write.c (cvt_frag_to_fill, write_relocs): Likewise.
3576         * config/tc-arc.c (md_convert_frag): Likewise.
3577         * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
3578         * config/tc-mips.c (md_convert_frag): Likewise.
3579         * config/tc-rl78.c (md_convert_frag): Likewise.
3580         * config/tc-rx.c (md_convert_frag): Likewise.
3581         * config/tc-sparc.c (md_apply_fix): Likewise.
3582         * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
3583         (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
3585 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
3587         * config/tc-arm.c (parse_sys_vldr_vstr): New function.
3588         (OP_VLDR): New enum operand_parse_code enumerator.
3589         (parse_operands): Add logic for OP_VLDR.
3590         (do_t_vldr_vstr_sysreg): New function.
3591         (do_vldr_vstr): Likewise.
3592         (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
3593         (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
3594         Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
3595         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
3596         uses of VLDR and VSTR.
3597         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
3598         above bad uses.
3599         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
3600         VSTR valid uses.
3601         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
3602         above examples.
3604 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
3606         * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
3607         (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3608         enumerators.
3609         (parse_vfp_reg_list): Add new partial_match parameter.  Set
3610         *partial_match to TRUE if at least one element in the register list has
3611         matched.  Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3612         register lists which expect VPR as last element in the list.
3613         (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
3614         prototype.
3615         (s_arm_unwind_save_vfp): Likewise.
3616         (enum operand_parse_code): New OP_VRSDVLST enumerator.
3617         (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
3618         Handle new OP_VRSDVLST case.
3619         (do_t_vscclrm): New function.
3620         (insns): New entry for VSCCLRM instruction.
3621         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
3622         instructions.
3623         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
3624         for above instructions.
3625         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
3626         instruction.
3627         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
3628         for above instructions.
3630 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
3632         * config/tc-arm.c (enum reg_list_els): Define earlier and add
3633         REGLIST_RN and REGLIST_CLRM enumerators.
3634         (parse_reg_list): Add etype parameter to distinguish between regular
3635         core register list and CLRM register list.  Add logic to
3636         recognize CLRM register list.
3637         (parse_vfp_reg_list): Assert type is not for core register list.
3638         (s_arm_unwind_save_core): Update call to parse_reg_list to new
3639         prototype.
3640         (enum operand_parse_code): Declare OP_CLRMLST enumerator.
3641         (parse_operands): Update call to parse_reg_list to new prototype.  Add
3642         logic for OP_CLRMLST.
3643         (encode_thumb2_ldmstm): Rename into ...
3644         (encode_thumb2_multi): This.  Add do_io parameter.  Add logic to
3645         encode CLRM and guard LDM/STM only code by do_io.
3646         (do_t_ldmstm): Adapt to use encode_thumb2_multi.
3647         (do_t_push_pop): Likewise.
3648         (do_t_clrm): New function.
3649         (insns): Define CLRM.
3650         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
3651         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
3652         * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
3653         * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
3654         * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
3656 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3657             Andre Vieira  <andre.simoesdiasvieira@arm.com>
3659         * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
3660         for the LR operand and optional LR operand.
3661         (parse_operands): Add switch cases for OP_LR and OP_oLR for
3662         both type checking and value checking.
3663         (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
3664         (v8_1_loop_reloc): New helper function for handling labels
3665         for the low overhead loop instructions.
3666         (do_t_loloop): New function to encode DLS, WLS and LE.
3667         (insns): New entries for WLS, DLS and LE.
3668         (md_pcrel_from_section): New switch case
3669         for BFD_RELOC_ARM_THUMB_LOOP12.
3670         (md_appdy_fix): Likewise.
3671         (tc_gen_reloc): Likewise.
3672         * testsuite/gas/arm/armv8_1-m-tloop.s: New.
3673         * testsuite/gas/arm/armv8_1-m-tloop.d: New.
3674         * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
3675         * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
3676         * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
3678 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3679             Andre Vieira  <andre.simoesdiasvieira@arm.com>
3681         * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
3682         (do_t_v8_1_branch): New switch case for bfcsel.
3683         (toU): Define.
3684         (insns): New instruction for bfcsel.
3685         (md_pcrel_from_section): New switch case
3686         for BFD_RELOC_THUMB_PCREL_BFCSEL.
3687         (md_appdy_fix): Likewise
3688         (tc_gen_reloc): Likewise.
3689         * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
3690         * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
3692 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3694         * config/tc-arm.c (md_pcrel_from_section): New switch case for
3695         BFD_RELOC_ARM_THUMB_BF13.
3696         (md_appdy_fix): Likewise.
3697         (tc_gen_reloc): Likewise.
3699 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3700             Andre Vieira  <andre.simoesdiasvieira@arm.com>
3702         * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
3703         (do_t_v8_1_branch): New switch case for bfl.
3704         (insns): New instruction for bfl.
3705         * testsuite/gas/arm/armv8_1-m-bfl.d: New.
3706         * testsuite/gas/arm/armv8_1-m-bfl.s: New.
3707         * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
3708         * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
3709         * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
3710         * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
3711         * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
3713 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3715         * config/tc-arm.c (md_pcrel_from_section): New switch case for
3716         BFD_RELOC_ARM_THUMB_BF19.
3717         (md_appdy_fix): Likewise.
3718         (tc_gen_reloc): Likewise.
3720 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3722         * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
3723         (do_t_v8_1_branch): New switch cases for bfx and bflx.
3724         (insns): New instruction for bfx and bflx.
3725         * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
3726         * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
3727         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
3728         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
3729         * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
3731 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3732             Andre Vieira  <andre.simoesdiasvieira@arm.com>
3734         * config/tc-arm.c (T16_32_TAB): New entries for bf.
3735         (do_t_branch_future): New.
3736         (insns): New instruction for bf.
3737         * testsuite/gas/arm/armv8_1-m-bf.d: New.
3738         * testsuite/gas/arm/armv8_1-m-bf.s: New.
3739         * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
3740         * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
3741         * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
3742         * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
3743         * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
3745 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3747         * config/tc-arm.c (md_pcrel_from_section): New switch case for
3748         BFD_RELOC_ARM_THUMB_BF17.
3749         (md_appdy_fix): Likewise.
3750         (tc_gen_reloc): Likewise.
3752 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3754         * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
3755         (arm_it): Member reloc renamed relocs and updated to an array.
3756         Rest: Replace all occurrences of reloc to relocs[0].
3758 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
3760         * config/tc-arm.c (md_pcrel_from_section): New switch case
3761         for BFD_RELOC_THUMB_PCREL_BRANCH5.
3762         (v8_1_branch_value_check): New function to check branch
3763         offsets.
3764         (md_appdy_fix): New switch case for
3765         BFD_RELOC_THUMB_PCREL_BRANCH5.
3766         (tc_gen_reloc): Likewise.
3768 2019-04-15  Andre Vieira  <andre.simoesdiasvieira@arm.com>
3770         * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
3771         (armv8_1m_main_ext_table): New extension table.
3772         (arm_archs): Use the new extension table.
3773         * doc/c-arm.texi: Add missing arch and document new extensions.
3774         * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
3775         * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
3776         * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
3778 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
3780         * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
3781         Tag_CPU_arch build attribute value.  Reindent.
3782         (get_aeabi_cpu_arch_from_fset): Update assert.
3783         (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
3784         * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
3786 2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
3788         * config/tc-mips.c (mips_cpu_info_table): Add i6500.  Update
3789         default ASEs for i6400.
3790         * doc/c-mips.texi (-march): Document i6500.
3791         * testsuite/gas/mips/elf_mach_i6400.d: New test.
3792         * testsuite/gas/mips/elf_mach_i6500.d: New test.
3793         * testsuite/gas/mips/mips.exp: Run the new tests.
3795 2019-04-09  Matthew Fortune  <matthew.fortune@mips.com>
3797         * config/tc-mips.c (mips_set_options) <init_ase>: New field.
3798         (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
3799         (file_mips_check_options): Propagate initial ASE settings.
3800         (mips_after_parse_args, parse_code_option): Track the initial
3801         ASE settings for a CPU.
3802         (s_mipsset): Restore the initial ASE settings when reverting
3803         to the default arch.
3804         * testsuite/gas/mips/elf_mach_p6600.d: New test.
3805         * testsuite/gas/mips/mips.exp: Run the new test.
3807 2019-04-12  John Darrington <john@darrington.wattle.id.au>
3809         config/tc-s12z.h: Remove definition of macro TC_M68K
3811 2019-04-01  John Darrington <john@darrington.wattle.id.au>
3813         config/tc-s12z.c: Use bfd_boolean where appropriate.
3815 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
3817         * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
3818         * testsuite/gas/xtensa/loop-relax.d: New test definition.
3819         * testsuite/gas/xtensa/loop-relax.s: New test source.
3820         * testsuite/gas/xtensa/text-section-literals-1a.d: New test
3821         definition.
3822         * testsuite/gas/xtensa/text-section-literals-2.d: New test
3823         definition.
3824         * testsuite/gas/xtensa/text-section-literals-2.s: New test
3825         source.
3826         * testsuite/gas/xtensa/text-section-literals-2a.d: New test
3827         definition.
3828         * testsuite/gas/xtensa/text-section-literals-3.d: New test
3829         definition.
3830         * testsuite/gas/xtensa/text-section-literals-3.s: New test
3831         source.
3832         * testsuite/gas/xtensa/text-section-literals-4.d: New test
3833         definition.
3834         * testsuite/gas/xtensa/text-section-literals-4.s: New test
3835         source.
3836         * testsuite/gas/xtensa/text-section-literals-4a.d: New test
3837         definition.
3839 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
3841         * testsuite/gas/xtensa/all.exp: Remove all expect-based
3842         tests and all explicit run_dump_test / run_list_test
3843         invocations. Add run_dump_tests for all .d files in the
3844         test subdirectory.
3845         * testsuite/gas/xtensa/entry_align.d: New test definition.
3846         * testsuite/gas/xtensa/entry_align.l: New test output.
3847         * testsuite/gas/xtensa/entry_misalign.d: New test definition.
3848         * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
3849         * testsuite/gas/xtensa/j_too_far.d: New test definition.
3850         * testsuite/gas/xtensa/j_too_far.l: New test output.
3851         * testsuite/gas/xtensa/loop_align.d: New test definition.
3852         * testsuite/gas/xtensa/loop_misalign.d: New test definition.
3853         * testsuite/gas/xtensa/trampoline-2.d: New test definition.
3854         * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
3855         * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
3857 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
3859         * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
3860         no effect.
3861         (get_literal_pool_location): Only search for the literal pool
3862         when auto litpools is used, otherwise take one recorded in the
3863         tc_segment_info_data.
3864         (xtensa_assign_litpool_addresses): New function.
3865         (xtensa_move_literals): Don't duplicate 'literal pool location
3866         required...' error message. Call xtensa_assign_litpool_addresses.
3868 2019-04-11  Max Filippov  <jcmvbkbc@gmail.com>
3870         * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
3871         (xtensa_mark_literal_pool_location): Don't add fill frag to literal
3872         section that records literal pool location.
3873         (md_begin): Call xtensa_mark_literal_pool_location when text
3874         section literals or auto litpools are used.
3875         (xtensa_elf_section_change_hook): Call
3876         xtensa_mark_literal_pool_location when text section literals or
3877         auto litpools are used, there's no literal pool location defined
3878         for the current section and it's not .init or .fini.
3879         * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
3880         * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
3881         * testsuite/gas/xtensa/auto-litpools.d: Likewise.
3883 2019-04-11  Sudakshina Das  <sudi.das@arm.com>
3885         * config/tc-aarch64.c (process_omitted_operand): Add case for
3886         AARCH64_OPND_Rt_SP.
3887         (parse_operands): Likewise.
3888         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
3889         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3890         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3891         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3893 2019-04-11  Sudakshina Das  <sudi.das@arm.com>
3895         * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
3896         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3897         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3898         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3900 2019-04-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3902         * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
3903         * testsuite/gas/i386/solaris/solaris.exp: New driver.
3904         * testsuite/gas/i386/solaris/reloc64.d,
3905         testsuite/gas/i386/solaris/x86-64-jump.d,
3906         testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
3907         testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
3908         testsuite/gas/i386/solaris/x86-64-nop-3.d,
3909         testsuite/gas/i386/solaris/x86-64-nop-4.d,
3910         testsuite/gas/i386/solaris/x86-64-nop-5.d,
3911         testsuite/gas/i386/solaris/x86-64-relax-2.d,
3912         testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
3913         * testsuite/gas/i386/reloc64.d,
3914         testsuite/gas/i386/x86-64-jump.d,
3915         testsuite/gas/i386/x86-64-mpx-branch-1.d,
3916         testsuite/gas/i386/x86-64-mpx-branch-2.d,
3917         testsuite/gas/i386/x86-64-nop-3.d,
3918         testsuite/gas/i386/x86-64-nop-4.d,
3919         testsuite/gas/i386/x86-64-nop-5.d,
3920         testsuite/gas/i386/x86-64-relax-2.d,
3921         testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
3923 2019-04-10  Alan Modra  <amodra@gmail.com>
3925         * config/te-cloudabi.h: New file.
3926         * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
3927         rather than TARGET_OS to select cloudabi.
3928         * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
3929         * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
3931 2019-04-09  Robert Suchanek  <robert.suchanek@mips.com>
3933         * testsuite/gas/mips/mips.exp: Run hwr-names test.
3934         * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
3935         the SEL field.
3936         * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
3938 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
3940         * config/tc-i386.c (output_insn): Support
3941         GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
3942         * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
3943         * testsuite/gas/i386/property-2.d: Updated.
3944         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3946 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
3948         * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
3949         * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
3950         check.
3952 2019-04-05  H.J. Lu  <hongjiu.lu@intel.com>
3954         * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
3955         * testsuite/gas/i386/property-2.d: New file.
3956         * testsuite/gas/i386/property-2.s: Likewise.
3957         * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3959 2019-04-05  Xuepeng Guo  <xuepeng.guo@intel.com>
3961         * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
3962         (cpu_noarch): Add noavx512_bf16.
3963         * doc/c-i386.texi: Document avx512_bf16.
3964         * testsuite/gas/i386/avx512_bf16.d: New file.
3965         * testsuite/gas/i386/avx512_bf16.s: Likewise.
3966         * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
3967         * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
3968         * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
3969         * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
3970         * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
3971         * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
3972         * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
3973         * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
3974         * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
3975         * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
3976         * testsuite/gas/i386/i386.exp: Add BF16 related tests.
3978 2019-04-05  Alan Modra  <amodra@gmail.com>
3980         * testsuite/gas/ppc/bc.s,
3981         * testsuite/gas/ppc/bcat.d,
3982         * testsuite/gas/ppc/bcaterr.d,
3983         * testsuite/gas/ppc/bcaterr.l,
3984         * testsuite/gas/ppc/bcy.d,
3985         * testsuite/gas/ppc/bcyerr.d,
3986         * testsuite/gas/ppc/bcyerr.l: New tests.
3987         * testsuite/gas/ppc/ppc.exp: Run them.
3989 2019-04-05  Alan Modra  <amodra@gmail.com>
3991         * testsuite/gas/ppc/476.d: Remove trailing spaces.
3992         * testsuite/gas/ppc/a2.d: Likewise.
3993         * testsuite/gas/ppc/booke.d: Likewise.
3994         * testsuite/gas/ppc/booke_xcoff.d: Likewise.
3995         * testsuite/gas/ppc/e500.d: Likewise.
3996         * testsuite/gas/ppc/e500mc.d: Likewise.
3997         * testsuite/gas/ppc/e6500.d: Likewise.
3998         * testsuite/gas/ppc/htm.d: Likewise.
3999         * testsuite/gas/ppc/power6.d: Likewise.
4000         * testsuite/gas/ppc/power8.d: Likewise.
4001         * testsuite/gas/ppc/power9.d: Likewise.
4002         * testsuite/gas/ppc/vle.d: Likewise.
4004 2019-04-04  Peter Bergner  <bergner@linux.ibm.com>
4006         PR gas/24349
4007         * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
4008         btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
4009         bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
4010         bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
4011         bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
4012         bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
4013         bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
4014         bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
4015         bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
4016         beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
4017         bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
4018         buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
4019         bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
4020         bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
4021         bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
4022         bttarl+): Add tests of extended mnemonics.
4023         * testsuite/gas/ppc/power8.d: Likewise.  Update previous bctar tests
4024         to expect new extended mnemonics.
4025         * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
4026         to not use illegal BO value.  Use a more convenient BI value.
4027         * testsuite/gas/ppc/a2.d: Update tests for new expect output.
4029 2019-04-03  Max Filippov  <jcmvbkbc@gmail.com>
4031         * config/tc-xtensa.c (convert_frag_immed): Drop
4032         convert_frag_immed_finish_loop invocation.
4033         (convert_frag_immed_finish_loop): Drop declaration and
4034         definition.
4035         * config/xtensa-relax.c (widen_spec_list): Replace loop
4036         widening that uses addi/addmi with widening that uses l32r
4037         and const16.
4039 2019-04-01  Andre Vieira  <andre.simoesdiasvieira@arm.com>
4041         * config/tc-arm.c (arm_ext_table): New struct type.
4042         (arm_arch_option_table): Add new 'arm_ext_table' field.
4043         (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
4044         (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
4045         armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
4046         armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
4047         armv85a_ext_table, armv8m_main_ext_table,
4048         armv8r_ext_table): New architecture extension tables.
4049         (ARM_ARCH_OPT): Add new default field.
4050         (ARM_ARCH_OPT2): New macro.
4051         (arm_archs): Extend some architectures with the new architecture
4052         extension tables mentioned above.
4053         (arm_extensions): Add DEPRECATED comment with instructions to
4054         use new table.
4055         (arm_parse_extension): Change to use new extension tables.
4056         (arm_parse_cpu): Don't change existing behavior.
4057         (arm_parse_arch): Change to use new extension tables.
4058         * doc/c-arm.texi: Document new architecture extensions.
4059         * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
4060         extension option rather than -mfpu and change expected behaviour to
4061         sane outputs.
4062         * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
4063         * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
4064         * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
4065         * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
4066         * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
4067         * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
4068         * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
4069         * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
4070         * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
4071         * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
4072         * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
4073         * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
4074         * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
4075         * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
4076         * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
4077         * testsuite/gas/arm/armv8m.main+fp.d: New.
4078         * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
4079         * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
4080         * testsuite/gas/arm/attr-ext-fpv5.d: New.
4081         * testsuite/gas/arm/attr-ext-idiv.d: New.
4082         * testsuite/gas/arm/attr-ext-mp.d: New.
4083         * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
4084         * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
4085         * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
4086         * testsuite/gas/arm/attr-ext-sec.d: New.
4087         * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
4088         * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
4089         * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
4090         * testsuite/gas/arm/attr-ext-vfpv3.d: New.
4091         * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
4092         * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
4093         * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
4094         * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
4095         * testsuite/gas/arm/attr-ext-vfpv4.d: New.
4096         * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
4097         * testsuite/gas/arm/fpv5-d16.s: New.
4098         * testsuite/gas/arm/fpv5-sp-d16.s: New.
4100 2019-03-28  Alan Modra  <amodra@gmail.com>
4102         PR 24390
4103         * testsuite/gas/ppc/476.d: Update mtfsb*.
4104         * testsuite/gas/ppc/a2.d: Likewise.
4106 2019-03-21  Alan Modra  <amodra@gmail.com>
4108         * emul.h (struct emulation): Delete strip_underscore.
4109         * emul-target.h (emul_strip_underscore): Don't define.
4110         (emul_struct_name): Update initialization.
4112 2019-03-21  Alan Modra  <amodra@gmail.com>
4114         * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
4115         * config/tc-pdp11.c (md_apply_fix): Likewise.
4116         * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
4117         BFD_RELOC_16, and BFD_RELOC_64.
4118         * testsuite/gas/all/gas.exp: Move target exclusions for forward
4119         test, but not cr16, to..
4120         * testsuite/gas/all/forward.d: ..here, with explanation.  Remove
4121         d10v, d30v, and pdp11 xfails.
4123 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
4125         * config/tc-i386.c (optimize_encoding): Don't check AVX for
4126         EVEX vector load/store optimization.  Check both operands for
4127         ZMM register.  Update EVEX vector load/store opcode check.
4128         Choose EVEX Disp8 over VEX Disp32.
4129         * testsuite/gas/i386/optimize-1.d: Updated.
4130         * testsuite/gas/i386/optimize-1a.d: Likewise.
4131         * testsuite/gas/i386/optimize-2.d: Likewise.
4132         * testsuite/gas/i386/optimize-4.d: Likewise.
4133         * testsuite/gas/i386/optimize-5.d: Likewise.
4134         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
4135         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
4136         * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
4137         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4138         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
4139         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
4140         * testsuite/gas/i386/optimize-1.s: Add ZMM register load
4141         test.
4142         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
4144 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
4146         PR gas/24352
4147         * config/tc-i386.c (optimize_encoding): Check only
4148         cpu_arch_flags.bitfield.cpuavx512vl.
4149         * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
4150         * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
4151         change.
4152         * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
4153         * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
4155 2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>
4157         PR gas/24359
4158         * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
4159         x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
4160         Remove optimize-6c and x86-64-optimize-7c tests.
4161         * testsuite/gas/i386/noavx-3.l: Updated.
4162         * testsuite/gas/i386/noavx-4.d: Likewise.
4163         * testsuite/gas/i386/noavx-5.d: Likewise.
4164         * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
4165         * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
4166         * testsuite/gas/i386/nosse-5.s: Likewise.
4167         * testsuite/gas/i386/optimize-6a.d: Removed.
4168         * testsuite/gas/i386/optimize-6c.d: Likewise.
4169         * testsuite/gas/i386/optimize-7.d: Likewise.
4170         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
4171         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
4172         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
4173         * testsuite/gas/i386/optimize-6a.l: New file.
4174         * testsuite/gas/i386/optimize-6a.s: Likewise.
4175         * testsuite/gas/i386/optimize-7.l: Likewise.
4176         * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
4177         * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
4178         * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
4180 2019-03-18  Alan Modra  <amodra@gmail.com>
4182         * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
4183         * as.c (macro_expr): Likewise.
4184         * macro.c (buffer_and_nest): Likewise.
4185         * read.c (temp_ilp): Remove FIXME.
4187 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
4189         * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
4190         * testsuite/gas/i386/avx512bw-intel.d: Likewise.
4191         * testsuite/gas/i386/avx512bw.d: Likewise.
4192         * testsuite/gas/i386/avx512f-intel.d: Likewise.
4193         * testsuite/gas/i386/avx512f.d: Likewise.
4194         * testsuite/gas/i386/disp32.d: Likewise.
4195         * testsuite/gas/i386/intel-regs.d: Likewise.
4196         * testsuite/gas/i386/pseudos.d: Likewise.
4197         * testsuite/gas/i386/x86-64-disp32.d: Likewise.
4198         * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
4200 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
4202         PR gas/24348
4203         * config/tc-i386.c (optimize_encoding): Encode 128-bit and
4204         256-bit EVEX vector register load/store instructions as VEX
4205         vector register load/store instructions for -O1.
4206         * doc/c-i386.texi: Update -O1 documentation.
4207         * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
4208         * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
4209         load/store instructions.
4210         * testsuite/gas/i386/optimize-2.s: Likewise.
4211         * testsuite/gas/i386/optimize-3.s: Likewise.
4212         * testsuite/gas/i386/optimize-5.s: Likewise.
4213         * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
4214         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4215         * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
4216         * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
4217         * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
4218         * testsuite/gas/i386/optimize-1.d: Updated.
4219         * testsuite/gas/i386/optimize-2.d: Likewise.
4220         * testsuite/gas/i386/optimize-3.d: Likewise.
4221         * testsuite/gas/i386/optimize-4.d: Likewise.
4222         * testsuite/gas/i386/optimize-5.d: Likewise.
4223         * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
4224         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4225         * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
4226         * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
4227         * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
4228         * testsuite/gas/i386/optimize-7.d: New file.
4229         * testsuite/gas/i386/optimize-7.s: Likewise.
4230         * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
4231         * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
4233 2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>
4235         * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
4236         VEX/EVEX vector register clearing instructions with 128-bit VEX
4237         vector register clearing instructions at -O1.
4238         * doc/c-i386.texi: Update -O1 and -O2 documentation.
4239         * testsuite/gas/i386/i386.exp: Run optimize-1a and
4240         x86-64-optimize-2a.
4241         * testsuite/gas/i386/optimize-1a.d: New file.
4242         * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
4244 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
4246         PR gas/24353
4247         * config/tc-i386.c: Include <limits.h> if it exists and try
4248         including <sys/param.h> if we have it.
4249         (INT_MAX): Define if not defined.
4250         (md_parse_option): Set optimize to INT_MAX for -Os.
4251         * testsuite/gas/i386/optimize-2.s: Add a test.
4252         * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4253         * testsuite/gas/i386/optimize-2.d: Updated.
4254         * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4256 2019-03-17  H.J. Lu  <hongjiu.lu@intel.com>
4258         PR gas/24352
4259         * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
4260         with 128-bit VEX encoding only when AVX is enabled and with
4261         128-bit EVEX encoding only when AVX512VL is enabled.
4262         * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
4263         * testsuite/gas/i386/optimize-6.s: New file.
4264         * testsuite/gas/i386/optimize-6a.d: Likewise.
4265         * testsuite/gas/i386/optimize-6b.d: Likewise.
4266         * testsuite/gas/i386/optimize-6c.d: Likewise.
4267         * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
4268         * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
4269         * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
4270         * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
4271         * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
4273 2019-03-15  Li Hao  <li.hao296@zte.com.cn>
4275         PR 24308
4276         * config/tc-i386.c (parse_insn): Check mnemp before using it to
4277         determine if a suffix can be trimmed.
4279 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4281         * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
4283 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4285         * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
4287 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4289         * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
4291 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4293         * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
4295 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4297         * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
4298         (out_debug_aranges, out_debug_info): Likewise.
4300 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4302         * symbols.h (symbol_temp_new_now_octets): Declare.
4303         (symbol_set_value_now_octets, symbol_octets_p): Declare.
4304         * symbols.c (struct symbol_flags): New member sy_octets.
4305         (symbol_temp_new_now_octets): New function.
4306         (resolve_symbol_value): Return octets instead of bytes if
4307         sy_octets is set.
4308         (symbol_set_value_now_octets): New function.
4309         (symbol_octets_p): New function.
4311 2019-03-13  Christian Eggers  <ceggers@gmx.de>
4313         * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
4315 2019-03-12  Andreas Krebbel  <krebbel@linux.ibm.com>
4317         * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
4318         * testsuite/gas/s390/zarch-arch13.d: Likewise.
4320 2019-02-27  Matthew Malcomson  <matthew.malcomson@arm.com>
4322         * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
4323         * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
4324         * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
4325         * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
4326         lines.
4327         * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
4328         * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
4330 2019-02-24  Alan Modra  <amodra@gmail.com>
4332         * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
4334 2019-02-24  Alan Modra  <amodra@gmail.com>
4336         PR 24144
4337         * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
4338         of section to ensure file contents cover aligned section size.
4340 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
4342         * config/tc-arm.c (arm_cpus): Add neoverse-n1.
4343         * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
4345 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
4347         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
4348         * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
4350 2019-02-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
4352         * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
4353         * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
4355 2019-02-19  Paul Hua  <paul.hua.gm@gmail.com>
4357         * NEWS: Mention -m[no-]fix-loongson3-llsc.
4358         * configure.ac: Add --enable-mips-fix-loongson3-llsc.
4359         Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
4360         * config.in: Regenerated.
4361         * configure: Likewise.
4362         * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
4363         New variables.
4364         (options): New OPTION_FIX_LOONGSON3_LLSC,
4365         OPTION_NO_FIX_LOONGSON3_LLSC.
4366         (md_longopts): Add -m[no-]fix-loongson3-llsc.
4367         (md_begin): Initialize sync insn.
4368         (fix_loongson3_llsc): New.
4369         (append_insn): Call fix_loongson3_llsc.
4370         (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
4371         OPTION_NO_FIX_LOONGSON3_LLSC.
4372         (md_show_usage): Display -m[no-]fix-loongson3-llsc.
4373         * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
4374         --enable-mips-fix-loongson3-llsc=[yes|no].
4376 2019-02-10  H.J. Lu  <hongjiu.lu@intel.com>
4378         PR gas/24165
4379         * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
4380         max_bytes.
4381         * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
4382         aarch64_init_frag.
4383         * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
4384         arm_init_frag.
4385         * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
4386         * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
4387         * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
4388         * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
4389         * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
4390         * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
4391         * config/tc-rx.h (TC_FRAG_INIT): Likewise.
4392         * config/tc-score.h (TC_FRAG_INIT): Likewise.
4393         * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
4394         * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
4395         * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
4396         * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
4397         (alignment ? ((1 << alignment) - 1) : 1)
4398         (i386_tc_frag_data): Add max_bytes.
4399         (TC_FRAG_INIT): Add and track max_bytes.
4400         (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
4401         fragP->tc_frag_data.max_bytes.
4402         * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
4404 2019-02-08  Jim Wilson  <jimw@sifive.com>
4406         * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
4407         (riscv_ip) <'C'>: Add 'z' support.
4409 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
4411         * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
4412         hlt to armv1.
4413         * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
4414         * testsuite/gas/arm/hlt.d: New test.
4415         * testsuite/gas/arm/hlt.s: New test.
4417 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
4419         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
4420         * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
4422 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
4424         PR binutils/23212
4425         * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
4426         * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
4428 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
4430         * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
4431         64-bit boundaries for the GR6.
4432         * testsuite/gas/visium/allinsn_gr6.s: Tweak.
4433         * testsuite/gas/visium/allinsn_gr6.d: Likewise.
4434         * testsuite/gas/visium/bra-1.d: New test.
4435         * testsuite/gas/visium/bra-1.s: Likewise.
4436         * testsuite/gas/visium/visium.exp: Run bra-1 test.
4438 2019-01-31  John Darrington <john@darrington.wattle.id.au>
4440         * config/tc-s12z.c (lex_imm): Add new argument exp_o.
4441         (emit_reloc): New function.
4442         (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
4443         can be either 2 bytes or 3 bytes long.
4444         * testsuite/gas/s12z/mov-imm-reloc.d: New file.
4445         * testsuite/gas/s12z/mov-imm-reloc.s: New file.
4446         * testsuite/gas/s12z/s12z.exp: Add them.
4448 2019-01-31  John Darrington <john@darrington.wattle.id.au>
4450         * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
4451         * testsuite/gas/s12z/pc-rel-bad.d: New file.
4452         * testsuite/gas/s12z/pc-rel-bad.l: New file.
4453         * testsuite/gas/s12z/pc-rel-bad.s: New file.
4454         * testsuite/gas/s12z/pc-rel-good.d: New file.
4455         * testsuite/gas/s12z/pc-rel-good.s: New file.
4456         * testsuite/gas/s12z/s12z.exp: Add them.
4458 2019-01-31  John Darrington <john@darrington.wattle.id.au>
4460         * config/tc-s12z.c (tfr): Emit warning if operands are the same.
4461         * testsuite/gas/s12z/exg.d: New test case.
4462         * testsuite/gas/s12z/exg.l: New file.
4464 2019-01-31  John Darrington <john@darrington.wattle.id.au>
4466         * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
4467         immediate mode operands should be permitted.
4468         * testsuite/s12z/imm-dest.d: New file.
4469         * testsuite/s12z/imm-dest.l: New file.
4470         * testsuite/s12z/imm-dest.s: New file.
4471         * testsuite/s12z/s12z.exp: Add them.
4473 2019-01-31  Andreas Krebbel  <krebbel@linux.ibm.com>
4475         * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
4476         * doc/c-s390.texi: Document arch13 march option.
4477         * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
4478         * testsuite/gas/s390/zarch-arch13.d: New test.
4479         * testsuite/gas/s390/zarch-arch13.s: New test.
4480         * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
4481         also for z13.
4483 2019-01-31  Alan Modra  <amodra@gmail.com>
4485         * config/tc-alpha.c (md_apply_fix): Correct range checks for
4486         BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
4487         * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
4488         * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
4490 2019-01-28  Max Filippov  <jcmvbkbc@gmail.com>
4492         * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
4493         symbols as done in md_apply_fix.
4494         * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
4496 2019-01-28  Nick Clifton  <nickc@redhat.com>
4498         * po/fr.po: Updated French translation.
4499         * po/ru.po: Updated Russian translation.
4501 2019-01-28  Alan Modra  <amodra@gmail.com>
4503         * configure.ac (ac_checking): Set from bfd/development.sh
4504         development variable.
4505         * configure: Regenerate.
4507 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
4509         * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
4510         stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
4511         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
4512         stg, stzg, st2g and stz2g.
4513         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4514         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4515         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4517 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
4519         * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
4520         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4521         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4522         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4524 2019-01-25  Sudakshina Das  <sudi.das@arm.com>
4525             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
4527         * config/tc-aarch64.c (parse_address_main): Remove support for
4528         [base]! address expression.
4529         (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
4530         (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
4531         * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
4532         and stgv.
4533         * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4534         * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4535         * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4537 2019-01-25  Wu Heng  <wu.heng@zte.com.cn>
4539         PR gas/23940
4540         * macro.c (getstring): Check array bound before accessing.
4542 2019-01-25  Alan Modra  <amodra@gmail.com>
4544         PR 20902
4545         PR 24125
4546         * read.c (stringer): Delete assertion.
4548 2019-01-21  Nick Clifton  <nickc@redhat.com>
4550         * po/uk.po: Updated Ukranian translation.
4552 2019-01-19  Nick Clifton  <nickc@redhat.com>
4554         * config.in: Regenerate.
4555         * configure: Regenerate.
4556         * po/gas.pot: Regenerate.
4558 2018-06-24  Nick Clifton  <nickc@redhat.com>
4560         2.32 branch created.
4562 2019-01-17  Tamar Christina  <tamar.christina@arm.com>
4564         * testsuite/gas/arm/archv6t2-1-pe.d: New test.
4565         * testsuite/gas/arm/archv6t2-1.d: Skip pe.
4566         * testsuite/gas/arm/csdb.d: Skip pe.
4567         * testsuite/gas/arm/sb-thumb1-pe.d: New test.
4568         * testsuite/gas/arm/sb-thumb1.d: Skip pe.
4569         * testsuite/gas/arm/sb-thumb2-pe.d: New test.
4570         * testsuite/gas/arm/sb-thumb2.d: Skip pe.
4571         * testsuite/gas/arm/udf.d: Skip pe.
4573 2019-01-16  Kito Cheng  <kito@andestech.com>
4575         * testsuite/gas/riscv/attribute-empty.d: New.
4577 2019-01-16  Kito Cheng  <kito@andestech.com>
4578             Nelson Chu  <nelson@andestech.com>
4580         * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
4581         (riscv_set_options): Add `arch_attr` field.
4582         (riscv_opts): Set default value for arch_attr.
4583         (riscv_write_out_arch_attr): New.
4584         (riscv_set_public_attributes): Likewise.
4585         (riscv_md_end): Likewise.
4586         (riscv_convert_symbolic_attribute): Likewise.
4587         (s_riscv_attribute): Likewise.
4588         (explicit_arch_attr): Likewise.
4589         (riscv_pseudo_table): Add .attribute to the table.
4590         (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
4591         enumeration constants.
4592         (md_longopts): Add `march-attr' and `mno-arch-attr' options.
4593         (md_parse_option): Handle the new options.
4594         (md_show_usage): Document the `march-attr' option.
4595         * config/tc-riscv.h (md_end): Define as riscv_md_end
4596         (riscv_md_end): Declare.
4597         (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
4598         riscv_convert_symbolic_attribute.
4599         (riscv_convert_symbolic_attribute): Declare.
4600         (start_assemble): Declare.
4601         * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
4602         * testsuite/gas/elf/section2.e-riscv: New.
4603         * testsuite/gas/riscv/attribute-01.d: New test
4604         * testsuite/gas/riscv/attribute-02.d: Likewise.
4605         * testsuite/gas/riscv/attribute-03.d: Likewise.
4606         * testsuite/gas/riscv/attribute-04.d: Likewise.
4607         * testsuite/gas/riscv/attribute-04.s: Likewise.
4608         * testsuite/gas/riscv/attribute-05.d: Likewise.
4609         * testsuite/gas/riscv/attribute-05.s: Likewise.
4610         * testsuite/gas/riscv/attribute-06.d: Likewise.
4611         * testsuite/gas/riscv/attribute-06.s: Likewise.
4612         * testsuite/gas/riscv/attribute-07.d: Likewise.
4613         * testsuite/gas/riscv/attribute-07.s: Likewise.
4614         * testsuite/gas/riscv/attribute-08.d: Likewise.
4615         * testsuite/gas/riscv/attribute-08.s: Likewise.
4616         * testsuite/gas/riscv/attribute-unknown.d: Likewise.
4617         * testsuite/gas/riscv/attribute-unknown.s: Likewise.
4618         * testsuite/gas/riscv/empty.l: Likewise.
4619         * doc/c-riscv.texi (.attribute): Add documentation.
4620         * configure.ac (--enable-default-riscv-attribute): New options.
4621         * configure: Re-generate.
4622         * config.in: Re-generate.
4624 2019-01-16  John Darrington <john@darrington.wattle.id.au>
4626         * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
4627         before the contents.
4628         * testsuite/gas/s12z/labels.d: New file.
4629         * testsuite/gas/s12z/labels.s: New file.
4630         * testsuite/gas/s12z/s12z.exp: Add them.
4631         * config/tc-s12z.c (tfr): Change as_bad to as_warn.
4632         Also fix message typo and semantics.
4633         * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
4634         BFD_RELOC_24.
4635         * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
4636         of R_S12Z_EXT24.
4638 2019-01-14  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
4640         * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
4641         (insns) [ARM_VARIANT]: Modified.
4642         (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
4643         in ARMv6T2 as well.
4644         * testsuite/gas/arm/archv6t2-1.d: New test.
4645         * testsuite/gas/arm/archv6t2-1.s: Likewise.
4646         * testsuite/gas/arm/archv6t2-2.d: Likewise.
4648 2019-01-11  Alan Modra  <amodra@gmail.com>
4650         PR 23963
4651         * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
4652         * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
4654 2019-01-10  Nick Clifton  <nickc@redhat.com>
4656         PR 23963
4657         * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
4658         fact that control characters are now displayed as escape
4659         sequences.
4660         * testsuite/gas/mips/mips16-e.d: Likewise.
4661         * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
4662         * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
4663         * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
4664         * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
4665         * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
4666         * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
4667         * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
4668         * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
4669         * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
4670         * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
4671         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
4672         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
4673         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
4674         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
4675         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
4676         Likewise.
4677         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
4678         Likewise.
4679         * testsuite/gas/mips/mipsel16-e.d: Likewise.
4680         * testsuite/gas/mips/mipsr6@msa.d: Likewise.
4681         * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
4682         * testsuite/gas/mips/r6-64-n32.d: Likewise.
4683         * testsuite/gas/mips/r6-64-n64.d: Likewise.
4684         * testsuite/gas/mips/r6-n32.d: Likewise.
4685         * testsuite/gas/mips/r6-n64.d: Likewise.
4686         * testsuite/gas/mips/r6.d: Likewise.
4687         * testsuite/gas/mips/tmips16-e.d: Likewise.
4688         * testsuite/gas/mips/tmipsel16-e.d: Likewise.
4689         * testsuite/gas/mn10300/relax.d: Likewise.
4691 2019-01-09  John Darrington <john@darrington.wattle.id.au>
4693         * testsuite/gas/s12z/jsr.s: New case.
4694         * testsuite/gas/s12z/jsr.d: New case.
4696 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
4698         * configure: Regenerate.
4700 2019-01-08  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
4702         * config/tc-aarch64.c (aarch64_cpus): Add ares.
4703         * doc/c-aarch64.texi (-mcpu): Document ares value.
4705 2019-01-08  Alan Modra  <amodra@gmail.com>
4707         * testsuite/gas/rx/rx.exp: Create generated test source in
4708         current directory.
4709         * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
4710         * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
4711         * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
4712         * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
4713         * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
4714         * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
4715         * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
4716         * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
4717         * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
4718         * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
4719         * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
4720         * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
4721         * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
4722         * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
4723         * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
4724         * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
4725         * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
4726         * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
4727         * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
4728         * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
4729         * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
4730         * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
4731         * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
4732         * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
4733         * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
4734         * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
4735         * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
4736         * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
4737         * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
4738         * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
4739         * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
4740         * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
4741         * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
4742         * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
4743         * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
4744         * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
4745         * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
4746         * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
4747         * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
4748         * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
4749         * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
4750         * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
4751         * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
4752         * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
4753         * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
4754         * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
4755         * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
4756         * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
4757         * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
4758         * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
4759         * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
4760         * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
4761         * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
4762         * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
4763         * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
4764         * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
4765         * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
4766         * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
4767         * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
4768         * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
4769         * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
4770         * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
4771         * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
4772         * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
4773         * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
4774         * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
4775         * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
4776         * testsuite/gas/rx/xor.d: Add #source line.
4778 2019-01-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
4780         * config/tc-arm.c (arm_cpus): Add ares.
4781         * doc/c-arm.texi (-mcpu): Document ares value.
4783 2019-01-05  Yoshinori Sato  <ysato@users.sourceforge.jp>
4785         * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
4786         (rx_bfield): Add prototype.
4787         (rx_post): Likewise.
4788         * config/rx-parse.y: Add v3 instructions and Double FPU registers.
4789         (DSIZE): Define.
4790         (POST): Define.
4791         (rx_check_v3): New. check v3 type.
4792         (rx_check_dfpu): New. check have double support.
4793         (double_condition_table): New. dcmp<cond> contiditon.
4794         (check_condition): Multiple condition support.
4795         (rx_lex): RXv3 instructions support.
4796         Add parse dcmp<cond> instruction and Double FPU registers.
4797         (immediate): Disable optimize in dmov #imm case.
4798         (displacement): Add double displacement in dmov instraction.
4799         * config/tc-rx.c (rx_use_conventional_section_names):
4800         Invert default value in rx-*-linux target.
4801         (cpu_type): Add additional ELF flags.
4802         (cpu_type_list): Add RXv3.
4803         (md_parse_option): Refer elf_flags from cpu_type_list.
4804         (md_show_usage): Add rxv3 and rxv3-dfpu.
4805         (rx_bytesT): Add post byte.
4806         (rx_bfield): New. generate bfmov / bfmovz "imm" field.
4807         (rx_post): New. Set instruction post byte.
4808         (md_assemble): Add post byte.
4809         doc/c-rx.texi: Add cpu types.
4810         * testsuite/gas/rx/Xtod.d: New.
4811         * testsuite/gas/rx/Xtod.sm: New.
4812         * testsuite/gas/rx/bfmov.d: New.
4813         * testsuite/gas/rx/bfmov.sm: New.
4814         * testsuite/gas/rx/dabs.d: New.
4815         * testsuite/gas/rx/dabs.sm: New.
4816         * testsuite/gas/rx/dadd.d: New.
4817         * testsuite/gas/rx/dadd.sm: New.
4818         * testsuite/gas/rx/dcmp.d: New.
4819         * testsuite/gas/rx/dcmp.sm: New.
4820         * testsuite/gas/rx/ddiv.d: New.
4821         * testsuite/gas/rx/ddiv.sm: New.
4822         * testsuite/gas/rx/dmov.d: New.
4823         * testsuite/gas/rx/dmov.sm: New.
4824         * testsuite/gas/rx/dmul.d: New.
4825         * testsuite/gas/rx/dmul.sm: New.
4826         * testsuite/gas/rx/dneg.d: New.
4827         * testsuite/gas/rx/dneg.sm: New.
4828         * testsuite/gas/rx/dpopm.d: New.
4829         * testsuite/gas/rx/dpopm.sm: New.
4830         * testsuite/gas/rx/dpushm.d: New.
4831         * testsuite/gas/rx/dpushm.sm: New.
4832         * testsuite/gas/rx/dround.d: New.
4833         * testsuite/gas/rx/dround.sm: New.
4834         * testsuite/gas/rx/dsqrt.d: New.
4835         * testsuite/gas/rx/dsqrt.sm: New.
4836         * testsuite/gas/rx/dsub.d: New.
4837         * testsuite/gas/rx/dsub.sm: New.
4838         * testsuite/gas/rx/dtoX.d: New.
4839         * testsuite/gas/rx/dtoX.sm: New.
4840         * testsuite/gas/rx/macros.inc: Add double FPU registers.
4841         * testsuite/gas/rx/mvfdc.d: New.
4842         * testsuite/gas/rx/mvfdc.sm: New.
4843         * testsuite/gas/rx/mvfdr.d: New.
4844         * testsuite/gas/rx/mvfdr.sm: New.
4845         * testsuite/gas/rx/mvtdc.d: New.
4846         * testsuite/gas/rx/mvtdc.sm: New.
4847         * testsuite/gas/rx/rstr.d: New.
4848         * testsuite/gas/rx/rstr.sm: New.
4849         * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
4850         * testsuite/gas/rx/save.d: New.
4851         * testsuite/gas/rx/save.sm: New.
4852         * testsuite/gas/rx/xor.d: New.
4853         * testsuite/gas/rx/xor.sm: Add pattern.
4855 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
4857         PR 24010
4858         * macro.c (get_any_string): Check for end of input whilst scanning
4859         for separators.
4861 2019-01-04  Wu Heng  <wu.heng@zte.com.cn>
4863         PR 24009
4864         * read.c (stringer): Fix handling of missing '>' character at end
4865         of <...> sequence.
4867 2019-01-01  Alan Modra  <amodra@gmail.com>
4869         Update year range in copyright notice of all files.
4871 For older changes see ChangeLog-2018
4873 Copyright (C) 2019 Free Software Foundation, Inc.
4875 Copying and distribution of this file, with or without modification,
4876 are permitted in any medium without royalty provided the copyright
4877 notice and this notice are preserved.
4879 Local Variables:
4880 mode: change-log
4881 left-margin: 8
4882 fill-column: 74
4883 version-control: never
4884 End: