1 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
2 Alan Modra <amodra@gmail.com>
4 * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
5 (struct insn_label_list): New.
6 (insn_labels, free_insn_labels): New variables.
7 (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
8 (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
9 and call ppc_record_label.
10 (md_assemble): Handle 64-bit prefix instructions. Align labels
11 that are on the same line as a prefix instruction.
12 * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
14 (md_start_line_hook): Define.
15 (ppc_start_line_hook): Declare.
16 * testsuite/gas/ppc/prefix-align.d,
17 * testsuite/gas/ppc/prefix-align.s: New test.
18 * testsuite/gas/ppc/ppc.exp: Run new test.
20 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
22 * configure.ac: Handle bpf-*-* targets.
23 * configure.tgt (generic_target): Likewise.
24 * configure: Regenerate.
25 * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
26 (TARGET_CPU_HFILES): Add tc-bpf.h.
27 * Makefile.in: Regenerated.
28 * config/tc-bpf.c: New file.
29 * config/tc-bpf.h: Likewise.
30 * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
31 * doc/Makefile.in: Regenerated.
32 * doc/all.texi: set BPF.
33 * doc/as.texi: Add eBPF contents.
34 * doc/c-bpf.texi: New file.
35 * testsuite/gas/bpf/alu.d: New file.
36 * testsuite/gas/bpf/mem-be.d: Likewise.
37 * testsuite/gas/bpf/mem.s: Likewise.
38 * testsuite/gas/bpf/mem.d: Likewise.
39 * testsuite/gas/bpf/lddw-be.d: Likewise.
40 * testsuite/gas/bpf/lddw.s: Likewise.
41 * testsuite/gas/bpf/lddw.d: Likewise.
42 * testsuite/gas/bpf/jump-be.d: Likewise.
43 * testsuite/gas/bpf/jump.s: Likewise.
44 * testsuite/gas/bpf/jump.d: Likewise.
45 * testsuite/gas/bpf/exit-be.d: Likewise.
46 * testsuite/gas/bpf/exit.s: Likewise.
47 * testsuite/gas/bpf/exit.d: Likewise.
48 * testsuite/gas/bpf/call-be.d: Likewise.
49 * testsuite/gas/bpf/call.s: Likewise.
50 * testsuite/gas/bpf/call.d: Likewise.
51 * testsuite/gas/bpf/bpf.exp: Likewise.
52 * testsuite/gas/bpf/atomic-be.d: Likewise.
53 * testsuite/gas/bpf/atomic.s: Likewise.
54 * testsuite/gas/bpf/atomic.d: Likewise.
55 * testsuite/gas/bpf/alu-be.d: Likewise.
56 * testsuite/gas/bpf/alu32-be.d: Likewise.
57 * testsuite/gas/bpf/alu32.s: Likewise.
58 * testsuite/gas/bpf/alu32.d: Likewise.
59 * testsuite/gas/bpf/alu.s: Likewise.
60 * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
61 * testsuite/gas/all/org-1.s: Support nop_type 6.
62 * testsuite/gas/all/org-1.l: Updated to reflect changes in
65 2019-05-22 John Darrington <john@darrington.wattle.id.au>
67 * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
68 (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
69 (<global>): Use s12z_strtol instead of strtol.
70 * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
71 * testsuite/gas/s12z/dollar-hex.d: New file.
72 * testsuite/gas/s12z/dollar-hex.s: New file.
73 * testsuite/gas/s12z/s12z.exp: Add them.
75 2019-05-21 Sudakshina Das <sudi.das@arm.com>
77 * config/tc-arm.c (parse_operands): Update case OP_RVC to
79 (do_vmrs): Add checks for valid operands with respect to
82 (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
84 * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
85 * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
86 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
87 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
88 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
89 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
90 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
91 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
92 * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
93 * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
95 2019-05-21 Sudakshina Das <sudi.das@arm.com>
97 * config/tc-arm.c (TOGGLE_BIT): New.
98 (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
99 csinv, csneg, cset, csetm and csel.
100 (operand_parse_code): New OP_RR_ZR.
101 (parse_operand): Handle case for OP_RR_ZR.
103 (insns): New instructions for cinc, cinv, cneg, csinc,
104 csinv, csneg, cset, csetm, csel.
105 * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
106 * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
107 * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
108 * testsuite/gas/arm/armv8_1-m-cond.d: New test.
109 * testsuite/gas/arm/armv8_1-m-cond.s: New test.
111 2019-05-21 Sudakshina Das <sudi.das@arm.com>
113 * config/tc-arm.c (operand_parse_code): New entries for
114 OP_RRnpcsp_I32 (register or integer operands).
115 (do_mve_scalar_shift): New.
116 (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
117 sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
118 * testsuite/gas/arm/mve-shift.d: New.
119 * testsuite/gas/arm/mve-shift.s: New.
120 * testsuite/gas/arm/mve-shift-bad.d: New.
121 * testsuite/gas/arm/mve-shift-bad.s: New.
122 * testsuite/gas/arm/mve-shift-bad.l: New.
124 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
126 * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
127 * testsuite/gas/mips/r6-reg-constraints.s: this and add test
129 * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
130 * testsuite/gas/mips/r6-reg-constraints.l: this and add test
132 * testsuite/gas/mips/mips.exp: Rename test from
133 r6-branch-constraints to r6-reg-constraints.
135 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
138 * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
140 * testsuite/gas/arm/load-pseudo.s: New test input.
141 * testsuite/gas/arm/m0-load-pseudo.d: New test.
142 * testsuite/gas/arm/m23-load-pseudo.d: New test.
143 * testsuite/gas/arm/m33-load-pseudo.d: New test.
145 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
147 * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
149 * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
150 * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
151 * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
152 * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
153 * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
154 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
155 * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
157 2019-05-21 John Darrington <john@darrington.wattle.id.au>
159 * expr.c (literal_prefix_dollar_hex): New variable.
160 (operand)[case '$']: Use the new variable instead of the old macro.
161 Also, move this instance of "case '$'" next to the other one, and
162 enable it only in the complementary proprocessor case.
163 * expr.h (literal_prefix_dollar_hex): Declare it.
164 * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
165 * config/tc-ip2k.c: ditto
166 * config/tc-mt.c: ditto
167 * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
168 * config/tc-ip2k.h: ditto
169 * config/tc-mt.h: ditto
171 2019-05-20 Faraz Shahbazker <fshahbazker@wavecomp.com>
174 * config/tc-mips.c (s_mips_globl): Only treat symbols that are
175 not explicitly labelled as BSF_OBJECTs for IRIX targets.
176 * testsuite/gas/mips/pr14798.s: New test source.
177 * testsuite/gas/mips/pr14798-irix.d: New test.
178 * testsuite/gas/mips/pr14798.d: Likewise.
179 * testsuite/gas/mips/mips.exp: Run the new tests.
181 2019-05-17 John Darrington <john@darrington.wattle.id.au>
183 * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
184 * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
186 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
188 * config/tc-arm.c (check_simd_pred_availability): Refactor.
189 (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
190 (do_neon_dyadic_i64_su): Likewise.
191 (do_neon_shl): Likewise.
192 (do_neon_qshl): Likewise.
193 (do_neon_rshl): Likewise.
194 (do_neon_logic): Likewise.
195 (do_neon_dyadic_if_su): Likewise.
196 (do_neon_addsub_if_i): Likewise.
197 (do_neon_mac_maybe_scalar): Likewise.
198 (do_neon_fmac): Likewise.
199 (do_neon_mul): Likewise.
200 (do_neon_qdmulh): Likewise.
201 (do_neon_qrdmlah): Likewise.
202 (do_neon_abs_neg): Likewise.
203 (do_neon_sli): Likewise.
204 (do_neon_sri): Likewise.
205 (do_neon_qshlu_imm): Likewise.
206 (do_neon_cvt_1): Likewise.
207 (do_neon_cvttb_1): Likewise.
208 (do_neon_mvn): Likewise.
209 (do_neon_rev): Likewise.
210 (do_neon_dup): Likewise.
211 (do_neon_mov): Likewise.
212 (do_neon_rshift_round_imm): Likewise.
213 (do_neon_sat_abs_neg): Likewise.
214 (do_neon_cls): Likewise.
215 (do_neon_clz): Likewise.
216 (do_vmaxnm): Likewise.
217 (do_vrint_1): Likewise.
218 (do_vcmla): Likewise.
219 (do_vcadd): Likewise.
221 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
223 * NEWS: Mention Armv8.1-M Mainline and MVE.
225 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
227 * testsuite/gas/arm/mve-tailpredloop.d: New test.
228 * testsuite/gas/arm/mve-tailpredloop.s: New test.
229 * testsuite/gas/arm/mve-vabav.d: New test.
230 * testsuite/gas/arm/mve-vabav.s: New test.
231 * testsuite/gas/arm/mve-vabd.d: New test.
232 * testsuite/gas/arm/mve-vabd.s: New test.
233 * testsuite/gas/arm/mve-vabsneg.d: New test.
234 * testsuite/gas/arm/mve-vabsneg.s: New test.
235 * testsuite/gas/arm/mve-vadc.d: New test.
236 * testsuite/gas/arm/mve-vadc.s: New test.
237 * testsuite/gas/arm/mve-vaddlv.d: New test.
238 * testsuite/gas/arm/mve-vaddlv.s: New test.
239 * testsuite/gas/arm/mve-vaddsub.d: New test.
240 * testsuite/gas/arm/mve-vaddsub.s: New test.
241 * testsuite/gas/arm/mve-vaddv.d: New test.
242 * testsuite/gas/arm/mve-vaddv.s: New test.
243 * testsuite/gas/arm/mve-vand.d: New test.
244 * testsuite/gas/arm/mve-vand.s: New test.
245 * testsuite/gas/arm/mve-vbic.d: New test.
246 * testsuite/gas/arm/mve-vbic.s: New test.
247 * testsuite/gas/arm/mve-vbrsr.d: New test.
248 * testsuite/gas/arm/mve-vbrsr.s: New test.
249 * testsuite/gas/arm/mve-vcadd.d: New test.
250 * testsuite/gas/arm/mve-vcadd.s: New test.
251 * testsuite/gas/arm/mve-vcls.d: New test.
252 * testsuite/gas/arm/mve-vcls.s: New test.
253 * testsuite/gas/arm/mve-vclz.d: New test.
254 * testsuite/gas/arm/mve-vclz.s: New test.
255 * testsuite/gas/arm/mve-vcmla.d: New test.
256 * testsuite/gas/arm/mve-vcmla.s: New test.
257 * testsuite/gas/arm/mve-vcmp.d: New test.
258 * testsuite/gas/arm/mve-vcmp.s: New test.
259 * testsuite/gas/arm/mve-vcmul.d: New test.
260 * testsuite/gas/arm/mve-vcmul.s: New test.
261 * testsuite/gas/arm/mve-vcvt-1.d: New test.
262 * testsuite/gas/arm/mve-vcvt-1.s: New test.
263 * testsuite/gas/arm/mve-vcvt-2.d: New test.
264 * testsuite/gas/arm/mve-vcvt-2.s: New test.
265 * testsuite/gas/arm/mve-vcvt-3.d: New test.
266 * testsuite/gas/arm/mve-vcvt-3.s: New test.
267 * testsuite/gas/arm/mve-vcvt-4.d: New test.
268 * testsuite/gas/arm/mve-vcvt-4.s: New test.
269 * testsuite/gas/arm/mve-vddup.d: New test.
270 * testsuite/gas/arm/mve-vddup.s: New test.
271 * testsuite/gas/arm/mve-vdup.d: New test.
272 * testsuite/gas/arm/mve-vdup.s: New test.
273 * testsuite/gas/arm/mve-veor.d: New test.
274 * testsuite/gas/arm/mve-veor.s: New test.
275 * testsuite/gas/arm/mve-vfma-vfms.d: New test.
276 * testsuite/gas/arm/mve-vfma-vfms.s: New test.
277 * testsuite/gas/arm/mve-vfmas.d: New test.
278 * testsuite/gas/arm/mve-vfmas.s: New test.
279 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
280 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
281 * testsuite/gas/arm/mve-vhcadd.d: New test.
282 * testsuite/gas/arm/mve-vhcadd.s: New test.
283 * testsuite/gas/arm/mve-vmax-vmin.d: New test.
284 * testsuite/gas/arm/mve-vmax-vmin.s: New test.
285 * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
286 * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
287 * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
288 * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
289 * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
290 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
291 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
292 * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
293 * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
294 * testsuite/gas/arm/mve-vmla.d: New test.
295 * testsuite/gas/arm/mve-vmla.s: New test.
296 * testsuite/gas/arm/mve-vmladav.d: New test.
297 * testsuite/gas/arm/mve-vmladav.s: New test.
298 * testsuite/gas/arm/mve-vmlaldav.d: New test.
299 * testsuite/gas/arm/mve-vmlaldav.s: New test.
300 * testsuite/gas/arm/mve-vmlalv.d: New test.
301 * testsuite/gas/arm/mve-vmlalv.s: New test.
302 * testsuite/gas/arm/mve-vmlas.d: New test.
303 * testsuite/gas/arm/mve-vmlas.s: New test.
304 * testsuite/gas/arm/mve-vmlav.d: New test.
305 * testsuite/gas/arm/mve-vmlav.s: New test.
306 * testsuite/gas/arm/mve-vmlsdav.d: New test.
307 * testsuite/gas/arm/mve-vmlsdav.s: New test.
308 * testsuite/gas/arm/mve-vmlsldav.d: New test.
309 * testsuite/gas/arm/mve-vmlsldav.s: New test.
310 * testsuite/gas/arm/mve-vmov-1.d: New test.
311 * testsuite/gas/arm/mve-vmov-1.s: New test.
312 * testsuite/gas/arm/mve-vmov-2.d: New test.
313 * testsuite/gas/arm/mve-vmov-2.s: New test.
314 * testsuite/gas/arm/mve-vmul.d: New test.
315 * testsuite/gas/arm/mve-vmul.s: New test.
316 * testsuite/gas/arm/mve-vmulh.d: New test.
317 * testsuite/gas/arm/mve-vmulh.s: New test.
318 * testsuite/gas/arm/mve-vmullbt.d: New test.
319 * testsuite/gas/arm/mve-vmullbt.s: New test.
320 * testsuite/gas/arm/mve-vmvn.d: New test.
321 * testsuite/gas/arm/mve-vmvn.s: New test.
322 * testsuite/gas/arm/mve-vorn.d: New test.
323 * testsuite/gas/arm/mve-vorn.s: New test.
324 * testsuite/gas/arm/mve-vorr.d: New test.
325 * testsuite/gas/arm/mve-vorr.s: New test.
326 * testsuite/gas/arm/mve-vpnot.d: New test.
327 * testsuite/gas/arm/mve-vpnot.s: New test.
328 * testsuite/gas/arm/mve-vpsel.d: New test.
329 * testsuite/gas/arm/mve-vpsel.s: New test.
330 * testsuite/gas/arm/mve-vpt.d: New test.
331 * testsuite/gas/arm/mve-vpt.s: New test.
332 * testsuite/gas/arm/mve-vqabsneg.s: New test.
333 * testsuite/gas/arm/mve-vqaddsub.d: New test.
334 * testsuite/gas/arm/mve-vqaddsub.s: New test.
335 * testsuite/gas/arm/mve-vqdmladh.d: New test.
336 * testsuite/gas/arm/mve-vqdmladh.s: New test.
337 * testsuite/gas/arm/mve-vqdmlah.d: New test.
338 * testsuite/gas/arm/mve-vqdmlah.s: New test.
339 * testsuite/gas/arm/mve-vqdmlash.d: New test.
340 * testsuite/gas/arm/mve-vqdmlash.s: New test.
341 * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
342 * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
343 * testsuite/gas/arm/mve-vqdmulh.d: New test.
344 * testsuite/gas/arm/mve-vqdmulh.s: New test.
345 * testsuite/gas/arm/mve-vqdmull.d: New test.
346 * testsuite/gas/arm/mve-vqdmull.s: New test.
347 * testsuite/gas/arm/mve-vqmovn.d: New test.
348 * testsuite/gas/arm/mve-vqmovn.s: New test.
349 * testsuite/gas/arm/mve-vqrshl.d: New test.
350 * testsuite/gas/arm/mve-vqrshl.s: New test.
351 * testsuite/gas/arm/mve-vqrshrn.d: New test.
352 * testsuite/gas/arm/mve-vqrshrn.s: New test.
353 * testsuite/gas/arm/mve-vqshl.d: New test.
354 * testsuite/gas/arm/mve-vqshl.s: New test.
355 * testsuite/gas/arm/mve-vrev.d: New test.
356 * testsuite/gas/arm/mve-vrev.s: New test.
357 * testsuite/gas/arm/mve-vrint.d: New test.
358 * testsuite/gas/arm/mve-vrint.s: New test.
359 * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
360 * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
361 * testsuite/gas/arm/mve-vrshl.d: New test.
362 * testsuite/gas/arm/mve-vrshl.s: New test.
363 * testsuite/gas/arm/mve-vsbc.d: New test.
364 * testsuite/gas/arm/mve-vsbc.s: New test.
365 * testsuite/gas/arm/mve-vshl.d: New test.
366 * testsuite/gas/arm/mve-vshl.s: New test.
367 * testsuite/gas/arm/mve-vshlc.d: New test.
368 * testsuite/gas/arm/mve-vshlc.s: New test.
369 * testsuite/gas/arm/mve-vshll.d: New test.
370 * testsuite/gas/arm/mve-vshll.s: New test.
371 * testsuite/gas/arm/mve-vshr.d: New test.
372 * testsuite/gas/arm/mve-vshr.s: New test.
373 * testsuite/gas/arm/mve-vshrn.d: New test.
374 * testsuite/gas/arm/mve-vshrn.s: New test.
375 * testsuite/gas/arm/mve-vsli.d: New test.
376 * testsuite/gas/arm/mve-vsli.s: New test.
377 * testsuite/gas/arm/mve-vsri.d: New test.
378 * testsuite/gas/arm/mve-vsri.s: New test.
379 * testsuite/gas/arm/mve-vstld.d: New test.
380 * testsuite/gas/arm/mve-vstld.s: New test.
381 * testsuite/gas/arm/mve-vstrldr-1.d: New test.
382 * testsuite/gas/arm/mve-vstrldr-1.s: New test.
383 * testsuite/gas/arm/mve-vstrldr-2.d: New test.
384 * testsuite/gas/arm/mve-vstrldr-2.s: New test.
385 * testsuite/gas/arm/mve-vstrldr-3.d: New test.
386 * testsuite/gas/arm/mve-vstrldr-3.s: New test.
388 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
390 * config/tc-arm.c (T16_32_TAB): Add new instructions.
391 (do_t_loloop): Changed to handle tail predication variants.
392 (md_apply_fix): Likewise.
393 (insns): Add entries for MVE mnemonics.
394 * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
395 * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
396 * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
397 * testsuite/gas/arm/mve-tailpredloop.d: New test.
399 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
401 * config/tc-arm.c (do_mve_vshll): New encoding function.
402 (do_mve_vshlc): Likewise.
403 (insns): Add entries for MVE mnemonics.
404 * testsuite/gas/arm/mve-vshlc-bad.d: New test.
405 * testsuite/gas/arm/mve-vshlc-bad.l: New test.
406 * testsuite/gas/arm/mve-vshlc-bad.s: New test.
407 * testsuite/gas/arm/mve-vshll-bad.d: New test.
408 * testsuite/gas/arm/mve-vshll-bad.l: New test.
409 * testsuite/gas/arm/mve-vshll-bad.s: New test.
411 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
413 * config/tc-arm.c (enum operand_parse_code): Add new operand.
414 (parse_operands): Handle new operand.
415 (do_neon_shl_imm): Accept MVE variants.
416 (do_neon_shl): Likewise.
417 (do_neon_qshl_imm): Likewise.
418 (do_neon_qshl): Likewise.
419 (do_neon_qshlu_imm): Likewise.
421 * testsuite/gas/arm/mve-vqshl-bad.d: New test.
422 * testsuite/gas/arm/mve-vqshl-bad.l: New test.
423 * testsuite/gas/arm/mve-vqshl-bad.s: New test.
424 * testsuite/gas/arm/mve-vshl-bad.d: New test.
425 * testsuite/gas/arm/mve-vshl-bad.l: New test.
426 * testsuite/gas/arm/mve-vshl-bad.s: New test.
428 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
430 * config/tc-arm.c (do_neon_sli): Accept MVE variants.
431 (do_neon_sri): Likewise.
432 (do_neon_rev): Likewise.
433 (do_neon_rshift_round_imm): Likewise.
435 * testsuite/gas/arm/mve-vrev-bad.d: New test.
436 * testsuite/gas/arm/mve-vrev-bad.l: New test.
437 * testsuite/gas/arm/mve-vrev-bad.s: New test.
438 * testsuite/gas/arm/mve-vshr-bad.d: New test.
439 * testsuite/gas/arm/mve-vshr-bad.l: New test.
440 * testsuite/gas/arm/mve-vshr-bad.s: New test.
441 * testsuite/gas/arm/mve-vsli-bad.d: New test.
442 * testsuite/gas/arm/mve-vsli-bad.l: New test.
443 * testsuite/gas/arm/mve-vsli-bad.s: New test.
444 * testsuite/gas/arm/mve-vsri-bad.d: New test.
445 * testsuite/gas/arm/mve-vsri-bad.l: New test.
446 * testsuite/gas/arm/mve-vsri-bad.s: New test.
448 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
450 * config/tc-arm.c (do_vrint_1): Accept MVE variants.
451 (insns): Change entries to accept MVE variants.
452 * testsuite/gas/arm/mve-vrint-bad.d: New test.
453 * testsuite/gas/arm/mve-vrint-bad.l: New test.
454 * testsuite/gas/arm/mve-vrint-bad.s: New test.
456 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
458 * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
459 M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
460 M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
461 M_MNEM_vqrshrunb): New instruction encodings.
462 (do_mve_vshrn): New encoding function.
463 (insns): Add entries for MVE mnemonics.
464 * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
465 * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
466 * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
467 * testsuite/gas/arm/mve-vshrn-bad.d: New test.
468 * testsuite/gas/arm/mve-vshrn-bad.l: New test.
469 * testsuite/gas/arm/mve-vshrn-bad.s: New test.
471 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
473 * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
474 M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
475 (do_mve_vqmovn): New encoding function.
476 (do_neon_rshl): Change to accepte MVE variants.
477 (insns): Change entries and add new for MVE mnemonics.
478 * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
479 * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
480 * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
481 * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
482 * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
483 * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
484 * testsuite/gas/arm/mve-vrshl-bad.d: New test.
485 * testsuite/gas/arm/mve-vrshl-bad.l: New test.
486 * testsuite/gas/arm/mve-vrshl-bad.s: New test.
488 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
490 * config/tc-arm.c (enum operand_parse_code): Add new operand.
491 (parse_operands): Handle new operand.
492 (do_mve_vqdmull): New encoding function.
493 (insns): Add entry for MVE mnemonics.
494 * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
495 * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
496 * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
498 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
500 * config/tc-arm.c (enum operand_parse_code): Add new operand.
501 (parse_operands): Handle new operand.
502 (mve_encode_qqr): Handle new instructions.
503 (do_neon_qdmulh): Add support for MVE variants.
504 (do_neon_qrdmlah): Likewise.
505 (do_mve_vqdmlah): New encoding function.
506 (insns): Change entries and add new entries for MVE mnemonics.
507 * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
508 * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
509 * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
511 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
513 * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
514 (insns): Add entries for MVE mnemonics.
515 * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
516 * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
517 * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
518 * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
519 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
520 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
522 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
524 * config/tc-arm.c (do_mve_vpsel): New encoding function.
525 (do_mve_vpnot): Likewise.
526 (insns): Add entries for MVE mnemonics.
527 * testsuite/gas/arm/mve-vpnot-bad.d: New test.
528 * testsuite/gas/arm/mve-vpnot-bad.l: New test.
529 * testsuite/gas/arm/mve-vpnot-bad.s: New test.
530 * testsuite/gas/arm/mve-vpsel-bad.d: New test.
531 * testsuite/gas/arm/mve-vpsel-bad.l: New test.
532 * testsuite/gas/arm/mve-vpsel-bad.s: New test.
534 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
536 * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
537 (do_neon_sat_abs_neg): Likewise.
539 * testsuite/gas/arm/mve-vmvn-bad.d: New test.
540 * testsuite/gas/arm/mve-vmvn-bad.l: New test.
541 * testsuite/gas/arm/mve-vmvn-bad.s: New test.
542 * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
543 * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
544 * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
546 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
548 * config/tc-arm.c (do_mve_vmlas): New encoding function.
549 (do_mve_vmulh): Likewise.
550 (insns): Add entries for MVE mnemonics.
551 * testsuite/gas/arm/mve-vmlas-bad.d: New test.
552 * testsuite/gas/arm/mve-vmlas-bad.l: New test.
553 * testsuite/gas/arm/mve-vmlas-bad.s: New test.
554 * testsuite/gas/arm/mve-vmulh-bad.d: New test.
555 * testsuite/gas/arm/mve-vmulh-bad.l: New test.
556 * testsuite/gas/arm/mve-vmulh-bad.s: New test.
558 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
560 * config/tc-arm.c (enum operand_parse_code): New operand.
561 (parse_operands): Handle new operand.
562 (mve_encode_qqr): Handle new instructions.
563 (do_neon_dyadic_i64_su): Accept MVE variants.
564 (neon_dyadic_misc): Likewise.
565 (do_neon_mac_maybe_scalar): Likewise.
566 (do_neon_mul): Likewise.
567 (insns): Change to accept MVE variants.
568 * testsuite/gas/arm/mve-vmla-bad.d: New test.
569 * testsuite/gas/arm/mve-vmla-bad.l: New test.
570 * testsuite/gas/arm/mve-vmla-bad.s: New test.
571 * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
572 * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
573 * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
574 * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
575 * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
576 * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
577 * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
578 * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
579 * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
581 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
583 * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
584 M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
585 M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
586 M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
587 M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
588 instruction encodings.
589 (NEON_SHAPE_DEF): New shape
590 (mve_encode_rrqq): New encoding helper function.
591 (do_mve_vmlaldav): New encoding function.
592 (do_mve_vrmlaldavh): New encoding function.
593 (insns): Add entries for MVE mnemonics.
594 * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
595 * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
596 * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
597 * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
598 * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
599 * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
600 * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
601 * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
602 * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
603 * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
604 * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
605 * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
607 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
609 * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
610 M_MNEM_vminav): New instruction encodings.
611 (do_mve_vmaxv): New encoding function.
612 (insns): Add entries for new MVE mnemonics.
613 * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
614 * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
615 * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
617 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
619 * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
620 (insns): Add entries for new mnemonics.
621 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
622 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
623 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
625 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
627 * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
628 (do_mve_vmaxnma_vminnma): Likewise.
629 (do_neon_dyadic_if_su): Change to support MVE variants.
630 (do_vmaxnm): Likewise.
631 (insns): Change to accept MVE variants and add new.
632 * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
633 * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
634 * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
635 * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
636 * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
637 * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
638 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
639 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
640 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
641 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
642 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
643 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
645 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
647 * config/tc-arm.c (enum operand_parse_code): New operand.
648 (parse_operands): Handle new operand.
649 (mve_encode_qqr): Change to support new instructions.
650 (enum vfp_or_neon_is_neon_bits): Moved.
651 (vfp_or_neon_is_neon): Moved.
652 (check_simd_pred_availability): Moved.
653 (do_neon_dyadic_i_su): Changed to support MVE variants.
654 (neon_dyadic_misc): Changed mve_encode_qqr call.
655 (do_mve_vbrsr): Likewise.
656 (do_mve_vhcadd): New encoding function.
657 (insns): Change existing to accept MVE variants and add new.
658 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
659 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
660 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
661 * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
662 * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
663 * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
665 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
667 * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
668 (insns): Change to accept MVE variants.
669 * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
670 * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
671 * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
673 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
675 * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
676 M_MNEM_viwdup): New instruction encodings.
677 (NEON_SHAPE_DEF): New shapes.
678 (do_mve_viddup): New encoding function.
679 (do_neon_dup): Change to support new MVE variants.
680 (insns): Change existing to accept MVE variants and add new.
681 * testsuite/gas/arm/mve-vddup-bad.d: New test.
682 * testsuite/gas/arm/mve-vddup-bad.l: New test.
683 * testsuite/gas/arm/mve-vddup-bad.s: New test.
684 * testsuite/gas/arm/mve-vdup-bad.d: New test.
685 * testsuite/gas/arm/mve-vdup-bad.l: New test.
686 * testsuite/gas/arm/mve-vdup-bad.s: New test.
687 * testsuite/gas/arm/mve-vidup-bad.d: New test.
688 * testsuite/gas/arm/mve-vidup-bad.l: New test.
689 * testsuite/gas/arm/mve-vidup-bad.s: New test.
691 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
693 * config/tc-arm.c (do_mve_vfmas): New encoding function.
694 (do_neon_cls): Change to support MVE variants.
695 (do_neon_clz): Change to support MVE variants.
696 (insns): Change to support MVE variants and add new.
697 * testsuite/gas/arm/mve-vcls-bad.d: New test.
698 * testsuite/gas/arm/mve-vcls-bad.l: New test.
699 * testsuite/gas/arm/mve-vcls-bad.s: New test.
700 * testsuite/gas/arm/mve-vclz-bad.d: New test.
701 * testsuite/gas/arm/mve-vclz-bad.l: New test.
702 * testsuite/gas/arm/mve-vclz-bad.s: New test.
703 * testsuite/gas/arm/mve-vfmas-bad.d: New test.
704 * testsuite/gas/arm/mve-vfmas-bad.l: New test.
705 * testsuite/gas/arm/mve-vfmas-bad.s: New test.
707 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
709 * config/tc-arm.c (enum operand_parse_code): New operands.
710 (parse_operands): Handle new operands.
711 (do_mve_vcmul): New encoding function.
712 (do_vcmla): Change to support MVE variants.
713 (do_vcadd): Change to support MVE variants.
714 (insns): Change existing to support MVE variants and add new.
715 * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
716 * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
717 * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
718 * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
719 * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
720 * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
721 * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
722 * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
723 * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
724 * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
725 * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
726 * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
727 * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
728 * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
729 * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
730 * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
731 * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
732 * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
734 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
736 * config/tc-arm.c (enum operand_parse_code): New operands.
737 (parse_operands): Handle new operands.
738 (enum vfp_or_neon_is_neon_bits): Moved
739 (vfp_or_neon_is_neon): Moved
740 (check_simd_pred_availability): Moved.
741 (do_neon_logic): Change to accept MVE variants.
742 (insns): Changed to accept MVE variants.
743 * testsuite/gas/arm/mve-vand-bad.d: New test.
744 * testsuite/gas/arm/mve-vand-bad.l: New test.
745 * testsuite/gas/arm/mve-vand-bad.s: New test.
746 * testsuite/gas/arm/mve-vbic-bad.d: New test.
747 * testsuite/gas/arm/mve-vbic-bad.l: New test.
748 * testsuite/gas/arm/mve-vbic-bad.s: New test.
749 * testsuite/gas/arm/mve-veor-bad.d: New test.
750 * testsuite/gas/arm/mve-veor-bad.l: New test.
751 * testsuite/gas/arm/mve-veor-bad.s: New test.
752 * testsuite/gas/arm/mve-vorn-bad.d: New test.
753 * testsuite/gas/arm/mve-vorn-bad.l: New test.
754 * testsuite/gas/arm/mve-vorn-bad.s: New test.
755 * testsuite/gas/arm/mve-vorr-bad.d: New test.
756 * testsuite/gas/arm/mve-vorr-bad.l: New test.
757 * testsuite/gas/arm/mve-vorr-bad.s: New test.
759 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
761 * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
762 M_MNEM_vaddva): New instruction encodings.
763 (mve_encode_rq): New encoding helper function.
764 (do_mve_vaddlv): New encoding function.
765 (do_mve_vaddv): New encoding function.
766 * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
767 * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
768 * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
769 * testsuite/gas/arm/mve-vaddv-bad.d: New test.
770 * testsuite/gas/arm/mve-vaddv-bad.l: New test.
771 * testsuite/gas/arm/mve-vaddv-bad.s: New test.
773 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
775 * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
776 New instruction encodings.
777 (do_mve_vadc): New encoding instruction.
778 (do_mve_vbrsr): Likewise.
779 (do_mve_vsbc): Likewise.
780 * testsuite/gas/arm/mve-vadc-bad.d: New test.
781 * testsuite/gas/arm/mve-vadc-bad.l: New test.
782 * testsuite/gas/arm/mve-vadc-bad.s: New test.
783 * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
784 * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
785 * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
786 * testsuite/gas/arm/mve-vsbc-bad.d: New test.
787 * testsuite/gas/arm/mve-vsbc-bad.l: New test.
788 * testsuite/gas/arm/mve-vsbc-bad.s: New test.
790 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
792 * config/tc-arm.c (MVE_BAD_QREG): New error message.
793 (enum operand_parse_code): Define new operand.
794 (parse_operands): Handle new operand.
795 (do_mve_vpt): Change for VPT blocks.
796 (NEON_SHAPE_DEF): New shape.
797 (neon_logbits): Moved.
800 (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
801 (do_mve_vcmp): New encoding function.
802 (do_vfp_nsyn_cmp): Changed to support MVE variants.
803 (insns): Change to support MVE variants of vcmp and add vpt.
804 * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
805 * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
806 * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
807 * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
808 * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
809 * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
810 * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
811 * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
812 * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
813 * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
814 * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
815 * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
817 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
819 * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
820 distinguish between types of scalar.
821 (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
822 (parse_scalar): Likewise.
823 (parse_neon_mov): Accept MVE variant.
824 (po_scalar_or_goto): Make use reg_type.
825 (parse_operands): Change uses of po_scalar_or_goto.
826 (do_vfp_sp_monadic): Change to accept MVE variants.
827 (do_vfp_reg_from_sp): Likewise.
828 (do_vfp_sp_from_reg): Likewise.
829 (do_vfp_dp_rd_rm): Likewise.
830 (do_vfp_dp_rd_rn_rm): Likewise.
831 (do_vfp_dp_rm_rd_rn): Likewise.
832 (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
833 instruction encodings.
834 (NEON_SHAPE_DEF): New shape.
835 (do_mve_mov): New encoding fuction.
836 (do_mve_movn): Likewise.
837 (do_mve_movl): Likewise.
838 (do_neon_mov): Change to accept MVE variants.
840 (insns): Accept new MVE variants and instructions.
841 * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
842 * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
843 * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
844 * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
845 * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
846 * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
848 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
850 * config/tc-arm.c (enum operand_parse_code): Add new operand.
851 (parse_operands): Handle new operand.
852 (do_neon_cvt_1): Handle MVE variants.
853 (do_neon_cvttb_1): Likewise.
854 (insns): Accept MVE variants.
855 * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
856 * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
857 * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
858 * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
859 * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
860 * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
861 * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
862 * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
863 * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
864 * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
865 * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
866 * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
867 * testsuite/gas/arm/mve-vcvt-bad.d: New test.
868 * testsuite/gas/arm/mve-vcvt-bad.l: New test.
869 * testsuite/gas/arm/mve-vcvt-bad.s: New test.
871 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
873 * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
875 (enum shift_kind): Add SHIFT_UXTW shift kind.
876 (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
877 (parse_shift): Handle new shift type.
878 (parse_address_main): Accept new addressing modes.
879 (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
880 M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
881 instruction encodings.
882 (do_mve_vstr_vldr_QI): New encoding functions.
883 (do_mve_vstr_vldr_RQ): Likewise.
884 (do_mve_vstr_vldr_RI): Likewise.
885 (do_mve_vstr_vldr): Likewise.
886 * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
887 * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
888 * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
889 * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
890 * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
891 * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
892 * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
893 * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
894 * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
895 * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
896 * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
897 * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
898 * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
899 * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
900 * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
901 * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
902 * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
903 * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
905 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
907 * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
908 (BAD_EL_TYPE): New error message.
909 (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
910 (parse_address_main): Likewise.
911 (group_reloc_type): Add GROUP_MVE.
912 (enum operand_parse_code): Add new operands.
913 (parse_operands): Handle new operands.
914 (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
915 M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
916 M_MNEM_vld42, M_MNEM_vld43): New encodings.
917 (do_mve_vst_vld): New encoding function.
918 (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
919 (it_fsm_pre_encode): Handle new it_instruction_type
920 (handle_pred_state): Likewise.
921 * testsuite/gas/arm/mve-vstld-bad.d: New test.
922 * testsuite/gas/arm/mve-vstld-bad.l: New test.
923 * testsuite/gas/arm/mve-vstld-bad.s: New test.
925 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
927 * config/tc-arm.c (BAD_MVE_AUTO): New error message.
928 (BAD_MVE_SRCDEST): Likewise.
929 (mark_feature_used): Diagnose MVE only instructions when in
930 auto-detection mode or -march=all.
931 (enum operand_parse_code): Define new operand.
932 (parse_operands): Handle new operand.
933 (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
934 (mve_encode_qqq): New encoding helper function.
935 (do_mve_vmull): New encoding function.
936 (insns): Handle new instructions.
937 * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
938 * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
939 * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
941 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
943 * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
944 (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
945 (enum operand_parse_code): Handle new operands.
946 (parse_operands): Likewise.
947 (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
948 M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
949 M_MNEM_vmlsdavax): Define new encodings.
950 (NEON_SHAPE_DEF): Add new shape.
951 (neon_check_type): Use BAD_SIMD_TYPE.
952 (mve_encode_rqq): New encoding helper function.
953 (do_mve_vabav, do_mve_vmladav): New encoding functions.
955 * testsuite/gas/arm/mve-vabav-bad.d: New test.
956 * testsuite/gas/arm/mve-vabav-bad.l: New test.
957 * testsuite/gas/arm/mve-vabav-bad.s: New test.
958 * testsuite/gas/arm/mve-vmladav-bad.d: New test.
959 * testsuite/gas/arm/mve-vmladav-bad.l: New test.
960 * testsuite/gas/arm/mve-vmladav-bad.s: New test.
961 * testsuite/gas/arm/mve-vmlav-bad.d: New test.
962 * testsuite/gas/arm/mve-vmlav-bad.l: New test.
963 * testsuite/gas/arm/mve-vmlav-bad.s: New test.
964 * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
965 * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
966 * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
968 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
970 * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
971 (insns): Change vabs and vneg entries to accept MVE variants.
972 * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
973 * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
974 * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
975 * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
976 * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
977 * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
979 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
981 * config/tc-arm.c (enum it_instruction_type): Rename to...
982 (enum pred_instruction_type): ... this. Include VPT types.
983 (it_insn_type): Rename to ...
984 (pred_insn_type): .. this.
985 (arm_it): Change comment.
986 (enum arm_reg_type): Add new value.
987 (reg_expected_msgs): New entry.
988 (asm_opcode): Add mayBeVecPred member.
989 (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
990 MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
991 (arm_vcond_hsh): New table for vector condition codes.
992 (now_it): Rename to ...
993 (now_pred): ... this.
994 (now_it_compatible): Rename to ...
995 (now_pred_compatible): ... this.
996 (in_it_block): Rename to ...
997 (in_pred_block): ... this.
998 (handle_it_state): Rename to ...
999 (handle_pred_state): ... this. And change it to accept VPT blocks.
1000 (set_it_insn_type): Rename to ...
1001 (set_pred_insn_type): ... this.
1002 (set_it_insn_type_nonvoid): Rename to ...
1003 (set_pred_insn_type_nonvoid): ... this.
1004 (set_it_insn_type_last): Rename to ...
1005 (set_pred_insn_type_last): ... this.
1006 (record_feature_use): Moved.
1007 (mark_feature_used): Likewise.
1008 (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
1009 (emit_insn): Use renamed functions and variables.
1010 (enum operand_parse_code): Add new operands.
1011 (parse_operands): Handle new operands.
1012 (do_scalar_fp16_v82_encode): Change predication detection.
1013 (do_it): Use renamed functions and variables.
1014 (do_t_add_sub): Likewise.
1015 (do_t_arit3): Likewise.
1016 (do_t_arit3c): Likewise.
1017 (do_t_blx): Likewise.
1018 (do_t_branch): Likewise.
1019 (do_t_bkpt_hlt1): Likewise.
1020 (do_t_branch23): Likewise.
1021 (do_t_bx): Likewise.
1022 (do_t_bxj): Likewise.
1023 (do_t_cond): Likewise.
1024 (do_t_csdb): Likewise.
1025 (do_t_cps): Likewise.
1026 (do_t_cpsi): Likewise.
1027 (do_t_cbz): Likewise.
1028 (do_t_it): Likewise.
1029 (do_mve_vpt): New function to handle VPT blocks.
1030 (encode_thumb2_multi): Use renamed functions and variables.
1031 (do_t_ldst): Use renamed functions and variables.
1032 (do_t_mov_cmp): Likewise.
1033 (do_t_mvn_tst): Likewise.
1034 (do_t_mul): Likewise.
1035 (do_t_nop): Likewise.
1036 (do_t_neg): Likewise.
1037 (do_t_rsb): Likewise.
1038 (do_t_setend): Likewise.
1039 (do_t_shift): Likewise.
1040 (do_t_smc): Likewise.
1041 (do_t_tb): Likewise.
1042 (do_t_udf): Likewise.
1043 (do_t_loloop): Likewise.
1044 (do_neon_cvt_1): Likewise.
1045 (do_vfp_nsyn_cvt_fpv8): Likewise.
1046 (do_vsel): Likewise.
1047 (do_vmaxnm): Likewise.
1048 (do_vrint_1): Likewise.
1049 (do_crypto_2op_1): Likewise.
1050 (do_crypto_3op_1): Likewise.
1051 (do_crc32_1): Likewise.
1052 (it_fsm_pre_encode): Likewise.
1053 (it_fsm_post_encode): Likewise.
1054 (force_automatic_it_block_close): Likewise.
1055 (check_it_blocks_finished): Likewise.
1056 (check_pred_blocks_finished): Likewise.
1057 (arm_cleanup): Likewise.
1058 (now_it_add_mask): Rename to ...
1059 (now_pred_add_mask): ... this. And use new variables and functions.
1060 (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
1061 (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
1062 (neon_check_type): Generalize error message.
1063 (mve_encode_qqr): New MVE generic encoding function.
1064 (neon_dyadic_misc): Change to accept MVE variants.
1065 (do_neon_dyadic_if_su): Likewise.
1066 (do_neon_addsub_if_i): Likewise.
1067 (do_neon_dyadic_long): Likewise.
1068 (vfp_or_neon_is_neon): Add extra checks.
1069 (check_simd_pred_availability): Helper function to check SIMD
1070 instruction availability with respect to predication.
1071 (enum opcode_tag): New suffix value.
1072 (opcode_lookup): Change to handle VPT blocks.
1073 (new_automatic_it_block): Rename to ...
1074 (close_automatic_it_block): ...this.
1075 (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
1076 toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
1077 NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
1079 (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
1080 (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
1081 variants. Add entries for vscclrm, and vpst.
1082 (md_begin): Add arm_vcond_hsh initialization.
1083 * config/tc-arm.h (enum it_state): Rename to...
1084 (enum pred_state): ...this.
1085 (struct current_it): Rename to...
1086 (struct current_pred): ...this.
1087 (enum pred_type): New enum.
1088 (struct arm_segment_info_type): Use current_pred.
1089 * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
1090 * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
1091 * testsuite/gas/arm/dotprod-illegal.l: Update error message.
1092 * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
1093 * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
1094 * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
1095 * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
1096 * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
1097 * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
1098 * testsuite/gas/arm/mve-vpst-bad.d: New test.
1099 * testsuite/gas/arm/mve-vpst-bad.l: New test.
1100 * testsuite/gas/arm/mve-vpst-bad.s: New test.
1101 * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
1103 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1105 * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
1106 (armv8_1m_main_ext_table): Add new extensions.
1107 (aeabi_set_public_attributes): Translate new features to new build attributes.
1108 (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
1109 * doc/c-arm.texi: Document new extensions and new build attribute.
1111 2019-05-15 John Darrington <john@darrington.wattle.id.au>
1113 * config/tc-s12z.c (register_prefix): New variable. (md_show_usage,
1114 md_parse_option): parse the new option.
1115 (lex_reg_name): Scan the prefix if one is set.
1116 * doc/c-s12z.texi (S12Z-Opts): Document the new option.
1117 * testsuite/gas/s12z/reg-prefix.d: New file.
1118 * testsuite/gas/s12z/reg-prefix.s: New file.
1119 * testsuite/gas/s12z/s12z.exp: Add them.
1121 2019-05-14 John Darrington <john@darrington.wattle.id.au>
1123 * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
1125 2019-05-15 Alan Modra <amodra@gmail.com>
1127 * config/tc-csky.c (md_convert_frag): Initialise trailing
1128 padding for COND_JUMP_PIC.
1130 2019-05-15 Alan Modra <amodra@gmail.com>
1132 * dwarf2dbg.c: Whitespace fixes.
1133 (get_filenum): Don't strdup "file". Adjust error message.
1134 (dwarf2_directive_filename): Use an unsigned type for "num".
1135 Catch truncation of file number and overflow of get_filenum
1136 XRESIZEVEC multiplication. Delete dead code.
1138 2019-05-15 Alan Modra <amodra@gmail.com>
1141 * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
1142 chars in setting endp.
1144 2019-05-14 Nick Clifton <nickc@redhat.com>
1147 * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
1148 illegal register numbers.
1150 2019-05-10 Nick Clifton <nickc@redhat.com>
1153 * macro.c (get_any_string): Increase size of buffer used to hold
1154 decimal value of expression result.
1155 * dw2gencfi.c (get_debugseg_name): Handle an empty name.
1156 * dwarf2dbg.c (get_filenum): Catch integer wraparound when
1157 extending allocate file array.
1158 (dwarf2_directive_filename): Add extra checks of the computed file
1160 * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
1162 (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
1164 * config/tc-i386.c (i386_output_nops): Catch an attempt to
1165 generate nops of negative lengths.
1166 * as.h (MAX_LITTLENUMS): Move definition to here from...
1167 * config/atof-ieee.c: ...here.
1168 * config/tc-aarch64.c: ...here.
1169 * config/tc-arc.c: ...here.
1170 * config/tc-arm.c: ...here.
1171 * config/tc-epiphany.c: ...here.
1172 * config/tc-i386.c: ...here.
1173 * config/tc-ia64.c: ...here. (And correct the value).
1174 * config/tc-m32c.c: ...here.
1175 * config/tc-m32r.c: ...here.
1176 * config/tc-metag.c: ...here.
1177 * config/tc-microblaze.c: ...here.
1178 * config/tc-nds32.c: ...here.
1179 * config/tc-or1k.c: ...here.
1180 * config/tc-score.c: ...here.
1181 * config/tc-score7.c: ...here.
1182 * config/tc-tic4x.c: ...here.
1183 * config/tc-tilegx.c: ...here.
1184 * config/tc-tilepro.c: ...here.
1185 * config/tc-visium.c: ...here.
1186 * config/tc-sh.c (md_assemble): Add check for an instruction with
1188 * config/tc-mips.c (mips_lookup_insn): Add check for very short
1190 * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
1192 (tic54x_start_line_hook): Check for an empty line.
1193 (next_line_shows_parallel): Do not walk off the end of the string.
1194 (tic54x_macro_start): Check for too much macro nesting.
1195 (tic54x_start_label): Add label_start parameter. Use this
1196 parameter to check the first character of the label.
1198 * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
1199 line_start variable to tic54x_start_label.
1201 2019-05-10 Faraz Shahbazker <fshahbazker@wavecomp.com>
1203 * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
1204 Add expansions for MIPS r6.
1205 * testsuite/gas/mips/add.s: Enable tests for R6.
1206 * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
1207 * testsuite/gas/mips/mipsr6@add.d: Likewise.
1208 * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
1209 * gas/testsuite/gas/mips/mips.exp: Run the new test.
1211 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1213 * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
1215 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1217 * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
1218 * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
1219 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
1220 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
1221 * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
1222 * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
1223 * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
1224 * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
1225 * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
1226 * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
1227 * testsuite/gas/aarch64/sve2.d: Test new instructions.
1228 * testsuite/gas/aarch64/sve2.s: Test new instructions.
1230 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1232 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
1235 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1237 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
1240 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1242 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
1245 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1247 * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
1248 (parse_address_main): Account for new addressing mode [Zn.S, Xm].
1249 (parse_operands): Handle new SVE_ADDR_ZX operand.
1251 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1253 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
1256 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1258 * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
1260 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1262 * config/tc-aarch64.c: Add command line architecture feature flags
1263 "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
1264 * doc/c-aarch64.texi: Document new architecture feature flags.
1266 2019-05-08 Alan Modra <amodra@gmail.com>
1268 * testsuite/gas/elf/dwarf2-1.s,
1269 * testsuite/gas/elf/dwarf2-2.s,
1270 * testsuite/gas/elf/dwarf2-5.s,
1271 * testsuite/gas/elf/dwarf2-7.s,
1272 * testsuite/gas/elf/dwarf2-8.s,
1273 * testsuite/gas/elf/dwarf2-9.s,
1274 * testsuite/gas/elf/dwarf2-10.s,
1275 * testsuite/gas/elf/dwarf2-11.s,
1276 * testsuite/gas/elf/dwarf2-12.s,
1277 * testsuite/gas/elf/dwarf2-13.s,
1278 * testsuite/gas/elf/dwarf2-14.s,
1279 * testsuite/gas/elf/dwarf2-15.s,
1280 * testsuite/gas/elf/dwarf2-16.s,
1281 * testsuite/gas/elf/dwarf2-17.s,
1282 * testsuite/gas/elf/dwarf2-18.s,
1283 * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
1285 * testsuite/gas/elf/dwarf2-1.d,
1286 * testsuite/gas/elf/dwarf2-2.d,
1287 * testsuite/gas/elf/dwarf2-5.d,
1288 * testsuite/gas/elf/dwarf2-7.d,
1289 * testsuite/gas/elf/dwarf2-8.d,
1290 * testsuite/gas/elf/dwarf2-9.d,
1291 * testsuite/gas/elf/dwarf2-10.d,
1292 * testsuite/gas/elf/dwarf2-11.d,
1293 * testsuite/gas/elf/dwarf2-12.d,
1294 * testsuite/gas/elf/dwarf2-13.d,
1295 * testsuite/gas/elf/dwarf2-14.d,
1296 * testsuite/gas/elf/dwarf2-15.d,
1297 * testsuite/gas/elf/dwarf2-16.d,
1298 * testsuite/gas/elf/dwarf2-17.d,
1299 * testsuite/gas/elf/dwarf2-18.d,
1300 * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
1301 Remove avr, pru, tile, xtensa from xfails. Update expected output.
1302 * testsuite/gas/elf/elf.exp: Sort targets.
1303 (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
1304 for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
1305 * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
1307 2019-05-08 Alan Modra <amodra@gmail.com>
1309 * config/tc-xtensa.c (opt_linkrelax): New variable.
1310 (md_parse_option): Set it here.
1311 (md_begin): Copy opt_linkrelax to linkrelax.
1313 2019-05-07 Alexandre Oliva <aoliva@redhat.com>
1315 * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
1316 * testsuite/gas/elf/dwarf2-19.d: Likewise.
1318 2019-05-07 Alan Modra <amodra@gmail.com>
1320 * symbols.c (use_complex_relocs_for): Formatting. Factor out
1323 2019-05-06 Andrew Bennett <andrew.bennett@imgtec.com>
1324 Faraz Shahbazker <fshahbazker@wavecomp.com>
1326 * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
1327 (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
1328 (mips_after_parse_args): Translate EVA to EVA_R6.
1329 * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
1330 * testsuite/gas/mips/eva.s: Likewise.
1331 * testsuite/gas/mips/ase-errors-1.l: Check errors for
1333 * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
1335 2019-05-06 Alan Modra <amodra@gmail.com>
1337 * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
1340 2019-05-06 Alan Modra <amodra@gmail.com>
1342 * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
1343 relocs, and VLE sdarel relocs.
1344 * testsuite/gas/ppc/power4.d: Adjust.
1346 2019-05-05 Alexandre Oliva <aoliva@redhat.com>
1348 * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
1349 views of prior locs.
1350 (dwarf2_gen_line_info_1): Skip heads.
1351 (size_inc_line_addr, emit_inc_line_addr): Drop
1352 DW_LNS_advance_pc for zero addr delta.
1353 (dwarf2_finish): Assign views for heads of segments.
1354 * testsuite/gas/elf/dwarf2-19.d: New.
1355 * testsuite/gas/elf/dwarf2-19.s: New.
1356 * testsuite/gas/elf/elf.exp: Test it.
1358 2019-05-04 Alan Modra <amodra@gmail.com>
1360 * config/tc-m32c.c (insn_size): Delete static var.
1361 (md_begin): Don't set it.
1362 (m32c_md_end): Delete.
1363 (md_assemble): Add insn_size auto var.
1364 * config/tc-m32c.h (md_end): Don't define.
1365 (m32c_md_end): Delete.
1366 (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
1367 * testsuite/gas/all/align.d: Remove m32c from notarget list.
1368 * testsuite/gas/all/incbin.d: Likewise.
1369 * testsuite/gas/elf/dwarf2-11.d: Likewise.
1370 * testsuite/gas/macros/semi.d: Likewise.
1371 * testsuite/gas/all/gas.exp (do_comment): Similarly.
1373 2019-05-02 H.J. Lu <hongjiu.lu@intel.com>
1376 * config/tc-i386.c (process_suffix): Issue a warning to IRET
1377 without a suffix for .code16gcc.
1378 * testsuite/gas/i386/jump16.s: Add tests for iretX.
1379 * testsuite/gas/i386/jump16.d: Updated.
1380 * testsuite/gas/i386/jump16.e: New file.
1382 2019-05-01 Sudakshina Das <sudi.das@arm.com>
1384 * config/tc-aarch64.c (parse_operands): Add case for
1385 AARCH64_OPND_TME_UIMM16.
1386 (aarch64_features): Add "tme".
1387 * doc/c-aarch64.texi: Document the same.
1388 * testsuite/gas/aarch64/tme-invalid.d: New test.
1389 * testsuite/gas/aarch64/tme-invalid.l: New test.
1390 * testsuite/gas/aarch64/tme-invalid.s: New test.
1391 * testsuite/gas/aarch64/tme.d: New test.
1392 * testsuite/gas/aarch64/tme.s: New test.
1394 2019-04-29 John Darrington <john@darrington.wattle.id.au>
1396 * testsuite/gas/s12z/truncated.d: New file.
1397 * testsuite/gas/s12z/truncated.s: New file.
1398 * testsuite/gas/s12z/s12z.exp: Add new test.
1400 2019-04-26 Andrew Bennett <andrew.bennett@imgtec.com>
1401 Faraz Shahbazker <fshahbazker@wavecomp.com>
1403 * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
1404 M_SCDP_AB>: New cases and expansions for paired instructions.
1405 * testsuite/gas/mips/llpscp-32.s: New test source.
1406 * testsuite/gas/mips/llpscp-64.s: Likewise.
1407 * testsuite/gas/mips/llpscp-32.d: New test.
1408 * testsuite/gas/mips/llpscp-64.d: Likewise.
1409 * testsuite/gas/mips/mips.exp: Run the new tests.
1410 * testsuite/gas/mips/r6.s: Add new instructions to test source.
1411 * testsuite/gas/mips/r6-64.s: Likewise.
1412 * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
1413 * testsuite/gas/mips/r6-64-n64.d: Likewise.
1414 * testsuite/gas/mips/r6-n32.d: Likewise.
1415 * testsuite/gas/mips/r6-n64.d: Likwwise.
1416 * testsuite/gas/mips/r6.d: Likewise.
1418 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
1421 * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
1422 to IRET for .code16gcc.
1423 * testsuite/gas/i386/jump16.s: Add IRET tests.
1424 * testsuite/gas/i386/jump16.d: Updated.
1426 2019-04-25 Alexandre Oliva <aoliva@redhat.com>
1427 Alan Modra <amodra@gmail.com>
1430 * frags.c (frag_gtoffset_p): New.
1431 * frags.h (frag_gtoffset_p): Declare it.
1432 * expr.c (resolve_expression): Use it.
1434 2019-04-24 Alan Modra <amodra@gmail.com>
1437 * symbols.c (resolve_symbol_value): When handling symbols
1438 marked as sy_flags.resolved, return correct value for the
1439 case of expression symbols left as an O_symbol expression.
1440 Merge O_symbol code handling undefined and common symbols with
1441 code handling special cases of expression symbols. Use
1442 seg_left to test for undefined and common symbols. Don't
1443 leave an O_symbol expression when X_add_symbol resolves to
1444 the absolute_section. Init final_val later.
1445 * testsuite/gas/mmix/basep-7.d: Adjust expected output.
1447 2019-04-24 John Darrington <john@darrington.wattle.id.au>
1449 * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
1450 and BCLR instructions with an invalid mode.
1451 * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
1453 2019-04-19 Nick Clifton <nickc@redhat.com>
1456 * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
1457 to the relaxation function.
1458 * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
1459 number of iterations. Make sure that our internal iteration limit
1460 does not exceed this external iteration limit.
1462 2019-04-18 Matthew Fortune <matthew.fortune@mips.com>
1464 * config/tc-mips.c (match_non_zero_reg_operand): Update
1466 * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
1468 2019-04-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1470 * config/tc-msp430.c (msp430_make_init_symbols): Define
1471 __crt0_run_{preinit,init,fini}_array symbols if
1472 .{preinit,init,fini}_array sections exist.
1473 * testsuite/gas/msp430/fini-array.d: New test.
1474 * testsuite/gas/msp430/init-array.d: New test.
1475 * testsuite/gas/msp430/preinit-array.d: New test.
1476 * testsuite/gas/msp430/fini-array.s: New test source.
1477 * testsuite/gas/msp430/init-array.s: New test source.
1478 * testsuite/gas/msp430/preinit-array.s: New test source.
1479 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
1481 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1483 * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
1484 symbol when .lower.bss or .either.bss sections exist.
1485 Define __crt0_movedata when .lower.data or .either.data sections exist.
1486 * testsuite/gas/msp430/either-data-bss-sym.d: New test.
1487 * testsuite/gas/msp430/low-data-bss-sym.d: New test.
1488 * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
1489 * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
1490 * testsuite/gas/msp430/msp430.exp: Run new tests.
1491 Enable large code model when running -mdata-region={upper,either}
1494 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1496 * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
1497 OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
1498 (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
1499 OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
1501 (md_show_usage): Likewise.
1502 (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
1503 "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
1504 (md_longopts): Likewise.
1505 (warn_eint_nop): Update comment.
1506 (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
1507 prev_insn_is_dint or we are assembling for 430 ISA.
1508 (msp430_operands): Only call warn_unsure_interrupt if
1509 do_unknown_interrupt_nops == TRUE.
1510 * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
1511 * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
1512 * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
1513 * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
1514 * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
1516 * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
1517 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
1519 2019-04-16 Alan Modra <amodra@gmail.com>
1521 * testsuite/gas/all/weakref1.d: xfail nds32.
1523 2019-04-16 Alan Modra <amodra@gmail.com>
1525 * testsuite/gas/all/gas.exp: Remove ns32k xfails.
1526 * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
1528 2019-04-16 Alan Modra <amodra@gmail.com>
1530 * write.h: Don't include bit_fix.h.
1531 (struct fix): Rearrange some fields. Delete fx_im_disp and
1532 fx_bit_fixP. Use bitfields for fx_size and fx_pcrel_adjust.
1533 * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
1534 (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
1535 (print_fixup): Don't print im_disp.
1536 * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
1538 * config/tc-dlx.c (md_apply_fix): Remove wrong debug code. Set
1539 fx_no_overflow when fx_bit_fixP.
1540 * config/tc-dlx.h: Include bit_fix.h.
1541 (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
1542 * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
1543 fx_no_overflow when bit_fixP.
1544 * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
1545 (fix_im_disp, fix_bit_fixP): Adjust to suit.
1546 (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
1548 2019-04-16 Alan Modra <amodra@gmail.com>
1550 * write.h (struct fix <fx_where>): Make unsigned.
1551 (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
1552 * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
1553 "size" parameters unsigned long.
1554 (fix_new_internal): Likewise. Adjust error format string to suit.
1555 * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
1556 * config/tc-sparc.c (md_apply_fix): Likewise.
1557 * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
1558 * config/tc-score7.c (s7_convert_frag): Likewise.
1560 2019-04-16 Alan Modra <amodra@gmail.com>
1562 * frags.h (struct frag <fr_fix>): Use unsigned type.
1563 * frags.c (frag_new): Assert that current size exceeds
1564 old_frags_var_max_size.
1565 * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
1566 * listing.c (calc_hex): Likewise.
1567 * write.c (cvt_frag_to_fill, write_relocs): Likewise.
1568 * config/tc-arc.c (md_convert_frag): Likewise.
1569 * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
1570 * config/tc-mips.c (md_convert_frag): Likewise.
1571 * config/tc-rl78.c (md_convert_frag): Likewise.
1572 * config/tc-rx.c (md_convert_frag): Likewise.
1573 * config/tc-sparc.c (md_apply_fix): Likewise.
1574 * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
1575 (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
1577 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1579 * config/tc-arm.c (parse_sys_vldr_vstr): New function.
1580 (OP_VLDR): New enum operand_parse_code enumerator.
1581 (parse_operands): Add logic for OP_VLDR.
1582 (do_t_vldr_vstr_sysreg): New function.
1583 (do_vldr_vstr): Likewise.
1584 (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
1585 (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
1586 Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
1587 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
1588 uses of VLDR and VSTR.
1589 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
1591 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
1593 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
1596 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1598 * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
1599 (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1601 (parse_vfp_reg_list): Add new partial_match parameter. Set
1602 *partial_match to TRUE if at least one element in the register list has
1603 matched. Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1604 register lists which expect VPR as last element in the list.
1605 (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
1607 (s_arm_unwind_save_vfp): Likewise.
1608 (enum operand_parse_code): New OP_VRSDVLST enumerator.
1609 (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
1610 Handle new OP_VRSDVLST case.
1611 (do_t_vscclrm): New function.
1612 (insns): New entry for VSCCLRM instruction.
1613 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
1615 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
1616 for above instructions.
1617 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
1619 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
1620 for above instructions.
1622 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1624 * config/tc-arm.c (enum reg_list_els): Define earlier and add
1625 REGLIST_RN and REGLIST_CLRM enumerators.
1626 (parse_reg_list): Add etype parameter to distinguish between regular
1627 core register list and CLRM register list. Add logic to
1628 recognize CLRM register list.
1629 (parse_vfp_reg_list): Assert type is not for core register list.
1630 (s_arm_unwind_save_core): Update call to parse_reg_list to new
1632 (enum operand_parse_code): Declare OP_CLRMLST enumerator.
1633 (parse_operands): Update call to parse_reg_list to new prototype. Add
1634 logic for OP_CLRMLST.
1635 (encode_thumb2_ldmstm): Rename into ...
1636 (encode_thumb2_multi): This. Add do_io parameter. Add logic to
1637 encode CLRM and guard LDM/STM only code by do_io.
1638 (do_t_ldmstm): Adapt to use encode_thumb2_multi.
1639 (do_t_push_pop): Likewise.
1640 (do_t_clrm): New function.
1641 (insns): Define CLRM.
1642 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
1643 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
1644 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
1645 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
1646 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
1648 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1649 Andre Vieira <andre.simoesdiasvieira@arm.com>
1651 * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
1652 for the LR operand and optional LR operand.
1653 (parse_operands): Add switch cases for OP_LR and OP_oLR for
1654 both type checking and value checking.
1655 (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
1656 (v8_1_loop_reloc): New helper function for handling labels
1657 for the low overhead loop instructions.
1658 (do_t_loloop): New function to encode DLS, WLS and LE.
1659 (insns): New entries for WLS, DLS and LE.
1660 (md_pcrel_from_section): New switch case
1661 for BFD_RELOC_ARM_THUMB_LOOP12.
1662 (md_appdy_fix): Likewise.
1663 (tc_gen_reloc): Likewise.
1664 * testsuite/gas/arm/armv8_1-m-tloop.s: New.
1665 * testsuite/gas/arm/armv8_1-m-tloop.d: New.
1666 * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
1667 * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
1668 * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
1670 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1671 Andre Vieira <andre.simoesdiasvieira@arm.com>
1673 * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
1674 (do_t_v8_1_branch): New switch case for bfcsel.
1676 (insns): New instruction for bfcsel.
1677 (md_pcrel_from_section): New switch case
1678 for BFD_RELOC_THUMB_PCREL_BFCSEL.
1679 (md_appdy_fix): Likewise
1680 (tc_gen_reloc): Likewise.
1681 * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
1682 * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
1684 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1686 * config/tc-arm.c (md_pcrel_from_section): New switch case for
1687 BFD_RELOC_ARM_THUMB_BF13.
1688 (md_appdy_fix): Likewise.
1689 (tc_gen_reloc): Likewise.
1691 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1692 Andre Vieira <andre.simoesdiasvieira@arm.com>
1694 * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
1695 (do_t_v8_1_branch): New switch case for bfl.
1696 (insns): New instruction for bfl.
1697 * testsuite/gas/arm/armv8_1-m-bfl.d: New.
1698 * testsuite/gas/arm/armv8_1-m-bfl.s: New.
1699 * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
1700 * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
1701 * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
1702 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
1703 * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
1705 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1707 * config/tc-arm.c (md_pcrel_from_section): New switch case for
1708 BFD_RELOC_ARM_THUMB_BF19.
1709 (md_appdy_fix): Likewise.
1710 (tc_gen_reloc): Likewise.
1712 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1714 * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
1715 (do_t_v8_1_branch): New switch cases for bfx and bflx.
1716 (insns): New instruction for bfx and bflx.
1717 * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
1718 * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
1719 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
1720 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
1721 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
1723 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1724 Andre Vieira <andre.simoesdiasvieira@arm.com>
1726 * config/tc-arm.c (T16_32_TAB): New entries for bf.
1727 (do_t_branch_future): New.
1728 (insns): New instruction for bf.
1729 * testsuite/gas/arm/armv8_1-m-bf.d: New.
1730 * testsuite/gas/arm/armv8_1-m-bf.s: New.
1731 * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
1732 * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
1733 * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
1734 * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
1735 * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
1737 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1739 * config/tc-arm.c (md_pcrel_from_section): New switch case for
1740 BFD_RELOC_ARM_THUMB_BF17.
1741 (md_appdy_fix): Likewise.
1742 (tc_gen_reloc): Likewise.
1744 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1746 * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
1747 (arm_it): Member reloc renamed relocs and updated to an array.
1748 Rest: Replace all occurrences of reloc to relocs[0].
1750 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1752 * config/tc-arm.c (md_pcrel_from_section): New switch case
1753 for BFD_RELOC_THUMB_PCREL_BRANCH5.
1754 (v8_1_branch_value_check): New function to check branch
1756 (md_appdy_fix): New switch case for
1757 BFD_RELOC_THUMB_PCREL_BRANCH5.
1758 (tc_gen_reloc): Likewise.
1760 2019-04-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
1762 * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
1763 (armv8_1m_main_ext_table): New extension table.
1764 (arm_archs): Use the new extension table.
1765 * doc/c-arm.texi: Add missing arch and document new extensions.
1766 * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
1767 * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
1768 * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
1770 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1772 * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
1773 Tag_CPU_arch build attribute value. Reindent.
1774 (get_aeabi_cpu_arch_from_fset): Update assert.
1775 (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
1776 * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
1778 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
1780 * config/tc-mips.c (mips_cpu_info_table): Add i6500. Update
1781 default ASEs for i6400.
1782 * doc/c-mips.texi (-march): Document i6500.
1783 * testsuite/gas/mips/elf_mach_i6400.d: New test.
1784 * testsuite/gas/mips/elf_mach_i6500.d: New test.
1785 * testsuite/gas/mips/mips.exp: Run the new tests.
1787 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
1789 * config/tc-mips.c (mips_set_options) <init_ase>: New field.
1790 (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
1791 (file_mips_check_options): Propagate initial ASE settings.
1792 (mips_after_parse_args, parse_code_option): Track the initial
1793 ASE settings for a CPU.
1794 (s_mipsset): Restore the initial ASE settings when reverting
1795 to the default arch.
1796 * testsuite/gas/mips/elf_mach_p6600.d: New test.
1797 * testsuite/gas/mips/mips.exp: Run the new test.
1799 2019-04-12 John Darrington <john@darrington.wattle.id.au>
1801 config/tc-s12z.h: Remove definition of macro TC_M68K
1803 2019-04-01 John Darrington <john@darrington.wattle.id.au>
1805 config/tc-s12z.c: Use bfd_boolean where appropriate.
1807 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
1809 * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
1810 * testsuite/gas/xtensa/loop-relax.d: New test definition.
1811 * testsuite/gas/xtensa/loop-relax.s: New test source.
1812 * testsuite/gas/xtensa/text-section-literals-1a.d: New test
1814 * testsuite/gas/xtensa/text-section-literals-2.d: New test
1816 * testsuite/gas/xtensa/text-section-literals-2.s: New test
1818 * testsuite/gas/xtensa/text-section-literals-2a.d: New test
1820 * testsuite/gas/xtensa/text-section-literals-3.d: New test
1822 * testsuite/gas/xtensa/text-section-literals-3.s: New test
1824 * testsuite/gas/xtensa/text-section-literals-4.d: New test
1826 * testsuite/gas/xtensa/text-section-literals-4.s: New test
1828 * testsuite/gas/xtensa/text-section-literals-4a.d: New test
1831 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
1833 * testsuite/gas/xtensa/all.exp: Remove all expect-based
1834 tests and all explicit run_dump_test / run_list_test
1835 invocations. Add run_dump_tests for all .d files in the
1837 * testsuite/gas/xtensa/entry_align.d: New test definition.
1838 * testsuite/gas/xtensa/entry_align.l: New test output.
1839 * testsuite/gas/xtensa/entry_misalign.d: New test definition.
1840 * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
1841 * testsuite/gas/xtensa/j_too_far.d: New test definition.
1842 * testsuite/gas/xtensa/j_too_far.l: New test output.
1843 * testsuite/gas/xtensa/loop_align.d: New test definition.
1844 * testsuite/gas/xtensa/loop_misalign.d: New test definition.
1845 * testsuite/gas/xtensa/trampoline-2.d: New test definition.
1846 * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
1847 * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
1849 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
1851 * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
1853 (get_literal_pool_location): Only search for the literal pool
1854 when auto litpools is used, otherwise take one recorded in the
1855 tc_segment_info_data.
1856 (xtensa_assign_litpool_addresses): New function.
1857 (xtensa_move_literals): Don't duplicate 'literal pool location
1858 required...' error message. Call xtensa_assign_litpool_addresses.
1860 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
1862 * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
1863 (xtensa_mark_literal_pool_location): Don't add fill frag to literal
1864 section that records literal pool location.
1865 (md_begin): Call xtensa_mark_literal_pool_location when text
1866 section literals or auto litpools are used.
1867 (xtensa_elf_section_change_hook): Call
1868 xtensa_mark_literal_pool_location when text section literals or
1869 auto litpools are used, there's no literal pool location defined
1870 for the current section and it's not .init or .fini.
1871 * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
1872 * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
1873 * testsuite/gas/xtensa/auto-litpools.d: Likewise.
1875 2019-04-11 Sudakshina Das <sudi.das@arm.com>
1877 * config/tc-aarch64.c (process_omitted_operand): Add case for
1879 (parse_operands): Likewise.
1880 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
1881 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
1882 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
1883 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
1885 2019-04-11 Sudakshina Das <sudi.das@arm.com>
1887 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
1888 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
1889 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
1890 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
1892 2019-04-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1894 * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
1895 * testsuite/gas/i386/solaris/solaris.exp: New driver.
1896 * testsuite/gas/i386/solaris/reloc64.d,
1897 testsuite/gas/i386/solaris/x86-64-jump.d,
1898 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
1899 testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
1900 testsuite/gas/i386/solaris/x86-64-nop-3.d,
1901 testsuite/gas/i386/solaris/x86-64-nop-4.d,
1902 testsuite/gas/i386/solaris/x86-64-nop-5.d,
1903 testsuite/gas/i386/solaris/x86-64-relax-2.d,
1904 testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
1905 * testsuite/gas/i386/reloc64.d,
1906 testsuite/gas/i386/x86-64-jump.d,
1907 testsuite/gas/i386/x86-64-mpx-branch-1.d,
1908 testsuite/gas/i386/x86-64-mpx-branch-2.d,
1909 testsuite/gas/i386/x86-64-nop-3.d,
1910 testsuite/gas/i386/x86-64-nop-4.d,
1911 testsuite/gas/i386/x86-64-nop-5.d,
1912 testsuite/gas/i386/x86-64-relax-2.d,
1913 testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
1915 2019-04-10 Alan Modra <amodra@gmail.com>
1917 * config/te-cloudabi.h: New file.
1918 * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
1919 rather than TARGET_OS to select cloudabi.
1920 * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
1921 * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
1923 2019-04-09 Robert Suchanek <robert.suchanek@mips.com>
1925 * testsuite/gas/mips/mips.exp: Run hwr-names test.
1926 * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
1928 * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
1930 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
1932 * config/tc-i386.c (output_insn): Support
1933 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
1934 * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
1935 * testsuite/gas/i386/property-2.d: Updated.
1936 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1938 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
1940 * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
1941 * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
1944 2019-04-05 H.J. Lu <hongjiu.lu@intel.com>
1946 * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
1947 * testsuite/gas/i386/property-2.d: New file.
1948 * testsuite/gas/i386/property-2.s: Likewise.
1949 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1951 2019-04-05 Xuepeng Guo <xuepeng.guo@intel.com>
1953 * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
1954 (cpu_noarch): Add noavx512_bf16.
1955 * doc/c-i386.texi: Document avx512_bf16.
1956 * testsuite/gas/i386/avx512_bf16.d: New file.
1957 * testsuite/gas/i386/avx512_bf16.s: Likewise.
1958 * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
1959 * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
1960 * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
1961 * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
1962 * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
1963 * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
1964 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
1965 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
1966 * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
1967 * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
1968 * testsuite/gas/i386/i386.exp: Add BF16 related tests.
1970 2019-04-05 Alan Modra <amodra@gmail.com>
1972 * testsuite/gas/ppc/bc.s,
1973 * testsuite/gas/ppc/bcat.d,
1974 * testsuite/gas/ppc/bcaterr.d,
1975 * testsuite/gas/ppc/bcaterr.l,
1976 * testsuite/gas/ppc/bcy.d,
1977 * testsuite/gas/ppc/bcyerr.d,
1978 * testsuite/gas/ppc/bcyerr.l: New tests.
1979 * testsuite/gas/ppc/ppc.exp: Run them.
1981 2019-04-05 Alan Modra <amodra@gmail.com>
1983 * testsuite/gas/ppc/476.d: Remove trailing spaces.
1984 * testsuite/gas/ppc/a2.d: Likewise.
1985 * testsuite/gas/ppc/booke.d: Likewise.
1986 * testsuite/gas/ppc/booke_xcoff.d: Likewise.
1987 * testsuite/gas/ppc/e500.d: Likewise.
1988 * testsuite/gas/ppc/e500mc.d: Likewise.
1989 * testsuite/gas/ppc/e6500.d: Likewise.
1990 * testsuite/gas/ppc/htm.d: Likewise.
1991 * testsuite/gas/ppc/power6.d: Likewise.
1992 * testsuite/gas/ppc/power8.d: Likewise.
1993 * testsuite/gas/ppc/power9.d: Likewise.
1994 * testsuite/gas/ppc/vle.d: Likewise.
1996 2019-04-04 Peter Bergner <bergner@linux.ibm.com>
1999 * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
2000 btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
2001 bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
2002 bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
2003 bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
2004 bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
2005 bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
2006 bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
2007 bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
2008 beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
2009 bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
2010 buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
2011 bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
2012 bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
2013 bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
2014 bttarl+): Add tests of extended mnemonics.
2015 * testsuite/gas/ppc/power8.d: Likewise. Update previous bctar tests
2016 to expect new extended mnemonics.
2017 * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
2018 to not use illegal BO value. Use a more convenient BI value.
2019 * testsuite/gas/ppc/a2.d: Update tests for new expect output.
2021 2019-04-03 Max Filippov <jcmvbkbc@gmail.com>
2023 * config/tc-xtensa.c (convert_frag_immed): Drop
2024 convert_frag_immed_finish_loop invocation.
2025 (convert_frag_immed_finish_loop): Drop declaration and
2027 * config/xtensa-relax.c (widen_spec_list): Replace loop
2028 widening that uses addi/addmi with widening that uses l32r
2031 2019-04-01 Andre Vieira <andre.simoesdiasvieira@arm.com>
2033 * config/tc-arm.c (arm_ext_table): New struct type.
2034 (arm_arch_option_table): Add new 'arm_ext_table' field.
2035 (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
2036 (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
2037 armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
2038 armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
2039 armv85a_ext_table, armv8m_main_ext_table,
2040 armv8r_ext_table): New architecture extension tables.
2041 (ARM_ARCH_OPT): Add new default field.
2042 (ARM_ARCH_OPT2): New macro.
2043 (arm_archs): Extend some architectures with the new architecture
2044 extension tables mentioned above.
2045 (arm_extensions): Add DEPRECATED comment with instructions to
2047 (arm_parse_extension): Change to use new extension tables.
2048 (arm_parse_cpu): Don't change existing behavior.
2049 (arm_parse_arch): Change to use new extension tables.
2050 * doc/c-arm.texi: Document new architecture extensions.
2051 * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
2052 extension option rather than -mfpu and change expected behaviour to
2054 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
2055 * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
2056 * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
2057 * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
2058 * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
2059 * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
2060 * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
2061 * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
2062 * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
2063 * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
2064 * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
2065 * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
2066 * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
2067 * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
2068 * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
2069 * testsuite/gas/arm/armv8m.main+fp.d: New.
2070 * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
2071 * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
2072 * testsuite/gas/arm/attr-ext-fpv5.d: New.
2073 * testsuite/gas/arm/attr-ext-idiv.d: New.
2074 * testsuite/gas/arm/attr-ext-mp.d: New.
2075 * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
2076 * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
2077 * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
2078 * testsuite/gas/arm/attr-ext-sec.d: New.
2079 * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
2080 * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
2081 * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
2082 * testsuite/gas/arm/attr-ext-vfpv3.d: New.
2083 * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
2084 * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
2085 * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
2086 * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
2087 * testsuite/gas/arm/attr-ext-vfpv4.d: New.
2088 * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
2089 * testsuite/gas/arm/fpv5-d16.s: New.
2090 * testsuite/gas/arm/fpv5-sp-d16.s: New.
2092 2019-03-28 Alan Modra <amodra@gmail.com>
2095 * testsuite/gas/ppc/476.d: Update mtfsb*.
2096 * testsuite/gas/ppc/a2.d: Likewise.
2098 2019-03-21 Alan Modra <amodra@gmail.com>
2100 * emul.h (struct emulation): Delete strip_underscore.
2101 * emul-target.h (emul_strip_underscore): Don't define.
2102 (emul_struct_name): Update initialization.
2104 2019-03-21 Alan Modra <amodra@gmail.com>
2106 * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
2107 * config/tc-pdp11.c (md_apply_fix): Likewise.
2108 * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
2109 BFD_RELOC_16, and BFD_RELOC_64.
2110 * testsuite/gas/all/gas.exp: Move target exclusions for forward
2111 test, but not cr16, to..
2112 * testsuite/gas/all/forward.d: ..here, with explanation. Remove
2113 d10v, d30v, and pdp11 xfails.
2115 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2117 * config/tc-i386.c (optimize_encoding): Don't check AVX for
2118 EVEX vector load/store optimization. Check both operands for
2119 ZMM register. Update EVEX vector load/store opcode check.
2120 Choose EVEX Disp8 over VEX Disp32.
2121 * testsuite/gas/i386/optimize-1.d: Updated.
2122 * testsuite/gas/i386/optimize-1a.d: Likewise.
2123 * testsuite/gas/i386/optimize-2.d: Likewise.
2124 * testsuite/gas/i386/optimize-4.d: Likewise.
2125 * testsuite/gas/i386/optimize-5.d: Likewise.
2126 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
2127 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
2128 * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
2129 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2130 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
2131 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
2132 * testsuite/gas/i386/optimize-1.s: Add ZMM register load
2134 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
2136 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2139 * config/tc-i386.c (optimize_encoding): Check only
2140 cpu_arch_flags.bitfield.cpuavx512vl.
2141 * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
2142 * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
2144 * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
2145 * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
2147 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2150 * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
2151 x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
2152 Remove optimize-6c and x86-64-optimize-7c tests.
2153 * testsuite/gas/i386/noavx-3.l: Updated.
2154 * testsuite/gas/i386/noavx-4.d: Likewise.
2155 * testsuite/gas/i386/noavx-5.d: Likewise.
2156 * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
2157 * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
2158 * testsuite/gas/i386/nosse-5.s: Likewise.
2159 * testsuite/gas/i386/optimize-6a.d: Removed.
2160 * testsuite/gas/i386/optimize-6c.d: Likewise.
2161 * testsuite/gas/i386/optimize-7.d: Likewise.
2162 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
2163 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
2164 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
2165 * testsuite/gas/i386/optimize-6a.l: New file.
2166 * testsuite/gas/i386/optimize-6a.s: Likewise.
2167 * testsuite/gas/i386/optimize-7.l: Likewise.
2168 * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
2169 * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
2170 * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
2172 2019-03-18 Alan Modra <amodra@gmail.com>
2174 * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
2175 * as.c (macro_expr): Likewise.
2176 * macro.c (buffer_and_nest): Likewise.
2177 * read.c (temp_ilp): Remove FIXME.
2179 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2181 * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
2182 * testsuite/gas/i386/avx512bw-intel.d: Likewise.
2183 * testsuite/gas/i386/avx512bw.d: Likewise.
2184 * testsuite/gas/i386/avx512f-intel.d: Likewise.
2185 * testsuite/gas/i386/avx512f.d: Likewise.
2186 * testsuite/gas/i386/disp32.d: Likewise.
2187 * testsuite/gas/i386/intel-regs.d: Likewise.
2188 * testsuite/gas/i386/pseudos.d: Likewise.
2189 * testsuite/gas/i386/x86-64-disp32.d: Likewise.
2190 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
2192 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2195 * config/tc-i386.c (optimize_encoding): Encode 128-bit and
2196 256-bit EVEX vector register load/store instructions as VEX
2197 vector register load/store instructions for -O1.
2198 * doc/c-i386.texi: Update -O1 documentation.
2199 * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
2200 * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
2201 load/store instructions.
2202 * testsuite/gas/i386/optimize-2.s: Likewise.
2203 * testsuite/gas/i386/optimize-3.s: Likewise.
2204 * testsuite/gas/i386/optimize-5.s: Likewise.
2205 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
2206 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
2207 * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
2208 * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
2209 * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
2210 * testsuite/gas/i386/optimize-1.d: Updated.
2211 * testsuite/gas/i386/optimize-2.d: Likewise.
2212 * testsuite/gas/i386/optimize-3.d: Likewise.
2213 * testsuite/gas/i386/optimize-4.d: Likewise.
2214 * testsuite/gas/i386/optimize-5.d: Likewise.
2215 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
2216 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2217 * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
2218 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
2219 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
2220 * testsuite/gas/i386/optimize-7.d: New file.
2221 * testsuite/gas/i386/optimize-7.s: Likewise.
2222 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
2223 * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
2225 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2227 * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
2228 VEX/EVEX vector register clearing instructions with 128-bit VEX
2229 vector register clearing instructions at -O1.
2230 * doc/c-i386.texi: Update -O1 and -O2 documentation.
2231 * testsuite/gas/i386/i386.exp: Run optimize-1a and
2233 * testsuite/gas/i386/optimize-1a.d: New file.
2234 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
2236 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
2239 * config/tc-i386.c: Include <limits.h> if it exists and try
2240 including <sys/param.h> if we have it.
2241 (INT_MAX): Define if not defined.
2242 (md_parse_option): Set optimize to INT_MAX for -Os.
2243 * testsuite/gas/i386/optimize-2.s: Add a test.
2244 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
2245 * testsuite/gas/i386/optimize-2.d: Updated.
2246 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2248 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
2251 * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
2252 with 128-bit VEX encoding only when AVX is enabled and with
2253 128-bit EVEX encoding only when AVX512VL is enabled.
2254 * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
2255 * testsuite/gas/i386/optimize-6.s: New file.
2256 * testsuite/gas/i386/optimize-6a.d: Likewise.
2257 * testsuite/gas/i386/optimize-6b.d: Likewise.
2258 * testsuite/gas/i386/optimize-6c.d: Likewise.
2259 * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
2260 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
2261 * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
2262 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
2263 * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
2265 2019-03-15 Li Hao <li.hao296@zte.com.cn>
2268 * config/tc-i386.c (parse_insn): Check mnemp before using it to
2269 determine if a suffix can be trimmed.
2271 2019-03-13 Christian Eggers <ceggers@gmx.de>
2273 * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
2275 2019-03-13 Christian Eggers <ceggers@gmx.de>
2277 * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
2279 2019-03-13 Christian Eggers <ceggers@gmx.de>
2281 * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
2283 2019-03-13 Christian Eggers <ceggers@gmx.de>
2285 * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
2287 2019-03-13 Christian Eggers <ceggers@gmx.de>
2289 * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
2290 (out_debug_aranges, out_debug_info): Likewise.
2292 2019-03-13 Christian Eggers <ceggers@gmx.de>
2294 * symbols.h (symbol_temp_new_now_octets): Declare.
2295 (symbol_set_value_now_octets, symbol_octets_p): Declare.
2296 * symbols.c (struct symbol_flags): New member sy_octets.
2297 (symbol_temp_new_now_octets): New function.
2298 (resolve_symbol_value): Return octets instead of bytes if
2300 (symbol_set_value_now_octets): New function.
2301 (symbol_octets_p): New function.
2303 2019-03-13 Christian Eggers <ceggers@gmx.de>
2305 * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
2307 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com>
2309 * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
2310 * testsuite/gas/s390/zarch-arch13.d: Likewise.
2312 2019-02-27 Matthew Malcomson <matthew.malcomson@arm.com>
2314 * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
2315 * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
2316 * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
2317 * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
2319 * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
2320 * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
2322 2019-02-24 Alan Modra <amodra@gmail.com>
2324 * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
2326 2019-02-24 Alan Modra <amodra@gmail.com>
2329 * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
2330 of section to ensure file contents cover aligned section size.
2332 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2334 * config/tc-arm.c (arm_cpus): Add neoverse-n1.
2335 * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
2337 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2339 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
2340 * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
2342 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2344 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
2345 * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
2347 2019-02-19 Paul Hua <paul.hua.gm@gmail.com>
2349 * NEWS: Mention -m[no-]fix-loongson3-llsc.
2350 * configure.ac: Add --enable-mips-fix-loongson3-llsc.
2351 Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
2352 * config.in: Regenerated.
2353 * configure: Likewise.
2354 * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
2356 (options): New OPTION_FIX_LOONGSON3_LLSC,
2357 OPTION_NO_FIX_LOONGSON3_LLSC.
2358 (md_longopts): Add -m[no-]fix-loongson3-llsc.
2359 (md_begin): Initialize sync insn.
2360 (fix_loongson3_llsc): New.
2361 (append_insn): Call fix_loongson3_llsc.
2362 (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
2363 OPTION_NO_FIX_LOONGSON3_LLSC.
2364 (md_show_usage): Display -m[no-]fix-loongson3-llsc.
2365 * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
2366 --enable-mips-fix-loongson3-llsc=[yes|no].
2368 2019-02-10 H.J. Lu <hongjiu.lu@intel.com>
2371 * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
2373 * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
2375 * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
2377 * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
2378 * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
2379 * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
2380 * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
2381 * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
2382 * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
2383 * config/tc-rx.h (TC_FRAG_INIT): Likewise.
2384 * config/tc-score.h (TC_FRAG_INIT): Likewise.
2385 * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
2386 * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
2387 * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
2388 * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
2389 (alignment ? ((1 << alignment) - 1) : 1)
2390 (i386_tc_frag_data): Add max_bytes.
2391 (TC_FRAG_INIT): Add and track max_bytes.
2392 (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
2393 fragP->tc_frag_data.max_bytes.
2394 * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
2396 2019-02-08 Jim Wilson <jimw@sifive.com>
2398 * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
2399 (riscv_ip) <'C'>: Add 'z' support.
2401 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2403 * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
2405 * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
2406 * testsuite/gas/arm/hlt.d: New test.
2407 * testsuite/gas/arm/hlt.s: New test.
2409 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2411 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
2412 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
2414 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2417 * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
2418 * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
2420 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2422 * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
2423 64-bit boundaries for the GR6.
2424 * testsuite/gas/visium/allinsn_gr6.s: Tweak.
2425 * testsuite/gas/visium/allinsn_gr6.d: Likewise.
2426 * testsuite/gas/visium/bra-1.d: New test.
2427 * testsuite/gas/visium/bra-1.s: Likewise.
2428 * testsuite/gas/visium/visium.exp: Run bra-1 test.
2430 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2432 * config/tc-s12z.c (lex_imm): Add new argument exp_o.
2433 (emit_reloc): New function.
2434 (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
2435 can be either 2 bytes or 3 bytes long.
2436 * testsuite/gas/s12z/mov-imm-reloc.d: New file.
2437 * testsuite/gas/s12z/mov-imm-reloc.s: New file.
2438 * testsuite/gas/s12z/s12z.exp: Add them.
2440 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2442 * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
2443 * testsuite/gas/s12z/pc-rel-bad.d: New file.
2444 * testsuite/gas/s12z/pc-rel-bad.l: New file.
2445 * testsuite/gas/s12z/pc-rel-bad.s: New file.
2446 * testsuite/gas/s12z/pc-rel-good.d: New file.
2447 * testsuite/gas/s12z/pc-rel-good.s: New file.
2448 * testsuite/gas/s12z/s12z.exp: Add them.
2450 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2452 * config/tc-s12z.c (tfr): Emit warning if operands are the same.
2453 * testsuite/gas/s12z/exg.d: New test case.
2454 * testsuite/gas/s12z/exg.l: New file.
2456 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2458 * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
2459 immediate mode operands should be permitted.
2460 * testsuite/s12z/imm-dest.d: New file.
2461 * testsuite/s12z/imm-dest.l: New file.
2462 * testsuite/s12z/imm-dest.s: New file.
2463 * testsuite/s12z/s12z.exp: Add them.
2465 2019-01-31 Andreas Krebbel <krebbel@linux.ibm.com>
2467 * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
2468 * doc/c-s390.texi: Document arch13 march option.
2469 * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
2470 * testsuite/gas/s390/zarch-arch13.d: New test.
2471 * testsuite/gas/s390/zarch-arch13.s: New test.
2472 * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
2475 2019-01-31 Alan Modra <amodra@gmail.com>
2477 * config/tc-alpha.c (md_apply_fix): Correct range checks for
2478 BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
2479 * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
2480 * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
2482 2019-01-28 Max Filippov <jcmvbkbc@gmail.com>
2484 * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
2485 symbols as done in md_apply_fix.
2486 * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
2488 2019-01-28 Nick Clifton <nickc@redhat.com>
2490 * po/fr.po: Updated French translation.
2491 * po/ru.po: Updated Russian translation.
2493 2019-01-28 Alan Modra <amodra@gmail.com>
2495 * configure.ac (ac_checking): Set from bfd/development.sh
2496 development variable.
2497 * configure: Regenerate.
2499 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2501 * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
2502 stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
2503 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
2504 stg, stzg, st2g and stz2g.
2505 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2506 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2507 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2509 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2511 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
2512 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2513 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2514 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2516 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2517 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2519 * config/tc-aarch64.c (parse_address_main): Remove support for
2520 [base]! address expression.
2521 (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
2522 (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
2523 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
2525 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2526 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2527 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2529 2019-01-25 Wu Heng <wu.heng@zte.com.cn>
2532 * macro.c (getstring): Check array bound before accessing.
2534 2019-01-25 Alan Modra <amodra@gmail.com>
2538 * read.c (stringer): Delete assertion.
2540 2019-01-21 Nick Clifton <nickc@redhat.com>
2542 * po/uk.po: Updated Ukranian translation.
2544 2019-01-19 Nick Clifton <nickc@redhat.com>
2546 * config.in: Regenerate.
2547 * configure: Regenerate.
2548 * po/gas.pot: Regenerate.
2550 2018-06-24 Nick Clifton <nickc@redhat.com>
2552 2.32 branch created.
2554 2019-01-17 Tamar Christina <tamar.christina@arm.com>
2556 * testsuite/gas/arm/archv6t2-1-pe.d: New test.
2557 * testsuite/gas/arm/archv6t2-1.d: Skip pe.
2558 * testsuite/gas/arm/csdb.d: Skip pe.
2559 * testsuite/gas/arm/sb-thumb1-pe.d: New test.
2560 * testsuite/gas/arm/sb-thumb1.d: Skip pe.
2561 * testsuite/gas/arm/sb-thumb2-pe.d: New test.
2562 * testsuite/gas/arm/sb-thumb2.d: Skip pe.
2563 * testsuite/gas/arm/udf.d: Skip pe.
2565 2019-01-16 Kito Cheng <kito@andestech.com>
2567 * testsuite/gas/riscv/attribute-empty.d: New.
2569 2019-01-16 Kito Cheng <kito@andestech.com>
2570 Nelson Chu <nelson@andestech.com>
2572 * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
2573 (riscv_set_options): Add `arch_attr` field.
2574 (riscv_opts): Set default value for arch_attr.
2575 (riscv_write_out_arch_attr): New.
2576 (riscv_set_public_attributes): Likewise.
2577 (riscv_md_end): Likewise.
2578 (riscv_convert_symbolic_attribute): Likewise.
2579 (s_riscv_attribute): Likewise.
2580 (explicit_arch_attr): Likewise.
2581 (riscv_pseudo_table): Add .attribute to the table.
2582 (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
2583 enumeration constants.
2584 (md_longopts): Add `march-attr' and `mno-arch-attr' options.
2585 (md_parse_option): Handle the new options.
2586 (md_show_usage): Document the `march-attr' option.
2587 * config/tc-riscv.h (md_end): Define as riscv_md_end
2588 (riscv_md_end): Declare.
2589 (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
2590 riscv_convert_symbolic_attribute.
2591 (riscv_convert_symbolic_attribute): Declare.
2592 (start_assemble): Declare.
2593 * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
2594 * testsuite/gas/elf/section2.e-riscv: New.
2595 * testsuite/gas/riscv/attribute-01.d: New test
2596 * testsuite/gas/riscv/attribute-02.d: Likewise.
2597 * testsuite/gas/riscv/attribute-03.d: Likewise.
2598 * testsuite/gas/riscv/attribute-04.d: Likewise.
2599 * testsuite/gas/riscv/attribute-04.s: Likewise.
2600 * testsuite/gas/riscv/attribute-05.d: Likewise.
2601 * testsuite/gas/riscv/attribute-05.s: Likewise.
2602 * testsuite/gas/riscv/attribute-06.d: Likewise.
2603 * testsuite/gas/riscv/attribute-06.s: Likewise.
2604 * testsuite/gas/riscv/attribute-07.d: Likewise.
2605 * testsuite/gas/riscv/attribute-07.s: Likewise.
2606 * testsuite/gas/riscv/attribute-08.d: Likewise.
2607 * testsuite/gas/riscv/attribute-08.s: Likewise.
2608 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2609 * testsuite/gas/riscv/attribute-unknown.s: Likewise.
2610 * testsuite/gas/riscv/empty.l: Likewise.
2611 * doc/c-riscv.texi (.attribute): Add documentation.
2612 * configure.ac (--enable-default-riscv-attribute): New options.
2613 * configure: Re-generate.
2614 * config.in: Re-generate.
2616 2019-01-16 John Darrington <john@darrington.wattle.id.au>
2618 * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
2619 before the contents.
2620 * testsuite/gas/s12z/labels.d: New file.
2621 * testsuite/gas/s12z/labels.s: New file.
2622 * testsuite/gas/s12z/s12z.exp: Add them.
2623 * config/tc-s12z.c (tfr): Change as_bad to as_warn.
2624 Also fix message typo and semantics.
2625 * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
2627 * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
2630 2019-01-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2632 * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
2633 (insns) [ARM_VARIANT]: Modified.
2634 (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
2636 * testsuite/gas/arm/archv6t2-1.d: New test.
2637 * testsuite/gas/arm/archv6t2-1.s: Likewise.
2638 * testsuite/gas/arm/archv6t2-2.d: Likewise.
2640 2019-01-11 Alan Modra <amodra@gmail.com>
2643 * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
2644 * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
2646 2019-01-10 Nick Clifton <nickc@redhat.com>
2649 * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
2650 fact that control characters are now displayed as escape
2652 * testsuite/gas/mips/mips16-e.d: Likewise.
2653 * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
2654 * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
2655 * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
2656 * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
2657 * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
2658 * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
2659 * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
2660 * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
2661 * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
2662 * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
2663 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
2664 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
2665 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
2666 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
2667 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
2669 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
2671 * testsuite/gas/mips/mipsel16-e.d: Likewise.
2672 * testsuite/gas/mips/mipsr6@msa.d: Likewise.
2673 * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
2674 * testsuite/gas/mips/r6-64-n32.d: Likewise.
2675 * testsuite/gas/mips/r6-64-n64.d: Likewise.
2676 * testsuite/gas/mips/r6-n32.d: Likewise.
2677 * testsuite/gas/mips/r6-n64.d: Likewise.
2678 * testsuite/gas/mips/r6.d: Likewise.
2679 * testsuite/gas/mips/tmips16-e.d: Likewise.
2680 * testsuite/gas/mips/tmipsel16-e.d: Likewise.
2681 * testsuite/gas/mn10300/relax.d: Likewise.
2683 2019-01-09 John Darrington <john@darrington.wattle.id.au>
2685 * testsuite/gas/s12z/jsr.s: New case.
2686 * testsuite/gas/s12z/jsr.d: New case.
2688 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
2690 * configure: Regenerate.
2692 2019-01-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2694 * config/tc-aarch64.c (aarch64_cpus): Add ares.
2695 * doc/c-aarch64.texi (-mcpu): Document ares value.
2697 2019-01-08 Alan Modra <amodra@gmail.com>
2699 * testsuite/gas/rx/rx.exp: Create generated test source in
2701 * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
2702 * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
2703 * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
2704 * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
2705 * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
2706 * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
2707 * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
2708 * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
2709 * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
2710 * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
2711 * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
2712 * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
2713 * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
2714 * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
2715 * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
2716 * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
2717 * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
2718 * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
2719 * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
2720 * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
2721 * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
2722 * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
2723 * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
2724 * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
2725 * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
2726 * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
2727 * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
2728 * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
2729 * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
2730 * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
2731 * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
2732 * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
2733 * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
2734 * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
2735 * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
2736 * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
2737 * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
2738 * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
2739 * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
2740 * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
2741 * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
2742 * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
2743 * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
2744 * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
2745 * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
2746 * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
2747 * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
2748 * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
2749 * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
2750 * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
2751 * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
2752 * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
2753 * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
2754 * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
2755 * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
2756 * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
2757 * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
2758 * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
2759 * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
2760 * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
2761 * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
2762 * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
2763 * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
2764 * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
2765 * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
2766 * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
2767 * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
2768 * testsuite/gas/rx/xor.d: Add #source line.
2770 2019-01-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2772 * config/tc-arm.c (arm_cpus): Add ares.
2773 * doc/c-arm.texi (-mcpu): Document ares value.
2775 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
2777 * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
2778 (rx_bfield): Add prototype.
2779 (rx_post): Likewise.
2780 * config/rx-parse.y: Add v3 instructions and Double FPU registers.
2783 (rx_check_v3): New. check v3 type.
2784 (rx_check_dfpu): New. check have double support.
2785 (double_condition_table): New. dcmp<cond> contiditon.
2786 (check_condition): Multiple condition support.
2787 (rx_lex): RXv3 instructions support.
2788 Add parse dcmp<cond> instruction and Double FPU registers.
2789 (immediate): Disable optimize in dmov #imm case.
2790 (displacement): Add double displacement in dmov instraction.
2791 * config/tc-rx.c (rx_use_conventional_section_names):
2792 Invert default value in rx-*-linux target.
2793 (cpu_type): Add additional ELF flags.
2794 (cpu_type_list): Add RXv3.
2795 (md_parse_option): Refer elf_flags from cpu_type_list.
2796 (md_show_usage): Add rxv3 and rxv3-dfpu.
2797 (rx_bytesT): Add post byte.
2798 (rx_bfield): New. generate bfmov / bfmovz "imm" field.
2799 (rx_post): New. Set instruction post byte.
2800 (md_assemble): Add post byte.
2801 doc/c-rx.texi: Add cpu types.
2802 * testsuite/gas/rx/Xtod.d: New.
2803 * testsuite/gas/rx/Xtod.sm: New.
2804 * testsuite/gas/rx/bfmov.d: New.
2805 * testsuite/gas/rx/bfmov.sm: New.
2806 * testsuite/gas/rx/dabs.d: New.
2807 * testsuite/gas/rx/dabs.sm: New.
2808 * testsuite/gas/rx/dadd.d: New.
2809 * testsuite/gas/rx/dadd.sm: New.
2810 * testsuite/gas/rx/dcmp.d: New.
2811 * testsuite/gas/rx/dcmp.sm: New.
2812 * testsuite/gas/rx/ddiv.d: New.
2813 * testsuite/gas/rx/ddiv.sm: New.
2814 * testsuite/gas/rx/dmov.d: New.
2815 * testsuite/gas/rx/dmov.sm: New.
2816 * testsuite/gas/rx/dmul.d: New.
2817 * testsuite/gas/rx/dmul.sm: New.
2818 * testsuite/gas/rx/dneg.d: New.
2819 * testsuite/gas/rx/dneg.sm: New.
2820 * testsuite/gas/rx/dpopm.d: New.
2821 * testsuite/gas/rx/dpopm.sm: New.
2822 * testsuite/gas/rx/dpushm.d: New.
2823 * testsuite/gas/rx/dpushm.sm: New.
2824 * testsuite/gas/rx/dround.d: New.
2825 * testsuite/gas/rx/dround.sm: New.
2826 * testsuite/gas/rx/dsqrt.d: New.
2827 * testsuite/gas/rx/dsqrt.sm: New.
2828 * testsuite/gas/rx/dsub.d: New.
2829 * testsuite/gas/rx/dsub.sm: New.
2830 * testsuite/gas/rx/dtoX.d: New.
2831 * testsuite/gas/rx/dtoX.sm: New.
2832 * testsuite/gas/rx/macros.inc: Add double FPU registers.
2833 * testsuite/gas/rx/mvfdc.d: New.
2834 * testsuite/gas/rx/mvfdc.sm: New.
2835 * testsuite/gas/rx/mvfdr.d: New.
2836 * testsuite/gas/rx/mvfdr.sm: New.
2837 * testsuite/gas/rx/mvtdc.d: New.
2838 * testsuite/gas/rx/mvtdc.sm: New.
2839 * testsuite/gas/rx/rstr.d: New.
2840 * testsuite/gas/rx/rstr.sm: New.
2841 * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
2842 * testsuite/gas/rx/save.d: New.
2843 * testsuite/gas/rx/save.sm: New.
2844 * testsuite/gas/rx/xor.d: New.
2845 * testsuite/gas/rx/xor.sm: Add pattern.
2847 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
2850 * macro.c (get_any_string): Check for end of input whilst scanning
2853 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
2856 * read.c (stringer): Fix handling of missing '>' character at end
2859 2019-01-01 Alan Modra <amodra@gmail.com>
2861 Update year range in copyright notice of all files.
2863 For older changes see ChangeLog-2018
2865 Copyright (C) 2019 Free Software Foundation, Inc.
2867 Copying and distribution of this file, with or without modification,
2868 are permitted in any medium without royalty provided the copyright
2869 notice and this notice are preserved.
2875 version-control: never