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