1 2019-12-12 H.J. Lu <hongjiu.lu@intel.com>
3 * config/tc-i386.c (OPTION_MBRANCHES_WITH_32B_BOUNDARIES): New.
4 (md_longopts): Add -mbranches-within-32B-boundaries.
5 (md_parse_option): Handle -mbranches-within-32B-boundaries.
6 (md_show_usage): Add -mbranches-within-32B-boundaries.
8 2019-12-12 H.J. Lu <hongjiu.lu@intel.com>
10 * config/tc-i386.c (_i386_insn): Add has_gotpc_tls_reloc.
13 (align_branch_power): New.
14 (align_branch_kind): New.
15 (align_branch_bit): New.
17 (MAX_FUSED_JCC_PADDING_SIZE): New.
18 (align_branch_prefix_size): New.
19 (BRANCH_PADDING): New.
21 (FUSED_JCC_PADDING): New.
22 (i386_generate_nops): Support BRANCH_PADDING and FUSED_JCC_PADDING.
23 (md_begin): Abort if align_branch_prefix_size <
24 MAX_FUSED_JCC_PADDING_SIZE.
25 (md_assemble): Set last_insn.
26 (maybe_fused_with_jcc_p): New.
27 (add_fused_jcc_padding_frag_p): New.
28 (add_branch_prefix_frag_p): New.
29 (add_branch_padding_frag_p): New.
30 (output_insn): Generate a BRANCH_PADDING, FUSED_JCC_PADDING or
31 BRANCH_PREFIX frag and terminate each frag to align branches.
32 (output_disp): Set i.has_gotpc_tls_reloc to TRUE for GOTPC and
33 relaxable TLS relocations.
34 (output_imm): Likewise.
35 (i386_next_non_empty_frag): New.
36 (i386_next_jcc_frag): New.
37 (i386_classify_machine_dependent_frag): New.
38 (i386_branch_padding_size): New.
39 (i386_generic_table_relax_frag): New.
40 (md_estimate_size_before_relax): Handle COND_JUMP_PADDING,
41 FUSED_JCC_PADDING and COND_JUMP_PREFIX frags.
42 (md_convert_frag): Handle BRANCH_PADDING, BRANCH_PREFIX and
43 FUSED_JCC_PADDING frags.
44 (OPTION_MALIGN_BRANCH_BOUNDARY): New.
45 (OPTION_MALIGN_BRANCH_PREFIX_SIZE): New.
46 (OPTION_MALIGN_BRANCH): New.
47 (md_longopts): Add -malign-branch-boundary=,
48 -malign-branch-prefix-size= and -malign-branch=.
49 (md_parse_option): Handle -malign-branch-boundary=,
50 -malign-branch-prefix-size= and -malign-branch=.
51 (md_show_usage): Display -malign-branch-boundary=,
52 -malign-branch-prefix-size= and -malign-branch=.
53 (i386_target_format): Set tls_get_addr.
54 (i386_cons_align): New.
55 * config/tc-i386.h (i386_cons_align): New.
57 (i386_generic_table_relax_frag): New.
58 (md_generic_table_relax_frag): New.
59 (i386_tc_frag_data): Add u, padding_address, length,
60 max_prefix_length, prefix_length, default_prefix, cmp_size,
61 classified and branch_type.
62 (TC_FRAG_INIT): Initialize u, padding_address, length,
63 max_prefix_length, prefix_length, default_prefix, cmp_size,
64 classified and branch_type.
65 * doc/c-i386.texi: Document -malign-branch-boundary=,
66 -malign-branch= and -malign-branch-prefix-size=.
68 2019-12-12 H.J. Lu <hongjiu.lu@intel.com>
70 * write.c (md_generic_table_relax_frag): New. Defined to
71 relax_frag if not defined.
72 (relax_segment): Call md_generic_table_relax_frag instead of
75 2019-12-12 Alan Modra <amodra@gmail.com>
77 * config/tc-aarch64.c (get_aarch64_insn): Avoid signed overflow.
78 * config/tc-metag.c (parse_dalu): Likewise.
79 * config/tc-tic4x.c (md_pcrel_from): Likewise.
80 * config/tc-tic6x.c (tic6x_output_unwinding): Likewise.
81 * config/tc-csky.c (parse_fexp): Use an unsigned char temp buffer.
82 Don't use register keyword. Avoid signed overflow and remove now
83 unneccesary char masks. Formatting.
84 * config/tc-ia64.c (operand_match): Don't use shifts to sign extend.
85 * config/tc-mep.c (mep_apply_fix): Likewise.
86 * config/tc-pru.c (md_apply_fix): Likewise.
87 * config/tc-riscv.c (load_const): Likewise.
88 * config/tc-nios2.c (md_apply_fix): Likewise. Don't potentially
89 truncate fixup before right shift. Tidy BFD_RELOC_NIOS2_HIADJ16
92 2019-12-12 Alan Modra <amodra@gmail.com>
94 * config/obj-evax.c (crc32, encode_32, encode_16, decode_16):
95 Remove unnecessary prototypes.
96 (number_of_codings): Delete, use ARRAY_SIZE instead throughout.
97 (codings, decodings): Make arrays of unsigned char.
98 (crc32): Use unsigned variables. Delete unnecessary mask.
99 (encode_32, encode_16): Return unsigned char*, and make static
100 buffer an unsigned char array.
101 (decode_16): Make arg an unsigned char*. Remove useless casts.
102 (shorten_identifier): Use unsigned char crc_chars.
103 (is_truncated_identifier): Make ptr an unsigned char*.
105 2019-12-11 Wilco Dijkstra <wdijkstr@arm.com>
107 * config/tc-arm.c (warn_on_restrict_it): Add new variable.
108 (it_fsm_post_encode): Check warn_on_restrict_it.
109 (arm_option_table): Add -mwarn-restrict-it/-mno-warn-restrict-it.
110 * testsuite/gas/arm/armv8-2-fp16-scalar-bad.d: Add -mwarn-restrict-it.
111 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: Likewise.
112 * testsuite/gas/arm/armv8-a-bad.d: Likewise.
113 * testsuite/gas/arm/armv8-a-it-bad.d: Likewise.
114 * testsuite/gas/arm/armv8-r-bad.d: Likewise.
115 * testsuite/gas/arm/armv8-r-it-bad.d: Likewise.
116 * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: Likewise.
117 * testsuite/gas/arm/udf.d: Likewise.
119 2018-12-11 Jan Beulich <jbeulich@suse.com>
121 * config/tc-i386.c (md_assemble): Extend SSE check conditional.
122 * testsuite/gas/i386/sse-check.s: Add SSE4a and SHA tests.
124 * testsuite/gas/i386/sse-check.d: Adjust expectations.
125 * testsuite/gas/i386/sse-check-error.l,
126 testsuite/gas/i386/x86-64-sse-check-error.l: Likewise.
127 * testsuite/gas/i386/sse-check-warn.e: Likewise.
129 2019-12-10 Vladimir Murzin <vladimir.murzin@arm.com>
131 * config/tc-arm.c (s_arm_arch): Set selected_ctx_ext_table.
132 * testsuite/gas/arm/mve-arch-ext.s: New.
133 * testsuite/gas/arm/mve-arch-ext.d: New.
135 2019-12-09 Jan Beulich <jbeulich@suse.com>
137 * config/tc-i386-intel.c (O_oword_ptr): Move.
138 (O_xmmword_ptr): Alias to O_oword_ptr.
139 (O_fword_ptr, O_tbyte_ptr, O_ymmword_ptr, O_zmmword_ptr): Adjust
141 (i386_intel_simplify, i386_intel_operand): Fold O_oword_ptr and
142 O_xmmword_ptr cases, leaving comments.
144 2019-12-09 Jan Beulich <jbeulich@suse.com>
146 * config/tc-i386-intel.c (O_mmword_ptr): Define.
147 (i386_types): Add mmword entry.
148 (i386_intel_simplify, i386_intel_operand): Add comment.
149 * testsuite/gas/i386/intel-expr.s: Also test mmword and zmmword.
150 * testsuite/gas/i386/intelok.s: Also test "mmword ptr".
151 * testsuite/gas/i386/intel-expr.d, testsuite/gas/i386/intelok.d,
152 testsuite/gas/i386/intelok.e: Adjust expectations.
154 2019-12-09 Jan Beulich <jbeulich@suse.com>
156 * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
157 attribute suffix instead of suffix for floating point insns when
158 handling O_near_ptr / O_far_ptr.
159 * testsuite/gas/i386/intelbad.s: Add FPU tests.
160 * testsuite/gas/i386/intelbad.l: Adjust expectations.
162 2019-12-09 Jan Beulich <jbeulich@suse.com>
164 * config/tc-i386-intel.c (i386_intel_operand): Set "byte"
165 attribute suffix instead of suffix uniformly for insns not
166 possibly accepting "tbyte ptr" explicitly.
168 2019-12-09 Jan Beulich <jbeulich@suse.com>
170 * config/tc-i386-intel.c (i386_intel_operand): Don't set suffix
171 for floating point insns when handling O_fword_ptr.
173 2019-12-09 Jan Beulich <jbeulich@suse.com>
175 * config/tc-i386-intel.c (i386_intel_operand): Don't special
176 case LDS et al when handling O_word_ptr.
178 2019-12-08 Alan Modra <amodra@gmail.com>
180 * testsuite/gas/aarch64/bfloat16.d: Match 32-bit and 64-bit output.
181 * testsuite/gas/aarch64/dgh.d: Likewise.
182 * testsuite/gas/aarch64/f32mm.d: Likewise.
183 * testsuite/gas/aarch64/f64mm.d: Likewise.
184 * testsuite/gas/aarch64/i8mm.d: Likewise.
185 * testsuite/gas/aarch64/pac_ab_key.d: Likewise.
186 * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
187 * testsuite/gas/aarch64/reloc-prel_g0.d: Likewise.
188 * testsuite/gas/aarch64/reloc-prel_g0_nc.d: Likewise.
189 * testsuite/gas/aarch64/reloc-prel_g1.d: Likewise.
190 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Likewise.
191 * testsuite/gas/aarch64/sve-movprfx-mm.d: Likewise.
192 * testsuite/gas/aarch64/sve2.d: Likewise.
194 2019-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
196 * dw2gencfi.c (cfi_pseudo_table): Add cfi_negate_ra_state.
197 * testsuite/gas/aarch64/pac_negate_ra_state.s: New file.
198 * testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
200 2019-12-05 Jan Beulich <jbeulich@suse.com>
202 * config/tc-aarch64.c (aarch64_features): Drop redundant AES and
203 SHA2 flags from "crypto" entry.
205 2019-12-05 Jan Beulich <jbeulich@suse.com>
207 * config/tc-aarch64.c (aarch64_features): Make SHA2 a prereq of
209 * testsuite/gas/aarch64/crypto.s
210 * testsuite/gas/aarch64/crypto-directive.d: Refer to crypto.d
212 * testsuite/gas/aarch64/illegal-crypto-nofp.l: Relax
214 * testsuite/gas/aarch64/crypto-directive2.d,
215 testsuite/gas/aarch64/crypto-directive3.d: New.
217 2019-12-04 Jan Beulich <jbeulich@suse.com>
219 * config/tc-i386-intel.c (i386_intel_operand): Handle LFS et al
220 as well as LGDT at al when processing O_tbyte_ptr.
221 * testsuite/gas/i386/intelbad.s: Add LDS et al cases.
222 * testsuite/gas/i386/x86-64-intel64.s,
223 * testsuite/gas/i386/x86-64-opcode.s: Add LFS et al cases.
224 * testsuite/gas/i386/ilp32/x86-64-intel64.d: Add -mintel64
225 command line option and fold expectations with parent dir test.
226 * testsuite/gas/i386/x86-64-intel64.d: Add -mintel64 command
227 line option and adjust expectations.
228 * testsuite/gas/i386/intelbad.l,
229 testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
231 2019-12-04 Jan Beulich <jbeulich@suse.com>
233 * config/tc-i386-intel.c (i386_intel_operand): Also handle DWORD
234 with 64-bit mode branches.
235 * testsuite/gas/i386/x86-64-jump.s: Extend Intel syntax branch
237 * testsuite/gas/i386/x86-64-jump.d: Adjust expectations.
239 2019-12-04 Jan Beulich <jbeulich@suse.com>
241 * config/tc-i386.c (output_insn): Don't consider Cpu* settings
242 when setting GNU_PROPERTY_X86_FEATURE_2_MMX.
244 2019-12-04 Jan Beulich <jbeulich@suse.com>
246 * testsuite/gas/i386/movdir.s: Add Intel syntax case with
247 operand size specifier.
248 * testsuite/gas/i386/x86-64-movdir.s: Add Intel syntax cases
249 with operand size specifier and wit 32-bit operands.
250 * testsuite/gas/i386/movdir-intel.d,
251 testsuite/gas/i386/movdir.d,
252 testsuite/gas/i386/x86-64-movdir-intel.d,
253 testsuite/gas/i386/x86-64-movdir.d: Adjust expectations.
255 2019-12-04 Jan Beulich <jbeulich@suse.com>
257 * config/tc-i386.c (process_suffix): Arrange for insns with a
258 single non-GPR register operand to not have its suffix guessed
259 from GPR operands. Extend DefaultSize handling to cover PUSH/POP
260 of segment registers.
261 * testsuite/gas/i386/general.s: Add PUSH/POP sreg to .code16gcc
263 * testsuite/gas/i386/general.l: Adjust expectations.
265 2019-12-04 Jan Beulich <jbeulich@suse.com>
267 * config/tc-i386.c (process_suffix): Exclude SYSRET alongside
269 * testsuite/gas/i386/general.s: Expand .code16gcc set of insns.
270 * testsuite/gas/i386/general.l: Adjust expectations.
272 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
274 * as.c (flag_dwarf_cie_version): Change initial value to -1, and
276 * config/tc-riscv.c (riscv_after_parse_args): Set
277 flag_dwarf_cie_version if it has not already been set.
278 * dwarf2dbg.c (dwarf2_init): Initialise flag_dwarf_cie_version if
280 * testsuite/gas/riscv/default-cie-version.d: New file.
281 * testsuite/gas/riscv/default-cie-version.s: New file.
283 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
285 * dw2gencfi.c (output_cie): Error on return column overflow.
286 * testsuite/gas/riscv/cie-rtn-col-1.d: New file.
287 * testsuite/gas/riscv/cie-rtn-col-3.d: New file.
288 * testsuite/gas/riscv/cie-rtn-col.s: New file.
290 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
292 * config/tc-riscv.c (tc_riscv_regname_to_dw2regnum): Lookup CSR
294 * testsuite/gas/riscv/csr-dw-regnums.d: New file.
295 * testsuite/gas/riscv/csr-dw-regnums.s: New file.
297 2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
299 * config/tc-riscv.c (struct regname): Delete.
300 (hash_reg_names): Handle value as 'void *'.
302 2019-11-25 Andrew Pinski <apinski@marvell.com>
304 * config/tc-aarch64.c (md_begin): Use correct
305 hash table for uppercase version of hint.
306 * testsuite/gas/aarch64/system-2.s: Extend psb case to uppercase.
307 * testsuite/gas/aarch64/system-2.d: Update.
309 2019-11-25 Christian Eggers <ceggers@gmx.de>
311 * as.h: Define SEC_OCTETS as SEC_ELF_OCTETS if OBJ_ELF.
312 * dwarf2dbg.c: (dwarf2_finish): Set section flag SEC_OCTETS for
313 .debug_line, .debug_info, .debug_abbrev, .debug_aranges, .debug_str
314 and .debug_ranges sections.
315 * write.c (maybe_generate_build_notes): Set section flag
316 SEC_OCTETS for .gnu.build.attributes section.
317 * frags.c (frag_now_fix): Don't divide by OCTETS_PER_BYTE if
319 * symbols.c (resolve_symbol_value): Likewise.
321 2019-11-25 Christian Eggers <ceggers@gmx.de>
323 * dwarf2dbg.c (out_set_addr): Revert 2019-03-13 change.
324 (out_debug_line, out_debug_aranges, out_debug_info): Likewise.
325 * symbols.h (symbol_set_value_now_octets, symbol_octets_p): Remove.
326 * symbols.c (struct symbol_flags): Remove member sy_octets.
327 (symbol_temp_new_now_octets): Don't set symbol_flags::sy_octets.
328 (resolve_symbol_value): Revert: Return octets instead of bytes if
330 (symbol_set_value_now_octets): Remove.
331 (symbol_octets_p): Remove.
333 2019-11-22 Mihail Ionescu <mihail.ionescu@arm.com>
335 * config/tc-arm.c (arm_ext_crc): New.
336 (crc_ext_armv8): Remove.
337 (insns): Rename crc_ext_armv8 to arm_ext_crc.
338 (arm_cpus): Replace CRC_EXT_ARMV8 with ARM_EXT2_CRC.
339 (armv8a_ext_table, armv8r_ext_table,
340 arm_option_extension_value_table): Redefine the crc
341 extension in terms of ARM_EXT2_CRC.
342 * gas/testsuite/gas/arm/crc-ext.s: New.
343 * gas/testsuite/gas/arm/crc-ext.d: New.
345 2019-11-20 Alan Modra <amodra@gmail.com>
348 * atof-generic.c (atof_generic): Increase decimal guard digits.
349 * testsuite/gas/i386/fp.s: Add more tests.
350 * testsuite/gas/i386/fp.d: Update.
352 2019-11-18 Andrew Burgess <andrew.burgess@embecosm.com>
354 * as.c (parse_args): Parse --gdwarf-cie-version option.
355 (flag_dwarf_cie_version): New variable.
356 * as.h (flag_dwarf_cie_version): Declare.
357 * dw2gencfi.c (output_cie): Switch from DW_CIE_VERSION to
358 flag_dwarf_cie_version.
359 * doc/as.texi (Overview): Document --gdwarf-cie-version.
361 * testsuite/gas/cfi/cfi.exp: Add new tests.
362 * testsuite/gas/cfi/cie-version-0.d: New file.
363 * testsuite/gas/cfi/cie-version-1.d: New file.
364 * testsuite/gas/cfi/cie-version-2.d: New file.
365 * testsuite/gas/cfi/cie-version-3.d: New file.
366 * testsuite/gas/cfi/cie-version-4.d: New file.
367 * testsuite/gas/cfi/cie-version.s: New file.
369 2019-11-14 Jan Beulich <jbeulich@suse.com>
371 * config/tc-i386.c (operand_size_match, md_assemble,
372 parse_insn, match_template, process_suffix, output_jump,
373 output_insn, i386_displacement): Adjust jump* field use/
375 * config/tc-i386-intel.c (i386_intel_operand): Likewise.
377 2019-11-14 Jan Beulich <jbeulich@suse.com>
379 * config/tc-i386.c (struct _i386_insn): Add jumpabsolute field.
380 (operand_type_match): Drop jumpabsolute use.
381 (type_names): Remove OPERAND_TYPE_JUMPABSOLUTE entry.
382 (process_suffix, i386_displacement): Adjust jumpabsolute uses.
383 (match_template, i386_att_operand): Adjust jumpabsolute
385 * config/tc-i386-intel.c (i386_intel_operand): Likewise.
387 2019-11-14 Jan Beulich <jbeulich@suse.com>
389 * config/tc-i386.c (operand_size_match): Adjust anysize use.
391 2019-11-14 Jan Beulich <jbeulich@suse.com>
393 * testsuite/gas/i386/intel-cmps32.d,
394 testsuite/gas/i386/intel-cmps64.d: Correct regexp closing
395 parentheses placement.
397 2019-11-14 Jan Beulich <jbeulich@suse.com>
399 * testsuite/gas/i386/intel-cmps.s,
400 testsuite/gas/i386/intel-movs.s: Extend.
401 * testsuite/gas/i386/intel-cmps32.d,
402 testsuite/gas/i386/intel-cmps64.d,
403 testsuite/gas/i386/intel-movs32.d,
404 testsuite/gas/i386/intel-movs64.d: Adjust expectations.
405 * testsuite/gas/i386/intel-cmps16.d,
406 testsuite/gas/i386/intel-movs16.d: New.
407 * testsuite/gas/i386/i386.exp: Run new tests.
409 2019-11-12 Nelson Chu <nelson.chu@sifive.com>
411 * testsuite/gas/riscv/insn.d: Add the f extension to -march option.
413 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
415 * config/tc-arm.c (do_vfp_nsyn_push): Move in order to enable it for
416 both fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vstm
417 instruction for mve_ext.
418 (do_vfp_nsyn_pop): Move in order to enable it for both
419 fpu_vfp_ext_v1xd and mve_ext and add call to the aliased vldm
420 instruction for mve_ext.
421 (do_neon_ldm_stm): Add fpu_vfp_ext_v1 and mve_ext checks.
422 (insns): Enable vldm, vldmia, vldmdb, vstm, vstmia, vstmdb, vpop,
423 vpush, and fldd, fstd, flds, fsts for arm_ext_v6t2 instead
425 * testsuite/gas/arm/v8_1m-mve.s: New.
426 * testsuite/gas/arm/v8_1m-mve.d: New.
428 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
430 * gas/config/tc-arm.c (do_neon_mvn): Allow mve_ext cmode=0xd.
431 * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.s: New test.
432 * testsuite/gas/arm/mve-vmov-vmvn-vorr-vbic.d: Likewise.
434 2019-11-12 Mihail Ionescu <mihail.ionescu@arm.com>
436 * config/tc-arm.c (s_arm_fpu): Clear selected_cpu fpu bits.
437 (fpu_any): Remove OBJ_ELF guards.
438 * testsuite/gas/arm/fpu-rst.s: New.
439 * testsuite/gas/arm/fpu-rst.d: New.
440 * testsuite/gas/arm/fpu-rst.l: New.
442 2019-11-12 Jan Beulich <jbeulich@suse.com>
444 * config/tc-i386.c (type_names): Remove OPERAND_TYPE_ESSEG
446 (md_assemble): Adjust isstring field use. Add assertion.
447 (check_string): Mostly re-write.
448 (i386_index_check): Adjust isstring field use and related code.
450 2019-11-12 Jan Beulich <jbeulich@suse.com>
452 * config/tc-i386.c (process_immext): Remove SSE3, SVME, and
453 MWAITX special case logic.
454 (process_suffix): Replace immext field uses by instance ones.
455 * testsuite/gas/i386/arch-13.s,
456 testsuite/gas/i386/x86-64-arch-3.s: Add CLZERO with operand
458 * testsuite/gas/i386/svme.s: Add 16-bit operand cases.
459 * testsuite/gas/i386/x86-64-specific-reg.s: Drop FIXME comments.
460 * testsuite/gas/i386/arch-13.d,
461 testsuite/gas/i386/mwaitx-reg.l, testsuite/gas/i386/svme.d,
462 testsuite/gas/i386/x86-64-arch-3.d,
463 testsuite/gas/i386/x86-64-mwaitx-reg.l,
464 testsuite/gas/i386/x86-64-specific-reg.l: Adjust expectations.
466 2019-11-12 Jan Beulich <jbeulich@suse.com>
468 * config/tc-i386.c (operand_type_set, operand_type_and,
469 operand_type_and_not, operand_type_or, operand_type_xor): Handle
470 "instance" field specially.
471 (operand_size_match, md_assemble, match_template, process_suffix,
472 check_byte_reg, check_long_reg, check_qword_reg, check_word_reg,
473 process_operands, build_modrm_byte): Use "instance" instead of
474 "acc" / "inoutportreg" / "shiftcount" fields.
475 (optimize_imm): Adjust comment.
477 2019-11-11 Jan Beulich <jbeulich@suse.com>
479 * testsuite/gas/aarch64/illegal-sve2.s: Add smaxp/sminp cases
480 with mismatched 1st and 3rd operands.
481 * testsuite/gas/aarch64/illegal-sve2.l: Adjust expectations.
483 2019-11-08 H.J. Lu <hongjiu.lu@intel.com>
486 * config/tc-i386.c (match_template): Don't check instruction
487 suffix set from operand.
488 * testsuite/gas/i386/code16.d: New file.
489 * testsuite/gas/i386/code16.s: Likewise.
490 * testsuite/gas/i386/i386.exp: Run code16.
492 2019-11-08 Jan Beulich <jbeulich@suse.com>
494 * config/tc-i386.c (optimize_encoding, build_modrm_byte,
495 check_VecOperations, parse_real_register): Use "class" instead
496 of "regmask" and "regbnd" fields.
498 2019-11-08 Jan Beulich <jbeulich@suse.com>
500 * config/tc-i386.c (match_mem_size, operand_size_match,
501 operand_type_register_match, pi, check_VecOperands, match_template,
502 check_byte_reg, check_long_reg, check_qword_reg, process_operands,
503 build_modrm_byte, parse_real_register): Use "class" instead of
504 "regsimd" / "regmmx" fields.
506 2019-11-08 Jan Beulich <jbeulich@suse.com>
508 * config/tc-i386.c (pi, check_byte_reg, build_modrm_byte,
509 parse_real_register): Use "class" instead of "control"/"debug"/
512 2019-11-08 Jan Beulich <jbeulich@suse.com>
514 * config/tc-i386.c (pi, check_byte_reg, process_operands,
515 build_modrm_byte, i386_att_operand, parse_real_register): Use
516 "class" instead of "sreg" field.
517 * config/tc-i386-intel.c (i386_intel_simplify_register,
518 i386_intel_operand): Likewise.
520 2019-11-08 Jan Beulich <jbeulich@suse.com>
522 * config/tc-i386.c (operand_type_set, operand_type_and,
523 operand_type_and_not, operand_type_or, operand_type_xor): Handle
524 "class" field specially.
526 (operand_type_check, operand_size_match,
527 operand_type_register_match, pi, md_assemble, is_short_form,
528 process_suffix, check_byte_reg, check_long_reg, check_qword_reg,
529 check_word_reg, process_operands, build_modrm_byte): Use "class"
530 instead of "reg" field.
531 (optimize_imm): Likewise. Reduce redundancy. Adjust calculation
534 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
536 * testsuite/gas/aarch64/dgh.s: New test.
537 * testsuite/gas/aarch64/dgh.d: New test.
539 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
541 * config/tc-arm.c (arm_ext_i8mm): New feature set.
546 (insns): Add vsmmla, vummla, vusmmla, vusdot, vsudot mnemonics.
547 (armv86a_ext_table): Add i8mm extension.
548 (arm_extensions): Move bf16 extension to context sensitive table.
549 (armv82a_ext_table, armv84a_ext_table, armv85a_ext_table):
550 Move bf16 extension to context sensitive table.
551 (armv86a_ext_table): Add i8mm extension.
552 * doc/c-arm.texi: Document i8mm extension.
553 * testsuite/gas/arm/i8mm.s: New test.
554 * testsuite/gas/arm/i8mm.d: New test.
555 * testsuite/gas/arm/bfloat17-cmdline-bad-3.d: Update test.
557 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
559 * config/tc-aarch64.c: Add new arch fetures to suppport the mm extension.
560 (parse_operands): Add new operand.
561 * testsuite/gas/aarch64/i8mm.s: New test.
562 * testsuite/gas/aarch64/i8mm.d: New test.
563 * testsuite/gas/aarch64/f32mm.s: New test.
564 * testsuite/gas/aarch64/f32mm.d: New test.
565 * testsuite/gas/aarch64/f64mm.s: New test.
566 * testsuite/gas/aarch64/f64mm.d: New test.
567 * testsuite/gas/aarch64/sve-movprfx-mm.s: New test.
568 * testsuite/gas/aarch64/sve-movprfx-mm.d: New test.
570 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
571 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
573 * config/tc-aarch64.c (md_atof): Add encoding for the bfloat16 format.
574 * testsuite/gas/aarch64/bfloat16-directive-le.d: New test.
575 * testsuite/gas/aarch64/bfloat16-directive-be.d: New test.
576 * testsuite/gas/aarch64/bfloat16-directive.s: New test.
578 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
579 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
581 * config/tc-arm.c (md_atof): Add encoding for bfloat16
582 * testsuite/gas/arm/bfloat16-directive-le.d: New test.
583 * testsuite/gas/arm/bfloat16-directive-be.d: New test.
584 * testsuite/gas/arm/bfloat16-directive.s: New test.
586 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
587 2019-11-07 Barnaby Wilks <barnaby.wilks@arm.com>
589 * as.h (atof_ieee_detail): Add prototype for atof_ieee_detail function.
590 (atof_ieee): Move some code into the atof_ieee_detail function.
591 (atof_ieee_detail): Add function that provides a higher level of
592 control over generating IEEE-like numbers.
594 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
595 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
597 * config/tc-arm.c (arm_archs): Add armv8.6-a option.
598 (cpu_arch_ver): Add TAG_CPU_ARCH_V8 tag for Armv8.6-a.
599 * doc/c-arm.texi (-march): New armv8.6-a arch.
600 * config/tc-arm.c (arm_ext_bf16): New feature set.
601 (enum neon_el_type): Add NT_bfloat value.
602 (B_MNEM_vfmat, B_MNEM_vfmab): New bfloat16 encoder
604 (BAD_BF16): New message.
605 (parse_neon_type): Add bf16 type specifier.
606 (enum neon_type_mask): Add N_BF16 type.
607 (type_chk_of_el_type): Account for NT_bfloat.
608 (el_type_of_type_chk): Account for N_BF16.
609 (neon_three_args): Split out from neon_three_same.
610 (neon_three_same): Part split out into neon_three_args.
611 (CVT_FLAVOUR_VAR): Add bf16_f32 cvt flavour.
612 (do_neon_cvt_1): Account for vcvt.bf16.f32.
613 (do_bfloat_vmla): New.
614 (do_mve_vfma): New function to deal with the mnemonic clash between the BF16
615 vfmat and the MVE vfma in a VPT block with a 't'rue condition.
616 (do_neon_cvttb_1): Account for vcvt{t,b}.bf16.f32.
619 (insns): Add vdot and vmmla mnemonics.
620 (arm_extensions): Add "bf16" extension.
621 * doc/c-arm.texi: Document "bf16" extension.
622 * testsuite/gas/arm/attr-march-armv8_6-a.d: New test.
623 * testsuite/gas/arm/bfloat16-bad.d: New test.
624 * testsuite/gas/arm/bfloat16-bad.l: New test.
625 * testsuite/gas/arm/bfloat16-bad.s: New test.
626 * testsuite/gas/arm/bfloat16-cmdline-bad-2.d: New test.
627 * testsuite/gas/arm/bfloat16-cmdline-bad-3.d: New test.
628 * testsuite/gas/arm/bfloat16-cmdline-bad.d: New test.
629 * testsuite/gas/arm/bfloat16-neon.s: New test.
630 * testsuite/gas/arm/bfloat16-non-neon.s: New test.
631 * testsuite/gas/arm/bfloat16-thumb-bad.d: New test.
632 * testsuite/gas/arm/bfloat16-thumb-bad.l: New test.
633 * testsuite/gas/arm/bfloat16-thumb.d: New test.
634 * testsuite/gas/arm/bfloat16-vfp.d: New test.
635 * testsuite/gas/arm/bfloat16.d: New test.
636 * testsuite/gas/arm/bfloat16.s: New test.
638 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
639 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
641 * config/tc-aarch64.c (vectype_to_qualifier): Special case the
642 S_2H operand qualifier.
643 * doc/c-aarch64.texi: Document bf16 extension.
644 * testsuite/gas/aarch64/bfloat16.d: New test.
645 * testsuite/gas/aarch64/bfloat16.s: New test.
646 * testsuite/gas/aarch64/illegal-bfloat16.d: New test.
647 * testsuite/gas/aarch64/illegal-bfloat16.l: New test.
648 * testsuite/gas/aarch64/illegal-bfloat16.s: New test.
649 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: New test.
650 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: New test.
652 2019-11-07 Mihail Ionescu <mihail.ionescu@arm.com>
653 2019-11-07 Matthew Malcomson <matthew.malcomson@arm.com>
655 * config/tc-aarch64.c (armv8.6-a): New arch.
656 * doc/c-aarch64.texi (armv8.6-a): Document new arch.
658 2019-11-07 Jan Beulich <jbeulich@suse.com>
660 * config/tc-i386.c (cpu_arch): Add .rdpru and .mcommit entries.
661 * doc/c-i386.texi: Mention rdpru and mcommit.
662 * testsuite/gas/i386/arch-13.s,
663 testsuite/gas/i386/x86-64-arch-3.s: Add mcommit and rdpru cases.
664 * testsuite/gas/i386/arch-13.d,
665 testsuite/gas/i386/x86-64-arch-3.d: Extend -march=. Adjust
667 * testsuite/gas/i386/arch-13-znver1.d: Extend -march=. Redirect
668 expectations to arch-13.d.
669 * testsuite/gas/i386/arch-13-znver2.d: Redirect expectations to
671 testsuite/gas/i386/x86-64-arch-3-znver1.d: Extend -march=.
673 2019-11-07 Jan Beulich <jbeulich@suse.com>
675 * testsuite/gas/i386/x86-64-arch-3.s: Add monitorx/mwaitx cases
676 with canonical operand sizes.
677 * testsuite/gas/i386/x86-64-sse3.s: Add monitor/mwait cases with
678 canonical operand sizes.
679 * testsuite/gas/i386/x86-64-arch-3-znver1.d,
680 testsuite/gas/i386/x86-64-arch-3-znver2.d: Redirect expectations
682 * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Redirect
683 expectations to parent dir's x86-64-sse-noavx.d.
684 * testsuite/gas/i386/ilp32/x86-64-sse3.d: Redirect expectations
685 to to parent dir's x86-64-sse3.d.
686 * testsuite/gas/i386/x86-64-arch-3.d,
687 testsuite/gas/i386/x86-64-mwaitx-bdver4.d,
688 testsuite/gas/i386/x86-64-sse-noavx.d,
689 testsuite/gas/i386/x86-64-sse3.d,
690 testsuite/gas/i386/x86-64-suffix.d: Adjust expectations.
692 2019-11-04 Jan Beulich <jbeulich@suse.com>
694 * config/tc-i386.c (process_operands): Handle ShortForm insns
695 later, splitting out their segment register sub-form.
697 2019-10-31 H.J. Lu <hongjiu.lu@intel.com>
699 * testsuite/gas/i386/general.s: Add .code16gcc fldenv tests.
700 * testsuite/gas/i386/general.l: Updated.
702 2019-10-31 Mihail Ionescu <mihail.ionescu@arm.com>
704 * config/tc-arm.c (selected_ctx_ext_table) New static variable.
705 (arm_parse_arch): Set context sensitive extension table based on the
706 chosen base architecture.
707 (s_arm_arch_extension): Change to lookup extensions in the new context
709 * gas/testsuite/gas/arm/mve-ext.s: New.
710 * gas/testsuite/gas/arm/mve-ext.d: New.
711 * gas/testsuite/gas/arm/mvefp-ext.s: New.
712 * gas/testsuite/gas/arm/mvefp-ext.d: New.
714 2019-10-30 Delia Burduv <Delia.Burduv@arm.com>
716 * config/tc-aarch64.c (parse_address_main): Accept the omission of
717 the immediate argument for ldraa and ldrab as a shorthand for the
719 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.d: New test.
720 * testsuite/gas/aarch64/ldraa-ldrab-no-offset.s: New test.
721 * testsuite/gas/aarch64/illegal-ldraa.s: Modified to accept the
722 writeback form with no offset.
723 * testsuite/gas/aarch64/illegal-ldraa.s: Removed missing offset
726 2019-10-30 Jan Beulich <jbeulich@suse.com>
728 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.s,
729 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.s,
730 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.s: New.
731 * testsuite/gas/i386/i386.exp: Run new tests.
733 2019-10-30 Jan Beulich <jbeulich@suse.com>
735 * config/tc-i386.c (optimize_encoding): Adjust opcodes compared
736 against. Adjust replacement opcode and clear .w.
738 2019-10-29 Alan Modra <amodra@gmail.com>
741 * dw2gencfi.c (output_cfi_insn): Don't allow DW_CFA_advance_loc4
742 to be placed in a different frag to the rs_cfa.
744 2019-10-26 John David Anglin <danglin@gcc.gnu.org>
747 * config/tc-hppa.c (tc_gen_reloc): Cast some enums to int.
748 (md_assemble): Likewise.
750 2019-10-26 Alan Modra <amodra@gmail.com>
753 * dw2gencfi.c (output_cfi_insn): Don't output DW_CFA_advance_loc+0.
754 * ehopt.c (eh_frame_estimate_size_before_relax): Return -1 for
755 an advance_loc of zero.
756 (eh_frame_relax_frag): Translate fr_subtype of 7 to size -1.
757 (eh_frame_convert_frag): Handle fr_subtype of 7. Abort on
758 unexpected fr_subtype.
760 2019-10-25 Alan Modra <amodra@gmail.com>
764 * write.c (relax_frag): Correct calculation of delta for
765 positive branches where "stretch" would make the branch
766 negative. Return zero immediately in that case. Correct
767 TC_PCREL_ADJUST comment.
769 2019-10-16 Alan Modra <amodra@gmail.com>
771 * config/tc-xtensa.c (xg_order_trampoline_chain_entry): Don't
772 call S_GET_VALUE multiple times for a symbol. Rearrange code
773 so it is obvious what is the primary sort key.
774 (xg_order_trampoline_chain): Similarly.
776 2019-10-15 Alan Modra <amodra@gmail.com>
778 * config/tc-nds32.c (nds32_set_section_relocs): Use relocs and n
779 parameters rather than equivalent sec->orelocation and
780 sec->reloc_count. Don't sort for n <= 1. Tidy.
782 2019-10-09 Nick Clifton <nickc@redhat.com>
785 * testsuite/gas/avr/pr25041.s: New test.
786 * testsuite/gas/avr/pr25041.d: New test driver.
788 2019-10-07 Jozef Lawrynowicz <jozef.l@mittosystems.com>
790 * config/tc-msp430.c (md_parse_option): Set lower_data_region_only
791 to FALSE if the data region is set to "upper", "either" or "none".
792 (msp430_object_attribute): New.
793 (md_pseudo_table): Handle .mspabi_attribute and .gnu_attribute.
794 (msp430_md_end): Replace hard-coded attribute values with enums.
795 Handle data region object attribute.
796 * doc/as.texi: Document MSP430 Data Region object attribute.
797 * doc/c-msp430.texi: Document the .mspabi_attribute directive.
798 * testsuite/gas/msp430/attr-430-small-bad.d: New test.
799 * testsuite/gas/msp430/attr-430-small-bad.l: New test.
800 * testsuite/gas/msp430/attr-430-small-good.d: New test.
801 * testsuite/gas/msp430/attr-430-small.s: New test.
802 * testsuite/gas/msp430/attr-430x-large-any-bad.d: New test.
803 * testsuite/gas/msp430/attr-430x-large-any-bad.l: New test.
804 * testsuite/gas/msp430/attr-430x-large-any-good.d: New test.
805 * testsuite/gas/msp430/attr-430x-large-any.s: New test.
806 * testsuite/gas/msp430/attr-430x-large-lower-bad.d: New test.
807 * testsuite/gas/msp430/attr-430x-large-lower-bad.l: New test.
808 * testsuite/gas/msp430/attr-430x-large-lower-good.d: New test.
809 * testsuite/gas/msp430/attr-430x-large-lower.s: New test.
810 * testsuite/gas/msp430/msp430.exp: Run new tests.
812 2019-10-07 Jan Beulich <jbeulich@suse.com>
814 * config/tc-i386.c (check_string): Make reported operand number
815 depend on Intel syntax.
816 * testsuite/gas/i386/intel-cmps.s,
817 testsuite/gas/i386/intel-cmps32.d,
818 testsuite/gas/i386/intel-cmps64.d: New.
819 * testsuite/gas/i386/i386.exp: Run new tests.
820 * testsuite/gas/i386/intel-movs.s: Extend.
821 * testsuite/gas/i386/intel-movs32.d,
822 testsuite/gas/i386/intel-movs64.d: Adjust expectations.
823 * testsuite/gas/i386/string-bad.l: Tighten expectations.
825 2019-09-24 Tamar Christina <tamar.christina@arm.com>
828 * config/tc-arm.c (out_of_range_p): New.
829 (md_apply_fix): Use it in BFD_RELOC_THUMB_PCREL_BRANCH9,
830 BFD_RELOC_THUMB_PCREL_BRANCH12, BFD_RELOC_THUMB_PCREL_BRANCH20,
831 BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_THUMB_PCREL_BRANCH25
832 * testsuite/gas/arm/pr24991.d: New test.
833 * testsuite/gas/arm/pr24991.l: New test.
834 * testsuite/gas/arm/pr24991.s: New test.
836 2019-09-23 Alan Modra <amodra@gmail.com>
838 * config/obj-ecoff.c: Include ecoff-bfd.h.
839 * config/obj-elf.c: Likewise.
841 2019-09-23 Alan Modra <amodra@gmail.com>
843 * config/tc-arm.c: Include cpu-arm.h.
845 2019-09-21 Alan Modra <amodra@gmail.com>
847 * config/tc-i386.c (md_parse_option): Fix warning on vexwig assignment.
849 2019-09-20 Alan Modra <amodra@gmail.com>
851 * config/tc-tic6x.c (tc_gen_reloc): Correct common symbol check.
853 2018-09-20 Jan Beulich <jbeulich@suse.com>
856 * config/tc-i386.c (process_operands): Adjust handling of
857 PUSH/POP of segment registers.
858 * testsuite/gas/i386/x86-64-opcode.s: Add PUSHq/POPq case with
859 %fs/%gs operands. Add PUSHF/POPF case without suffix.
860 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
862 2019-09-19 Matthew Malcomson <matthew.malcomson@arm.com>
864 * NEWS: Add SVE2 and TME entries.
866 2019-09-18 Alan Modra <amodra@gmail.com>
868 * as.c, * as.h, * dw2gencfi.c, * dwarf2dbg.c, * ecoff.c,
869 * read.c, * stabs.c, * subsegs.c, * subsegs.h, * write.c,
870 * config/obj-coff-seh.c, * config/obj-coff.c, * config/obj-ecoff.c,
871 * config/obj-elf.c, * config/obj-macho.c, * config/obj-som.c,
872 * config/tc-aarch64.c, * config/tc-alpha.c, * config/tc-arc.c,
873 * config/tc-arm.c, * config/tc-avr.c, * config/tc-bfin.c,
874 * config/tc-bpf.c, * config/tc-d10v.c, * config/tc-d30v.c,
875 * config/tc-epiphany.c, * config/tc-fr30.c, * config/tc-frv.c,
876 * config/tc-h8300.c, * config/tc-hppa.c, * config/tc-i386.c,
877 * config/tc-ia64.c, * config/tc-ip2k.c, * config/tc-iq2000.c,
878 * config/tc-lm32.c, * config/tc-m32c.c, * config/tc-m32r.c,
879 * config/tc-m68hc11.c, * config/tc-mep.c, * config/tc-microblaze.c,
880 * config/tc-mips.c, * config/tc-mmix.c, * config/tc-mn10200.c,
881 * config/tc-mn10300.c, * config/tc-msp430.c, * config/tc-mt.c,
882 * config/tc-nds32.c, * config/tc-or1k.c, * config/tc-ppc.c,
883 * config/tc-pru.c, * config/tc-rl78.c, * config/tc-rx.c,
884 * config/tc-s12z.c, * config/tc-s390.c, * config/tc-score.c,
885 * config/tc-score7.c, * config/tc-sh.c, * config/tc-sparc.c,
886 * config/tc-spu.c, * config/tc-tic4x.c, * config/tc-tic54x.c,
887 * config/tc-tic6x.c, * config/tc-tilegx.c, * config/tc-tilepro.c,
888 * config/tc-v850.c, * config/tc-visium.c, * config/tc-wasm32.c,
889 * config/tc-xc16x.c, * config/tc-xgate.c, * config/tc-xstormy16.c,
890 * config/tc-xtensa.c, * config/tc-z8k.c: Update throughout for
891 bfd section macro and function changes.
892 * write.c (compress_debug): Use bfd_rename_section.
894 2019-09-18 Alan Modra <amodra@gmail.com>
896 * symbols.c (S_IS_LOCAL): Update bfd_get_section to
899 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
901 * Makefile.in: Re-generate.
902 * configure: Re-generate.
903 * doc/Makefile.in: Re-generate.
905 2019-09-17 Maxim Blinov <maxim.blinov@embecosm.com>
907 * config/tc-riscv.c (riscv_multi_subset_supports): Handle
908 insn_class enum rather than subset char string.
909 (riscv_ip): Update call to riscv_multi_subset_supports.
911 2019-09-16 Phil Blundell <pb@pbcl.net>
913 * Makefile.in, configure, doc/Makefile.in: Regenerated.
915 2019-09-10 Nick Clifton <nickc@redhat.com>
918 * testsuite/gas/arm/pr24907.s: New test.
919 * testsuite/gas/arm/pr24907.d: Expected disassembly.
921 2019-09-09 Phil Blundell <pb@pbcl.net>
923 binutils 2.33 branch created.
925 2019-09-05 Alan Modra <amodra@gmail.com>
927 * config/tc-ppc.c (ppc_elf_suffix): Display the relocation
928 operator on GOT reloc warnings/errors.
930 2019-08-27 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
932 * config/tc-arm.c (parse_neon_mov): Add check to accept vector
933 register to both the arguments in VMOV instruction.
934 * testsuite/gas/arm/mve-vmov-1.d: Modify.
935 * testsuite/gas/arm/mve-vmov-1.s: Likewise.
936 * testsuite/gas/arm/mve-vorr.d: Likewise.
938 2019-08-23 Nick Clifton <nickc@redhat.com>
940 * po/sv.po: Updated Swedish translation.
942 2019-08-22 Dennis Zhang <dennis.zhang@arm.com>
944 * config/tc-arm.c: New entries for Cortex-M35P, Cortex-A77,
946 * doc/c-arm.texi: Document new processors.
947 * testsuite/gas/arm/cpu-cortex-a76ae.d: New test.
948 * testsuite/gas/arm/cpu-cortex-a77.d: New test.
949 * testsuite/gas/arm/cpu-cortex-m35p.d: New test.
951 2019-08-22 Bosco GarcÃa <jbgg.gnu@gmail.com>
952 Nick Clifton <nickc@redhat.com>
954 * atof-generic.c (atof_generic): Do not ignore leading zeros if
955 they appear after a decimal point.
956 * testsuite/gas/all/float.s: Extend test to include a number with
957 a leading decimal point followed by several zeroes.
958 * testsuite/gas/i386/fp.s: Likewise.
959 * testsuite/gas/i386/fp.d: Update expected output.
961 2019-08-22 Barnaby Wilks <barnaby.wilks@arm.com>
963 * config/tc-aarch64.c: Add float16 directive and add "Hh" to
964 acceptable float characters.
965 * doc/c-aarch64.texi: Documentation for float16 directive.
966 * testsuite/gas/aarch64/float16-be.d: New test.
967 * testsuite/gas/aarch64/float16-le.d: New test.
968 * testsuite/gas/aarch64/float16.s: New test.
969 * NEWS: Add NEWS entry.
971 2019-08-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
973 * testsuite/gas/aarch64/sysreg-4.d: Update expected disassembly for
974 tfsre0_el1, tfsr_el1, tfsr_el2, tfsr_el3, tfsr_el12 system registers.
976 2019-08-20 Dennis Zhang <dennis.zhang@arm.com>
978 * NEWS: Mention the Arm and AArch64 new processors.
979 * config/tc-aarch64.c: New entries for Cortex-A34, Cortex-A65,
980 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
981 * doc/c-aarch64.texi: Document new CPUs.
982 * testsuite/gas/aarch64/cpu-cortex-a34.d: New test.
983 * testsuite/gas/aarch64/cpu-cortex-a65.d: New test.
984 * testsuite/gas/aarch64/cpu-cortex-a65ae.d: New test.
985 * testsuite/gas/aarch64/cpu-cortex-a76ae.d: New test.
986 * testsuite/gas/aarch64/cpu-cortex-a77.d: New test.
987 * testsuite/gas/aarch64/nop-asm.s: New test.
989 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
991 * config/tc-mips.c (fix_bad_misaligned_address): New function.
992 (fix_validate_branch): Call fix_bad_misaligned address_to
993 calculate the target address.
994 (md_apply_fix): Likewise.
995 (md_convert_frag): Update misaligned address calculation to
996 disregard ISA mode bit.
998 2019-08-19 Faraz Shahbazker <fshahbazker@wavecomp.com>
1000 * config/tc-mips.c (mips_move_labels): Retain ISA mode bit
1001 when moving labels in text segments.
1002 (mips_align): Indicate text mode when aligning labels in
1004 * gas/testsuite/gas/mips/insn-isa-mode.d: New test.
1005 * gas/testsuite/gas/mips/insn-isa-mode.s: New test source.
1006 * gas/testsuite/gas/mips/mips.exp: Run the new test.
1008 2019-08-19 Barnaby Wilks <Barnaby.Wilks@arm.com>
1010 * config/tc-arm.c (md_atof): Add precision check. Formatting.
1012 2019-08-15 Nick Clifton <nickc@redhat.com>
1014 * po/sv.po: Updated Swedish translation.
1016 2019-08-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1018 * config/tc-arm.c (enum operand_parse_code): Add the entry OP_I48_I64.
1019 (po_imm1_or_imm2_or_fail): Marco to check the immediate is either of
1021 (parse_operands): Add case OP_I48_I64.
1022 (do_mve_scalar_shift1): Add function to encode the MVE shift
1023 instructions with 4 arguments.
1024 * testsuite/gas/arm/mve-shift-bad.l: Modify.
1025 * testsuite/gas/arm/mve-shift-bad.s: Likewise.
1026 * testsuite/gas/arm/mve-shift.d: Likewise.
1027 * testsuite/gas/arm/mve-shift.s: Likewise.
1029 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
1031 * config/tc-arm.c (enum fp_16bit_format): Add enum to represent the 2 float16 encodings.
1032 (md_atof): Set precision for float16 type.
1033 (arm_is_largest_exponent_ok): Check for whether to encode with the IEEE or alternative
1035 (set_fp16_format): Parse a float16_format directive.
1036 (arm_parse_fp16_opt): Parse the fp16-format command line option.
1037 (aeabi_set_public_attributes): For ELF encode the FP16 format EABI attribute.
1038 * config/tc-arm.h (TC_LARGEST_EXPONENT_IS_NORMAL): Macro that expands to
1039 arm_is_largest_exponent_ok.
1040 (arm_is_largest_exponent_ok): Add prototype for arm_is_largest_exponent_ok function.
1041 * doc/c-arm.texi: Add documentation for .float16, .float16_format and -mfp16-format=
1042 * testsuite/gas/arm/float16-bad.d: New test.
1043 * testsuite/gas/arm/float16-bad.l: New test.
1044 * testsuite/gas/arm/float16-bad.s: New test.
1045 * testsuite/gas/arm/float16-be.d: New test.
1046 * testsuite/gas/arm/float16-format-bad.d: New test.
1047 * testsuite/gas/arm/float16-format-bad.l: New test.
1048 * testsuite/gas/arm/float16-format-bad.s: New test.
1049 * testsuite/gas/arm/float16-format-opt-bad.d: New test.
1050 * testsuite/gas/arm/float16-format-opt-bad.l: New test.
1051 * testsuite/gas/arm/float16-le.d: New test.
1052 * testsuite/gas/arm/float16.s: New test.
1053 * testsuite/gas/arm/float16-eabi-alternative-format.d: New test.
1054 * testsuite/gas/arm/float16-eabi-ieee-format.d: New test.
1055 * testsuite/gas/arm/float16-eabi-no-format.d: New test.
1056 * testsuite/gas/arm/float16-eabi.s: New test.
1058 2019-08-12 Barnaby Wilks <barnaby.wilks@arm.com>
1060 * config/atof-ieee.c (H_PRECISION): Macro for precision of float16
1062 (atof_ieee): Set precision and exponent bits for encoding float16
1064 (gen_to_words): NaN and Infinity encoding for float16.
1065 (ieee_md_atof): Set precision for encoding float16 type.
1067 2019-08-12 Alan Modra <amodra@gmail.com>
1070 * config/tc-epiphany.c (md_estimate_size_before_relax): Clear
1071 extra opcode bytes when changing from a 2-byte to a 4-byte insn.
1073 2019-08-09 Jan Beulich <jbeulich@suse.com>
1075 * testsuite/gas/i386/ilp32/x86-64-simd-intel.d,
1076 testsuite/gas/i386/ilp32/x86-64-simd-suffix.d,
1077 testsuite/gas/i386/ilp32/x86-64-simd.d: Redirect to parent dir
1078 output expectations.
1079 * testsuite/gas/i386/x86-64-simd-intel.d,
1080 testsuite/gas/i386/x86-64-simd-suffix.d,
1081 testsuite/gas/i386/x86-64-simd.d: Don't hard-code hex addresses
1082 and symbol-relative offsets.
1084 2019-08-08 Nick Clifton <nickc@redhat.com>
1087 * testsuite/gas/i386/property-1.d: Adjust for new output format
1089 * testsuite/gas/i386/property-2.d: Likewise.
1090 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1091 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1093 2019-08-08 Yoshinori Sato <ysato@users.sourceforge.jp>
1095 * testsuite/gas/h8300/h8300.exp: Fix movfpe and movtpe tests.
1096 * testsuite/gas/h8300/misc.s: Likewise.
1097 * testsuite/gas/h8300/misch.s: Likewise.
1098 * testsuite/gas/h8300/miscs.s: Likewise.
1100 2019-08-05 Barnaby Wilks <barnaby.wilks@arm.com>
1102 * config/tc-arm.c (do_mve_vqdmlah): Use N_S_32 macro.
1103 (do_neon_qrdmlah): Use N_S_32 macro.
1104 * testsuite/gas/arm/mve-vqdmlah-bad.d: New test.
1105 * testsuite/gas/arm/mve-vqdmlah-bad.l: New test.
1106 * testsuite/gas/arm/mve-vqdmlah-bad.s: New test.
1107 * testsuite/gas/arm/mve-vqdmlah.d: Remove unsigned instruction tests.
1108 * testsuite/gas/arm/mve-vqdmlah.s: Remove unsigned instruction tests.
1109 * testsuite/gas/arm/mve-vqdmlash-bad.d: New test.
1110 * testsuite/gas/arm/mve-vqdmlash-bad.l: New test.
1111 * testsuite/gas/arm/mve-vqdmlash-bad.s: New test.
1112 * testsuite/gas/arm/mve-vqdmlash.d: Remove unsigned instruction tests.
1113 * testsuite/gas/arm/mve-vqdmlash.s: Remove unsigned instruction tests.
1115 2019-07-30 Mel Chen <mel.chen@sifive.com>
1117 * testsuite/gas/riscv/alias-csr.s: Add testcase for CSR-access
1119 * testsuite/gas/riscv/no-aliases-csr.d: Run testcase alias-csr.s with
1122 * testsuite/gas/riscv/alias-csr.d: Run testcase alias-csr.s.
1123 * testsuite/gas/riscv/priv-reg.d: Update.
1125 2019-07-24 Nick Clifton <nickc@redhat.com>
1127 * po/sv.po: Updated Swedish translation.
1129 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
1131 * testsuite/gas/arc/nps400-6.d: Update test.
1133 2019-07-24 Alan Modra <amodra@gmail.com>
1135 * config/obj-elf.c (obj_elf_section, obj_elf_type): Set has_gnu_osabi.
1136 * testsuite/gas/elf/section12a.d: Update xfails.
1137 * testsuite/gas/elf/section12b.d: Likewise.
1139 2019-07-24 Alan Modra <amodra@gmail.com>
1141 * testsuite/gas/elf/section12a.d: xfail visium and cloudabi.
1142 * testsuite/gas/elf/section12b.d: Likewise.
1143 * testsuite/gas/elf/section13.d: Likewise.
1145 2019-07-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1147 * testsuite/gas/aarch64/sysreg-4.s: Test gmid_el1 read.
1148 * testsuite/gas/aarch64/sysreg-4.d: Update expected output.
1149 * testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
1151 2019-07-23 Alan Modra <amodra@gmail.com>
1153 * config/obj-elf.c (obj_elf_change_section): Don't emit a fatal
1154 error for non-SHF_ALLOC SHF_GNU_MBIND here.
1155 (obj_elf_parse_section_letters): Return SHF_GNU_MBIND in new
1157 (obj_elf_section): Adjust obj_elf_parse_section_letters call.
1158 Formatting. Set SHF_GNU_MBIND and elf_osabi from gnu_attr.
1159 Emit normal error for non-SHF_ALLOC SHF_GNU_MBIND and wrong osabi.
1160 (obj_elf_type): Set elf_osabi for ifunc.
1161 * testsuite/gas/elf/section12a.d: xfail msp430 and hpux.
1162 * testsuite/gas/elf/section12b.d: Likewise.
1163 * testsuite/gas/elf/section13.d: Likewise.
1164 * testsuite/gas/elf/section13.l: Adjust expected error.
1166 2019-07-23 Alan Modra <amodra@gmail.com>
1168 * testsuite/gas/elf/section12a.d: Don't skip for rx.
1170 2019-07-22 Barnaby Wilks <barnaby.wilks@arm.com>
1172 * config/tc-arm.c (do_mve_vqdmladh): Remove check for UNPREDICTABLE.
1173 * testsuite/gas/arm/mve-vqdmladh-bad.l: Remove tests.
1174 * testsuite/gas/arm/mve-vqdmladh-bad.s: Remove tests.
1175 * testsuite/gas/arm/mve-vqdmladh.d: New tests.
1176 * testsuite/gas/arm/mve-vqdmladh.s: New tests.
1177 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: Remove tests.
1178 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: Remove tests.
1179 * testsuite/gas/arm/mve-vqdmlsdh.d: New tests.
1180 * testsuite/gas/arm/mve-vqdmlsdh.s: New tests.
1182 2019-07-19 H.J. Lu <hongjiu.lu@intel.com>
1184 * testsuite/gas/i386/noextreg.d: Pass -O0 to assembler.
1186 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
1188 * testsuite/gas/bpf/alu.d: Use %r6 instead of %ctx.
1189 * testsuite/gas/bpf/lddw-be.d: Likewise.
1190 * testsuite/gas/bpf/lddw.d: Likewise.
1191 * testsuite/gas/bpf/alu-be.d: Likewise.
1192 * testsuite/gas/bpf/alu32.d: Likewise.
1194 2019-07-19 Jose E. Marchesi <jose.marchesi@oracle.com>
1196 * config/tc-bpf.c (pe_lcomm_internal): Adapted from tc-i386.c.
1197 (pe_lcomm): Likewise.
1198 (md_pseudo_table): Use pe_lcomm to implement .lcomm.
1200 2019-07-19 Richard Sandiford <richard.sandiford@arm.com>
1202 * doc/c-aarch64.texi: Remame the +bitperm extension to +sve2-bitperm.
1203 * config/tc-aarch64.c (aarch64_features): Likewise.
1204 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update accordingly.
1205 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Likewise.
1206 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Likewise.
1207 * testsuite/gas/aarch64/illegal-sve2.d: Likewise.
1208 * testsuite/gas/aarch64/sve2.d: Likewise.
1210 2019-07-19 Alan Modra <amodra@gmail.com>
1212 * config/tc-ppc.c (ppc_elf_suffix): Map "tls@pcrel", "got@tlsgd@pcrel",
1213 "got@tlsld@pcrel", "got@tprel@pcrel", and "got@dtprel@pcrel".
1214 (fixup_size, md_assemble): Handle pcrel tls relocs.
1215 (ppc_force_relocation, ppc_fix_adjustable): Likewise.
1216 (md_apply_fix, tc_gen_reloc): Likewise.
1218 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
1220 * config/tc-bpf.c: Make .lcomm to get a third argument with the
1223 2019-07-17 Jose E. Marchesi <jose.marchesi@oracle.com>
1225 * config/tc-bpf.c (md_pseudo_table): .half, .word and .dword.
1227 * testsuite/gas/bpf/data.s: New file.
1228 * testsuite/gas/bpf/data.d: Likewise.
1229 * testsuite/gas/bpf/data-be.d: Likewise.
1230 * testsuite/gas/bpf/bpf.exp: Run data and data-be.
1231 * doc/c-bpf.texi (BPF Directives): New section.
1233 2019-07-17 Jan Beulich <jbeulich@suse.com>
1235 * config/tc-i386.c (check_hle, md_assemble, check_VecOperands,
1236 match_template, check_string, build_modrm_byte): Replace
1237 operand_type_check(..., anymem) by Operand_Mem ones.
1238 (process_operands): Also copy i.flags[] when copying other
1241 2019-07-16 Jan Beulich <jbeulich@suse.com>
1243 * config/tc-i386.c (match_template): Adjust regmem reference.
1244 Adjust comment and update regmem when swapping operands.
1245 (build_modrm_byte): Drop clearing of regmem and stale part of
1246 comment. Correct comment. Adjust regmem reference.
1248 2019-07-16 Jan Beulich <jbeulich@suse.com>
1250 * config/tc-i386.c (type_names): Replace SReg entries.
1251 (pi, check_byte_reg, build_modrm_byte, i386_att_operand,
1252 parse_real_register): Switch to using sreg field.
1253 (process_operands): Likewise. Extend handling of PUSH/POP of
1254 segment registers. Drop dead setting of REX_B.
1255 * config/tc-i386-intel.c (i386_intel_simplify_register,
1256 i386_intel_operand): Switch to using sreg field.
1257 * testsuite/gas/i386/x86-64-opcode.s: Add PUSH/POP of %fs/%gs.
1258 * testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
1259 * testsuite/gas/i386/ilp32/x86-64-opcode.d: Use parent dir
1262 2019-07-15 Jose E. Marchesi <jose.marchesi@oracle.com>
1264 * testsuite/gas/bpf/mem.s: ldabs instructions do not take a `src'
1265 register as an argument.
1266 * testsuite/gas/bpf/mem.d: Updated accordingly.
1267 * testsuite/gas/bpf/mem-be.d: Likewise.
1268 * doc/c-bpf.texi (BPF Opcodes): Update to reflect the correct
1269 explicit arguments to ldabs and ldind instructions.
1271 2019-07-14 Jose E. Marchesi <jose.marchesi@oracle.com>
1273 * testsuite/gas/bpf/mem.s: Do not use explicit arguments for
1274 ldabs and ldind instructions.
1275 * testsuite/gas/bpf/mem.d: Updated accordingly.
1276 * testsuite/gas/bpf/mem-be.d: Likewise.
1278 2019-07-09 Alan Modra <amodra@gmail.com>
1280 * config/obj-elf.c (elf_frob_symbol): Remove mips hacks.
1281 * config/tc-mips.h (tc_frob_symbol): Define.
1282 (mips_frob_symbol): Declare.
1283 * config/tc-mips.c (s_mips_globl): Don't set BSF_OBJECT for irix.
1284 (mips_frob_symbol): Fudge symbols for irix here.
1285 * testsuite/gas/elf/type-2.e: Allow random target symbols.
1287 2019-07-05 Kito Cheng <kito.cheng@sifive.com>
1289 * doc/c-riscv.texi (Instruction Formats): Add r4 type.
1290 * testsuite/gas/riscv/insn.d: Add testcase for r4 type.
1291 * testsuite/gas/riscv/insn.s: Ditto.
1293 * doc/c-riscv.texi (Instruction Formats): Add b and j type.
1294 * testsuite/gas/riscv/insn.d: Add test case for b and j type.
1295 * testsuite/gas/riscv/insn.s: Ditto.
1297 * testsuite/gas/riscv/insn.s: Correct instruction type for load
1300 * testsuite/gas/riscv/insn.d: Using regular expression to match
1303 * doc/c-riscv.texi (Instruction Formats): Fix encoding table for SB
1306 2019-07-04 Jan Beulich <jbeulich@suse.com>
1308 * config/tc-i386.c (md_parse_option): Don't blindly accept all
1310 (md_show_usage): Correctly name the ignored -Q option flavors.
1312 2019-07-04 Jan Beulich <jbeulich@suse.com>
1314 * config/obj-elf.c (obj_elf_type): Check for conflicts between
1316 * config/tc-hppa.h (md_elf_symbol_type_change): New.
1317 * doc/as.texi: Mention warning behavior for the ELF flavor of
1319 * testsuite/gas/elf/type-2.e, testsuite/gas/elf/type-2.l,
1320 testsuite/gas/elf/type-2.s: New.
1321 * testsuite/gas/elf/elf.exp: Run new test.
1323 2019-07-03 Nick Clifton <nickc@redhat.com>
1325 * testsuite/gas/aarch64/codealign.d: Update to work with a
1326 toolchain configured to generate build notes.
1327 * testsuite/gas/aarch64/codealign_1.d: Likewise.
1328 * testsuite/gas/aarch64/dwarf.d: Likewise.
1329 * testsuite/gas/aarch64/mapmisc.d: Likewise.
1330 * testsuite/gas/aarch64/mapping.d: Likewise.
1331 * testsuite/gas/aarch64/mapping2.d: Likewise.
1332 * testsuite/gas/aarch64/mapping3.d: Likewise.
1333 * testsuite/gas/aarch64/mapping4.d: Likewise.
1334 * testsuite/gas/aarch64/mapping_5.d: Likewise.
1335 * testsuite/gas/aarch64/mapping_6.d: Likewise.
1336 * testsuite/gas/aarch64/sve-movprfx_1.d: Likewise.
1337 * testsuite/gas/aarch64/sve-movprfx_10.d: Likewise.
1338 * testsuite/gas/aarch64/sve-movprfx_11.d: Likewise.
1339 * testsuite/gas/aarch64/sve-movprfx_12.d: Likewise.
1340 * testsuite/gas/aarch64/sve-movprfx_13.d: Likewise.
1341 * testsuite/gas/aarch64/sve-movprfx_14.d: Likewise.
1342 * testsuite/gas/aarch64/sve-movprfx_15.d: Likewise.
1343 * testsuite/gas/aarch64/sve-movprfx_16.d: Likewise.
1344 * testsuite/gas/aarch64/sve-movprfx_17.d: Likewise.
1345 * testsuite/gas/aarch64/sve-movprfx_18.d: Likewise.
1346 * testsuite/gas/aarch64/sve-movprfx_19.d: Likewise.
1347 * testsuite/gas/aarch64/sve-movprfx_2.d: Likewise.
1348 * testsuite/gas/aarch64/sve-movprfx_20.d: Likewise.
1349 * testsuite/gas/aarch64/sve-movprfx_21.d: Likewise.
1350 * testsuite/gas/aarch64/sve-movprfx_22.d: Likewise.
1351 * testsuite/gas/aarch64/sve-movprfx_23.d: Likewise.
1352 * testsuite/gas/aarch64/sve-movprfx_24.d: Likewise.
1353 * testsuite/gas/aarch64/sve-movprfx_25.d: Likewise.
1354 * testsuite/gas/aarch64/sve-movprfx_26.d: Likewise.
1355 * testsuite/gas/aarch64/sve-movprfx_27.d: Likewise.
1356 * testsuite/gas/aarch64/sve-movprfx_3.d: Likewise.
1357 * testsuite/gas/aarch64/sve-movprfx_4.d: Likewise.
1358 * testsuite/gas/aarch64/sve-movprfx_5.d: Likewise.
1359 * testsuite/gas/aarch64/sve-movprfx_6.d: Likewise.
1360 * testsuite/gas/aarch64/sve-movprfx_7.d: Likewise.
1361 * testsuite/gas/aarch64/sve-movprfx_8.d: Likewise.
1362 * testsuite/gas/aarch64/sve-movprfx_9.d: Likewise.
1363 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: Likewise.
1364 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: Likewise.
1365 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: Likewise.
1366 * testsuite/gas/all/assign.d: Likewise.
1367 * testsuite/gas/all/none.d: Likewise.
1368 * testsuite/gas/all/weakref1.d: Likewise.
1369 * testsuite/gas/arm/got_prel.d: Likewise.
1370 * testsuite/gas/arm/local_function.d: Likewise.
1371 * testsuite/gas/arm/mapdir.d: Likewise.
1372 * testsuite/gas/arm/mapmisc.d: Likewise.
1373 * testsuite/gas/arm/mapping2.d: Likewise.
1374 * testsuite/gas/arm/mapping3.d: Likewise.
1375 * testsuite/gas/arm/mapping4.d: Likewise.
1376 * testsuite/gas/arm/mapsecs.d: Likewise.
1377 * testsuite/gas/arm/mapshort-eabi.d: Likewise.
1378 * testsuite/gas/arm/thumbrel.d: Likewise.
1379 * testsuite/gas/arm/unwind.d: Likewise.
1380 * testsuite/gas/cfi/cfi-label.d: Likewise.
1381 * testsuite/gas/elf/elf.exp: Likewise.
1382 * testsuite/gas/i386/bss.d: Likewise.
1383 * testsuite/gas/i386/ifunc-3.d: Likewise.
1384 * testsuite/gas/i386/ilp32/mixed-mode-reloc64.d: Likewise.
1385 * testsuite/gas/i386/ilp32/quad.d: Likewise.
1386 * testsuite/gas/i386/ilp32/reloc64.d: Likewise.
1387 * testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
1388 * testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
1389 * testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
1390 * testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
1391 * testsuite/gas/i386/mixed-mode-reloc32.d: Likewise.
1392 * testsuite/gas/i386/mixed-mode-reloc64.d: Likewise.
1393 * testsuite/gas/i386/nop-6.d: Likewise.
1394 * testsuite/gas/i386/property-1.d: Likewise.
1395 * testsuite/gas/i386/property-2.d: Likewise.
1396 * testsuite/gas/i386/relax.d: Likewise.
1397 * testsuite/gas/i386/reloc64.d: Likewise.
1398 * testsuite/gas/i386/size-1.d: Likewise.
1399 * testsuite/gas/i386/size-3.d: Likewise.
1400 * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
1401 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
1402 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
1403 * testsuite/gas/i386/x86-64-size-1.d: Likewise.
1404 * testsuite/gas/i386/x86-64-size-3.d: Likewise.
1405 * testsuite/gas/i386/x86-64-size-5.d: Likewise.
1406 * testsuite/gas/i386/x86-64-unwind.d: Likewise.
1407 * testsuite/gas/macros/irp.d: Likewise.
1408 * testsuite/gas/macros/repeat.d: Likewise.
1409 * testsuite/gas/macros/rept.d: Likewise.
1410 * testsuite/gas/macros/test2.d: Likewise.
1411 * testsuite/gas/macros/test3.d: Likewise.
1412 * testsuite/gas/macros/vararg.d: Likewise.
1413 * testsuite/gas/ppc/astest2.d: Likewise.
1414 * testsuite/gas/ppc/astest2_64.d: Likewise.
1415 * testsuite/gas/ppc/astest64.d: Likewise.
1416 * testsuite/gas/ppc/power4.d: Likewise.
1417 * testsuite/gas/ppc/test1elf64.d: Likewise.
1419 2019-07-02 Barnaby Wilks <barnaby.wilks@arm.com>
1421 * config/tc-aarch64.c (parse_operands): Add error check.
1422 * testsuite/gas/aarch64/diagnostic.l: New test.
1423 * testsuite/gas/aarch64/diagnostic.s: New test.
1424 * testsuite/gas/aarch64/illegal.l: New tests.
1425 * testsuite/gas/aarch64/illegal.s: New tests.
1427 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1429 * testsuite/gas/aarch64/sve-movprfx_27.s,
1430 * testsuite/gas/aarch64/sve-movprfx_27.d: New test.
1432 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1434 * testsuite/gas/aarch64/sve-movprfx_26.s: Also test FCVTZS, FCVTZU,
1435 SCVTF, UCVTF, LSR and ASR.
1436 * testsuite/gas/aarch64/sve-movprfx_26.d: Update accordingly.
1437 * testsuite/gas/aarch64/sve-movprfx_26.l: Likewise.
1439 2019-07-02 Richard Sandiford <richard.sandiford@arm.com>
1441 * testsuite/gas/aarch64/sve-movprfx_25.s: Allow CPY Z1.D.P1/M,X1
1442 to be prefixed by MOVPRFX.
1443 * testsuite/gas/aarch64/sve-movprfx_25.d: Update accordingly.
1444 * testsuite/gas/aarch64/sve-movprfx_25.l: Likewise.
1446 2019-07-01 Nick Clifton <nickc@redhat.com>
1449 * write.c (create_note_reloc): Add desc2_offset parameter. Change
1450 name of offset parameter to note_offset. Only use desc2_offset
1451 when placing addend into REL reloc's address space.
1452 (maybe_generate_build_notes): Update parameters passed to
1455 2019-07-01 Matthew Malcomson <matthew.malcomson@arm.com>
1457 * testsuite/gas/aarch64/illegal-sve2-aes.d: Update tests.
1458 * testsuite/gas/aarch64/illegal-sve2.l: Update tests.
1459 * doc/c-aarch64.texi: Add special note of pmull{t,b}
1460 instructions under the sve2-aes architecture extension.
1461 * testsuite/gas/aarch64/illegal-sve2.s: Add small size
1462 pmull{t,b} instructions.
1463 * testsuite/gas/aarch64/sve2.d: Add small size pmull{t,b}
1465 * testsuite/gas/aarch64/sve2.s: Add small size pmull{t,b}
1468 2019-07-01 Nick Clifton <nickc@redhat.com>
1471 * doc/c-i386.texi (i386-Directives): Add a description of the
1474 2019-07-01 Nick Clifton <nickc@redhat.com>
1477 * doc/as.texi (Align): Add missing word to description of
1479 (P2align): Likewise.
1481 2019-06-28 Nick Clifton <nickc@redhat.com>
1484 * doc/as.texi (Zero): Fix spelling typo.
1486 2019-07-01 Jan Beulich <jbeulich@suse.com>
1488 * config/tc-i386.c (vec_imm4): Delete.
1489 (VEX_check_operands): Replace Vec_Imm4 check by CpuXOP with five
1490 operands one. Clear Imm<N> by different means.
1491 (build_modrm_byte): Adjust comment. Remove dead code. Add and
1494 2019-07-01 Jan Beulich <jbeulich@suse.com>
1496 * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
1497 insns. Move PadLock special case of prefix emission to 3-byte
1498 long base opcode handling.
1499 (i386_index_check): Check for CpuPadLock instead of ImmExt.
1501 2019-07-01 Jan Beulich <jbeulich@suse.com>
1503 * config/tc-i386.c (optimize_encoding): Handle AND / OR with
1504 both operands being the same register.
1505 * doc/c-i386.texi: Update -O2 documentation.
1506 * testsuite/gas/i386/optimize-2.s,
1507 testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
1508 with both operands being the same register.
1509 * testsuite/gas/i386/optimize-2.d,
1510 testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
1511 * testsuite/gas/i386/optimize-2b.d,
1512 testsuite/gas/i386/x86-64-optimize-3b.d: New.
1513 * testsuite/gas/i386/i386.exp: Run new test.
1515 2019-07-01 Jan Beulich <jbeulich@suse.com>
1517 * config/tc-i386.c (commutative): New.
1518 (build_vex_prefix): Handle commutative case.
1519 (optimize_encoding): Set commutative flag when appropriate.
1520 * doc/c-i386.texi: Update -O2 documentation.
1521 * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
1523 * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
1524 numbered source operands.
1525 * testsuite/gas/i386/x86-64-optimize-2.d,
1526 testsuite/gas/i386/x86-64-optimize-2b.d,
1527 testsuite/gas/i386/x86-64-optimize-3.d,
1528 testsuite/gas/i386/x86-64-optimize-5.d,
1529 testsuite/gas/i386/x86-64-optimize-6.d,
1530 testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
1531 * testsuite/gas/i386/x86-64-avx-swap-2.d,
1532 testsuite/gas/i386/x86-64-avx-swap-2.s: New.
1533 * testsuite/gas/i386/i386.exp: Run new test.
1535 2019-07-01 Jan Beulich <jbeulich@suse.com>
1537 * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
1538 (check_VecOperands): Simplify static rounding / SAE checking.
1540 2019-07-01 Jan Beulich <jbeulich@suse.com>
1542 * config/tc-i386.c (optimize_encoding): Make j unsigned. Handle
1543 vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}. Also check/
1544 clear broadcast. Eliminate a loop.
1545 * doc/c-i386.texi: Update -O1 documentation.
1546 * testsuite/gas/i386/optimize-1.s,
1547 testsuite/gas/i386/optimize-2.s,
1548 testsuite/gas/i386/optimize-3.s,
1549 testsuite/gas/i386/optimize-5.s,
1550 testsuite/gas/i386/x86-64-optimize-2.s,
1551 testsuite/gas/i386/x86-64-optimize-3.s,
1552 testsuite/gas/i386/x86-64-optimize-4.s,
1553 testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
1554 vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
1555 testsuite/gas/i386/optimize-1.d,
1556 testsuite/gas/i386/optimize-1a.d,
1557 testsuite/gas/i386/optimize-2.d,
1558 testsuite/gas/i386/optimize-3.d,
1559 testsuite/gas/i386/optimize-4.d,
1560 testsuite/gas/i386/optimize-5.d,
1561 testsuite/gas/i386/x86-64-optimize-2.d,
1562 testsuite/gas/i386/x86-64-optimize-2a.d,
1563 testsuite/gas/i386/x86-64-optimize-2b.d,
1564 testsuite/gas/i386/x86-64-optimize-3.d,
1565 testsuite/gas/i386/x86-64-optimize-4.d,
1566 testsuite/gas/i386/x86-64-optimize-5.d,
1567 testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
1569 2019-07-01 Jan Beulich <jbeulich@suse.com>
1571 * testsuite/gas/i386/avx512f_vpclmulqdq.s,
1572 testsuite/gas/i386/avx512vl_vpclmulqdq.s,
1573 testsuite/gas/i386/vpclmulqdq.s,
1574 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
1575 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
1576 * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
1577 high 16 [xy]mm registers.
1578 * testsuite/gas/i386/avx512f_vpclmulqdq.d,
1579 testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
1580 testsuite/gas/i386/avx512vl_vpclmulqdq.d,
1581 testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
1582 testsuite/gas/i386/vpclmulqdq.d,
1583 testsuite/gas/i386/vpclmulqdq-intel.d,
1584 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
1585 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
1586 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
1587 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
1588 testsuite/gas/i386/x86-64-vpclmulqdq.d,
1589 testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
1592 2019-07-01 Jan Beulich <jbeulich@suse.com>
1594 * tc-i386.c (output_disp, output_imm): Use encoding_length.
1596 2019-07-01 Jan Beulich <jbeulich@suse.com>
1598 * tc-i386.c (encoding_length): New.
1599 (output_insn): Use it.
1600 * testsuite/gas/i386/oversized16.l,
1601 testsuite/gas/i386/oversized16.s,
1602 testsuite/gas/i386/oversized64.l,
1603 testsuite/gas/i386/oversized64.s: New.
1604 * testsuite/gas/i386/i386.exp: Run new tests.
1606 2019-06-27 H.J. Lu <hongjiu.lu@intel.com>
1609 * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
1610 with invalid vector length.
1611 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1612 * testsuite/gas/i386/disassem.d: Updated.
1613 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1615 2019-06-27 Barnaby Wilk s<barnaby.wilks@arm.com>
1617 * config/tc-arm.c (do_smc): Add range check for immediate operand.
1618 (do_t_smc): Add range check for immediate operand. Remove
1619 obsolete immediate encoding.
1620 (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
1621 * testsuite/gas/arm/arch6zk.d: Fix test.
1622 * testsuite/gas/arm/arch6zk.s: Fix test.
1623 * testsuite/gas/arm/smc-bad.d: New test.
1624 * testsuite/gas/arm/smc-bad.l: New test.
1625 * testsuite/gas/arm/smc-bad.s: New test.
1626 * testsuite/gas/arm/thumb32.d: Fix test.
1627 * testsuite/gas/arm/thumb32.s: Fix test.
1629 2019-06-27 Jan Beulich <jbeulich@suse.com>
1631 config/tc-i386.c (md_assemble): Check for protected mode
1632 incapable processor before encoding VEX and alike insns.
1633 * testsuite/gas/i386/inval-16.s: For 80186 architecture.
1634 * testsuite/gas/i386/inval-16.l: Adjust expectations.
1635 * testsuite/gas/i386/avx-16bit.d,
1636 testsuite/gas/i386/avx-16bit.s,
1637 testsuite/gas/i386/avx512f-16bit.d,
1638 testsuite/gas/i386/avx512f-16bit.s,
1639 testsuite/gas/i386/bmi-16bit.d,
1640 testsuite/gas/i386/bmi-16bit.s,
1641 testsuite/gas/i386/bmi2-16bit.d,
1642 testsuite/gas/i386/bmi2-16bit.s,
1643 testsuite/gas/i386/lwp-16bit.d,
1644 testsuite/gas/i386/lwp-16bit.s: New
1645 testsuite/gas/i386/i386.exp: Run new tests.
1647 2019-06-26 Jim Wilson <jimw@sifive.com>
1649 * testsuite/gas/xstormy16/allinsn.sh: Change first line to
1650 #!/bin/bash and make it executable.
1651 * testsuite/gas/xstormy16/gcc.sh: Likewise.
1653 2019-06-26 Lili Cui <lili.cui@intel.com>
1655 * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
1656 syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
1659 2019-06-25 Faraz Shahbazker <fshahbazker@wavecomp.com>
1661 * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
1662 respect to MTC1 and use $0 for either part where possible.
1663 * testsuite/gas/mips/li-d.s: Add test cases for non-zero
1664 words in double precision constants.
1665 * testsuite/gas/mips/li-d.d: Update reference output.
1666 * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
1667 * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
1668 * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
1670 2019-06-25 Jan Beulich <jbeulich@suse.com>
1672 * tc-i386.c (acc32, acc64): Delete.
1673 (pi): Make first parameter pinter-to-const.
1674 (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
1675 (pt): Use operand_type_equal().
1676 (match_template): Replace use of acc32.
1677 (process_suffix): Replace use of acc64.
1679 2019-06-25 Jan Beulich <jbeulich@suse.com>
1681 * doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
1684 2019-06-25 Jan Beulich <jbeulich@suse.com>
1686 * tc-i386.c (process_suffix): Use is_any_vex_encoding().
1688 2019-06-25 Jan Beulich <jbeulich@suse.com>
1690 * testsuite/gas/i386/sse2-16bit.d,
1691 testsuite/gas/i386/sse2-16bit.s: New.
1692 testsuite/gas/i386/i386.exp: Run new test.
1694 2019-06-25 Jan Beulich <jbeulich@suse.com>
1696 * config/tc-i386.c (optimize_encoding): Also handle ANDQ with
1697 immediatie fitting in 7 bits.
1698 * testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
1699 7- and 8-bit immediates.
1700 * testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
1702 2019-06-25 Jan Beulich <jbeulich@suse.com>
1704 * testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
1706 * testsuite/gas/i386/xmmword.l: Adjust expectations.
1708 2019-06-25 Alan Modra <amodra@gmail.com>
1710 * config/tc-ppc.c (ppc_handle_align): Add parentheses.
1712 2019-06-25 Alan Modra <amodra@gmail.com>
1714 * config/tc-ppc.h (ppc_nop_select): Declare.
1715 (NOP_OPCODE): Define.
1716 * config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
1717 (ppc_nop_encoding_for_rs_align_code): New enum.
1718 (ppc_nop_select): New function.
1719 (ppc_handle_align): Don't use ppc_cpu here. Get nop type from frag.
1720 * testsuite/gas/ppc/groupnop.d,
1721 * testsuite/gas/ppc/groupnop.s: New test.
1722 * testsuite/gas/ppc/ppc.exp: Run it.
1724 2019-06-19 H.J. Lu <hongjiu.lu@intel.com>
1727 * testsuite/gas/i386/disassem.s: Add test for vbroadcasti32x8
1728 with invalid vector length.
1729 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1730 * testsuite/gas/i386/disassem.d: Updated.
1731 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1733 2019-06-17 H.J. Lu <hongjiu.lu@intel.com>
1736 * testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
1737 invalid vector length.
1738 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1739 * testsuite/gas/i386/disassem.d: Updated.
1740 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1742 2019-06-14 Alan Modra <amodra@gmail.com>
1744 * Makefile.in: Regenerate.
1745 * configure: Regenerate.
1746 * doc/Makefile.in: Regenerate.
1748 2019-06-12 Peter Bergner <bergner@linux.ibm.com>
1750 * testsuite/gas/ppc/power9.d: Delete ldmx tests.
1751 * testsuite/gas/ppc/power9.s: Likewise.
1753 2019-06-06 Lili Cui <lili.cui@intel.com>
1755 * config/tc-i386.c (cpu_arch): Add .enqcmd.
1756 (cpu_noarch): Add noenqcmd.
1757 * doc/c-i386.texi: Document noenqcmd.
1759 2019-06-05 H.J. Lu <hongjiu.lu@intel.com>
1762 * testsuite/gas/i386/disassem.s: Add tests for invalid vector
1763 lengths for EVEX vextractfXX and vinsertfXX.
1764 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1765 * testsuite/gas/i386/disassem.d: Updated.
1766 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1768 2019-06-04 H.J. Lu <hongjiu.lu@intel.com>
1771 * testsuite/gas/i386/disassem.s: Add tests for reserved VEX.vvvv
1773 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
1774 * testsuite/gas/i386/disassem.d: Updated.
1775 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
1777 2019-06-04 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
1778 Lili Cui <lili.cui@intel.com>
1780 * config/tc-i386.c (cpu_arch): Add .avx512_vp2intersect.
1781 (cpu_noarch): Likewise.
1782 * doc/c-i386.texi: Document avx512_vp2intersect.
1783 * testsuite/gas/i386/i386.exp: Run vp2intersect tests.
1784 * testsuite/gas/i386/vp2intersect-intel.d: New test.
1785 * testsuite/gas/i386/vp2intersect.d: Likewise.
1786 * testsuite/gas/i386/vp2intersect.s: Likewise.
1787 * testsuite/gas/i386/vp2intersect-inval-bcast.l: Likewise.
1788 * testsuite/gas/i386/vp2intersect-inval-bcast.s: Likewise.
1789 * testsuite/gas/i386/x86-64-vp2intersect-intel.d: Likewise.
1790 * testsuite/gas/i386/x86-64-vp2intersect.d: Likewise.
1791 * testsuite/gas/i386/x86-64-vp2intersect.s: Likewise.
1792 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.l: Likewise.
1793 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.s: Likewise.
1795 2019-06-04 Xuepeng Guo <xuepeng.guo@intel.com>
1796 Lili Cui <lili.cui@intel.com>
1798 * doc/c-i386.texi: Document enqcmd.
1799 * testsuite/gas/i386/enqcmd-intel.d: New file.
1800 * testsuite/gas/i386/enqcmd-inval.l: Likewise.
1801 * testsuite/gas/i386/enqcmd-inval.s: Likewise.
1802 * testsuite/gas/i386/enqcmd.d: Likewise.
1803 * testsuite/gas/i386/enqcmd.s: Likewise.
1804 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
1805 * testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
1806 * testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
1807 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
1808 * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
1809 * testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
1810 enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
1813 2019-05-30 Jim Wilson <jimw@sifive.com>
1815 * config/tc-riscv.c (riscv_ip) <'u'>: Move O_constant check inside if
1816 statement. Delete O_symbol and O_constant check after if statement.
1817 * testsuite/gas/riscv/auipc-parsing.s: Test lui with missing %hi.
1818 * testsuite/gas/riscv/auipc-parsing.l: Update.
1820 2019-05-28 H.J. Lu <hongjiu.lu@intel.com>
1823 * testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
1824 instructions with invalid broadcast.
1825 * testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
1826 * testsuite/gas/i386/inval-avx512f.l: Updated.
1827 * testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
1829 2019-05-27 Alan Modra <amodra@gmail.com>
1831 * config/tc-ppc.c (is_ppc64_target): New function.
1832 (md_show_usage): Split up usage message. Don't show -a64 when
1834 testsuite/gas/ppc/ppc.exp (supports_ppc64): New.
1835 (prefix-reloc): Only run for ppc64.
1837 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1839 * config/tc-aarch64.c (aarch64_elf_copy_symbol_attributes): Define.
1840 * config/tc-aarch64.h (aarch64_elf_copy_symbol_attributes): Declare.
1841 (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1842 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: New test.
1843 * testsuite/gas/aarch64/symbol-variant_pcs-3.s: New test.
1845 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1847 * config/tc-aarch64.c (s_variant_pcs): New function.
1848 * doc/c-aarch64.texi: Document .variant_pcs.
1849 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: New test.
1850 * testsuite/gas/aarch64/symbol-variant_pcs-1.s: New test.
1851 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: New test.
1852 * testsuite/gas/aarch64/symbol-variant_pcs-2.s: New test.
1854 2019-05-24 Alan Modra <amodra@gmail.com>
1856 * po/POTFILES.in: Regenerate.
1858 2019-05-24 Alan Modra <amodra@gmail.com>
1860 * config/tc-ppc.c (ppc_elf_suffix): Support @pcrel, @got@pcrel,
1861 @plt@pcrel, @higher34, @highera34, @highest34, and @highesta34.
1862 (fixup_size): Handle new powerxx relocs.
1863 (md_assemble): Warn for @pcrel on non-prefix insns.
1864 Accept @l, @h and @ha on prefix insns, and infer reloc without
1865 any @ suffix. Translate powerxx relocs to suit DQ and DS field
1866 instructions. Include operand tests as well as opcode test to
1867 translate BFD_RELOC_HI16_S to BFD_RELOC_PPC_16DX_HA.
1868 (ppc_fix_adjustable): Return false for pcrel GOT and PLT relocs.
1869 (md_apply_fix): Handle new powerxx relocs.
1870 * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Accept
1871 BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34,
1872 BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34,
1873 BFD_RELOC_PPC64_D34, and BFD_RELOC_PPC64_D28.
1874 * testsuite/gas/ppc/prefix-reloc.d,
1875 * testsuite/gas/ppc/prefix-reloc.s: New test.
1876 * testsuite/gas/ppc/ppc.exp: Run it.
1878 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1879 Alan Modra <amodra@gmail.com>
1881 * config/tc-ppc.c (ppc_insert_operand): Only sign extend fields that
1882 are 32-bits or smaller.
1883 * messages.c (as_internal_value_out_of_range): Do not truncate
1884 variables and use BFD_VMA_FMT to print them.
1885 * testsuite/gas/ppc/prefix-pcrel.s,
1886 * testsuite/gas/ppc/prefix-pcrel.d: New test.
1887 * testsuite/gas/ppc/ppc.exp: Run it.
1889 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
1890 Alan Modra <amodra@gmail.com>
1892 * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
1893 (struct insn_label_list): New.
1894 (insn_labels, free_insn_labels): New variables.
1895 (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
1896 (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
1897 and call ppc_record_label.
1898 (md_assemble): Handle 64-bit prefix instructions. Align labels
1899 that are on the same line as a prefix instruction.
1900 * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
1902 (md_start_line_hook): Define.
1903 (ppc_start_line_hook): Declare.
1904 * testsuite/gas/ppc/prefix-align.d,
1905 * testsuite/gas/ppc/prefix-align.s: New test.
1906 * testsuite/gas/ppc/ppc.exp: Run new test.
1908 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1910 * configure.ac: Handle bpf-*-* targets.
1911 * configure.tgt (generic_target): Likewise.
1912 * configure: Regenerate.
1913 * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
1914 (TARGET_CPU_HFILES): Add tc-bpf.h.
1915 * Makefile.in: Regenerated.
1916 * config/tc-bpf.c: New file.
1917 * config/tc-bpf.h: Likewise.
1918 * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
1919 * doc/Makefile.in: Regenerated.
1920 * doc/all.texi: set BPF.
1921 * doc/as.texi: Add eBPF contents.
1922 * doc/c-bpf.texi: New file.
1923 * testsuite/gas/bpf/alu.d: New file.
1924 * testsuite/gas/bpf/mem-be.d: Likewise.
1925 * testsuite/gas/bpf/mem.s: Likewise.
1926 * testsuite/gas/bpf/mem.d: Likewise.
1927 * testsuite/gas/bpf/lddw-be.d: Likewise.
1928 * testsuite/gas/bpf/lddw.s: Likewise.
1929 * testsuite/gas/bpf/lddw.d: Likewise.
1930 * testsuite/gas/bpf/jump-be.d: Likewise.
1931 * testsuite/gas/bpf/jump.s: Likewise.
1932 * testsuite/gas/bpf/jump.d: Likewise.
1933 * testsuite/gas/bpf/exit-be.d: Likewise.
1934 * testsuite/gas/bpf/exit.s: Likewise.
1935 * testsuite/gas/bpf/exit.d: Likewise.
1936 * testsuite/gas/bpf/call-be.d: Likewise.
1937 * testsuite/gas/bpf/call.s: Likewise.
1938 * testsuite/gas/bpf/call.d: Likewise.
1939 * testsuite/gas/bpf/bpf.exp: Likewise.
1940 * testsuite/gas/bpf/atomic-be.d: Likewise.
1941 * testsuite/gas/bpf/atomic.s: Likewise.
1942 * testsuite/gas/bpf/atomic.d: Likewise.
1943 * testsuite/gas/bpf/alu-be.d: Likewise.
1944 * testsuite/gas/bpf/alu32-be.d: Likewise.
1945 * testsuite/gas/bpf/alu32.s: Likewise.
1946 * testsuite/gas/bpf/alu32.d: Likewise.
1947 * testsuite/gas/bpf/alu.s: Likewise.
1948 * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
1949 * testsuite/gas/all/org-1.s: Support nop_type 6.
1950 * testsuite/gas/all/org-1.l: Updated to reflect changes in
1953 2019-05-22 John Darrington <john@darrington.wattle.id.au>
1955 * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
1956 (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
1957 (<global>): Use s12z_strtol instead of strtol.
1958 * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
1959 * testsuite/gas/s12z/dollar-hex.d: New file.
1960 * testsuite/gas/s12z/dollar-hex.s: New file.
1961 * testsuite/gas/s12z/s12z.exp: Add them.
1963 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1965 * config/tc-arm.c (parse_operands): Update case OP_RVC to
1967 (do_vmrs): Add checks for valid operands with respect to
1968 cpu and fpu options.
1969 (do_vmsr): Likewise.
1970 (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
1972 * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
1973 * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
1974 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
1975 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
1976 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
1977 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
1978 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
1979 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
1980 * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
1981 * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
1983 2019-05-21 Sudakshina Das <sudi.das@arm.com>
1985 * config/tc-arm.c (TOGGLE_BIT): New.
1986 (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
1987 csinv, csneg, cset, csetm and csel.
1988 (operand_parse_code): New OP_RR_ZR.
1989 (parse_operand): Handle case for OP_RR_ZR.
1991 (insns): New instructions for cinc, cinv, cneg, csinc,
1992 csinv, csneg, cset, csetm, csel.
1993 * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
1994 * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
1995 * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
1996 * testsuite/gas/arm/armv8_1-m-cond.d: New test.
1997 * testsuite/gas/arm/armv8_1-m-cond.s: New test.
1999 2019-05-21 Sudakshina Das <sudi.das@arm.com>
2001 * config/tc-arm.c (operand_parse_code): New entries for
2002 OP_RRnpcsp_I32 (register or integer operands).
2003 (do_mve_scalar_shift): New.
2004 (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
2005 sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
2006 * testsuite/gas/arm/mve-shift.d: New.
2007 * testsuite/gas/arm/mve-shift.s: New.
2008 * testsuite/gas/arm/mve-shift-bad.d: New.
2009 * testsuite/gas/arm/mve-shift-bad.s: New.
2010 * testsuite/gas/arm/mve-shift-bad.l: New.
2012 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
2014 * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
2015 * testsuite/gas/mips/r6-reg-constraints.s: this and add test
2017 * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
2018 * testsuite/gas/mips/r6-reg-constraints.l: this and add test
2020 * testsuite/gas/mips/mips.exp: Rename test from
2021 r6-branch-constraints to r6-reg-constraints.
2023 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
2026 * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
2028 * testsuite/gas/arm/load-pseudo.s: New test input.
2029 * testsuite/gas/arm/m0-load-pseudo.d: New test.
2030 * testsuite/gas/arm/m23-load-pseudo.d: New test.
2031 * testsuite/gas/arm/m33-load-pseudo.d: New test.
2033 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
2035 * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
2037 * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
2038 * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
2039 * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
2040 * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
2041 * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
2042 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
2043 * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
2045 2019-05-21 John Darrington <john@darrington.wattle.id.au>
2047 * expr.c (literal_prefix_dollar_hex): New variable.
2048 (operand)[case '$']: Use the new variable instead of the old macro.
2049 Also, move this instance of "case '$'" next to the other one, and
2050 enable it only in the complementary proprocessor case.
2051 * expr.h (literal_prefix_dollar_hex): Declare it.
2052 * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
2053 * config/tc-ip2k.c: ditto
2054 * config/tc-mt.c: ditto
2055 * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
2056 * config/tc-ip2k.h: ditto
2057 * config/tc-mt.h: ditto
2059 2019-05-20 Faraz Shahbazker <fshahbazker@wavecomp.com>
2062 * config/tc-mips.c (s_mips_globl): Only treat symbols that are
2063 not explicitly labelled as BSF_OBJECTs for IRIX targets.
2064 * testsuite/gas/mips/pr14798.s: New test source.
2065 * testsuite/gas/mips/pr14798-irix.d: New test.
2066 * testsuite/gas/mips/pr14798.d: Likewise.
2067 * testsuite/gas/mips/mips.exp: Run the new tests.
2069 2019-05-17 John Darrington <john@darrington.wattle.id.au>
2071 * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
2072 * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
2074 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2076 * config/tc-arm.c (check_simd_pred_availability): Refactor.
2077 (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
2078 (do_neon_dyadic_i64_su): Likewise.
2079 (do_neon_shl): Likewise.
2080 (do_neon_qshl): Likewise.
2081 (do_neon_rshl): Likewise.
2082 (do_neon_logic): Likewise.
2083 (do_neon_dyadic_if_su): Likewise.
2084 (do_neon_addsub_if_i): Likewise.
2085 (do_neon_mac_maybe_scalar): Likewise.
2086 (do_neon_fmac): Likewise.
2087 (do_neon_mul): Likewise.
2088 (do_neon_qdmulh): Likewise.
2089 (do_neon_qrdmlah): Likewise.
2090 (do_neon_abs_neg): Likewise.
2091 (do_neon_sli): Likewise.
2092 (do_neon_sri): Likewise.
2093 (do_neon_qshlu_imm): Likewise.
2094 (do_neon_cvt_1): Likewise.
2095 (do_neon_cvttb_1): Likewise.
2096 (do_neon_mvn): Likewise.
2097 (do_neon_rev): Likewise.
2098 (do_neon_dup): Likewise.
2099 (do_neon_mov): Likewise.
2100 (do_neon_rshift_round_imm): Likewise.
2101 (do_neon_sat_abs_neg): Likewise.
2102 (do_neon_cls): Likewise.
2103 (do_neon_clz): Likewise.
2104 (do_vmaxnm): Likewise.
2105 (do_vrint_1): Likewise.
2106 (do_vcmla): Likewise.
2107 (do_vcadd): Likewise.
2109 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2111 * NEWS: Mention Armv8.1-M Mainline and MVE.
2113 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2115 * testsuite/gas/arm/mve-tailpredloop.d: New test.
2116 * testsuite/gas/arm/mve-tailpredloop.s: New test.
2117 * testsuite/gas/arm/mve-vabav.d: New test.
2118 * testsuite/gas/arm/mve-vabav.s: New test.
2119 * testsuite/gas/arm/mve-vabd.d: New test.
2120 * testsuite/gas/arm/mve-vabd.s: New test.
2121 * testsuite/gas/arm/mve-vabsneg.d: New test.
2122 * testsuite/gas/arm/mve-vabsneg.s: New test.
2123 * testsuite/gas/arm/mve-vadc.d: New test.
2124 * testsuite/gas/arm/mve-vadc.s: New test.
2125 * testsuite/gas/arm/mve-vaddlv.d: New test.
2126 * testsuite/gas/arm/mve-vaddlv.s: New test.
2127 * testsuite/gas/arm/mve-vaddsub.d: New test.
2128 * testsuite/gas/arm/mve-vaddsub.s: New test.
2129 * testsuite/gas/arm/mve-vaddv.d: New test.
2130 * testsuite/gas/arm/mve-vaddv.s: New test.
2131 * testsuite/gas/arm/mve-vand.d: New test.
2132 * testsuite/gas/arm/mve-vand.s: New test.
2133 * testsuite/gas/arm/mve-vbic.d: New test.
2134 * testsuite/gas/arm/mve-vbic.s: New test.
2135 * testsuite/gas/arm/mve-vbrsr.d: New test.
2136 * testsuite/gas/arm/mve-vbrsr.s: New test.
2137 * testsuite/gas/arm/mve-vcadd.d: New test.
2138 * testsuite/gas/arm/mve-vcadd.s: New test.
2139 * testsuite/gas/arm/mve-vcls.d: New test.
2140 * testsuite/gas/arm/mve-vcls.s: New test.
2141 * testsuite/gas/arm/mve-vclz.d: New test.
2142 * testsuite/gas/arm/mve-vclz.s: New test.
2143 * testsuite/gas/arm/mve-vcmla.d: New test.
2144 * testsuite/gas/arm/mve-vcmla.s: New test.
2145 * testsuite/gas/arm/mve-vcmp.d: New test.
2146 * testsuite/gas/arm/mve-vcmp.s: New test.
2147 * testsuite/gas/arm/mve-vcmul.d: New test.
2148 * testsuite/gas/arm/mve-vcmul.s: New test.
2149 * testsuite/gas/arm/mve-vcvt-1.d: New test.
2150 * testsuite/gas/arm/mve-vcvt-1.s: New test.
2151 * testsuite/gas/arm/mve-vcvt-2.d: New test.
2152 * testsuite/gas/arm/mve-vcvt-2.s: New test.
2153 * testsuite/gas/arm/mve-vcvt-3.d: New test.
2154 * testsuite/gas/arm/mve-vcvt-3.s: New test.
2155 * testsuite/gas/arm/mve-vcvt-4.d: New test.
2156 * testsuite/gas/arm/mve-vcvt-4.s: New test.
2157 * testsuite/gas/arm/mve-vddup.d: New test.
2158 * testsuite/gas/arm/mve-vddup.s: New test.
2159 * testsuite/gas/arm/mve-vdup.d: New test.
2160 * testsuite/gas/arm/mve-vdup.s: New test.
2161 * testsuite/gas/arm/mve-veor.d: New test.
2162 * testsuite/gas/arm/mve-veor.s: New test.
2163 * testsuite/gas/arm/mve-vfma-vfms.d: New test.
2164 * testsuite/gas/arm/mve-vfma-vfms.s: New test.
2165 * testsuite/gas/arm/mve-vfmas.d: New test.
2166 * testsuite/gas/arm/mve-vfmas.s: New test.
2167 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
2168 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
2169 * testsuite/gas/arm/mve-vhcadd.d: New test.
2170 * testsuite/gas/arm/mve-vhcadd.s: New test.
2171 * testsuite/gas/arm/mve-vmax-vmin.d: New test.
2172 * testsuite/gas/arm/mve-vmax-vmin.s: New test.
2173 * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
2174 * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
2175 * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
2176 * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
2177 * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
2178 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
2179 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
2180 * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
2181 * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
2182 * testsuite/gas/arm/mve-vmla.d: New test.
2183 * testsuite/gas/arm/mve-vmla.s: New test.
2184 * testsuite/gas/arm/mve-vmladav.d: New test.
2185 * testsuite/gas/arm/mve-vmladav.s: New test.
2186 * testsuite/gas/arm/mve-vmlaldav.d: New test.
2187 * testsuite/gas/arm/mve-vmlaldav.s: New test.
2188 * testsuite/gas/arm/mve-vmlalv.d: New test.
2189 * testsuite/gas/arm/mve-vmlalv.s: New test.
2190 * testsuite/gas/arm/mve-vmlas.d: New test.
2191 * testsuite/gas/arm/mve-vmlas.s: New test.
2192 * testsuite/gas/arm/mve-vmlav.d: New test.
2193 * testsuite/gas/arm/mve-vmlav.s: New test.
2194 * testsuite/gas/arm/mve-vmlsdav.d: New test.
2195 * testsuite/gas/arm/mve-vmlsdav.s: New test.
2196 * testsuite/gas/arm/mve-vmlsldav.d: New test.
2197 * testsuite/gas/arm/mve-vmlsldav.s: New test.
2198 * testsuite/gas/arm/mve-vmov-1.d: New test.
2199 * testsuite/gas/arm/mve-vmov-1.s: New test.
2200 * testsuite/gas/arm/mve-vmov-2.d: New test.
2201 * testsuite/gas/arm/mve-vmov-2.s: New test.
2202 * testsuite/gas/arm/mve-vmul.d: New test.
2203 * testsuite/gas/arm/mve-vmul.s: New test.
2204 * testsuite/gas/arm/mve-vmulh.d: New test.
2205 * testsuite/gas/arm/mve-vmulh.s: New test.
2206 * testsuite/gas/arm/mve-vmullbt.d: New test.
2207 * testsuite/gas/arm/mve-vmullbt.s: New test.
2208 * testsuite/gas/arm/mve-vmvn.d: New test.
2209 * testsuite/gas/arm/mve-vmvn.s: New test.
2210 * testsuite/gas/arm/mve-vorn.d: New test.
2211 * testsuite/gas/arm/mve-vorn.s: New test.
2212 * testsuite/gas/arm/mve-vorr.d: New test.
2213 * testsuite/gas/arm/mve-vorr.s: New test.
2214 * testsuite/gas/arm/mve-vpnot.d: New test.
2215 * testsuite/gas/arm/mve-vpnot.s: New test.
2216 * testsuite/gas/arm/mve-vpsel.d: New test.
2217 * testsuite/gas/arm/mve-vpsel.s: New test.
2218 * testsuite/gas/arm/mve-vpt.d: New test.
2219 * testsuite/gas/arm/mve-vpt.s: New test.
2220 * testsuite/gas/arm/mve-vqabsneg.s: New test.
2221 * testsuite/gas/arm/mve-vqaddsub.d: New test.
2222 * testsuite/gas/arm/mve-vqaddsub.s: New test.
2223 * testsuite/gas/arm/mve-vqdmladh.d: New test.
2224 * testsuite/gas/arm/mve-vqdmladh.s: New test.
2225 * testsuite/gas/arm/mve-vqdmlah.d: New test.
2226 * testsuite/gas/arm/mve-vqdmlah.s: New test.
2227 * testsuite/gas/arm/mve-vqdmlash.d: New test.
2228 * testsuite/gas/arm/mve-vqdmlash.s: New test.
2229 * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
2230 * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
2231 * testsuite/gas/arm/mve-vqdmulh.d: New test.
2232 * testsuite/gas/arm/mve-vqdmulh.s: New test.
2233 * testsuite/gas/arm/mve-vqdmull.d: New test.
2234 * testsuite/gas/arm/mve-vqdmull.s: New test.
2235 * testsuite/gas/arm/mve-vqmovn.d: New test.
2236 * testsuite/gas/arm/mve-vqmovn.s: New test.
2237 * testsuite/gas/arm/mve-vqrshl.d: New test.
2238 * testsuite/gas/arm/mve-vqrshl.s: New test.
2239 * testsuite/gas/arm/mve-vqrshrn.d: New test.
2240 * testsuite/gas/arm/mve-vqrshrn.s: New test.
2241 * testsuite/gas/arm/mve-vqshl.d: New test.
2242 * testsuite/gas/arm/mve-vqshl.s: New test.
2243 * testsuite/gas/arm/mve-vrev.d: New test.
2244 * testsuite/gas/arm/mve-vrev.s: New test.
2245 * testsuite/gas/arm/mve-vrint.d: New test.
2246 * testsuite/gas/arm/mve-vrint.s: New test.
2247 * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
2248 * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
2249 * testsuite/gas/arm/mve-vrshl.d: New test.
2250 * testsuite/gas/arm/mve-vrshl.s: New test.
2251 * testsuite/gas/arm/mve-vsbc.d: New test.
2252 * testsuite/gas/arm/mve-vsbc.s: New test.
2253 * testsuite/gas/arm/mve-vshl.d: New test.
2254 * testsuite/gas/arm/mve-vshl.s: New test.
2255 * testsuite/gas/arm/mve-vshlc.d: New test.
2256 * testsuite/gas/arm/mve-vshlc.s: New test.
2257 * testsuite/gas/arm/mve-vshll.d: New test.
2258 * testsuite/gas/arm/mve-vshll.s: New test.
2259 * testsuite/gas/arm/mve-vshr.d: New test.
2260 * testsuite/gas/arm/mve-vshr.s: New test.
2261 * testsuite/gas/arm/mve-vshrn.d: New test.
2262 * testsuite/gas/arm/mve-vshrn.s: New test.
2263 * testsuite/gas/arm/mve-vsli.d: New test.
2264 * testsuite/gas/arm/mve-vsli.s: New test.
2265 * testsuite/gas/arm/mve-vsri.d: New test.
2266 * testsuite/gas/arm/mve-vsri.s: New test.
2267 * testsuite/gas/arm/mve-vstld.d: New test.
2268 * testsuite/gas/arm/mve-vstld.s: New test.
2269 * testsuite/gas/arm/mve-vstrldr-1.d: New test.
2270 * testsuite/gas/arm/mve-vstrldr-1.s: New test.
2271 * testsuite/gas/arm/mve-vstrldr-2.d: New test.
2272 * testsuite/gas/arm/mve-vstrldr-2.s: New test.
2273 * testsuite/gas/arm/mve-vstrldr-3.d: New test.
2274 * testsuite/gas/arm/mve-vstrldr-3.s: New test.
2276 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2278 * config/tc-arm.c (T16_32_TAB): Add new instructions.
2279 (do_t_loloop): Changed to handle tail predication variants.
2280 (md_apply_fix): Likewise.
2281 (insns): Add entries for MVE mnemonics.
2282 * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
2283 * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
2284 * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
2285 * testsuite/gas/arm/mve-tailpredloop.d: New test.
2287 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2289 * config/tc-arm.c (do_mve_vshll): New encoding function.
2290 (do_mve_vshlc): Likewise.
2291 (insns): Add entries for MVE mnemonics.
2292 * testsuite/gas/arm/mve-vshlc-bad.d: New test.
2293 * testsuite/gas/arm/mve-vshlc-bad.l: New test.
2294 * testsuite/gas/arm/mve-vshlc-bad.s: New test.
2295 * testsuite/gas/arm/mve-vshll-bad.d: New test.
2296 * testsuite/gas/arm/mve-vshll-bad.l: New test.
2297 * testsuite/gas/arm/mve-vshll-bad.s: New test.
2299 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2301 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2302 (parse_operands): Handle new operand.
2303 (do_neon_shl_imm): Accept MVE variants.
2304 (do_neon_shl): Likewise.
2305 (do_neon_qshl_imm): Likewise.
2306 (do_neon_qshl): Likewise.
2307 (do_neon_qshlu_imm): Likewise.
2309 * testsuite/gas/arm/mve-vqshl-bad.d: New test.
2310 * testsuite/gas/arm/mve-vqshl-bad.l: New test.
2311 * testsuite/gas/arm/mve-vqshl-bad.s: New test.
2312 * testsuite/gas/arm/mve-vshl-bad.d: New test.
2313 * testsuite/gas/arm/mve-vshl-bad.l: New test.
2314 * testsuite/gas/arm/mve-vshl-bad.s: New test.
2316 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2318 * config/tc-arm.c (do_neon_sli): Accept MVE variants.
2319 (do_neon_sri): Likewise.
2320 (do_neon_rev): Likewise.
2321 (do_neon_rshift_round_imm): Likewise.
2323 * testsuite/gas/arm/mve-vrev-bad.d: New test.
2324 * testsuite/gas/arm/mve-vrev-bad.l: New test.
2325 * testsuite/gas/arm/mve-vrev-bad.s: New test.
2326 * testsuite/gas/arm/mve-vshr-bad.d: New test.
2327 * testsuite/gas/arm/mve-vshr-bad.l: New test.
2328 * testsuite/gas/arm/mve-vshr-bad.s: New test.
2329 * testsuite/gas/arm/mve-vsli-bad.d: New test.
2330 * testsuite/gas/arm/mve-vsli-bad.l: New test.
2331 * testsuite/gas/arm/mve-vsli-bad.s: New test.
2332 * testsuite/gas/arm/mve-vsri-bad.d: New test.
2333 * testsuite/gas/arm/mve-vsri-bad.l: New test.
2334 * testsuite/gas/arm/mve-vsri-bad.s: New test.
2336 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2338 * config/tc-arm.c (do_vrint_1): Accept MVE variants.
2339 (insns): Change entries to accept MVE variants.
2340 * testsuite/gas/arm/mve-vrint-bad.d: New test.
2341 * testsuite/gas/arm/mve-vrint-bad.l: New test.
2342 * testsuite/gas/arm/mve-vrint-bad.s: New test.
2344 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2346 * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
2347 M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
2348 M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
2349 M_MNEM_vqrshrunb): New instruction encodings.
2350 (do_mve_vshrn): New encoding function.
2351 (insns): Add entries for MVE mnemonics.
2352 * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
2353 * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
2354 * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
2355 * testsuite/gas/arm/mve-vshrn-bad.d: New test.
2356 * testsuite/gas/arm/mve-vshrn-bad.l: New test.
2357 * testsuite/gas/arm/mve-vshrn-bad.s: New test.
2359 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2361 * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
2362 M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
2363 (do_mve_vqmovn): New encoding function.
2364 (do_neon_rshl): Change to accepte MVE variants.
2365 (insns): Change entries and add new for MVE mnemonics.
2366 * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
2367 * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
2368 * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
2369 * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
2370 * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
2371 * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
2372 * testsuite/gas/arm/mve-vrshl-bad.d: New test.
2373 * testsuite/gas/arm/mve-vrshl-bad.l: New test.
2374 * testsuite/gas/arm/mve-vrshl-bad.s: New test.
2376 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2378 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2379 (parse_operands): Handle new operand.
2380 (do_mve_vqdmull): New encoding function.
2381 (insns): Add entry for MVE mnemonics.
2382 * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
2383 * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
2384 * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
2386 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2388 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2389 (parse_operands): Handle new operand.
2390 (mve_encode_qqr): Handle new instructions.
2391 (do_neon_qdmulh): Add support for MVE variants.
2392 (do_neon_qrdmlah): Likewise.
2393 (do_mve_vqdmlah): New encoding function.
2394 (insns): Change entries and add new entries for MVE mnemonics.
2395 * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
2396 * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
2397 * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
2399 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2401 * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
2402 (insns): Add entries for MVE mnemonics.
2403 * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
2404 * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
2405 * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
2406 * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
2407 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
2408 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
2410 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2412 * config/tc-arm.c (do_mve_vpsel): New encoding function.
2413 (do_mve_vpnot): Likewise.
2414 (insns): Add entries for MVE mnemonics.
2415 * testsuite/gas/arm/mve-vpnot-bad.d: New test.
2416 * testsuite/gas/arm/mve-vpnot-bad.l: New test.
2417 * testsuite/gas/arm/mve-vpnot-bad.s: New test.
2418 * testsuite/gas/arm/mve-vpsel-bad.d: New test.
2419 * testsuite/gas/arm/mve-vpsel-bad.l: New test.
2420 * testsuite/gas/arm/mve-vpsel-bad.s: New test.
2422 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2424 * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
2425 (do_neon_sat_abs_neg): Likewise.
2427 * testsuite/gas/arm/mve-vmvn-bad.d: New test.
2428 * testsuite/gas/arm/mve-vmvn-bad.l: New test.
2429 * testsuite/gas/arm/mve-vmvn-bad.s: New test.
2430 * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
2431 * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
2432 * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
2434 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2436 * config/tc-arm.c (do_mve_vmlas): New encoding function.
2437 (do_mve_vmulh): Likewise.
2438 (insns): Add entries for MVE mnemonics.
2439 * testsuite/gas/arm/mve-vmlas-bad.d: New test.
2440 * testsuite/gas/arm/mve-vmlas-bad.l: New test.
2441 * testsuite/gas/arm/mve-vmlas-bad.s: New test.
2442 * testsuite/gas/arm/mve-vmulh-bad.d: New test.
2443 * testsuite/gas/arm/mve-vmulh-bad.l: New test.
2444 * testsuite/gas/arm/mve-vmulh-bad.s: New test.
2446 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2448 * config/tc-arm.c (enum operand_parse_code): New operand.
2449 (parse_operands): Handle new operand.
2450 (mve_encode_qqr): Handle new instructions.
2451 (do_neon_dyadic_i64_su): Accept MVE variants.
2452 (neon_dyadic_misc): Likewise.
2453 (do_neon_mac_maybe_scalar): Likewise.
2454 (do_neon_mul): Likewise.
2455 (insns): Change to accept MVE variants.
2456 * testsuite/gas/arm/mve-vmla-bad.d: New test.
2457 * testsuite/gas/arm/mve-vmla-bad.l: New test.
2458 * testsuite/gas/arm/mve-vmla-bad.s: New test.
2459 * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
2460 * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
2461 * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
2462 * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
2463 * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
2464 * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
2465 * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
2466 * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
2467 * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
2469 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2471 * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
2472 M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
2473 M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
2474 M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
2475 M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
2476 instruction encodings.
2477 (NEON_SHAPE_DEF): New shape
2478 (mve_encode_rrqq): New encoding helper function.
2479 (do_mve_vmlaldav): New encoding function.
2480 (do_mve_vrmlaldavh): New encoding function.
2481 (insns): Add entries for MVE mnemonics.
2482 * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
2483 * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
2484 * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
2485 * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
2486 * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
2487 * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
2488 * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
2489 * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
2490 * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
2491 * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
2492 * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
2493 * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
2495 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2497 * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
2498 M_MNEM_vminav): New instruction encodings.
2499 (do_mve_vmaxv): New encoding function.
2500 (insns): Add entries for new MVE mnemonics.
2501 * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
2502 * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
2503 * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
2505 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2507 * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
2508 (insns): Add entries for new mnemonics.
2509 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
2510 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
2511 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
2513 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2515 * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
2516 (do_mve_vmaxnma_vminnma): Likewise.
2517 (do_neon_dyadic_if_su): Change to support MVE variants.
2518 (do_vmaxnm): Likewise.
2519 (insns): Change to accept MVE variants and add new.
2520 * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
2521 * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
2522 * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
2523 * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
2524 * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
2525 * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
2526 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
2527 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
2528 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
2529 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
2530 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
2531 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
2533 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2535 * config/tc-arm.c (enum operand_parse_code): New operand.
2536 (parse_operands): Handle new operand.
2537 (mve_encode_qqr): Change to support new instructions.
2538 (enum vfp_or_neon_is_neon_bits): Moved.
2539 (vfp_or_neon_is_neon): Moved.
2540 (check_simd_pred_availability): Moved.
2541 (do_neon_dyadic_i_su): Changed to support MVE variants.
2542 (neon_dyadic_misc): Changed mve_encode_qqr call.
2543 (do_mve_vbrsr): Likewise.
2544 (do_mve_vhcadd): New encoding function.
2545 (insns): Change existing to accept MVE variants and add new.
2546 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
2547 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
2548 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
2549 * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
2550 * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
2551 * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
2553 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2555 * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
2556 (insns): Change to accept MVE variants.
2557 * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
2558 * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
2559 * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
2561 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2563 * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
2564 M_MNEM_viwdup): New instruction encodings.
2565 (NEON_SHAPE_DEF): New shapes.
2566 (do_mve_viddup): New encoding function.
2567 (do_neon_dup): Change to support new MVE variants.
2568 (insns): Change existing to accept MVE variants and add new.
2569 * testsuite/gas/arm/mve-vddup-bad.d: New test.
2570 * testsuite/gas/arm/mve-vddup-bad.l: New test.
2571 * testsuite/gas/arm/mve-vddup-bad.s: New test.
2572 * testsuite/gas/arm/mve-vdup-bad.d: New test.
2573 * testsuite/gas/arm/mve-vdup-bad.l: New test.
2574 * testsuite/gas/arm/mve-vdup-bad.s: New test.
2575 * testsuite/gas/arm/mve-vidup-bad.d: New test.
2576 * testsuite/gas/arm/mve-vidup-bad.l: New test.
2577 * testsuite/gas/arm/mve-vidup-bad.s: New test.
2579 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2581 * config/tc-arm.c (do_mve_vfmas): New encoding function.
2582 (do_neon_cls): Change to support MVE variants.
2583 (do_neon_clz): Change to support MVE variants.
2584 (insns): Change to support MVE variants and add new.
2585 * testsuite/gas/arm/mve-vcls-bad.d: New test.
2586 * testsuite/gas/arm/mve-vcls-bad.l: New test.
2587 * testsuite/gas/arm/mve-vcls-bad.s: New test.
2588 * testsuite/gas/arm/mve-vclz-bad.d: New test.
2589 * testsuite/gas/arm/mve-vclz-bad.l: New test.
2590 * testsuite/gas/arm/mve-vclz-bad.s: New test.
2591 * testsuite/gas/arm/mve-vfmas-bad.d: New test.
2592 * testsuite/gas/arm/mve-vfmas-bad.l: New test.
2593 * testsuite/gas/arm/mve-vfmas-bad.s: New test.
2595 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2597 * config/tc-arm.c (enum operand_parse_code): New operands.
2598 (parse_operands): Handle new operands.
2599 (do_mve_vcmul): New encoding function.
2600 (do_vcmla): Change to support MVE variants.
2601 (do_vcadd): Change to support MVE variants.
2602 (insns): Change existing to support MVE variants and add new.
2603 * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
2604 * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
2605 * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
2606 * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
2607 * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
2608 * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
2609 * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
2610 * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
2611 * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
2612 * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
2613 * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
2614 * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
2615 * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
2616 * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
2617 * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
2618 * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
2619 * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
2620 * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
2622 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2624 * config/tc-arm.c (enum operand_parse_code): New operands.
2625 (parse_operands): Handle new operands.
2626 (enum vfp_or_neon_is_neon_bits): Moved
2627 (vfp_or_neon_is_neon): Moved
2628 (check_simd_pred_availability): Moved.
2629 (do_neon_logic): Change to accept MVE variants.
2630 (insns): Changed to accept MVE variants.
2631 * testsuite/gas/arm/mve-vand-bad.d: New test.
2632 * testsuite/gas/arm/mve-vand-bad.l: New test.
2633 * testsuite/gas/arm/mve-vand-bad.s: New test.
2634 * testsuite/gas/arm/mve-vbic-bad.d: New test.
2635 * testsuite/gas/arm/mve-vbic-bad.l: New test.
2636 * testsuite/gas/arm/mve-vbic-bad.s: New test.
2637 * testsuite/gas/arm/mve-veor-bad.d: New test.
2638 * testsuite/gas/arm/mve-veor-bad.l: New test.
2639 * testsuite/gas/arm/mve-veor-bad.s: New test.
2640 * testsuite/gas/arm/mve-vorn-bad.d: New test.
2641 * testsuite/gas/arm/mve-vorn-bad.l: New test.
2642 * testsuite/gas/arm/mve-vorn-bad.s: New test.
2643 * testsuite/gas/arm/mve-vorr-bad.d: New test.
2644 * testsuite/gas/arm/mve-vorr-bad.l: New test.
2645 * testsuite/gas/arm/mve-vorr-bad.s: New test.
2647 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2649 * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
2650 M_MNEM_vaddva): New instruction encodings.
2651 (mve_encode_rq): New encoding helper function.
2652 (do_mve_vaddlv): New encoding function.
2653 (do_mve_vaddv): New encoding function.
2654 * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
2655 * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
2656 * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
2657 * testsuite/gas/arm/mve-vaddv-bad.d: New test.
2658 * testsuite/gas/arm/mve-vaddv-bad.l: New test.
2659 * testsuite/gas/arm/mve-vaddv-bad.s: New test.
2661 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2663 * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
2664 New instruction encodings.
2665 (do_mve_vadc): New encoding instruction.
2666 (do_mve_vbrsr): Likewise.
2667 (do_mve_vsbc): Likewise.
2668 * testsuite/gas/arm/mve-vadc-bad.d: New test.
2669 * testsuite/gas/arm/mve-vadc-bad.l: New test.
2670 * testsuite/gas/arm/mve-vadc-bad.s: New test.
2671 * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
2672 * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
2673 * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
2674 * testsuite/gas/arm/mve-vsbc-bad.d: New test.
2675 * testsuite/gas/arm/mve-vsbc-bad.l: New test.
2676 * testsuite/gas/arm/mve-vsbc-bad.s: New test.
2678 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2680 * config/tc-arm.c (MVE_BAD_QREG): New error message.
2681 (enum operand_parse_code): Define new operand.
2682 (parse_operands): Handle new operand.
2683 (do_mve_vpt): Change for VPT blocks.
2684 (NEON_SHAPE_DEF): New shape.
2685 (neon_logbits): Moved.
2688 (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
2689 (do_mve_vcmp): New encoding function.
2690 (do_vfp_nsyn_cmp): Changed to support MVE variants.
2691 (insns): Change to support MVE variants of vcmp and add vpt.
2692 * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
2693 * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
2694 * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
2695 * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
2696 * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
2697 * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
2698 * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
2699 * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
2700 * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
2701 * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
2702 * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
2703 * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
2705 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2707 * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
2708 distinguish between types of scalar.
2709 (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
2710 (parse_scalar): Likewise.
2711 (parse_neon_mov): Accept MVE variant.
2712 (po_scalar_or_goto): Make use reg_type.
2713 (parse_operands): Change uses of po_scalar_or_goto.
2714 (do_vfp_sp_monadic): Change to accept MVE variants.
2715 (do_vfp_reg_from_sp): Likewise.
2716 (do_vfp_sp_from_reg): Likewise.
2717 (do_vfp_dp_rd_rm): Likewise.
2718 (do_vfp_dp_rd_rn_rm): Likewise.
2719 (do_vfp_dp_rm_rd_rn): Likewise.
2720 (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
2721 instruction encodings.
2722 (NEON_SHAPE_DEF): New shape.
2723 (do_mve_mov): New encoding fuction.
2724 (do_mve_movn): Likewise.
2725 (do_mve_movl): Likewise.
2726 (do_neon_mov): Change to accept MVE variants.
2728 (insns): Accept new MVE variants and instructions.
2729 * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
2730 * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
2731 * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
2732 * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
2733 * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
2734 * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
2736 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2738 * config/tc-arm.c (enum operand_parse_code): Add new operand.
2739 (parse_operands): Handle new operand.
2740 (do_neon_cvt_1): Handle MVE variants.
2741 (do_neon_cvttb_1): Likewise.
2742 (insns): Accept MVE variants.
2743 * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
2744 * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
2745 * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
2746 * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
2747 * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
2748 * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
2749 * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
2750 * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
2751 * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
2752 * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
2753 * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
2754 * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
2755 * testsuite/gas/arm/mve-vcvt-bad.d: New test.
2756 * testsuite/gas/arm/mve-vcvt-bad.l: New test.
2757 * testsuite/gas/arm/mve-vcvt-bad.s: New test.
2759 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2761 * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
2763 (enum shift_kind): Add SHIFT_UXTW shift kind.
2764 (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
2765 (parse_shift): Handle new shift type.
2766 (parse_address_main): Accept new addressing modes.
2767 (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
2768 M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
2769 instruction encodings.
2770 (do_mve_vstr_vldr_QI): New encoding functions.
2771 (do_mve_vstr_vldr_RQ): Likewise.
2772 (do_mve_vstr_vldr_RI): Likewise.
2773 (do_mve_vstr_vldr): Likewise.
2774 * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
2775 * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
2776 * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
2777 * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
2778 * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
2779 * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
2780 * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
2781 * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
2782 * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
2783 * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
2784 * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
2785 * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
2786 * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
2787 * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
2788 * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
2789 * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
2790 * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
2791 * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
2793 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2795 * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
2796 (BAD_EL_TYPE): New error message.
2797 (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
2798 (parse_address_main): Likewise.
2799 (group_reloc_type): Add GROUP_MVE.
2800 (enum operand_parse_code): Add new operands.
2801 (parse_operands): Handle new operands.
2802 (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
2803 M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
2804 M_MNEM_vld42, M_MNEM_vld43): New encodings.
2805 (do_mve_vst_vld): New encoding function.
2806 (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
2807 (it_fsm_pre_encode): Handle new it_instruction_type
2808 (handle_pred_state): Likewise.
2809 * testsuite/gas/arm/mve-vstld-bad.d: New test.
2810 * testsuite/gas/arm/mve-vstld-bad.l: New test.
2811 * testsuite/gas/arm/mve-vstld-bad.s: New test.
2813 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2815 * config/tc-arm.c (BAD_MVE_AUTO): New error message.
2816 (BAD_MVE_SRCDEST): Likewise.
2817 (mark_feature_used): Diagnose MVE only instructions when in
2818 auto-detection mode or -march=all.
2819 (enum operand_parse_code): Define new operand.
2820 (parse_operands): Handle new operand.
2821 (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
2822 (mve_encode_qqq): New encoding helper function.
2823 (do_mve_vmull): New encoding function.
2824 (insns): Handle new instructions.
2825 * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
2826 * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
2827 * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
2829 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2831 * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
2832 (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
2833 (enum operand_parse_code): Handle new operands.
2834 (parse_operands): Likewise.
2835 (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
2836 M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
2837 M_MNEM_vmlsdavax): Define new encodings.
2838 (NEON_SHAPE_DEF): Add new shape.
2839 (neon_check_type): Use BAD_SIMD_TYPE.
2840 (mve_encode_rqq): New encoding helper function.
2841 (do_mve_vabav, do_mve_vmladav): New encoding functions.
2843 * testsuite/gas/arm/mve-vabav-bad.d: New test.
2844 * testsuite/gas/arm/mve-vabav-bad.l: New test.
2845 * testsuite/gas/arm/mve-vabav-bad.s: New test.
2846 * testsuite/gas/arm/mve-vmladav-bad.d: New test.
2847 * testsuite/gas/arm/mve-vmladav-bad.l: New test.
2848 * testsuite/gas/arm/mve-vmladav-bad.s: New test.
2849 * testsuite/gas/arm/mve-vmlav-bad.d: New test.
2850 * testsuite/gas/arm/mve-vmlav-bad.l: New test.
2851 * testsuite/gas/arm/mve-vmlav-bad.s: New test.
2852 * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
2853 * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
2854 * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
2856 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2858 * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
2859 (insns): Change vabs and vneg entries to accept MVE variants.
2860 * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
2861 * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
2862 * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
2863 * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
2864 * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
2865 * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
2867 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2869 * config/tc-arm.c (enum it_instruction_type): Rename to...
2870 (enum pred_instruction_type): ... this. Include VPT types.
2871 (it_insn_type): Rename to ...
2872 (pred_insn_type): .. this.
2873 (arm_it): Change comment.
2874 (enum arm_reg_type): Add new value.
2875 (reg_expected_msgs): New entry.
2876 (asm_opcode): Add mayBeVecPred member.
2877 (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
2878 MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
2879 (arm_vcond_hsh): New table for vector condition codes.
2880 (now_it): Rename to ...
2881 (now_pred): ... this.
2882 (now_it_compatible): Rename to ...
2883 (now_pred_compatible): ... this.
2884 (in_it_block): Rename to ...
2885 (in_pred_block): ... this.
2886 (handle_it_state): Rename to ...
2887 (handle_pred_state): ... this. And change it to accept VPT blocks.
2888 (set_it_insn_type): Rename to ...
2889 (set_pred_insn_type): ... this.
2890 (set_it_insn_type_nonvoid): Rename to ...
2891 (set_pred_insn_type_nonvoid): ... this.
2892 (set_it_insn_type_last): Rename to ...
2893 (set_pred_insn_type_last): ... this.
2894 (record_feature_use): Moved.
2895 (mark_feature_used): Likewise.
2896 (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
2897 (emit_insn): Use renamed functions and variables.
2898 (enum operand_parse_code): Add new operands.
2899 (parse_operands): Handle new operands.
2900 (do_scalar_fp16_v82_encode): Change predication detection.
2901 (do_it): Use renamed functions and variables.
2902 (do_t_add_sub): Likewise.
2903 (do_t_arit3): Likewise.
2904 (do_t_arit3c): Likewise.
2905 (do_t_blx): Likewise.
2906 (do_t_branch): Likewise.
2907 (do_t_bkpt_hlt1): Likewise.
2908 (do_t_branch23): Likewise.
2909 (do_t_bx): Likewise.
2910 (do_t_bxj): Likewise.
2911 (do_t_cond): Likewise.
2912 (do_t_csdb): Likewise.
2913 (do_t_cps): Likewise.
2914 (do_t_cpsi): Likewise.
2915 (do_t_cbz): Likewise.
2916 (do_t_it): Likewise.
2917 (do_mve_vpt): New function to handle VPT blocks.
2918 (encode_thumb2_multi): Use renamed functions and variables.
2919 (do_t_ldst): Use renamed functions and variables.
2920 (do_t_mov_cmp): Likewise.
2921 (do_t_mvn_tst): Likewise.
2922 (do_t_mul): Likewise.
2923 (do_t_nop): Likewise.
2924 (do_t_neg): Likewise.
2925 (do_t_rsb): Likewise.
2926 (do_t_setend): Likewise.
2927 (do_t_shift): Likewise.
2928 (do_t_smc): Likewise.
2929 (do_t_tb): Likewise.
2930 (do_t_udf): Likewise.
2931 (do_t_loloop): Likewise.
2932 (do_neon_cvt_1): Likewise.
2933 (do_vfp_nsyn_cvt_fpv8): Likewise.
2934 (do_vsel): Likewise.
2935 (do_vmaxnm): Likewise.
2936 (do_vrint_1): Likewise.
2937 (do_crypto_2op_1): Likewise.
2938 (do_crypto_3op_1): Likewise.
2939 (do_crc32_1): Likewise.
2940 (it_fsm_pre_encode): Likewise.
2941 (it_fsm_post_encode): Likewise.
2942 (force_automatic_it_block_close): Likewise.
2943 (check_it_blocks_finished): Likewise.
2944 (check_pred_blocks_finished): Likewise.
2945 (arm_cleanup): Likewise.
2946 (now_it_add_mask): Rename to ...
2947 (now_pred_add_mask): ... this. And use new variables and functions.
2948 (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
2949 (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
2950 (neon_check_type): Generalize error message.
2951 (mve_encode_qqr): New MVE generic encoding function.
2952 (neon_dyadic_misc): Change to accept MVE variants.
2953 (do_neon_dyadic_if_su): Likewise.
2954 (do_neon_addsub_if_i): Likewise.
2955 (do_neon_dyadic_long): Likewise.
2956 (vfp_or_neon_is_neon): Add extra checks.
2957 (check_simd_pred_availability): Helper function to check SIMD
2958 instruction availability with respect to predication.
2959 (enum opcode_tag): New suffix value.
2960 (opcode_lookup): Change to handle VPT blocks.
2961 (new_automatic_it_block): Rename to ...
2962 (close_automatic_it_block): ...this.
2963 (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
2964 toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
2965 NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
2967 (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
2968 (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
2969 variants. Add entries for vscclrm, and vpst.
2970 (md_begin): Add arm_vcond_hsh initialization.
2971 * config/tc-arm.h (enum it_state): Rename to...
2972 (enum pred_state): ...this.
2973 (struct current_it): Rename to...
2974 (struct current_pred): ...this.
2975 (enum pred_type): New enum.
2976 (struct arm_segment_info_type): Use current_pred.
2977 * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
2978 * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
2979 * testsuite/gas/arm/dotprod-illegal.l: Update error message.
2980 * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
2981 * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
2982 * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
2983 * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
2984 * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
2985 * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
2986 * testsuite/gas/arm/mve-vpst-bad.d: New test.
2987 * testsuite/gas/arm/mve-vpst-bad.l: New test.
2988 * testsuite/gas/arm/mve-vpst-bad.s: New test.
2989 * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
2991 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2993 * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
2994 (armv8_1m_main_ext_table): Add new extensions.
2995 (aeabi_set_public_attributes): Translate new features to new build attributes.
2996 (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
2997 * doc/c-arm.texi: Document new extensions and new build attribute.
2999 2019-05-15 John Darrington <john@darrington.wattle.id.au>
3001 * config/tc-s12z.c (register_prefix): New variable. (md_show_usage,
3002 md_parse_option): parse the new option.
3003 (lex_reg_name): Scan the prefix if one is set.
3004 * doc/c-s12z.texi (S12Z-Opts): Document the new option.
3005 * testsuite/gas/s12z/reg-prefix.d: New file.
3006 * testsuite/gas/s12z/reg-prefix.s: New file.
3007 * testsuite/gas/s12z/s12z.exp: Add them.
3009 2019-05-14 John Darrington <john@darrington.wattle.id.au>
3011 * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
3013 2019-05-15 Alan Modra <amodra@gmail.com>
3015 * config/tc-csky.c (md_convert_frag): Initialise trailing
3016 padding for COND_JUMP_PIC.
3018 2019-05-15 Alan Modra <amodra@gmail.com>
3020 * dwarf2dbg.c: Whitespace fixes.
3021 (get_filenum): Don't strdup "file". Adjust error message.
3022 (dwarf2_directive_filename): Use an unsigned type for "num".
3023 Catch truncation of file number and overflow of get_filenum
3024 XRESIZEVEC multiplication. Delete dead code.
3026 2019-05-15 Alan Modra <amodra@gmail.com>
3029 * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
3030 chars in setting endp.
3032 2019-05-14 Nick Clifton <nickc@redhat.com>
3035 * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
3036 illegal register numbers.
3038 2019-05-10 Nick Clifton <nickc@redhat.com>
3041 * macro.c (get_any_string): Increase size of buffer used to hold
3042 decimal value of expression result.
3043 * dw2gencfi.c (get_debugseg_name): Handle an empty name.
3044 * dwarf2dbg.c (get_filenum): Catch integer wraparound when
3045 extending allocate file array.
3046 (dwarf2_directive_filename): Add extra checks of the computed file
3048 * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
3050 (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
3052 * config/tc-i386.c (i386_output_nops): Catch an attempt to
3053 generate nops of negative lengths.
3054 * as.h (MAX_LITTLENUMS): Move definition to here from...
3055 * config/atof-ieee.c: ...here.
3056 * config/tc-aarch64.c: ...here.
3057 * config/tc-arc.c: ...here.
3058 * config/tc-arm.c: ...here.
3059 * config/tc-epiphany.c: ...here.
3060 * config/tc-i386.c: ...here.
3061 * config/tc-ia64.c: ...here. (And correct the value).
3062 * config/tc-m32c.c: ...here.
3063 * config/tc-m32r.c: ...here.
3064 * config/tc-metag.c: ...here.
3065 * config/tc-microblaze.c: ...here.
3066 * config/tc-nds32.c: ...here.
3067 * config/tc-or1k.c: ...here.
3068 * config/tc-score.c: ...here.
3069 * config/tc-score7.c: ...here.
3070 * config/tc-tic4x.c: ...here.
3071 * config/tc-tilegx.c: ...here.
3072 * config/tc-tilepro.c: ...here.
3073 * config/tc-visium.c: ...here.
3074 * config/tc-sh.c (md_assemble): Add check for an instruction with
3076 * config/tc-mips.c (mips_lookup_insn): Add check for very short
3078 * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
3080 (tic54x_start_line_hook): Check for an empty line.
3081 (next_line_shows_parallel): Do not walk off the end of the string.
3082 (tic54x_macro_start): Check for too much macro nesting.
3083 (tic54x_start_label): Add label_start parameter. Use this
3084 parameter to check the first character of the label.
3086 * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
3087 line_start variable to tic54x_start_label.
3089 2019-05-10 Faraz Shahbazker <fshahbazker@wavecomp.com>
3091 * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
3092 Add expansions for MIPS r6.
3093 * testsuite/gas/mips/add.s: Enable tests for R6.
3094 * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
3095 * testsuite/gas/mips/mipsr6@add.d: Likewise.
3096 * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
3097 * gas/testsuite/gas/mips/mips.exp: Run the new test.
3099 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3101 * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
3103 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3105 * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
3106 * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
3107 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
3108 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
3109 * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
3110 * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
3111 * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
3112 * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
3113 * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
3114 * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
3115 * testsuite/gas/aarch64/sve2.d: Test new instructions.
3116 * testsuite/gas/aarch64/sve2.s: Test new instructions.
3118 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3120 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
3123 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3125 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
3128 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3130 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
3133 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3135 * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
3136 (parse_address_main): Account for new addressing mode [Zn.S, Xm].
3137 (parse_operands): Handle new SVE_ADDR_ZX operand.
3139 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3141 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
3144 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3146 * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
3148 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
3150 * config/tc-aarch64.c: Add command line architecture feature flags
3151 "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
3152 * doc/c-aarch64.texi: Document new architecture feature flags.
3154 2019-05-08 Alan Modra <amodra@gmail.com>
3156 * testsuite/gas/elf/dwarf2-1.s,
3157 * testsuite/gas/elf/dwarf2-2.s,
3158 * testsuite/gas/elf/dwarf2-5.s,
3159 * testsuite/gas/elf/dwarf2-7.s,
3160 * testsuite/gas/elf/dwarf2-8.s,
3161 * testsuite/gas/elf/dwarf2-9.s,
3162 * testsuite/gas/elf/dwarf2-10.s,
3163 * testsuite/gas/elf/dwarf2-11.s,
3164 * testsuite/gas/elf/dwarf2-12.s,
3165 * testsuite/gas/elf/dwarf2-13.s,
3166 * testsuite/gas/elf/dwarf2-14.s,
3167 * testsuite/gas/elf/dwarf2-15.s,
3168 * testsuite/gas/elf/dwarf2-16.s,
3169 * testsuite/gas/elf/dwarf2-17.s,
3170 * testsuite/gas/elf/dwarf2-18.s,
3171 * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
3173 * testsuite/gas/elf/dwarf2-1.d,
3174 * testsuite/gas/elf/dwarf2-2.d,
3175 * testsuite/gas/elf/dwarf2-5.d,
3176 * testsuite/gas/elf/dwarf2-7.d,
3177 * testsuite/gas/elf/dwarf2-8.d,
3178 * testsuite/gas/elf/dwarf2-9.d,
3179 * testsuite/gas/elf/dwarf2-10.d,
3180 * testsuite/gas/elf/dwarf2-11.d,
3181 * testsuite/gas/elf/dwarf2-12.d,
3182 * testsuite/gas/elf/dwarf2-13.d,
3183 * testsuite/gas/elf/dwarf2-14.d,
3184 * testsuite/gas/elf/dwarf2-15.d,
3185 * testsuite/gas/elf/dwarf2-16.d,
3186 * testsuite/gas/elf/dwarf2-17.d,
3187 * testsuite/gas/elf/dwarf2-18.d,
3188 * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
3189 Remove avr, pru, tile, xtensa from xfails. Update expected output.
3190 * testsuite/gas/elf/elf.exp: Sort targets.
3191 (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
3192 for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
3193 * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
3195 2019-05-08 Alan Modra <amodra@gmail.com>
3197 * config/tc-xtensa.c (opt_linkrelax): New variable.
3198 (md_parse_option): Set it here.
3199 (md_begin): Copy opt_linkrelax to linkrelax.
3201 2019-05-07 Alexandre Oliva <aoliva@redhat.com>
3203 * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
3204 * testsuite/gas/elf/dwarf2-19.d: Likewise.
3206 2019-05-07 Alan Modra <amodra@gmail.com>
3208 * symbols.c (use_complex_relocs_for): Formatting. Factor out
3211 2019-05-06 Andrew Bennett <andrew.bennett@imgtec.com>
3212 Faraz Shahbazker <fshahbazker@wavecomp.com>
3214 * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
3215 (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
3216 (mips_after_parse_args): Translate EVA to EVA_R6.
3217 * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
3218 * testsuite/gas/mips/eva.s: Likewise.
3219 * testsuite/gas/mips/ase-errors-1.l: Check errors for
3221 * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
3223 2019-05-06 Alan Modra <amodra@gmail.com>
3225 * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
3228 2019-05-06 Alan Modra <amodra@gmail.com>
3230 * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
3231 relocs, and VLE sdarel relocs.
3232 * testsuite/gas/ppc/power4.d: Adjust.
3234 2019-05-05 Alexandre Oliva <aoliva@redhat.com>
3236 * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
3237 views of prior locs.
3238 (dwarf2_gen_line_info_1): Skip heads.
3239 (size_inc_line_addr, emit_inc_line_addr): Drop
3240 DW_LNS_advance_pc for zero addr delta.
3241 (dwarf2_finish): Assign views for heads of segments.
3242 * testsuite/gas/elf/dwarf2-19.d: New.
3243 * testsuite/gas/elf/dwarf2-19.s: New.
3244 * testsuite/gas/elf/elf.exp: Test it.
3246 2019-05-04 Alan Modra <amodra@gmail.com>
3248 * config/tc-m32c.c (insn_size): Delete static var.
3249 (md_begin): Don't set it.
3250 (m32c_md_end): Delete.
3251 (md_assemble): Add insn_size auto var.
3252 * config/tc-m32c.h (md_end): Don't define.
3253 (m32c_md_end): Delete.
3254 (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
3255 * testsuite/gas/all/align.d: Remove m32c from notarget list.
3256 * testsuite/gas/all/incbin.d: Likewise.
3257 * testsuite/gas/elf/dwarf2-11.d: Likewise.
3258 * testsuite/gas/macros/semi.d: Likewise.
3259 * testsuite/gas/all/gas.exp (do_comment): Similarly.
3261 2019-05-02 H.J. Lu <hongjiu.lu@intel.com>
3264 * config/tc-i386.c (process_suffix): Issue a warning to IRET
3265 without a suffix for .code16gcc.
3266 * testsuite/gas/i386/jump16.s: Add tests for iretX.
3267 * testsuite/gas/i386/jump16.d: Updated.
3268 * testsuite/gas/i386/jump16.e: New file.
3270 2019-05-01 Sudakshina Das <sudi.das@arm.com>
3272 * config/tc-aarch64.c (parse_operands): Add case for
3273 AARCH64_OPND_TME_UIMM16.
3274 (aarch64_features): Add "tme".
3275 * doc/c-aarch64.texi: Document the same.
3276 * testsuite/gas/aarch64/tme-invalid.d: New test.
3277 * testsuite/gas/aarch64/tme-invalid.l: New test.
3278 * testsuite/gas/aarch64/tme-invalid.s: New test.
3279 * testsuite/gas/aarch64/tme.d: New test.
3280 * testsuite/gas/aarch64/tme.s: New test.
3282 2019-04-29 John Darrington <john@darrington.wattle.id.au>
3284 * testsuite/gas/s12z/truncated.d: New file.
3285 * testsuite/gas/s12z/truncated.s: New file.
3286 * testsuite/gas/s12z/s12z.exp: Add new test.
3288 2019-04-26 Andrew Bennett <andrew.bennett@imgtec.com>
3289 Faraz Shahbazker <fshahbazker@wavecomp.com>
3291 * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
3292 M_SCDP_AB>: New cases and expansions for paired instructions.
3293 * testsuite/gas/mips/llpscp-32.s: New test source.
3294 * testsuite/gas/mips/llpscp-64.s: Likewise.
3295 * testsuite/gas/mips/llpscp-32.d: New test.
3296 * testsuite/gas/mips/llpscp-64.d: Likewise.
3297 * testsuite/gas/mips/mips.exp: Run the new tests.
3298 * testsuite/gas/mips/r6.s: Add new instructions to test source.
3299 * testsuite/gas/mips/r6-64.s: Likewise.
3300 * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
3301 * testsuite/gas/mips/r6-64-n64.d: Likewise.
3302 * testsuite/gas/mips/r6-n32.d: Likewise.
3303 * testsuite/gas/mips/r6-n64.d: Likwwise.
3304 * testsuite/gas/mips/r6.d: Likewise.
3306 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
3309 * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
3310 to IRET for .code16gcc.
3311 * testsuite/gas/i386/jump16.s: Add IRET tests.
3312 * testsuite/gas/i386/jump16.d: Updated.
3314 2019-04-25 Alexandre Oliva <aoliva@redhat.com>
3315 Alan Modra <amodra@gmail.com>
3318 * frags.c (frag_gtoffset_p): New.
3319 * frags.h (frag_gtoffset_p): Declare it.
3320 * expr.c (resolve_expression): Use it.
3322 2019-04-24 Alan Modra <amodra@gmail.com>
3325 * symbols.c (resolve_symbol_value): When handling symbols
3326 marked as sy_flags.resolved, return correct value for the
3327 case of expression symbols left as an O_symbol expression.
3328 Merge O_symbol code handling undefined and common symbols with
3329 code handling special cases of expression symbols. Use
3330 seg_left to test for undefined and common symbols. Don't
3331 leave an O_symbol expression when X_add_symbol resolves to
3332 the absolute_section. Init final_val later.
3333 * testsuite/gas/mmix/basep-7.d: Adjust expected output.
3335 2019-04-24 John Darrington <john@darrington.wattle.id.au>
3337 * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
3338 and BCLR instructions with an invalid mode.
3339 * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
3341 2019-04-19 Nick Clifton <nickc@redhat.com>
3344 * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
3345 to the relaxation function.
3346 * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
3347 number of iterations. Make sure that our internal iteration limit
3348 does not exceed this external iteration limit.
3350 2019-04-18 Matthew Fortune <matthew.fortune@mips.com>
3352 * config/tc-mips.c (match_non_zero_reg_operand): Update
3354 * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
3356 2019-04-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3358 * config/tc-msp430.c (msp430_make_init_symbols): Define
3359 __crt0_run_{preinit,init,fini}_array symbols if
3360 .{preinit,init,fini}_array sections exist.
3361 * testsuite/gas/msp430/fini-array.d: New test.
3362 * testsuite/gas/msp430/init-array.d: New test.
3363 * testsuite/gas/msp430/preinit-array.d: New test.
3364 * testsuite/gas/msp430/fini-array.s: New test source.
3365 * testsuite/gas/msp430/init-array.s: New test source.
3366 * testsuite/gas/msp430/preinit-array.s: New test source.
3367 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3369 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3371 * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
3372 symbol when .lower.bss or .either.bss sections exist.
3373 Define __crt0_movedata when .lower.data or .either.data sections exist.
3374 * testsuite/gas/msp430/either-data-bss-sym.d: New test.
3375 * testsuite/gas/msp430/low-data-bss-sym.d: New test.
3376 * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
3377 * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
3378 * testsuite/gas/msp430/msp430.exp: Run new tests.
3379 Enable large code model when running -mdata-region={upper,either}
3382 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3384 * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
3385 OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
3386 (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
3387 OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
3389 (md_show_usage): Likewise.
3390 (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
3391 "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
3392 (md_longopts): Likewise.
3393 (warn_eint_nop): Update comment.
3394 (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
3395 prev_insn_is_dint or we are assembling for 430 ISA.
3396 (msp430_operands): Only call warn_unsure_interrupt if
3397 do_unknown_interrupt_nops == TRUE.
3398 * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
3399 * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
3400 * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
3401 * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
3402 * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
3404 * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
3405 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
3407 2019-04-16 Alan Modra <amodra@gmail.com>
3409 * testsuite/gas/all/weakref1.d: xfail nds32.
3411 2019-04-16 Alan Modra <amodra@gmail.com>
3413 * testsuite/gas/all/gas.exp: Remove ns32k xfails.
3414 * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
3416 2019-04-16 Alan Modra <amodra@gmail.com>
3418 * write.h: Don't include bit_fix.h.
3419 (struct fix): Rearrange some fields. Delete fx_im_disp and
3420 fx_bit_fixP. Use bitfields for fx_size and fx_pcrel_adjust.
3421 * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
3422 (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
3423 (print_fixup): Don't print im_disp.
3424 * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
3426 * config/tc-dlx.c (md_apply_fix): Remove wrong debug code. Set
3427 fx_no_overflow when fx_bit_fixP.
3428 * config/tc-dlx.h: Include bit_fix.h.
3429 (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
3430 * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
3431 fx_no_overflow when bit_fixP.
3432 * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
3433 (fix_im_disp, fix_bit_fixP): Adjust to suit.
3434 (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
3436 2019-04-16 Alan Modra <amodra@gmail.com>
3438 * write.h (struct fix <fx_where>): Make unsigned.
3439 (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
3440 * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
3441 "size" parameters unsigned long.
3442 (fix_new_internal): Likewise. Adjust error format string to suit.
3443 * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
3444 * config/tc-sparc.c (md_apply_fix): Likewise.
3445 * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
3446 * config/tc-score7.c (s7_convert_frag): Likewise.
3448 2019-04-16 Alan Modra <amodra@gmail.com>
3450 * frags.h (struct frag <fr_fix>): Use unsigned type.
3451 * frags.c (frag_new): Assert that current size exceeds
3452 old_frags_var_max_size.
3453 * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
3454 * listing.c (calc_hex): Likewise.
3455 * write.c (cvt_frag_to_fill, write_relocs): Likewise.
3456 * config/tc-arc.c (md_convert_frag): Likewise.
3457 * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
3458 * config/tc-mips.c (md_convert_frag): Likewise.
3459 * config/tc-rl78.c (md_convert_frag): Likewise.
3460 * config/tc-rx.c (md_convert_frag): Likewise.
3461 * config/tc-sparc.c (md_apply_fix): Likewise.
3462 * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
3463 (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
3465 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3467 * config/tc-arm.c (parse_sys_vldr_vstr): New function.
3468 (OP_VLDR): New enum operand_parse_code enumerator.
3469 (parse_operands): Add logic for OP_VLDR.
3470 (do_t_vldr_vstr_sysreg): New function.
3471 (do_vldr_vstr): Likewise.
3472 (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
3473 (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
3474 Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
3475 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
3476 uses of VLDR and VSTR.
3477 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
3479 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
3481 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
3484 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3486 * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
3487 (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3489 (parse_vfp_reg_list): Add new partial_match parameter. Set
3490 *partial_match to TRUE if at least one element in the register list has
3491 matched. Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
3492 register lists which expect VPR as last element in the list.
3493 (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
3495 (s_arm_unwind_save_vfp): Likewise.
3496 (enum operand_parse_code): New OP_VRSDVLST enumerator.
3497 (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
3498 Handle new OP_VRSDVLST case.
3499 (do_t_vscclrm): New function.
3500 (insns): New entry for VSCCLRM instruction.
3501 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
3503 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
3504 for above instructions.
3505 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
3507 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
3508 for above instructions.
3510 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3512 * config/tc-arm.c (enum reg_list_els): Define earlier and add
3513 REGLIST_RN and REGLIST_CLRM enumerators.
3514 (parse_reg_list): Add etype parameter to distinguish between regular
3515 core register list and CLRM register list. Add logic to
3516 recognize CLRM register list.
3517 (parse_vfp_reg_list): Assert type is not for core register list.
3518 (s_arm_unwind_save_core): Update call to parse_reg_list to new
3520 (enum operand_parse_code): Declare OP_CLRMLST enumerator.
3521 (parse_operands): Update call to parse_reg_list to new prototype. Add
3522 logic for OP_CLRMLST.
3523 (encode_thumb2_ldmstm): Rename into ...
3524 (encode_thumb2_multi): This. Add do_io parameter. Add logic to
3525 encode CLRM and guard LDM/STM only code by do_io.
3526 (do_t_ldmstm): Adapt to use encode_thumb2_multi.
3527 (do_t_push_pop): Likewise.
3528 (do_t_clrm): New function.
3529 (insns): Define CLRM.
3530 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
3531 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
3532 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
3533 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
3534 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
3536 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3537 Andre Vieira <andre.simoesdiasvieira@arm.com>
3539 * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
3540 for the LR operand and optional LR operand.
3541 (parse_operands): Add switch cases for OP_LR and OP_oLR for
3542 both type checking and value checking.
3543 (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
3544 (v8_1_loop_reloc): New helper function for handling labels
3545 for the low overhead loop instructions.
3546 (do_t_loloop): New function to encode DLS, WLS and LE.
3547 (insns): New entries for WLS, DLS and LE.
3548 (md_pcrel_from_section): New switch case
3549 for BFD_RELOC_ARM_THUMB_LOOP12.
3550 (md_appdy_fix): Likewise.
3551 (tc_gen_reloc): Likewise.
3552 * testsuite/gas/arm/armv8_1-m-tloop.s: New.
3553 * testsuite/gas/arm/armv8_1-m-tloop.d: New.
3554 * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
3555 * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
3556 * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
3558 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3559 Andre Vieira <andre.simoesdiasvieira@arm.com>
3561 * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
3562 (do_t_v8_1_branch): New switch case for bfcsel.
3564 (insns): New instruction for bfcsel.
3565 (md_pcrel_from_section): New switch case
3566 for BFD_RELOC_THUMB_PCREL_BFCSEL.
3567 (md_appdy_fix): Likewise
3568 (tc_gen_reloc): Likewise.
3569 * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
3570 * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
3572 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3574 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3575 BFD_RELOC_ARM_THUMB_BF13.
3576 (md_appdy_fix): Likewise.
3577 (tc_gen_reloc): Likewise.
3579 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3580 Andre Vieira <andre.simoesdiasvieira@arm.com>
3582 * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
3583 (do_t_v8_1_branch): New switch case for bfl.
3584 (insns): New instruction for bfl.
3585 * testsuite/gas/arm/armv8_1-m-bfl.d: New.
3586 * testsuite/gas/arm/armv8_1-m-bfl.s: New.
3587 * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
3588 * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
3589 * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
3590 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
3591 * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
3593 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3595 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3596 BFD_RELOC_ARM_THUMB_BF19.
3597 (md_appdy_fix): Likewise.
3598 (tc_gen_reloc): Likewise.
3600 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3602 * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
3603 (do_t_v8_1_branch): New switch cases for bfx and bflx.
3604 (insns): New instruction for bfx and bflx.
3605 * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
3606 * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
3607 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
3608 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
3609 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
3611 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3612 Andre Vieira <andre.simoesdiasvieira@arm.com>
3614 * config/tc-arm.c (T16_32_TAB): New entries for bf.
3615 (do_t_branch_future): New.
3616 (insns): New instruction for bf.
3617 * testsuite/gas/arm/armv8_1-m-bf.d: New.
3618 * testsuite/gas/arm/armv8_1-m-bf.s: New.
3619 * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
3620 * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
3621 * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
3622 * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
3623 * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
3625 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3627 * config/tc-arm.c (md_pcrel_from_section): New switch case for
3628 BFD_RELOC_ARM_THUMB_BF17.
3629 (md_appdy_fix): Likewise.
3630 (tc_gen_reloc): Likewise.
3632 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3634 * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
3635 (arm_it): Member reloc renamed relocs and updated to an array.
3636 Rest: Replace all occurrences of reloc to relocs[0].
3638 2019-04-15 Sudakshina Das <sudi.das@arm.com>
3640 * config/tc-arm.c (md_pcrel_from_section): New switch case
3641 for BFD_RELOC_THUMB_PCREL_BRANCH5.
3642 (v8_1_branch_value_check): New function to check branch
3644 (md_appdy_fix): New switch case for
3645 BFD_RELOC_THUMB_PCREL_BRANCH5.
3646 (tc_gen_reloc): Likewise.
3648 2019-04-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
3650 * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
3651 (armv8_1m_main_ext_table): New extension table.
3652 (arm_archs): Use the new extension table.
3653 * doc/c-arm.texi: Add missing arch and document new extensions.
3654 * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
3655 * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
3656 * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
3658 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
3660 * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
3661 Tag_CPU_arch build attribute value. Reindent.
3662 (get_aeabi_cpu_arch_from_fset): Update assert.
3663 (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
3664 * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
3666 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3668 * config/tc-mips.c (mips_cpu_info_table): Add i6500. Update
3669 default ASEs for i6400.
3670 * doc/c-mips.texi (-march): Document i6500.
3671 * testsuite/gas/mips/elf_mach_i6400.d: New test.
3672 * testsuite/gas/mips/elf_mach_i6500.d: New test.
3673 * testsuite/gas/mips/mips.exp: Run the new tests.
3675 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
3677 * config/tc-mips.c (mips_set_options) <init_ase>: New field.
3678 (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
3679 (file_mips_check_options): Propagate initial ASE settings.
3680 (mips_after_parse_args, parse_code_option): Track the initial
3681 ASE settings for a CPU.
3682 (s_mipsset): Restore the initial ASE settings when reverting
3683 to the default arch.
3684 * testsuite/gas/mips/elf_mach_p6600.d: New test.
3685 * testsuite/gas/mips/mips.exp: Run the new test.
3687 2019-04-12 John Darrington <john@darrington.wattle.id.au>
3689 config/tc-s12z.h: Remove definition of macro TC_M68K
3691 2019-04-01 John Darrington <john@darrington.wattle.id.au>
3693 config/tc-s12z.c: Use bfd_boolean where appropriate.
3695 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3697 * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
3698 * testsuite/gas/xtensa/loop-relax.d: New test definition.
3699 * testsuite/gas/xtensa/loop-relax.s: New test source.
3700 * testsuite/gas/xtensa/text-section-literals-1a.d: New test
3702 * testsuite/gas/xtensa/text-section-literals-2.d: New test
3704 * testsuite/gas/xtensa/text-section-literals-2.s: New test
3706 * testsuite/gas/xtensa/text-section-literals-2a.d: New test
3708 * testsuite/gas/xtensa/text-section-literals-3.d: New test
3710 * testsuite/gas/xtensa/text-section-literals-3.s: New test
3712 * testsuite/gas/xtensa/text-section-literals-4.d: New test
3714 * testsuite/gas/xtensa/text-section-literals-4.s: New test
3716 * testsuite/gas/xtensa/text-section-literals-4a.d: New test
3719 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3721 * testsuite/gas/xtensa/all.exp: Remove all expect-based
3722 tests and all explicit run_dump_test / run_list_test
3723 invocations. Add run_dump_tests for all .d files in the
3725 * testsuite/gas/xtensa/entry_align.d: New test definition.
3726 * testsuite/gas/xtensa/entry_align.l: New test output.
3727 * testsuite/gas/xtensa/entry_misalign.d: New test definition.
3728 * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
3729 * testsuite/gas/xtensa/j_too_far.d: New test definition.
3730 * testsuite/gas/xtensa/j_too_far.l: New test output.
3731 * testsuite/gas/xtensa/loop_align.d: New test definition.
3732 * testsuite/gas/xtensa/loop_misalign.d: New test definition.
3733 * testsuite/gas/xtensa/trampoline-2.d: New test definition.
3734 * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
3735 * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
3737 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3739 * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
3741 (get_literal_pool_location): Only search for the literal pool
3742 when auto litpools is used, otherwise take one recorded in the
3743 tc_segment_info_data.
3744 (xtensa_assign_litpool_addresses): New function.
3745 (xtensa_move_literals): Don't duplicate 'literal pool location
3746 required...' error message. Call xtensa_assign_litpool_addresses.
3748 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
3750 * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
3751 (xtensa_mark_literal_pool_location): Don't add fill frag to literal
3752 section that records literal pool location.
3753 (md_begin): Call xtensa_mark_literal_pool_location when text
3754 section literals or auto litpools are used.
3755 (xtensa_elf_section_change_hook): Call
3756 xtensa_mark_literal_pool_location when text section literals or
3757 auto litpools are used, there's no literal pool location defined
3758 for the current section and it's not .init or .fini.
3759 * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
3760 * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
3761 * testsuite/gas/xtensa/auto-litpools.d: Likewise.
3763 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3765 * config/tc-aarch64.c (process_omitted_operand): Add case for
3767 (parse_operands): Likewise.
3768 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
3769 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3770 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3771 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3773 2019-04-11 Sudakshina Das <sudi.das@arm.com>
3775 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
3776 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
3777 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
3778 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
3780 2019-04-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3782 * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
3783 * testsuite/gas/i386/solaris/solaris.exp: New driver.
3784 * testsuite/gas/i386/solaris/reloc64.d,
3785 testsuite/gas/i386/solaris/x86-64-jump.d,
3786 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
3787 testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
3788 testsuite/gas/i386/solaris/x86-64-nop-3.d,
3789 testsuite/gas/i386/solaris/x86-64-nop-4.d,
3790 testsuite/gas/i386/solaris/x86-64-nop-5.d,
3791 testsuite/gas/i386/solaris/x86-64-relax-2.d,
3792 testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
3793 * testsuite/gas/i386/reloc64.d,
3794 testsuite/gas/i386/x86-64-jump.d,
3795 testsuite/gas/i386/x86-64-mpx-branch-1.d,
3796 testsuite/gas/i386/x86-64-mpx-branch-2.d,
3797 testsuite/gas/i386/x86-64-nop-3.d,
3798 testsuite/gas/i386/x86-64-nop-4.d,
3799 testsuite/gas/i386/x86-64-nop-5.d,
3800 testsuite/gas/i386/x86-64-relax-2.d,
3801 testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
3803 2019-04-10 Alan Modra <amodra@gmail.com>
3805 * config/te-cloudabi.h: New file.
3806 * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
3807 rather than TARGET_OS to select cloudabi.
3808 * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
3809 * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
3811 2019-04-09 Robert Suchanek <robert.suchanek@mips.com>
3813 * testsuite/gas/mips/mips.exp: Run hwr-names test.
3814 * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
3816 * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
3818 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3820 * config/tc-i386.c (output_insn): Support
3821 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
3822 * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
3823 * testsuite/gas/i386/property-2.d: Updated.
3824 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3826 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
3828 * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
3829 * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
3832 2019-04-05 H.J. Lu <hongjiu.lu@intel.com>
3834 * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
3835 * testsuite/gas/i386/property-2.d: New file.
3836 * testsuite/gas/i386/property-2.s: Likewise.
3837 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
3839 2019-04-05 Xuepeng Guo <xuepeng.guo@intel.com>
3841 * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
3842 (cpu_noarch): Add noavx512_bf16.
3843 * doc/c-i386.texi: Document avx512_bf16.
3844 * testsuite/gas/i386/avx512_bf16.d: New file.
3845 * testsuite/gas/i386/avx512_bf16.s: Likewise.
3846 * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
3847 * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
3848 * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
3849 * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
3850 * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
3851 * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
3852 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
3853 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
3854 * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
3855 * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
3856 * testsuite/gas/i386/i386.exp: Add BF16 related tests.
3858 2019-04-05 Alan Modra <amodra@gmail.com>
3860 * testsuite/gas/ppc/bc.s,
3861 * testsuite/gas/ppc/bcat.d,
3862 * testsuite/gas/ppc/bcaterr.d,
3863 * testsuite/gas/ppc/bcaterr.l,
3864 * testsuite/gas/ppc/bcy.d,
3865 * testsuite/gas/ppc/bcyerr.d,
3866 * testsuite/gas/ppc/bcyerr.l: New tests.
3867 * testsuite/gas/ppc/ppc.exp: Run them.
3869 2019-04-05 Alan Modra <amodra@gmail.com>
3871 * testsuite/gas/ppc/476.d: Remove trailing spaces.
3872 * testsuite/gas/ppc/a2.d: Likewise.
3873 * testsuite/gas/ppc/booke.d: Likewise.
3874 * testsuite/gas/ppc/booke_xcoff.d: Likewise.
3875 * testsuite/gas/ppc/e500.d: Likewise.
3876 * testsuite/gas/ppc/e500mc.d: Likewise.
3877 * testsuite/gas/ppc/e6500.d: Likewise.
3878 * testsuite/gas/ppc/htm.d: Likewise.
3879 * testsuite/gas/ppc/power6.d: Likewise.
3880 * testsuite/gas/ppc/power8.d: Likewise.
3881 * testsuite/gas/ppc/power9.d: Likewise.
3882 * testsuite/gas/ppc/vle.d: Likewise.
3884 2019-04-04 Peter Bergner <bergner@linux.ibm.com>
3887 * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
3888 btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
3889 bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
3890 bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
3891 bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
3892 bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
3893 bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
3894 bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
3895 bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
3896 beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
3897 bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
3898 buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
3899 bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
3900 bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
3901 bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
3902 bttarl+): Add tests of extended mnemonics.
3903 * testsuite/gas/ppc/power8.d: Likewise. Update previous bctar tests
3904 to expect new extended mnemonics.
3905 * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
3906 to not use illegal BO value. Use a more convenient BI value.
3907 * testsuite/gas/ppc/a2.d: Update tests for new expect output.
3909 2019-04-03 Max Filippov <jcmvbkbc@gmail.com>
3911 * config/tc-xtensa.c (convert_frag_immed): Drop
3912 convert_frag_immed_finish_loop invocation.
3913 (convert_frag_immed_finish_loop): Drop declaration and
3915 * config/xtensa-relax.c (widen_spec_list): Replace loop
3916 widening that uses addi/addmi with widening that uses l32r
3919 2019-04-01 Andre Vieira <andre.simoesdiasvieira@arm.com>
3921 * config/tc-arm.c (arm_ext_table): New struct type.
3922 (arm_arch_option_table): Add new 'arm_ext_table' field.
3923 (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
3924 (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
3925 armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
3926 armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
3927 armv85a_ext_table, armv8m_main_ext_table,
3928 armv8r_ext_table): New architecture extension tables.
3929 (ARM_ARCH_OPT): Add new default field.
3930 (ARM_ARCH_OPT2): New macro.
3931 (arm_archs): Extend some architectures with the new architecture
3932 extension tables mentioned above.
3933 (arm_extensions): Add DEPRECATED comment with instructions to
3935 (arm_parse_extension): Change to use new extension tables.
3936 (arm_parse_cpu): Don't change existing behavior.
3937 (arm_parse_arch): Change to use new extension tables.
3938 * doc/c-arm.texi: Document new architecture extensions.
3939 * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
3940 extension option rather than -mfpu and change expected behaviour to
3942 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
3943 * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
3944 * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
3945 * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
3946 * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
3947 * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
3948 * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
3949 * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
3950 * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
3951 * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
3952 * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
3953 * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
3954 * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
3955 * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
3956 * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
3957 * testsuite/gas/arm/armv8m.main+fp.d: New.
3958 * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
3959 * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
3960 * testsuite/gas/arm/attr-ext-fpv5.d: New.
3961 * testsuite/gas/arm/attr-ext-idiv.d: New.
3962 * testsuite/gas/arm/attr-ext-mp.d: New.
3963 * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
3964 * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
3965 * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
3966 * testsuite/gas/arm/attr-ext-sec.d: New.
3967 * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
3968 * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
3969 * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
3970 * testsuite/gas/arm/attr-ext-vfpv3.d: New.
3971 * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
3972 * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
3973 * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
3974 * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
3975 * testsuite/gas/arm/attr-ext-vfpv4.d: New.
3976 * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
3977 * testsuite/gas/arm/fpv5-d16.s: New.
3978 * testsuite/gas/arm/fpv5-sp-d16.s: New.
3980 2019-03-28 Alan Modra <amodra@gmail.com>
3983 * testsuite/gas/ppc/476.d: Update mtfsb*.
3984 * testsuite/gas/ppc/a2.d: Likewise.
3986 2019-03-21 Alan Modra <amodra@gmail.com>
3988 * emul.h (struct emulation): Delete strip_underscore.
3989 * emul-target.h (emul_strip_underscore): Don't define.
3990 (emul_struct_name): Update initialization.
3992 2019-03-21 Alan Modra <amodra@gmail.com>
3994 * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
3995 * config/tc-pdp11.c (md_apply_fix): Likewise.
3996 * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
3997 BFD_RELOC_16, and BFD_RELOC_64.
3998 * testsuite/gas/all/gas.exp: Move target exclusions for forward
3999 test, but not cr16, to..
4000 * testsuite/gas/all/forward.d: ..here, with explanation. Remove
4001 d10v, d30v, and pdp11 xfails.
4003 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
4005 * config/tc-i386.c (optimize_encoding): Don't check AVX for
4006 EVEX vector load/store optimization. Check both operands for
4007 ZMM register. Update EVEX vector load/store opcode check.
4008 Choose EVEX Disp8 over VEX Disp32.
4009 * testsuite/gas/i386/optimize-1.d: Updated.
4010 * testsuite/gas/i386/optimize-1a.d: Likewise.
4011 * testsuite/gas/i386/optimize-2.d: Likewise.
4012 * testsuite/gas/i386/optimize-4.d: Likewise.
4013 * testsuite/gas/i386/optimize-5.d: Likewise.
4014 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
4015 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
4016 * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
4017 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4018 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
4019 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
4020 * testsuite/gas/i386/optimize-1.s: Add ZMM register load
4022 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
4024 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
4027 * config/tc-i386.c (optimize_encoding): Check only
4028 cpu_arch_flags.bitfield.cpuavx512vl.
4029 * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
4030 * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
4032 * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
4033 * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
4035 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
4038 * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
4039 x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
4040 Remove optimize-6c and x86-64-optimize-7c tests.
4041 * testsuite/gas/i386/noavx-3.l: Updated.
4042 * testsuite/gas/i386/noavx-4.d: Likewise.
4043 * testsuite/gas/i386/noavx-5.d: Likewise.
4044 * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
4045 * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
4046 * testsuite/gas/i386/nosse-5.s: Likewise.
4047 * testsuite/gas/i386/optimize-6a.d: Removed.
4048 * testsuite/gas/i386/optimize-6c.d: Likewise.
4049 * testsuite/gas/i386/optimize-7.d: Likewise.
4050 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
4051 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
4052 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
4053 * testsuite/gas/i386/optimize-6a.l: New file.
4054 * testsuite/gas/i386/optimize-6a.s: Likewise.
4055 * testsuite/gas/i386/optimize-7.l: Likewise.
4056 * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
4057 * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
4058 * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
4060 2019-03-18 Alan Modra <amodra@gmail.com>
4062 * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
4063 * as.c (macro_expr): Likewise.
4064 * macro.c (buffer_and_nest): Likewise.
4065 * read.c (temp_ilp): Remove FIXME.
4067 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4069 * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
4070 * testsuite/gas/i386/avx512bw-intel.d: Likewise.
4071 * testsuite/gas/i386/avx512bw.d: Likewise.
4072 * testsuite/gas/i386/avx512f-intel.d: Likewise.
4073 * testsuite/gas/i386/avx512f.d: Likewise.
4074 * testsuite/gas/i386/disp32.d: Likewise.
4075 * testsuite/gas/i386/intel-regs.d: Likewise.
4076 * testsuite/gas/i386/pseudos.d: Likewise.
4077 * testsuite/gas/i386/x86-64-disp32.d: Likewise.
4078 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
4080 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4083 * config/tc-i386.c (optimize_encoding): Encode 128-bit and
4084 256-bit EVEX vector register load/store instructions as VEX
4085 vector register load/store instructions for -O1.
4086 * doc/c-i386.texi: Update -O1 documentation.
4087 * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
4088 * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
4089 load/store instructions.
4090 * testsuite/gas/i386/optimize-2.s: Likewise.
4091 * testsuite/gas/i386/optimize-3.s: Likewise.
4092 * testsuite/gas/i386/optimize-5.s: Likewise.
4093 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
4094 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4095 * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
4096 * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
4097 * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
4098 * testsuite/gas/i386/optimize-1.d: Updated.
4099 * testsuite/gas/i386/optimize-2.d: Likewise.
4100 * testsuite/gas/i386/optimize-3.d: Likewise.
4101 * testsuite/gas/i386/optimize-4.d: Likewise.
4102 * testsuite/gas/i386/optimize-5.d: Likewise.
4103 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
4104 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4105 * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
4106 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
4107 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
4108 * testsuite/gas/i386/optimize-7.d: New file.
4109 * testsuite/gas/i386/optimize-7.s: Likewise.
4110 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
4111 * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
4113 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
4115 * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
4116 VEX/EVEX vector register clearing instructions with 128-bit VEX
4117 vector register clearing instructions at -O1.
4118 * doc/c-i386.texi: Update -O1 and -O2 documentation.
4119 * testsuite/gas/i386/i386.exp: Run optimize-1a and
4121 * testsuite/gas/i386/optimize-1a.d: New file.
4122 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
4124 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
4127 * config/tc-i386.c: Include <limits.h> if it exists and try
4128 including <sys/param.h> if we have it.
4129 (INT_MAX): Define if not defined.
4130 (md_parse_option): Set optimize to INT_MAX for -Os.
4131 * testsuite/gas/i386/optimize-2.s: Add a test.
4132 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
4133 * testsuite/gas/i386/optimize-2.d: Updated.
4134 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
4136 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
4139 * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
4140 with 128-bit VEX encoding only when AVX is enabled and with
4141 128-bit EVEX encoding only when AVX512VL is enabled.
4142 * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
4143 * testsuite/gas/i386/optimize-6.s: New file.
4144 * testsuite/gas/i386/optimize-6a.d: Likewise.
4145 * testsuite/gas/i386/optimize-6b.d: Likewise.
4146 * testsuite/gas/i386/optimize-6c.d: Likewise.
4147 * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
4148 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
4149 * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
4150 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
4151 * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
4153 2019-03-15 Li Hao <li.hao296@zte.com.cn>
4156 * config/tc-i386.c (parse_insn): Check mnemp before using it to
4157 determine if a suffix can be trimmed.
4159 2019-03-13 Christian Eggers <ceggers@gmx.de>
4161 * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
4163 2019-03-13 Christian Eggers <ceggers@gmx.de>
4165 * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
4167 2019-03-13 Christian Eggers <ceggers@gmx.de>
4169 * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
4171 2019-03-13 Christian Eggers <ceggers@gmx.de>
4173 * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
4175 2019-03-13 Christian Eggers <ceggers@gmx.de>
4177 * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
4178 (out_debug_aranges, out_debug_info): Likewise.
4180 2019-03-13 Christian Eggers <ceggers@gmx.de>
4182 * symbols.h (symbol_temp_new_now_octets): Declare.
4183 (symbol_set_value_now_octets, symbol_octets_p): Declare.
4184 * symbols.c (struct symbol_flags): New member sy_octets.
4185 (symbol_temp_new_now_octets): New function.
4186 (resolve_symbol_value): Return octets instead of bytes if
4188 (symbol_set_value_now_octets): New function.
4189 (symbol_octets_p): New function.
4191 2019-03-13 Christian Eggers <ceggers@gmx.de>
4193 * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
4195 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com>
4197 * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
4198 * testsuite/gas/s390/zarch-arch13.d: Likewise.
4200 2019-02-27 Matthew Malcomson <matthew.malcomson@arm.com>
4202 * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
4203 * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
4204 * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
4205 * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
4207 * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
4208 * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
4210 2019-02-24 Alan Modra <amodra@gmail.com>
4212 * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
4214 2019-02-24 Alan Modra <amodra@gmail.com>
4217 * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
4218 of section to ensure file contents cover aligned section size.
4220 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4222 * config/tc-arm.c (arm_cpus): Add neoverse-n1.
4223 * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
4225 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4227 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
4228 * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
4230 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4232 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
4233 * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
4235 2019-02-19 Paul Hua <paul.hua.gm@gmail.com>
4237 * NEWS: Mention -m[no-]fix-loongson3-llsc.
4238 * configure.ac: Add --enable-mips-fix-loongson3-llsc.
4239 Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
4240 * config.in: Regenerated.
4241 * configure: Likewise.
4242 * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
4244 (options): New OPTION_FIX_LOONGSON3_LLSC,
4245 OPTION_NO_FIX_LOONGSON3_LLSC.
4246 (md_longopts): Add -m[no-]fix-loongson3-llsc.
4247 (md_begin): Initialize sync insn.
4248 (fix_loongson3_llsc): New.
4249 (append_insn): Call fix_loongson3_llsc.
4250 (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
4251 OPTION_NO_FIX_LOONGSON3_LLSC.
4252 (md_show_usage): Display -m[no-]fix-loongson3-llsc.
4253 * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
4254 --enable-mips-fix-loongson3-llsc=[yes|no].
4256 2019-02-10 H.J. Lu <hongjiu.lu@intel.com>
4259 * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
4261 * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
4263 * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
4265 * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
4266 * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
4267 * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
4268 * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
4269 * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
4270 * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
4271 * config/tc-rx.h (TC_FRAG_INIT): Likewise.
4272 * config/tc-score.h (TC_FRAG_INIT): Likewise.
4273 * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
4274 * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
4275 * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
4276 * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
4277 (alignment ? ((1 << alignment) - 1) : 1)
4278 (i386_tc_frag_data): Add max_bytes.
4279 (TC_FRAG_INIT): Add and track max_bytes.
4280 (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
4281 fragP->tc_frag_data.max_bytes.
4282 * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
4284 2019-02-08 Jim Wilson <jimw@sifive.com>
4286 * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
4287 (riscv_ip) <'C'>: Add 'z' support.
4289 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4291 * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
4293 * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
4294 * testsuite/gas/arm/hlt.d: New test.
4295 * testsuite/gas/arm/hlt.s: New test.
4297 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4299 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
4300 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
4302 2019-02-07 Tamar Christina <tamar.christina@arm.com>
4305 * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
4306 * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
4308 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
4310 * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
4311 64-bit boundaries for the GR6.
4312 * testsuite/gas/visium/allinsn_gr6.s: Tweak.
4313 * testsuite/gas/visium/allinsn_gr6.d: Likewise.
4314 * testsuite/gas/visium/bra-1.d: New test.
4315 * testsuite/gas/visium/bra-1.s: Likewise.
4316 * testsuite/gas/visium/visium.exp: Run bra-1 test.
4318 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4320 * config/tc-s12z.c (lex_imm): Add new argument exp_o.
4321 (emit_reloc): New function.
4322 (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
4323 can be either 2 bytes or 3 bytes long.
4324 * testsuite/gas/s12z/mov-imm-reloc.d: New file.
4325 * testsuite/gas/s12z/mov-imm-reloc.s: New file.
4326 * testsuite/gas/s12z/s12z.exp: Add them.
4328 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4330 * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
4331 * testsuite/gas/s12z/pc-rel-bad.d: New file.
4332 * testsuite/gas/s12z/pc-rel-bad.l: New file.
4333 * testsuite/gas/s12z/pc-rel-bad.s: New file.
4334 * testsuite/gas/s12z/pc-rel-good.d: New file.
4335 * testsuite/gas/s12z/pc-rel-good.s: New file.
4336 * testsuite/gas/s12z/s12z.exp: Add them.
4338 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4340 * config/tc-s12z.c (tfr): Emit warning if operands are the same.
4341 * testsuite/gas/s12z/exg.d: New test case.
4342 * testsuite/gas/s12z/exg.l: New file.
4344 2019-01-31 John Darrington <john@darrington.wattle.id.au>
4346 * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
4347 immediate mode operands should be permitted.
4348 * testsuite/s12z/imm-dest.d: New file.
4349 * testsuite/s12z/imm-dest.l: New file.
4350 * testsuite/s12z/imm-dest.s: New file.
4351 * testsuite/s12z/s12z.exp: Add them.
4353 2019-01-31 Andreas Krebbel <krebbel@linux.ibm.com>
4355 * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
4356 * doc/c-s390.texi: Document arch13 march option.
4357 * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
4358 * testsuite/gas/s390/zarch-arch13.d: New test.
4359 * testsuite/gas/s390/zarch-arch13.s: New test.
4360 * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
4363 2019-01-31 Alan Modra <amodra@gmail.com>
4365 * config/tc-alpha.c (md_apply_fix): Correct range checks for
4366 BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
4367 * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
4368 * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
4370 2019-01-28 Max Filippov <jcmvbkbc@gmail.com>
4372 * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
4373 symbols as done in md_apply_fix.
4374 * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
4376 2019-01-28 Nick Clifton <nickc@redhat.com>
4378 * po/fr.po: Updated French translation.
4379 * po/ru.po: Updated Russian translation.
4381 2019-01-28 Alan Modra <amodra@gmail.com>
4383 * configure.ac (ac_checking): Set from bfd/development.sh
4384 development variable.
4385 * configure: Regenerate.
4387 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4389 * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
4390 stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
4391 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
4392 stg, stzg, st2g and stz2g.
4393 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4394 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4395 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4397 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4399 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
4400 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4401 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4402 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4404 2019-01-25 Sudakshina Das <sudi.das@arm.com>
4405 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4407 * config/tc-aarch64.c (parse_address_main): Remove support for
4408 [base]! address expression.
4409 (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
4410 (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
4411 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
4413 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
4414 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
4415 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
4417 2019-01-25 Wu Heng <wu.heng@zte.com.cn>
4420 * macro.c (getstring): Check array bound before accessing.
4422 2019-01-25 Alan Modra <amodra@gmail.com>
4426 * read.c (stringer): Delete assertion.
4428 2019-01-21 Nick Clifton <nickc@redhat.com>
4430 * po/uk.po: Updated Ukranian translation.
4432 2019-01-19 Nick Clifton <nickc@redhat.com>
4434 * config.in: Regenerate.
4435 * configure: Regenerate.
4436 * po/gas.pot: Regenerate.
4438 2018-06-24 Nick Clifton <nickc@redhat.com>
4440 2.32 branch created.
4442 2019-01-17 Tamar Christina <tamar.christina@arm.com>
4444 * testsuite/gas/arm/archv6t2-1-pe.d: New test.
4445 * testsuite/gas/arm/archv6t2-1.d: Skip pe.
4446 * testsuite/gas/arm/csdb.d: Skip pe.
4447 * testsuite/gas/arm/sb-thumb1-pe.d: New test.
4448 * testsuite/gas/arm/sb-thumb1.d: Skip pe.
4449 * testsuite/gas/arm/sb-thumb2-pe.d: New test.
4450 * testsuite/gas/arm/sb-thumb2.d: Skip pe.
4451 * testsuite/gas/arm/udf.d: Skip pe.
4453 2019-01-16 Kito Cheng <kito@andestech.com>
4455 * testsuite/gas/riscv/attribute-empty.d: New.
4457 2019-01-16 Kito Cheng <kito@andestech.com>
4458 Nelson Chu <nelson@andestech.com>
4460 * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
4461 (riscv_set_options): Add `arch_attr` field.
4462 (riscv_opts): Set default value for arch_attr.
4463 (riscv_write_out_arch_attr): New.
4464 (riscv_set_public_attributes): Likewise.
4465 (riscv_md_end): Likewise.
4466 (riscv_convert_symbolic_attribute): Likewise.
4467 (s_riscv_attribute): Likewise.
4468 (explicit_arch_attr): Likewise.
4469 (riscv_pseudo_table): Add .attribute to the table.
4470 (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
4471 enumeration constants.
4472 (md_longopts): Add `march-attr' and `mno-arch-attr' options.
4473 (md_parse_option): Handle the new options.
4474 (md_show_usage): Document the `march-attr' option.
4475 * config/tc-riscv.h (md_end): Define as riscv_md_end
4476 (riscv_md_end): Declare.
4477 (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
4478 riscv_convert_symbolic_attribute.
4479 (riscv_convert_symbolic_attribute): Declare.
4480 (start_assemble): Declare.
4481 * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
4482 * testsuite/gas/elf/section2.e-riscv: New.
4483 * testsuite/gas/riscv/attribute-01.d: New test
4484 * testsuite/gas/riscv/attribute-02.d: Likewise.
4485 * testsuite/gas/riscv/attribute-03.d: Likewise.
4486 * testsuite/gas/riscv/attribute-04.d: Likewise.
4487 * testsuite/gas/riscv/attribute-04.s: Likewise.
4488 * testsuite/gas/riscv/attribute-05.d: Likewise.
4489 * testsuite/gas/riscv/attribute-05.s: Likewise.
4490 * testsuite/gas/riscv/attribute-06.d: Likewise.
4491 * testsuite/gas/riscv/attribute-06.s: Likewise.
4492 * testsuite/gas/riscv/attribute-07.d: Likewise.
4493 * testsuite/gas/riscv/attribute-07.s: Likewise.
4494 * testsuite/gas/riscv/attribute-08.d: Likewise.
4495 * testsuite/gas/riscv/attribute-08.s: Likewise.
4496 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
4497 * testsuite/gas/riscv/attribute-unknown.s: Likewise.
4498 * testsuite/gas/riscv/empty.l: Likewise.
4499 * doc/c-riscv.texi (.attribute): Add documentation.
4500 * configure.ac (--enable-default-riscv-attribute): New options.
4501 * configure: Re-generate.
4502 * config.in: Re-generate.
4504 2019-01-16 John Darrington <john@darrington.wattle.id.au>
4506 * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
4507 before the contents.
4508 * testsuite/gas/s12z/labels.d: New file.
4509 * testsuite/gas/s12z/labels.s: New file.
4510 * testsuite/gas/s12z/s12z.exp: Add them.
4511 * config/tc-s12z.c (tfr): Change as_bad to as_warn.
4512 Also fix message typo and semantics.
4513 * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
4515 * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
4518 2019-01-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4520 * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
4521 (insns) [ARM_VARIANT]: Modified.
4522 (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
4524 * testsuite/gas/arm/archv6t2-1.d: New test.
4525 * testsuite/gas/arm/archv6t2-1.s: Likewise.
4526 * testsuite/gas/arm/archv6t2-2.d: Likewise.
4528 2019-01-11 Alan Modra <amodra@gmail.com>
4531 * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
4532 * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
4534 2019-01-10 Nick Clifton <nickc@redhat.com>
4537 * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
4538 fact that control characters are now displayed as escape
4540 * testsuite/gas/mips/mips16-e.d: Likewise.
4541 * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
4542 * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
4543 * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
4544 * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
4545 * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
4546 * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
4547 * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
4548 * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
4549 * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
4550 * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
4551 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
4552 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
4553 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
4554 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
4555 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
4557 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
4559 * testsuite/gas/mips/mipsel16-e.d: Likewise.
4560 * testsuite/gas/mips/mipsr6@msa.d: Likewise.
4561 * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
4562 * testsuite/gas/mips/r6-64-n32.d: Likewise.
4563 * testsuite/gas/mips/r6-64-n64.d: Likewise.
4564 * testsuite/gas/mips/r6-n32.d: Likewise.
4565 * testsuite/gas/mips/r6-n64.d: Likewise.
4566 * testsuite/gas/mips/r6.d: Likewise.
4567 * testsuite/gas/mips/tmips16-e.d: Likewise.
4568 * testsuite/gas/mips/tmipsel16-e.d: Likewise.
4569 * testsuite/gas/mn10300/relax.d: Likewise.
4571 2019-01-09 John Darrington <john@darrington.wattle.id.au>
4573 * testsuite/gas/s12z/jsr.s: New case.
4574 * testsuite/gas/s12z/jsr.d: New case.
4576 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
4578 * configure: Regenerate.
4580 2019-01-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4582 * config/tc-aarch64.c (aarch64_cpus): Add ares.
4583 * doc/c-aarch64.texi (-mcpu): Document ares value.
4585 2019-01-08 Alan Modra <amodra@gmail.com>
4587 * testsuite/gas/rx/rx.exp: Create generated test source in
4589 * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
4590 * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
4591 * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
4592 * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
4593 * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
4594 * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
4595 * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
4596 * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
4597 * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
4598 * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
4599 * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
4600 * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
4601 * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
4602 * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
4603 * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
4604 * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
4605 * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
4606 * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
4607 * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
4608 * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
4609 * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
4610 * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
4611 * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
4612 * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
4613 * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
4614 * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
4615 * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
4616 * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
4617 * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
4618 * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
4619 * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
4620 * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
4621 * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
4622 * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
4623 * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
4624 * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
4625 * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
4626 * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
4627 * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
4628 * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
4629 * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
4630 * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
4631 * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
4632 * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
4633 * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
4634 * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
4635 * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
4636 * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
4637 * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
4638 * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
4639 * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
4640 * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
4641 * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
4642 * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
4643 * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
4644 * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
4645 * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
4646 * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
4647 * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
4648 * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
4649 * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
4650 * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
4651 * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
4652 * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
4653 * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
4654 * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
4655 * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
4656 * testsuite/gas/rx/xor.d: Add #source line.
4658 2019-01-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
4660 * config/tc-arm.c (arm_cpus): Add ares.
4661 * doc/c-arm.texi (-mcpu): Document ares value.
4663 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
4665 * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
4666 (rx_bfield): Add prototype.
4667 (rx_post): Likewise.
4668 * config/rx-parse.y: Add v3 instructions and Double FPU registers.
4671 (rx_check_v3): New. check v3 type.
4672 (rx_check_dfpu): New. check have double support.
4673 (double_condition_table): New. dcmp<cond> contiditon.
4674 (check_condition): Multiple condition support.
4675 (rx_lex): RXv3 instructions support.
4676 Add parse dcmp<cond> instruction and Double FPU registers.
4677 (immediate): Disable optimize in dmov #imm case.
4678 (displacement): Add double displacement in dmov instraction.
4679 * config/tc-rx.c (rx_use_conventional_section_names):
4680 Invert default value in rx-*-linux target.
4681 (cpu_type): Add additional ELF flags.
4682 (cpu_type_list): Add RXv3.
4683 (md_parse_option): Refer elf_flags from cpu_type_list.
4684 (md_show_usage): Add rxv3 and rxv3-dfpu.
4685 (rx_bytesT): Add post byte.
4686 (rx_bfield): New. generate bfmov / bfmovz "imm" field.
4687 (rx_post): New. Set instruction post byte.
4688 (md_assemble): Add post byte.
4689 doc/c-rx.texi: Add cpu types.
4690 * testsuite/gas/rx/Xtod.d: New.
4691 * testsuite/gas/rx/Xtod.sm: New.
4692 * testsuite/gas/rx/bfmov.d: New.
4693 * testsuite/gas/rx/bfmov.sm: New.
4694 * testsuite/gas/rx/dabs.d: New.
4695 * testsuite/gas/rx/dabs.sm: New.
4696 * testsuite/gas/rx/dadd.d: New.
4697 * testsuite/gas/rx/dadd.sm: New.
4698 * testsuite/gas/rx/dcmp.d: New.
4699 * testsuite/gas/rx/dcmp.sm: New.
4700 * testsuite/gas/rx/ddiv.d: New.
4701 * testsuite/gas/rx/ddiv.sm: New.
4702 * testsuite/gas/rx/dmov.d: New.
4703 * testsuite/gas/rx/dmov.sm: New.
4704 * testsuite/gas/rx/dmul.d: New.
4705 * testsuite/gas/rx/dmul.sm: New.
4706 * testsuite/gas/rx/dneg.d: New.
4707 * testsuite/gas/rx/dneg.sm: New.
4708 * testsuite/gas/rx/dpopm.d: New.
4709 * testsuite/gas/rx/dpopm.sm: New.
4710 * testsuite/gas/rx/dpushm.d: New.
4711 * testsuite/gas/rx/dpushm.sm: New.
4712 * testsuite/gas/rx/dround.d: New.
4713 * testsuite/gas/rx/dround.sm: New.
4714 * testsuite/gas/rx/dsqrt.d: New.
4715 * testsuite/gas/rx/dsqrt.sm: New.
4716 * testsuite/gas/rx/dsub.d: New.
4717 * testsuite/gas/rx/dsub.sm: New.
4718 * testsuite/gas/rx/dtoX.d: New.
4719 * testsuite/gas/rx/dtoX.sm: New.
4720 * testsuite/gas/rx/macros.inc: Add double FPU registers.
4721 * testsuite/gas/rx/mvfdc.d: New.
4722 * testsuite/gas/rx/mvfdc.sm: New.
4723 * testsuite/gas/rx/mvfdr.d: New.
4724 * testsuite/gas/rx/mvfdr.sm: New.
4725 * testsuite/gas/rx/mvtdc.d: New.
4726 * testsuite/gas/rx/mvtdc.sm: New.
4727 * testsuite/gas/rx/rstr.d: New.
4728 * testsuite/gas/rx/rstr.sm: New.
4729 * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
4730 * testsuite/gas/rx/save.d: New.
4731 * testsuite/gas/rx/save.sm: New.
4732 * testsuite/gas/rx/xor.d: New.
4733 * testsuite/gas/rx/xor.sm: Add pattern.
4735 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4738 * macro.c (get_any_string): Check for end of input whilst scanning
4741 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
4744 * read.c (stringer): Fix handling of missing '>' character at end
4747 2019-01-01 Alan Modra <amodra@gmail.com>
4749 Update year range in copyright notice of all files.
4751 For older changes see ChangeLog-2018
4753 Copyright (C) 2019 Free Software Foundation, Inc.
4755 Copying and distribution of this file, with or without modification,
4756 are permitted in any medium without royalty provided the copyright
4757 notice and this notice are preserved.
4763 version-control: never