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