1 2019-11-12 Jan Beulich <jbeulich@suse.com>
3 * config/tc-i386.c (operand_type_set, operand_type_and,
4 operand_type_and_not, operand_type_or, operand_type_xor): Handle
5 "instance" field specially.
6 (operand_size_match, md_assemble, match_template, process_suffix,
7 check_byte_reg, check_long_reg, check_qword_reg, check_word_reg,
8 process_operands, build_modrm_byte): Use "instance" instead of
9 "acc" / "inoutportreg" / "shiftcount" fields.
10 (optimize_imm): Adjust comment.
12 2019-11-11 Jan Beulich <jbeulich@suse.com>
14 * testsuite/gas/aarch64/illegal-sve2.s: Add smaxp/sminp cases
15 with mismatched 1st and 3rd operands.
16 * testsuite/gas/aarch64/illegal-sve2.l: Adjust expectations.
18 2019-11-08 H.J. Lu <hongjiu.lu@intel.com>
21 * config/tc-i386.c (match_template): Don't check instruction
22 suffix set from operand.
23 * testsuite/gas/i386/code16.d: New file.
24 * testsuite/gas/i386/code16.s: Likewise.
25 * testsuite/gas/i386/i386.exp: Run code16.
27 2019-11-08 Jan Beulich <jbeulich@suse.com>
29 * config/tc-i386.c (optimize_encoding, build_modrm_byte,
30 check_VecOperations, parse_real_register): Use "class" instead
31 of "regmask" and "regbnd" fields.
33 2019-11-08 Jan Beulich <jbeulich@suse.com>
35 * config/tc-i386.c (match_mem_size, operand_size_match,
36 operand_type_register_match, pi, check_VecOperands, match_template,
37 check_byte_reg, check_long_reg, check_qword_reg, process_operands,
38 build_modrm_byte, parse_real_register): Use "class" instead of
39 "regsimd" / "regmmx" fields.
41 2019-11-08 Jan Beulich <jbeulich@suse.com>
43 * config/tc-i386.c (pi, check_byte_reg, build_modrm_byte,
44 parse_real_register): Use "class" instead of "control"/"debug"/
47 2019-11-08 Jan Beulich <jbeulich@suse.com>
49 * config/tc-i386.c (pi, check_byte_reg, process_operands,
50 build_modrm_byte, i386_att_operand, parse_real_register): Use
51 "class" instead of "sreg" field.
52 * config/tc-i386-intel.c (i386_intel_simplify_register,
53 i386_intel_operand): Likewise.
55 2019-11-08 Jan Beulich <jbeulich@suse.com>
57 * config/tc-i386.c (operand_type_set, operand_type_and,
58 operand_type_and_not, operand_type_or, operand_type_xor): Handle
59 "class" field specially.
61 (operand_type_check, operand_size_match,
62 operand_type_register_match, pi, md_assemble, is_short_form,
63 process_suffix, check_byte_reg, check_long_reg, check_qword_reg,
64 check_word_reg, process_operands, build_modrm_byte): Use "class"
65 instead of "reg" field.
66 (optimize_imm): Likewise. Reduce redundancy. Adjust calculation
69 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
71 * testsuite/gas/aarch64/dgh.s: New test.
72 * testsuite/gas/aarch64/dgh.d: New test.
74 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
76 * config/tc-arm.c (arm_ext_i8mm): New feature set.
81 (insns): Add vsmmla, vummla, vusmmla, vusdot, vsudot mnemonics.
82 (armv86a_ext_table): Add i8mm extension.
83 (arm_extensions): Move bf16 extension to context sensitive table.
84 (armv82a_ext_table, armv84a_ext_table, armv85a_ext_table):
85 Move bf16 extension to context sensitive table.
86 (armv86a_ext_table): Add i8mm extension.
87 * doc/c-arm.texi: Document i8mm extension.
88 * testsuite/gas/arm/i8mm.s: New test.
89 * testsuite/gas/arm/i8mm.d: New test.
90 * testsuite/gas/arm/bfloat17-cmdline-bad-3.d: Update test.
92 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
94 * config/tc-aarch64.c: Add new arch fetures to suppport the mm extension.
95 (parse_operands): Add new operand.
96 * testsuite/gas/aarch64/i8mm.s: New test.
97 * testsuite/gas/aarch64/i8mm.d: New test.
98 * testsuite/gas/aarch64/f32mm.s: New test.
99 * testsuite/gas/aarch64/f32mm.d: New test.
100 * testsuite/gas/aarch64/f64mm.s: New test.
101 * testsuite/gas/aarch64/f64mm.d: New test.
102 * testsuite/gas/aarch64/sve-movprfx-mm.s: New test.
103 * testsuite/gas/aarch64/sve-movprfx-mm.d: New test.
105 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
106 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
108 * config/tc-aarch64.c (md_atof): Add encoding for the bfloat16 format.
109 * testsuite/gas/aarch64/bfloat16-directive-le.d: New test.
110 * testsuite/gas/aarch64/bfloat16-directive-be.d: New test.
111 * testsuite/gas/aarch64/bfloat16-directive.s: New test.
113 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
114 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
116 * config/tc-arm.c (md_atof): Add encoding for bfloat16
117 * testsuite/gas/arm/bfloat16-directive-le.d: New test.
118 * testsuite/gas/arm/bfloat16-directive-be.d: New test.
119 * testsuite/gas/arm/bfloat16-directive.s: New test.
121 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
122 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
124 * as.h (atof_ieee_detail): Add prototype for atof_ieee_detail function.
125 (atof_ieee): Move some code into the atof_ieee_detail function.
126 (atof_ieee_detail): Add function that provides a higher level of
127 control over generating IEEE-like numbers.
129 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
130 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
132 * config/tc-arm.c (arm_archs): Add armv8.6-a option.
133 (cpu_arch_ver): Add TAG_CPU_ARCH_V8 tag for Armv8.6-a.
134 * doc/c-arm.texi (-march): New armv8.6-a arch.
135 * config/tc-arm.c (arm_ext_bf16): New feature set.
136 (enum neon_el_type): Add NT_bfloat value.
137 (B_MNEM_vfmat, B_MNEM_vfmab): New bfloat16 encoder
139 (BAD_BF16): New message.
140 (parse_neon_type): Add bf16 type specifier.
141 (enum neon_type_mask): Add N_BF16 type.
142 (type_chk_of_el_type): Account for NT_bfloat.
143 (el_type_of_type_chk): Account for N_BF16.
144 (neon_three_args): Split out from neon_three_same.
145 (neon_three_same): Part split out into neon_three_args.
146 (CVT_FLAVOUR_VAR): Add bf16_f32 cvt flavour.
147 (do_neon_cvt_1): Account for vcvt.bf16.f32.
148 (do_bfloat_vmla): New.
149 (do_mve_vfma): New function to deal with the mnemonic clash between the BF16
150 vfmat and the MVE vfma in a VPT block with a 't'rue condition.
151 (do_neon_cvttb_1): Account for vcvt{t,b}.bf16.f32.
154 (insns): Add vdot and vmmla mnemonics.
155 (arm_extensions): Add "bf16" extension.
156 * doc/c-arm.texi: Document "bf16" extension.
157 * testsuite/gas/arm/attr-march-armv8_6-a.d: New test.
158 * testsuite/gas/arm/bfloat16-bad.d: New test.
159 * testsuite/gas/arm/bfloat16-bad.l: New test.
160 * testsuite/gas/arm/bfloat16-bad.s: New test.
161 * testsuite/gas/arm/bfloat16-cmdline-bad-2.d: New test.
162 * testsuite/gas/arm/bfloat16-cmdline-bad-3.d: New test.
163 * testsuite/gas/arm/bfloat16-cmdline-bad.d: New test.
164 * testsuite/gas/arm/bfloat16-neon.s: New test.
165 * testsuite/gas/arm/bfloat16-non-neon.s: New test.
166 * testsuite/gas/arm/bfloat16-thumb-bad.d: New test.
167 * testsuite/gas/arm/bfloat16-thumb-bad.l: New test.
168 * testsuite/gas/arm/bfloat16-thumb.d: New test.
169 * testsuite/gas/arm/bfloat16-vfp.d: New test.
170 * testsuite/gas/arm/bfloat16.d: New test.
171 * testsuite/gas/arm/bfloat16.s: New test.
173 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
174 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
176 * config/tc-aarch64.c (vectype_to_qualifier): Special case the
177 S_2H operand qualifier.
178 * doc/c-aarch64.texi: Document bf16 extension.
179 * testsuite/gas/aarch64/bfloat16.d: New test.
180 * testsuite/gas/aarch64/bfloat16.s: New test.
181 * testsuite/gas/aarch64/illegal-bfloat16.d: New test.
182 * testsuite/gas/aarch64/illegal-bfloat16.l: New test.
183 * testsuite/gas/aarch64/illegal-bfloat16.s: New test.
184 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: New test.
185 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: New test.
187 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
188 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
190 * config/tc-aarch64.c (armv8.6-a): New arch.
191 * doc/c-aarch64.texi (armv8.6-a): Document new arch.
193 2019-11-07 Jan Beulich <jbeulich@suse.com>
195 * config/tc-i386.c (cpu_arch): Add .rdpru and .mcommit entries.
196 * doc/c-i386.texi: Mention rdpru and mcommit.
197 * testsuite/gas/i386/arch-13.s,
198 testsuite/gas/i386/x86-64-arch-3.s: Add mcommit and rdpru cases.
199 * testsuite/gas/i386/arch-13.d,
200 testsuite/gas/i386/x86-64-arch-3.d: Extend -march=. Adjust
202 * testsuite/gas/i386/arch-13-znver1.d: Extend -march=. Redirect
203 expectations to arch-13.d.
204 * testsuite/gas/i386/arch-13-znver2.d: Redirect expectations to
206 testsuite/gas/i386/x86-64-arch-3-znver1.d: Extend -march=.
208 2019-11-07 Jan Beulich <jbeulich@suse.com>
210 * testsuite/gas/i386/x86-64-arch-3.s: Add monitorx/mwaitx cases
211 with canonical operand sizes.
212 * testsuite/gas/i386/x86-64-sse3.s: Add monitor/mwait cases with
213 canonical operand sizes.
214 * testsuite/gas/i386/x86-64-arch-3-znver1.d,
215 testsuite/gas/i386/x86-64-arch-3-znver2.d: Redirect expectations
217 * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Redirect
218 expectations to parent dir's x86-64-sse-noavx.d.
219 * testsuite/gas/i386/ilp32/x86-64-sse3.d: Redirect expectations
220 to to parent dir's x86-64-sse3.d.
221 * testsuite/gas/i386/x86-64-arch-3.d,
222 testsuite/gas/i386/x86-64-mwaitx-bdver4.d,
223 testsuite/gas/i386/x86-64-sse-noavx.d,
224 testsuite/gas/i386/x86-64-sse3.d,
225 testsuite/gas/i386/x86-64-suffix.d: Adjust expectations.
227 2019-11-04 Jan Beulich <jbeulich@suse.com>
229 * config/tc-i386.c (process_operands): Handle ShortForm insns
230 later, splitting out their segment register sub-form.
232 2019-10-31 H.J. Lu <hongjiu.lu@intel.com>
234 * testsuite/gas/i386/general.s: Add .code16gcc fldenv tests.
235 * testsuite/gas/i386/general.l: Updated.
237 2019-10-31 Mihail Ionescu <mihail.ionescu@arm.com>
239 * config/tc-arm.c (selected_ctx_ext_table) New static variable.
240 (arm_parse_arch): Set context sensitive extension table based on the
241 chosen base architecture.
242 (s_arm_arch_extension): Change to lookup extensions in the new context
244 * gas/testsuite/gas/arm/mve-ext.s: New.
245 * gas/testsuite/gas/arm/mve-ext.d: New.
246 * gas/testsuite/gas/arm/mvefp-ext.s: New.
247 * gas/testsuite/gas/arm/mvefp-ext.d: New.
249 2019-10-30 Delia Burduv <Delia.Burduv@arm.com>
251 * config/tc-aarch64.c (parse_address_main): Accept the omission of
252 the immediate argument for ldraa and ldrab as a shorthand for the
254 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.d: New test.
255 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.s: New test.
256 * testsuite/gas/aarch64/illegal-ldraa.s: Modified to accept the
257 writeback form with no offset.
258 * testsuite/gas/aarch64/illegal-ldraa.s: Removed missing offset
261 2019-10-30 Jan Beulich <jbeulich@suse.com>
263 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.s,
264 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.s,
265 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.s: New.
266 * testsuite/gas/i386/i386.exp: Run new tests.
268 2019-10-30 Jan Beulich <jbeulich@suse.com>
270 * config/tc-i386.c (optimize_encoding): Adjust opcodes compared
271 against. Adjust replacement opcode and clear .w.
273 2019-10-29 Alan Modra <amodra@gmail.com>
276 * dw2gencfi.c (output_cfi_insn): Don't allow DW_CFA_advance_loc4
277 to be placed in a different frag to the rs_cfa.
279 2019-10-26 John David Anglin <danglin@gcc.gnu.org>
282 * config/tc-hppa.c (tc_gen_reloc): Cast some enums to int.
283 (md_assemble): Likewise.
285 2019-10-26 Alan Modra <amodra@gmail.com>
288 * dw2gencfi.c (output_cfi_insn): Don't output DW_CFA_advance_loc+0.
289 * ehopt.c (eh_frame_estimate_size_before_relax): Return -1 for
290 an advance_loc of zero.
291 (eh_frame_relax_frag): Translate fr_subtype of 7 to size -1.
292 (eh_frame_convert_frag): Handle fr_subtype of 7. Abort on
293 unexpected fr_subtype.
295 2019-10-25 Alan Modra <amodra@gmail.com>
299 * write.c (relax_frag): Correct calculation of delta for
300 positive branches where "stretch" would make the branch
301 negative. Return zero immediately in that case. Correct
302 TC_PCREL_ADJUST comment.
304 2019-10-16 Alan Modra <amodra@gmail.com>
306 * config/tc-xtensa.c (xg_order_trampoline_chain_entry): Don't
307 call S_GET_VALUE multiple times for a symbol. Rearrange code
308 so it is obvious what is the primary sort key.
309 (xg_order_trampoline_chain): Similarly.
311 2019-10-15 Alan Modra <amodra@gmail.com>
313 * config/tc-nds32.c (nds32_set_section_relocs): Use relocs and n
314 parameters rather than equivalent sec->orelocation and
315 sec->reloc_count. Don't sort for n <= 1. Tidy.
317 2019-10-09 Nick Clifton <nickc@redhat.com>
320 * testsuite/gas/avr/pr25041.s: New test.
321 * testsuite/gas/avr/pr25041.d: New test driver.
323 2019-10-07 Jozef Lawrynowicz <jozef.l@mittosystems.com>
325 * config/tc-msp430.c (md_parse_option): Set lower_data_region_only
326 to FALSE if the data region is set to "upper", "either" or "none".
327 (msp430_object_attribute): New.
328 (md_pseudo_table): Handle .mspabi_attribute and .gnu_attribute.
329 (msp430_md_end): Replace hard-coded attribute values with enums.
330 Handle data region object attribute.
331 * doc/as.texi: Document MSP430 Data Region object attribute.
332 * doc/c-msp430.texi: Document the .mspabi_attribute directive.
333 * testsuite/gas/msp430/attr-430-small-bad.d: New test.
334 * testsuite/gas/msp430/attr-430-small-bad.l: New test.
335 * testsuite/gas/msp430/attr-430-small-good.d: New test.
336 * testsuite/gas/msp430/attr-430-small.s: New test.
337 * testsuite/gas/msp430/attr-430x-large-any-bad.d: New test.
338 * testsuite/gas/msp430/attr-430x-large-any-bad.l: New test.
339 * testsuite/gas/msp430/attr-430x-large-any-good.d: New test.
340 * testsuite/gas/msp430/attr-430x-large-any.s: New test.
341 * testsuite/gas/msp430/attr-430x-large-lower-bad.d: New test.
342 * testsuite/gas/msp430/attr-430x-large-lower-bad.l: New test.
343 * testsuite/gas/msp430/attr-430x-large-lower-good.d: New test.
344 * testsuite/gas/msp430/attr-430x-large-lower.s: New test.
345 * testsuite/gas/msp430/msp430.exp: Run new tests.
347 2019-10-07 Jan Beulich <jbeulich@suse.com>
349 * config/tc-i386.c (check_string): Make reported operand number
350 depend on Intel syntax.
351 * testsuite/gas/i386/intel-cmps.s,
352 testsuite/gas/i386/intel-cmps32.d,
353 testsuite/gas/i386/intel-cmps64.d: New.
354 * testsuite/gas/i386/i386.exp: Run new tests.
355 * testsuite/gas/i386/intel-movs.s: Extend.
356 * testsuite/gas/i386/intel-movs32.d,
357 testsuite/gas/i386/intel-movs64.d: Adjust expectations.
358 * testsuite/gas/i386/string-bad.l: Tighten expectations.
360 2019-09-24 Tamar Christina <tamar.christina@arm.com>
363 * config/tc-arm.c (out_of_range_p): New.
364 (md_apply_fix): Use it in BFD_RELOC_THUMB_PCREL_BRANCH9,
365 BFD_RELOC_THUMB_PCREL_BRANCH12, BFD_RELOC_THUMB_PCREL_BRANCH20,
366 BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_THUMB_PCREL_BRANCH25
367 * testsuite/gas/arm/pr24991.d: New test.
368 * testsuite/gas/arm/pr24991.l: New test.
369 * testsuite/gas/arm/pr24991.s: New test.
371 2019-09-23 Alan Modra <amodra@gmail.com>
373 * config/obj-ecoff.c: Include ecoff-bfd.h.
374 * config/obj-elf.c: Likewise.
376 2019-09-23 Alan Modra <amodra@gmail.com>
378 * config/tc-arm.c: Include cpu-arm.h.
380 2019-09-21 Alan Modra <amodra@gmail.com>
382 * config/tc-i386.c (md_parse_option): Fix warning on vexwig assignment.
384 2019-09-20 Alan Modra <amodra@gmail.com>
386 * config/tc-tic6x.c (tc_gen_reloc): Correct common symbol check.
388 2018-09-20 Jan Beulich <jbeulich@suse.com>
391 * config/tc-i386.c (process_operands): Adjust handling of
392 PUSH/POP of segment registers.
393 * testsuite/gas/i386/x86-64-opcode.s: Add PUSHq/POPq case with
394 %fs/%gs operands. Add PUSHF/POPF case without suffix.
395 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
397 2019-09-19 Matthew Malcomson <matthew.malcomson@arm.com>
399 * NEWS: Add SVE2 and TME entries.
401 2019-09-18 Alan Modra <amodra@gmail.com>
403 * as.c, * as.h, * dw2gencfi.c, * dwarf2dbg.c, * ecoff.c,
404 * read.c, * stabs.c, * subsegs.c, * subsegs.h, * write.c,
405 * config/obj-coff-seh.c, * config/obj-coff.c, * config/obj-ecoff.c,
406 * config/obj-elf.c, * config/obj-macho.c, * config/obj-som.c,
407 * config/tc-aarch64.c, * config/tc-alpha.c, * config/tc-arc.c,
408 * config/tc-arm.c, * config/tc-avr.c, * config/tc-bfin.c,
409 * config/tc-bpf.c, * config/tc-d10v.c, * config/tc-d30v.c,
410 * config/tc-epiphany.c, * config/tc-fr30.c, * config/tc-frv.c,
411 * config/tc-h8300.c, * config/tc-hppa.c, * config/tc-i386.c,
412 * config/tc-ia64.c, * config/tc-ip2k.c, * config/tc-iq2000.c,
413 * config/tc-lm32.c, * config/tc-m32c.c, * config/tc-m32r.c,
414 * config/tc-m68hc11.c, * config/tc-mep.c, * config/tc-microblaze.c,
415 * config/tc-mips.c, * config/tc-mmix.c, * config/tc-mn10200.c,
416 * config/tc-mn10300.c, * config/tc-msp430.c, * config/tc-mt.c,
417 * config/tc-nds32.c, * config/tc-or1k.c, * config/tc-ppc.c,
418 * config/tc-pru.c, * config/tc-rl78.c, * config/tc-rx.c,
419 * config/tc-s12z.c, * config/tc-s390.c, * config/tc-score.c,
420 * config/tc-score7.c, * config/tc-sh.c, * config/tc-sparc.c,
421 * config/tc-spu.c, * config/tc-tic4x.c, * config/tc-tic54x.c,
422 * config/tc-tic6x.c, * config/tc-tilegx.c, * config/tc-tilepro.c,
423 * config/tc-v850.c, * config/tc-visium.c, * config/tc-wasm32.c,
424 * config/tc-xc16x.c, * config/tc-xgate.c, * config/tc-xstormy16.c,
425 * config/tc-xtensa.c, * config/tc-z8k.c: Update throughout for
426 bfd section macro and function changes.
427 * write.c (compress_debug): Use bfd_rename_section.
429 2019-09-18 Alan Modra <amodra@gmail.com>
431 * symbols.c (S_IS_LOCAL): Update bfd_get_section to
434 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
436 * Makefile.in: Re-generate.
437 * configure: Re-generate.
438 * doc/Makefile.in: Re-generate.
440 2019-09-17 Maxim Blinov <maxim.blinov@embecosm.com>
442 * config/tc-riscv.c (riscv_multi_subset_supports): Handle
443 insn_class enum rather than subset char string.
444 (riscv_ip): Update call to riscv_multi_subset_supports.
446 2019-09-16 Phil Blundell <pb@pbcl.net>
448 * Makefile.in, configure, doc/Makefile.in: Regenerated.
450 2019-09-10 Nick Clifton <nickc@redhat.com>
453 * testsuite/gas/arm/pr24907.s: New test.
454 * testsuite/gas/arm/pr24907.d: Expected disassembly.
456 2019-09-09 Phil Blundell <pb@pbcl.net>
458 binutils 2.33 branch created.
460 2019-09-05 Alan Modra <amodra@gmail.com>
462 * config/tc-ppc.c (ppc_elf_suffix): Display the relocation
463 operator on GOT reloc warnings/errors.
465 2019-08-27 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
467 * config/tc-arm.c (parse_neon_mov): Add check to accept vector
468 register to both the arguments in VMOV instruction.
469 * testsuite/gas/arm/mve-vmov-1.d: Modify.
470 * testsuite/gas/arm/mve-vmov-1.s: Likewise.
471 * testsuite/gas/arm/mve-vorr.d: Likewise.
473 2019-08-23 Nick Clifton <nickc@redhat.com>
475 * po/sv.po: Updated Swedish translation.
477 2019-08-22 Dennis Zhang <dennis.zhang@arm.com>
479 * config/tc-arm.c: New entries for Cortex-M35P, Cortex-A77,
481 * doc/c-arm.texi: Document new processors.
482 * testsuite/gas/arm/cpu-cortex-a76ae.d: New test.
483 * testsuite/gas/arm/cpu-cortex-a77.d: New test.
484 * testsuite/gas/arm/cpu-cortex-m35p.d: New test.
486 2019-08-22 Bosco GarcÃa <jbgg.gnu@gmail.com>
487 Nick Clifton <nickc@redhat.com>
489 * atof-generic.c (atof_generic): Do not ignore leading zeros if
490 they appear after a decimal point.
491 * testsuite/gas/all/float.s: Extend test to include a number with
492 a leading decimal point followed by several zeroes.
493 * testsuite/gas/i386/fp.s: Likewise.
494 * testsuite/gas/i386/fp.d: Update expected output.
496 2019-08-22 Barnaby Wilks <barnaby.wilks@arm.com>
498 * config/tc-aarch64.c: Add float16 directive and add "Hh" to
499 acceptable float characters.
500 * doc/c-aarch64.texi: Documentation for float16 directive.
501 * testsuite/gas/aarch64/float16-be.d: New test.
502 * testsuite/gas/aarch64/float16-le.d: New test.
503 * testsuite/gas/aarch64/float16.s: New test.
504 * NEWS: Add NEWS entry.
506 2019-08-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
508 * testsuite/gas/aarch64/sysreg-4.d: Update expected disassembly for
509 tfsre0_el1, tfsr_el1, tfsr_el2, tfsr_el3, tfsr_el12 system registers.
511 2019-08-20 Dennis Zhang <dennis.zhang@arm.com>
513 * NEWS: Mention the Arm and AArch64 new processors.
514 * config/tc-aarch64.c: New entries for Cortex-A34, Cortex-A65,
515 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
516 * doc/c-aarch64.texi: Document new CPUs.
517 * testsuite/gas/aarch64/cpu-cortex-a34.d: New test.
518 * testsuite/gas/aarch64/cpu-cortex-a65.d: New test.
519 * testsuite/gas/aarch64/cpu-cortex-a65ae.d: New test.
520 * testsuite/gas/aarch64/cpu-cortex-a76ae.d: New test.
521 * testsuite/gas/aarch64/cpu-cortex-a77.d: New test.
522 * testsuite/gas/aarch64/nop-asm.s: New test.
524 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
526 * config/tc-mips.c (fix_bad_misaligned_address): New function.
527 (fix_validate_branch): Call fix_bad_misaligned address_to
528 calculate the target address.
529 (md_apply_fix): Likewise.
530 (md_convert_frag): Update misaligned address calculation to
531 disregard ISA mode bit.
533 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
535 * config/tc-mips.c (mips_move_labels): Retain ISA mode bit
536 when moving labels in text segments.
537 (mips_align): Indicate text mode when aligning labels in
539 * gas/testsuite/gas/mips/insn-isa-mode.d: New test.
540 * gas/testsuite/gas/mips/insn-isa-mode.s: New test source.
541 * gas/testsuite/gas/mips/mips.exp: Run the new test.
543 2019-08-19 Barnaby Wilks <Barnaby.Wilks@arm.com>
545 * config/tc-arm.c (md_atof): Add precision check. Formatting.
547 2019-08-15 Nick Clifton <nickc@redhat.com>
549 * po/sv.po: Updated Swedish translation.
551 2019-08-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
553 * config/tc-arm.c (enum operand_parse_code): Add the entry OP_I48_I64.
554 (po_imm1_or_imm2_or_fail): Marco to check the immediate is either of
556 (parse_operands): Add case OP_I48_I64.
557 (do_mve_scalar_shift1): Add function to encode the MVE shift
558 instructions with 4 arguments.
559 * testsuite/gas/arm/mve-shift-bad.l: Modify.
560 * testsuite/gas/arm/mve-shift-bad.s: Likewise.
561 * testsuite/gas/arm/mve-shift.d: Likewise.
562 * testsuite/gas/arm/mve-shift.s: Likewise.
564 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
566 * config/tc-arm.c (enum fp_16bit_format): Add enum to represent the 2 float16 encodings.
567 (md_atof): Set precision for float16 type.
568 (arm_is_largest_exponent_ok): Check for whether to encode with the IEEE or alternative
570 (set_fp16_format): Parse a float16_format directive.
571 (arm_parse_fp16_opt): Parse the fp16-format command line option.
572 (aeabi_set_public_attributes): For ELF encode the FP16 format EABI attribute.
573 * config/tc-arm.h (TC_LARGEST_EXPONENT_IS_NORMAL): Macro that expands to
574 arm_is_largest_exponent_ok.
575 (arm_is_largest_exponent_ok): Add prototype for arm_is_largest_exponent_ok function.
576 * doc/c-arm.texi: Add documentation for .float16, .float16_format and -mfp16-format=
577 * testsuite/gas/arm/float16-bad.d: New test.
578 * testsuite/gas/arm/float16-bad.l: New test.
579 * testsuite/gas/arm/float16-bad.s: New test.
580 * testsuite/gas/arm/float16-be.d: New test.
581 * testsuite/gas/arm/float16-format-bad.d: New test.
582 * testsuite/gas/arm/float16-format-bad.l: New test.
583 * testsuite/gas/arm/float16-format-bad.s: New test.
584 * testsuite/gas/arm/float16-format-opt-bad.d: New test.
585 * testsuite/gas/arm/float16-format-opt-bad.l: New test.
586 * testsuite/gas/arm/float16-le.d: New test.
587 * testsuite/gas/arm/float16.s: New test.
588 * testsuite/gas/arm/float16-eabi-alternative-format.d: New test.
589 * testsuite/gas/arm/float16-eabi-ieee-format.d: New test.
590 * testsuite/gas/arm/float16-eabi-no-format.d: New test.
591 * testsuite/gas/arm/float16-eabi.s: New test.
593 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
595 * config/atof-ieee.c (H_PRECISION): Macro for precision of float16
597 (atof_ieee): Set precision and exponent bits for encoding float16
599 (gen_to_words): NaN and Infinity encoding for float16.
600 (ieee_md_atof): Set precision for encoding float16 type.
602 2019-08-12 Alan Modra <amodra@gmail.com>
605 * config/tc-epiphany.c (md_estimate_size_before_relax): Clear
606 extra opcode bytes when changing from a 2-byte to a 4-byte insn.
608 2019-08-09 Jan Beulich <jbeulich@suse.com>
610 * testsuite/gas/i386/ilp32/x86-64-simd-intel.d,
611 testsuite/gas/i386/ilp32/x86-64-simd-suffix.d,
612 testsuite/gas/i386/ilp32/x86-64-simd.d: Redirect to parent dir
614 * testsuite/gas/i386/x86-64-simd-intel.d,
615 testsuite/gas/i386/x86-64-simd-suffix.d,
616 testsuite/gas/i386/x86-64-simd.d: Don't hard-code hex addresses
617 and symbol-relative offsets.
619 2019-08-08 Nick Clifton <nickc@redhat.com>
622 * testsuite/gas/i386/property-1.d: Adjust for new output format
624 * testsuite/gas/i386/property-2.d: Likewise.
625 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
626 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
628 2019-08-08 Yoshinori Sato <ysato@users.sourceforge.jp>
630 * testsuite/gas/h8300/h8300.exp: Fix movfpe and movtpe tests.
631 * testsuite/gas/h8300/misc.s: Likewise.
632 * testsuite/gas/h8300/misch.s: Likewise.
633 * testsuite/gas/h8300/miscs.s: Likewise.
635 2019-08-05 Barnaby Wilks <barnaby.wilks@arm.com>
637 * config/tc-arm.c (do_mve_vqdmlah): Use N_S_32 macro.
638 (do_neon_qrdmlah): Use N_S_32 macro.
639 * testsuite/gas/arm/mve-vqdmlah-bad.d: New test.
640 * testsuite/gas/arm/mve-vqdmlah-bad.l: New test.
641 * testsuite/gas/arm/mve-vqdmlah-bad.s: New test.
642 * testsuite/gas/arm/mve-vqdmlah.d: Remove unsigned instruction tests.
643 * testsuite/gas/arm/mve-vqdmlah.s: Remove unsigned instruction tests.
644 * testsuite/gas/arm/mve-vqdmlash-bad.d: New test.
645 * testsuite/gas/arm/mve-vqdmlash-bad.l: New test.
646 * testsuite/gas/arm/mve-vqdmlash-bad.s: New test.
647 * testsuite/gas/arm/mve-vqdmlash.d: Remove unsigned instruction tests.
648 * testsuite/gas/arm/mve-vqdmlash.s: Remove unsigned instruction tests.
650 2019-07-30 Mel Chen <mel.chen@sifive.com>
652 * testsuite/gas/riscv/alias-csr.s: Add testcase for CSR-access
654 * testsuite/gas/riscv/no-aliases-csr.d: Run testcase alias-csr.s with
657 * testsuite/gas/riscv/alias-csr.d: Run testcase alias-csr.s.
658 * testsuite/gas/riscv/priv-reg.d: Update.
660 2019-07-24 Nick Clifton <nickc@redhat.com>
662 * po/sv.po: Updated Swedish translation.
664 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
666 * testsuite/gas/arc/nps400-6.d: Update test.
668 2019-07-24 Alan Modra <amodra@gmail.com>
670 * config/obj-elf.c (obj_elf_section, obj_elf_type): Set has_gnu_osabi.
671 * testsuite/gas/elf/section12a.d: Update xfails.
672 * testsuite/gas/elf/section12b.d: Likewise.
674 2019-07-24 Alan Modra <amodra@gmail.com>
676 * testsuite/gas/elf/section12a.d: xfail visium and cloudabi.
677 * testsuite/gas/elf/section12b.d: Likewise.
678 * testsuite/gas/elf/section13.d: Likewise.
680 2019-07-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
682 * testsuite/gas/aarch64/sysreg-4.s: Test gmid_el1 read.
683 * testsuite/gas/aarch64/sysreg-4.d: Update expected output.
684 * testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
686 2019-07-23 Alan Modra <amodra@gmail.com>
688 * config/obj-elf.c (obj_elf_change_section): Don't emit a fatal
689 error for non-SHF_ALLOC SHF_GNU_MBIND here.
690 (obj_elf_parse_section_letters): Return SHF_GNU_MBIND in new
692 (obj_elf_section): Adjust obj_elf_parse_section_letters call.
693 Formatting. Set SHF_GNU_MBIND and elf_osabi from gnu_attr.
694 Emit normal error for non-SHF_ALLOC SHF_GNU_MBIND and wrong osabi.
695 (obj_elf_type): Set elf_osabi for ifunc.
696 * testsuite/gas/elf/section12a.d: xfail msp430 and hpux.
697 * testsuite/gas/elf/section12b.d: Likewise.
698 * testsuite/gas/elf/section13.d: Likewise.
699 * testsuite/gas/elf/section13.l: Adjust expected error.
701 2019-07-23 Alan Modra <amodra@gmail.com>
703 * testsuite/gas/elf/section12a.d: Don't skip for rx.
705 2019-07-22 Barnaby Wilks <barnaby.wilks@arm.com>
707 * config/tc-arm.c (do_mve_vqdmladh): Remove check for UNPREDICTABLE.
708 * testsuite/gas/arm/mve-vqdmladh-bad.l: Remove tests.
709 * testsuite/gas/arm/mve-vqdmladh-bad.s: Remove tests.
710 * testsuite/gas/arm/mve-vqdmladh.d: New tests.
711 * testsuite/gas/arm/mve-vqdmladh.s: New tests.
712 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: Remove tests.
713 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: Remove tests.
714 * testsuite/gas/arm/mve-vqdmlsdh.d: New tests.
715 * testsuite/gas/arm/mve-vqdmlsdh.s: New tests.
717 2019-07-19 H.J. Lu <hongjiu.lu@intel.com>
719 * testsuite/gas/i386/noextreg.d: Pass -O0 to assembler.
721 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
723 * testsuite/gas/bpf/alu.d: Use %r6 instead of %ctx.
724 * testsuite/gas/bpf/lddw-be.d: Likewise.
725 * testsuite/gas/bpf/lddw.d: Likewise.
726 * testsuite/gas/bpf/alu-be.d: Likewise.
727 * testsuite/gas/bpf/alu32.d: Likewise.
729 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
731 * config/tc-bpf.c (pe_lcomm_internal): Adapted from tc-i386.c.
732 (pe_lcomm): Likewise.
733 (md_pseudo_table): Use pe_lcomm to implement .lcomm.
735 2019-07-19 Richard Sandiford <richard.sandiford@arm.com>
737 * doc/c-aarch64.texi: Remame the +bitperm extension to +sve2-bitperm.
738 * config/tc-aarch64.c (aarch64_features): Likewise.
739 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update accordingly.
740 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Likewise.
741 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Likewise.
742 * testsuite/gas/aarch64/illegal-sve2.d: Likewise.
743 * testsuite/gas/aarch64/sve2.d: Likewise.
745 2019-07-19 Alan Modra <amodra@gmail.com>
747 * config/tc-ppc.c (ppc_elf_suffix): Map "tls@pcrel", "got@tlsgd@pcrel",
748 "got@tlsld@pcrel", "got@tprel@pcrel", and "got@dtprel@pcrel".
749 (fixup_size, md_assemble): Handle pcrel tls relocs.
750 (ppc_force_relocation, ppc_fix_adjustable): Likewise.
751 (md_apply_fix, tc_gen_reloc): Likewise.
753 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
755 * config/tc-bpf.c: Make .lcomm to get a third argument with the
758 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
760 * config/tc-bpf.c (md_pseudo_table): .half, .word and .dword.
762 * testsuite/gas/bpf/data.s: New file.
763 * testsuite/gas/bpf/data.d: Likewise.
764 * testsuite/gas/bpf/data-be.d: Likewise.
765 * testsuite/gas/bpf/bpf.exp: Run data and data-be.
766 * doc/c-bpf.texi (BPF Directives): New section.
768 2019-07-17 Jan Beulich <jbeulich@suse.com>
770 * config/tc-i386.c (check_hle, md_assemble, check_VecOperands,
771 match_template, check_string, build_modrm_byte): Replace
772 operand_type_check(..., anymem) by Operand_Mem ones.
773 (process_operands): Also copy i.flags[] when copying other
776 2019-07-16 Jan Beulich <jbeulich@suse.com>
778 * config/tc-i386.c (match_template): Adjust regmem reference.
779 Adjust comment and update regmem when swapping operands.
780 (build_modrm_byte): Drop clearing of regmem and stale part of
781 comment. Correct comment. Adjust regmem reference.
783 2019-07-16 Jan Beulich <jbeulich@suse.com>
785 * config/tc-i386.c (type_names): Replace SReg entries.
786 (pi, check_byte_reg, build_modrm_byte, i386_att_operand,
787 parse_real_register): Switch to using sreg field.
788 (process_operands): Likewise. Extend handling of PUSH/POP of
789 segment registers. Drop dead setting of REX_B.
790 * config/tc-i386-intel.c (i386_intel_simplify_register,
791 i386_intel_operand): Switch to using sreg field.
792 * testsuite/gas/i386/x86-64-opcode.s: Add PUSH/POP of %fs/%gs.
793 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
794 * testsuite/gas/i386/ilp32/x86-64-opcode.d: Use parent dir
797 2019-07-15 Jose E. Marchesi <jose.marchesi@oracle.com>
799 * testsuite/gas/bpf/mem.s: ldabs instructions do not take a `src'
800 register as an argument.
801 * testsuite/gas/bpf/mem.d: Updated accordingly.
802 * testsuite/gas/bpf/mem-be.d: Likewise.
803 * doc/c-bpf.texi (BPF Opcodes): Update to reflect the correct
804 explicit arguments to ldabs and ldind instructions.
806 2019-07-14 Jose E. Marchesi <jose.marchesi@oracle.com>
808 * testsuite/gas/bpf/mem.s: Do not use explicit arguments for
809 ldabs and ldind instructions.
810 * testsuite/gas/bpf/mem.d: Updated accordingly.
811 * testsuite/gas/bpf/mem-be.d: Likewise.
813 2019-07-09 Alan Modra <amodra@gmail.com>
815 * config/obj-elf.c (elf_frob_symbol): Remove mips hacks.
816 * config/tc-mips.h (tc_frob_symbol): Define.
817 (mips_frob_symbol): Declare.
818 * config/tc-mips.c (s_mips_globl): Don't set BSF_OBJECT for irix.
819 (mips_frob_symbol): Fudge symbols for irix here.
820 * testsuite/gas/elf/type-2.e: Allow random target symbols.
822 2019-07-05 Kito Cheng <kito.cheng@sifive.com>
824 * doc/c-riscv.texi (Instruction Formats): Add r4 type.
825 * testsuite/gas/riscv/insn.d: Add testcase for r4 type.
826 * testsuite/gas/riscv/insn.s: Ditto.
828 * doc/c-riscv.texi (Instruction Formats): Add b and j type.
829 * testsuite/gas/riscv/insn.d: Add test case for b and j type.
830 * testsuite/gas/riscv/insn.s: Ditto.
832 * testsuite/gas/riscv/insn.s: Correct instruction type for load
835 * testsuite/gas/riscv/insn.d: Using regular expression to match
838 * doc/c-riscv.texi (Instruction Formats): Fix encoding table for SB
841 2019-07-04 Jan Beulich <jbeulich@suse.com>
843 * config/tc-i386.c (md_parse_option): Don't blindly accept all
845 (md_show_usage): Correctly name the ignored -Q option flavors.
847 2019-07-04 Jan Beulich <jbeulich@suse.com>
849 * config/obj-elf.c (obj_elf_type): Check for conflicts between
851 * config/tc-hppa.h (md_elf_symbol_type_change): New.
852 * doc/as.texi: Mention warning behavior for the ELF flavor of
854 * testsuite/gas/elf/type-2.e, testsuite/gas/elf/type-2.l,
855 testsuite/gas/elf/type-2.s: New.
856 * testsuite/gas/elf/elf.exp: Run new test.
858 2019-07-03 Nick Clifton <nickc@redhat.com>
860 * testsuite/gas/aarch64/codealign.d: Update to work with a
861 toolchain configured to generate build notes.
862 * testsuite/gas/aarch64/codealign_1.d: Likewise.
863 * testsuite/gas/aarch64/dwarf.d: Likewise.
864 * testsuite/gas/aarch64/mapmisc.d: Likewise.
865 * testsuite/gas/aarch64/mapping.d: Likewise.
866 * testsuite/gas/aarch64/mapping2.d: Likewise.
867 * testsuite/gas/aarch64/mapping3.d: Likewise.
868 * testsuite/gas/aarch64/mapping4.d: Likewise.
869 * testsuite/gas/aarch64/mapping_5.d: Likewise.
870 * testsuite/gas/aarch64/mapping_6.d: Likewise.
871 * testsuite/gas/aarch64/sve-movprfx_1.d: Likewise.
872 * testsuite/gas/aarch64/sve-movprfx_10.d: Likewise.
873 * testsuite/gas/aarch64/sve-movprfx_11.d: Likewise.
874 * testsuite/gas/aarch64/sve-movprfx_12.d: Likewise.
875 * testsuite/gas/aarch64/sve-movprfx_13.d: Likewise.
876 * testsuite/gas/aarch64/sve-movprfx_14.d: Likewise.
877 * testsuite/gas/aarch64/sve-movprfx_15.d: Likewise.
878 * testsuite/gas/aarch64/sve-movprfx_16.d: Likewise.
879 * testsuite/gas/aarch64/sve-movprfx_17.d: Likewise.
880 * testsuite/gas/aarch64/sve-movprfx_18.d: Likewise.
881 * testsuite/gas/aarch64/sve-movprfx_19.d: Likewise.
882 * testsuite/gas/aarch64/sve-movprfx_2.d: Likewise.
883 * testsuite/gas/aarch64/sve-movprfx_20.d: Likewise.
884 * testsuite/gas/aarch64/sve-movprfx_21.d: Likewise.
885 * testsuite/gas/aarch64/sve-movprfx_22.d: Likewise.
886 * testsuite/gas/aarch64/sve-movprfx_23.d: Likewise.
887 * testsuite/gas/aarch64/sve-movprfx_24.d: Likewise.
888 * testsuite/gas/aarch64/sve-movprfx_25.d: Likewise.
889 * testsuite/gas/aarch64/sve-movprfx_26.d: Likewise.
890 * testsuite/gas/aarch64/sve-movprfx_27.d: Likewise.
891 * testsuite/gas/aarch64/sve-movprfx_3.d: Likewise.
892 * testsuite/gas/aarch64/sve-movprfx_4.d: Likewise.
893 * testsuite/gas/aarch64/sve-movprfx_5.d: Likewise.
894 * testsuite/gas/aarch64/sve-movprfx_6.d: Likewise.
895 * testsuite/gas/aarch64/sve-movprfx_7.d: Likewise.
896 * testsuite/gas/aarch64/sve-movprfx_8.d: Likewise.
897 * testsuite/gas/aarch64/sve-movprfx_9.d: Likewise.
898 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: Likewise.
899 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: Likewise.
900 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: Likewise.
901 * testsuite/gas/all/assign.d: Likewise.
902 * testsuite/gas/all/none.d: Likewise.
903 * testsuite/gas/all/weakref1.d: Likewise.
904 * testsuite/gas/arm/got_prel.d: Likewise.
905 * testsuite/gas/arm/local_function.d: Likewise.
906 * testsuite/gas/arm/mapdir.d: Likewise.
907 * testsuite/gas/arm/mapmisc.d: Likewise.
908 * testsuite/gas/arm/mapping2.d: Likewise.
909 * testsuite/gas/arm/mapping3.d: Likewise.
910 * testsuite/gas/arm/mapping4.d: Likewise.
911 * testsuite/gas/arm/mapsecs.d: Likewise.
912 * testsuite/gas/arm/mapshort-eabi.d: Likewise.
913 * testsuite/gas/arm/thumbrel.d: Likewise.
914 * testsuite/gas/arm/unwind.d: Likewise.
915 * testsuite/gas/cfi/cfi-label.d: Likewise.
916 * testsuite/gas/elf/elf.exp: Likewise.
917 * testsuite/gas/i386/bss.d: Likewise.
918 * testsuite/gas/i386/ifunc-3.d: Likewise.
919 * testsuite/gas/i386/ilp32/mixed-mode-reloc64.d: Likewise.
920 * testsuite/gas/i386/ilp32/quad.d: Likewise.
921 * testsuite/gas/i386/ilp32/reloc64.d: Likewise.
922 * testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
923 * testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
924 * testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
925 * testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
926 * testsuite/gas/i386/mixed-mode-reloc32.d: Likewise.
927 * testsuite/gas/i386/mixed-mode-reloc64.d: Likewise.
928 * testsuite/gas/i386/nop-6.d: Likewise.
929 * testsuite/gas/i386/property-1.d: Likewise.
930 * testsuite/gas/i386/property-2.d: Likewise.
931 * testsuite/gas/i386/relax.d: Likewise.
932 * testsuite/gas/i386/reloc64.d: Likewise.
933 * testsuite/gas/i386/size-1.d: Likewise.
934 * testsuite/gas/i386/size-3.d: Likewise.
935 * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
936 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
937 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
938 * testsuite/gas/i386/x86-64-size-1.d: Likewise.
939 * testsuite/gas/i386/x86-64-size-3.d: Likewise.
940 * testsuite/gas/i386/x86-64-size-5.d: Likewise.
941 * testsuite/gas/i386/x86-64-unwind.d: Likewise.
942 * testsuite/gas/macros/irp.d: Likewise.
943 * testsuite/gas/macros/repeat.d: Likewise.
944 * testsuite/gas/macros/rept.d: Likewise.
945 * testsuite/gas/macros/test2.d: Likewise.
946 * testsuite/gas/macros/test3.d: Likewise.
947 * testsuite/gas/macros/vararg.d: Likewise.
948 * testsuite/gas/ppc/astest2.d: Likewise.
949 * testsuite/gas/ppc/astest2_64.d: Likewise.
950 * testsuite/gas/ppc/astest64.d: Likewise.
951 * testsuite/gas/ppc/power4.d: Likewise.
952 * testsuite/gas/ppc/test1elf64.d: Likewise.
954 2019-07-02 Barnaby Wilks <barnaby.wilks@arm.com>
956 * config/tc-aarch64.c (parse_operands): Add error check.
957 * testsuite/gas/aarch64/diagnostic.l: New test.
958 * testsuite/gas/aarch64/diagnostic.s: New test.
959 * testsuite/gas/aarch64/illegal.l: New tests.
960 * testsuite/gas/aarch64/illegal.s: New tests.
962 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
964 * testsuite/gas/aarch64/sve-movprfx_27.s,
965 * testsuite/gas/aarch64/sve-movprfx_27.d: New test.
967 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
969 * testsuite/gas/aarch64/sve-movprfx_26.s: Also test FCVTZS, FCVTZU,
970 SCVTF, UCVTF, LSR and ASR.
971 * testsuite/gas/aarch64/sve-movprfx_26.d: Update accordingly.
972 * testsuite/gas/aarch64/sve-movprfx_26.l: Likewise.
974 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
976 * testsuite/gas/aarch64/sve-movprfx_25.s: Allow CPY Z1.D.P1/M,X1
977 to be prefixed by MOVPRFX.
978 * testsuite/gas/aarch64/sve-movprfx_25.d: Update accordingly.
979 * testsuite/gas/aarch64/sve-movprfx_25.l: Likewise.
981 2019-07-01 Nick Clifton <nickc@redhat.com>
984 * write.c (create_note_reloc): Add desc2_offset parameter. Change
985 name of offset parameter to note_offset. Only use desc2_offset
986 when placing addend into REL reloc's address space.
987 (maybe_generate_build_notes): Update parameters passed to
990 2019-07-01 Matthew Malcomson <matthew.malcomson@arm.com>
992 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update tests.
993 * testsuite/gas/aarch64/illegal-sve2.l: Update tests.
994 * doc/c-aarch64.texi: Add special note of pmull{t,b}
995 instructions under the sve2-aes architecture extension.
996 * testsuite/gas/aarch64/illegal-sve2.s: Add small size
997 pmull{t,b} instructions.
998 * testsuite/gas/aarch64/sve2.d: Add small size pmull{t,b}
1000 * testsuite/gas/aarch64/sve2.s: Add small size pmull{t,b}
1003 2019-07-01 Nick Clifton <nickc@redhat.com>
1006 * doc/c-i386.texi (i386-Directives): Add a description of the
1009 2019-07-01 Nick Clifton <nickc@redhat.com>
1012 * doc/as.texi (Align): Add missing word to description of
1014 (P2align): Likewise.
1016 2019-06-28 Nick Clifton <nickc@redhat.com>
1019 * doc/as.texi (Zero): Fix spelling typo.
1021 2019-07-01 Jan Beulich <jbeulich@suse.com>
1023 * config/tc-i386.c (vec_imm4): Delete.
1024 (VEX_check_operands): Replace Vec_Imm4 check by CpuXOP with five
1025 operands one. Clear Imm<N> by different means.
1026 (build_modrm_byte): Adjust comment. Remove dead code. Add and
1029 2019-07-01 Jan Beulich <jbeulich@suse.com>
1031 * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
1032 insns. Move PadLock special case of prefix emission to 3-byte
1033 long base opcode handling.
1034 (i386_index_check): Check for CpuPadLock instead of ImmExt.
1036 2019-07-01 Jan Beulich <jbeulich@suse.com>
1038 * config/tc-i386.c (optimize_encoding): Handle AND / OR with
1039 both operands being the same register.
1040 * doc/c-i386.texi: Update -O2 documentation.
1041 * testsuite/gas/i386/optimize-2.s,
1042 testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
1043 with both operands being the same register.
1044 * testsuite/gas/i386/optimize-2.d,
1045 testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
1046 * testsuite/gas/i386/optimize-2b.d,
1047 testsuite/gas/i386/x86-64-optimize-3b.d: New.
1048 * testsuite/gas/i386/i386.exp: Run new test.
1050 2019-07-01 Jan Beulich <jbeulich@suse.com>
1052 * config/tc-i386.c (commutative): New.
1053 (build_vex_prefix): Handle commutative case.
1054 (optimize_encoding): Set commutative flag when appropriate.
1055 * doc/c-i386.texi: Update -O2 documentation.
1056 * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
1058 * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
1059 numbered source operands.
1060 * testsuite/gas/i386/x86-64-optimize-2.d,
1061 testsuite/gas/i386/x86-64-optimize-2b.d,
1062 testsuite/gas/i386/x86-64-optimize-3.d,
1063 testsuite/gas/i386/x86-64-optimize-5.d,
1064 testsuite/gas/i386/x86-64-optimize-6.d,
1065 testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
1066 * testsuite/gas/i386/x86-64-avx-swap-2.d,
1067 testsuite/gas/i386/x86-64-avx-swap-2.s: New.
1068 * testsuite/gas/i386/i386.exp: Run new test.
1070 2019-07-01 Jan Beulich <jbeulich@suse.com>
1072 * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
1073 (check_VecOperands): Simplify static rounding / SAE checking.
1075 2019-07-01 Jan Beulich <jbeulich@suse.com>
1077 * config/tc-i386.c (optimize_encoding): Make j unsigned. Handle
1078 vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}. Also check/
1079 clear broadcast. Eliminate a loop.
1080 * doc/c-i386.texi: Update -O1 documentation.
1081 * testsuite/gas/i386/optimize-1.s,
1082 testsuite/gas/i386/optimize-2.s,
1083 testsuite/gas/i386/optimize-3.s,
1084 testsuite/gas/i386/optimize-5.s,
1085 testsuite/gas/i386/x86-64-optimize-2.s,
1086 testsuite/gas/i386/x86-64-optimize-3.s,
1087 testsuite/gas/i386/x86-64-optimize-4.s,
1088 testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
1089 vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
1090 testsuite/gas/i386/optimize-1.d,
1091 testsuite/gas/i386/optimize-1a.d,
1092 testsuite/gas/i386/optimize-2.d,
1093 testsuite/gas/i386/optimize-3.d,
1094 testsuite/gas/i386/optimize-4.d,
1095 testsuite/gas/i386/optimize-5.d,
1096 testsuite/gas/i386/x86-64-optimize-2.d,
1097 testsuite/gas/i386/x86-64-optimize-2a.d,
1098 testsuite/gas/i386/x86-64-optimize-2b.d,
1099 testsuite/gas/i386/x86-64-optimize-3.d,
1100 testsuite/gas/i386/x86-64-optimize-4.d,
1101 testsuite/gas/i386/x86-64-optimize-5.d,
1102 testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
1104 2019-07-01 Jan Beulich <jbeulich@suse.com>
1106 * testsuite/gas/i386/avx512f_vpclmulqdq.s,
1107 testsuite/gas/i386/avx512vl_vpclmulqdq.s,
1108 testsuite/gas/i386/vpclmulqdq.s,
1109 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
1110 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
1111 * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
1112 high 16 [xy]mm registers.
1113 * testsuite/gas/i386/avx512f_vpclmulqdq.d,
1114 testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
1115 testsuite/gas/i386/avx512vl_vpclmulqdq.d,
1116 testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
1117 testsuite/gas/i386/vpclmulqdq.d,
1118 testsuite/gas/i386/vpclmulqdq-intel.d,
1119 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
1120 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
1121 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
1122 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
1123 testsuite/gas/i386/x86-64-vpclmulqdq.d,
1124 testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
1127 2019-07-01 Jan Beulich <jbeulich@suse.com>
1129 * tc-i386.c (output_disp, output_imm): Use encoding_length.
1131 2019-07-01 Jan Beulich <jbeulich@suse.com>
1133 * tc-i386.c (encoding_length): New.
1134 (output_insn): Use it.
1135 * testsuite/gas/i386/oversized16.l,
1136 testsuite/gas/i386/oversized16.s,
1137 testsuite/gas/i386/oversized64.l,
1138 testsuite/gas/i386/oversized64.s: New.
1139 * testsuite/gas/i386/i386.exp: Run new tests.
1141 2019-06-27 H.J. Lu <hongjiu.lu@intel.com>
1144 * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
1145 with invalid vector length.
1146 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1147 * testsuite/gas/i386/disassem.d: Updated.
1148 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1150 2019-06-27 Barnaby Wilk s<barnaby.wilks@arm.com>
1152 * config/tc-arm.c (do_smc): Add range check for immediate operand.
1153 (do_t_smc): Add range check for immediate operand. Remove
1154 obsolete immediate encoding.
1155 (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
1156 * testsuite/gas/arm/arch6zk.d: Fix test.
1157 * testsuite/gas/arm/arch6zk.s: Fix test.
1158 * testsuite/gas/arm/smc-bad.d: New test.
1159 * testsuite/gas/arm/smc-bad.l: New test.
1160 * testsuite/gas/arm/smc-bad.s: New test.
1161 * testsuite/gas/arm/thumb32.d: Fix test.
1162 * testsuite/gas/arm/thumb32.s: Fix test.
1164 2019-06-27 Jan Beulich <jbeulich@suse.com>
1166 config/tc-i386.c (md_assemble): Check for protected mode
1167 incapable processor before encoding VEX and alike insns.
1168 * testsuite/gas/i386/inval-16.s: For 80186 architecture.
1169 * testsuite/gas/i386/inval-16.l: Adjust expectations.
1170 * testsuite/gas/i386/avx-16bit.d,
1171 testsuite/gas/i386/avx-16bit.s,
1172 testsuite/gas/i386/avx512f-16bit.d,
1173 testsuite/gas/i386/avx512f-16bit.s,
1174 testsuite/gas/i386/bmi-16bit.d,
1175 testsuite/gas/i386/bmi-16bit.s,
1176 testsuite/gas/i386/bmi2-16bit.d,
1177 testsuite/gas/i386/bmi2-16bit.s,
1178 testsuite/gas/i386/lwp-16bit.d,
1179 testsuite/gas/i386/lwp-16bit.s: New
1180 testsuite/gas/i386/i386.exp: Run new tests.
1182 2019-06-26 Jim Wilson <jimw@sifive.com>
1184 * testsuite/gas/xstormy16/allinsn.sh: Change first line to
1185 #!/bin/bash and make it executable.
1186 * testsuite/gas/xstormy16/gcc.sh: Likewise.
1188 2019-06-26 Lili Cui <lili.cui@intel.com>
1190 * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
1191 syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
1194 2019-06-25 Faraz Shahbazker <fshahbazker@wavecomp.com>
1196 * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
1197 respect to MTC1 and use $0 for either part where possible.
1198 * testsuite/gas/mips/li-d.s: Add test cases for non-zero
1199 words in double precision constants.
1200 * testsuite/gas/mips/li-d.d: Update reference output.
1201 * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
1202 * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
1203 * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
1205 2019-06-25 Jan Beulich <jbeulich@suse.com>
1207 * tc-i386.c (acc32, acc64): Delete.
1208 (pi): Make first parameter pinter-to-const.
1209 (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
1210 (pt): Use operand_type_equal().
1211 (match_template): Replace use of acc32.
1212 (process_suffix): Replace use of acc64.
1214 2019-06-25 Jan Beulich <jbeulich@suse.com>
1216 * doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
1219 2019-06-25 Jan Beulich <jbeulich@suse.com>
1221 * tc-i386.c (process_suffix): Use is_any_vex_encoding().
1223 2019-06-25 Jan Beulich <jbeulich@suse.com>
1225 * testsuite/gas/i386/sse2-16bit.d,
1226 testsuite/gas/i386/sse2-16bit.s: New.
1227 testsuite/gas/i386/i386.exp: Run new test.
1229 2019-06-25 Jan Beulich <jbeulich@suse.com>
1231 * config/tc-i386.c (optimize_encoding): Also handle ANDQ with
1232 immediatie fitting in 7 bits.
1233 * testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
1234 7- and 8-bit immediates.
1235 * testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
1237 2019-06-25 Jan Beulich <jbeulich@suse.com>
1239 * testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
1241 * testsuite/gas/i386/xmmword.l: Adjust expectations.
1243 2019-06-25 Alan Modra <amodra@gmail.com>
1245 * config/tc-ppc.c (ppc_handle_align): Add parentheses.
1247 2019-06-25 Alan Modra <amodra@gmail.com>
1249 * config/tc-ppc.h (ppc_nop_select): Declare.
1250 (NOP_OPCODE): Define.
1251 * config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
1252 (ppc_nop_encoding_for_rs_align_code): New enum.
1253 (ppc_nop_select): New function.
1254 (ppc_handle_align): Don't use ppc_cpu here. Get nop type from frag.
1255 * testsuite/gas/ppc/groupnop.d,
1256 * testsuite/gas/ppc/groupnop.s: New test.
1257 * testsuite/gas/ppc/ppc.exp: Run it.
1259 2019-06-19 H.J. Lu <hongjiu.lu@intel.com>
1262 * testsuite/gas/i386/disassem.s: Add test for vbroadcasti32x8
1263 with invalid vector length.
1264 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1265 * testsuite/gas/i386/disassem.d: Updated.
1266 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1268 2019-06-17 H.J. Lu <hongjiu.lu@intel.com>
1271 * testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
1272 invalid vector length.
1273 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1274 * testsuite/gas/i386/disassem.d: Updated.
1275 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1277 2019-06-14 Alan Modra <amodra@gmail.com>
1279 * Makefile.in: Regenerate.
1280 * configure: Regenerate.
1281 * doc/Makefile.in: Regenerate.
1283 2019-06-12 Peter Bergner <bergner@linux.ibm.com>
1285 * testsuite/gas/ppc/power9.d: Delete ldmx tests.
1286 * testsuite/gas/ppc/power9.s: Likewise.
1288 2019-06-06 Lili Cui <lili.cui@intel.com>
1290 * config/tc-i386.c (cpu_arch): Add .enqcmd.
1291 (cpu_noarch): Add noenqcmd.
1292 * doc/c-i386.texi: Document noenqcmd.
1294 2019-06-05 H.J. Lu <hongjiu.lu@intel.com>
1297 * testsuite/gas/i386/disassem.s: Add tests for invalid vector
1298 lengths for EVEX vextractfXX and vinsertfXX.
1299 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1300 * testsuite/gas/i386/disassem.d: Updated.
1301 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1303 2019-06-04 H.J. Lu <hongjiu.lu@intel.com>
1306 * testsuite/gas/i386/disassem.s: Add tests for reserved VEX.vvvv
1308 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1309 * testsuite/gas/i386/disassem.d: Updated.
1310 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1312 2019-06-04 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
1313 Lili Cui <lili.cui@intel.com>
1315 * config/tc-i386.c (cpu_arch): Add .avx512_vp2intersect.
1316 (cpu_noarch): Likewise.
1317 * doc/c-i386.texi: Document avx512_vp2intersect.
1318 * testsuite/gas/i386/i386.exp: Run vp2intersect tests.
1319 * testsuite/gas/i386/vp2intersect-intel.d: New test.
1320 * testsuite/gas/i386/vp2intersect.d: Likewise.
1321 * testsuite/gas/i386/vp2intersect.s: Likewise.
1322 * testsuite/gas/i386/vp2intersect-inval-bcast.l: Likewise.
1323 * testsuite/gas/i386/vp2intersect-inval-bcast.s: Likewise.
1324 * testsuite/gas/i386/x86-64-vp2intersect-intel.d: Likewise.
1325 * testsuite/gas/i386/x86-64-vp2intersect.d: Likewise.
1326 * testsuite/gas/i386/x86-64-vp2intersect.s: Likewise.
1327 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.l: Likewise.
1328 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.s: Likewise.
1330 2019-06-04 Xuepeng Guo <xuepeng.guo@intel.com>
1331 Lili Cui <lili.cui@intel.com>
1333 * doc/c-i386.texi: Document enqcmd.
1334 * testsuite/gas/i386/enqcmd-intel.d: New file.
1335 * testsuite/gas/i386/enqcmd-inval.l: Likewise.
1336 * testsuite/gas/i386/enqcmd-inval.s: Likewise.
1337 * testsuite/gas/i386/enqcmd.d: Likewise.
1338 * testsuite/gas/i386/enqcmd.s: Likewise.
1339 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
1340 * testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
1341 * testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
1342 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
1343 * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
1344 * testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
1345 enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
1348 2019-05-30 Jim Wilson <jimw@sifive.com>
1350 * config/tc-riscv.c (riscv_ip) <'u'>: Move O_constant check inside if
1351 statement. Delete O_symbol and O_constant check after if statement.
1352 * testsuite/gas/riscv/auipc-parsing.s: Test lui with missing %hi.
1353 * testsuite/gas/riscv/auipc-parsing.l: Update.
1355 2019-05-28 H.J. Lu <hongjiu.lu@intel.com>
1358 * testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
1359 instructions with invalid broadcast.
1360 * testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
1361 * testsuite/gas/i386/inval-avx512f.l: Updated.
1362 * testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
1364 2019-05-27 Alan Modra <amodra@gmail.com>
1366 * config/tc-ppc.c (is_ppc64_target): New function.
1367 (md_show_usage): Split up usage message. Don't show -a64 when
1369 testsuite/gas/ppc/ppc.exp (supports_ppc64): New.
1370 (prefix-reloc): Only run for ppc64.
1372 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1374 * config/tc-aarch64.c (aarch64_elf_copy_symbol_attributes): Define.
1375 * config/tc-aarch64.h (aarch64_elf_copy_symbol_attributes): Declare.
1376 (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1377 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: New test.
1378 * testsuite/gas/aarch64/symbol-variant_pcs-3.s: New test.
1380 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1382 * config/tc-aarch64.c (s_variant_pcs): New function.
1383 * doc/c-aarch64.texi: Document .variant_pcs.
1384 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: New test.
1385 * testsuite/gas/aarch64/symbol-variant_pcs-1.s: New test.
1386 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: New test.
1387 * testsuite/gas/aarch64/symbol-variant_pcs-2.s: New test.
1389 2019-05-24 Alan Modra <amodra@gmail.com>
1391 * po/POTFILES.in: Regenerate.
1393 2019-05-24 Alan Modra <amodra@gmail.com>
1395 * config/tc-ppc.c (ppc_elf_suffix): Support @pcrel, @got@pcrel,
1396 @plt@pcrel, @higher34, @highera34, @highest34, and @highesta34.
1397 (fixup_size): Handle new powerxx relocs.
1398 (md_assemble): Warn for @pcrel on non-prefix insns.
1399 Accept @l, @h and @ha on prefix insns, and infer reloc without
1400 any @ suffix. Translate powerxx relocs to suit DQ and DS field
1401 instructions. Include operand tests as well as opcode test to
1402 translate BFD_RELOC_HI16_S to BFD_RELOC_PPC_16DX_HA.
1403 (ppc_fix_adjustable): Return false for pcrel GOT and PLT relocs.
1404 (md_apply_fix): Handle new powerxx relocs.
1405 * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Accept
1406 BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34,
1407 BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34,
1408 BFD_RELOC_PPC64_D34, and BFD_RELOC_PPC64_D28.
1409 * testsuite/gas/ppc/prefix-reloc.d,
1410 * testsuite/gas/ppc/prefix-reloc.s: New test.
1411 * testsuite/gas/ppc/ppc.exp: Run it.
1413 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1414 Alan Modra <amodra@gmail.com>
1416 * config/tc-ppc.c (ppc_insert_operand): Only sign extend fields that
1417 are 32-bits or smaller.
1418 * messages.c (as_internal_value_out_of_range): Do not truncate
1419 variables and use BFD_VMA_FMT to print them.
1420 * testsuite/gas/ppc/prefix-pcrel.s,
1421 * testsuite/gas/ppc/prefix-pcrel.d: New test.
1422 * testsuite/gas/ppc/ppc.exp: Run it.
1424 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1425 Alan Modra <amodra@gmail.com>
1427 * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
1428 (struct insn_label_list): New.
1429 (insn_labels, free_insn_labels): New variables.
1430 (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
1431 (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
1432 and call ppc_record_label.
1433 (md_assemble): Handle 64-bit prefix instructions. Align labels
1434 that are on the same line as a prefix instruction.
1435 * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
1437 (md_start_line_hook): Define.
1438 (ppc_start_line_hook): Declare.
1439 * testsuite/gas/ppc/prefix-align.d,
1440 * testsuite/gas/ppc/prefix-align.s: New test.
1441 * testsuite/gas/ppc/ppc.exp: Run new test.
1443 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1445 * configure.ac: Handle bpf-*-* targets.
1446 * configure.tgt (generic_target): Likewise.
1447 * configure: Regenerate.
1448 * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
1449 (TARGET_CPU_HFILES): Add tc-bpf.h.
1450 * Makefile.in: Regenerated.
1451 * config/tc-bpf.c: New file.
1452 * config/tc-bpf.h: Likewise.
1453 * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
1454 * doc/Makefile.in: Regenerated.
1455 * doc/all.texi: set BPF.
1456 * doc/as.texi: Add eBPF contents.
1457 * doc/c-bpf.texi: New file.
1458 * testsuite/gas/bpf/alu.d: New file.
1459 * testsuite/gas/bpf/mem-be.d: Likewise.
1460 * testsuite/gas/bpf/mem.s: Likewise.
1461 * testsuite/gas/bpf/mem.d: Likewise.
1462 * testsuite/gas/bpf/lddw-be.d: Likewise.
1463 * testsuite/gas/bpf/lddw.s: Likewise.
1464 * testsuite/gas/bpf/lddw.d: Likewise.
1465 * testsuite/gas/bpf/jump-be.d: Likewise.
1466 * testsuite/gas/bpf/jump.s: Likewise.
1467 * testsuite/gas/bpf/jump.d: Likewise.
1468 * testsuite/gas/bpf/exit-be.d: Likewise.
1469 * testsuite/gas/bpf/exit.s: Likewise.
1470 * testsuite/gas/bpf/exit.d: Likewise.
1471 * testsuite/gas/bpf/call-be.d: Likewise.
1472 * testsuite/gas/bpf/call.s: Likewise.
1473 * testsuite/gas/bpf/call.d: Likewise.
1474 * testsuite/gas/bpf/bpf.exp: Likewise.
1475 * testsuite/gas/bpf/atomic-be.d: Likewise.
1476 * testsuite/gas/bpf/atomic.s: Likewise.
1477 * testsuite/gas/bpf/atomic.d: Likewise.
1478 * testsuite/gas/bpf/alu-be.d: Likewise.
1479 * testsuite/gas/bpf/alu32-be.d: Likewise.
1480 * testsuite/gas/bpf/alu32.s: Likewise.
1481 * testsuite/gas/bpf/alu32.d: Likewise.
1482 * testsuite/gas/bpf/alu.s: Likewise.
1483 * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
1484 * testsuite/gas/all/org-1.s: Support nop_type 6.
1485 * testsuite/gas/all/org-1.l: Updated to reflect changes in
1488 2019-05-22 John Darrington <john@darrington.wattle.id.au>
1490 * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
1491 (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
1492 (<global>): Use s12z_strtol instead of strtol.
1493 * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
1494 * testsuite/gas/s12z/dollar-hex.d: New file.
1495 * testsuite/gas/s12z/dollar-hex.s: New file.
1496 * testsuite/gas/s12z/s12z.exp: Add them.
1498 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1500 * config/tc-arm.c (parse_operands): Update case OP_RVC to
1502 (do_vmrs): Add checks for valid operands with respect to
1503 cpu and fpu options.
1504 (do_vmsr): Likewise.
1505 (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
1507 * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
1508 * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
1509 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
1510 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
1511 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
1512 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
1513 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
1514 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
1515 * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
1516 * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
1518 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1520 * config/tc-arm.c (TOGGLE_BIT): New.
1521 (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
1522 csinv, csneg, cset, csetm and csel.
1523 (operand_parse_code): New OP_RR_ZR.
1524 (parse_operand): Handle case for OP_RR_ZR.
1526 (insns): New instructions for cinc, cinv, cneg, csinc,
1527 csinv, csneg, cset, csetm, csel.
1528 * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
1529 * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
1530 * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
1531 * testsuite/gas/arm/armv8_1-m-cond.d: New test.
1532 * testsuite/gas/arm/armv8_1-m-cond.s: New test.
1534 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1536 * config/tc-arm.c (operand_parse_code): New entries for
1537 OP_RRnpcsp_I32 (register or integer operands).
1538 (do_mve_scalar_shift): New.
1539 (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
1540 sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
1541 * testsuite/gas/arm/mve-shift.d: New.
1542 * testsuite/gas/arm/mve-shift.s: New.
1543 * testsuite/gas/arm/mve-shift-bad.d: New.
1544 * testsuite/gas/arm/mve-shift-bad.s: New.
1545 * testsuite/gas/arm/mve-shift-bad.l: New.
1547 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1549 * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
1550 * testsuite/gas/mips/r6-reg-constraints.s: this and add test
1552 * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
1553 * testsuite/gas/mips/r6-reg-constraints.l: this and add test
1555 * testsuite/gas/mips/mips.exp: Rename test from
1556 r6-branch-constraints to r6-reg-constraints.
1558 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1561 * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
1563 * testsuite/gas/arm/load-pseudo.s: New test input.
1564 * testsuite/gas/arm/m0-load-pseudo.d: New test.
1565 * testsuite/gas/arm/m23-load-pseudo.d: New test.
1566 * testsuite/gas/arm/m33-load-pseudo.d: New test.
1568 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1570 * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
1572 * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
1573 * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
1574 * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
1575 * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
1576 * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
1577 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
1578 * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
1580 2019-05-21 John Darrington <john@darrington.wattle.id.au>
1582 * expr.c (literal_prefix_dollar_hex): New variable.
1583 (operand)[case '$']: Use the new variable instead of the old macro.
1584 Also, move this instance of "case '$'" next to the other one, and
1585 enable it only in the complementary proprocessor case.
1586 * expr.h (literal_prefix_dollar_hex): Declare it.
1587 * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
1588 * config/tc-ip2k.c: ditto
1589 * config/tc-mt.c: ditto
1590 * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
1591 * config/tc-ip2k.h: ditto
1592 * config/tc-mt.h: ditto
1594 2019-05-20 Faraz Shahbazker <fshahbazker@wavecomp.com>
1597 * config/tc-mips.c (s_mips_globl): Only treat symbols that are
1598 not explicitly labelled as BSF_OBJECTs for IRIX targets.
1599 * testsuite/gas/mips/pr14798.s: New test source.
1600 * testsuite/gas/mips/pr14798-irix.d: New test.
1601 * testsuite/gas/mips/pr14798.d: Likewise.
1602 * testsuite/gas/mips/mips.exp: Run the new tests.
1604 2019-05-17 John Darrington <john@darrington.wattle.id.au>
1606 * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
1607 * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
1609 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1611 * config/tc-arm.c (check_simd_pred_availability): Refactor.
1612 (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
1613 (do_neon_dyadic_i64_su): Likewise.
1614 (do_neon_shl): Likewise.
1615 (do_neon_qshl): Likewise.
1616 (do_neon_rshl): Likewise.
1617 (do_neon_logic): Likewise.
1618 (do_neon_dyadic_if_su): Likewise.
1619 (do_neon_addsub_if_i): Likewise.
1620 (do_neon_mac_maybe_scalar): Likewise.
1621 (do_neon_fmac): Likewise.
1622 (do_neon_mul): Likewise.
1623 (do_neon_qdmulh): Likewise.
1624 (do_neon_qrdmlah): Likewise.
1625 (do_neon_abs_neg): Likewise.
1626 (do_neon_sli): Likewise.
1627 (do_neon_sri): Likewise.
1628 (do_neon_qshlu_imm): Likewise.
1629 (do_neon_cvt_1): Likewise.
1630 (do_neon_cvttb_1): Likewise.
1631 (do_neon_mvn): Likewise.
1632 (do_neon_rev): Likewise.
1633 (do_neon_dup): Likewise.
1634 (do_neon_mov): Likewise.
1635 (do_neon_rshift_round_imm): Likewise.
1636 (do_neon_sat_abs_neg): Likewise.
1637 (do_neon_cls): Likewise.
1638 (do_neon_clz): Likewise.
1639 (do_vmaxnm): Likewise.
1640 (do_vrint_1): Likewise.
1641 (do_vcmla): Likewise.
1642 (do_vcadd): Likewise.
1644 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1646 * NEWS: Mention Armv8.1-M Mainline and MVE.
1648 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1650 * testsuite/gas/arm/mve-tailpredloop.d: New test.
1651 * testsuite/gas/arm/mve-tailpredloop.s: New test.
1652 * testsuite/gas/arm/mve-vabav.d: New test.
1653 * testsuite/gas/arm/mve-vabav.s: New test.
1654 * testsuite/gas/arm/mve-vabd.d: New test.
1655 * testsuite/gas/arm/mve-vabd.s: New test.
1656 * testsuite/gas/arm/mve-vabsneg.d: New test.
1657 * testsuite/gas/arm/mve-vabsneg.s: New test.
1658 * testsuite/gas/arm/mve-vadc.d: New test.
1659 * testsuite/gas/arm/mve-vadc.s: New test.
1660 * testsuite/gas/arm/mve-vaddlv.d: New test.
1661 * testsuite/gas/arm/mve-vaddlv.s: New test.
1662 * testsuite/gas/arm/mve-vaddsub.d: New test.
1663 * testsuite/gas/arm/mve-vaddsub.s: New test.
1664 * testsuite/gas/arm/mve-vaddv.d: New test.
1665 * testsuite/gas/arm/mve-vaddv.s: New test.
1666 * testsuite/gas/arm/mve-vand.d: New test.
1667 * testsuite/gas/arm/mve-vand.s: New test.
1668 * testsuite/gas/arm/mve-vbic.d: New test.
1669 * testsuite/gas/arm/mve-vbic.s: New test.
1670 * testsuite/gas/arm/mve-vbrsr.d: New test.
1671 * testsuite/gas/arm/mve-vbrsr.s: New test.
1672 * testsuite/gas/arm/mve-vcadd.d: New test.
1673 * testsuite/gas/arm/mve-vcadd.s: New test.
1674 * testsuite/gas/arm/mve-vcls.d: New test.
1675 * testsuite/gas/arm/mve-vcls.s: New test.
1676 * testsuite/gas/arm/mve-vclz.d: New test.
1677 * testsuite/gas/arm/mve-vclz.s: New test.
1678 * testsuite/gas/arm/mve-vcmla.d: New test.
1679 * testsuite/gas/arm/mve-vcmla.s: New test.
1680 * testsuite/gas/arm/mve-vcmp.d: New test.
1681 * testsuite/gas/arm/mve-vcmp.s: New test.
1682 * testsuite/gas/arm/mve-vcmul.d: New test.
1683 * testsuite/gas/arm/mve-vcmul.s: New test.
1684 * testsuite/gas/arm/mve-vcvt-1.d: New test.
1685 * testsuite/gas/arm/mve-vcvt-1.s: New test.
1686 * testsuite/gas/arm/mve-vcvt-2.d: New test.
1687 * testsuite/gas/arm/mve-vcvt-2.s: New test.
1688 * testsuite/gas/arm/mve-vcvt-3.d: New test.
1689 * testsuite/gas/arm/mve-vcvt-3.s: New test.
1690 * testsuite/gas/arm/mve-vcvt-4.d: New test.
1691 * testsuite/gas/arm/mve-vcvt-4.s: New test.
1692 * testsuite/gas/arm/mve-vddup.d: New test.
1693 * testsuite/gas/arm/mve-vddup.s: New test.
1694 * testsuite/gas/arm/mve-vdup.d: New test.
1695 * testsuite/gas/arm/mve-vdup.s: New test.
1696 * testsuite/gas/arm/mve-veor.d: New test.
1697 * testsuite/gas/arm/mve-veor.s: New test.
1698 * testsuite/gas/arm/mve-vfma-vfms.d: New test.
1699 * testsuite/gas/arm/mve-vfma-vfms.s: New test.
1700 * testsuite/gas/arm/mve-vfmas.d: New test.
1701 * testsuite/gas/arm/mve-vfmas.s: New test.
1702 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
1703 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
1704 * testsuite/gas/arm/mve-vhcadd.d: New test.
1705 * testsuite/gas/arm/mve-vhcadd.s: New test.
1706 * testsuite/gas/arm/mve-vmax-vmin.d: New test.
1707 * testsuite/gas/arm/mve-vmax-vmin.s: New test.
1708 * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
1709 * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
1710 * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
1711 * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
1712 * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
1713 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
1714 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
1715 * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
1716 * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
1717 * testsuite/gas/arm/mve-vmla.d: New test.
1718 * testsuite/gas/arm/mve-vmla.s: New test.
1719 * testsuite/gas/arm/mve-vmladav.d: New test.
1720 * testsuite/gas/arm/mve-vmladav.s: New test.
1721 * testsuite/gas/arm/mve-vmlaldav.d: New test.
1722 * testsuite/gas/arm/mve-vmlaldav.s: New test.
1723 * testsuite/gas/arm/mve-vmlalv.d: New test.
1724 * testsuite/gas/arm/mve-vmlalv.s: New test.
1725 * testsuite/gas/arm/mve-vmlas.d: New test.
1726 * testsuite/gas/arm/mve-vmlas.s: New test.
1727 * testsuite/gas/arm/mve-vmlav.d: New test.
1728 * testsuite/gas/arm/mve-vmlav.s: New test.
1729 * testsuite/gas/arm/mve-vmlsdav.d: New test.
1730 * testsuite/gas/arm/mve-vmlsdav.s: New test.
1731 * testsuite/gas/arm/mve-vmlsldav.d: New test.
1732 * testsuite/gas/arm/mve-vmlsldav.s: New test.
1733 * testsuite/gas/arm/mve-vmov-1.d: New test.
1734 * testsuite/gas/arm/mve-vmov-1.s: New test.
1735 * testsuite/gas/arm/mve-vmov-2.d: New test.
1736 * testsuite/gas/arm/mve-vmov-2.s: New test.
1737 * testsuite/gas/arm/mve-vmul.d: New test.
1738 * testsuite/gas/arm/mve-vmul.s: New test.
1739 * testsuite/gas/arm/mve-vmulh.d: New test.
1740 * testsuite/gas/arm/mve-vmulh.s: New test.
1741 * testsuite/gas/arm/mve-vmullbt.d: New test.
1742 * testsuite/gas/arm/mve-vmullbt.s: New test.
1743 * testsuite/gas/arm/mve-vmvn.d: New test.
1744 * testsuite/gas/arm/mve-vmvn.s: New test.
1745 * testsuite/gas/arm/mve-vorn.d: New test.
1746 * testsuite/gas/arm/mve-vorn.s: New test.
1747 * testsuite/gas/arm/mve-vorr.d: New test.
1748 * testsuite/gas/arm/mve-vorr.s: New test.
1749 * testsuite/gas/arm/mve-vpnot.d: New test.
1750 * testsuite/gas/arm/mve-vpnot.s: New test.
1751 * testsuite/gas/arm/mve-vpsel.d: New test.
1752 * testsuite/gas/arm/mve-vpsel.s: New test.
1753 * testsuite/gas/arm/mve-vpt.d: New test.
1754 * testsuite/gas/arm/mve-vpt.s: New test.
1755 * testsuite/gas/arm/mve-vqabsneg.s: New test.
1756 * testsuite/gas/arm/mve-vqaddsub.d: New test.
1757 * testsuite/gas/arm/mve-vqaddsub.s: New test.
1758 * testsuite/gas/arm/mve-vqdmladh.d: New test.
1759 * testsuite/gas/arm/mve-vqdmladh.s: New test.
1760 * testsuite/gas/arm/mve-vqdmlah.d: New test.
1761 * testsuite/gas/arm/mve-vqdmlah.s: New test.
1762 * testsuite/gas/arm/mve-vqdmlash.d: New test.
1763 * testsuite/gas/arm/mve-vqdmlash.s: New test.
1764 * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
1765 * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
1766 * testsuite/gas/arm/mve-vqdmulh.d: New test.
1767 * testsuite/gas/arm/mve-vqdmulh.s: New test.
1768 * testsuite/gas/arm/mve-vqdmull.d: New test.
1769 * testsuite/gas/arm/mve-vqdmull.s: New test.
1770 * testsuite/gas/arm/mve-vqmovn.d: New test.
1771 * testsuite/gas/arm/mve-vqmovn.s: New test.
1772 * testsuite/gas/arm/mve-vqrshl.d: New test.
1773 * testsuite/gas/arm/mve-vqrshl.s: New test.
1774 * testsuite/gas/arm/mve-vqrshrn.d: New test.
1775 * testsuite/gas/arm/mve-vqrshrn.s: New test.
1776 * testsuite/gas/arm/mve-vqshl.d: New test.
1777 * testsuite/gas/arm/mve-vqshl.s: New test.
1778 * testsuite/gas/arm/mve-vrev.d: New test.
1779 * testsuite/gas/arm/mve-vrev.s: New test.
1780 * testsuite/gas/arm/mve-vrint.d: New test.
1781 * testsuite/gas/arm/mve-vrint.s: New test.
1782 * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
1783 * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
1784 * testsuite/gas/arm/mve-vrshl.d: New test.
1785 * testsuite/gas/arm/mve-vrshl.s: New test.
1786 * testsuite/gas/arm/mve-vsbc.d: New test.
1787 * testsuite/gas/arm/mve-vsbc.s: New test.
1788 * testsuite/gas/arm/mve-vshl.d: New test.
1789 * testsuite/gas/arm/mve-vshl.s: New test.
1790 * testsuite/gas/arm/mve-vshlc.d: New test.
1791 * testsuite/gas/arm/mve-vshlc.s: New test.
1792 * testsuite/gas/arm/mve-vshll.d: New test.
1793 * testsuite/gas/arm/mve-vshll.s: New test.
1794 * testsuite/gas/arm/mve-vshr.d: New test.
1795 * testsuite/gas/arm/mve-vshr.s: New test.
1796 * testsuite/gas/arm/mve-vshrn.d: New test.
1797 * testsuite/gas/arm/mve-vshrn.s: New test.
1798 * testsuite/gas/arm/mve-vsli.d: New test.
1799 * testsuite/gas/arm/mve-vsli.s: New test.
1800 * testsuite/gas/arm/mve-vsri.d: New test.
1801 * testsuite/gas/arm/mve-vsri.s: New test.
1802 * testsuite/gas/arm/mve-vstld.d: New test.
1803 * testsuite/gas/arm/mve-vstld.s: New test.
1804 * testsuite/gas/arm/mve-vstrldr-1.d: New test.
1805 * testsuite/gas/arm/mve-vstrldr-1.s: New test.
1806 * testsuite/gas/arm/mve-vstrldr-2.d: New test.
1807 * testsuite/gas/arm/mve-vstrldr-2.s: New test.
1808 * testsuite/gas/arm/mve-vstrldr-3.d: New test.
1809 * testsuite/gas/arm/mve-vstrldr-3.s: New test.
1811 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1813 * config/tc-arm.c (T16_32_TAB): Add new instructions.
1814 (do_t_loloop): Changed to handle tail predication variants.
1815 (md_apply_fix): Likewise.
1816 (insns): Add entries for MVE mnemonics.
1817 * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
1818 * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
1819 * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
1820 * testsuite/gas/arm/mve-tailpredloop.d: New test.
1822 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1824 * config/tc-arm.c (do_mve_vshll): New encoding function.
1825 (do_mve_vshlc): Likewise.
1826 (insns): Add entries for MVE mnemonics.
1827 * testsuite/gas/arm/mve-vshlc-bad.d: New test.
1828 * testsuite/gas/arm/mve-vshlc-bad.l: New test.
1829 * testsuite/gas/arm/mve-vshlc-bad.s: New test.
1830 * testsuite/gas/arm/mve-vshll-bad.d: New test.
1831 * testsuite/gas/arm/mve-vshll-bad.l: New test.
1832 * testsuite/gas/arm/mve-vshll-bad.s: New test.
1834 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1836 * config/tc-arm.c (enum operand_parse_code): Add new operand.
1837 (parse_operands): Handle new operand.
1838 (do_neon_shl_imm): Accept MVE variants.
1839 (do_neon_shl): Likewise.
1840 (do_neon_qshl_imm): Likewise.
1841 (do_neon_qshl): Likewise.
1842 (do_neon_qshlu_imm): Likewise.
1844 * testsuite/gas/arm/mve-vqshl-bad.d: New test.
1845 * testsuite/gas/arm/mve-vqshl-bad.l: New test.
1846 * testsuite/gas/arm/mve-vqshl-bad.s: New test.
1847 * testsuite/gas/arm/mve-vshl-bad.d: New test.
1848 * testsuite/gas/arm/mve-vshl-bad.l: New test.
1849 * testsuite/gas/arm/mve-vshl-bad.s: New test.
1851 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1853 * config/tc-arm.c (do_neon_sli): Accept MVE variants.
1854 (do_neon_sri): Likewise.
1855 (do_neon_rev): Likewise.
1856 (do_neon_rshift_round_imm): Likewise.
1858 * testsuite/gas/arm/mve-vrev-bad.d: New test.
1859 * testsuite/gas/arm/mve-vrev-bad.l: New test.
1860 * testsuite/gas/arm/mve-vrev-bad.s: New test.
1861 * testsuite/gas/arm/mve-vshr-bad.d: New test.
1862 * testsuite/gas/arm/mve-vshr-bad.l: New test.
1863 * testsuite/gas/arm/mve-vshr-bad.s: New test.
1864 * testsuite/gas/arm/mve-vsli-bad.d: New test.
1865 * testsuite/gas/arm/mve-vsli-bad.l: New test.
1866 * testsuite/gas/arm/mve-vsli-bad.s: New test.
1867 * testsuite/gas/arm/mve-vsri-bad.d: New test.
1868 * testsuite/gas/arm/mve-vsri-bad.l: New test.
1869 * testsuite/gas/arm/mve-vsri-bad.s: New test.
1871 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1873 * config/tc-arm.c (do_vrint_1): Accept MVE variants.
1874 (insns): Change entries to accept MVE variants.
1875 * testsuite/gas/arm/mve-vrint-bad.d: New test.
1876 * testsuite/gas/arm/mve-vrint-bad.l: New test.
1877 * testsuite/gas/arm/mve-vrint-bad.s: New test.
1879 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1881 * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
1882 M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
1883 M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
1884 M_MNEM_vqrshrunb): New instruction encodings.
1885 (do_mve_vshrn): New encoding function.
1886 (insns): Add entries for MVE mnemonics.
1887 * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
1888 * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
1889 * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
1890 * testsuite/gas/arm/mve-vshrn-bad.d: New test.
1891 * testsuite/gas/arm/mve-vshrn-bad.l: New test.
1892 * testsuite/gas/arm/mve-vshrn-bad.s: New test.
1894 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1896 * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
1897 M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
1898 (do_mve_vqmovn): New encoding function.
1899 (do_neon_rshl): Change to accepte MVE variants.
1900 (insns): Change entries and add new for MVE mnemonics.
1901 * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
1902 * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
1903 * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
1904 * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
1905 * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
1906 * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
1907 * testsuite/gas/arm/mve-vrshl-bad.d: New test.
1908 * testsuite/gas/arm/mve-vrshl-bad.l: New test.
1909 * testsuite/gas/arm/mve-vrshl-bad.s: New test.
1911 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1913 * config/tc-arm.c (enum operand_parse_code): Add new operand.
1914 (parse_operands): Handle new operand.
1915 (do_mve_vqdmull): New encoding function.
1916 (insns): Add entry for MVE mnemonics.
1917 * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
1918 * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
1919 * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
1921 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1923 * config/tc-arm.c (enum operand_parse_code): Add new operand.
1924 (parse_operands): Handle new operand.
1925 (mve_encode_qqr): Handle new instructions.
1926 (do_neon_qdmulh): Add support for MVE variants.
1927 (do_neon_qrdmlah): Likewise.
1928 (do_mve_vqdmlah): New encoding function.
1929 (insns): Change entries and add new entries for MVE mnemonics.
1930 * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
1931 * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
1932 * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
1934 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1936 * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
1937 (insns): Add entries for MVE mnemonics.
1938 * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
1939 * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
1940 * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
1941 * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
1942 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
1943 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
1945 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1947 * config/tc-arm.c (do_mve_vpsel): New encoding function.
1948 (do_mve_vpnot): Likewise.
1949 (insns): Add entries for MVE mnemonics.
1950 * testsuite/gas/arm/mve-vpnot-bad.d: New test.
1951 * testsuite/gas/arm/mve-vpnot-bad.l: New test.
1952 * testsuite/gas/arm/mve-vpnot-bad.s: New test.
1953 * testsuite/gas/arm/mve-vpsel-bad.d: New test.
1954 * testsuite/gas/arm/mve-vpsel-bad.l: New test.
1955 * testsuite/gas/arm/mve-vpsel-bad.s: New test.
1957 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1959 * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
1960 (do_neon_sat_abs_neg): Likewise.
1962 * testsuite/gas/arm/mve-vmvn-bad.d: New test.
1963 * testsuite/gas/arm/mve-vmvn-bad.l: New test.
1964 * testsuite/gas/arm/mve-vmvn-bad.s: New test.
1965 * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
1966 * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
1967 * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
1969 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1971 * config/tc-arm.c (do_mve_vmlas): New encoding function.
1972 (do_mve_vmulh): Likewise.
1973 (insns): Add entries for MVE mnemonics.
1974 * testsuite/gas/arm/mve-vmlas-bad.d: New test.
1975 * testsuite/gas/arm/mve-vmlas-bad.l: New test.
1976 * testsuite/gas/arm/mve-vmlas-bad.s: New test.
1977 * testsuite/gas/arm/mve-vmulh-bad.d: New test.
1978 * testsuite/gas/arm/mve-vmulh-bad.l: New test.
1979 * testsuite/gas/arm/mve-vmulh-bad.s: New test.
1981 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1983 * config/tc-arm.c (enum operand_parse_code): New operand.
1984 (parse_operands): Handle new operand.
1985 (mve_encode_qqr): Handle new instructions.
1986 (do_neon_dyadic_i64_su): Accept MVE variants.
1987 (neon_dyadic_misc): Likewise.
1988 (do_neon_mac_maybe_scalar): Likewise.
1989 (do_neon_mul): Likewise.
1990 (insns): Change to accept MVE variants.
1991 * testsuite/gas/arm/mve-vmla-bad.d: New test.
1992 * testsuite/gas/arm/mve-vmla-bad.l: New test.
1993 * testsuite/gas/arm/mve-vmla-bad.s: New test.
1994 * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
1995 * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
1996 * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
1997 * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
1998 * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
1999 * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
2000 * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
2001 * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
2002 * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
2004 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2006 * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
2007 M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
2008 M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
2009 M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
2010 M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
2011 instruction encodings.
2012 (NEON_SHAPE_DEF): New shape
2013 (mve_encode_rrqq): New encoding helper function.
2014 (do_mve_vmlaldav): New encoding function.
2015 (do_mve_vrmlaldavh): New encoding function.
2016 (insns): Add entries for MVE mnemonics.
2017 * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
2018 * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
2019 * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
2020 * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
2021 * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
2022 * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
2023 * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
2024 * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
2025 * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
2026 * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
2027 * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
2028 * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
2030 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2032 * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
2033 M_MNEM_vminav): New instruction encodings.
2034 (do_mve_vmaxv): New encoding function.
2035 (insns): Add entries for new MVE mnemonics.
2036 * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
2037 * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
2038 * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
2040 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2042 * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
2043 (insns): Add entries for new mnemonics.
2044 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
2045 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
2046 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
2048 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2050 * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
2051 (do_mve_vmaxnma_vminnma): Likewise.
2052 (do_neon_dyadic_if_su): Change to support MVE variants.
2053 (do_vmaxnm): Likewise.
2054 (insns): Change to accept MVE variants and add new.
2055 * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
2056 * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
2057 * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
2058 * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
2059 * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
2060 * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
2061 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
2062 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
2063 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
2064 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
2065 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
2066 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
2068 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2070 * config/tc-arm.c (enum operand_parse_code): New operand.
2071 (parse_operands): Handle new operand.
2072 (mve_encode_qqr): Change to support new instructions.
2073 (enum vfp_or_neon_is_neon_bits): Moved.
2074 (vfp_or_neon_is_neon): Moved.
2075 (check_simd_pred_availability): Moved.
2076 (do_neon_dyadic_i_su): Changed to support MVE variants.
2077 (neon_dyadic_misc): Changed mve_encode_qqr call.
2078 (do_mve_vbrsr): Likewise.
2079 (do_mve_vhcadd): New encoding function.
2080 (insns): Change existing to accept MVE variants and add new.
2081 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
2082 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
2083 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
2084 * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
2085 * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
2086 * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
2088 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2090 * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
2091 (insns): Change to accept MVE variants.
2092 * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
2093 * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
2094 * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
2096 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2098 * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
2099 M_MNEM_viwdup): New instruction encodings.
2100 (NEON_SHAPE_DEF): New shapes.
2101 (do_mve_viddup): New encoding function.
2102 (do_neon_dup): Change to support new MVE variants.
2103 (insns): Change existing to accept MVE variants and add new.
2104 * testsuite/gas/arm/mve-vddup-bad.d: New test.
2105 * testsuite/gas/arm/mve-vddup-bad.l: New test.
2106 * testsuite/gas/arm/mve-vddup-bad.s: New test.
2107 * testsuite/gas/arm/mve-vdup-bad.d: New test.
2108 * testsuite/gas/arm/mve-vdup-bad.l: New test.
2109 * testsuite/gas/arm/mve-vdup-bad.s: New test.
2110 * testsuite/gas/arm/mve-vidup-bad.d: New test.
2111 * testsuite/gas/arm/mve-vidup-bad.l: New test.
2112 * testsuite/gas/arm/mve-vidup-bad.s: New test.
2114 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2116 * config/tc-arm.c (do_mve_vfmas): New encoding function.
2117 (do_neon_cls): Change to support MVE variants.
2118 (do_neon_clz): Change to support MVE variants.
2119 (insns): Change to support MVE variants and add new.
2120 * testsuite/gas/arm/mve-vcls-bad.d: New test.
2121 * testsuite/gas/arm/mve-vcls-bad.l: New test.
2122 * testsuite/gas/arm/mve-vcls-bad.s: New test.
2123 * testsuite/gas/arm/mve-vclz-bad.d: New test.
2124 * testsuite/gas/arm/mve-vclz-bad.l: New test.
2125 * testsuite/gas/arm/mve-vclz-bad.s: New test.
2126 * testsuite/gas/arm/mve-vfmas-bad.d: New test.
2127 * testsuite/gas/arm/mve-vfmas-bad.l: New test.
2128 * testsuite/gas/arm/mve-vfmas-bad.s: New test.
2130 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2132 * config/tc-arm.c (enum operand_parse_code): New operands.
2133 (parse_operands): Handle new operands.
2134 (do_mve_vcmul): New encoding function.
2135 (do_vcmla): Change to support MVE variants.
2136 (do_vcadd): Change to support MVE variants.
2137 (insns): Change existing to support MVE variants and add new.
2138 * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
2139 * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
2140 * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
2141 * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
2142 * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
2143 * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
2144 * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
2145 * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
2146 * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
2147 * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
2148 * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
2149 * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
2150 * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
2151 * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
2152 * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
2153 * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
2154 * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
2155 * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
2157 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2159 * config/tc-arm.c (enum operand_parse_code): New operands.
2160 (parse_operands): Handle new operands.
2161 (enum vfp_or_neon_is_neon_bits): Moved
2162 (vfp_or_neon_is_neon): Moved
2163 (check_simd_pred_availability): Moved.
2164 (do_neon_logic): Change to accept MVE variants.
2165 (insns): Changed to accept MVE variants.
2166 * testsuite/gas/arm/mve-vand-bad.d: New test.
2167 * testsuite/gas/arm/mve-vand-bad.l: New test.
2168 * testsuite/gas/arm/mve-vand-bad.s: New test.
2169 * testsuite/gas/arm/mve-vbic-bad.d: New test.
2170 * testsuite/gas/arm/mve-vbic-bad.l: New test.
2171 * testsuite/gas/arm/mve-vbic-bad.s: New test.
2172 * testsuite/gas/arm/mve-veor-bad.d: New test.
2173 * testsuite/gas/arm/mve-veor-bad.l: New test.
2174 * testsuite/gas/arm/mve-veor-bad.s: New test.
2175 * testsuite/gas/arm/mve-vorn-bad.d: New test.
2176 * testsuite/gas/arm/mve-vorn-bad.l: New test.
2177 * testsuite/gas/arm/mve-vorn-bad.s: New test.
2178 * testsuite/gas/arm/mve-vorr-bad.d: New test.
2179 * testsuite/gas/arm/mve-vorr-bad.l: New test.
2180 * testsuite/gas/arm/mve-vorr-bad.s: New test.
2182 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2184 * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
2185 M_MNEM_vaddva): New instruction encodings.
2186 (mve_encode_rq): New encoding helper function.
2187 (do_mve_vaddlv): New encoding function.
2188 (do_mve_vaddv): New encoding function.
2189 * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
2190 * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
2191 * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
2192 * testsuite/gas/arm/mve-vaddv-bad.d: New test.
2193 * testsuite/gas/arm/mve-vaddv-bad.l: New test.
2194 * testsuite/gas/arm/mve-vaddv-bad.s: New test.
2196 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2198 * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
2199 New instruction encodings.
2200 (do_mve_vadc): New encoding instruction.
2201 (do_mve_vbrsr): Likewise.
2202 (do_mve_vsbc): Likewise.
2203 * testsuite/gas/arm/mve-vadc-bad.d: New test.
2204 * testsuite/gas/arm/mve-vadc-bad.l: New test.
2205 * testsuite/gas/arm/mve-vadc-bad.s: New test.
2206 * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
2207 * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
2208 * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
2209 * testsuite/gas/arm/mve-vsbc-bad.d: New test.
2210 * testsuite/gas/arm/mve-vsbc-bad.l: New test.
2211 * testsuite/gas/arm/mve-vsbc-bad.s: New test.
2213 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2215 * config/tc-arm.c (MVE_BAD_QREG): New error message.
2216 (enum operand_parse_code): Define new operand.
2217 (parse_operands): Handle new operand.
2218 (do_mve_vpt): Change for VPT blocks.
2219 (NEON_SHAPE_DEF): New shape.
2220 (neon_logbits): Moved.
2223 (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
2224 (do_mve_vcmp): New encoding function.
2225 (do_vfp_nsyn_cmp): Changed to support MVE variants.
2226 (insns): Change to support MVE variants of vcmp and add vpt.
2227 * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
2228 * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
2229 * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
2230 * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
2231 * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
2232 * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
2233 * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
2234 * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
2235 * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
2236 * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
2237 * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
2238 * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
2240 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2242 * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
2243 distinguish between types of scalar.
2244 (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
2245 (parse_scalar): Likewise.
2246 (parse_neon_mov): Accept MVE variant.
2247 (po_scalar_or_goto): Make use reg_type.
2248 (parse_operands): Change uses of po_scalar_or_goto.
2249 (do_vfp_sp_monadic): Change to accept MVE variants.
2250 (do_vfp_reg_from_sp): Likewise.
2251 (do_vfp_sp_from_reg): Likewise.
2252 (do_vfp_dp_rd_rm): Likewise.
2253 (do_vfp_dp_rd_rn_rm): Likewise.
2254 (do_vfp_dp_rm_rd_rn): Likewise.
2255 (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
2256 instruction encodings.
2257 (NEON_SHAPE_DEF): New shape.
2258 (do_mve_mov): New encoding fuction.
2259 (do_mve_movn): Likewise.
2260 (do_mve_movl): Likewise.
2261 (do_neon_mov): Change to accept MVE variants.
2263 (insns): Accept new MVE variants and instructions.
2264 * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
2265 * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
2266 * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
2267 * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
2268 * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
2269 * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
2271 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2273 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2274 (parse_operands): Handle new operand.
2275 (do_neon_cvt_1): Handle MVE variants.
2276 (do_neon_cvttb_1): Likewise.
2277 (insns): Accept MVE variants.
2278 * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
2279 * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
2280 * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
2281 * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
2282 * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
2283 * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
2284 * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
2285 * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
2286 * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
2287 * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
2288 * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
2289 * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
2290 * testsuite/gas/arm/mve-vcvt-bad.d: New test.
2291 * testsuite/gas/arm/mve-vcvt-bad.l: New test.
2292 * testsuite/gas/arm/mve-vcvt-bad.s: New test.
2294 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2296 * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
2298 (enum shift_kind): Add SHIFT_UXTW shift kind.
2299 (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
2300 (parse_shift): Handle new shift type.
2301 (parse_address_main): Accept new addressing modes.
2302 (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
2303 M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
2304 instruction encodings.
2305 (do_mve_vstr_vldr_QI): New encoding functions.
2306 (do_mve_vstr_vldr_RQ): Likewise.
2307 (do_mve_vstr_vldr_RI): Likewise.
2308 (do_mve_vstr_vldr): Likewise.
2309 * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
2310 * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
2311 * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
2312 * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
2313 * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
2314 * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
2315 * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
2316 * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
2317 * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
2318 * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
2319 * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
2320 * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
2321 * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
2322 * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
2323 * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
2324 * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
2325 * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
2326 * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
2328 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2330 * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
2331 (BAD_EL_TYPE): New error message.
2332 (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
2333 (parse_address_main): Likewise.
2334 (group_reloc_type): Add GROUP_MVE.
2335 (enum operand_parse_code): Add new operands.
2336 (parse_operands): Handle new operands.
2337 (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
2338 M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
2339 M_MNEM_vld42, M_MNEM_vld43): New encodings.
2340 (do_mve_vst_vld): New encoding function.
2341 (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
2342 (it_fsm_pre_encode): Handle new it_instruction_type
2343 (handle_pred_state): Likewise.
2344 * testsuite/gas/arm/mve-vstld-bad.d: New test.
2345 * testsuite/gas/arm/mve-vstld-bad.l: New test.
2346 * testsuite/gas/arm/mve-vstld-bad.s: New test.
2348 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2350 * config/tc-arm.c (BAD_MVE_AUTO): New error message.
2351 (BAD_MVE_SRCDEST): Likewise.
2352 (mark_feature_used): Diagnose MVE only instructions when in
2353 auto-detection mode or -march=all.
2354 (enum operand_parse_code): Define new operand.
2355 (parse_operands): Handle new operand.
2356 (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
2357 (mve_encode_qqq): New encoding helper function.
2358 (do_mve_vmull): New encoding function.
2359 (insns): Handle new instructions.
2360 * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
2361 * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
2362 * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
2364 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2366 * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
2367 (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
2368 (enum operand_parse_code): Handle new operands.
2369 (parse_operands): Likewise.
2370 (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
2371 M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
2372 M_MNEM_vmlsdavax): Define new encodings.
2373 (NEON_SHAPE_DEF): Add new shape.
2374 (neon_check_type): Use BAD_SIMD_TYPE.
2375 (mve_encode_rqq): New encoding helper function.
2376 (do_mve_vabav, do_mve_vmladav): New encoding functions.
2378 * testsuite/gas/arm/mve-vabav-bad.d: New test.
2379 * testsuite/gas/arm/mve-vabav-bad.l: New test.
2380 * testsuite/gas/arm/mve-vabav-bad.s: New test.
2381 * testsuite/gas/arm/mve-vmladav-bad.d: New test.
2382 * testsuite/gas/arm/mve-vmladav-bad.l: New test.
2383 * testsuite/gas/arm/mve-vmladav-bad.s: New test.
2384 * testsuite/gas/arm/mve-vmlav-bad.d: New test.
2385 * testsuite/gas/arm/mve-vmlav-bad.l: New test.
2386 * testsuite/gas/arm/mve-vmlav-bad.s: New test.
2387 * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
2388 * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
2389 * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
2391 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2393 * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
2394 (insns): Change vabs and vneg entries to accept MVE variants.
2395 * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
2396 * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
2397 * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
2398 * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
2399 * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
2400 * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
2402 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2404 * config/tc-arm.c (enum it_instruction_type): Rename to...
2405 (enum pred_instruction_type): ... this. Include VPT types.
2406 (it_insn_type): Rename to ...
2407 (pred_insn_type): .. this.
2408 (arm_it): Change comment.
2409 (enum arm_reg_type): Add new value.
2410 (reg_expected_msgs): New entry.
2411 (asm_opcode): Add mayBeVecPred member.
2412 (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
2413 MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
2414 (arm_vcond_hsh): New table for vector condition codes.
2415 (now_it): Rename to ...
2416 (now_pred): ... this.
2417 (now_it_compatible): Rename to ...
2418 (now_pred_compatible): ... this.
2419 (in_it_block): Rename to ...
2420 (in_pred_block): ... this.
2421 (handle_it_state): Rename to ...
2422 (handle_pred_state): ... this. And change it to accept VPT blocks.
2423 (set_it_insn_type): Rename to ...
2424 (set_pred_insn_type): ... this.
2425 (set_it_insn_type_nonvoid): Rename to ...
2426 (set_pred_insn_type_nonvoid): ... this.
2427 (set_it_insn_type_last): Rename to ...
2428 (set_pred_insn_type_last): ... this.
2429 (record_feature_use): Moved.
2430 (mark_feature_used): Likewise.
2431 (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
2432 (emit_insn): Use renamed functions and variables.
2433 (enum operand_parse_code): Add new operands.
2434 (parse_operands): Handle new operands.
2435 (do_scalar_fp16_v82_encode): Change predication detection.
2436 (do_it): Use renamed functions and variables.
2437 (do_t_add_sub): Likewise.
2438 (do_t_arit3): Likewise.
2439 (do_t_arit3c): Likewise.
2440 (do_t_blx): Likewise.
2441 (do_t_branch): Likewise.
2442 (do_t_bkpt_hlt1): Likewise.
2443 (do_t_branch23): Likewise.
2444 (do_t_bx): Likewise.
2445 (do_t_bxj): Likewise.
2446 (do_t_cond): Likewise.
2447 (do_t_csdb): Likewise.
2448 (do_t_cps): Likewise.
2449 (do_t_cpsi): Likewise.
2450 (do_t_cbz): Likewise.
2451 (do_t_it): Likewise.
2452 (do_mve_vpt): New function to handle VPT blocks.
2453 (encode_thumb2_multi): Use renamed functions and variables.
2454 (do_t_ldst): Use renamed functions and variables.
2455 (do_t_mov_cmp): Likewise.
2456 (do_t_mvn_tst): Likewise.
2457 (do_t_mul): Likewise.
2458 (do_t_nop): Likewise.
2459 (do_t_neg): Likewise.
2460 (do_t_rsb): Likewise.
2461 (do_t_setend): Likewise.
2462 (do_t_shift): Likewise.
2463 (do_t_smc): Likewise.
2464 (do_t_tb): Likewise.
2465 (do_t_udf): Likewise.
2466 (do_t_loloop): Likewise.
2467 (do_neon_cvt_1): Likewise.
2468 (do_vfp_nsyn_cvt_fpv8): Likewise.
2469 (do_vsel): Likewise.
2470 (do_vmaxnm): Likewise.
2471 (do_vrint_1): Likewise.
2472 (do_crypto_2op_1): Likewise.
2473 (do_crypto_3op_1): Likewise.
2474 (do_crc32_1): Likewise.
2475 (it_fsm_pre_encode): Likewise.
2476 (it_fsm_post_encode): Likewise.
2477 (force_automatic_it_block_close): Likewise.
2478 (check_it_blocks_finished): Likewise.
2479 (check_pred_blocks_finished): Likewise.
2480 (arm_cleanup): Likewise.
2481 (now_it_add_mask): Rename to ...
2482 (now_pred_add_mask): ... this. And use new variables and functions.
2483 (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
2484 (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
2485 (neon_check_type): Generalize error message.
2486 (mve_encode_qqr): New MVE generic encoding function.
2487 (neon_dyadic_misc): Change to accept MVE variants.
2488 (do_neon_dyadic_if_su): Likewise.
2489 (do_neon_addsub_if_i): Likewise.
2490 (do_neon_dyadic_long): Likewise.
2491 (vfp_or_neon_is_neon): Add extra checks.
2492 (check_simd_pred_availability): Helper function to check SIMD
2493 instruction availability with respect to predication.
2494 (enum opcode_tag): New suffix value.
2495 (opcode_lookup): Change to handle VPT blocks.
2496 (new_automatic_it_block): Rename to ...
2497 (close_automatic_it_block): ...this.
2498 (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
2499 toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
2500 NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
2502 (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
2503 (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
2504 variants. Add entries for vscclrm, and vpst.
2505 (md_begin): Add arm_vcond_hsh initialization.
2506 * config/tc-arm.h (enum it_state): Rename to...
2507 (enum pred_state): ...this.
2508 (struct current_it): Rename to...
2509 (struct current_pred): ...this.
2510 (enum pred_type): New enum.
2511 (struct arm_segment_info_type): Use current_pred.
2512 * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
2513 * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
2514 * testsuite/gas/arm/dotprod-illegal.l: Update error message.
2515 * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
2516 * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
2517 * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
2518 * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
2519 * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
2520 * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
2521 * testsuite/gas/arm/mve-vpst-bad.d: New test.
2522 * testsuite/gas/arm/mve-vpst-bad.l: New test.
2523 * testsuite/gas/arm/mve-vpst-bad.s: New test.
2524 * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
2526 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2528 * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
2529 (armv8_1m_main_ext_table): Add new extensions.
2530 (aeabi_set_public_attributes): Translate new features to new build attributes.
2531 (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
2532 * doc/c-arm.texi: Document new extensions and new build attribute.
2534 2019-05-15 John Darrington <john@darrington.wattle.id.au>
2536 * config/tc-s12z.c (register_prefix): New variable. (md_show_usage,
2537 md_parse_option): parse the new option.
2538 (lex_reg_name): Scan the prefix if one is set.
2539 * doc/c-s12z.texi (S12Z-Opts): Document the new option.
2540 * testsuite/gas/s12z/reg-prefix.d: New file.
2541 * testsuite/gas/s12z/reg-prefix.s: New file.
2542 * testsuite/gas/s12z/s12z.exp: Add them.
2544 2019-05-14 John Darrington <john@darrington.wattle.id.au>
2546 * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
2548 2019-05-15 Alan Modra <amodra@gmail.com>
2550 * config/tc-csky.c (md_convert_frag): Initialise trailing
2551 padding for COND_JUMP_PIC.
2553 2019-05-15 Alan Modra <amodra@gmail.com>
2555 * dwarf2dbg.c: Whitespace fixes.
2556 (get_filenum): Don't strdup "file". Adjust error message.
2557 (dwarf2_directive_filename): Use an unsigned type for "num".
2558 Catch truncation of file number and overflow of get_filenum
2559 XRESIZEVEC multiplication. Delete dead code.
2561 2019-05-15 Alan Modra <amodra@gmail.com>
2564 * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
2565 chars in setting endp.
2567 2019-05-14 Nick Clifton <nickc@redhat.com>
2570 * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
2571 illegal register numbers.
2573 2019-05-10 Nick Clifton <nickc@redhat.com>
2576 * macro.c (get_any_string): Increase size of buffer used to hold
2577 decimal value of expression result.
2578 * dw2gencfi.c (get_debugseg_name): Handle an empty name.
2579 * dwarf2dbg.c (get_filenum): Catch integer wraparound when
2580 extending allocate file array.
2581 (dwarf2_directive_filename): Add extra checks of the computed file
2583 * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
2585 (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
2587 * config/tc-i386.c (i386_output_nops): Catch an attempt to
2588 generate nops of negative lengths.
2589 * as.h (MAX_LITTLENUMS): Move definition to here from...
2590 * config/atof-ieee.c: ...here.
2591 * config/tc-aarch64.c: ...here.
2592 * config/tc-arc.c: ...here.
2593 * config/tc-arm.c: ...here.
2594 * config/tc-epiphany.c: ...here.
2595 * config/tc-i386.c: ...here.
2596 * config/tc-ia64.c: ...here. (And correct the value).
2597 * config/tc-m32c.c: ...here.
2598 * config/tc-m32r.c: ...here.
2599 * config/tc-metag.c: ...here.
2600 * config/tc-microblaze.c: ...here.
2601 * config/tc-nds32.c: ...here.
2602 * config/tc-or1k.c: ...here.
2603 * config/tc-score.c: ...here.
2604 * config/tc-score7.c: ...here.
2605 * config/tc-tic4x.c: ...here.
2606 * config/tc-tilegx.c: ...here.
2607 * config/tc-tilepro.c: ...here.
2608 * config/tc-visium.c: ...here.
2609 * config/tc-sh.c (md_assemble): Add check for an instruction with
2611 * config/tc-mips.c (mips_lookup_insn): Add check for very short
2613 * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
2615 (tic54x_start_line_hook): Check for an empty line.
2616 (next_line_shows_parallel): Do not walk off the end of the string.
2617 (tic54x_macro_start): Check for too much macro nesting.
2618 (tic54x_start_label): Add label_start parameter. Use this
2619 parameter to check the first character of the label.
2621 * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
2622 line_start variable to tic54x_start_label.
2624 2019-05-10 Faraz Shahbazker <fshahbazker@wavecomp.com>
2626 * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
2627 Add expansions for MIPS r6.
2628 * testsuite/gas/mips/add.s: Enable tests for R6.
2629 * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
2630 * testsuite/gas/mips/mipsr6@add.d: Likewise.
2631 * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
2632 * gas/testsuite/gas/mips/mips.exp: Run the new test.
2634 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2636 * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
2638 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2640 * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
2641 * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
2642 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
2643 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
2644 * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
2645 * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
2646 * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
2647 * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
2648 * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
2649 * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
2650 * testsuite/gas/aarch64/sve2.d: Test new instructions.
2651 * testsuite/gas/aarch64/sve2.s: Test new instructions.
2653 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2655 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
2658 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2660 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
2663 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2665 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
2668 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2670 * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
2671 (parse_address_main): Account for new addressing mode [Zn.S, Xm].
2672 (parse_operands): Handle new SVE_ADDR_ZX operand.
2674 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2676 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
2679 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2681 * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
2683 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
2685 * config/tc-aarch64.c: Add command line architecture feature flags
2686 "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
2687 * doc/c-aarch64.texi: Document new architecture feature flags.
2689 2019-05-08 Alan Modra <amodra@gmail.com>
2691 * testsuite/gas/elf/dwarf2-1.s,
2692 * testsuite/gas/elf/dwarf2-2.s,
2693 * testsuite/gas/elf/dwarf2-5.s,
2694 * testsuite/gas/elf/dwarf2-7.s,
2695 * testsuite/gas/elf/dwarf2-8.s,
2696 * testsuite/gas/elf/dwarf2-9.s,
2697 * testsuite/gas/elf/dwarf2-10.s,
2698 * testsuite/gas/elf/dwarf2-11.s,
2699 * testsuite/gas/elf/dwarf2-12.s,
2700 * testsuite/gas/elf/dwarf2-13.s,
2701 * testsuite/gas/elf/dwarf2-14.s,
2702 * testsuite/gas/elf/dwarf2-15.s,
2703 * testsuite/gas/elf/dwarf2-16.s,
2704 * testsuite/gas/elf/dwarf2-17.s,
2705 * testsuite/gas/elf/dwarf2-18.s,
2706 * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
2708 * testsuite/gas/elf/dwarf2-1.d,
2709 * testsuite/gas/elf/dwarf2-2.d,
2710 * testsuite/gas/elf/dwarf2-5.d,
2711 * testsuite/gas/elf/dwarf2-7.d,
2712 * testsuite/gas/elf/dwarf2-8.d,
2713 * testsuite/gas/elf/dwarf2-9.d,
2714 * testsuite/gas/elf/dwarf2-10.d,
2715 * testsuite/gas/elf/dwarf2-11.d,
2716 * testsuite/gas/elf/dwarf2-12.d,
2717 * testsuite/gas/elf/dwarf2-13.d,
2718 * testsuite/gas/elf/dwarf2-14.d,
2719 * testsuite/gas/elf/dwarf2-15.d,
2720 * testsuite/gas/elf/dwarf2-16.d,
2721 * testsuite/gas/elf/dwarf2-17.d,
2722 * testsuite/gas/elf/dwarf2-18.d,
2723 * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
2724 Remove avr, pru, tile, xtensa from xfails. Update expected output.
2725 * testsuite/gas/elf/elf.exp: Sort targets.
2726 (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
2727 for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
2728 * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
2730 2019-05-08 Alan Modra <amodra@gmail.com>
2732 * config/tc-xtensa.c (opt_linkrelax): New variable.
2733 (md_parse_option): Set it here.
2734 (md_begin): Copy opt_linkrelax to linkrelax.
2736 2019-05-07 Alexandre Oliva <aoliva@redhat.com>
2738 * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
2739 * testsuite/gas/elf/dwarf2-19.d: Likewise.
2741 2019-05-07 Alan Modra <amodra@gmail.com>
2743 * symbols.c (use_complex_relocs_for): Formatting. Factor out
2746 2019-05-06 Andrew Bennett <andrew.bennett@imgtec.com>
2747 Faraz Shahbazker <fshahbazker@wavecomp.com>
2749 * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
2750 (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
2751 (mips_after_parse_args): Translate EVA to EVA_R6.
2752 * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
2753 * testsuite/gas/mips/eva.s: Likewise.
2754 * testsuite/gas/mips/ase-errors-1.l: Check errors for
2756 * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
2758 2019-05-06 Alan Modra <amodra@gmail.com>
2760 * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
2763 2019-05-06 Alan Modra <amodra@gmail.com>
2765 * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
2766 relocs, and VLE sdarel relocs.
2767 * testsuite/gas/ppc/power4.d: Adjust.
2769 2019-05-05 Alexandre Oliva <aoliva@redhat.com>
2771 * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
2772 views of prior locs.
2773 (dwarf2_gen_line_info_1): Skip heads.
2774 (size_inc_line_addr, emit_inc_line_addr): Drop
2775 DW_LNS_advance_pc for zero addr delta.
2776 (dwarf2_finish): Assign views for heads of segments.
2777 * testsuite/gas/elf/dwarf2-19.d: New.
2778 * testsuite/gas/elf/dwarf2-19.s: New.
2779 * testsuite/gas/elf/elf.exp: Test it.
2781 2019-05-04 Alan Modra <amodra@gmail.com>
2783 * config/tc-m32c.c (insn_size): Delete static var.
2784 (md_begin): Don't set it.
2785 (m32c_md_end): Delete.
2786 (md_assemble): Add insn_size auto var.
2787 * config/tc-m32c.h (md_end): Don't define.
2788 (m32c_md_end): Delete.
2789 (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
2790 * testsuite/gas/all/align.d: Remove m32c from notarget list.
2791 * testsuite/gas/all/incbin.d: Likewise.
2792 * testsuite/gas/elf/dwarf2-11.d: Likewise.
2793 * testsuite/gas/macros/semi.d: Likewise.
2794 * testsuite/gas/all/gas.exp (do_comment): Similarly.
2796 2019-05-02 H.J. Lu <hongjiu.lu@intel.com>
2799 * config/tc-i386.c (process_suffix): Issue a warning to IRET
2800 without a suffix for .code16gcc.
2801 * testsuite/gas/i386/jump16.s: Add tests for iretX.
2802 * testsuite/gas/i386/jump16.d: Updated.
2803 * testsuite/gas/i386/jump16.e: New file.
2805 2019-05-01 Sudakshina Das <sudi.das@arm.com>
2807 * config/tc-aarch64.c (parse_operands): Add case for
2808 AARCH64_OPND_TME_UIMM16.
2809 (aarch64_features): Add "tme".
2810 * doc/c-aarch64.texi: Document the same.
2811 * testsuite/gas/aarch64/tme-invalid.d: New test.
2812 * testsuite/gas/aarch64/tme-invalid.l: New test.
2813 * testsuite/gas/aarch64/tme-invalid.s: New test.
2814 * testsuite/gas/aarch64/tme.d: New test.
2815 * testsuite/gas/aarch64/tme.s: New test.
2817 2019-04-29 John Darrington <john@darrington.wattle.id.au>
2819 * testsuite/gas/s12z/truncated.d: New file.
2820 * testsuite/gas/s12z/truncated.s: New file.
2821 * testsuite/gas/s12z/s12z.exp: Add new test.
2823 2019-04-26 Andrew Bennett <andrew.bennett@imgtec.com>
2824 Faraz Shahbazker <fshahbazker@wavecomp.com>
2826 * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
2827 M_SCDP_AB>: New cases and expansions for paired instructions.
2828 * testsuite/gas/mips/llpscp-32.s: New test source.
2829 * testsuite/gas/mips/llpscp-64.s: Likewise.
2830 * testsuite/gas/mips/llpscp-32.d: New test.
2831 * testsuite/gas/mips/llpscp-64.d: Likewise.
2832 * testsuite/gas/mips/mips.exp: Run the new tests.
2833 * testsuite/gas/mips/r6.s: Add new instructions to test source.
2834 * testsuite/gas/mips/r6-64.s: Likewise.
2835 * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
2836 * testsuite/gas/mips/r6-64-n64.d: Likewise.
2837 * testsuite/gas/mips/r6-n32.d: Likewise.
2838 * testsuite/gas/mips/r6-n64.d: Likwwise.
2839 * testsuite/gas/mips/r6.d: Likewise.
2841 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
2844 * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
2845 to IRET for .code16gcc.
2846 * testsuite/gas/i386/jump16.s: Add IRET tests.
2847 * testsuite/gas/i386/jump16.d: Updated.
2849 2019-04-25 Alexandre Oliva <aoliva@redhat.com>
2850 Alan Modra <amodra@gmail.com>
2853 * frags.c (frag_gtoffset_p): New.
2854 * frags.h (frag_gtoffset_p): Declare it.
2855 * expr.c (resolve_expression): Use it.
2857 2019-04-24 Alan Modra <amodra@gmail.com>
2860 * symbols.c (resolve_symbol_value): When handling symbols
2861 marked as sy_flags.resolved, return correct value for the
2862 case of expression symbols left as an O_symbol expression.
2863 Merge O_symbol code handling undefined and common symbols with
2864 code handling special cases of expression symbols. Use
2865 seg_left to test for undefined and common symbols. Don't
2866 leave an O_symbol expression when X_add_symbol resolves to
2867 the absolute_section. Init final_val later.
2868 * testsuite/gas/mmix/basep-7.d: Adjust expected output.
2870 2019-04-24 John Darrington <john@darrington.wattle.id.au>
2872 * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
2873 and BCLR instructions with an invalid mode.
2874 * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
2876 2019-04-19 Nick Clifton <nickc@redhat.com>
2879 * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
2880 to the relaxation function.
2881 * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
2882 number of iterations. Make sure that our internal iteration limit
2883 does not exceed this external iteration limit.
2885 2019-04-18 Matthew Fortune <matthew.fortune@mips.com>
2887 * config/tc-mips.c (match_non_zero_reg_operand): Update
2889 * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
2891 2019-04-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2893 * config/tc-msp430.c (msp430_make_init_symbols): Define
2894 __crt0_run_{preinit,init,fini}_array symbols if
2895 .{preinit,init,fini}_array sections exist.
2896 * testsuite/gas/msp430/fini-array.d: New test.
2897 * testsuite/gas/msp430/init-array.d: New test.
2898 * testsuite/gas/msp430/preinit-array.d: New test.
2899 * testsuite/gas/msp430/fini-array.s: New test source.
2900 * testsuite/gas/msp430/init-array.s: New test source.
2901 * testsuite/gas/msp430/preinit-array.s: New test source.
2902 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
2904 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2906 * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
2907 symbol when .lower.bss or .either.bss sections exist.
2908 Define __crt0_movedata when .lower.data or .either.data sections exist.
2909 * testsuite/gas/msp430/either-data-bss-sym.d: New test.
2910 * testsuite/gas/msp430/low-data-bss-sym.d: New test.
2911 * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
2912 * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
2913 * testsuite/gas/msp430/msp430.exp: Run new tests.
2914 Enable large code model when running -mdata-region={upper,either}
2917 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2919 * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
2920 OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
2921 (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
2922 OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
2924 (md_show_usage): Likewise.
2925 (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
2926 "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
2927 (md_longopts): Likewise.
2928 (warn_eint_nop): Update comment.
2929 (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
2930 prev_insn_is_dint or we are assembling for 430 ISA.
2931 (msp430_operands): Only call warn_unsure_interrupt if
2932 do_unknown_interrupt_nops == TRUE.
2933 * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
2934 * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
2935 * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
2936 * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
2937 * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
2939 * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
2940 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
2942 2019-04-16 Alan Modra <amodra@gmail.com>
2944 * testsuite/gas/all/weakref1.d: xfail nds32.
2946 2019-04-16 Alan Modra <amodra@gmail.com>
2948 * testsuite/gas/all/gas.exp: Remove ns32k xfails.
2949 * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
2951 2019-04-16 Alan Modra <amodra@gmail.com>
2953 * write.h: Don't include bit_fix.h.
2954 (struct fix): Rearrange some fields. Delete fx_im_disp and
2955 fx_bit_fixP. Use bitfields for fx_size and fx_pcrel_adjust.
2956 * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
2957 (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
2958 (print_fixup): Don't print im_disp.
2959 * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
2961 * config/tc-dlx.c (md_apply_fix): Remove wrong debug code. Set
2962 fx_no_overflow when fx_bit_fixP.
2963 * config/tc-dlx.h: Include bit_fix.h.
2964 (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
2965 * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
2966 fx_no_overflow when bit_fixP.
2967 * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
2968 (fix_im_disp, fix_bit_fixP): Adjust to suit.
2969 (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
2971 2019-04-16 Alan Modra <amodra@gmail.com>
2973 * write.h (struct fix <fx_where>): Make unsigned.
2974 (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
2975 * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
2976 "size" parameters unsigned long.
2977 (fix_new_internal): Likewise. Adjust error format string to suit.
2978 * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
2979 * config/tc-sparc.c (md_apply_fix): Likewise.
2980 * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
2981 * config/tc-score7.c (s7_convert_frag): Likewise.
2983 2019-04-16 Alan Modra <amodra@gmail.com>
2985 * frags.h (struct frag <fr_fix>): Use unsigned type.
2986 * frags.c (frag_new): Assert that current size exceeds
2987 old_frags_var_max_size.
2988 * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
2989 * listing.c (calc_hex): Likewise.
2990 * write.c (cvt_frag_to_fill, write_relocs): Likewise.
2991 * config/tc-arc.c (md_convert_frag): Likewise.
2992 * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
2993 * config/tc-mips.c (md_convert_frag): Likewise.
2994 * config/tc-rl78.c (md_convert_frag): Likewise.
2995 * config/tc-rx.c (md_convert_frag): Likewise.
2996 * config/tc-sparc.c (md_apply_fix): Likewise.
2997 * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
2998 (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
3000 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3002 * config/tc-arm.c (parse_sys_vldr_vstr): New function.
3003 (OP_VLDR): New enum operand_parse_code enumerator.
3004 (parse_operands): Add logic for OP_VLDR.
3005 (do_t_vldr_vstr_sysreg): New function.
3006 (do_vldr_vstr): Likewise.
3007 (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
3008 (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
3009 Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
3010 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
3011 uses of VLDR and VSTR.
3012 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
3014 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
3016 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
3019 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3021 * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
3022 (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3024 (parse_vfp_reg_list): Add new partial_match parameter. Set
3025 *partial_match to TRUE if at least one element in the register list has
3026 matched. Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3027 register lists which expect VPR as last element in the list.
3028 (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
3030 (s_arm_unwind_save_vfp): Likewise.
3031 (enum operand_parse_code): New OP_VRSDVLST enumerator.
3032 (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
3033 Handle new OP_VRSDVLST case.
3034 (do_t_vscclrm): New function.
3035 (insns): New entry for VSCCLRM instruction.
3036 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
3038 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
3039 for above instructions.
3040 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
3042 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
3043 for above instructions.
3045 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3047 * config/tc-arm.c (enum reg_list_els): Define earlier and add
3048 REGLIST_RN and REGLIST_CLRM enumerators.
3049 (parse_reg_list): Add etype parameter to distinguish between regular
3050 core register list and CLRM register list. Add logic to
3051 recognize CLRM register list.
3052 (parse_vfp_reg_list): Assert type is not for core register list.
3053 (s_arm_unwind_save_core): Update call to parse_reg_list to new
3055 (enum operand_parse_code): Declare OP_CLRMLST enumerator.
3056 (parse_operands): Update call to parse_reg_list to new prototype. Add
3057 logic for OP_CLRMLST.
3058 (encode_thumb2_ldmstm): Rename into ...
3059 (encode_thumb2_multi): This. Add do_io parameter. Add logic to
3060 encode CLRM and guard LDM/STM only code by do_io.
3061 (do_t_ldmstm): Adapt to use encode_thumb2_multi.
3062 (do_t_push_pop): Likewise.
3063 (do_t_clrm): New function.
3064 (insns): Define CLRM.
3065 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
3066 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
3067 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
3068 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
3069 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
3071 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3072 Andre Vieira <andre.simoesdiasvieira@arm.com>
3074 * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
3075 for the LR operand and optional LR operand.
3076 (parse_operands): Add switch cases for OP_LR and OP_oLR for
3077 both type checking and value checking.
3078 (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
3079 (v8_1_loop_reloc): New helper function for handling labels
3080 for the low overhead loop instructions.
3081 (do_t_loloop): New function to encode DLS, WLS and LE.
3082 (insns): New entries for WLS, DLS and LE.
3083 (md_pcrel_from_section): New switch case
3084 for BFD_RELOC_ARM_THUMB_LOOP12.
3085 (md_appdy_fix): Likewise.
3086 (tc_gen_reloc): Likewise.
3087 * testsuite/gas/arm/armv8_1-m-tloop.s: New.
3088 * testsuite/gas/arm/armv8_1-m-tloop.d: New.
3089 * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
3090 * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
3091 * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
3093 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3094 Andre Vieira <andre.simoesdiasvieira@arm.com>
3096 * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
3097 (do_t_v8_1_branch): New switch case for bfcsel.
3099 (insns): New instruction for bfcsel.
3100 (md_pcrel_from_section): New switch case
3101 for BFD_RELOC_THUMB_PCREL_BFCSEL.
3102 (md_appdy_fix): Likewise
3103 (tc_gen_reloc): Likewise.
3104 * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
3105 * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
3107 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3109 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3110 BFD_RELOC_ARM_THUMB_BF13.
3111 (md_appdy_fix): Likewise.
3112 (tc_gen_reloc): Likewise.
3114 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3115 Andre Vieira <andre.simoesdiasvieira@arm.com>
3117 * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
3118 (do_t_v8_1_branch): New switch case for bfl.
3119 (insns): New instruction for bfl.
3120 * testsuite/gas/arm/armv8_1-m-bfl.d: New.
3121 * testsuite/gas/arm/armv8_1-m-bfl.s: New.
3122 * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
3123 * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
3124 * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
3125 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
3126 * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
3128 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3130 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3131 BFD_RELOC_ARM_THUMB_BF19.
3132 (md_appdy_fix): Likewise.
3133 (tc_gen_reloc): Likewise.
3135 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3137 * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
3138 (do_t_v8_1_branch): New switch cases for bfx and bflx.
3139 (insns): New instruction for bfx and bflx.
3140 * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
3141 * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
3142 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
3143 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
3144 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
3146 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3147 Andre Vieira <andre.simoesdiasvieira@arm.com>
3149 * config/tc-arm.c (T16_32_TAB): New entries for bf.
3150 (do_t_branch_future): New.
3151 (insns): New instruction for bf.
3152 * testsuite/gas/arm/armv8_1-m-bf.d: New.
3153 * testsuite/gas/arm/armv8_1-m-bf.s: New.
3154 * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
3155 * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
3156 * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
3157 * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
3158 * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
3160 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3162 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3163 BFD_RELOC_ARM_THUMB_BF17.
3164 (md_appdy_fix): Likewise.
3165 (tc_gen_reloc): Likewise.
3167 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3169 * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
3170 (arm_it): Member reloc renamed relocs and updated to an array.
3171 Rest: Replace all occurrences of reloc to relocs[0].
3173 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3175 * config/tc-arm.c (md_pcrel_from_section): New switch case
3176 for BFD_RELOC_THUMB_PCREL_BRANCH5.
3177 (v8_1_branch_value_check): New function to check branch
3179 (md_appdy_fix): New switch case for
3180 BFD_RELOC_THUMB_PCREL_BRANCH5.
3181 (tc_gen_reloc): Likewise.
3183 2019-04-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
3185 * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
3186 (armv8_1m_main_ext_table): New extension table.
3187 (arm_archs): Use the new extension table.
3188 * doc/c-arm.texi: Add missing arch and document new extensions.
3189 * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
3190 * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
3191 * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
3193 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3195 * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
3196 Tag_CPU_arch build attribute value. Reindent.
3197 (get_aeabi_cpu_arch_from_fset): Update assert.
3198 (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
3199 * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
3201 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3203 * config/tc-mips.c (mips_cpu_info_table): Add i6500. Update
3204 default ASEs for i6400.
3205 * doc/c-mips.texi (-march): Document i6500.
3206 * testsuite/gas/mips/elf_mach_i6400.d: New test.
3207 * testsuite/gas/mips/elf_mach_i6500.d: New test.
3208 * testsuite/gas/mips/mips.exp: Run the new tests.
3210 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3212 * config/tc-mips.c (mips_set_options) <init_ase>: New field.
3213 (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
3214 (file_mips_check_options): Propagate initial ASE settings.
3215 (mips_after_parse_args, parse_code_option): Track the initial
3216 ASE settings for a CPU.
3217 (s_mipsset): Restore the initial ASE settings when reverting
3218 to the default arch.
3219 * testsuite/gas/mips/elf_mach_p6600.d: New test.
3220 * testsuite/gas/mips/mips.exp: Run the new test.
3222 2019-04-12 John Darrington <john@darrington.wattle.id.au>
3224 config/tc-s12z.h: Remove definition of macro TC_M68K
3226 2019-04-01 John Darrington <john@darrington.wattle.id.au>
3228 config/tc-s12z.c: Use bfd_boolean where appropriate.
3230 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3232 * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
3233 * testsuite/gas/xtensa/loop-relax.d: New test definition.
3234 * testsuite/gas/xtensa/loop-relax.s: New test source.
3235 * testsuite/gas/xtensa/text-section-literals-1a.d: New test
3237 * testsuite/gas/xtensa/text-section-literals-2.d: New test
3239 * testsuite/gas/xtensa/text-section-literals-2.s: New test
3241 * testsuite/gas/xtensa/text-section-literals-2a.d: New test
3243 * testsuite/gas/xtensa/text-section-literals-3.d: New test
3245 * testsuite/gas/xtensa/text-section-literals-3.s: New test
3247 * testsuite/gas/xtensa/text-section-literals-4.d: New test
3249 * testsuite/gas/xtensa/text-section-literals-4.s: New test
3251 * testsuite/gas/xtensa/text-section-literals-4a.d: New test
3254 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3256 * testsuite/gas/xtensa/all.exp: Remove all expect-based
3257 tests and all explicit run_dump_test / run_list_test
3258 invocations. Add run_dump_tests for all .d files in the
3260 * testsuite/gas/xtensa/entry_align.d: New test definition.
3261 * testsuite/gas/xtensa/entry_align.l: New test output.
3262 * testsuite/gas/xtensa/entry_misalign.d: New test definition.
3263 * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
3264 * testsuite/gas/xtensa/j_too_far.d: New test definition.
3265 * testsuite/gas/xtensa/j_too_far.l: New test output.
3266 * testsuite/gas/xtensa/loop_align.d: New test definition.
3267 * testsuite/gas/xtensa/loop_misalign.d: New test definition.
3268 * testsuite/gas/xtensa/trampoline-2.d: New test definition.
3269 * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
3270 * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
3272 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3274 * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
3276 (get_literal_pool_location): Only search for the literal pool
3277 when auto litpools is used, otherwise take one recorded in the
3278 tc_segment_info_data.
3279 (xtensa_assign_litpool_addresses): New function.
3280 (xtensa_move_literals): Don't duplicate 'literal pool location
3281 required...' error message. Call xtensa_assign_litpool_addresses.
3283 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3285 * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
3286 (xtensa_mark_literal_pool_location): Don't add fill frag to literal
3287 section that records literal pool location.
3288 (md_begin): Call xtensa_mark_literal_pool_location when text
3289 section literals or auto litpools are used.
3290 (xtensa_elf_section_change_hook): Call
3291 xtensa_mark_literal_pool_location when text section literals or
3292 auto litpools are used, there's no literal pool location defined
3293 for the current section and it's not .init or .fini.
3294 * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
3295 * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
3296 * testsuite/gas/xtensa/auto-litpools.d: Likewise.
3298 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3300 * config/tc-aarch64.c (process_omitted_operand): Add case for
3302 (parse_operands): Likewise.
3303 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
3304 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3305 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3306 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3308 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3310 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
3311 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3312 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3313 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3315 2019-04-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3317 * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
3318 * testsuite/gas/i386/solaris/solaris.exp: New driver.
3319 * testsuite/gas/i386/solaris/reloc64.d,
3320 testsuite/gas/i386/solaris/x86-64-jump.d,
3321 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
3322 testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
3323 testsuite/gas/i386/solaris/x86-64-nop-3.d,
3324 testsuite/gas/i386/solaris/x86-64-nop-4.d,
3325 testsuite/gas/i386/solaris/x86-64-nop-5.d,
3326 testsuite/gas/i386/solaris/x86-64-relax-2.d,
3327 testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
3328 * testsuite/gas/i386/reloc64.d,
3329 testsuite/gas/i386/x86-64-jump.d,
3330 testsuite/gas/i386/x86-64-mpx-branch-1.d,
3331 testsuite/gas/i386/x86-64-mpx-branch-2.d,
3332 testsuite/gas/i386/x86-64-nop-3.d,
3333 testsuite/gas/i386/x86-64-nop-4.d,
3334 testsuite/gas/i386/x86-64-nop-5.d,
3335 testsuite/gas/i386/x86-64-relax-2.d,
3336 testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
3338 2019-04-10 Alan Modra <amodra@gmail.com>
3340 * config/te-cloudabi.h: New file.
3341 * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
3342 rather than TARGET_OS to select cloudabi.
3343 * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
3344 * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
3346 2019-04-09 Robert Suchanek <robert.suchanek@mips.com>
3348 * testsuite/gas/mips/mips.exp: Run hwr-names test.
3349 * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
3351 * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
3353 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3355 * config/tc-i386.c (output_insn): Support
3356 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
3357 * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
3358 * testsuite/gas/i386/property-2.d: Updated.
3359 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3361 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3363 * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
3364 * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
3367 2019-04-05 H.J. Lu <hongjiu.lu@intel.com>
3369 * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
3370 * testsuite/gas/i386/property-2.d: New file.
3371 * testsuite/gas/i386/property-2.s: Likewise.
3372 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3374 2019-04-05 Xuepeng Guo <xuepeng.guo@intel.com>
3376 * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
3377 (cpu_noarch): Add noavx512_bf16.
3378 * doc/c-i386.texi: Document avx512_bf16.
3379 * testsuite/gas/i386/avx512_bf16.d: New file.
3380 * testsuite/gas/i386/avx512_bf16.s: Likewise.
3381 * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
3382 * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
3383 * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
3384 * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
3385 * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
3386 * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
3387 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
3388 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
3389 * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
3390 * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
3391 * testsuite/gas/i386/i386.exp: Add BF16 related tests.
3393 2019-04-05 Alan Modra <amodra@gmail.com>
3395 * testsuite/gas/ppc/bc.s,
3396 * testsuite/gas/ppc/bcat.d,
3397 * testsuite/gas/ppc/bcaterr.d,
3398 * testsuite/gas/ppc/bcaterr.l,
3399 * testsuite/gas/ppc/bcy.d,
3400 * testsuite/gas/ppc/bcyerr.d,
3401 * testsuite/gas/ppc/bcyerr.l: New tests.
3402 * testsuite/gas/ppc/ppc.exp: Run them.
3404 2019-04-05 Alan Modra <amodra@gmail.com>
3406 * testsuite/gas/ppc/476.d: Remove trailing spaces.
3407 * testsuite/gas/ppc/a2.d: Likewise.
3408 * testsuite/gas/ppc/booke.d: Likewise.
3409 * testsuite/gas/ppc/booke_xcoff.d: Likewise.
3410 * testsuite/gas/ppc/e500.d: Likewise.
3411 * testsuite/gas/ppc/e500mc.d: Likewise.
3412 * testsuite/gas/ppc/e6500.d: Likewise.
3413 * testsuite/gas/ppc/htm.d: Likewise.
3414 * testsuite/gas/ppc/power6.d: Likewise.
3415 * testsuite/gas/ppc/power8.d: Likewise.
3416 * testsuite/gas/ppc/power9.d: Likewise.
3417 * testsuite/gas/ppc/vle.d: Likewise.
3419 2019-04-04 Peter Bergner <bergner@linux.ibm.com>
3422 * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
3423 btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
3424 bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
3425 bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
3426 bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
3427 bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
3428 bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
3429 bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
3430 bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
3431 beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
3432 bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
3433 buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
3434 bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
3435 bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
3436 bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
3437 bttarl+): Add tests of extended mnemonics.
3438 * testsuite/gas/ppc/power8.d: Likewise. Update previous bctar tests
3439 to expect new extended mnemonics.
3440 * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
3441 to not use illegal BO value. Use a more convenient BI value.
3442 * testsuite/gas/ppc/a2.d: Update tests for new expect output.
3444 2019-04-03 Max Filippov <jcmvbkbc@gmail.com>
3446 * config/tc-xtensa.c (convert_frag_immed): Drop
3447 convert_frag_immed_finish_loop invocation.
3448 (convert_frag_immed_finish_loop): Drop declaration and
3450 * config/xtensa-relax.c (widen_spec_list): Replace loop
3451 widening that uses addi/addmi with widening that uses l32r
3454 2019-04-01 Andre Vieira <andre.simoesdiasvieira@arm.com>
3456 * config/tc-arm.c (arm_ext_table): New struct type.
3457 (arm_arch_option_table): Add new 'arm_ext_table' field.
3458 (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
3459 (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
3460 armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
3461 armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
3462 armv85a_ext_table, armv8m_main_ext_table,
3463 armv8r_ext_table): New architecture extension tables.
3464 (ARM_ARCH_OPT): Add new default field.
3465 (ARM_ARCH_OPT2): New macro.
3466 (arm_archs): Extend some architectures with the new architecture
3467 extension tables mentioned above.
3468 (arm_extensions): Add DEPRECATED comment with instructions to
3470 (arm_parse_extension): Change to use new extension tables.
3471 (arm_parse_cpu): Don't change existing behavior.
3472 (arm_parse_arch): Change to use new extension tables.
3473 * doc/c-arm.texi: Document new architecture extensions.
3474 * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
3475 extension option rather than -mfpu and change expected behaviour to
3477 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
3478 * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
3479 * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
3480 * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
3481 * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
3482 * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
3483 * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
3484 * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
3485 * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
3486 * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
3487 * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
3488 * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
3489 * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
3490 * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
3491 * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
3492 * testsuite/gas/arm/armv8m.main+fp.d: New.
3493 * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
3494 * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
3495 * testsuite/gas/arm/attr-ext-fpv5.d: New.
3496 * testsuite/gas/arm/attr-ext-idiv.d: New.
3497 * testsuite/gas/arm/attr-ext-mp.d: New.
3498 * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
3499 * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
3500 * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
3501 * testsuite/gas/arm/attr-ext-sec.d: New.
3502 * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
3503 * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
3504 * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
3505 * testsuite/gas/arm/attr-ext-vfpv3.d: New.
3506 * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
3507 * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
3508 * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
3509 * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
3510 * testsuite/gas/arm/attr-ext-vfpv4.d: New.
3511 * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
3512 * testsuite/gas/arm/fpv5-d16.s: New.
3513 * testsuite/gas/arm/fpv5-sp-d16.s: New.
3515 2019-03-28 Alan Modra <amodra@gmail.com>
3518 * testsuite/gas/ppc/476.d: Update mtfsb*.
3519 * testsuite/gas/ppc/a2.d: Likewise.
3521 2019-03-21 Alan Modra <amodra@gmail.com>
3523 * emul.h (struct emulation): Delete strip_underscore.
3524 * emul-target.h (emul_strip_underscore): Don't define.
3525 (emul_struct_name): Update initialization.
3527 2019-03-21 Alan Modra <amodra@gmail.com>
3529 * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
3530 * config/tc-pdp11.c (md_apply_fix): Likewise.
3531 * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
3532 BFD_RELOC_16, and BFD_RELOC_64.
3533 * testsuite/gas/all/gas.exp: Move target exclusions for forward
3534 test, but not cr16, to..
3535 * testsuite/gas/all/forward.d: ..here, with explanation. Remove
3536 d10v, d30v, and pdp11 xfails.
3538 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3540 * config/tc-i386.c (optimize_encoding): Don't check AVX for
3541 EVEX vector load/store optimization. Check both operands for
3542 ZMM register. Update EVEX vector load/store opcode check.
3543 Choose EVEX Disp8 over VEX Disp32.
3544 * testsuite/gas/i386/optimize-1.d: Updated.
3545 * testsuite/gas/i386/optimize-1a.d: Likewise.
3546 * testsuite/gas/i386/optimize-2.d: Likewise.
3547 * testsuite/gas/i386/optimize-4.d: Likewise.
3548 * testsuite/gas/i386/optimize-5.d: Likewise.
3549 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
3550 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
3551 * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
3552 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
3553 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
3554 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
3555 * testsuite/gas/i386/optimize-1.s: Add ZMM register load
3557 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
3559 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3562 * config/tc-i386.c (optimize_encoding): Check only
3563 cpu_arch_flags.bitfield.cpuavx512vl.
3564 * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
3565 * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
3567 * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
3568 * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
3570 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3573 * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
3574 x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
3575 Remove optimize-6c and x86-64-optimize-7c tests.
3576 * testsuite/gas/i386/noavx-3.l: Updated.
3577 * testsuite/gas/i386/noavx-4.d: Likewise.
3578 * testsuite/gas/i386/noavx-5.d: Likewise.
3579 * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
3580 * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
3581 * testsuite/gas/i386/nosse-5.s: Likewise.
3582 * testsuite/gas/i386/optimize-6a.d: Removed.
3583 * testsuite/gas/i386/optimize-6c.d: Likewise.
3584 * testsuite/gas/i386/optimize-7.d: Likewise.
3585 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
3586 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
3587 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
3588 * testsuite/gas/i386/optimize-6a.l: New file.
3589 * testsuite/gas/i386/optimize-6a.s: Likewise.
3590 * testsuite/gas/i386/optimize-7.l: Likewise.
3591 * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
3592 * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
3593 * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
3595 2019-03-18 Alan Modra <amodra@gmail.com>
3597 * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
3598 * as.c (macro_expr): Likewise.
3599 * macro.c (buffer_and_nest): Likewise.
3600 * read.c (temp_ilp): Remove FIXME.
3602 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
3604 * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
3605 * testsuite/gas/i386/avx512bw-intel.d: Likewise.
3606 * testsuite/gas/i386/avx512bw.d: Likewise.
3607 * testsuite/gas/i386/avx512f-intel.d: Likewise.
3608 * testsuite/gas/i386/avx512f.d: Likewise.
3609 * testsuite/gas/i386/disp32.d: Likewise.
3610 * testsuite/gas/i386/intel-regs.d: Likewise.
3611 * testsuite/gas/i386/pseudos.d: Likewise.
3612 * testsuite/gas/i386/x86-64-disp32.d: Likewise.
3613 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
3615 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
3618 * config/tc-i386.c (optimize_encoding): Encode 128-bit and
3619 256-bit EVEX vector register load/store instructions as VEX
3620 vector register load/store instructions for -O1.
3621 * doc/c-i386.texi: Update -O1 documentation.
3622 * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
3623 * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
3624 load/store instructions.
3625 * testsuite/gas/i386/optimize-2.s: Likewise.
3626 * testsuite/gas/i386/optimize-3.s: Likewise.
3627 * testsuite/gas/i386/optimize-5.s: Likewise.
3628 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
3629 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
3630 * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
3631 * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
3632 * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
3633 * testsuite/gas/i386/optimize-1.d: Updated.
3634 * testsuite/gas/i386/optimize-2.d: Likewise.
3635 * testsuite/gas/i386/optimize-3.d: Likewise.
3636 * testsuite/gas/i386/optimize-4.d: Likewise.
3637 * testsuite/gas/i386/optimize-5.d: Likewise.
3638 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
3639 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
3640 * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
3641 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
3642 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
3643 * testsuite/gas/i386/optimize-7.d: New file.
3644 * testsuite/gas/i386/optimize-7.s: Likewise.
3645 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
3646 * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
3648 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
3650 * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
3651 VEX/EVEX vector register clearing instructions with 128-bit VEX
3652 vector register clearing instructions at -O1.
3653 * doc/c-i386.texi: Update -O1 and -O2 documentation.
3654 * testsuite/gas/i386/i386.exp: Run optimize-1a and
3656 * testsuite/gas/i386/optimize-1a.d: New file.
3657 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
3659 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
3662 * config/tc-i386.c: Include <limits.h> if it exists and try
3663 including <sys/param.h> if we have it.
3664 (INT_MAX): Define if not defined.
3665 (md_parse_option): Set optimize to INT_MAX for -Os.
3666 * testsuite/gas/i386/optimize-2.s: Add a test.
3667 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
3668 * testsuite/gas/i386/optimize-2.d: Updated.
3669 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
3671 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
3674 * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
3675 with 128-bit VEX encoding only when AVX is enabled and with
3676 128-bit EVEX encoding only when AVX512VL is enabled.
3677 * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
3678 * testsuite/gas/i386/optimize-6.s: New file.
3679 * testsuite/gas/i386/optimize-6a.d: Likewise.
3680 * testsuite/gas/i386/optimize-6b.d: Likewise.
3681 * testsuite/gas/i386/optimize-6c.d: Likewise.
3682 * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
3683 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
3684 * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
3685 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
3686 * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
3688 2019-03-15 Li Hao <li.hao296@zte.com.cn>
3691 * config/tc-i386.c (parse_insn): Check mnemp before using it to
3692 determine if a suffix can be trimmed.
3694 2019-03-13 Christian Eggers <ceggers@gmx.de>
3696 * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
3698 2019-03-13 Christian Eggers <ceggers@gmx.de>
3700 * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
3702 2019-03-13 Christian Eggers <ceggers@gmx.de>
3704 * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
3706 2019-03-13 Christian Eggers <ceggers@gmx.de>
3708 * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
3710 2019-03-13 Christian Eggers <ceggers@gmx.de>
3712 * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
3713 (out_debug_aranges, out_debug_info): Likewise.
3715 2019-03-13 Christian Eggers <ceggers@gmx.de>
3717 * symbols.h (symbol_temp_new_now_octets): Declare.
3718 (symbol_set_value_now_octets, symbol_octets_p): Declare.
3719 * symbols.c (struct symbol_flags): New member sy_octets.
3720 (symbol_temp_new_now_octets): New function.
3721 (resolve_symbol_value): Return octets instead of bytes if
3723 (symbol_set_value_now_octets): New function.
3724 (symbol_octets_p): New function.
3726 2019-03-13 Christian Eggers <ceggers@gmx.de>
3728 * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
3730 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com>
3732 * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
3733 * testsuite/gas/s390/zarch-arch13.d: Likewise.
3735 2019-02-27 Matthew Malcomson <matthew.malcomson@arm.com>
3737 * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
3738 * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
3739 * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
3740 * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
3742 * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
3743 * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
3745 2019-02-24 Alan Modra <amodra@gmail.com>
3747 * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
3749 2019-02-24 Alan Modra <amodra@gmail.com>
3752 * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
3753 of section to ensure file contents cover aligned section size.
3755 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
3757 * config/tc-arm.c (arm_cpus): Add neoverse-n1.
3758 * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
3760 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
3762 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
3763 * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
3765 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
3767 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
3768 * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
3770 2019-02-19 Paul Hua <paul.hua.gm@gmail.com>
3772 * NEWS: Mention -m[no-]fix-loongson3-llsc.
3773 * configure.ac: Add --enable-mips-fix-loongson3-llsc.
3774 Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
3775 * config.in: Regenerated.
3776 * configure: Likewise.
3777 * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
3779 (options): New OPTION_FIX_LOONGSON3_LLSC,
3780 OPTION_NO_FIX_LOONGSON3_LLSC.
3781 (md_longopts): Add -m[no-]fix-loongson3-llsc.
3782 (md_begin): Initialize sync insn.
3783 (fix_loongson3_llsc): New.
3784 (append_insn): Call fix_loongson3_llsc.
3785 (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
3786 OPTION_NO_FIX_LOONGSON3_LLSC.
3787 (md_show_usage): Display -m[no-]fix-loongson3-llsc.
3788 * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
3789 --enable-mips-fix-loongson3-llsc=[yes|no].
3791 2019-02-10 H.J. Lu <hongjiu.lu@intel.com>
3794 * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
3796 * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
3798 * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
3800 * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
3801 * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
3802 * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
3803 * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
3804 * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
3805 * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
3806 * config/tc-rx.h (TC_FRAG_INIT): Likewise.
3807 * config/tc-score.h (TC_FRAG_INIT): Likewise.
3808 * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
3809 * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
3810 * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
3811 * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
3812 (alignment ? ((1 << alignment) - 1) : 1)
3813 (i386_tc_frag_data): Add max_bytes.
3814 (TC_FRAG_INIT): Add and track max_bytes.
3815 (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
3816 fragP->tc_frag_data.max_bytes.
3817 * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
3819 2019-02-08 Jim Wilson <jimw@sifive.com>
3821 * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
3822 (riscv_ip) <'C'>: Add 'z' support.
3824 2019-02-07 Tamar Christina <tamar.christina@arm.com>
3826 * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
3828 * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
3829 * testsuite/gas/arm/hlt.d: New test.
3830 * testsuite/gas/arm/hlt.s: New test.
3832 2019-02-07 Tamar Christina <tamar.christina@arm.com>
3834 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
3835 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
3837 2019-02-07 Tamar Christina <tamar.christina@arm.com>
3840 * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
3841 * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
3843 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
3845 * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
3846 64-bit boundaries for the GR6.
3847 * testsuite/gas/visium/allinsn_gr6.s: Tweak.
3848 * testsuite/gas/visium/allinsn_gr6.d: Likewise.
3849 * testsuite/gas/visium/bra-1.d: New test.
3850 * testsuite/gas/visium/bra-1.s: Likewise.
3851 * testsuite/gas/visium/visium.exp: Run bra-1 test.
3853 2019-01-31 John Darrington <john@darrington.wattle.id.au>
3855 * config/tc-s12z.c (lex_imm): Add new argument exp_o.
3856 (emit_reloc): New function.
3857 (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
3858 can be either 2 bytes or 3 bytes long.
3859 * testsuite/gas/s12z/mov-imm-reloc.d: New file.
3860 * testsuite/gas/s12z/mov-imm-reloc.s: New file.
3861 * testsuite/gas/s12z/s12z.exp: Add them.
3863 2019-01-31 John Darrington <john@darrington.wattle.id.au>
3865 * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
3866 * testsuite/gas/s12z/pc-rel-bad.d: New file.
3867 * testsuite/gas/s12z/pc-rel-bad.l: New file.
3868 * testsuite/gas/s12z/pc-rel-bad.s: New file.
3869 * testsuite/gas/s12z/pc-rel-good.d: New file.
3870 * testsuite/gas/s12z/pc-rel-good.s: New file.
3871 * testsuite/gas/s12z/s12z.exp: Add them.
3873 2019-01-31 John Darrington <john@darrington.wattle.id.au>
3875 * config/tc-s12z.c (tfr): Emit warning if operands are the same.
3876 * testsuite/gas/s12z/exg.d: New test case.
3877 * testsuite/gas/s12z/exg.l: New file.
3879 2019-01-31 John Darrington <john@darrington.wattle.id.au>
3881 * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
3882 immediate mode operands should be permitted.
3883 * testsuite/s12z/imm-dest.d: New file.
3884 * testsuite/s12z/imm-dest.l: New file.
3885 * testsuite/s12z/imm-dest.s: New file.
3886 * testsuite/s12z/s12z.exp: Add them.
3888 2019-01-31 Andreas Krebbel <krebbel@linux.ibm.com>
3890 * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
3891 * doc/c-s390.texi: Document arch13 march option.
3892 * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
3893 * testsuite/gas/s390/zarch-arch13.d: New test.
3894 * testsuite/gas/s390/zarch-arch13.s: New test.
3895 * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
3898 2019-01-31 Alan Modra <amodra@gmail.com>
3900 * config/tc-alpha.c (md_apply_fix): Correct range checks for
3901 BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
3902 * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
3903 * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
3905 2019-01-28 Max Filippov <jcmvbkbc@gmail.com>
3907 * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
3908 symbols as done in md_apply_fix.
3909 * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
3911 2019-01-28 Nick Clifton <nickc@redhat.com>
3913 * po/fr.po: Updated French translation.
3914 * po/ru.po: Updated Russian translation.
3916 2019-01-28 Alan Modra <amodra@gmail.com>
3918 * configure.ac (ac_checking): Set from bfd/development.sh
3919 development variable.
3920 * configure: Regenerate.
3922 2019-01-25 Sudakshina Das <sudi.das@arm.com>
3924 * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
3925 stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
3926 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
3927 stg, stzg, st2g and stz2g.
3928 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3929 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3930 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3932 2019-01-25 Sudakshina Das <sudi.das@arm.com>
3934 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
3935 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3936 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3937 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3939 2019-01-25 Sudakshina Das <sudi.das@arm.com>
3940 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
3942 * config/tc-aarch64.c (parse_address_main): Remove support for
3943 [base]! address expression.
3944 (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
3945 (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
3946 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
3948 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3949 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3950 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3952 2019-01-25 Wu Heng <wu.heng@zte.com.cn>
3955 * macro.c (getstring): Check array bound before accessing.
3957 2019-01-25 Alan Modra <amodra@gmail.com>
3961 * read.c (stringer): Delete assertion.
3963 2019-01-21 Nick Clifton <nickc@redhat.com>
3965 * po/uk.po: Updated Ukranian translation.
3967 2019-01-19 Nick Clifton <nickc@redhat.com>
3969 * config.in: Regenerate.
3970 * configure: Regenerate.
3971 * po/gas.pot: Regenerate.
3973 2018-06-24 Nick Clifton <nickc@redhat.com>
3975 2.32 branch created.
3977 2019-01-17 Tamar Christina <tamar.christina@arm.com>
3979 * testsuite/gas/arm/archv6t2-1-pe.d: New test.
3980 * testsuite/gas/arm/archv6t2-1.d: Skip pe.
3981 * testsuite/gas/arm/csdb.d: Skip pe.
3982 * testsuite/gas/arm/sb-thumb1-pe.d: New test.
3983 * testsuite/gas/arm/sb-thumb1.d: Skip pe.
3984 * testsuite/gas/arm/sb-thumb2-pe.d: New test.
3985 * testsuite/gas/arm/sb-thumb2.d: Skip pe.
3986 * testsuite/gas/arm/udf.d: Skip pe.
3988 2019-01-16 Kito Cheng <kito@andestech.com>
3990 * testsuite/gas/riscv/attribute-empty.d: New.
3992 2019-01-16 Kito Cheng <kito@andestech.com>
3993 Nelson Chu <nelson@andestech.com>
3995 * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
3996 (riscv_set_options): Add `arch_attr` field.
3997 (riscv_opts): Set default value for arch_attr.
3998 (riscv_write_out_arch_attr): New.
3999 (riscv_set_public_attributes): Likewise.
4000 (riscv_md_end): Likewise.
4001 (riscv_convert_symbolic_attribute): Likewise.
4002 (s_riscv_attribute): Likewise.
4003 (explicit_arch_attr): Likewise.
4004 (riscv_pseudo_table): Add .attribute to the table.
4005 (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
4006 enumeration constants.
4007 (md_longopts): Add `march-attr' and `mno-arch-attr' options.
4008 (md_parse_option): Handle the new options.
4009 (md_show_usage): Document the `march-attr' option.
4010 * config/tc-riscv.h (md_end): Define as riscv_md_end
4011 (riscv_md_end): Declare.
4012 (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
4013 riscv_convert_symbolic_attribute.
4014 (riscv_convert_symbolic_attribute): Declare.
4015 (start_assemble): Declare.
4016 * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
4017 * testsuite/gas/elf/section2.e-riscv: New.
4018 * testsuite/gas/riscv/attribute-01.d: New test
4019 * testsuite/gas/riscv/attribute-02.d: Likewise.
4020 * testsuite/gas/riscv/attribute-03.d: Likewise.
4021 * testsuite/gas/riscv/attribute-04.d: Likewise.
4022 * testsuite/gas/riscv/attribute-04.s: Likewise.
4023 * testsuite/gas/riscv/attribute-05.d: Likewise.
4024 * testsuite/gas/riscv/attribute-05.s: Likewise.
4025 * testsuite/gas/riscv/attribute-06.d: Likewise.
4026 * testsuite/gas/riscv/attribute-06.s: Likewise.
4027 * testsuite/gas/riscv/attribute-07.d: Likewise.
4028 * testsuite/gas/riscv/attribute-07.s: Likewise.
4029 * testsuite/gas/riscv/attribute-08.d: Likewise.
4030 * testsuite/gas/riscv/attribute-08.s: Likewise.
4031 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
4032 * testsuite/gas/riscv/attribute-unknown.s: Likewise.
4033 * testsuite/gas/riscv/empty.l: Likewise.
4034 * doc/c-riscv.texi (.attribute): Add documentation.
4035 * configure.ac (--enable-default-riscv-attribute): New options.
4036 * configure: Re-generate.
4037 * config.in: Re-generate.
4039 2019-01-16 John Darrington <john@darrington.wattle.id.au>
4041 * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
4042 before the contents.
4043 * testsuite/gas/s12z/labels.d: New file.
4044 * testsuite/gas/s12z/labels.s: New file.
4045 * testsuite/gas/s12z/s12z.exp: Add them.
4046 * config/tc-s12z.c (tfr): Change as_bad to as_warn.
4047 Also fix message typo and semantics.
4048 * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
4050 * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
4053 2019-01-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4055 * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
4056 (insns) [ARM_VARIANT]: Modified.
4057 (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
4059 * testsuite/gas/arm/archv6t2-1.d: New test.
4060 * testsuite/gas/arm/archv6t2-1.s: Likewise.
4061 * testsuite/gas/arm/archv6t2-2.d: Likewise.
4063 2019-01-11 Alan Modra <amodra@gmail.com>
4066 * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
4067 * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
4069 2019-01-10 Nick Clifton <nickc@redhat.com>
4072 * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
4073 fact that control characters are now displayed as escape
4075 * testsuite/gas/mips/mips16-e.d: Likewise.
4076 * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
4077 * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
4078 * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
4079 * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
4080 * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
4081 * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
4082 * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
4083 * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
4084 * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
4085 * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
4086 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
4087 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
4088 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
4089 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
4090 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
4092 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
4094 * testsuite/gas/mips/mipsel16-e.d: Likewise.
4095 * testsuite/gas/mips/mipsr6@msa.d: Likewise.
4096 * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
4097 * testsuite/gas/mips/r6-64-n32.d: Likewise.
4098 * testsuite/gas/mips/r6-64-n64.d: Likewise.
4099 * testsuite/gas/mips/r6-n32.d: Likewise.
4100 * testsuite/gas/mips/r6-n64.d: Likewise.
4101 * testsuite/gas/mips/r6.d: Likewise.
4102 * testsuite/gas/mips/tmips16-e.d: Likewise.
4103 * testsuite/gas/mips/tmipsel16-e.d: Likewise.
4104 * testsuite/gas/mn10300/relax.d: Likewise.
4106 2019-01-09 John Darrington <john@darrington.wattle.id.au>
4108 * testsuite/gas/s12z/jsr.s: New case.
4109 * testsuite/gas/s12z/jsr.d: New case.
4111 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
4113 * configure: Regenerate.
4115 2019-01-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4117 * config/tc-aarch64.c (aarch64_cpus): Add ares.
4118 * doc/c-aarch64.texi (-mcpu): Document ares value.
4120 2019-01-08 Alan Modra <amodra@gmail.com>
4122 * testsuite/gas/rx/rx.exp: Create generated test source in
4124 * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
4125 * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
4126 * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
4127 * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
4128 * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
4129 * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
4130 * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
4131 * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
4132 * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
4133 * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
4134 * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
4135 * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
4136 * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
4137 * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
4138 * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
4139 * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
4140 * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
4141 * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
4142 * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
4143 * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
4144 * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
4145 * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
4146 * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
4147 * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
4148 * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
4149 * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
4150 * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
4151 * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
4152 * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
4153 * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
4154 * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
4155 * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
4156 * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
4157 * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
4158 * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
4159 * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
4160 * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
4161 * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
4162 * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
4163 * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
4164 * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
4165 * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
4166 * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
4167 * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
4168 * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
4169 * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
4170 * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
4171 * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
4172 * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
4173 * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
4174 * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
4175 * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
4176 * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
4177 * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
4178 * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
4179 * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
4180 * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
4181 * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
4182 * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
4183 * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
4184 * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
4185 * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
4186 * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
4187 * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
4188 * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
4189 * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
4190 * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
4191 * testsuite/gas/rx/xor.d: Add #source line.
4193 2019-01-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4195 * config/tc-arm.c (arm_cpus): Add ares.
4196 * doc/c-arm.texi (-mcpu): Document ares value.
4198 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
4200 * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
4201 (rx_bfield): Add prototype.
4202 (rx_post): Likewise.
4203 * config/rx-parse.y: Add v3 instructions and Double FPU registers.
4206 (rx_check_v3): New. check v3 type.
4207 (rx_check_dfpu): New. check have double support.
4208 (double_condition_table): New. dcmp<cond> contiditon.
4209 (check_condition): Multiple condition support.
4210 (rx_lex): RXv3 instructions support.
4211 Add parse dcmp<cond> instruction and Double FPU registers.
4212 (immediate): Disable optimize in dmov #imm case.
4213 (displacement): Add double displacement in dmov instraction.
4214 * config/tc-rx.c (rx_use_conventional_section_names):
4215 Invert default value in rx-*-linux target.
4216 (cpu_type): Add additional ELF flags.
4217 (cpu_type_list): Add RXv3.
4218 (md_parse_option): Refer elf_flags from cpu_type_list.
4219 (md_show_usage): Add rxv3 and rxv3-dfpu.
4220 (rx_bytesT): Add post byte.
4221 (rx_bfield): New. generate bfmov / bfmovz "imm" field.
4222 (rx_post): New. Set instruction post byte.
4223 (md_assemble): Add post byte.
4224 doc/c-rx.texi: Add cpu types.
4225 * testsuite/gas/rx/Xtod.d: New.
4226 * testsuite/gas/rx/Xtod.sm: New.
4227 * testsuite/gas/rx/bfmov.d: New.
4228 * testsuite/gas/rx/bfmov.sm: New.
4229 * testsuite/gas/rx/dabs.d: New.
4230 * testsuite/gas/rx/dabs.sm: New.
4231 * testsuite/gas/rx/dadd.d: New.
4232 * testsuite/gas/rx/dadd.sm: New.
4233 * testsuite/gas/rx/dcmp.d: New.
4234 * testsuite/gas/rx/dcmp.sm: New.
4235 * testsuite/gas/rx/ddiv.d: New.
4236 * testsuite/gas/rx/ddiv.sm: New.
4237 * testsuite/gas/rx/dmov.d: New.
4238 * testsuite/gas/rx/dmov.sm: New.
4239 * testsuite/gas/rx/dmul.d: New.
4240 * testsuite/gas/rx/dmul.sm: New.
4241 * testsuite/gas/rx/dneg.d: New.
4242 * testsuite/gas/rx/dneg.sm: New.
4243 * testsuite/gas/rx/dpopm.d: New.
4244 * testsuite/gas/rx/dpopm.sm: New.
4245 * testsuite/gas/rx/dpushm.d: New.
4246 * testsuite/gas/rx/dpushm.sm: New.
4247 * testsuite/gas/rx/dround.d: New.
4248 * testsuite/gas/rx/dround.sm: New.
4249 * testsuite/gas/rx/dsqrt.d: New.
4250 * testsuite/gas/rx/dsqrt.sm: New.
4251 * testsuite/gas/rx/dsub.d: New.
4252 * testsuite/gas/rx/dsub.sm: New.
4253 * testsuite/gas/rx/dtoX.d: New.
4254 * testsuite/gas/rx/dtoX.sm: New.
4255 * testsuite/gas/rx/macros.inc: Add double FPU registers.
4256 * testsuite/gas/rx/mvfdc.d: New.
4257 * testsuite/gas/rx/mvfdc.sm: New.
4258 * testsuite/gas/rx/mvfdr.d: New.
4259 * testsuite/gas/rx/mvfdr.sm: New.
4260 * testsuite/gas/rx/mvtdc.d: New.
4261 * testsuite/gas/rx/mvtdc.sm: New.
4262 * testsuite/gas/rx/rstr.d: New.
4263 * testsuite/gas/rx/rstr.sm: New.
4264 * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
4265 * testsuite/gas/rx/save.d: New.
4266 * testsuite/gas/rx/save.sm: New.
4267 * testsuite/gas/rx/xor.d: New.
4268 * testsuite/gas/rx/xor.sm: Add pattern.
4270 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4273 * macro.c (get_any_string): Check for end of input whilst scanning
4276 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4279 * read.c (stringer): Fix handling of missing '>' character at end
4282 2019-01-01 Alan Modra <amodra@gmail.com>
4284 Update year range in copyright notice of all files.
4286 For older changes see ChangeLog-2018
4288 Copyright (C) 2019 Free Software Foundation, Inc.
4290 Copying and distribution of this file, with or without modification,
4291 are permitted in any medium without royalty provided the copyright
4292 notice and this notice are preserved.
4298 version-control: never