1 2019-12-12 H.J. Lu <hongjiu.lu@intel.com>
3 * write.c (md_generic_table_relax_frag): New. Defined to
4 relax_frag if not defined.
5 (relax_segment): Call md_generic_table_relax_frag instead of
8 2019-12-12 Alan Modra <amodra@gmail.com>
10 * config/tc-aarch64.c (get_aarch64_insn): Avoid signed overflow.
11 * config/tc-metag.c (parse_dalu): Likewise.
12 * config/tc-tic4x.c (md_pcrel_from): Likewise.
13 * config/tc-tic6x.c (tic6x_output_unwinding): Likewise.
14 * config/tc-csky.c (parse_fexp): Use an unsigned char temp buffer.
15 Don't use register keyword. Avoid signed overflow and remove now
16 unneccesary char masks. Formatting.
17 * config/tc-ia64.c (operand_match): Don't use shifts to sign extend.
18 * config/tc-mep.c (mep_apply_fix): Likewise.
19 * config/tc-pru.c (md_apply_fix): Likewise.
20 * config/tc-riscv.c (load_const): Likewise.
21 * config/tc-nios2.c (md_apply_fix): Likewise. Don't potentially
22 truncate fixup before right shift. Tidy BFD_RELOC_NIOS2_HIADJ16
25 2019-12-12 Alan Modra <amodra@gmail.com>
27 * config/obj-evax.c (crc32, encode_32, encode_16, decode_16):
28 Remove unnecessary prototypes.
29 (number_of_codings): Delete, use ARRAY_SIZE instead throughout.
30 (codings, decodings): Make arrays of unsigned char.
31 (crc32): Use unsigned variables. Delete unnecessary mask.
32 (encode_32, encode_16): Return unsigned char*, and make static
33 buffer an unsigned char array.
34 (decode_16): Make arg an unsigned char*. Remove useless casts.
35 (shorten_identifier): Use unsigned char crc_chars.
36 (is_truncated_identifier): Make ptr an unsigned char*.
38 2019-12-11 Wilco Dijkstra <wdijkstr@arm.com>
40 * config/tc-arm.c (warn_on_restrict_it): Add new variable.
41 (it_fsm_post_encode): Check warn_on_restrict_it.
42 (arm_option_table): Add -mwarn-restrict-it/-mno-warn-restrict-it.
43 * testsuite/gas/arm/armv8-2-fp16-scalar-bad.d: Add -mwarn-restrict-it.
44 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: Likewise.
45 * testsuite/gas/arm/armv8-a-bad.d: Likewise.
46 * testsuite/gas/arm/armv8-a-it-bad.d: Likewise.
47 * testsuite/gas/arm/armv8-r-bad.d: Likewise.
48 * testsuite/gas/arm/armv8-r-it-bad.d: Likewise.
49 * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: Likewise.
50 * testsuite/gas/arm/udf.d: Likewise.
52 2018-12-11 Jan Beulich <jbeulich@suse.com>
54 * config/tc-i386.c (md_assemble): Extend SSE check conditional.
55 * testsuite/gas/i386/sse-check.s: Add SSE4a and SHA tests.
57 * testsuite/gas/i386/sse-check.d: Adjust expectations.
58 * testsuite/gas/i386/sse-check-error.l,
59 testsuite/gas/i386/x86-64-sse-check-error.l: Likewise.
60 * testsuite/gas/i386/sse-check-warn.e: Likewise.
62 2019-12-10 Vladimir Murzin <vladimir.murzin@arm.com>
64 * config/tc-arm.c (s_arm_arch): Set selected_ctx_ext_table.
65 * testsuite/gas/arm/mve-arch-ext.s: New.
66 * testsuite/gas/arm/mve-arch-ext.d: New.
68 2019-12-09 Jan Beulich <jbeulich@suse.com>
70 * config/tc-i386-intel.c (O_oword_ptr): Move.
71 (O_xmmword_ptr): Alias to O_oword_ptr.
72 (O_fword_ptr, O_tbyte_ptr, O_ymmword_ptr, O_zmmword_ptr): Adjust
74 (i386_intel_simplify, i386_intel_operand): Fold O_oword_ptr and
75 O_xmmword_ptr cases, leaving comments.
77 2019-12-09 Jan Beulich <jbeulich@suse.com>
79 * config/tc-i386-intel.c (O_mmword_ptr): Define.
80 (i386_types): Add mmword entry.
81 (i386_intel_simplify, i386_intel_operand): Add comment.
82 * testsuite/gas/i386/intel-expr.s: Also test mmword and zmmword.
83 * testsuite/gas/i386/intelok.s: Also test "mmword ptr".
84 * testsuite/gas/i386/intel-expr.d, testsuite/gas/i386/intelok.d,
85 testsuite/gas/i386/intelok.e: Adjust expectations.
87 2019-12-09 Jan Beulich <jbeulich@suse.com>
89 * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
90 attribute suffix instead of suffix for floating point insns when
91 handling O_near_ptr / O_far_ptr.
92 * testsuite/gas/i386/intelbad.s: Add FPU tests.
93 * testsuite/gas/i386/intelbad.l: Adjust expectations.
95 2019-12-09 Jan Beulich <jbeulich@suse.com>
97 * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
98 attribute suffix instead of suffix uniformly for insns not
99 possibly accepting "tbyte ptr" explicitly.
101 2019-12-09 Jan Beulich <jbeulich@suse.com>
103 * config/tc-i386-intel.c (i386_intel_operand): Don't set suffix
104 for floating point insns when handling O_fword_ptr.
106 2019-12-09 Jan Beulich <jbeulich@suse.com>
108 * config/tc-i386-intel.c (i386_intel_operand): Don't special
109 case LDS et al when handling O_word_ptr.
111 2019-12-08 Alan Modra <amodra@gmail.com>
113 * testsuite/gas/aarch64/bfloat16.d: Match 32-bit and 64-bit output.
114 * testsuite/gas/aarch64/dgh.d: Likewise.
115 * testsuite/gas/aarch64/f32mm.d: Likewise.
116 * testsuite/gas/aarch64/f64mm.d: Likewise.
117 * testsuite/gas/aarch64/i8mm.d: Likewise.
118 * testsuite/gas/aarch64/pac_ab_key.d: Likewise.
119 * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
120 * testsuite/gas/aarch64/reloc-prel_g0.d: Likewise.
121 * testsuite/gas/aarch64/reloc-prel_g0_nc.d: Likewise.
122 * testsuite/gas/aarch64/reloc-prel_g1.d: Likewise.
123 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Likewise.
124 * testsuite/gas/aarch64/sve-movprfx-mm.d: Likewise.
125 * testsuite/gas/aarch64/sve2.d: Likewise.
127 2019-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
129 * dw2gencfi.c (cfi_pseudo_table): Add cfi_negate_ra_state.
130 * testsuite/gas/aarch64/pac_negate_ra_state.s: New file.
131 * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
133 2019-12-05 Jan Beulich <jbeulich@suse.com>
135 * config/tc-aarch64.c (aarch64_features): Drop redundant AES and
136 SHA2 flags from "crypto" entry.
138 2019-12-05 Jan Beulich <jbeulich@suse.com>
140 * config/tc-aarch64.c (aarch64_features): Make SHA2 a prereq of
142 * testsuite/gas/aarch64/crypto.s
143 * testsuite/gas/aarch64/crypto-directive.d: Refer to crypto.d
145 * testsuite/gas/aarch64/illegal-crypto-nofp.l: Relax
147 * testsuite/gas/aarch64/crypto-directive2.d,
148 testsuite/gas/aarch64/crypto-directive3.d: New.
150 2019-12-04 Jan Beulich <jbeulich@suse.com>
152 * config/tc-i386-intel.c (i386_intel_operand): Handle LFS et al
153 as well as LGDT at al when processing O_tbyte_ptr.
154 * testsuite/gas/i386/intelbad.s: Add LDS et al cases.
155 * testsuite/gas/i386/x86-64-intel64.s,
156 * testsuite/gas/i386/x86-64-opcode.s: Add LFS et al cases.
157 * testsuite/gas/i386/ilp32/x86-64-intel64.d: Add -mintel64
158 command line option and fold expectations with parent dir test.
159 * testsuite/gas/i386/x86-64-intel64.d: Add -mintel64 command
160 line option and adjust expectations.
161 * testsuite/gas/i386/intelbad.l,
162 testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
164 2019-12-04 Jan Beulich <jbeulich@suse.com>
166 * config/tc-i386-intel.c (i386_intel_operand): Also handle DWORD
167 with 64-bit mode branches.
168 * testsuite/gas/i386/x86-64-jump.s: Extend Intel syntax branch
170 * testsuite/gas/i386/x86-64-jump.d: Adjust expectations.
172 2019-12-04 Jan Beulich <jbeulich@suse.com>
174 * config/tc-i386.c (output_insn): Don't consider Cpu* settings
175 when setting GNU_PROPERTY_X86_FEATURE_2_MMX.
177 2019-12-04 Jan Beulich <jbeulich@suse.com>
179 * testsuite/gas/i386/movdir.s: Add Intel syntax case with
180 operand size specifier.
181 * testsuite/gas/i386/x86-64-movdir.s: Add Intel syntax cases
182 with operand size specifier and wit 32-bit operands.
183 * testsuite/gas/i386/movdir-intel.d,
184 testsuite/gas/i386/movdir.d,
185 testsuite/gas/i386/x86-64-movdir-intel.d,
186 testsuite/gas/i386/x86-64-movdir.d: Adjust expectations.
188 2019-12-04 Jan Beulich <jbeulich@suse.com>
190 * config/tc-i386.c (process_suffix): Arrange for insns with a
191 single non-GPR register operand to not have its suffix guessed
192 from GPR operands. Extend DefaultSize handling to cover PUSH/POP
193 of segment registers.
194 * testsuite/gas/i386/general.s: Add PUSH/POP sreg to .code16gcc
196 * testsuite/gas/i386/general.l: Adjust expectations.
198 2019-12-04 Jan Beulich <jbeulich@suse.com>
200 * config/tc-i386.c (process_suffix): Exclude SYSRET alongside
202 * testsuite/gas/i386/general.s: Expand .code16gcc set of insns.
203 * testsuite/gas/i386/general.l: Adjust expectations.
205 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
207 * as.c (flag_dwarf_cie_version): Change initial value to -1, and
209 * config/tc-riscv.c (riscv_after_parse_args): Set
210 flag_dwarf_cie_version if it has not already been set.
211 * dwarf2dbg.c (dwarf2_init): Initialise flag_dwarf_cie_version if
213 * testsuite/gas/riscv/default-cie-version.d: New file.
214 * testsuite/gas/riscv/default-cie-version.s: New file.
216 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
218 * dw2gencfi.c (output_cie): Error on return column overflow.
219 * testsuite/gas/riscv/cie-rtn-col-1.d: New file.
220 * testsuite/gas/riscv/cie-rtn-col-3.d: New file.
221 * testsuite/gas/riscv/cie-rtn-col.s: New file.
223 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
225 * config/tc-riscv.c (tc_riscv_regname_to_dw2regnum): Lookup CSR
227 * testsuite/gas/riscv/csr-dw-regnums.d: New file.
228 * testsuite/gas/riscv/csr-dw-regnums.s: New file.
230 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
232 * config/tc-riscv.c (struct regname): Delete.
233 (hash_reg_names): Handle value as 'void *'.
235 2019-11-25 Andrew Pinski <apinski@marvell.com>
237 * config/tc-aarch64.c (md_begin): Use correct
238 hash table for uppercase version of hint.
239 * testsuite/gas/aarch64/system-2.s: Extend psb case to uppercase.
240 * testsuite/gas/aarch64/system-2.d: Update.
242 2019-11-25 Christian Eggers <ceggers@gmx.de>
244 * as.h: Define SEC_OCTETS as SEC_ELF_OCTETS if OBJ_ELF.
245 * dwarf2dbg.c: (dwarf2_finish): Set section flag SEC_OCTETS for
246 .debug_line, .debug_info, .debug_abbrev, .debug_aranges, .debug_str
247 and .debug_ranges sections.
248 * write.c (maybe_generate_build_notes): Set section flag
249 SEC_OCTETS for .gnu.build.attributes section.
250 * frags.c (frag_now_fix): Don't divide by OCTETS_PER_BYTE if
252 * symbols.c (resolve_symbol_value): Likewise.
254 2019-11-25 Christian Eggers <ceggers@gmx.de>
256 * dwarf2dbg.c (out_set_addr): Revert 2019-03-13 change.
257 (out_debug_line, out_debug_aranges, out_debug_info): Likewise.
258 * symbols.h (symbol_set_value_now_octets, symbol_octets_p): Remove.
259 * symbols.c (struct symbol_flags): Remove member sy_octets.
260 (symbol_temp_new_now_octets): Don't set symbol_flags::sy_octets.
261 (resolve_symbol_value): Revert: Return octets instead of bytes if
263 (symbol_set_value_now_octets): Remove.
264 (symbol_octets_p): Remove.
266 2019-11-22 Mihail Ionescu <mihail.ionescu@arm.com>
268 * config/tc-arm.c (arm_ext_crc): New.
269 (crc_ext_armv8): Remove.
270 (insns): Rename crc_ext_armv8 to arm_ext_crc.
271 (arm_cpus): Replace CRC_EXT_ARMV8 with ARM_EXT2_CRC.
272 (armv8a_ext_table, armv8r_ext_table,
273 arm_option_extension_value_table): Redefine the crc
274 extension in terms of ARM_EXT2_CRC.
275 * gas/testsuite/gas/arm/crc-ext.s: New.
276 * gas/testsuite/gas/arm/crc-ext.d: New.
278 2019-11-20 Alan Modra <amodra@gmail.com>
281 * atof-generic.c (atof_generic): Increase decimal guard digits.
282 * testsuite/gas/i386/fp.s: Add more tests.
283 * testsuite/gas/i386/fp.d: Update.
285 2019-11-18 Andrew Burgess <andrew.burgess@embecosm.com>
287 * as.c (parse_args): Parse --gdwarf-cie-version option.
288 (flag_dwarf_cie_version): New variable.
289 * as.h (flag_dwarf_cie_version): Declare.
290 * dw2gencfi.c (output_cie): Switch from DW_CIE_VERSION to
291 flag_dwarf_cie_version.
292 * doc/as.texi (Overview): Document --gdwarf-cie-version.
294 * testsuite/gas/cfi/cfi.exp: Add new tests.
295 * testsuite/gas/cfi/cie-version-0.d: New file.
296 * testsuite/gas/cfi/cie-version-1.d: New file.
297 * testsuite/gas/cfi/cie-version-2.d: New file.
298 * testsuite/gas/cfi/cie-version-3.d: New file.
299 * testsuite/gas/cfi/cie-version-4.d: New file.
300 * testsuite/gas/cfi/cie-version.s: New file.
302 2019-11-14 Jan Beulich <jbeulich@suse.com>
304 * config/tc-i386.c (operand_size_match, md_assemble,
305 parse_insn, match_template, process_suffix, output_jump,
306 output_insn, i386_displacement): Adjust jump* field use/
308 * config/tc-i386-intel.c (i386_intel_operand): Likewise.
310 2019-11-14 Jan Beulich <jbeulich@suse.com>
312 * config/tc-i386.c (struct _i386_insn): Add jumpabsolute field.
313 (operand_type_match): Drop jumpabsolute use.
314 (type_names): Remove OPERAND_TYPE_JUMPABSOLUTE entry.
315 (process_suffix, i386_displacement): Adjust jumpabsolute uses.
316 (match_template, i386_att_operand): Adjust jumpabsolute
318 * config/tc-i386-intel.c (i386_intel_operand): Likewise.
320 2019-11-14 Jan Beulich <jbeulich@suse.com>
322 * config/tc-i386.c (operand_size_match): Adjust anysize use.
324 2019-11-14 Jan Beulich <jbeulich@suse.com>
326 * testsuite/gas/i386/intel-cmps32.d,
327 testsuite/gas/i386/intel-cmps64.d: Correct regexp closing
328 parentheses placement.
330 2019-11-14 Jan Beulich <jbeulich@suse.com>
332 * testsuite/gas/i386/intel-cmps.s,
333 testsuite/gas/i386/intel-movs.s: Extend.
334 * testsuite/gas/i386/intel-cmps32.d,
335 testsuite/gas/i386/intel-cmps64.d,
336 testsuite/gas/i386/intel-movs32.d,
337 testsuite/gas/i386/intel-movs64.d: Adjust expectations.
338 * testsuite/gas/i386/intel-cmps16.d,
339 testsuite/gas/i386/intel-movs16.d: New.
340 * testsuite/gas/i386/i386.exp: Run new tests.
342 2019-11-12 Nelson Chu <nelson.chu@sifive.com>
344 * testsuite/gas/riscv/insn.d: Add the f extension to -march option.
346 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
348 * config/tc-arm.c (do_vfp_nsyn_push): Move in order to enable it for
349 both fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vstm
350 instruction for mve_ext.
351 (do_vfp_nsyn_pop): Move in order to enable it for both
352 fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vldm
353 instruction for mve_ext.
354 (do_neon_ldm_stm): Add fpu_vfp_ext_v1 and mve_ext checks.
355 (insns): Enable vldm, vldmia, vldmdb, vstm, vstmia, vstmdb, vpop,
356 vpush, and fldd, fstd, flds, fsts for arm_ext_v6t2 instead
358 * testsuite/gas/arm/v8_1m-mve.s: New.
359 * testsuite/gas/arm/v8_1m-mve.d: New.
361 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
363 * gas/config/tc-arm.c (do_neon_mvn): Allow mve_ext cmode=0xd.
364 * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.s: New test.
365 * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.d: Likewise.
367 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
369 * config/tc-arm.c (s_arm_fpu): Clear selected_cpu fpu bits.
370 (fpu_any): Remove OBJ_ELF guards.
371 * testsuite/gas/arm/fpu-rst.s: New.
372 * testsuite/gas/arm/fpu-rst.d: New.
373 * testsuite/gas/arm/fpu-rst.l: New.
375 2019-11-12 Jan Beulich <jbeulich@suse.com>
377 * config/tc-i386.c (type_names): Remove OPERAND_TYPE_ESSEG
379 (md_assemble): Adjust isstring field use. Add assertion.
380 (check_string): Mostly re-write.
381 (i386_index_check): Adjust isstring field use and related code.
383 2019-11-12 Jan Beulich <jbeulich@suse.com>
385 * config/tc-i386.c (process_immext): Remove SSE3, SVME, and
386 MWAITX special case logic.
387 (process_suffix): Replace immext field uses by instance ones.
388 * testsuite/gas/i386/arch-13.s,
389 testsuite/gas/i386/x86-64-arch-3.s: Add CLZERO with operand
391 * testsuite/gas/i386/svme.s: Add 16-bit operand cases.
392 * testsuite/gas/i386/x86-64-specific-reg.s: Drop FIXME comments.
393 * testsuite/gas/i386/arch-13.d,
394 testsuite/gas/i386/mwaitx-reg.l, testsuite/gas/i386/svme.d,
395 testsuite/gas/i386/x86-64-arch-3.d,
396 testsuite/gas/i386/x86-64-mwaitx-reg.l,
397 testsuite/gas/i386/x86-64-specific-reg.l: Adjust expectations.
399 2019-11-12 Jan Beulich <jbeulich@suse.com>
401 * config/tc-i386.c (operand_type_set, operand_type_and,
402 operand_type_and_not, operand_type_or, operand_type_xor): Handle
403 "instance" field specially.
404 (operand_size_match, md_assemble, match_template, process_suffix,
405 check_byte_reg, check_long_reg, check_qword_reg, check_word_reg,
406 process_operands, build_modrm_byte): Use "instance" instead of
407 "acc" / "inoutportreg" / "shiftcount" fields.
408 (optimize_imm): Adjust comment.
410 2019-11-11 Jan Beulich <jbeulich@suse.com>
412 * testsuite/gas/aarch64/illegal-sve2.s: Add smaxp/sminp cases
413 with mismatched 1st and 3rd operands.
414 * testsuite/gas/aarch64/illegal-sve2.l: Adjust expectations.
416 2019-11-08 H.J. Lu <hongjiu.lu@intel.com>
419 * config/tc-i386.c (match_template): Don't check instruction
420 suffix set from operand.
421 * testsuite/gas/i386/code16.d: New file.
422 * testsuite/gas/i386/code16.s: Likewise.
423 * testsuite/gas/i386/i386.exp: Run code16.
425 2019-11-08 Jan Beulich <jbeulich@suse.com>
427 * config/tc-i386.c (optimize_encoding, build_modrm_byte,
428 check_VecOperations, parse_real_register): Use "class" instead
429 of "regmask" and "regbnd" fields.
431 2019-11-08 Jan Beulich <jbeulich@suse.com>
433 * config/tc-i386.c (match_mem_size, operand_size_match,
434 operand_type_register_match, pi, check_VecOperands, match_template,
435 check_byte_reg, check_long_reg, check_qword_reg, process_operands,
436 build_modrm_byte, parse_real_register): Use "class" instead of
437 "regsimd" / "regmmx" fields.
439 2019-11-08 Jan Beulich <jbeulich@suse.com>
441 * config/tc-i386.c (pi, check_byte_reg, build_modrm_byte,
442 parse_real_register): Use "class" instead of "control"/"debug"/
445 2019-11-08 Jan Beulich <jbeulich@suse.com>
447 * config/tc-i386.c (pi, check_byte_reg, process_operands,
448 build_modrm_byte, i386_att_operand, parse_real_register): Use
449 "class" instead of "sreg" field.
450 * config/tc-i386-intel.c (i386_intel_simplify_register,
451 i386_intel_operand): Likewise.
453 2019-11-08 Jan Beulich <jbeulich@suse.com>
455 * config/tc-i386.c (operand_type_set, operand_type_and,
456 operand_type_and_not, operand_type_or, operand_type_xor): Handle
457 "class" field specially.
459 (operand_type_check, operand_size_match,
460 operand_type_register_match, pi, md_assemble, is_short_form,
461 process_suffix, check_byte_reg, check_long_reg, check_qword_reg,
462 check_word_reg, process_operands, build_modrm_byte): Use "class"
463 instead of "reg" field.
464 (optimize_imm): Likewise. Reduce redundancy. Adjust calculation
467 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
469 * testsuite/gas/aarch64/dgh.s: New test.
470 * testsuite/gas/aarch64/dgh.d: New test.
472 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
474 * config/tc-arm.c (arm_ext_i8mm): New feature set.
479 (insns): Add vsmmla, vummla, vusmmla, vusdot, vsudot mnemonics.
480 (armv86a_ext_table): Add i8mm extension.
481 (arm_extensions): Move bf16 extension to context sensitive table.
482 (armv82a_ext_table, armv84a_ext_table, armv85a_ext_table):
483 Move bf16 extension to context sensitive table.
484 (armv86a_ext_table): Add i8mm extension.
485 * doc/c-arm.texi: Document i8mm extension.
486 * testsuite/gas/arm/i8mm.s: New test.
487 * testsuite/gas/arm/i8mm.d: New test.
488 * testsuite/gas/arm/bfloat17-cmdline-bad-3.d: Update test.
490 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
492 * config/tc-aarch64.c: Add new arch fetures to suppport the mm extension.
493 (parse_operands): Add new operand.
494 * testsuite/gas/aarch64/i8mm.s: New test.
495 * testsuite/gas/aarch64/i8mm.d: New test.
496 * testsuite/gas/aarch64/f32mm.s: New test.
497 * testsuite/gas/aarch64/f32mm.d: New test.
498 * testsuite/gas/aarch64/f64mm.s: New test.
499 * testsuite/gas/aarch64/f64mm.d: New test.
500 * testsuite/gas/aarch64/sve-movprfx-mm.s: New test.
501 * testsuite/gas/aarch64/sve-movprfx-mm.d: New test.
503 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
504 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
506 * config/tc-aarch64.c (md_atof): Add encoding for the bfloat16 format.
507 * testsuite/gas/aarch64/bfloat16-directive-le.d: New test.
508 * testsuite/gas/aarch64/bfloat16-directive-be.d: New test.
509 * testsuite/gas/aarch64/bfloat16-directive.s: New test.
511 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
512 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
514 * config/tc-arm.c (md_atof): Add encoding for bfloat16
515 * testsuite/gas/arm/bfloat16-directive-le.d: New test.
516 * testsuite/gas/arm/bfloat16-directive-be.d: New test.
517 * testsuite/gas/arm/bfloat16-directive.s: New test.
519 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
520 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
522 * as.h (atof_ieee_detail): Add prototype for atof_ieee_detail function.
523 (atof_ieee): Move some code into the atof_ieee_detail function.
524 (atof_ieee_detail): Add function that provides a higher level of
525 control over generating IEEE-like numbers.
527 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
528 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
530 * config/tc-arm.c (arm_archs): Add armv8.6-a option.
531 (cpu_arch_ver): Add TAG_CPU_ARCH_V8 tag for Armv8.6-a.
532 * doc/c-arm.texi (-march): New armv8.6-a arch.
533 * config/tc-arm.c (arm_ext_bf16): New feature set.
534 (enum neon_el_type): Add NT_bfloat value.
535 (B_MNEM_vfmat, B_MNEM_vfmab): New bfloat16 encoder
537 (BAD_BF16): New message.
538 (parse_neon_type): Add bf16 type specifier.
539 (enum neon_type_mask): Add N_BF16 type.
540 (type_chk_of_el_type): Account for NT_bfloat.
541 (el_type_of_type_chk): Account for N_BF16.
542 (neon_three_args): Split out from neon_three_same.
543 (neon_three_same): Part split out into neon_three_args.
544 (CVT_FLAVOUR_VAR): Add bf16_f32 cvt flavour.
545 (do_neon_cvt_1): Account for vcvt.bf16.f32.
546 (do_bfloat_vmla): New.
547 (do_mve_vfma): New function to deal with the mnemonic clash between the BF16
548 vfmat and the MVE vfma in a VPT block with a 't'rue condition.
549 (do_neon_cvttb_1): Account for vcvt{t,b}.bf16.f32.
552 (insns): Add vdot and vmmla mnemonics.
553 (arm_extensions): Add "bf16" extension.
554 * doc/c-arm.texi: Document "bf16" extension.
555 * testsuite/gas/arm/attr-march-armv8_6-a.d: New test.
556 * testsuite/gas/arm/bfloat16-bad.d: New test.
557 * testsuite/gas/arm/bfloat16-bad.l: New test.
558 * testsuite/gas/arm/bfloat16-bad.s: New test.
559 * testsuite/gas/arm/bfloat16-cmdline-bad-2.d: New test.
560 * testsuite/gas/arm/bfloat16-cmdline-bad-3.d: New test.
561 * testsuite/gas/arm/bfloat16-cmdline-bad.d: New test.
562 * testsuite/gas/arm/bfloat16-neon.s: New test.
563 * testsuite/gas/arm/bfloat16-non-neon.s: New test.
564 * testsuite/gas/arm/bfloat16-thumb-bad.d: New test.
565 * testsuite/gas/arm/bfloat16-thumb-bad.l: New test.
566 * testsuite/gas/arm/bfloat16-thumb.d: New test.
567 * testsuite/gas/arm/bfloat16-vfp.d: New test.
568 * testsuite/gas/arm/bfloat16.d: New test.
569 * testsuite/gas/arm/bfloat16.s: New test.
571 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
572 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
574 * config/tc-aarch64.c (vectype_to_qualifier): Special case the
575 S_2H operand qualifier.
576 * doc/c-aarch64.texi: Document bf16 extension.
577 * testsuite/gas/aarch64/bfloat16.d: New test.
578 * testsuite/gas/aarch64/bfloat16.s: New test.
579 * testsuite/gas/aarch64/illegal-bfloat16.d: New test.
580 * testsuite/gas/aarch64/illegal-bfloat16.l: New test.
581 * testsuite/gas/aarch64/illegal-bfloat16.s: New test.
582 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: New test.
583 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: New test.
585 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
586 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
588 * config/tc-aarch64.c (armv8.6-a): New arch.
589 * doc/c-aarch64.texi (armv8.6-a): Document new arch.
591 2019-11-07 Jan Beulich <jbeulich@suse.com>
593 * config/tc-i386.c (cpu_arch): Add .rdpru and .mcommit entries.
594 * doc/c-i386.texi: Mention rdpru and mcommit.
595 * testsuite/gas/i386/arch-13.s,
596 testsuite/gas/i386/x86-64-arch-3.s: Add mcommit and rdpru cases.
597 * testsuite/gas/i386/arch-13.d,
598 testsuite/gas/i386/x86-64-arch-3.d: Extend -march=. Adjust
600 * testsuite/gas/i386/arch-13-znver1.d: Extend -march=. Redirect
601 expectations to arch-13.d.
602 * testsuite/gas/i386/arch-13-znver2.d: Redirect expectations to
604 testsuite/gas/i386/x86-64-arch-3-znver1.d: Extend -march=.
606 2019-11-07 Jan Beulich <jbeulich@suse.com>
608 * testsuite/gas/i386/x86-64-arch-3.s: Add monitorx/mwaitx cases
609 with canonical operand sizes.
610 * testsuite/gas/i386/x86-64-sse3.s: Add monitor/mwait cases with
611 canonical operand sizes.
612 * testsuite/gas/i386/x86-64-arch-3-znver1.d,
613 testsuite/gas/i386/x86-64-arch-3-znver2.d: Redirect expectations
615 * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Redirect
616 expectations to parent dir's x86-64-sse-noavx.d.
617 * testsuite/gas/i386/ilp32/x86-64-sse3.d: Redirect expectations
618 to to parent dir's x86-64-sse3.d.
619 * testsuite/gas/i386/x86-64-arch-3.d,
620 testsuite/gas/i386/x86-64-mwaitx-bdver4.d,
621 testsuite/gas/i386/x86-64-sse-noavx.d,
622 testsuite/gas/i386/x86-64-sse3.d,
623 testsuite/gas/i386/x86-64-suffix.d: Adjust expectations.
625 2019-11-04 Jan Beulich <jbeulich@suse.com>
627 * config/tc-i386.c (process_operands): Handle ShortForm insns
628 later, splitting out their segment register sub-form.
630 2019-10-31 H.J. Lu <hongjiu.lu@intel.com>
632 * testsuite/gas/i386/general.s: Add .code16gcc fldenv tests.
633 * testsuite/gas/i386/general.l: Updated.
635 2019-10-31 Mihail Ionescu <mihail.ionescu@arm.com>
637 * config/tc-arm.c (selected_ctx_ext_table) New static variable.
638 (arm_parse_arch): Set context sensitive extension table based on the
639 chosen base architecture.
640 (s_arm_arch_extension): Change to lookup extensions in the new context
642 * gas/testsuite/gas/arm/mve-ext.s: New.
643 * gas/testsuite/gas/arm/mve-ext.d: New.
644 * gas/testsuite/gas/arm/mvefp-ext.s: New.
645 * gas/testsuite/gas/arm/mvefp-ext.d: New.
647 2019-10-30 Delia Burduv <Delia.Burduv@arm.com>
649 * config/tc-aarch64.c (parse_address_main): Accept the omission of
650 the immediate argument for ldraa and ldrab as a shorthand for the
652 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.d: New test.
653 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.s: New test.
654 * testsuite/gas/aarch64/illegal-ldraa.s: Modified to accept the
655 writeback form with no offset.
656 * testsuite/gas/aarch64/illegal-ldraa.s: Removed missing offset
659 2019-10-30 Jan Beulich <jbeulich@suse.com>
661 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.s,
662 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.s,
663 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.s: New.
664 * testsuite/gas/i386/i386.exp: Run new tests.
666 2019-10-30 Jan Beulich <jbeulich@suse.com>
668 * config/tc-i386.c (optimize_encoding): Adjust opcodes compared
669 against. Adjust replacement opcode and clear .w.
671 2019-10-29 Alan Modra <amodra@gmail.com>
674 * dw2gencfi.c (output_cfi_insn): Don't allow DW_CFA_advance_loc4
675 to be placed in a different frag to the rs_cfa.
677 2019-10-26 John David Anglin <danglin@gcc.gnu.org>
680 * config/tc-hppa.c (tc_gen_reloc): Cast some enums to int.
681 (md_assemble): Likewise.
683 2019-10-26 Alan Modra <amodra@gmail.com>
686 * dw2gencfi.c (output_cfi_insn): Don't output DW_CFA_advance_loc+0.
687 * ehopt.c (eh_frame_estimate_size_before_relax): Return -1 for
688 an advance_loc of zero.
689 (eh_frame_relax_frag): Translate fr_subtype of 7 to size -1.
690 (eh_frame_convert_frag): Handle fr_subtype of 7. Abort on
691 unexpected fr_subtype.
693 2019-10-25 Alan Modra <amodra@gmail.com>
697 * write.c (relax_frag): Correct calculation of delta for
698 positive branches where "stretch" would make the branch
699 negative. Return zero immediately in that case. Correct
700 TC_PCREL_ADJUST comment.
702 2019-10-16 Alan Modra <amodra@gmail.com>
704 * config/tc-xtensa.c (xg_order_trampoline_chain_entry): Don't
705 call S_GET_VALUE multiple times for a symbol. Rearrange code
706 so it is obvious what is the primary sort key.
707 (xg_order_trampoline_chain): Similarly.
709 2019-10-15 Alan Modra <amodra@gmail.com>
711 * config/tc-nds32.c (nds32_set_section_relocs): Use relocs and n
712 parameters rather than equivalent sec->orelocation and
713 sec->reloc_count. Don't sort for n <= 1. Tidy.
715 2019-10-09 Nick Clifton <nickc@redhat.com>
718 * testsuite/gas/avr/pr25041.s: New test.
719 * testsuite/gas/avr/pr25041.d: New test driver.
721 2019-10-07 Jozef Lawrynowicz <jozef.l@mittosystems.com>
723 * config/tc-msp430.c (md_parse_option): Set lower_data_region_only
724 to FALSE if the data region is set to "upper", "either" or "none".
725 (msp430_object_attribute): New.
726 (md_pseudo_table): Handle .mspabi_attribute and .gnu_attribute.
727 (msp430_md_end): Replace hard-coded attribute values with enums.
728 Handle data region object attribute.
729 * doc/as.texi: Document MSP430 Data Region object attribute.
730 * doc/c-msp430.texi: Document the .mspabi_attribute directive.
731 * testsuite/gas/msp430/attr-430-small-bad.d: New test.
732 * testsuite/gas/msp430/attr-430-small-bad.l: New test.
733 * testsuite/gas/msp430/attr-430-small-good.d: New test.
734 * testsuite/gas/msp430/attr-430-small.s: New test.
735 * testsuite/gas/msp430/attr-430x-large-any-bad.d: New test.
736 * testsuite/gas/msp430/attr-430x-large-any-bad.l: New test.
737 * testsuite/gas/msp430/attr-430x-large-any-good.d: New test.
738 * testsuite/gas/msp430/attr-430x-large-any.s: New test.
739 * testsuite/gas/msp430/attr-430x-large-lower-bad.d: New test.
740 * testsuite/gas/msp430/attr-430x-large-lower-bad.l: New test.
741 * testsuite/gas/msp430/attr-430x-large-lower-good.d: New test.
742 * testsuite/gas/msp430/attr-430x-large-lower.s: New test.
743 * testsuite/gas/msp430/msp430.exp: Run new tests.
745 2019-10-07 Jan Beulich <jbeulich@suse.com>
747 * config/tc-i386.c (check_string): Make reported operand number
748 depend on Intel syntax.
749 * testsuite/gas/i386/intel-cmps.s,
750 testsuite/gas/i386/intel-cmps32.d,
751 testsuite/gas/i386/intel-cmps64.d: New.
752 * testsuite/gas/i386/i386.exp: Run new tests.
753 * testsuite/gas/i386/intel-movs.s: Extend.
754 * testsuite/gas/i386/intel-movs32.d,
755 testsuite/gas/i386/intel-movs64.d: Adjust expectations.
756 * testsuite/gas/i386/string-bad.l: Tighten expectations.
758 2019-09-24 Tamar Christina <tamar.christina@arm.com>
761 * config/tc-arm.c (out_of_range_p): New.
762 (md_apply_fix): Use it in BFD_RELOC_THUMB_PCREL_BRANCH9,
763 BFD_RELOC_THUMB_PCREL_BRANCH12, BFD_RELOC_THUMB_PCREL_BRANCH20,
764 BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_THUMB_PCREL_BRANCH25
765 * testsuite/gas/arm/pr24991.d: New test.
766 * testsuite/gas/arm/pr24991.l: New test.
767 * testsuite/gas/arm/pr24991.s: New test.
769 2019-09-23 Alan Modra <amodra@gmail.com>
771 * config/obj-ecoff.c: Include ecoff-bfd.h.
772 * config/obj-elf.c: Likewise.
774 2019-09-23 Alan Modra <amodra@gmail.com>
776 * config/tc-arm.c: Include cpu-arm.h.
778 2019-09-21 Alan Modra <amodra@gmail.com>
780 * config/tc-i386.c (md_parse_option): Fix warning on vexwig assignment.
782 2019-09-20 Alan Modra <amodra@gmail.com>
784 * config/tc-tic6x.c (tc_gen_reloc): Correct common symbol check.
786 2018-09-20 Jan Beulich <jbeulich@suse.com>
789 * config/tc-i386.c (process_operands): Adjust handling of
790 PUSH/POP of segment registers.
791 * testsuite/gas/i386/x86-64-opcode.s: Add PUSHq/POPq case with
792 %fs/%gs operands. Add PUSHF/POPF case without suffix.
793 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
795 2019-09-19 Matthew Malcomson <matthew.malcomson@arm.com>
797 * NEWS: Add SVE2 and TME entries.
799 2019-09-18 Alan Modra <amodra@gmail.com>
801 * as.c, * as.h, * dw2gencfi.c, * dwarf2dbg.c, * ecoff.c,
802 * read.c, * stabs.c, * subsegs.c, * subsegs.h, * write.c,
803 * config/obj-coff-seh.c, * config/obj-coff.c, * config/obj-ecoff.c,
804 * config/obj-elf.c, * config/obj-macho.c, * config/obj-som.c,
805 * config/tc-aarch64.c, * config/tc-alpha.c, * config/tc-arc.c,
806 * config/tc-arm.c, * config/tc-avr.c, * config/tc-bfin.c,
807 * config/tc-bpf.c, * config/tc-d10v.c, * config/tc-d30v.c,
808 * config/tc-epiphany.c, * config/tc-fr30.c, * config/tc-frv.c,
809 * config/tc-h8300.c, * config/tc-hppa.c, * config/tc-i386.c,
810 * config/tc-ia64.c, * config/tc-ip2k.c, * config/tc-iq2000.c,
811 * config/tc-lm32.c, * config/tc-m32c.c, * config/tc-m32r.c,
812 * config/tc-m68hc11.c, * config/tc-mep.c, * config/tc-microblaze.c,
813 * config/tc-mips.c, * config/tc-mmix.c, * config/tc-mn10200.c,
814 * config/tc-mn10300.c, * config/tc-msp430.c, * config/tc-mt.c,
815 * config/tc-nds32.c, * config/tc-or1k.c, * config/tc-ppc.c,
816 * config/tc-pru.c, * config/tc-rl78.c, * config/tc-rx.c,
817 * config/tc-s12z.c, * config/tc-s390.c, * config/tc-score.c,
818 * config/tc-score7.c, * config/tc-sh.c, * config/tc-sparc.c,
819 * config/tc-spu.c, * config/tc-tic4x.c, * config/tc-tic54x.c,
820 * config/tc-tic6x.c, * config/tc-tilegx.c, * config/tc-tilepro.c,
821 * config/tc-v850.c, * config/tc-visium.c, * config/tc-wasm32.c,
822 * config/tc-xc16x.c, * config/tc-xgate.c, * config/tc-xstormy16.c,
823 * config/tc-xtensa.c, * config/tc-z8k.c: Update throughout for
824 bfd section macro and function changes.
825 * write.c (compress_debug): Use bfd_rename_section.
827 2019-09-18 Alan Modra <amodra@gmail.com>
829 * symbols.c (S_IS_LOCAL): Update bfd_get_section to
832 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
834 * Makefile.in: Re-generate.
835 * configure: Re-generate.
836 * doc/Makefile.in: Re-generate.
838 2019-09-17 Maxim Blinov <maxim.blinov@embecosm.com>
840 * config/tc-riscv.c (riscv_multi_subset_supports): Handle
841 insn_class enum rather than subset char string.
842 (riscv_ip): Update call to riscv_multi_subset_supports.
844 2019-09-16 Phil Blundell <pb@pbcl.net>
846 * Makefile.in, configure, doc/Makefile.in: Regenerated.
848 2019-09-10 Nick Clifton <nickc@redhat.com>
851 * testsuite/gas/arm/pr24907.s: New test.
852 * testsuite/gas/arm/pr24907.d: Expected disassembly.
854 2019-09-09 Phil Blundell <pb@pbcl.net>
856 binutils 2.33 branch created.
858 2019-09-05 Alan Modra <amodra@gmail.com>
860 * config/tc-ppc.c (ppc_elf_suffix): Display the relocation
861 operator on GOT reloc warnings/errors.
863 2019-08-27 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
865 * config/tc-arm.c (parse_neon_mov): Add check to accept vector
866 register to both the arguments in VMOV instruction.
867 * testsuite/gas/arm/mve-vmov-1.d: Modify.
868 * testsuite/gas/arm/mve-vmov-1.s: Likewise.
869 * testsuite/gas/arm/mve-vorr.d: Likewise.
871 2019-08-23 Nick Clifton <nickc@redhat.com>
873 * po/sv.po: Updated Swedish translation.
875 2019-08-22 Dennis Zhang <dennis.zhang@arm.com>
877 * config/tc-arm.c: New entries for Cortex-M35P, Cortex-A77,
879 * doc/c-arm.texi: Document new processors.
880 * testsuite/gas/arm/cpu-cortex-a76ae.d: New test.
881 * testsuite/gas/arm/cpu-cortex-a77.d: New test.
882 * testsuite/gas/arm/cpu-cortex-m35p.d: New test.
884 2019-08-22 Bosco GarcÃa <jbgg.gnu@gmail.com>
885 Nick Clifton <nickc@redhat.com>
887 * atof-generic.c (atof_generic): Do not ignore leading zeros if
888 they appear after a decimal point.
889 * testsuite/gas/all/float.s: Extend test to include a number with
890 a leading decimal point followed by several zeroes.
891 * testsuite/gas/i386/fp.s: Likewise.
892 * testsuite/gas/i386/fp.d: Update expected output.
894 2019-08-22 Barnaby Wilks <barnaby.wilks@arm.com>
896 * config/tc-aarch64.c: Add float16 directive and add "Hh" to
897 acceptable float characters.
898 * doc/c-aarch64.texi: Documentation for float16 directive.
899 * testsuite/gas/aarch64/float16-be.d: New test.
900 * testsuite/gas/aarch64/float16-le.d: New test.
901 * testsuite/gas/aarch64/float16.s: New test.
902 * NEWS: Add NEWS entry.
904 2019-08-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
906 * testsuite/gas/aarch64/sysreg-4.d: Update expected disassembly for
907 tfsre0_el1, tfsr_el1, tfsr_el2, tfsr_el3, tfsr_el12 system registers.
909 2019-08-20 Dennis Zhang <dennis.zhang@arm.com>
911 * NEWS: Mention the Arm and AArch64 new processors.
912 * config/tc-aarch64.c: New entries for Cortex-A34, Cortex-A65,
913 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
914 * doc/c-aarch64.texi: Document new CPUs.
915 * testsuite/gas/aarch64/cpu-cortex-a34.d: New test.
916 * testsuite/gas/aarch64/cpu-cortex-a65.d: New test.
917 * testsuite/gas/aarch64/cpu-cortex-a65ae.d: New test.
918 * testsuite/gas/aarch64/cpu-cortex-a76ae.d: New test.
919 * testsuite/gas/aarch64/cpu-cortex-a77.d: New test.
920 * testsuite/gas/aarch64/nop-asm.s: New test.
922 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
924 * config/tc-mips.c (fix_bad_misaligned_address): New function.
925 (fix_validate_branch): Call fix_bad_misaligned address_to
926 calculate the target address.
927 (md_apply_fix): Likewise.
928 (md_convert_frag): Update misaligned address calculation to
929 disregard ISA mode bit.
931 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
933 * config/tc-mips.c (mips_move_labels): Retain ISA mode bit
934 when moving labels in text segments.
935 (mips_align): Indicate text mode when aligning labels in
937 * gas/testsuite/gas/mips/insn-isa-mode.d: New test.
938 * gas/testsuite/gas/mips/insn-isa-mode.s: New test source.
939 * gas/testsuite/gas/mips/mips.exp: Run the new test.
941 2019-08-19 Barnaby Wilks <Barnaby.Wilks@arm.com>
943 * config/tc-arm.c (md_atof): Add precision check. Formatting.
945 2019-08-15 Nick Clifton <nickc@redhat.com>
947 * po/sv.po: Updated Swedish translation.
949 2019-08-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
951 * config/tc-arm.c (enum operand_parse_code): Add the entry OP_I48_I64.
952 (po_imm1_or_imm2_or_fail): Marco to check the immediate is either of
954 (parse_operands): Add case OP_I48_I64.
955 (do_mve_scalar_shift1): Add function to encode the MVE shift
956 instructions with 4 arguments.
957 * testsuite/gas/arm/mve-shift-bad.l: Modify.
958 * testsuite/gas/arm/mve-shift-bad.s: Likewise.
959 * testsuite/gas/arm/mve-shift.d: Likewise.
960 * testsuite/gas/arm/mve-shift.s: Likewise.
962 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
964 * config/tc-arm.c (enum fp_16bit_format): Add enum to represent the 2 float16 encodings.
965 (md_atof): Set precision for float16 type.
966 (arm_is_largest_exponent_ok): Check for whether to encode with the IEEE or alternative
968 (set_fp16_format): Parse a float16_format directive.
969 (arm_parse_fp16_opt): Parse the fp16-format command line option.
970 (aeabi_set_public_attributes): For ELF encode the FP16 format EABI attribute.
971 * config/tc-arm.h (TC_LARGEST_EXPONENT_IS_NORMAL): Macro that expands to
972 arm_is_largest_exponent_ok.
973 (arm_is_largest_exponent_ok): Add prototype for arm_is_largest_exponent_ok function.
974 * doc/c-arm.texi: Add documentation for .float16, .float16_format and -mfp16-format=
975 * testsuite/gas/arm/float16-bad.d: New test.
976 * testsuite/gas/arm/float16-bad.l: New test.
977 * testsuite/gas/arm/float16-bad.s: New test.
978 * testsuite/gas/arm/float16-be.d: New test.
979 * testsuite/gas/arm/float16-format-bad.d: New test.
980 * testsuite/gas/arm/float16-format-bad.l: New test.
981 * testsuite/gas/arm/float16-format-bad.s: New test.
982 * testsuite/gas/arm/float16-format-opt-bad.d: New test.
983 * testsuite/gas/arm/float16-format-opt-bad.l: New test.
984 * testsuite/gas/arm/float16-le.d: New test.
985 * testsuite/gas/arm/float16.s: New test.
986 * testsuite/gas/arm/float16-eabi-alternative-format.d: New test.
987 * testsuite/gas/arm/float16-eabi-ieee-format.d: New test.
988 * testsuite/gas/arm/float16-eabi-no-format.d: New test.
989 * testsuite/gas/arm/float16-eabi.s: New test.
991 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
993 * config/atof-ieee.c (H_PRECISION): Macro for precision of float16
995 (atof_ieee): Set precision and exponent bits for encoding float16
997 (gen_to_words): NaN and Infinity encoding for float16.
998 (ieee_md_atof): Set precision for encoding float16 type.
1000 2019-08-12 Alan Modra <amodra@gmail.com>
1003 * config/tc-epiphany.c (md_estimate_size_before_relax): Clear
1004 extra opcode bytes when changing from a 2-byte to a 4-byte insn.
1006 2019-08-09 Jan Beulich <jbeulich@suse.com>
1008 * testsuite/gas/i386/ilp32/x86-64-simd-intel.d,
1009 testsuite/gas/i386/ilp32/x86-64-simd-suffix.d,
1010 testsuite/gas/i386/ilp32/x86-64-simd.d: Redirect to parent dir
1011 output expectations.
1012 * testsuite/gas/i386/x86-64-simd-intel.d,
1013 testsuite/gas/i386/x86-64-simd-suffix.d,
1014 testsuite/gas/i386/x86-64-simd.d: Don't hard-code hex addresses
1015 and symbol-relative offsets.
1017 2019-08-08 Nick Clifton <nickc@redhat.com>
1020 * testsuite/gas/i386/property-1.d: Adjust for new output format
1022 * testsuite/gas/i386/property-2.d: Likewise.
1023 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1024 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1026 2019-08-08 Yoshinori Sato <ysato@users.sourceforge.jp>
1028 * testsuite/gas/h8300/h8300.exp: Fix movfpe and movtpe tests.
1029 * testsuite/gas/h8300/misc.s: Likewise.
1030 * testsuite/gas/h8300/misch.s: Likewise.
1031 * testsuite/gas/h8300/miscs.s: Likewise.
1033 2019-08-05 Barnaby Wilks <barnaby.wilks@arm.com>
1035 * config/tc-arm.c (do_mve_vqdmlah): Use N_S_32 macro.
1036 (do_neon_qrdmlah): Use N_S_32 macro.
1037 * testsuite/gas/arm/mve-vqdmlah-bad.d: New test.
1038 * testsuite/gas/arm/mve-vqdmlah-bad.l: New test.
1039 * testsuite/gas/arm/mve-vqdmlah-bad.s: New test.
1040 * testsuite/gas/arm/mve-vqdmlah.d: Remove unsigned instruction tests.
1041 * testsuite/gas/arm/mve-vqdmlah.s: Remove unsigned instruction tests.
1042 * testsuite/gas/arm/mve-vqdmlash-bad.d: New test.
1043 * testsuite/gas/arm/mve-vqdmlash-bad.l: New test.
1044 * testsuite/gas/arm/mve-vqdmlash-bad.s: New test.
1045 * testsuite/gas/arm/mve-vqdmlash.d: Remove unsigned instruction tests.
1046 * testsuite/gas/arm/mve-vqdmlash.s: Remove unsigned instruction tests.
1048 2019-07-30 Mel Chen <mel.chen@sifive.com>
1050 * testsuite/gas/riscv/alias-csr.s: Add testcase for CSR-access
1052 * testsuite/gas/riscv/no-aliases-csr.d: Run testcase alias-csr.s with
1055 * testsuite/gas/riscv/alias-csr.d: Run testcase alias-csr.s.
1056 * testsuite/gas/riscv/priv-reg.d: Update.
1058 2019-07-24 Nick Clifton <nickc@redhat.com>
1060 * po/sv.po: Updated Swedish translation.
1062 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
1064 * testsuite/gas/arc/nps400-6.d: Update test.
1066 2019-07-24 Alan Modra <amodra@gmail.com>
1068 * config/obj-elf.c (obj_elf_section, obj_elf_type): Set has_gnu_osabi.
1069 * testsuite/gas/elf/section12a.d: Update xfails.
1070 * testsuite/gas/elf/section12b.d: Likewise.
1072 2019-07-24 Alan Modra <amodra@gmail.com>
1074 * testsuite/gas/elf/section12a.d: xfail visium and cloudabi.
1075 * testsuite/gas/elf/section12b.d: Likewise.
1076 * testsuite/gas/elf/section13.d: Likewise.
1078 2019-07-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1080 * testsuite/gas/aarch64/sysreg-4.s: Test gmid_el1 read.
1081 * testsuite/gas/aarch64/sysreg-4.d: Update expected output.
1082 * testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
1084 2019-07-23 Alan Modra <amodra@gmail.com>
1086 * config/obj-elf.c (obj_elf_change_section): Don't emit a fatal
1087 error for non-SHF_ALLOC SHF_GNU_MBIND here.
1088 (obj_elf_parse_section_letters): Return SHF_GNU_MBIND in new
1090 (obj_elf_section): Adjust obj_elf_parse_section_letters call.
1091 Formatting. Set SHF_GNU_MBIND and elf_osabi from gnu_attr.
1092 Emit normal error for non-SHF_ALLOC SHF_GNU_MBIND and wrong osabi.
1093 (obj_elf_type): Set elf_osabi for ifunc.
1094 * testsuite/gas/elf/section12a.d: xfail msp430 and hpux.
1095 * testsuite/gas/elf/section12b.d: Likewise.
1096 * testsuite/gas/elf/section13.d: Likewise.
1097 * testsuite/gas/elf/section13.l: Adjust expected error.
1099 2019-07-23 Alan Modra <amodra@gmail.com>
1101 * testsuite/gas/elf/section12a.d: Don't skip for rx.
1103 2019-07-22 Barnaby Wilks <barnaby.wilks@arm.com>
1105 * config/tc-arm.c (do_mve_vqdmladh): Remove check for UNPREDICTABLE.
1106 * testsuite/gas/arm/mve-vqdmladh-bad.l: Remove tests.
1107 * testsuite/gas/arm/mve-vqdmladh-bad.s: Remove tests.
1108 * testsuite/gas/arm/mve-vqdmladh.d: New tests.
1109 * testsuite/gas/arm/mve-vqdmladh.s: New tests.
1110 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: Remove tests.
1111 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: Remove tests.
1112 * testsuite/gas/arm/mve-vqdmlsdh.d: New tests.
1113 * testsuite/gas/arm/mve-vqdmlsdh.s: New tests.
1115 2019-07-19 H.J. Lu <hongjiu.lu@intel.com>
1117 * testsuite/gas/i386/noextreg.d: Pass -O0 to assembler.
1119 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
1121 * testsuite/gas/bpf/alu.d: Use %r6 instead of %ctx.
1122 * testsuite/gas/bpf/lddw-be.d: Likewise.
1123 * testsuite/gas/bpf/lddw.d: Likewise.
1124 * testsuite/gas/bpf/alu-be.d: Likewise.
1125 * testsuite/gas/bpf/alu32.d: Likewise.
1127 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
1129 * config/tc-bpf.c (pe_lcomm_internal): Adapted from tc-i386.c.
1130 (pe_lcomm): Likewise.
1131 (md_pseudo_table): Use pe_lcomm to implement .lcomm.
1133 2019-07-19 Richard Sandiford <richard.sandiford@arm.com>
1135 * doc/c-aarch64.texi: Remame the +bitperm extension to +sve2-bitperm.
1136 * config/tc-aarch64.c (aarch64_features): Likewise.
1137 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update accordingly.
1138 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Likewise.
1139 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Likewise.
1140 * testsuite/gas/aarch64/illegal-sve2.d: Likewise.
1141 * testsuite/gas/aarch64/sve2.d: Likewise.
1143 2019-07-19 Alan Modra <amodra@gmail.com>
1145 * config/tc-ppc.c (ppc_elf_suffix): Map "tls@pcrel", "got@tlsgd@pcrel",
1146 "got@tlsld@pcrel", "got@tprel@pcrel", and "got@dtprel@pcrel".
1147 (fixup_size, md_assemble): Handle pcrel tls relocs.
1148 (ppc_force_relocation, ppc_fix_adjustable): Likewise.
1149 (md_apply_fix, tc_gen_reloc): Likewise.
1151 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
1153 * config/tc-bpf.c: Make .lcomm to get a third argument with the
1156 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
1158 * config/tc-bpf.c (md_pseudo_table): .half, .word and .dword.
1160 * testsuite/gas/bpf/data.s: New file.
1161 * testsuite/gas/bpf/data.d: Likewise.
1162 * testsuite/gas/bpf/data-be.d: Likewise.
1163 * testsuite/gas/bpf/bpf.exp: Run data and data-be.
1164 * doc/c-bpf.texi (BPF Directives): New section.
1166 2019-07-17 Jan Beulich <jbeulich@suse.com>
1168 * config/tc-i386.c (check_hle, md_assemble, check_VecOperands,
1169 match_template, check_string, build_modrm_byte): Replace
1170 operand_type_check(..., anymem) by Operand_Mem ones.
1171 (process_operands): Also copy i.flags[] when copying other
1174 2019-07-16 Jan Beulich <jbeulich@suse.com>
1176 * config/tc-i386.c (match_template): Adjust regmem reference.
1177 Adjust comment and update regmem when swapping operands.
1178 (build_modrm_byte): Drop clearing of regmem and stale part of
1179 comment. Correct comment. Adjust regmem reference.
1181 2019-07-16 Jan Beulich <jbeulich@suse.com>
1183 * config/tc-i386.c (type_names): Replace SReg entries.
1184 (pi, check_byte_reg, build_modrm_byte, i386_att_operand,
1185 parse_real_register): Switch to using sreg field.
1186 (process_operands): Likewise. Extend handling of PUSH/POP of
1187 segment registers. Drop dead setting of REX_B.
1188 * config/tc-i386-intel.c (i386_intel_simplify_register,
1189 i386_intel_operand): Switch to using sreg field.
1190 * testsuite/gas/i386/x86-64-opcode.s: Add PUSH/POP of %fs/%gs.
1191 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
1192 * testsuite/gas/i386/ilp32/x86-64-opcode.d: Use parent dir
1195 2019-07-15 Jose E. Marchesi <jose.marchesi@oracle.com>
1197 * testsuite/gas/bpf/mem.s: ldabs instructions do not take a `src'
1198 register as an argument.
1199 * testsuite/gas/bpf/mem.d: Updated accordingly.
1200 * testsuite/gas/bpf/mem-be.d: Likewise.
1201 * doc/c-bpf.texi (BPF Opcodes): Update to reflect the correct
1202 explicit arguments to ldabs and ldind instructions.
1204 2019-07-14 Jose E. Marchesi <jose.marchesi@oracle.com>
1206 * testsuite/gas/bpf/mem.s: Do not use explicit arguments for
1207 ldabs and ldind instructions.
1208 * testsuite/gas/bpf/mem.d: Updated accordingly.
1209 * testsuite/gas/bpf/mem-be.d: Likewise.
1211 2019-07-09 Alan Modra <amodra@gmail.com>
1213 * config/obj-elf.c (elf_frob_symbol): Remove mips hacks.
1214 * config/tc-mips.h (tc_frob_symbol): Define.
1215 (mips_frob_symbol): Declare.
1216 * config/tc-mips.c (s_mips_globl): Don't set BSF_OBJECT for irix.
1217 (mips_frob_symbol): Fudge symbols for irix here.
1218 * testsuite/gas/elf/type-2.e: Allow random target symbols.
1220 2019-07-05 Kito Cheng <kito.cheng@sifive.com>
1222 * doc/c-riscv.texi (Instruction Formats): Add r4 type.
1223 * testsuite/gas/riscv/insn.d: Add testcase for r4 type.
1224 * testsuite/gas/riscv/insn.s: Ditto.
1226 * doc/c-riscv.texi (Instruction Formats): Add b and j type.
1227 * testsuite/gas/riscv/insn.d: Add test case for b and j type.
1228 * testsuite/gas/riscv/insn.s: Ditto.
1230 * testsuite/gas/riscv/insn.s: Correct instruction type for load
1233 * testsuite/gas/riscv/insn.d: Using regular expression to match
1236 * doc/c-riscv.texi (Instruction Formats): Fix encoding table for SB
1239 2019-07-04 Jan Beulich <jbeulich@suse.com>
1241 * config/tc-i386.c (md_parse_option): Don't blindly accept all
1243 (md_show_usage): Correctly name the ignored -Q option flavors.
1245 2019-07-04 Jan Beulich <jbeulich@suse.com>
1247 * config/obj-elf.c (obj_elf_type): Check for conflicts between
1249 * config/tc-hppa.h (md_elf_symbol_type_change): New.
1250 * doc/as.texi: Mention warning behavior for the ELF flavor of
1252 * testsuite/gas/elf/type-2.e, testsuite/gas/elf/type-2.l,
1253 testsuite/gas/elf/type-2.s: New.
1254 * testsuite/gas/elf/elf.exp: Run new test.
1256 2019-07-03 Nick Clifton <nickc@redhat.com>
1258 * testsuite/gas/aarch64/codealign.d: Update to work with a
1259 toolchain configured to generate build notes.
1260 * testsuite/gas/aarch64/codealign_1.d: Likewise.
1261 * testsuite/gas/aarch64/dwarf.d: Likewise.
1262 * testsuite/gas/aarch64/mapmisc.d: Likewise.
1263 * testsuite/gas/aarch64/mapping.d: Likewise.
1264 * testsuite/gas/aarch64/mapping2.d: Likewise.
1265 * testsuite/gas/aarch64/mapping3.d: Likewise.
1266 * testsuite/gas/aarch64/mapping4.d: Likewise.
1267 * testsuite/gas/aarch64/mapping_5.d: Likewise.
1268 * testsuite/gas/aarch64/mapping_6.d: Likewise.
1269 * testsuite/gas/aarch64/sve-movprfx_1.d: Likewise.
1270 * testsuite/gas/aarch64/sve-movprfx_10.d: Likewise.
1271 * testsuite/gas/aarch64/sve-movprfx_11.d: Likewise.
1272 * testsuite/gas/aarch64/sve-movprfx_12.d: Likewise.
1273 * testsuite/gas/aarch64/sve-movprfx_13.d: Likewise.
1274 * testsuite/gas/aarch64/sve-movprfx_14.d: Likewise.
1275 * testsuite/gas/aarch64/sve-movprfx_15.d: Likewise.
1276 * testsuite/gas/aarch64/sve-movprfx_16.d: Likewise.
1277 * testsuite/gas/aarch64/sve-movprfx_17.d: Likewise.
1278 * testsuite/gas/aarch64/sve-movprfx_18.d: Likewise.
1279 * testsuite/gas/aarch64/sve-movprfx_19.d: Likewise.
1280 * testsuite/gas/aarch64/sve-movprfx_2.d: Likewise.
1281 * testsuite/gas/aarch64/sve-movprfx_20.d: Likewise.
1282 * testsuite/gas/aarch64/sve-movprfx_21.d: Likewise.
1283 * testsuite/gas/aarch64/sve-movprfx_22.d: Likewise.
1284 * testsuite/gas/aarch64/sve-movprfx_23.d: Likewise.
1285 * testsuite/gas/aarch64/sve-movprfx_24.d: Likewise.
1286 * testsuite/gas/aarch64/sve-movprfx_25.d: Likewise.
1287 * testsuite/gas/aarch64/sve-movprfx_26.d: Likewise.
1288 * testsuite/gas/aarch64/sve-movprfx_27.d: Likewise.
1289 * testsuite/gas/aarch64/sve-movprfx_3.d: Likewise.
1290 * testsuite/gas/aarch64/sve-movprfx_4.d: Likewise.
1291 * testsuite/gas/aarch64/sve-movprfx_5.d: Likewise.
1292 * testsuite/gas/aarch64/sve-movprfx_6.d: Likewise.
1293 * testsuite/gas/aarch64/sve-movprfx_7.d: Likewise.
1294 * testsuite/gas/aarch64/sve-movprfx_8.d: Likewise.
1295 * testsuite/gas/aarch64/sve-movprfx_9.d: Likewise.
1296 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: Likewise.
1297 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: Likewise.
1298 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: Likewise.
1299 * testsuite/gas/all/assign.d: Likewise.
1300 * testsuite/gas/all/none.d: Likewise.
1301 * testsuite/gas/all/weakref1.d: Likewise.
1302 * testsuite/gas/arm/got_prel.d: Likewise.
1303 * testsuite/gas/arm/local_function.d: Likewise.
1304 * testsuite/gas/arm/mapdir.d: Likewise.
1305 * testsuite/gas/arm/mapmisc.d: Likewise.
1306 * testsuite/gas/arm/mapping2.d: Likewise.
1307 * testsuite/gas/arm/mapping3.d: Likewise.
1308 * testsuite/gas/arm/mapping4.d: Likewise.
1309 * testsuite/gas/arm/mapsecs.d: Likewise.
1310 * testsuite/gas/arm/mapshort-eabi.d: Likewise.
1311 * testsuite/gas/arm/thumbrel.d: Likewise.
1312 * testsuite/gas/arm/unwind.d: Likewise.
1313 * testsuite/gas/cfi/cfi-label.d: Likewise.
1314 * testsuite/gas/elf/elf.exp: Likewise.
1315 * testsuite/gas/i386/bss.d: Likewise.
1316 * testsuite/gas/i386/ifunc-3.d: Likewise.
1317 * testsuite/gas/i386/ilp32/mixed-mode-reloc64.d: Likewise.
1318 * testsuite/gas/i386/ilp32/quad.d: Likewise.
1319 * testsuite/gas/i386/ilp32/reloc64.d: Likewise.
1320 * testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
1321 * testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
1322 * testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
1323 * testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
1324 * testsuite/gas/i386/mixed-mode-reloc32.d: Likewise.
1325 * testsuite/gas/i386/mixed-mode-reloc64.d: Likewise.
1326 * testsuite/gas/i386/nop-6.d: Likewise.
1327 * testsuite/gas/i386/property-1.d: Likewise.
1328 * testsuite/gas/i386/property-2.d: Likewise.
1329 * testsuite/gas/i386/relax.d: Likewise.
1330 * testsuite/gas/i386/reloc64.d: Likewise.
1331 * testsuite/gas/i386/size-1.d: Likewise.
1332 * testsuite/gas/i386/size-3.d: Likewise.
1333 * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
1334 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1335 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1336 * testsuite/gas/i386/x86-64-size-1.d: Likewise.
1337 * testsuite/gas/i386/x86-64-size-3.d: Likewise.
1338 * testsuite/gas/i386/x86-64-size-5.d: Likewise.
1339 * testsuite/gas/i386/x86-64-unwind.d: Likewise.
1340 * testsuite/gas/macros/irp.d: Likewise.
1341 * testsuite/gas/macros/repeat.d: Likewise.
1342 * testsuite/gas/macros/rept.d: Likewise.
1343 * testsuite/gas/macros/test2.d: Likewise.
1344 * testsuite/gas/macros/test3.d: Likewise.
1345 * testsuite/gas/macros/vararg.d: Likewise.
1346 * testsuite/gas/ppc/astest2.d: Likewise.
1347 * testsuite/gas/ppc/astest2_64.d: Likewise.
1348 * testsuite/gas/ppc/astest64.d: Likewise.
1349 * testsuite/gas/ppc/power4.d: Likewise.
1350 * testsuite/gas/ppc/test1elf64.d: Likewise.
1352 2019-07-02 Barnaby Wilks <barnaby.wilks@arm.com>
1354 * config/tc-aarch64.c (parse_operands): Add error check.
1355 * testsuite/gas/aarch64/diagnostic.l: New test.
1356 * testsuite/gas/aarch64/diagnostic.s: New test.
1357 * testsuite/gas/aarch64/illegal.l: New tests.
1358 * testsuite/gas/aarch64/illegal.s: New tests.
1360 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1362 * testsuite/gas/aarch64/sve-movprfx_27.s,
1363 * testsuite/gas/aarch64/sve-movprfx_27.d: New test.
1365 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1367 * testsuite/gas/aarch64/sve-movprfx_26.s: Also test FCVTZS, FCVTZU,
1368 SCVTF, UCVTF, LSR and ASR.
1369 * testsuite/gas/aarch64/sve-movprfx_26.d: Update accordingly.
1370 * testsuite/gas/aarch64/sve-movprfx_26.l: Likewise.
1372 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1374 * testsuite/gas/aarch64/sve-movprfx_25.s: Allow CPY Z1.D.P1/M,X1
1375 to be prefixed by MOVPRFX.
1376 * testsuite/gas/aarch64/sve-movprfx_25.d: Update accordingly.
1377 * testsuite/gas/aarch64/sve-movprfx_25.l: Likewise.
1379 2019-07-01 Nick Clifton <nickc@redhat.com>
1382 * write.c (create_note_reloc): Add desc2_offset parameter. Change
1383 name of offset parameter to note_offset. Only use desc2_offset
1384 when placing addend into REL reloc's address space.
1385 (maybe_generate_build_notes): Update parameters passed to
1388 2019-07-01 Matthew Malcomson <matthew.malcomson@arm.com>
1390 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update tests.
1391 * testsuite/gas/aarch64/illegal-sve2.l: Update tests.
1392 * doc/c-aarch64.texi: Add special note of pmull{t,b}
1393 instructions under the sve2-aes architecture extension.
1394 * testsuite/gas/aarch64/illegal-sve2.s: Add small size
1395 pmull{t,b} instructions.
1396 * testsuite/gas/aarch64/sve2.d: Add small size pmull{t,b}
1398 * testsuite/gas/aarch64/sve2.s: Add small size pmull{t,b}
1401 2019-07-01 Nick Clifton <nickc@redhat.com>
1404 * doc/c-i386.texi (i386-Directives): Add a description of the
1407 2019-07-01 Nick Clifton <nickc@redhat.com>
1410 * doc/as.texi (Align): Add missing word to description of
1412 (P2align): Likewise.
1414 2019-06-28 Nick Clifton <nickc@redhat.com>
1417 * doc/as.texi (Zero): Fix spelling typo.
1419 2019-07-01 Jan Beulich <jbeulich@suse.com>
1421 * config/tc-i386.c (vec_imm4): Delete.
1422 (VEX_check_operands): Replace Vec_Imm4 check by CpuXOP with five
1423 operands one. Clear Imm<N> by different means.
1424 (build_modrm_byte): Adjust comment. Remove dead code. Add and
1427 2019-07-01 Jan Beulich <jbeulich@suse.com>
1429 * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
1430 insns. Move PadLock special case of prefix emission to 3-byte
1431 long base opcode handling.
1432 (i386_index_check): Check for CpuPadLock instead of ImmExt.
1434 2019-07-01 Jan Beulich <jbeulich@suse.com>
1436 * config/tc-i386.c (optimize_encoding): Handle AND / OR with
1437 both operands being the same register.
1438 * doc/c-i386.texi: Update -O2 documentation.
1439 * testsuite/gas/i386/optimize-2.s,
1440 testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
1441 with both operands being the same register.
1442 * testsuite/gas/i386/optimize-2.d,
1443 testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
1444 * testsuite/gas/i386/optimize-2b.d,
1445 testsuite/gas/i386/x86-64-optimize-3b.d: New.
1446 * testsuite/gas/i386/i386.exp: Run new test.
1448 2019-07-01 Jan Beulich <jbeulich@suse.com>
1450 * config/tc-i386.c (commutative): New.
1451 (build_vex_prefix): Handle commutative case.
1452 (optimize_encoding): Set commutative flag when appropriate.
1453 * doc/c-i386.texi: Update -O2 documentation.
1454 * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
1456 * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
1457 numbered source operands.
1458 * testsuite/gas/i386/x86-64-optimize-2.d,
1459 testsuite/gas/i386/x86-64-optimize-2b.d,
1460 testsuite/gas/i386/x86-64-optimize-3.d,
1461 testsuite/gas/i386/x86-64-optimize-5.d,
1462 testsuite/gas/i386/x86-64-optimize-6.d,
1463 testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
1464 * testsuite/gas/i386/x86-64-avx-swap-2.d,
1465 testsuite/gas/i386/x86-64-avx-swap-2.s: New.
1466 * testsuite/gas/i386/i386.exp: Run new test.
1468 2019-07-01 Jan Beulich <jbeulich@suse.com>
1470 * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
1471 (check_VecOperands): Simplify static rounding / SAE checking.
1473 2019-07-01 Jan Beulich <jbeulich@suse.com>
1475 * config/tc-i386.c (optimize_encoding): Make j unsigned. Handle
1476 vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}. Also check/
1477 clear broadcast. Eliminate a loop.
1478 * doc/c-i386.texi: Update -O1 documentation.
1479 * testsuite/gas/i386/optimize-1.s,
1480 testsuite/gas/i386/optimize-2.s,
1481 testsuite/gas/i386/optimize-3.s,
1482 testsuite/gas/i386/optimize-5.s,
1483 testsuite/gas/i386/x86-64-optimize-2.s,
1484 testsuite/gas/i386/x86-64-optimize-3.s,
1485 testsuite/gas/i386/x86-64-optimize-4.s,
1486 testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
1487 vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
1488 testsuite/gas/i386/optimize-1.d,
1489 testsuite/gas/i386/optimize-1a.d,
1490 testsuite/gas/i386/optimize-2.d,
1491 testsuite/gas/i386/optimize-3.d,
1492 testsuite/gas/i386/optimize-4.d,
1493 testsuite/gas/i386/optimize-5.d,
1494 testsuite/gas/i386/x86-64-optimize-2.d,
1495 testsuite/gas/i386/x86-64-optimize-2a.d,
1496 testsuite/gas/i386/x86-64-optimize-2b.d,
1497 testsuite/gas/i386/x86-64-optimize-3.d,
1498 testsuite/gas/i386/x86-64-optimize-4.d,
1499 testsuite/gas/i386/x86-64-optimize-5.d,
1500 testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
1502 2019-07-01 Jan Beulich <jbeulich@suse.com>
1504 * testsuite/gas/i386/avx512f_vpclmulqdq.s,
1505 testsuite/gas/i386/avx512vl_vpclmulqdq.s,
1506 testsuite/gas/i386/vpclmulqdq.s,
1507 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
1508 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
1509 * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
1510 high 16 [xy]mm registers.
1511 * testsuite/gas/i386/avx512f_vpclmulqdq.d,
1512 testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
1513 testsuite/gas/i386/avx512vl_vpclmulqdq.d,
1514 testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
1515 testsuite/gas/i386/vpclmulqdq.d,
1516 testsuite/gas/i386/vpclmulqdq-intel.d,
1517 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
1518 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
1519 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
1520 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
1521 testsuite/gas/i386/x86-64-vpclmulqdq.d,
1522 testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
1525 2019-07-01 Jan Beulich <jbeulich@suse.com>
1527 * tc-i386.c (output_disp, output_imm): Use encoding_length.
1529 2019-07-01 Jan Beulich <jbeulich@suse.com>
1531 * tc-i386.c (encoding_length): New.
1532 (output_insn): Use it.
1533 * testsuite/gas/i386/oversized16.l,
1534 testsuite/gas/i386/oversized16.s,
1535 testsuite/gas/i386/oversized64.l,
1536 testsuite/gas/i386/oversized64.s: New.
1537 * testsuite/gas/i386/i386.exp: Run new tests.
1539 2019-06-27 H.J. Lu <hongjiu.lu@intel.com>
1542 * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
1543 with invalid vector length.
1544 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1545 * testsuite/gas/i386/disassem.d: Updated.
1546 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1548 2019-06-27 Barnaby Wilk s<barnaby.wilks@arm.com>
1550 * config/tc-arm.c (do_smc): Add range check for immediate operand.
1551 (do_t_smc): Add range check for immediate operand. Remove
1552 obsolete immediate encoding.
1553 (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
1554 * testsuite/gas/arm/arch6zk.d: Fix test.
1555 * testsuite/gas/arm/arch6zk.s: Fix test.
1556 * testsuite/gas/arm/smc-bad.d: New test.
1557 * testsuite/gas/arm/smc-bad.l: New test.
1558 * testsuite/gas/arm/smc-bad.s: New test.
1559 * testsuite/gas/arm/thumb32.d: Fix test.
1560 * testsuite/gas/arm/thumb32.s: Fix test.
1562 2019-06-27 Jan Beulich <jbeulich@suse.com>
1564 config/tc-i386.c (md_assemble): Check for protected mode
1565 incapable processor before encoding VEX and alike insns.
1566 * testsuite/gas/i386/inval-16.s: For 80186 architecture.
1567 * testsuite/gas/i386/inval-16.l: Adjust expectations.
1568 * testsuite/gas/i386/avx-16bit.d,
1569 testsuite/gas/i386/avx-16bit.s,
1570 testsuite/gas/i386/avx512f-16bit.d,
1571 testsuite/gas/i386/avx512f-16bit.s,
1572 testsuite/gas/i386/bmi-16bit.d,
1573 testsuite/gas/i386/bmi-16bit.s,
1574 testsuite/gas/i386/bmi2-16bit.d,
1575 testsuite/gas/i386/bmi2-16bit.s,
1576 testsuite/gas/i386/lwp-16bit.d,
1577 testsuite/gas/i386/lwp-16bit.s: New
1578 testsuite/gas/i386/i386.exp: Run new tests.
1580 2019-06-26 Jim Wilson <jimw@sifive.com>
1582 * testsuite/gas/xstormy16/allinsn.sh: Change first line to
1583 #!/bin/bash and make it executable.
1584 * testsuite/gas/xstormy16/gcc.sh: Likewise.
1586 2019-06-26 Lili Cui <lili.cui@intel.com>
1588 * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
1589 syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
1592 2019-06-25 Faraz Shahbazker <fshahbazker@wavecomp.com>
1594 * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
1595 respect to MTC1 and use $0 for either part where possible.
1596 * testsuite/gas/mips/li-d.s: Add test cases for non-zero
1597 words in double precision constants.
1598 * testsuite/gas/mips/li-d.d: Update reference output.
1599 * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
1600 * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
1601 * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
1603 2019-06-25 Jan Beulich <jbeulich@suse.com>
1605 * tc-i386.c (acc32, acc64): Delete.
1606 (pi): Make first parameter pinter-to-const.
1607 (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
1608 (pt): Use operand_type_equal().
1609 (match_template): Replace use of acc32.
1610 (process_suffix): Replace use of acc64.
1612 2019-06-25 Jan Beulich <jbeulich@suse.com>
1614 * doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
1617 2019-06-25 Jan Beulich <jbeulich@suse.com>
1619 * tc-i386.c (process_suffix): Use is_any_vex_encoding().
1621 2019-06-25 Jan Beulich <jbeulich@suse.com>
1623 * testsuite/gas/i386/sse2-16bit.d,
1624 testsuite/gas/i386/sse2-16bit.s: New.
1625 testsuite/gas/i386/i386.exp: Run new test.
1627 2019-06-25 Jan Beulich <jbeulich@suse.com>
1629 * config/tc-i386.c (optimize_encoding): Also handle ANDQ with
1630 immediatie fitting in 7 bits.
1631 * testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
1632 7- and 8-bit immediates.
1633 * testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
1635 2019-06-25 Jan Beulich <jbeulich@suse.com>
1637 * testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
1639 * testsuite/gas/i386/xmmword.l: Adjust expectations.
1641 2019-06-25 Alan Modra <amodra@gmail.com>
1643 * config/tc-ppc.c (ppc_handle_align): Add parentheses.
1645 2019-06-25 Alan Modra <amodra@gmail.com>
1647 * config/tc-ppc.h (ppc_nop_select): Declare.
1648 (NOP_OPCODE): Define.
1649 * config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
1650 (ppc_nop_encoding_for_rs_align_code): New enum.
1651 (ppc_nop_select): New function.
1652 (ppc_handle_align): Don't use ppc_cpu here. Get nop type from frag.
1653 * testsuite/gas/ppc/groupnop.d,
1654 * testsuite/gas/ppc/groupnop.s: New test.
1655 * testsuite/gas/ppc/ppc.exp: Run it.
1657 2019-06-19 H.J. Lu <hongjiu.lu@intel.com>
1660 * testsuite/gas/i386/disassem.s: Add test for vbroadcasti32x8
1661 with invalid vector length.
1662 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1663 * testsuite/gas/i386/disassem.d: Updated.
1664 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1666 2019-06-17 H.J. Lu <hongjiu.lu@intel.com>
1669 * testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
1670 invalid vector length.
1671 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1672 * testsuite/gas/i386/disassem.d: Updated.
1673 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1675 2019-06-14 Alan Modra <amodra@gmail.com>
1677 * Makefile.in: Regenerate.
1678 * configure: Regenerate.
1679 * doc/Makefile.in: Regenerate.
1681 2019-06-12 Peter Bergner <bergner@linux.ibm.com>
1683 * testsuite/gas/ppc/power9.d: Delete ldmx tests.
1684 * testsuite/gas/ppc/power9.s: Likewise.
1686 2019-06-06 Lili Cui <lili.cui@intel.com>
1688 * config/tc-i386.c (cpu_arch): Add .enqcmd.
1689 (cpu_noarch): Add noenqcmd.
1690 * doc/c-i386.texi: Document noenqcmd.
1692 2019-06-05 H.J. Lu <hongjiu.lu@intel.com>
1695 * testsuite/gas/i386/disassem.s: Add tests for invalid vector
1696 lengths for EVEX vextractfXX and vinsertfXX.
1697 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1698 * testsuite/gas/i386/disassem.d: Updated.
1699 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1701 2019-06-04 H.J. Lu <hongjiu.lu@intel.com>
1704 * testsuite/gas/i386/disassem.s: Add tests for reserved VEX.vvvv
1706 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1707 * testsuite/gas/i386/disassem.d: Updated.
1708 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1710 2019-06-04 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
1711 Lili Cui <lili.cui@intel.com>
1713 * config/tc-i386.c (cpu_arch): Add .avx512_vp2intersect.
1714 (cpu_noarch): Likewise.
1715 * doc/c-i386.texi: Document avx512_vp2intersect.
1716 * testsuite/gas/i386/i386.exp: Run vp2intersect tests.
1717 * testsuite/gas/i386/vp2intersect-intel.d: New test.
1718 * testsuite/gas/i386/vp2intersect.d: Likewise.
1719 * testsuite/gas/i386/vp2intersect.s: Likewise.
1720 * testsuite/gas/i386/vp2intersect-inval-bcast.l: Likewise.
1721 * testsuite/gas/i386/vp2intersect-inval-bcast.s: Likewise.
1722 * testsuite/gas/i386/x86-64-vp2intersect-intel.d: Likewise.
1723 * testsuite/gas/i386/x86-64-vp2intersect.d: Likewise.
1724 * testsuite/gas/i386/x86-64-vp2intersect.s: Likewise.
1725 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.l: Likewise.
1726 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.s: Likewise.
1728 2019-06-04 Xuepeng Guo <xuepeng.guo@intel.com>
1729 Lili Cui <lili.cui@intel.com>
1731 * doc/c-i386.texi: Document enqcmd.
1732 * testsuite/gas/i386/enqcmd-intel.d: New file.
1733 * testsuite/gas/i386/enqcmd-inval.l: Likewise.
1734 * testsuite/gas/i386/enqcmd-inval.s: Likewise.
1735 * testsuite/gas/i386/enqcmd.d: Likewise.
1736 * testsuite/gas/i386/enqcmd.s: Likewise.
1737 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
1738 * testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
1739 * testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
1740 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
1741 * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
1742 * testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
1743 enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
1746 2019-05-30 Jim Wilson <jimw@sifive.com>
1748 * config/tc-riscv.c (riscv_ip) <'u'>: Move O_constant check inside if
1749 statement. Delete O_symbol and O_constant check after if statement.
1750 * testsuite/gas/riscv/auipc-parsing.s: Test lui with missing %hi.
1751 * testsuite/gas/riscv/auipc-parsing.l: Update.
1753 2019-05-28 H.J. Lu <hongjiu.lu@intel.com>
1756 * testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
1757 instructions with invalid broadcast.
1758 * testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
1759 * testsuite/gas/i386/inval-avx512f.l: Updated.
1760 * testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
1762 2019-05-27 Alan Modra <amodra@gmail.com>
1764 * config/tc-ppc.c (is_ppc64_target): New function.
1765 (md_show_usage): Split up usage message. Don't show -a64 when
1767 testsuite/gas/ppc/ppc.exp (supports_ppc64): New.
1768 (prefix-reloc): Only run for ppc64.
1770 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1772 * config/tc-aarch64.c (aarch64_elf_copy_symbol_attributes): Define.
1773 * config/tc-aarch64.h (aarch64_elf_copy_symbol_attributes): Declare.
1774 (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1775 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: New test.
1776 * testsuite/gas/aarch64/symbol-variant_pcs-3.s: New test.
1778 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1780 * config/tc-aarch64.c (s_variant_pcs): New function.
1781 * doc/c-aarch64.texi: Document .variant_pcs.
1782 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: New test.
1783 * testsuite/gas/aarch64/symbol-variant_pcs-1.s: New test.
1784 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: New test.
1785 * testsuite/gas/aarch64/symbol-variant_pcs-2.s: New test.
1787 2019-05-24 Alan Modra <amodra@gmail.com>
1789 * po/POTFILES.in: Regenerate.
1791 2019-05-24 Alan Modra <amodra@gmail.com>
1793 * config/tc-ppc.c (ppc_elf_suffix): Support @pcrel, @got@pcrel,
1794 @plt@pcrel, @higher34, @highera34, @highest34, and @highesta34.
1795 (fixup_size): Handle new powerxx relocs.
1796 (md_assemble): Warn for @pcrel on non-prefix insns.
1797 Accept @l, @h and @ha on prefix insns, and infer reloc without
1798 any @ suffix. Translate powerxx relocs to suit DQ and DS field
1799 instructions. Include operand tests as well as opcode test to
1800 translate BFD_RELOC_HI16_S to BFD_RELOC_PPC_16DX_HA.
1801 (ppc_fix_adjustable): Return false for pcrel GOT and PLT relocs.
1802 (md_apply_fix): Handle new powerxx relocs.
1803 * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Accept
1804 BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34,
1805 BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34,
1806 BFD_RELOC_PPC64_D34, and BFD_RELOC_PPC64_D28.
1807 * testsuite/gas/ppc/prefix-reloc.d,
1808 * testsuite/gas/ppc/prefix-reloc.s: New test.
1809 * testsuite/gas/ppc/ppc.exp: Run it.
1811 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1812 Alan Modra <amodra@gmail.com>
1814 * config/tc-ppc.c (ppc_insert_operand): Only sign extend fields that
1815 are 32-bits or smaller.
1816 * messages.c (as_internal_value_out_of_range): Do not truncate
1817 variables and use BFD_VMA_FMT to print them.
1818 * testsuite/gas/ppc/prefix-pcrel.s,
1819 * testsuite/gas/ppc/prefix-pcrel.d: New test.
1820 * testsuite/gas/ppc/ppc.exp: Run it.
1822 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1823 Alan Modra <amodra@gmail.com>
1825 * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
1826 (struct insn_label_list): New.
1827 (insn_labels, free_insn_labels): New variables.
1828 (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
1829 (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
1830 and call ppc_record_label.
1831 (md_assemble): Handle 64-bit prefix instructions. Align labels
1832 that are on the same line as a prefix instruction.
1833 * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
1835 (md_start_line_hook): Define.
1836 (ppc_start_line_hook): Declare.
1837 * testsuite/gas/ppc/prefix-align.d,
1838 * testsuite/gas/ppc/prefix-align.s: New test.
1839 * testsuite/gas/ppc/ppc.exp: Run new test.
1841 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1843 * configure.ac: Handle bpf-*-* targets.
1844 * configure.tgt (generic_target): Likewise.
1845 * configure: Regenerate.
1846 * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
1847 (TARGET_CPU_HFILES): Add tc-bpf.h.
1848 * Makefile.in: Regenerated.
1849 * config/tc-bpf.c: New file.
1850 * config/tc-bpf.h: Likewise.
1851 * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
1852 * doc/Makefile.in: Regenerated.
1853 * doc/all.texi: set BPF.
1854 * doc/as.texi: Add eBPF contents.
1855 * doc/c-bpf.texi: New file.
1856 * testsuite/gas/bpf/alu.d: New file.
1857 * testsuite/gas/bpf/mem-be.d: Likewise.
1858 * testsuite/gas/bpf/mem.s: Likewise.
1859 * testsuite/gas/bpf/mem.d: Likewise.
1860 * testsuite/gas/bpf/lddw-be.d: Likewise.
1861 * testsuite/gas/bpf/lddw.s: Likewise.
1862 * testsuite/gas/bpf/lddw.d: Likewise.
1863 * testsuite/gas/bpf/jump-be.d: Likewise.
1864 * testsuite/gas/bpf/jump.s: Likewise.
1865 * testsuite/gas/bpf/jump.d: Likewise.
1866 * testsuite/gas/bpf/exit-be.d: Likewise.
1867 * testsuite/gas/bpf/exit.s: Likewise.
1868 * testsuite/gas/bpf/exit.d: Likewise.
1869 * testsuite/gas/bpf/call-be.d: Likewise.
1870 * testsuite/gas/bpf/call.s: Likewise.
1871 * testsuite/gas/bpf/call.d: Likewise.
1872 * testsuite/gas/bpf/bpf.exp: Likewise.
1873 * testsuite/gas/bpf/atomic-be.d: Likewise.
1874 * testsuite/gas/bpf/atomic.s: Likewise.
1875 * testsuite/gas/bpf/atomic.d: Likewise.
1876 * testsuite/gas/bpf/alu-be.d: Likewise.
1877 * testsuite/gas/bpf/alu32-be.d: Likewise.
1878 * testsuite/gas/bpf/alu32.s: Likewise.
1879 * testsuite/gas/bpf/alu32.d: Likewise.
1880 * testsuite/gas/bpf/alu.s: Likewise.
1881 * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
1882 * testsuite/gas/all/org-1.s: Support nop_type 6.
1883 * testsuite/gas/all/org-1.l: Updated to reflect changes in
1886 2019-05-22 John Darrington <john@darrington.wattle.id.au>
1888 * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
1889 (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
1890 (<global>): Use s12z_strtol instead of strtol.
1891 * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
1892 * testsuite/gas/s12z/dollar-hex.d: New file.
1893 * testsuite/gas/s12z/dollar-hex.s: New file.
1894 * testsuite/gas/s12z/s12z.exp: Add them.
1896 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1898 * config/tc-arm.c (parse_operands): Update case OP_RVC to
1900 (do_vmrs): Add checks for valid operands with respect to
1901 cpu and fpu options.
1902 (do_vmsr): Likewise.
1903 (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
1905 * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
1906 * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
1907 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
1908 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
1909 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
1910 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
1911 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
1912 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
1913 * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
1914 * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
1916 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1918 * config/tc-arm.c (TOGGLE_BIT): New.
1919 (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
1920 csinv, csneg, cset, csetm and csel.
1921 (operand_parse_code): New OP_RR_ZR.
1922 (parse_operand): Handle case for OP_RR_ZR.
1924 (insns): New instructions for cinc, cinv, cneg, csinc,
1925 csinv, csneg, cset, csetm, csel.
1926 * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
1927 * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
1928 * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
1929 * testsuite/gas/arm/armv8_1-m-cond.d: New test.
1930 * testsuite/gas/arm/armv8_1-m-cond.s: New test.
1932 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1934 * config/tc-arm.c (operand_parse_code): New entries for
1935 OP_RRnpcsp_I32 (register or integer operands).
1936 (do_mve_scalar_shift): New.
1937 (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
1938 sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
1939 * testsuite/gas/arm/mve-shift.d: New.
1940 * testsuite/gas/arm/mve-shift.s: New.
1941 * testsuite/gas/arm/mve-shift-bad.d: New.
1942 * testsuite/gas/arm/mve-shift-bad.s: New.
1943 * testsuite/gas/arm/mve-shift-bad.l: New.
1945 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1947 * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
1948 * testsuite/gas/mips/r6-reg-constraints.s: this and add test
1950 * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
1951 * testsuite/gas/mips/r6-reg-constraints.l: this and add test
1953 * testsuite/gas/mips/mips.exp: Rename test from
1954 r6-branch-constraints to r6-reg-constraints.
1956 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1959 * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
1961 * testsuite/gas/arm/load-pseudo.s: New test input.
1962 * testsuite/gas/arm/m0-load-pseudo.d: New test.
1963 * testsuite/gas/arm/m23-load-pseudo.d: New test.
1964 * testsuite/gas/arm/m33-load-pseudo.d: New test.
1966 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1968 * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
1970 * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
1971 * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
1972 * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
1973 * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
1974 * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
1975 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
1976 * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
1978 2019-05-21 John Darrington <john@darrington.wattle.id.au>
1980 * expr.c (literal_prefix_dollar_hex): New variable.
1981 (operand)[case '$']: Use the new variable instead of the old macro.
1982 Also, move this instance of "case '$'" next to the other one, and
1983 enable it only in the complementary proprocessor case.
1984 * expr.h (literal_prefix_dollar_hex): Declare it.
1985 * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
1986 * config/tc-ip2k.c: ditto
1987 * config/tc-mt.c: ditto
1988 * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
1989 * config/tc-ip2k.h: ditto
1990 * config/tc-mt.h: ditto
1992 2019-05-20 Faraz Shahbazker <fshahbazker@wavecomp.com>
1995 * config/tc-mips.c (s_mips_globl): Only treat symbols that are
1996 not explicitly labelled as BSF_OBJECTs for IRIX targets.
1997 * testsuite/gas/mips/pr14798.s: New test source.
1998 * testsuite/gas/mips/pr14798-irix.d: New test.
1999 * testsuite/gas/mips/pr14798.d: Likewise.
2000 * testsuite/gas/mips/mips.exp: Run the new tests.
2002 2019-05-17 John Darrington <john@darrington.wattle.id.au>
2004 * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
2005 * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
2007 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2009 * config/tc-arm.c (check_simd_pred_availability): Refactor.
2010 (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
2011 (do_neon_dyadic_i64_su): Likewise.
2012 (do_neon_shl): Likewise.
2013 (do_neon_qshl): Likewise.
2014 (do_neon_rshl): Likewise.
2015 (do_neon_logic): Likewise.
2016 (do_neon_dyadic_if_su): Likewise.
2017 (do_neon_addsub_if_i): Likewise.
2018 (do_neon_mac_maybe_scalar): Likewise.
2019 (do_neon_fmac): Likewise.
2020 (do_neon_mul): Likewise.
2021 (do_neon_qdmulh): Likewise.
2022 (do_neon_qrdmlah): Likewise.
2023 (do_neon_abs_neg): Likewise.
2024 (do_neon_sli): Likewise.
2025 (do_neon_sri): Likewise.
2026 (do_neon_qshlu_imm): Likewise.
2027 (do_neon_cvt_1): Likewise.
2028 (do_neon_cvttb_1): Likewise.
2029 (do_neon_mvn): Likewise.
2030 (do_neon_rev): Likewise.
2031 (do_neon_dup): Likewise.
2032 (do_neon_mov): Likewise.
2033 (do_neon_rshift_round_imm): Likewise.
2034 (do_neon_sat_abs_neg): Likewise.
2035 (do_neon_cls): Likewise.
2036 (do_neon_clz): Likewise.
2037 (do_vmaxnm): Likewise.
2038 (do_vrint_1): Likewise.
2039 (do_vcmla): Likewise.
2040 (do_vcadd): Likewise.
2042 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2044 * NEWS: Mention Armv8.1-M Mainline and MVE.
2046 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2048 * testsuite/gas/arm/mve-tailpredloop.d: New test.
2049 * testsuite/gas/arm/mve-tailpredloop.s: New test.
2050 * testsuite/gas/arm/mve-vabav.d: New test.
2051 * testsuite/gas/arm/mve-vabav.s: New test.
2052 * testsuite/gas/arm/mve-vabd.d: New test.
2053 * testsuite/gas/arm/mve-vabd.s: New test.
2054 * testsuite/gas/arm/mve-vabsneg.d: New test.
2055 * testsuite/gas/arm/mve-vabsneg.s: New test.
2056 * testsuite/gas/arm/mve-vadc.d: New test.
2057 * testsuite/gas/arm/mve-vadc.s: New test.
2058 * testsuite/gas/arm/mve-vaddlv.d: New test.
2059 * testsuite/gas/arm/mve-vaddlv.s: New test.
2060 * testsuite/gas/arm/mve-vaddsub.d: New test.
2061 * testsuite/gas/arm/mve-vaddsub.s: New test.
2062 * testsuite/gas/arm/mve-vaddv.d: New test.
2063 * testsuite/gas/arm/mve-vaddv.s: New test.
2064 * testsuite/gas/arm/mve-vand.d: New test.
2065 * testsuite/gas/arm/mve-vand.s: New test.
2066 * testsuite/gas/arm/mve-vbic.d: New test.
2067 * testsuite/gas/arm/mve-vbic.s: New test.
2068 * testsuite/gas/arm/mve-vbrsr.d: New test.
2069 * testsuite/gas/arm/mve-vbrsr.s: New test.
2070 * testsuite/gas/arm/mve-vcadd.d: New test.
2071 * testsuite/gas/arm/mve-vcadd.s: New test.
2072 * testsuite/gas/arm/mve-vcls.d: New test.
2073 * testsuite/gas/arm/mve-vcls.s: New test.
2074 * testsuite/gas/arm/mve-vclz.d: New test.
2075 * testsuite/gas/arm/mve-vclz.s: New test.
2076 * testsuite/gas/arm/mve-vcmla.d: New test.
2077 * testsuite/gas/arm/mve-vcmla.s: New test.
2078 * testsuite/gas/arm/mve-vcmp.d: New test.
2079 * testsuite/gas/arm/mve-vcmp.s: New test.
2080 * testsuite/gas/arm/mve-vcmul.d: New test.
2081 * testsuite/gas/arm/mve-vcmul.s: New test.
2082 * testsuite/gas/arm/mve-vcvt-1.d: New test.
2083 * testsuite/gas/arm/mve-vcvt-1.s: New test.
2084 * testsuite/gas/arm/mve-vcvt-2.d: New test.
2085 * testsuite/gas/arm/mve-vcvt-2.s: New test.
2086 * testsuite/gas/arm/mve-vcvt-3.d: New test.
2087 * testsuite/gas/arm/mve-vcvt-3.s: New test.
2088 * testsuite/gas/arm/mve-vcvt-4.d: New test.
2089 * testsuite/gas/arm/mve-vcvt-4.s: New test.
2090 * testsuite/gas/arm/mve-vddup.d: New test.
2091 * testsuite/gas/arm/mve-vddup.s: New test.
2092 * testsuite/gas/arm/mve-vdup.d: New test.
2093 * testsuite/gas/arm/mve-vdup.s: New test.
2094 * testsuite/gas/arm/mve-veor.d: New test.
2095 * testsuite/gas/arm/mve-veor.s: New test.
2096 * testsuite/gas/arm/mve-vfma-vfms.d: New test.
2097 * testsuite/gas/arm/mve-vfma-vfms.s: New test.
2098 * testsuite/gas/arm/mve-vfmas.d: New test.
2099 * testsuite/gas/arm/mve-vfmas.s: New test.
2100 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
2101 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
2102 * testsuite/gas/arm/mve-vhcadd.d: New test.
2103 * testsuite/gas/arm/mve-vhcadd.s: New test.
2104 * testsuite/gas/arm/mve-vmax-vmin.d: New test.
2105 * testsuite/gas/arm/mve-vmax-vmin.s: New test.
2106 * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
2107 * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
2108 * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
2109 * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
2110 * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
2111 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
2112 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
2113 * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
2114 * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
2115 * testsuite/gas/arm/mve-vmla.d: New test.
2116 * testsuite/gas/arm/mve-vmla.s: New test.
2117 * testsuite/gas/arm/mve-vmladav.d: New test.
2118 * testsuite/gas/arm/mve-vmladav.s: New test.
2119 * testsuite/gas/arm/mve-vmlaldav.d: New test.
2120 * testsuite/gas/arm/mve-vmlaldav.s: New test.
2121 * testsuite/gas/arm/mve-vmlalv.d: New test.
2122 * testsuite/gas/arm/mve-vmlalv.s: New test.
2123 * testsuite/gas/arm/mve-vmlas.d: New test.
2124 * testsuite/gas/arm/mve-vmlas.s: New test.
2125 * testsuite/gas/arm/mve-vmlav.d: New test.
2126 * testsuite/gas/arm/mve-vmlav.s: New test.
2127 * testsuite/gas/arm/mve-vmlsdav.d: New test.
2128 * testsuite/gas/arm/mve-vmlsdav.s: New test.
2129 * testsuite/gas/arm/mve-vmlsldav.d: New test.
2130 * testsuite/gas/arm/mve-vmlsldav.s: New test.
2131 * testsuite/gas/arm/mve-vmov-1.d: New test.
2132 * testsuite/gas/arm/mve-vmov-1.s: New test.
2133 * testsuite/gas/arm/mve-vmov-2.d: New test.
2134 * testsuite/gas/arm/mve-vmov-2.s: New test.
2135 * testsuite/gas/arm/mve-vmul.d: New test.
2136 * testsuite/gas/arm/mve-vmul.s: New test.
2137 * testsuite/gas/arm/mve-vmulh.d: New test.
2138 * testsuite/gas/arm/mve-vmulh.s: New test.
2139 * testsuite/gas/arm/mve-vmullbt.d: New test.
2140 * testsuite/gas/arm/mve-vmullbt.s: New test.
2141 * testsuite/gas/arm/mve-vmvn.d: New test.
2142 * testsuite/gas/arm/mve-vmvn.s: New test.
2143 * testsuite/gas/arm/mve-vorn.d: New test.
2144 * testsuite/gas/arm/mve-vorn.s: New test.
2145 * testsuite/gas/arm/mve-vorr.d: New test.
2146 * testsuite/gas/arm/mve-vorr.s: New test.
2147 * testsuite/gas/arm/mve-vpnot.d: New test.
2148 * testsuite/gas/arm/mve-vpnot.s: New test.
2149 * testsuite/gas/arm/mve-vpsel.d: New test.
2150 * testsuite/gas/arm/mve-vpsel.s: New test.
2151 * testsuite/gas/arm/mve-vpt.d: New test.
2152 * testsuite/gas/arm/mve-vpt.s: New test.
2153 * testsuite/gas/arm/mve-vqabsneg.s: New test.
2154 * testsuite/gas/arm/mve-vqaddsub.d: New test.
2155 * testsuite/gas/arm/mve-vqaddsub.s: New test.
2156 * testsuite/gas/arm/mve-vqdmladh.d: New test.
2157 * testsuite/gas/arm/mve-vqdmladh.s: New test.
2158 * testsuite/gas/arm/mve-vqdmlah.d: New test.
2159 * testsuite/gas/arm/mve-vqdmlah.s: New test.
2160 * testsuite/gas/arm/mve-vqdmlash.d: New test.
2161 * testsuite/gas/arm/mve-vqdmlash.s: New test.
2162 * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
2163 * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
2164 * testsuite/gas/arm/mve-vqdmulh.d: New test.
2165 * testsuite/gas/arm/mve-vqdmulh.s: New test.
2166 * testsuite/gas/arm/mve-vqdmull.d: New test.
2167 * testsuite/gas/arm/mve-vqdmull.s: New test.
2168 * testsuite/gas/arm/mve-vqmovn.d: New test.
2169 * testsuite/gas/arm/mve-vqmovn.s: New test.
2170 * testsuite/gas/arm/mve-vqrshl.d: New test.
2171 * testsuite/gas/arm/mve-vqrshl.s: New test.
2172 * testsuite/gas/arm/mve-vqrshrn.d: New test.
2173 * testsuite/gas/arm/mve-vqrshrn.s: New test.
2174 * testsuite/gas/arm/mve-vqshl.d: New test.
2175 * testsuite/gas/arm/mve-vqshl.s: New test.
2176 * testsuite/gas/arm/mve-vrev.d: New test.
2177 * testsuite/gas/arm/mve-vrev.s: New test.
2178 * testsuite/gas/arm/mve-vrint.d: New test.
2179 * testsuite/gas/arm/mve-vrint.s: New test.
2180 * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
2181 * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
2182 * testsuite/gas/arm/mve-vrshl.d: New test.
2183 * testsuite/gas/arm/mve-vrshl.s: New test.
2184 * testsuite/gas/arm/mve-vsbc.d: New test.
2185 * testsuite/gas/arm/mve-vsbc.s: New test.
2186 * testsuite/gas/arm/mve-vshl.d: New test.
2187 * testsuite/gas/arm/mve-vshl.s: New test.
2188 * testsuite/gas/arm/mve-vshlc.d: New test.
2189 * testsuite/gas/arm/mve-vshlc.s: New test.
2190 * testsuite/gas/arm/mve-vshll.d: New test.
2191 * testsuite/gas/arm/mve-vshll.s: New test.
2192 * testsuite/gas/arm/mve-vshr.d: New test.
2193 * testsuite/gas/arm/mve-vshr.s: New test.
2194 * testsuite/gas/arm/mve-vshrn.d: New test.
2195 * testsuite/gas/arm/mve-vshrn.s: New test.
2196 * testsuite/gas/arm/mve-vsli.d: New test.
2197 * testsuite/gas/arm/mve-vsli.s: New test.
2198 * testsuite/gas/arm/mve-vsri.d: New test.
2199 * testsuite/gas/arm/mve-vsri.s: New test.
2200 * testsuite/gas/arm/mve-vstld.d: New test.
2201 * testsuite/gas/arm/mve-vstld.s: New test.
2202 * testsuite/gas/arm/mve-vstrldr-1.d: New test.
2203 * testsuite/gas/arm/mve-vstrldr-1.s: New test.
2204 * testsuite/gas/arm/mve-vstrldr-2.d: New test.
2205 * testsuite/gas/arm/mve-vstrldr-2.s: New test.
2206 * testsuite/gas/arm/mve-vstrldr-3.d: New test.
2207 * testsuite/gas/arm/mve-vstrldr-3.s: New test.
2209 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2211 * config/tc-arm.c (T16_32_TAB): Add new instructions.
2212 (do_t_loloop): Changed to handle tail predication variants.
2213 (md_apply_fix): Likewise.
2214 (insns): Add entries for MVE mnemonics.
2215 * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
2216 * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
2217 * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
2218 * testsuite/gas/arm/mve-tailpredloop.d: New test.
2220 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2222 * config/tc-arm.c (do_mve_vshll): New encoding function.
2223 (do_mve_vshlc): Likewise.
2224 (insns): Add entries for MVE mnemonics.
2225 * testsuite/gas/arm/mve-vshlc-bad.d: New test.
2226 * testsuite/gas/arm/mve-vshlc-bad.l: New test.
2227 * testsuite/gas/arm/mve-vshlc-bad.s: New test.
2228 * testsuite/gas/arm/mve-vshll-bad.d: New test.
2229 * testsuite/gas/arm/mve-vshll-bad.l: New test.
2230 * testsuite/gas/arm/mve-vshll-bad.s: New test.
2232 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2234 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2235 (parse_operands): Handle new operand.
2236 (do_neon_shl_imm): Accept MVE variants.
2237 (do_neon_shl): Likewise.
2238 (do_neon_qshl_imm): Likewise.
2239 (do_neon_qshl): Likewise.
2240 (do_neon_qshlu_imm): Likewise.
2242 * testsuite/gas/arm/mve-vqshl-bad.d: New test.
2243 * testsuite/gas/arm/mve-vqshl-bad.l: New test.
2244 * testsuite/gas/arm/mve-vqshl-bad.s: New test.
2245 * testsuite/gas/arm/mve-vshl-bad.d: New test.
2246 * testsuite/gas/arm/mve-vshl-bad.l: New test.
2247 * testsuite/gas/arm/mve-vshl-bad.s: New test.
2249 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2251 * config/tc-arm.c (do_neon_sli): Accept MVE variants.
2252 (do_neon_sri): Likewise.
2253 (do_neon_rev): Likewise.
2254 (do_neon_rshift_round_imm): Likewise.
2256 * testsuite/gas/arm/mve-vrev-bad.d: New test.
2257 * testsuite/gas/arm/mve-vrev-bad.l: New test.
2258 * testsuite/gas/arm/mve-vrev-bad.s: New test.
2259 * testsuite/gas/arm/mve-vshr-bad.d: New test.
2260 * testsuite/gas/arm/mve-vshr-bad.l: New test.
2261 * testsuite/gas/arm/mve-vshr-bad.s: New test.
2262 * testsuite/gas/arm/mve-vsli-bad.d: New test.
2263 * testsuite/gas/arm/mve-vsli-bad.l: New test.
2264 * testsuite/gas/arm/mve-vsli-bad.s: New test.
2265 * testsuite/gas/arm/mve-vsri-bad.d: New test.
2266 * testsuite/gas/arm/mve-vsri-bad.l: New test.
2267 * testsuite/gas/arm/mve-vsri-bad.s: New test.
2269 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2271 * config/tc-arm.c (do_vrint_1): Accept MVE variants.
2272 (insns): Change entries to accept MVE variants.
2273 * testsuite/gas/arm/mve-vrint-bad.d: New test.
2274 * testsuite/gas/arm/mve-vrint-bad.l: New test.
2275 * testsuite/gas/arm/mve-vrint-bad.s: New test.
2277 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2279 * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
2280 M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
2281 M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
2282 M_MNEM_vqrshrunb): New instruction encodings.
2283 (do_mve_vshrn): New encoding function.
2284 (insns): Add entries for MVE mnemonics.
2285 * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
2286 * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
2287 * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
2288 * testsuite/gas/arm/mve-vshrn-bad.d: New test.
2289 * testsuite/gas/arm/mve-vshrn-bad.l: New test.
2290 * testsuite/gas/arm/mve-vshrn-bad.s: New test.
2292 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2294 * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
2295 M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
2296 (do_mve_vqmovn): New encoding function.
2297 (do_neon_rshl): Change to accepte MVE variants.
2298 (insns): Change entries and add new for MVE mnemonics.
2299 * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
2300 * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
2301 * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
2302 * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
2303 * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
2304 * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
2305 * testsuite/gas/arm/mve-vrshl-bad.d: New test.
2306 * testsuite/gas/arm/mve-vrshl-bad.l: New test.
2307 * testsuite/gas/arm/mve-vrshl-bad.s: New test.
2309 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2311 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2312 (parse_operands): Handle new operand.
2313 (do_mve_vqdmull): New encoding function.
2314 (insns): Add entry for MVE mnemonics.
2315 * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
2316 * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
2317 * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
2319 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2321 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2322 (parse_operands): Handle new operand.
2323 (mve_encode_qqr): Handle new instructions.
2324 (do_neon_qdmulh): Add support for MVE variants.
2325 (do_neon_qrdmlah): Likewise.
2326 (do_mve_vqdmlah): New encoding function.
2327 (insns): Change entries and add new entries for MVE mnemonics.
2328 * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
2329 * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
2330 * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
2332 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2334 * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
2335 (insns): Add entries for MVE mnemonics.
2336 * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
2337 * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
2338 * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
2339 * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
2340 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
2341 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
2343 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2345 * config/tc-arm.c (do_mve_vpsel): New encoding function.
2346 (do_mve_vpnot): Likewise.
2347 (insns): Add entries for MVE mnemonics.
2348 * testsuite/gas/arm/mve-vpnot-bad.d: New test.
2349 * testsuite/gas/arm/mve-vpnot-bad.l: New test.
2350 * testsuite/gas/arm/mve-vpnot-bad.s: New test.
2351 * testsuite/gas/arm/mve-vpsel-bad.d: New test.
2352 * testsuite/gas/arm/mve-vpsel-bad.l: New test.
2353 * testsuite/gas/arm/mve-vpsel-bad.s: New test.
2355 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2357 * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
2358 (do_neon_sat_abs_neg): Likewise.
2360 * testsuite/gas/arm/mve-vmvn-bad.d: New test.
2361 * testsuite/gas/arm/mve-vmvn-bad.l: New test.
2362 * testsuite/gas/arm/mve-vmvn-bad.s: New test.
2363 * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
2364 * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
2365 * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
2367 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2369 * config/tc-arm.c (do_mve_vmlas): New encoding function.
2370 (do_mve_vmulh): Likewise.
2371 (insns): Add entries for MVE mnemonics.
2372 * testsuite/gas/arm/mve-vmlas-bad.d: New test.
2373 * testsuite/gas/arm/mve-vmlas-bad.l: New test.
2374 * testsuite/gas/arm/mve-vmlas-bad.s: New test.
2375 * testsuite/gas/arm/mve-vmulh-bad.d: New test.
2376 * testsuite/gas/arm/mve-vmulh-bad.l: New test.
2377 * testsuite/gas/arm/mve-vmulh-bad.s: New test.
2379 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2381 * config/tc-arm.c (enum operand_parse_code): New operand.
2382 (parse_operands): Handle new operand.
2383 (mve_encode_qqr): Handle new instructions.
2384 (do_neon_dyadic_i64_su): Accept MVE variants.
2385 (neon_dyadic_misc): Likewise.
2386 (do_neon_mac_maybe_scalar): Likewise.
2387 (do_neon_mul): Likewise.
2388 (insns): Change to accept MVE variants.
2389 * testsuite/gas/arm/mve-vmla-bad.d: New test.
2390 * testsuite/gas/arm/mve-vmla-bad.l: New test.
2391 * testsuite/gas/arm/mve-vmla-bad.s: New test.
2392 * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
2393 * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
2394 * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
2395 * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
2396 * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
2397 * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
2398 * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
2399 * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
2400 * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
2402 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2404 * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
2405 M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
2406 M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
2407 M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
2408 M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
2409 instruction encodings.
2410 (NEON_SHAPE_DEF): New shape
2411 (mve_encode_rrqq): New encoding helper function.
2412 (do_mve_vmlaldav): New encoding function.
2413 (do_mve_vrmlaldavh): New encoding function.
2414 (insns): Add entries for MVE mnemonics.
2415 * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
2416 * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
2417 * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
2418 * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
2419 * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
2420 * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
2421 * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
2422 * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
2423 * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
2424 * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
2425 * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
2426 * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
2428 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2430 * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
2431 M_MNEM_vminav): New instruction encodings.
2432 (do_mve_vmaxv): New encoding function.
2433 (insns): Add entries for new MVE mnemonics.
2434 * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
2435 * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
2436 * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
2438 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2440 * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
2441 (insns): Add entries for new mnemonics.
2442 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
2443 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
2444 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
2446 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2448 * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
2449 (do_mve_vmaxnma_vminnma): Likewise.
2450 (do_neon_dyadic_if_su): Change to support MVE variants.
2451 (do_vmaxnm): Likewise.
2452 (insns): Change to accept MVE variants and add new.
2453 * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
2454 * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
2455 * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
2456 * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
2457 * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
2458 * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
2459 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
2460 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
2461 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
2462 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
2463 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
2464 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
2466 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2468 * config/tc-arm.c (enum operand_parse_code): New operand.
2469 (parse_operands): Handle new operand.
2470 (mve_encode_qqr): Change to support new instructions.
2471 (enum vfp_or_neon_is_neon_bits): Moved.
2472 (vfp_or_neon_is_neon): Moved.
2473 (check_simd_pred_availability): Moved.
2474 (do_neon_dyadic_i_su): Changed to support MVE variants.
2475 (neon_dyadic_misc): Changed mve_encode_qqr call.
2476 (do_mve_vbrsr): Likewise.
2477 (do_mve_vhcadd): New encoding function.
2478 (insns): Change existing to accept MVE variants and add new.
2479 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
2480 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
2481 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
2482 * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
2483 * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
2484 * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
2486 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2488 * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
2489 (insns): Change to accept MVE variants.
2490 * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
2491 * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
2492 * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
2494 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2496 * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
2497 M_MNEM_viwdup): New instruction encodings.
2498 (NEON_SHAPE_DEF): New shapes.
2499 (do_mve_viddup): New encoding function.
2500 (do_neon_dup): Change to support new MVE variants.
2501 (insns): Change existing to accept MVE variants and add new.
2502 * testsuite/gas/arm/mve-vddup-bad.d: New test.
2503 * testsuite/gas/arm/mve-vddup-bad.l: New test.
2504 * testsuite/gas/arm/mve-vddup-bad.s: New test.
2505 * testsuite/gas/arm/mve-vdup-bad.d: New test.
2506 * testsuite/gas/arm/mve-vdup-bad.l: New test.
2507 * testsuite/gas/arm/mve-vdup-bad.s: New test.
2508 * testsuite/gas/arm/mve-vidup-bad.d: New test.
2509 * testsuite/gas/arm/mve-vidup-bad.l: New test.
2510 * testsuite/gas/arm/mve-vidup-bad.s: New test.
2512 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2514 * config/tc-arm.c (do_mve_vfmas): New encoding function.
2515 (do_neon_cls): Change to support MVE variants.
2516 (do_neon_clz): Change to support MVE variants.
2517 (insns): Change to support MVE variants and add new.
2518 * testsuite/gas/arm/mve-vcls-bad.d: New test.
2519 * testsuite/gas/arm/mve-vcls-bad.l: New test.
2520 * testsuite/gas/arm/mve-vcls-bad.s: New test.
2521 * testsuite/gas/arm/mve-vclz-bad.d: New test.
2522 * testsuite/gas/arm/mve-vclz-bad.l: New test.
2523 * testsuite/gas/arm/mve-vclz-bad.s: New test.
2524 * testsuite/gas/arm/mve-vfmas-bad.d: New test.
2525 * testsuite/gas/arm/mve-vfmas-bad.l: New test.
2526 * testsuite/gas/arm/mve-vfmas-bad.s: New test.
2528 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2530 * config/tc-arm.c (enum operand_parse_code): New operands.
2531 (parse_operands): Handle new operands.
2532 (do_mve_vcmul): New encoding function.
2533 (do_vcmla): Change to support MVE variants.
2534 (do_vcadd): Change to support MVE variants.
2535 (insns): Change existing to support MVE variants and add new.
2536 * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
2537 * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
2538 * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
2539 * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
2540 * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
2541 * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
2542 * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
2543 * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
2544 * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
2545 * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
2546 * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
2547 * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
2548 * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
2549 * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
2550 * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
2551 * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
2552 * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
2553 * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
2555 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2557 * config/tc-arm.c (enum operand_parse_code): New operands.
2558 (parse_operands): Handle new operands.
2559 (enum vfp_or_neon_is_neon_bits): Moved
2560 (vfp_or_neon_is_neon): Moved
2561 (check_simd_pred_availability): Moved.
2562 (do_neon_logic): Change to accept MVE variants.
2563 (insns): Changed to accept MVE variants.
2564 * testsuite/gas/arm/mve-vand-bad.d: New test.
2565 * testsuite/gas/arm/mve-vand-bad.l: New test.
2566 * testsuite/gas/arm/mve-vand-bad.s: New test.
2567 * testsuite/gas/arm/mve-vbic-bad.d: New test.
2568 * testsuite/gas/arm/mve-vbic-bad.l: New test.
2569 * testsuite/gas/arm/mve-vbic-bad.s: New test.
2570 * testsuite/gas/arm/mve-veor-bad.d: New test.
2571 * testsuite/gas/arm/mve-veor-bad.l: New test.
2572 * testsuite/gas/arm/mve-veor-bad.s: New test.
2573 * testsuite/gas/arm/mve-vorn-bad.d: New test.
2574 * testsuite/gas/arm/mve-vorn-bad.l: New test.
2575 * testsuite/gas/arm/mve-vorn-bad.s: New test.
2576 * testsuite/gas/arm/mve-vorr-bad.d: New test.
2577 * testsuite/gas/arm/mve-vorr-bad.l: New test.
2578 * testsuite/gas/arm/mve-vorr-bad.s: New test.
2580 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2582 * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
2583 M_MNEM_vaddva): New instruction encodings.
2584 (mve_encode_rq): New encoding helper function.
2585 (do_mve_vaddlv): New encoding function.
2586 (do_mve_vaddv): New encoding function.
2587 * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
2588 * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
2589 * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
2590 * testsuite/gas/arm/mve-vaddv-bad.d: New test.
2591 * testsuite/gas/arm/mve-vaddv-bad.l: New test.
2592 * testsuite/gas/arm/mve-vaddv-bad.s: New test.
2594 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2596 * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
2597 New instruction encodings.
2598 (do_mve_vadc): New encoding instruction.
2599 (do_mve_vbrsr): Likewise.
2600 (do_mve_vsbc): Likewise.
2601 * testsuite/gas/arm/mve-vadc-bad.d: New test.
2602 * testsuite/gas/arm/mve-vadc-bad.l: New test.
2603 * testsuite/gas/arm/mve-vadc-bad.s: New test.
2604 * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
2605 * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
2606 * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
2607 * testsuite/gas/arm/mve-vsbc-bad.d: New test.
2608 * testsuite/gas/arm/mve-vsbc-bad.l: New test.
2609 * testsuite/gas/arm/mve-vsbc-bad.s: New test.
2611 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2613 * config/tc-arm.c (MVE_BAD_QREG): New error message.
2614 (enum operand_parse_code): Define new operand.
2615 (parse_operands): Handle new operand.
2616 (do_mve_vpt): Change for VPT blocks.
2617 (NEON_SHAPE_DEF): New shape.
2618 (neon_logbits): Moved.
2621 (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
2622 (do_mve_vcmp): New encoding function.
2623 (do_vfp_nsyn_cmp): Changed to support MVE variants.
2624 (insns): Change to support MVE variants of vcmp and add vpt.
2625 * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
2626 * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
2627 * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
2628 * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
2629 * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
2630 * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
2631 * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
2632 * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
2633 * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
2634 * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
2635 * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
2636 * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
2638 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2640 * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
2641 distinguish between types of scalar.
2642 (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
2643 (parse_scalar): Likewise.
2644 (parse_neon_mov): Accept MVE variant.
2645 (po_scalar_or_goto): Make use reg_type.
2646 (parse_operands): Change uses of po_scalar_or_goto.
2647 (do_vfp_sp_monadic): Change to accept MVE variants.
2648 (do_vfp_reg_from_sp): Likewise.
2649 (do_vfp_sp_from_reg): Likewise.
2650 (do_vfp_dp_rd_rm): Likewise.
2651 (do_vfp_dp_rd_rn_rm): Likewise.
2652 (do_vfp_dp_rm_rd_rn): Likewise.
2653 (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
2654 instruction encodings.
2655 (NEON_SHAPE_DEF): New shape.
2656 (do_mve_mov): New encoding fuction.
2657 (do_mve_movn): Likewise.
2658 (do_mve_movl): Likewise.
2659 (do_neon_mov): Change to accept MVE variants.
2661 (insns): Accept new MVE variants and instructions.
2662 * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
2663 * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
2664 * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
2665 * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
2666 * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
2667 * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
2669 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2671 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2672 (parse_operands): Handle new operand.
2673 (do_neon_cvt_1): Handle MVE variants.
2674 (do_neon_cvttb_1): Likewise.
2675 (insns): Accept MVE variants.
2676 * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
2677 * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
2678 * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
2679 * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
2680 * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
2681 * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
2682 * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
2683 * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
2684 * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
2685 * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
2686 * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
2687 * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
2688 * testsuite/gas/arm/mve-vcvt-bad.d: New test.
2689 * testsuite/gas/arm/mve-vcvt-bad.l: New test.
2690 * testsuite/gas/arm/mve-vcvt-bad.s: New test.
2692 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2694 * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
2696 (enum shift_kind): Add SHIFT_UXTW shift kind.
2697 (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
2698 (parse_shift): Handle new shift type.
2699 (parse_address_main): Accept new addressing modes.
2700 (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
2701 M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
2702 instruction encodings.
2703 (do_mve_vstr_vldr_QI): New encoding functions.
2704 (do_mve_vstr_vldr_RQ): Likewise.
2705 (do_mve_vstr_vldr_RI): Likewise.
2706 (do_mve_vstr_vldr): Likewise.
2707 * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
2708 * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
2709 * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
2710 * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
2711 * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
2712 * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
2713 * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
2714 * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
2715 * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
2716 * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
2717 * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
2718 * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
2719 * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
2720 * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
2721 * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
2722 * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
2723 * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
2724 * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
2726 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2728 * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
2729 (BAD_EL_TYPE): New error message.
2730 (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
2731 (parse_address_main): Likewise.
2732 (group_reloc_type): Add GROUP_MVE.
2733 (enum operand_parse_code): Add new operands.
2734 (parse_operands): Handle new operands.
2735 (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
2736 M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
2737 M_MNEM_vld42, M_MNEM_vld43): New encodings.
2738 (do_mve_vst_vld): New encoding function.
2739 (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
2740 (it_fsm_pre_encode): Handle new it_instruction_type
2741 (handle_pred_state): Likewise.
2742 * testsuite/gas/arm/mve-vstld-bad.d: New test.
2743 * testsuite/gas/arm/mve-vstld-bad.l: New test.
2744 * testsuite/gas/arm/mve-vstld-bad.s: New test.
2746 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2748 * config/tc-arm.c (BAD_MVE_AUTO): New error message.
2749 (BAD_MVE_SRCDEST): Likewise.
2750 (mark_feature_used): Diagnose MVE only instructions when in
2751 auto-detection mode or -march=all.
2752 (enum operand_parse_code): Define new operand.
2753 (parse_operands): Handle new operand.
2754 (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
2755 (mve_encode_qqq): New encoding helper function.
2756 (do_mve_vmull): New encoding function.
2757 (insns): Handle new instructions.
2758 * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
2759 * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
2760 * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
2762 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2764 * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
2765 (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
2766 (enum operand_parse_code): Handle new operands.
2767 (parse_operands): Likewise.
2768 (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
2769 M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
2770 M_MNEM_vmlsdavax): Define new encodings.
2771 (NEON_SHAPE_DEF): Add new shape.
2772 (neon_check_type): Use BAD_SIMD_TYPE.
2773 (mve_encode_rqq): New encoding helper function.
2774 (do_mve_vabav, do_mve_vmladav): New encoding functions.
2776 * testsuite/gas/arm/mve-vabav-bad.d: New test.
2777 * testsuite/gas/arm/mve-vabav-bad.l: New test.
2778 * testsuite/gas/arm/mve-vabav-bad.s: New test.
2779 * testsuite/gas/arm/mve-vmladav-bad.d: New test.
2780 * testsuite/gas/arm/mve-vmladav-bad.l: New test.
2781 * testsuite/gas/arm/mve-vmladav-bad.s: New test.
2782 * testsuite/gas/arm/mve-vmlav-bad.d: New test.
2783 * testsuite/gas/arm/mve-vmlav-bad.l: New test.
2784 * testsuite/gas/arm/mve-vmlav-bad.s: New test.
2785 * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
2786 * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
2787 * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
2789 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2791 * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
2792 (insns): Change vabs and vneg entries to accept MVE variants.
2793 * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
2794 * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
2795 * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
2796 * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
2797 * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
2798 * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
2800 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2802 * config/tc-arm.c (enum it_instruction_type): Rename to...
2803 (enum pred_instruction_type): ... this. Include VPT types.
2804 (it_insn_type): Rename to ...
2805 (pred_insn_type): .. this.
2806 (arm_it): Change comment.
2807 (enum arm_reg_type): Add new value.
2808 (reg_expected_msgs): New entry.
2809 (asm_opcode): Add mayBeVecPred member.
2810 (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
2811 MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
2812 (arm_vcond_hsh): New table for vector condition codes.
2813 (now_it): Rename to ...
2814 (now_pred): ... this.
2815 (now_it_compatible): Rename to ...
2816 (now_pred_compatible): ... this.
2817 (in_it_block): Rename to ...
2818 (in_pred_block): ... this.
2819 (handle_it_state): Rename to ...
2820 (handle_pred_state): ... this. And change it to accept VPT blocks.
2821 (set_it_insn_type): Rename to ...
2822 (set_pred_insn_type): ... this.
2823 (set_it_insn_type_nonvoid): Rename to ...
2824 (set_pred_insn_type_nonvoid): ... this.
2825 (set_it_insn_type_last): Rename to ...
2826 (set_pred_insn_type_last): ... this.
2827 (record_feature_use): Moved.
2828 (mark_feature_used): Likewise.
2829 (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
2830 (emit_insn): Use renamed functions and variables.
2831 (enum operand_parse_code): Add new operands.
2832 (parse_operands): Handle new operands.
2833 (do_scalar_fp16_v82_encode): Change predication detection.
2834 (do_it): Use renamed functions and variables.
2835 (do_t_add_sub): Likewise.
2836 (do_t_arit3): Likewise.
2837 (do_t_arit3c): Likewise.
2838 (do_t_blx): Likewise.
2839 (do_t_branch): Likewise.
2840 (do_t_bkpt_hlt1): Likewise.
2841 (do_t_branch23): Likewise.
2842 (do_t_bx): Likewise.
2843 (do_t_bxj): Likewise.
2844 (do_t_cond): Likewise.
2845 (do_t_csdb): Likewise.
2846 (do_t_cps): Likewise.
2847 (do_t_cpsi): Likewise.
2848 (do_t_cbz): Likewise.
2849 (do_t_it): Likewise.
2850 (do_mve_vpt): New function to handle VPT blocks.
2851 (encode_thumb2_multi): Use renamed functions and variables.
2852 (do_t_ldst): Use renamed functions and variables.
2853 (do_t_mov_cmp): Likewise.
2854 (do_t_mvn_tst): Likewise.
2855 (do_t_mul): Likewise.
2856 (do_t_nop): Likewise.
2857 (do_t_neg): Likewise.
2858 (do_t_rsb): Likewise.
2859 (do_t_setend): Likewise.
2860 (do_t_shift): Likewise.
2861 (do_t_smc): Likewise.
2862 (do_t_tb): Likewise.
2863 (do_t_udf): Likewise.
2864 (do_t_loloop): Likewise.
2865 (do_neon_cvt_1): Likewise.
2866 (do_vfp_nsyn_cvt_fpv8): Likewise.
2867 (do_vsel): Likewise.
2868 (do_vmaxnm): Likewise.
2869 (do_vrint_1): Likewise.
2870 (do_crypto_2op_1): Likewise.
2871 (do_crypto_3op_1): Likewise.
2872 (do_crc32_1): Likewise.
2873 (it_fsm_pre_encode): Likewise.
2874 (it_fsm_post_encode): Likewise.
2875 (force_automatic_it_block_close): Likewise.
2876 (check_it_blocks_finished): Likewise.
2877 (check_pred_blocks_finished): Likewise.
2878 (arm_cleanup): Likewise.
2879 (now_it_add_mask): Rename to ...
2880 (now_pred_add_mask): ... this. And use new variables and functions.
2881 (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
2882 (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
2883 (neon_check_type): Generalize error message.
2884 (mve_encode_qqr): New MVE generic encoding function.
2885 (neon_dyadic_misc): Change to accept MVE variants.
2886 (do_neon_dyadic_if_su): Likewise.
2887 (do_neon_addsub_if_i): Likewise.
2888 (do_neon_dyadic_long): Likewise.
2889 (vfp_or_neon_is_neon): Add extra checks.
2890 (check_simd_pred_availability): Helper function to check SIMD
2891 instruction availability with respect to predication.
2892 (enum opcode_tag): New suffix value.
2893 (opcode_lookup): Change to handle VPT blocks.
2894 (new_automatic_it_block): Rename to ...
2895 (close_automatic_it_block): ...this.
2896 (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
2897 toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
2898 NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
2900 (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
2901 (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
2902 variants. Add entries for vscclrm, and vpst.
2903 (md_begin): Add arm_vcond_hsh initialization.
2904 * config/tc-arm.h (enum it_state): Rename to...
2905 (enum pred_state): ...this.
2906 (struct current_it): Rename to...
2907 (struct current_pred): ...this.
2908 (enum pred_type): New enum.
2909 (struct arm_segment_info_type): Use current_pred.
2910 * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
2911 * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
2912 * testsuite/gas/arm/dotprod-illegal.l: Update error message.
2913 * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
2914 * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
2915 * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
2916 * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
2917 * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
2918 * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
2919 * testsuite/gas/arm/mve-vpst-bad.d: New test.
2920 * testsuite/gas/arm/mve-vpst-bad.l: New test.
2921 * testsuite/gas/arm/mve-vpst-bad.s: New test.
2922 * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
2924 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2926 * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
2927 (armv8_1m_main_ext_table): Add new extensions.
2928 (aeabi_set_public_attributes): Translate new features to new build attributes.
2929 (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
2930 * doc/c-arm.texi: Document new extensions and new build attribute.
2932 2019-05-15 John Darrington <john@darrington.wattle.id.au>
2934 * config/tc-s12z.c (register_prefix): New variable. (md_show_usage,
2935 md_parse_option): parse the new option.
2936 (lex_reg_name): Scan the prefix if one is set.
2937 * doc/c-s12z.texi (S12Z-Opts): Document the new option.
2938 * testsuite/gas/s12z/reg-prefix.d: New file.
2939 * testsuite/gas/s12z/reg-prefix.s: New file.
2940 * testsuite/gas/s12z/s12z.exp: Add them.
2942 2019-05-14 John Darrington <john@darrington.wattle.id.au>
2944 * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
2946 2019-05-15 Alan Modra <amodra@gmail.com>
2948 * config/tc-csky.c (md_convert_frag): Initialise trailing
2949 padding for COND_JUMP_PIC.
2951 2019-05-15 Alan Modra <amodra@gmail.com>
2953 * dwarf2dbg.c: Whitespace fixes.
2954 (get_filenum): Don't strdup "file". Adjust error message.
2955 (dwarf2_directive_filename): Use an unsigned type for "num".
2956 Catch truncation of file number and overflow of get_filenum
2957 XRESIZEVEC multiplication. Delete dead code.
2959 2019-05-15 Alan Modra <amodra@gmail.com>
2962 * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
2963 chars in setting endp.
2965 2019-05-14 Nick Clifton <nickc@redhat.com>
2968 * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
2969 illegal register numbers.
2971 2019-05-10 Nick Clifton <nickc@redhat.com>
2974 * macro.c (get_any_string): Increase size of buffer used to hold
2975 decimal value of expression result.
2976 * dw2gencfi.c (get_debugseg_name): Handle an empty name.
2977 * dwarf2dbg.c (get_filenum): Catch integer wraparound when
2978 extending allocate file array.
2979 (dwarf2_directive_filename): Add extra checks of the computed file
2981 * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
2983 (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
2985 * config/tc-i386.c (i386_output_nops): Catch an attempt to
2986 generate nops of negative lengths.
2987 * as.h (MAX_LITTLENUMS): Move definition to here from...
2988 * config/atof-ieee.c: ...here.
2989 * config/tc-aarch64.c: ...here.
2990 * config/tc-arc.c: ...here.
2991 * config/tc-arm.c: ...here.
2992 * config/tc-epiphany.c: ...here.
2993 * config/tc-i386.c: ...here.
2994 * config/tc-ia64.c: ...here. (And correct the value).
2995 * config/tc-m32c.c: ...here.
2996 * config/tc-m32r.c: ...here.
2997 * config/tc-metag.c: ...here.
2998 * config/tc-microblaze.c: ...here.
2999 * config/tc-nds32.c: ...here.
3000 * config/tc-or1k.c: ...here.
3001 * config/tc-score.c: ...here.
3002 * config/tc-score7.c: ...here.
3003 * config/tc-tic4x.c: ...here.
3004 * config/tc-tilegx.c: ...here.
3005 * config/tc-tilepro.c: ...here.
3006 * config/tc-visium.c: ...here.
3007 * config/tc-sh.c (md_assemble): Add check for an instruction with
3009 * config/tc-mips.c (mips_lookup_insn): Add check for very short
3011 * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
3013 (tic54x_start_line_hook): Check for an empty line.
3014 (next_line_shows_parallel): Do not walk off the end of the string.
3015 (tic54x_macro_start): Check for too much macro nesting.
3016 (tic54x_start_label): Add label_start parameter. Use this
3017 parameter to check the first character of the label.
3019 * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
3020 line_start variable to tic54x_start_label.
3022 2019-05-10 Faraz Shahbazker <fshahbazker@wavecomp.com>
3024 * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
3025 Add expansions for MIPS r6.
3026 * testsuite/gas/mips/add.s: Enable tests for R6.
3027 * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
3028 * testsuite/gas/mips/mipsr6@add.d: Likewise.
3029 * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
3030 * gas/testsuite/gas/mips/mips.exp: Run the new test.
3032 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3034 * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
3036 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3038 * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
3039 * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
3040 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
3041 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
3042 * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
3043 * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
3044 * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
3045 * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
3046 * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
3047 * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
3048 * testsuite/gas/aarch64/sve2.d: Test new instructions.
3049 * testsuite/gas/aarch64/sve2.s: Test new instructions.
3051 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3053 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
3056 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3058 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
3061 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3063 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
3066 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3068 * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
3069 (parse_address_main): Account for new addressing mode [Zn.S, Xm].
3070 (parse_operands): Handle new SVE_ADDR_ZX operand.
3072 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3074 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
3077 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3079 * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
3081 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3083 * config/tc-aarch64.c: Add command line architecture feature flags
3084 "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
3085 * doc/c-aarch64.texi: Document new architecture feature flags.
3087 2019-05-08 Alan Modra <amodra@gmail.com>
3089 * testsuite/gas/elf/dwarf2-1.s,
3090 * testsuite/gas/elf/dwarf2-2.s,
3091 * testsuite/gas/elf/dwarf2-5.s,
3092 * testsuite/gas/elf/dwarf2-7.s,
3093 * testsuite/gas/elf/dwarf2-8.s,
3094 * testsuite/gas/elf/dwarf2-9.s,
3095 * testsuite/gas/elf/dwarf2-10.s,
3096 * testsuite/gas/elf/dwarf2-11.s,
3097 * testsuite/gas/elf/dwarf2-12.s,
3098 * testsuite/gas/elf/dwarf2-13.s,
3099 * testsuite/gas/elf/dwarf2-14.s,
3100 * testsuite/gas/elf/dwarf2-15.s,
3101 * testsuite/gas/elf/dwarf2-16.s,
3102 * testsuite/gas/elf/dwarf2-17.s,
3103 * testsuite/gas/elf/dwarf2-18.s,
3104 * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
3106 * testsuite/gas/elf/dwarf2-1.d,
3107 * testsuite/gas/elf/dwarf2-2.d,
3108 * testsuite/gas/elf/dwarf2-5.d,
3109 * testsuite/gas/elf/dwarf2-7.d,
3110 * testsuite/gas/elf/dwarf2-8.d,
3111 * testsuite/gas/elf/dwarf2-9.d,
3112 * testsuite/gas/elf/dwarf2-10.d,
3113 * testsuite/gas/elf/dwarf2-11.d,
3114 * testsuite/gas/elf/dwarf2-12.d,
3115 * testsuite/gas/elf/dwarf2-13.d,
3116 * testsuite/gas/elf/dwarf2-14.d,
3117 * testsuite/gas/elf/dwarf2-15.d,
3118 * testsuite/gas/elf/dwarf2-16.d,
3119 * testsuite/gas/elf/dwarf2-17.d,
3120 * testsuite/gas/elf/dwarf2-18.d,
3121 * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
3122 Remove avr, pru, tile, xtensa from xfails. Update expected output.
3123 * testsuite/gas/elf/elf.exp: Sort targets.
3124 (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
3125 for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
3126 * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
3128 2019-05-08 Alan Modra <amodra@gmail.com>
3130 * config/tc-xtensa.c (opt_linkrelax): New variable.
3131 (md_parse_option): Set it here.
3132 (md_begin): Copy opt_linkrelax to linkrelax.
3134 2019-05-07 Alexandre Oliva <aoliva@redhat.com>
3136 * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
3137 * testsuite/gas/elf/dwarf2-19.d: Likewise.
3139 2019-05-07 Alan Modra <amodra@gmail.com>
3141 * symbols.c (use_complex_relocs_for): Formatting. Factor out
3144 2019-05-06 Andrew Bennett <andrew.bennett@imgtec.com>
3145 Faraz Shahbazker <fshahbazker@wavecomp.com>
3147 * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
3148 (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
3149 (mips_after_parse_args): Translate EVA to EVA_R6.
3150 * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
3151 * testsuite/gas/mips/eva.s: Likewise.
3152 * testsuite/gas/mips/ase-errors-1.l: Check errors for
3154 * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
3156 2019-05-06 Alan Modra <amodra@gmail.com>
3158 * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
3161 2019-05-06 Alan Modra <amodra@gmail.com>
3163 * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
3164 relocs, and VLE sdarel relocs.
3165 * testsuite/gas/ppc/power4.d: Adjust.
3167 2019-05-05 Alexandre Oliva <aoliva@redhat.com>
3169 * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
3170 views of prior locs.
3171 (dwarf2_gen_line_info_1): Skip heads.
3172 (size_inc_line_addr, emit_inc_line_addr): Drop
3173 DW_LNS_advance_pc for zero addr delta.
3174 (dwarf2_finish): Assign views for heads of segments.
3175 * testsuite/gas/elf/dwarf2-19.d: New.
3176 * testsuite/gas/elf/dwarf2-19.s: New.
3177 * testsuite/gas/elf/elf.exp: Test it.
3179 2019-05-04 Alan Modra <amodra@gmail.com>
3181 * config/tc-m32c.c (insn_size): Delete static var.
3182 (md_begin): Don't set it.
3183 (m32c_md_end): Delete.
3184 (md_assemble): Add insn_size auto var.
3185 * config/tc-m32c.h (md_end): Don't define.
3186 (m32c_md_end): Delete.
3187 (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
3188 * testsuite/gas/all/align.d: Remove m32c from notarget list.
3189 * testsuite/gas/all/incbin.d: Likewise.
3190 * testsuite/gas/elf/dwarf2-11.d: Likewise.
3191 * testsuite/gas/macros/semi.d: Likewise.
3192 * testsuite/gas/all/gas.exp (do_comment): Similarly.
3194 2019-05-02 H.J. Lu <hongjiu.lu@intel.com>
3197 * config/tc-i386.c (process_suffix): Issue a warning to IRET
3198 without a suffix for .code16gcc.
3199 * testsuite/gas/i386/jump16.s: Add tests for iretX.
3200 * testsuite/gas/i386/jump16.d: Updated.
3201 * testsuite/gas/i386/jump16.e: New file.
3203 2019-05-01 Sudakshina Das <sudi.das@arm.com>
3205 * config/tc-aarch64.c (parse_operands): Add case for
3206 AARCH64_OPND_TME_UIMM16.
3207 (aarch64_features): Add "tme".
3208 * doc/c-aarch64.texi: Document the same.
3209 * testsuite/gas/aarch64/tme-invalid.d: New test.
3210 * testsuite/gas/aarch64/tme-invalid.l: New test.
3211 * testsuite/gas/aarch64/tme-invalid.s: New test.
3212 * testsuite/gas/aarch64/tme.d: New test.
3213 * testsuite/gas/aarch64/tme.s: New test.
3215 2019-04-29 John Darrington <john@darrington.wattle.id.au>
3217 * testsuite/gas/s12z/truncated.d: New file.
3218 * testsuite/gas/s12z/truncated.s: New file.
3219 * testsuite/gas/s12z/s12z.exp: Add new test.
3221 2019-04-26 Andrew Bennett <andrew.bennett@imgtec.com>
3222 Faraz Shahbazker <fshahbazker@wavecomp.com>
3224 * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
3225 M_SCDP_AB>: New cases and expansions for paired instructions.
3226 * testsuite/gas/mips/llpscp-32.s: New test source.
3227 * testsuite/gas/mips/llpscp-64.s: Likewise.
3228 * testsuite/gas/mips/llpscp-32.d: New test.
3229 * testsuite/gas/mips/llpscp-64.d: Likewise.
3230 * testsuite/gas/mips/mips.exp: Run the new tests.
3231 * testsuite/gas/mips/r6.s: Add new instructions to test source.
3232 * testsuite/gas/mips/r6-64.s: Likewise.
3233 * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
3234 * testsuite/gas/mips/r6-64-n64.d: Likewise.
3235 * testsuite/gas/mips/r6-n32.d: Likewise.
3236 * testsuite/gas/mips/r6-n64.d: Likwwise.
3237 * testsuite/gas/mips/r6.d: Likewise.
3239 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
3242 * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
3243 to IRET for .code16gcc.
3244 * testsuite/gas/i386/jump16.s: Add IRET tests.
3245 * testsuite/gas/i386/jump16.d: Updated.
3247 2019-04-25 Alexandre Oliva <aoliva@redhat.com>
3248 Alan Modra <amodra@gmail.com>
3251 * frags.c (frag_gtoffset_p): New.
3252 * frags.h (frag_gtoffset_p): Declare it.
3253 * expr.c (resolve_expression): Use it.
3255 2019-04-24 Alan Modra <amodra@gmail.com>
3258 * symbols.c (resolve_symbol_value): When handling symbols
3259 marked as sy_flags.resolved, return correct value for the
3260 case of expression symbols left as an O_symbol expression.
3261 Merge O_symbol code handling undefined and common symbols with
3262 code handling special cases of expression symbols. Use
3263 seg_left to test for undefined and common symbols. Don't
3264 leave an O_symbol expression when X_add_symbol resolves to
3265 the absolute_section. Init final_val later.
3266 * testsuite/gas/mmix/basep-7.d: Adjust expected output.
3268 2019-04-24 John Darrington <john@darrington.wattle.id.au>
3270 * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
3271 and BCLR instructions with an invalid mode.
3272 * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
3274 2019-04-19 Nick Clifton <nickc@redhat.com>
3277 * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
3278 to the relaxation function.
3279 * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
3280 number of iterations. Make sure that our internal iteration limit
3281 does not exceed this external iteration limit.
3283 2019-04-18 Matthew Fortune <matthew.fortune@mips.com>
3285 * config/tc-mips.c (match_non_zero_reg_operand): Update
3287 * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
3289 2019-04-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3291 * config/tc-msp430.c (msp430_make_init_symbols): Define
3292 __crt0_run_{preinit,init,fini}_array symbols if
3293 .{preinit,init,fini}_array sections exist.
3294 * testsuite/gas/msp430/fini-array.d: New test.
3295 * testsuite/gas/msp430/init-array.d: New test.
3296 * testsuite/gas/msp430/preinit-array.d: New test.
3297 * testsuite/gas/msp430/fini-array.s: New test source.
3298 * testsuite/gas/msp430/init-array.s: New test source.
3299 * testsuite/gas/msp430/preinit-array.s: New test source.
3300 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3302 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3304 * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
3305 symbol when .lower.bss or .either.bss sections exist.
3306 Define __crt0_movedata when .lower.data or .either.data sections exist.
3307 * testsuite/gas/msp430/either-data-bss-sym.d: New test.
3308 * testsuite/gas/msp430/low-data-bss-sym.d: New test.
3309 * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
3310 * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
3311 * testsuite/gas/msp430/msp430.exp: Run new tests.
3312 Enable large code model when running -mdata-region={upper,either}
3315 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3317 * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
3318 OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
3319 (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
3320 OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
3322 (md_show_usage): Likewise.
3323 (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
3324 "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
3325 (md_longopts): Likewise.
3326 (warn_eint_nop): Update comment.
3327 (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
3328 prev_insn_is_dint or we are assembling for 430 ISA.
3329 (msp430_operands): Only call warn_unsure_interrupt if
3330 do_unknown_interrupt_nops == TRUE.
3331 * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
3332 * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
3333 * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
3334 * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
3335 * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
3337 * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
3338 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3340 2019-04-16 Alan Modra <amodra@gmail.com>
3342 * testsuite/gas/all/weakref1.d: xfail nds32.
3344 2019-04-16 Alan Modra <amodra@gmail.com>
3346 * testsuite/gas/all/gas.exp: Remove ns32k xfails.
3347 * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
3349 2019-04-16 Alan Modra <amodra@gmail.com>
3351 * write.h: Don't include bit_fix.h.
3352 (struct fix): Rearrange some fields. Delete fx_im_disp and
3353 fx_bit_fixP. Use bitfields for fx_size and fx_pcrel_adjust.
3354 * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
3355 (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
3356 (print_fixup): Don't print im_disp.
3357 * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
3359 * config/tc-dlx.c (md_apply_fix): Remove wrong debug code. Set
3360 fx_no_overflow when fx_bit_fixP.
3361 * config/tc-dlx.h: Include bit_fix.h.
3362 (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
3363 * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
3364 fx_no_overflow when bit_fixP.
3365 * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
3366 (fix_im_disp, fix_bit_fixP): Adjust to suit.
3367 (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
3369 2019-04-16 Alan Modra <amodra@gmail.com>
3371 * write.h (struct fix <fx_where>): Make unsigned.
3372 (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
3373 * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
3374 "size" parameters unsigned long.
3375 (fix_new_internal): Likewise. Adjust error format string to suit.
3376 * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
3377 * config/tc-sparc.c (md_apply_fix): Likewise.
3378 * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
3379 * config/tc-score7.c (s7_convert_frag): Likewise.
3381 2019-04-16 Alan Modra <amodra@gmail.com>
3383 * frags.h (struct frag <fr_fix>): Use unsigned type.
3384 * frags.c (frag_new): Assert that current size exceeds
3385 old_frags_var_max_size.
3386 * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
3387 * listing.c (calc_hex): Likewise.
3388 * write.c (cvt_frag_to_fill, write_relocs): Likewise.
3389 * config/tc-arc.c (md_convert_frag): Likewise.
3390 * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
3391 * config/tc-mips.c (md_convert_frag): Likewise.
3392 * config/tc-rl78.c (md_convert_frag): Likewise.
3393 * config/tc-rx.c (md_convert_frag): Likewise.
3394 * config/tc-sparc.c (md_apply_fix): Likewise.
3395 * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
3396 (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
3398 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3400 * config/tc-arm.c (parse_sys_vldr_vstr): New function.
3401 (OP_VLDR): New enum operand_parse_code enumerator.
3402 (parse_operands): Add logic for OP_VLDR.
3403 (do_t_vldr_vstr_sysreg): New function.
3404 (do_vldr_vstr): Likewise.
3405 (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
3406 (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
3407 Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
3408 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
3409 uses of VLDR and VSTR.
3410 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
3412 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
3414 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
3417 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3419 * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
3420 (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3422 (parse_vfp_reg_list): Add new partial_match parameter. Set
3423 *partial_match to TRUE if at least one element in the register list has
3424 matched. Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3425 register lists which expect VPR as last element in the list.
3426 (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
3428 (s_arm_unwind_save_vfp): Likewise.
3429 (enum operand_parse_code): New OP_VRSDVLST enumerator.
3430 (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
3431 Handle new OP_VRSDVLST case.
3432 (do_t_vscclrm): New function.
3433 (insns): New entry for VSCCLRM instruction.
3434 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
3436 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
3437 for above instructions.
3438 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
3440 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
3441 for above instructions.
3443 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3445 * config/tc-arm.c (enum reg_list_els): Define earlier and add
3446 REGLIST_RN and REGLIST_CLRM enumerators.
3447 (parse_reg_list): Add etype parameter to distinguish between regular
3448 core register list and CLRM register list. Add logic to
3449 recognize CLRM register list.
3450 (parse_vfp_reg_list): Assert type is not for core register list.
3451 (s_arm_unwind_save_core): Update call to parse_reg_list to new
3453 (enum operand_parse_code): Declare OP_CLRMLST enumerator.
3454 (parse_operands): Update call to parse_reg_list to new prototype. Add
3455 logic for OP_CLRMLST.
3456 (encode_thumb2_ldmstm): Rename into ...
3457 (encode_thumb2_multi): This. Add do_io parameter. Add logic to
3458 encode CLRM and guard LDM/STM only code by do_io.
3459 (do_t_ldmstm): Adapt to use encode_thumb2_multi.
3460 (do_t_push_pop): Likewise.
3461 (do_t_clrm): New function.
3462 (insns): Define CLRM.
3463 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
3464 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
3465 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
3466 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
3467 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
3469 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3470 Andre Vieira <andre.simoesdiasvieira@arm.com>
3472 * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
3473 for the LR operand and optional LR operand.
3474 (parse_operands): Add switch cases for OP_LR and OP_oLR for
3475 both type checking and value checking.
3476 (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
3477 (v8_1_loop_reloc): New helper function for handling labels
3478 for the low overhead loop instructions.
3479 (do_t_loloop): New function to encode DLS, WLS and LE.
3480 (insns): New entries for WLS, DLS and LE.
3481 (md_pcrel_from_section): New switch case
3482 for BFD_RELOC_ARM_THUMB_LOOP12.
3483 (md_appdy_fix): Likewise.
3484 (tc_gen_reloc): Likewise.
3485 * testsuite/gas/arm/armv8_1-m-tloop.s: New.
3486 * testsuite/gas/arm/armv8_1-m-tloop.d: New.
3487 * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
3488 * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
3489 * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
3491 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3492 Andre Vieira <andre.simoesdiasvieira@arm.com>
3494 * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
3495 (do_t_v8_1_branch): New switch case for bfcsel.
3497 (insns): New instruction for bfcsel.
3498 (md_pcrel_from_section): New switch case
3499 for BFD_RELOC_THUMB_PCREL_BFCSEL.
3500 (md_appdy_fix): Likewise
3501 (tc_gen_reloc): Likewise.
3502 * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
3503 * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
3505 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3507 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3508 BFD_RELOC_ARM_THUMB_BF13.
3509 (md_appdy_fix): Likewise.
3510 (tc_gen_reloc): Likewise.
3512 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3513 Andre Vieira <andre.simoesdiasvieira@arm.com>
3515 * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
3516 (do_t_v8_1_branch): New switch case for bfl.
3517 (insns): New instruction for bfl.
3518 * testsuite/gas/arm/armv8_1-m-bfl.d: New.
3519 * testsuite/gas/arm/armv8_1-m-bfl.s: New.
3520 * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
3521 * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
3522 * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
3523 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
3524 * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
3526 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3528 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3529 BFD_RELOC_ARM_THUMB_BF19.
3530 (md_appdy_fix): Likewise.
3531 (tc_gen_reloc): Likewise.
3533 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3535 * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
3536 (do_t_v8_1_branch): New switch cases for bfx and bflx.
3537 (insns): New instruction for bfx and bflx.
3538 * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
3539 * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
3540 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
3541 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
3542 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
3544 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3545 Andre Vieira <andre.simoesdiasvieira@arm.com>
3547 * config/tc-arm.c (T16_32_TAB): New entries for bf.
3548 (do_t_branch_future): New.
3549 (insns): New instruction for bf.
3550 * testsuite/gas/arm/armv8_1-m-bf.d: New.
3551 * testsuite/gas/arm/armv8_1-m-bf.s: New.
3552 * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
3553 * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
3554 * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
3555 * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
3556 * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
3558 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3560 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3561 BFD_RELOC_ARM_THUMB_BF17.
3562 (md_appdy_fix): Likewise.
3563 (tc_gen_reloc): Likewise.
3565 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3567 * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
3568 (arm_it): Member reloc renamed relocs and updated to an array.
3569 Rest: Replace all occurrences of reloc to relocs[0].
3571 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3573 * config/tc-arm.c (md_pcrel_from_section): New switch case
3574 for BFD_RELOC_THUMB_PCREL_BRANCH5.
3575 (v8_1_branch_value_check): New function to check branch
3577 (md_appdy_fix): New switch case for
3578 BFD_RELOC_THUMB_PCREL_BRANCH5.
3579 (tc_gen_reloc): Likewise.
3581 2019-04-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
3583 * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
3584 (armv8_1m_main_ext_table): New extension table.
3585 (arm_archs): Use the new extension table.
3586 * doc/c-arm.texi: Add missing arch and document new extensions.
3587 * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
3588 * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
3589 * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
3591 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3593 * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
3594 Tag_CPU_arch build attribute value. Reindent.
3595 (get_aeabi_cpu_arch_from_fset): Update assert.
3596 (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
3597 * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
3599 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3601 * config/tc-mips.c (mips_cpu_info_table): Add i6500. Update
3602 default ASEs for i6400.
3603 * doc/c-mips.texi (-march): Document i6500.
3604 * testsuite/gas/mips/elf_mach_i6400.d: New test.
3605 * testsuite/gas/mips/elf_mach_i6500.d: New test.
3606 * testsuite/gas/mips/mips.exp: Run the new tests.
3608 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3610 * config/tc-mips.c (mips_set_options) <init_ase>: New field.
3611 (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
3612 (file_mips_check_options): Propagate initial ASE settings.
3613 (mips_after_parse_args, parse_code_option): Track the initial
3614 ASE settings for a CPU.
3615 (s_mipsset): Restore the initial ASE settings when reverting
3616 to the default arch.
3617 * testsuite/gas/mips/elf_mach_p6600.d: New test.
3618 * testsuite/gas/mips/mips.exp: Run the new test.
3620 2019-04-12 John Darrington <john@darrington.wattle.id.au>
3622 config/tc-s12z.h: Remove definition of macro TC_M68K
3624 2019-04-01 John Darrington <john@darrington.wattle.id.au>
3626 config/tc-s12z.c: Use bfd_boolean where appropriate.
3628 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3630 * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
3631 * testsuite/gas/xtensa/loop-relax.d: New test definition.
3632 * testsuite/gas/xtensa/loop-relax.s: New test source.
3633 * testsuite/gas/xtensa/text-section-literals-1a.d: New test
3635 * testsuite/gas/xtensa/text-section-literals-2.d: New test
3637 * testsuite/gas/xtensa/text-section-literals-2.s: New test
3639 * testsuite/gas/xtensa/text-section-literals-2a.d: New test
3641 * testsuite/gas/xtensa/text-section-literals-3.d: New test
3643 * testsuite/gas/xtensa/text-section-literals-3.s: New test
3645 * testsuite/gas/xtensa/text-section-literals-4.d: New test
3647 * testsuite/gas/xtensa/text-section-literals-4.s: New test
3649 * testsuite/gas/xtensa/text-section-literals-4a.d: New test
3652 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3654 * testsuite/gas/xtensa/all.exp: Remove all expect-based
3655 tests and all explicit run_dump_test / run_list_test
3656 invocations. Add run_dump_tests for all .d files in the
3658 * testsuite/gas/xtensa/entry_align.d: New test definition.
3659 * testsuite/gas/xtensa/entry_align.l: New test output.
3660 * testsuite/gas/xtensa/entry_misalign.d: New test definition.
3661 * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
3662 * testsuite/gas/xtensa/j_too_far.d: New test definition.
3663 * testsuite/gas/xtensa/j_too_far.l: New test output.
3664 * testsuite/gas/xtensa/loop_align.d: New test definition.
3665 * testsuite/gas/xtensa/loop_misalign.d: New test definition.
3666 * testsuite/gas/xtensa/trampoline-2.d: New test definition.
3667 * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
3668 * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
3670 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3672 * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
3674 (get_literal_pool_location): Only search for the literal pool
3675 when auto litpools is used, otherwise take one recorded in the
3676 tc_segment_info_data.
3677 (xtensa_assign_litpool_addresses): New function.
3678 (xtensa_move_literals): Don't duplicate 'literal pool location
3679 required...' error message. Call xtensa_assign_litpool_addresses.
3681 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3683 * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
3684 (xtensa_mark_literal_pool_location): Don't add fill frag to literal
3685 section that records literal pool location.
3686 (md_begin): Call xtensa_mark_literal_pool_location when text
3687 section literals or auto litpools are used.
3688 (xtensa_elf_section_change_hook): Call
3689 xtensa_mark_literal_pool_location when text section literals or
3690 auto litpools are used, there's no literal pool location defined
3691 for the current section and it's not .init or .fini.
3692 * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
3693 * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
3694 * testsuite/gas/xtensa/auto-litpools.d: Likewise.
3696 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3698 * config/tc-aarch64.c (process_omitted_operand): Add case for
3700 (parse_operands): Likewise.
3701 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
3702 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3703 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3704 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3706 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3708 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
3709 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3710 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3711 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3713 2019-04-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3715 * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
3716 * testsuite/gas/i386/solaris/solaris.exp: New driver.
3717 * testsuite/gas/i386/solaris/reloc64.d,
3718 testsuite/gas/i386/solaris/x86-64-jump.d,
3719 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
3720 testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
3721 testsuite/gas/i386/solaris/x86-64-nop-3.d,
3722 testsuite/gas/i386/solaris/x86-64-nop-4.d,
3723 testsuite/gas/i386/solaris/x86-64-nop-5.d,
3724 testsuite/gas/i386/solaris/x86-64-relax-2.d,
3725 testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
3726 * testsuite/gas/i386/reloc64.d,
3727 testsuite/gas/i386/x86-64-jump.d,
3728 testsuite/gas/i386/x86-64-mpx-branch-1.d,
3729 testsuite/gas/i386/x86-64-mpx-branch-2.d,
3730 testsuite/gas/i386/x86-64-nop-3.d,
3731 testsuite/gas/i386/x86-64-nop-4.d,
3732 testsuite/gas/i386/x86-64-nop-5.d,
3733 testsuite/gas/i386/x86-64-relax-2.d,
3734 testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
3736 2019-04-10 Alan Modra <amodra@gmail.com>
3738 * config/te-cloudabi.h: New file.
3739 * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
3740 rather than TARGET_OS to select cloudabi.
3741 * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
3742 * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
3744 2019-04-09 Robert Suchanek <robert.suchanek@mips.com>
3746 * testsuite/gas/mips/mips.exp: Run hwr-names test.
3747 * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
3749 * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
3751 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3753 * config/tc-i386.c (output_insn): Support
3754 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
3755 * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
3756 * testsuite/gas/i386/property-2.d: Updated.
3757 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3759 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3761 * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
3762 * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
3765 2019-04-05 H.J. Lu <hongjiu.lu@intel.com>
3767 * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
3768 * testsuite/gas/i386/property-2.d: New file.
3769 * testsuite/gas/i386/property-2.s: Likewise.
3770 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3772 2019-04-05 Xuepeng Guo <xuepeng.guo@intel.com>
3774 * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
3775 (cpu_noarch): Add noavx512_bf16.
3776 * doc/c-i386.texi: Document avx512_bf16.
3777 * testsuite/gas/i386/avx512_bf16.d: New file.
3778 * testsuite/gas/i386/avx512_bf16.s: Likewise.
3779 * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
3780 * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
3781 * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
3782 * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
3783 * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
3784 * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
3785 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
3786 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
3787 * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
3788 * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
3789 * testsuite/gas/i386/i386.exp: Add BF16 related tests.
3791 2019-04-05 Alan Modra <amodra@gmail.com>
3793 * testsuite/gas/ppc/bc.s,
3794 * testsuite/gas/ppc/bcat.d,
3795 * testsuite/gas/ppc/bcaterr.d,
3796 * testsuite/gas/ppc/bcaterr.l,
3797 * testsuite/gas/ppc/bcy.d,
3798 * testsuite/gas/ppc/bcyerr.d,
3799 * testsuite/gas/ppc/bcyerr.l: New tests.
3800 * testsuite/gas/ppc/ppc.exp: Run them.
3802 2019-04-05 Alan Modra <amodra@gmail.com>
3804 * testsuite/gas/ppc/476.d: Remove trailing spaces.
3805 * testsuite/gas/ppc/a2.d: Likewise.
3806 * testsuite/gas/ppc/booke.d: Likewise.
3807 * testsuite/gas/ppc/booke_xcoff.d: Likewise.
3808 * testsuite/gas/ppc/e500.d: Likewise.
3809 * testsuite/gas/ppc/e500mc.d: Likewise.
3810 * testsuite/gas/ppc/e6500.d: Likewise.
3811 * testsuite/gas/ppc/htm.d: Likewise.
3812 * testsuite/gas/ppc/power6.d: Likewise.
3813 * testsuite/gas/ppc/power8.d: Likewise.
3814 * testsuite/gas/ppc/power9.d: Likewise.
3815 * testsuite/gas/ppc/vle.d: Likewise.
3817 2019-04-04 Peter Bergner <bergner@linux.ibm.com>
3820 * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
3821 btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
3822 bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
3823 bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
3824 bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
3825 bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
3826 bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
3827 bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
3828 bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
3829 beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
3830 bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
3831 buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
3832 bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
3833 bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
3834 bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
3835 bttarl+): Add tests of extended mnemonics.
3836 * testsuite/gas/ppc/power8.d: Likewise. Update previous bctar tests
3837 to expect new extended mnemonics.
3838 * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
3839 to not use illegal BO value. Use a more convenient BI value.
3840 * testsuite/gas/ppc/a2.d: Update tests for new expect output.
3842 2019-04-03 Max Filippov <jcmvbkbc@gmail.com>
3844 * config/tc-xtensa.c (convert_frag_immed): Drop
3845 convert_frag_immed_finish_loop invocation.
3846 (convert_frag_immed_finish_loop): Drop declaration and
3848 * config/xtensa-relax.c (widen_spec_list): Replace loop
3849 widening that uses addi/addmi with widening that uses l32r
3852 2019-04-01 Andre Vieira <andre.simoesdiasvieira@arm.com>
3854 * config/tc-arm.c (arm_ext_table): New struct type.
3855 (arm_arch_option_table): Add new 'arm_ext_table' field.
3856 (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
3857 (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
3858 armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
3859 armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
3860 armv85a_ext_table, armv8m_main_ext_table,
3861 armv8r_ext_table): New architecture extension tables.
3862 (ARM_ARCH_OPT): Add new default field.
3863 (ARM_ARCH_OPT2): New macro.
3864 (arm_archs): Extend some architectures with the new architecture
3865 extension tables mentioned above.
3866 (arm_extensions): Add DEPRECATED comment with instructions to
3868 (arm_parse_extension): Change to use new extension tables.
3869 (arm_parse_cpu): Don't change existing behavior.
3870 (arm_parse_arch): Change to use new extension tables.
3871 * doc/c-arm.texi: Document new architecture extensions.
3872 * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
3873 extension option rather than -mfpu and change expected behaviour to
3875 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
3876 * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
3877 * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
3878 * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
3879 * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
3880 * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
3881 * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
3882 * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
3883 * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
3884 * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
3885 * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
3886 * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
3887 * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
3888 * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
3889 * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
3890 * testsuite/gas/arm/armv8m.main+fp.d: New.
3891 * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
3892 * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
3893 * testsuite/gas/arm/attr-ext-fpv5.d: New.
3894 * testsuite/gas/arm/attr-ext-idiv.d: New.
3895 * testsuite/gas/arm/attr-ext-mp.d: New.
3896 * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
3897 * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
3898 * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
3899 * testsuite/gas/arm/attr-ext-sec.d: New.
3900 * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
3901 * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
3902 * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
3903 * testsuite/gas/arm/attr-ext-vfpv3.d: New.
3904 * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
3905 * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
3906 * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
3907 * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
3908 * testsuite/gas/arm/attr-ext-vfpv4.d: New.
3909 * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
3910 * testsuite/gas/arm/fpv5-d16.s: New.
3911 * testsuite/gas/arm/fpv5-sp-d16.s: New.
3913 2019-03-28 Alan Modra <amodra@gmail.com>
3916 * testsuite/gas/ppc/476.d: Update mtfsb*.
3917 * testsuite/gas/ppc/a2.d: Likewise.
3919 2019-03-21 Alan Modra <amodra@gmail.com>
3921 * emul.h (struct emulation): Delete strip_underscore.
3922 * emul-target.h (emul_strip_underscore): Don't define.
3923 (emul_struct_name): Update initialization.
3925 2019-03-21 Alan Modra <amodra@gmail.com>
3927 * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
3928 * config/tc-pdp11.c (md_apply_fix): Likewise.
3929 * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
3930 BFD_RELOC_16, and BFD_RELOC_64.
3931 * testsuite/gas/all/gas.exp: Move target exclusions for forward
3932 test, but not cr16, to..
3933 * testsuite/gas/all/forward.d: ..here, with explanation. Remove
3934 d10v, d30v, and pdp11 xfails.
3936 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3938 * config/tc-i386.c (optimize_encoding): Don't check AVX for
3939 EVEX vector load/store optimization. Check both operands for
3940 ZMM register. Update EVEX vector load/store opcode check.
3941 Choose EVEX Disp8 over VEX Disp32.
3942 * testsuite/gas/i386/optimize-1.d: Updated.
3943 * testsuite/gas/i386/optimize-1a.d: Likewise.
3944 * testsuite/gas/i386/optimize-2.d: Likewise.
3945 * testsuite/gas/i386/optimize-4.d: Likewise.
3946 * testsuite/gas/i386/optimize-5.d: Likewise.
3947 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
3948 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
3949 * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
3950 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
3951 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
3952 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
3953 * testsuite/gas/i386/optimize-1.s: Add ZMM register load
3955 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
3957 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3960 * config/tc-i386.c (optimize_encoding): Check only
3961 cpu_arch_flags.bitfield.cpuavx512vl.
3962 * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
3963 * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
3965 * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
3966 * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
3968 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
3971 * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
3972 x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
3973 Remove optimize-6c and x86-64-optimize-7c tests.
3974 * testsuite/gas/i386/noavx-3.l: Updated.
3975 * testsuite/gas/i386/noavx-4.d: Likewise.
3976 * testsuite/gas/i386/noavx-5.d: Likewise.
3977 * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
3978 * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
3979 * testsuite/gas/i386/nosse-5.s: Likewise.
3980 * testsuite/gas/i386/optimize-6a.d: Removed.
3981 * testsuite/gas/i386/optimize-6c.d: Likewise.
3982 * testsuite/gas/i386/optimize-7.d: Likewise.
3983 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
3984 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
3985 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
3986 * testsuite/gas/i386/optimize-6a.l: New file.
3987 * testsuite/gas/i386/optimize-6a.s: Likewise.
3988 * testsuite/gas/i386/optimize-7.l: Likewise.
3989 * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
3990 * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
3991 * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
3993 2019-03-18 Alan Modra <amodra@gmail.com>
3995 * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
3996 * as.c (macro_expr): Likewise.
3997 * macro.c (buffer_and_nest): Likewise.
3998 * read.c (temp_ilp): Remove FIXME.
4000 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4002 * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
4003 * testsuite/gas/i386/avx512bw-intel.d: Likewise.
4004 * testsuite/gas/i386/avx512bw.d: Likewise.
4005 * testsuite/gas/i386/avx512f-intel.d: Likewise.
4006 * testsuite/gas/i386/avx512f.d: Likewise.
4007 * testsuite/gas/i386/disp32.d: Likewise.
4008 * testsuite/gas/i386/intel-regs.d: Likewise.
4009 * testsuite/gas/i386/pseudos.d: Likewise.
4010 * testsuite/gas/i386/x86-64-disp32.d: Likewise.
4011 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
4013 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4016 * config/tc-i386.c (optimize_encoding): Encode 128-bit and
4017 256-bit EVEX vector register load/store instructions as VEX
4018 vector register load/store instructions for -O1.
4019 * doc/c-i386.texi: Update -O1 documentation.
4020 * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
4021 * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
4022 load/store instructions.
4023 * testsuite/gas/i386/optimize-2.s: Likewise.
4024 * testsuite/gas/i386/optimize-3.s: Likewise.
4025 * testsuite/gas/i386/optimize-5.s: Likewise.
4026 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
4027 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4028 * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
4029 * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
4030 * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
4031 * testsuite/gas/i386/optimize-1.d: Updated.
4032 * testsuite/gas/i386/optimize-2.d: Likewise.
4033 * testsuite/gas/i386/optimize-3.d: Likewise.
4034 * testsuite/gas/i386/optimize-4.d: Likewise.
4035 * testsuite/gas/i386/optimize-5.d: Likewise.
4036 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
4037 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4038 * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
4039 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
4040 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
4041 * testsuite/gas/i386/optimize-7.d: New file.
4042 * testsuite/gas/i386/optimize-7.s: Likewise.
4043 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
4044 * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
4046 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4048 * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
4049 VEX/EVEX vector register clearing instructions with 128-bit VEX
4050 vector register clearing instructions at -O1.
4051 * doc/c-i386.texi: Update -O1 and -O2 documentation.
4052 * testsuite/gas/i386/i386.exp: Run optimize-1a and
4054 * testsuite/gas/i386/optimize-1a.d: New file.
4055 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
4057 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
4060 * config/tc-i386.c: Include <limits.h> if it exists and try
4061 including <sys/param.h> if we have it.
4062 (INT_MAX): Define if not defined.
4063 (md_parse_option): Set optimize to INT_MAX for -Os.
4064 * testsuite/gas/i386/optimize-2.s: Add a test.
4065 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4066 * testsuite/gas/i386/optimize-2.d: Updated.
4067 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4069 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
4072 * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
4073 with 128-bit VEX encoding only when AVX is enabled and with
4074 128-bit EVEX encoding only when AVX512VL is enabled.
4075 * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
4076 * testsuite/gas/i386/optimize-6.s: New file.
4077 * testsuite/gas/i386/optimize-6a.d: Likewise.
4078 * testsuite/gas/i386/optimize-6b.d: Likewise.
4079 * testsuite/gas/i386/optimize-6c.d: Likewise.
4080 * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
4081 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
4082 * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
4083 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
4084 * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
4086 2019-03-15 Li Hao <li.hao296@zte.com.cn>
4089 * config/tc-i386.c (parse_insn): Check mnemp before using it to
4090 determine if a suffix can be trimmed.
4092 2019-03-13 Christian Eggers <ceggers@gmx.de>
4094 * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
4096 2019-03-13 Christian Eggers <ceggers@gmx.de>
4098 * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
4100 2019-03-13 Christian Eggers <ceggers@gmx.de>
4102 * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
4104 2019-03-13 Christian Eggers <ceggers@gmx.de>
4106 * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
4108 2019-03-13 Christian Eggers <ceggers@gmx.de>
4110 * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
4111 (out_debug_aranges, out_debug_info): Likewise.
4113 2019-03-13 Christian Eggers <ceggers@gmx.de>
4115 * symbols.h (symbol_temp_new_now_octets): Declare.
4116 (symbol_set_value_now_octets, symbol_octets_p): Declare.
4117 * symbols.c (struct symbol_flags): New member sy_octets.
4118 (symbol_temp_new_now_octets): New function.
4119 (resolve_symbol_value): Return octets instead of bytes if
4121 (symbol_set_value_now_octets): New function.
4122 (symbol_octets_p): New function.
4124 2019-03-13 Christian Eggers <ceggers@gmx.de>
4126 * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
4128 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com>
4130 * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
4131 * testsuite/gas/s390/zarch-arch13.d: Likewise.
4133 2019-02-27 Matthew Malcomson <matthew.malcomson@arm.com>
4135 * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
4136 * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
4137 * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
4138 * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
4140 * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
4141 * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
4143 2019-02-24 Alan Modra <amodra@gmail.com>
4145 * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
4147 2019-02-24 Alan Modra <amodra@gmail.com>
4150 * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
4151 of section to ensure file contents cover aligned section size.
4153 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4155 * config/tc-arm.c (arm_cpus): Add neoverse-n1.
4156 * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
4158 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4160 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
4161 * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
4163 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4165 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
4166 * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
4168 2019-02-19 Paul Hua <paul.hua.gm@gmail.com>
4170 * NEWS: Mention -m[no-]fix-loongson3-llsc.
4171 * configure.ac: Add --enable-mips-fix-loongson3-llsc.
4172 Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
4173 * config.in: Regenerated.
4174 * configure: Likewise.
4175 * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
4177 (options): New OPTION_FIX_LOONGSON3_LLSC,
4178 OPTION_NO_FIX_LOONGSON3_LLSC.
4179 (md_longopts): Add -m[no-]fix-loongson3-llsc.
4180 (md_begin): Initialize sync insn.
4181 (fix_loongson3_llsc): New.
4182 (append_insn): Call fix_loongson3_llsc.
4183 (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
4184 OPTION_NO_FIX_LOONGSON3_LLSC.
4185 (md_show_usage): Display -m[no-]fix-loongson3-llsc.
4186 * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
4187 --enable-mips-fix-loongson3-llsc=[yes|no].
4189 2019-02-10 H.J. Lu <hongjiu.lu@intel.com>
4192 * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
4194 * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
4196 * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
4198 * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
4199 * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
4200 * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
4201 * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
4202 * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
4203 * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
4204 * config/tc-rx.h (TC_FRAG_INIT): Likewise.
4205 * config/tc-score.h (TC_FRAG_INIT): Likewise.
4206 * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
4207 * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
4208 * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
4209 * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
4210 (alignment ? ((1 << alignment) - 1) : 1)
4211 (i386_tc_frag_data): Add max_bytes.
4212 (TC_FRAG_INIT): Add and track max_bytes.
4213 (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
4214 fragP->tc_frag_data.max_bytes.
4215 * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
4217 2019-02-08 Jim Wilson <jimw@sifive.com>
4219 * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
4220 (riscv_ip) <'C'>: Add 'z' support.
4222 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4224 * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
4226 * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
4227 * testsuite/gas/arm/hlt.d: New test.
4228 * testsuite/gas/arm/hlt.s: New test.
4230 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4232 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
4233 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
4235 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4238 * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
4239 * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
4241 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
4243 * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
4244 64-bit boundaries for the GR6.
4245 * testsuite/gas/visium/allinsn_gr6.s: Tweak.
4246 * testsuite/gas/visium/allinsn_gr6.d: Likewise.
4247 * testsuite/gas/visium/bra-1.d: New test.
4248 * testsuite/gas/visium/bra-1.s: Likewise.
4249 * testsuite/gas/visium/visium.exp: Run bra-1 test.
4251 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4253 * config/tc-s12z.c (lex_imm): Add new argument exp_o.
4254 (emit_reloc): New function.
4255 (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
4256 can be either 2 bytes or 3 bytes long.
4257 * testsuite/gas/s12z/mov-imm-reloc.d: New file.
4258 * testsuite/gas/s12z/mov-imm-reloc.s: New file.
4259 * testsuite/gas/s12z/s12z.exp: Add them.
4261 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4263 * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
4264 * testsuite/gas/s12z/pc-rel-bad.d: New file.
4265 * testsuite/gas/s12z/pc-rel-bad.l: New file.
4266 * testsuite/gas/s12z/pc-rel-bad.s: New file.
4267 * testsuite/gas/s12z/pc-rel-good.d: New file.
4268 * testsuite/gas/s12z/pc-rel-good.s: New file.
4269 * testsuite/gas/s12z/s12z.exp: Add them.
4271 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4273 * config/tc-s12z.c (tfr): Emit warning if operands are the same.
4274 * testsuite/gas/s12z/exg.d: New test case.
4275 * testsuite/gas/s12z/exg.l: New file.
4277 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4279 * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
4280 immediate mode operands should be permitted.
4281 * testsuite/s12z/imm-dest.d: New file.
4282 * testsuite/s12z/imm-dest.l: New file.
4283 * testsuite/s12z/imm-dest.s: New file.
4284 * testsuite/s12z/s12z.exp: Add them.
4286 2019-01-31 Andreas Krebbel <krebbel@linux.ibm.com>
4288 * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
4289 * doc/c-s390.texi: Document arch13 march option.
4290 * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
4291 * testsuite/gas/s390/zarch-arch13.d: New test.
4292 * testsuite/gas/s390/zarch-arch13.s: New test.
4293 * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
4296 2019-01-31 Alan Modra <amodra@gmail.com>
4298 * config/tc-alpha.c (md_apply_fix): Correct range checks for
4299 BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
4300 * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
4301 * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
4303 2019-01-28 Max Filippov <jcmvbkbc@gmail.com>
4305 * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
4306 symbols as done in md_apply_fix.
4307 * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
4309 2019-01-28 Nick Clifton <nickc@redhat.com>
4311 * po/fr.po: Updated French translation.
4312 * po/ru.po: Updated Russian translation.
4314 2019-01-28 Alan Modra <amodra@gmail.com>
4316 * configure.ac (ac_checking): Set from bfd/development.sh
4317 development variable.
4318 * configure: Regenerate.
4320 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4322 * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
4323 stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
4324 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
4325 stg, stzg, st2g and stz2g.
4326 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4327 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4328 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4330 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4332 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
4333 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4334 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4335 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4337 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4338 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4340 * config/tc-aarch64.c (parse_address_main): Remove support for
4341 [base]! address expression.
4342 (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
4343 (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
4344 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
4346 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4347 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4348 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4350 2019-01-25 Wu Heng <wu.heng@zte.com.cn>
4353 * macro.c (getstring): Check array bound before accessing.
4355 2019-01-25 Alan Modra <amodra@gmail.com>
4359 * read.c (stringer): Delete assertion.
4361 2019-01-21 Nick Clifton <nickc@redhat.com>
4363 * po/uk.po: Updated Ukranian translation.
4365 2019-01-19 Nick Clifton <nickc@redhat.com>
4367 * config.in: Regenerate.
4368 * configure: Regenerate.
4369 * po/gas.pot: Regenerate.
4371 2018-06-24 Nick Clifton <nickc@redhat.com>
4373 2.32 branch created.
4375 2019-01-17 Tamar Christina <tamar.christina@arm.com>
4377 * testsuite/gas/arm/archv6t2-1-pe.d: New test.
4378 * testsuite/gas/arm/archv6t2-1.d: Skip pe.
4379 * testsuite/gas/arm/csdb.d: Skip pe.
4380 * testsuite/gas/arm/sb-thumb1-pe.d: New test.
4381 * testsuite/gas/arm/sb-thumb1.d: Skip pe.
4382 * testsuite/gas/arm/sb-thumb2-pe.d: New test.
4383 * testsuite/gas/arm/sb-thumb2.d: Skip pe.
4384 * testsuite/gas/arm/udf.d: Skip pe.
4386 2019-01-16 Kito Cheng <kito@andestech.com>
4388 * testsuite/gas/riscv/attribute-empty.d: New.
4390 2019-01-16 Kito Cheng <kito@andestech.com>
4391 Nelson Chu <nelson@andestech.com>
4393 * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
4394 (riscv_set_options): Add `arch_attr` field.
4395 (riscv_opts): Set default value for arch_attr.
4396 (riscv_write_out_arch_attr): New.
4397 (riscv_set_public_attributes): Likewise.
4398 (riscv_md_end): Likewise.
4399 (riscv_convert_symbolic_attribute): Likewise.
4400 (s_riscv_attribute): Likewise.
4401 (explicit_arch_attr): Likewise.
4402 (riscv_pseudo_table): Add .attribute to the table.
4403 (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
4404 enumeration constants.
4405 (md_longopts): Add `march-attr' and `mno-arch-attr' options.
4406 (md_parse_option): Handle the new options.
4407 (md_show_usage): Document the `march-attr' option.
4408 * config/tc-riscv.h (md_end): Define as riscv_md_end
4409 (riscv_md_end): Declare.
4410 (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
4411 riscv_convert_symbolic_attribute.
4412 (riscv_convert_symbolic_attribute): Declare.
4413 (start_assemble): Declare.
4414 * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
4415 * testsuite/gas/elf/section2.e-riscv: New.
4416 * testsuite/gas/riscv/attribute-01.d: New test
4417 * testsuite/gas/riscv/attribute-02.d: Likewise.
4418 * testsuite/gas/riscv/attribute-03.d: Likewise.
4419 * testsuite/gas/riscv/attribute-04.d: Likewise.
4420 * testsuite/gas/riscv/attribute-04.s: Likewise.
4421 * testsuite/gas/riscv/attribute-05.d: Likewise.
4422 * testsuite/gas/riscv/attribute-05.s: Likewise.
4423 * testsuite/gas/riscv/attribute-06.d: Likewise.
4424 * testsuite/gas/riscv/attribute-06.s: Likewise.
4425 * testsuite/gas/riscv/attribute-07.d: Likewise.
4426 * testsuite/gas/riscv/attribute-07.s: Likewise.
4427 * testsuite/gas/riscv/attribute-08.d: Likewise.
4428 * testsuite/gas/riscv/attribute-08.s: Likewise.
4429 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
4430 * testsuite/gas/riscv/attribute-unknown.s: Likewise.
4431 * testsuite/gas/riscv/empty.l: Likewise.
4432 * doc/c-riscv.texi (.attribute): Add documentation.
4433 * configure.ac (--enable-default-riscv-attribute): New options.
4434 * configure: Re-generate.
4435 * config.in: Re-generate.
4437 2019-01-16 John Darrington <john@darrington.wattle.id.au>
4439 * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
4440 before the contents.
4441 * testsuite/gas/s12z/labels.d: New file.
4442 * testsuite/gas/s12z/labels.s: New file.
4443 * testsuite/gas/s12z/s12z.exp: Add them.
4444 * config/tc-s12z.c (tfr): Change as_bad to as_warn.
4445 Also fix message typo and semantics.
4446 * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
4448 * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
4451 2019-01-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4453 * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
4454 (insns) [ARM_VARIANT]: Modified.
4455 (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
4457 * testsuite/gas/arm/archv6t2-1.d: New test.
4458 * testsuite/gas/arm/archv6t2-1.s: Likewise.
4459 * testsuite/gas/arm/archv6t2-2.d: Likewise.
4461 2019-01-11 Alan Modra <amodra@gmail.com>
4464 * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
4465 * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
4467 2019-01-10 Nick Clifton <nickc@redhat.com>
4470 * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
4471 fact that control characters are now displayed as escape
4473 * testsuite/gas/mips/mips16-e.d: Likewise.
4474 * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
4475 * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
4476 * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
4477 * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
4478 * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
4479 * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
4480 * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
4481 * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
4482 * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
4483 * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
4484 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
4485 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
4486 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
4487 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
4488 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
4490 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
4492 * testsuite/gas/mips/mipsel16-e.d: Likewise.
4493 * testsuite/gas/mips/mipsr6@msa.d: Likewise.
4494 * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
4495 * testsuite/gas/mips/r6-64-n32.d: Likewise.
4496 * testsuite/gas/mips/r6-64-n64.d: Likewise.
4497 * testsuite/gas/mips/r6-n32.d: Likewise.
4498 * testsuite/gas/mips/r6-n64.d: Likewise.
4499 * testsuite/gas/mips/r6.d: Likewise.
4500 * testsuite/gas/mips/tmips16-e.d: Likewise.
4501 * testsuite/gas/mips/tmipsel16-e.d: Likewise.
4502 * testsuite/gas/mn10300/relax.d: Likewise.
4504 2019-01-09 John Darrington <john@darrington.wattle.id.au>
4506 * testsuite/gas/s12z/jsr.s: New case.
4507 * testsuite/gas/s12z/jsr.d: New case.
4509 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
4511 * configure: Regenerate.
4513 2019-01-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4515 * config/tc-aarch64.c (aarch64_cpus): Add ares.
4516 * doc/c-aarch64.texi (-mcpu): Document ares value.
4518 2019-01-08 Alan Modra <amodra@gmail.com>
4520 * testsuite/gas/rx/rx.exp: Create generated test source in
4522 * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
4523 * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
4524 * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
4525 * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
4526 * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
4527 * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
4528 * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
4529 * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
4530 * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
4531 * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
4532 * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
4533 * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
4534 * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
4535 * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
4536 * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
4537 * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
4538 * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
4539 * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
4540 * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
4541 * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
4542 * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
4543 * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
4544 * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
4545 * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
4546 * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
4547 * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
4548 * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
4549 * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
4550 * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
4551 * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
4552 * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
4553 * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
4554 * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
4555 * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
4556 * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
4557 * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
4558 * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
4559 * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
4560 * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
4561 * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
4562 * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
4563 * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
4564 * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
4565 * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
4566 * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
4567 * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
4568 * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
4569 * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
4570 * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
4571 * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
4572 * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
4573 * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
4574 * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
4575 * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
4576 * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
4577 * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
4578 * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
4579 * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
4580 * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
4581 * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
4582 * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
4583 * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
4584 * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
4585 * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
4586 * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
4587 * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
4588 * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
4589 * testsuite/gas/rx/xor.d: Add #source line.
4591 2019-01-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4593 * config/tc-arm.c (arm_cpus): Add ares.
4594 * doc/c-arm.texi (-mcpu): Document ares value.
4596 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
4598 * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
4599 (rx_bfield): Add prototype.
4600 (rx_post): Likewise.
4601 * config/rx-parse.y: Add v3 instructions and Double FPU registers.
4604 (rx_check_v3): New. check v3 type.
4605 (rx_check_dfpu): New. check have double support.
4606 (double_condition_table): New. dcmp<cond> contiditon.
4607 (check_condition): Multiple condition support.
4608 (rx_lex): RXv3 instructions support.
4609 Add parse dcmp<cond> instruction and Double FPU registers.
4610 (immediate): Disable optimize in dmov #imm case.
4611 (displacement): Add double displacement in dmov instraction.
4612 * config/tc-rx.c (rx_use_conventional_section_names):
4613 Invert default value in rx-*-linux target.
4614 (cpu_type): Add additional ELF flags.
4615 (cpu_type_list): Add RXv3.
4616 (md_parse_option): Refer elf_flags from cpu_type_list.
4617 (md_show_usage): Add rxv3 and rxv3-dfpu.
4618 (rx_bytesT): Add post byte.
4619 (rx_bfield): New. generate bfmov / bfmovz "imm" field.
4620 (rx_post): New. Set instruction post byte.
4621 (md_assemble): Add post byte.
4622 doc/c-rx.texi: Add cpu types.
4623 * testsuite/gas/rx/Xtod.d: New.
4624 * testsuite/gas/rx/Xtod.sm: New.
4625 * testsuite/gas/rx/bfmov.d: New.
4626 * testsuite/gas/rx/bfmov.sm: New.
4627 * testsuite/gas/rx/dabs.d: New.
4628 * testsuite/gas/rx/dabs.sm: New.
4629 * testsuite/gas/rx/dadd.d: New.
4630 * testsuite/gas/rx/dadd.sm: New.
4631 * testsuite/gas/rx/dcmp.d: New.
4632 * testsuite/gas/rx/dcmp.sm: New.
4633 * testsuite/gas/rx/ddiv.d: New.
4634 * testsuite/gas/rx/ddiv.sm: New.
4635 * testsuite/gas/rx/dmov.d: New.
4636 * testsuite/gas/rx/dmov.sm: New.
4637 * testsuite/gas/rx/dmul.d: New.
4638 * testsuite/gas/rx/dmul.sm: New.
4639 * testsuite/gas/rx/dneg.d: New.
4640 * testsuite/gas/rx/dneg.sm: New.
4641 * testsuite/gas/rx/dpopm.d: New.
4642 * testsuite/gas/rx/dpopm.sm: New.
4643 * testsuite/gas/rx/dpushm.d: New.
4644 * testsuite/gas/rx/dpushm.sm: New.
4645 * testsuite/gas/rx/dround.d: New.
4646 * testsuite/gas/rx/dround.sm: New.
4647 * testsuite/gas/rx/dsqrt.d: New.
4648 * testsuite/gas/rx/dsqrt.sm: New.
4649 * testsuite/gas/rx/dsub.d: New.
4650 * testsuite/gas/rx/dsub.sm: New.
4651 * testsuite/gas/rx/dtoX.d: New.
4652 * testsuite/gas/rx/dtoX.sm: New.
4653 * testsuite/gas/rx/macros.inc: Add double FPU registers.
4654 * testsuite/gas/rx/mvfdc.d: New.
4655 * testsuite/gas/rx/mvfdc.sm: New.
4656 * testsuite/gas/rx/mvfdr.d: New.
4657 * testsuite/gas/rx/mvfdr.sm: New.
4658 * testsuite/gas/rx/mvtdc.d: New.
4659 * testsuite/gas/rx/mvtdc.sm: New.
4660 * testsuite/gas/rx/rstr.d: New.
4661 * testsuite/gas/rx/rstr.sm: New.
4662 * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
4663 * testsuite/gas/rx/save.d: New.
4664 * testsuite/gas/rx/save.sm: New.
4665 * testsuite/gas/rx/xor.d: New.
4666 * testsuite/gas/rx/xor.sm: Add pattern.
4668 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4671 * macro.c (get_any_string): Check for end of input whilst scanning
4674 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4677 * read.c (stringer): Fix handling of missing '>' character at end
4680 2019-01-01 Alan Modra <amodra@gmail.com>
4682 Update year range in copyright notice of all files.
4684 For older changes see ChangeLog-2018
4686 Copyright (C) 2019 Free Software Foundation, Inc.
4688 Copying and distribution of this file, with or without modification,
4689 are permitted in any medium without royalty provided the copyright
4690 notice and this notice are preserved.
4696 version-control: never