1 2020-09-07 Mark Wielaard <mark@klomp.org>
3 * dwarf2dbg.c (DWARF2_RNGLISTS_VERSION): New constant.
4 (out_debug_ranges): Add ranges_sym argument and set it.
5 (out_debug_rnglists): New function.
6 (out_debug_info): Change ranges_seg argument to ranges_sym
7 and use it to set DW_AT_ranges value.
8 (dwarf2_finish): Remove ranges_seg, add ranges_sym. For
9 DWARF2_VERSION 5 call out_debug_rnglists.
11 2020-09-07 Mark Wielaard <mark@klomp.org>
13 * dwarf2dbg.c (dwarf2_directive_filename): Initialize with_md5 to
15 * gas/testsuite/gas/elf/dwarf-5-file0.s: Add a random bignum.
17 2020-09-01 Mark Wielaard <mark@klomp.org>
19 * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_sec_offset for DWARF
22 2020-09-02 Alan Modra <amodra@gmail.com>
24 * expr.c (add_to_result, subtract_from_result): Use unsigned
25 addition and subtraction.
27 2020-09-02 Alan Modra <amodra@gmail.com>
29 * config/tc-z80.c (is_overflow): Avoid too large shift.
31 2020-09-02 Alan Modra <amodra@gmail.com>
33 * config/tc-sparc.c (in_signed_range): Use an unsigned type for
36 2020-09-02 Alan Modra <amodra@gmail.com>
38 * config/tc-nios2.c (md_apply_fix): Avoid too large shift.
40 2020-09-02 Alan Modra <amodra@gmail.com>
42 * config/tc-mips.c (load_register): Avoid too large shift.
44 2020-09-02 Alan Modra <amodra@gmail.com>
46 * config/tc-d30v.c (parallel_ok): Use 1UL for left shift expression.
48 2020-09-02 Alan Modra <amodra@gmail.com>
50 * config/rx-parse.y (rx_intop): Avoid too large shifts.
51 (rx_intop, rx_uintop, rx_disp3op, rx_disp5op, displacement),
52 (rtsd_immediate): Use correctly typed unsigned variables.
54 2020-09-02 Alan Modra <amodra@gmail.com>
56 * config/obj-macho.c (obj_mach_o_zerofill): Correct type of
57 constant shifted left.
59 2020-09-02 Alan Modra <amodra@gmail.com>
61 * config/bfin-lex.l: Use an unsigned type for "value".
63 2020-09-02 Alan Modra <amodra@gmail.com>
65 * config/tc-pdp11.c (md_number_to_chars): Condition nbytes=8 code
68 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
70 * config/tc-csky.c (csky_cpus): Add ck803r3.
71 (CSKY_ISA_803R3): Define.
72 (CSKY_ISA_803R2): Refine, use CSKY_ISA_803R1.
74 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
76 * testsuite/gas/csky/cskyv2_dsp.d : Fix Encode of mulsws.
78 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
80 * config/tc-csky.c (struct literal): New member bignum.
81 (dump_literals): Handle big constant.
82 (enter_literal): Likewise.
83 (parse_type_freg): Handle vector register.
85 2020-09-01 H.J. Lu <hongjiu.lu@intel.com>
87 * doc/as.texi: Document the .tls_common directive.
89 2020-09-01 Alan Modra <amodra@gmail.com>
95 * config/tc-arm.c (struct arm_it): Make size, size_req, cond and
96 uncond_value unsigned.
97 (parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t.
98 (parse_big_immediate): Cast generic_bignum elements to unsigned.
99 (encode_thumb32_immediate): Shift left 0xffU.
100 (double_to_single): Make sign unsigned. Tidy.
101 (move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or
103 (vfp_or_neon_is_neon): Adjust inst.uncond_value expression.
104 (md_assemble): Likewise.
105 (handle_pred_state): Make cond unsigned.
106 (thumb32_negate_data_op): Make variables unsigned.
107 (md_apply_fix): Make value and newval unsigned, adjust uses.
109 2020-08-31 Alan Modra <amodra@gmail.com>
112 * config/tc-z8k.c (buffer): Use unsigned char.
113 (apply_fix): Use unsigned char* pointers.
114 (build_bytes): Likewise and mask nibbles when packing.
116 2020-08-31 Alan Modra <amodra@gmail.com>
119 * config/tc-v850.c (parse_register_list): Shift 1u left.
121 2020-08-31 Alan Modra <amodra@gmail.com>
124 * config/tc-tic6x.c (md_apply_fix): Use unsigned variables.
126 2020-08-31 Alan Modra <amodra@gmail.com>
129 * config/tc-sh.c (assemble_ppi): Use unsigned variables.
131 2020-08-31 Alan Modra <amodra@gmail.com>
134 * config/tc-score.c (s3_apply_fix): Use unsigned variables.
135 * config/tc-score7.c (s7_apply_fix): Likewise.
137 2020-08-31 Alan Modra <amodra@gmail.com>
140 * config/tc-nios2.c (nios2_parse_reglist): Shift 1UL left.
142 2020-08-31 Alan Modra <amodra@gmail.com>
145 * config/tc-nios2.c (md_chars_to_number): Cast buf[i] before shifting.
147 2020-08-31 Alan Modra <amodra@gmail.com>
152 * config/tc-mips.c (operand_reg_mask): Shift 1u left.
153 (load_register): Shift 0xffffU left.
155 2020-08-31 Alan Modra <amodra@gmail.com>
158 * config/tc-metag.c (md_chars_to_number): Make retval unsigned.
160 2020-08-31 Alan Modra <amodra@gmail.com>
163 * config/tc-mep.c (md_convert_frag): Use uint32_t for addend and
166 2020-08-31 Alan Modra <amodra@gmail.com>
169 * config/tc-riscv.c (riscv_ip): Cast X_add_number passed to
170 VALID_* macros to unsigned.
172 2020-08-31 Alan Modra <amodra@gmail.com>
174 * config/tc-crx.c: Formatting.
175 (CRX_PRINT): Wrap params in parentheses. Remove parens from uses
177 (reset_vars, get_register, get_copregister, get_optype, get_opbits),
178 (get_opflags, get_number_of_operands, parse_operand, gettrap),
179 (handle_LoadStor, getconstant, check_range, getreg_image),
180 (parse_operands, parse_insn, print_operand, print_constant),
181 (exponent2scale, mask_reg, process_label_constant, set_operand),
182 (assemble_insn, print_insn): Delete unnecessary forward declaration.
183 (print_insn): Make static.
184 (print_constant): Make "constant" unsigned.
185 (assemble_insn): Tidy REVERSE_MATCH index calc.
186 * expr.c (generic_bignum_to_int32): Cast elements to valueT.
188 2020-08-31 Alan Modra <amodra@gmail.com>
191 * config/tc-z80.c (is_overflow): Use 1UL in mask shift expression.
193 2020-08-30 Alan Modra <amodra@gmail.com>
195 * config/tc-tic4x.c (tic4x_gen_to_words): Rewrite mantissa
196 overflow test without UB. Avoid other UB shifts by making them
199 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
201 * config/tc-csky.c (csky_error_state): New member 'arg_int'.
202 (SET_ERROR_NUMBER): Rename to SET_ERROR_STRING.
203 (SET_ERROR_INTEGER): New.
204 (err_formats): Add error format for ERROR_FREG_OVER_RANGE and
205 ERROR_VREG_OVER_RANGE.
206 (csky_show_error): Pass an integer argument for some error
208 (parse_exp): Call SET_ERROR_STRING instead of SET_ERROR_NUMBER.
209 (parse_rt): Likewise.
210 (parse_type_ctrlreg): Likewise.
211 (csky_get_reg_val): Likewise.
212 (is_reglist_legal): Likewise.
213 (is_freglist_legal): Likewise.
214 (is_reglist_dash_comma_legal): Likewise.
215 (is_reg_lshift_illegal): Likewise.
216 (is_psr_bit): Likewise.
217 (parse_type_cpreg): Likewise.
218 (parse_type_cpcreg): Likewise.
219 (parse_type_areg): Likewise.
220 (parse_type_freg): Likewise.
221 (parse_ldst_imm): Likewise and call SET_ERROR_INTEGER.
222 (get_operand_value): Likewise.
223 (parse_operands_op): Likewise and call is_imm_within_range,
224 is_imm_within_range_ext and is_oimm_within_range.
225 (md_assemble): Likewise.
226 (is_imm_within_range): New.
227 (is_imm_within_range_ext): Rename from is_imm_over_range.
228 (is_oimm_within_range): Rename from is_oimm_over_range.
229 (v2_work_add_sub): Call SET_ERROR_INTEGER.
230 (csky_rolc): call is_imm_within_range instead of
233 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
235 * config/tc-csky.c (md_begin): Add warning when -mdsp and
236 -mcpu=ck803ern are both added.
237 (parse_ldst_imm): Fix error message.
239 2020-08-30 Alan Modra <amodra@gmail.com>
241 * testsuite/gas/cr16/cbitb_test.d: Update expected output.
242 * testsuite/gas/cr16/cbitw_test.d: Likewise.
243 * testsuite/gas/cr16/sbitb_test.d: Likewise.
244 * testsuite/gas/cr16/sbitw_test.d: Likewise.
245 * testsuite/gas/cr16/storb_test.d: Likewise.
246 * testsuite/gas/cr16/storw_test.d: Likewise.
247 * testsuite/gas/cr16/tbitb_test.d: Likewise.
248 * testsuite/gas/cr16/tbitw_test.d: Likewise.
250 2020-08-30 Alan Modra <amodra@gmail.com>
254 * config/tc-cr16.c: Include limits.h, formatting.
255 (CR16_PRINT): Wrap params in parentheses. Remove parens from uses
257 (getconstant): Handle zero nbits.
258 (print_operand): Use unsigned variables. Simplify handling of
260 (check_range): Use int32_t variables. Correct range checks.
262 2020-08-29 Alan Modra <amodra@gmail.com>
265 * config/tc-pj.c (md_assemble): Don't loop past end of
268 2020-08-28 Alan Modra <amodra@gmail.com>
271 * config/tc-ia64.c (parse_operands): Don't access past end of
274 2020-08-26 Mark Wielaard <mark@klomp.org>
276 * as.c (parse_args): Handle bad -gdwarf options.
278 2020-08-28 Cooper Qu <cooper.qu@linux.alibaba.com>
280 * gas/config/tc-csky.c (md_begin): Set attributes.
281 (isa_flag): Change type to unsigned 64 bits.
282 (struct csky_cpu_info): Likewise.
283 (struct csky_macro_info): Likewise.
284 (set_csky_attribute): New.
285 * testsuite/gas/csky/802j.d: Ignore .csky.attributes section.
286 * testsuite/gas/csky/all.d: Likewise.
287 * testsuite/gas/csky/bsr1.d: Likewise.
288 * testsuite/gas/csky/csky_vdsp.d: Likewise.
289 * testsuite/gas/csky/cskyv2_all.d: Likewise.
290 * testsuite/gas/csky/cskyv2_ck803r2.d: Likewise.
291 * testsuite/gas/csky/cskyv2_ck860.d: Likewise.
292 * testsuite/gas/csky/cskyv2_dsp.d: Likewise.
293 * testsuite/gas/csky/cskyv2_elrw.d: Likewise.
294 * testsuite/gas/csky/cskyv2_float.d: Likewise.
295 * testsuite/gas/csky/enhance_dsp.d: Likewise.
296 * testsuite/gas/csky/java.d: Likewise.
297 * testsuite/gas/csky/v1_float.d: Likewise.
298 * testsuite/gas/csky/v2_float_part1.d: Likewise.
299 * testsuite/gas/csky/v2_float_part2.d: Likewise.
300 * testsuite/gas/csky/v2_tls_gd.d: Likewise.
301 * testsuite/gas/csky/v2_tls_ie.d: Likewise.
302 * testsuite/gas/csky/v2_tls_ld.d: Likewise.
303 * testsuite/gas/csky/v2_tls_le.d: Likewise.
304 * testsuite/gas/elf/elf.exp: Add handler for CSKY.
305 * testsuite/gas/elf/section2.e-csky: New.
307 2020-08-27 Alan Modra <amodra@gmail.com>
310 * cgen.c (weak_operand_overflow_check): Handle opmask for
311 operand length zero. Use 1UL constant.
313 2020-08-26 Alan Modra <amodra@gmail.com>
316 * config/tc-xtensa.c (xg_get_trampoline_chain): Return early
317 when n_entries is zero.
319 2020-08-26 Alan Modra <amodra@gmail.com>
322 * symbols.c: Include limits.h.
323 (resolve_symbol_value <O_left_shift, O_right_shift>): Do an
324 unsigned shift. Warn if shift count larger than valueT size.
326 2020-08-26 Alan Modra <amodra@gmail.com>
329 * expr.c (expr <O_left_shift>): Do an unsigned shift.
331 2020-08-25 Alan Modra <amodra@gmail.com>
333 2020-08-26 David Faust <david.faust@oracle.com>
335 * config/tc-bpf.c: Add option -mxbpf to select xbpf isa.
336 * testsuite/gas/bpf/indcall-1.d: New file.
337 * testsuite/gas/bpf/indcall-1.s: Likewise.
338 * testsuite/gas/bpf/indcall-bad-1.l: Likewise.
339 * testsuite/gas/bpf/indcall-bad-1.s: Likewise.
340 * testsuite/gas/bpf/bpf.exp: Run new tests.
342 2020-08-25 Alan Modra <amodra@gmail.com>
345 * gas/config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat
346 misc_symbol_hash entries without values.
348 2020-08-25 Alan Modra <amodra@gmail.com>
351 * tc-tic4x.c (tic4x_inst_make): Don't die on terminating insn
354 2020-08-25 Alan Modra <amodra@gmail.com>
357 * config/tc-cr16.c (get_b_cc): Return NULL early if op isn't
358 two or three chars, and don't bother copying.
360 2020-08-25 Alan Modra <amodra@gmail.com>
363 * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on
366 2020-08-25 Alan Modra <amodra@gmail.com>
369 * symbols.c (dollar_label_count, dollar_label_max): Make size_t.
370 (dollar_label_clear): Don't call memset with NULL pointer.
372 2020-08-25 Alan Modra <amodra@gmail.com>
374 * config/tc-arc.c (declare_register_set): Avoid false positive
375 format-overflow warning.
376 * config/tc-epiphany.c (md_assemble): Likewise.
377 * config/tc-mips.c (md_begin): Likewise.
378 * config/tc-mmix.c (mmix_md_begin): Likewise.
379 * config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false
380 positive "may be used uninitialized" warning.
382 2020-08-24 Cooper Qu <cooper.qu@linux.alibaba.com>
384 * config/tc-csky.c (csky_archs): Add item for CK860,
385 change ck810 and ck807's arch_flag.
386 (csky_cpus): Add item for CK860.
387 (md_begin): Enable DSP for CK810 and CK807 by default.
388 (md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure.
389 * gas/testsuite/gas/csky/cskyv2_all.d: Change 'sync 0'
391 * gas/testsuite/gas/csky/cskyv2_all.s: Likewise.
392 * gas/testsuite/gas/csky/cskyv2_ck860.d: New.
393 * gas/testsuite/gas/csky/cskyv2_ck860.s: New.
394 * gas/testsuite/gas/csky/enhance_dsp.d: Change plsli.u16
396 * gas/testsuite/gas/csky/enhance_dsp.s: Likewise.
398 2020-08-24 Alan Modra <amodra@gmail.com>
400 * config/tc-tic54x.c (stag_add_field_symbols): Don't free "name"
401 in case where it isn't copied.
402 * config/tc-tic54x.h (LOCAL_LABELS_FB): Undef.
403 * testsuite/gas/tic54x/field.d: Dump section contents and symbols
404 rather than disassembling.
405 * testsuite/gas/tic54x/set.d: Adjust for newer disassembly.
407 2020-08-24 Alan Modra <amodra@gmail.com>
409 * config/tc-aarch64.c (md_begin): Don't bother checking for
410 out of memory failure from str_htab_create.
411 * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise.
412 (arc_extcorereg, arc_stralloc): Likewise.
413 * config/tc-arm.c (md_begin): Likewise.
414 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
415 * config/tc-cris.c (md_begin): Likewise.
416 * config/tc-crx.c (md_begin): Likewise.
417 * config/tc-pdp11.c (md_begin): Likewise.
418 * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise.
419 * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise.
421 2020-08-24 Alan Modra <amodra@gmail.com>
423 * config/tc-arm.c (move_or_literal_pool): Avoid false positive
424 "may be used uninitialised".
425 (opcode_lookup): Likewise.
427 2020-08-24 Alan Modra <amodra@gmail.com>
430 * symbols.c (local_symbol_convert): Clear out xtra.
432 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
434 * config/tc-csky.c (CSKY_ISA_803R2): New.
435 (csky_archs): Add ck803r2 series.
436 (md_begin): Fix warning about -medsp.
437 (csky_get_freg_val): Support lowercase of fpu register name.
438 * testsuite/gas/csky/cskyv2_ck803r2.s: New file.
439 * testsuite/gas/csky/cskyv2_ck803r2.d: New file.
441 2020-08-23 Alan Modra <amodra@gmail.com>
444 * hash.h (htab_insert): Update prototype and comment.
445 (struct string_tuple): Make "value" a const void*.
446 (string_tuple_alloc): Likewise.
447 (str_hash_find, str_hash_find_n): Cast returned value.
448 (str_hash_insert): Add "replace" parameter, and return slot pointer.
449 Free alloc'd element when not inserted.
450 * hash.c (htab_insert): Likewise. Return slot when element exists,
451 otherwise return NULL.
452 * read.c (pop_insert): Insert into hash table without first searching.
453 * config/tc-avr.c (md_begin): Likewise.
454 * config/tc-msp430.c (md_begin): Likewise.
455 * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
456 * config/tc-v850.c (md_begin): Likewise.
457 * macro.c (do_formals, define_macro, macro_expand_body): Likewise.
458 (delete_macro): Delete from hash table.
459 * config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
461 * symbols.c (local_symbol_make, symbol_table_insert): Allow
462 replacement of hash table entries.
463 * config/obj-coff-seh.c (seh_hash_insert): Likewise.
464 * config/obj-coff.c (tag_insert): Likewise.
465 * config/tc-iq2000.c (iq2000_add_macro): Likewise.
466 * config/tc-m68k.c (md_begin): Likewise for aliases.
467 * config/tc-tic4x.c (tic4x_asg): Likewise.
468 * config/tc-tic6x.c (md_begin): Likewise.
470 * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
472 * ecoff.c (add_string, get_tag): Likewise.
473 * macro.c (expand_irp): Likewise.
474 * config/obj-elf.c (build_additional_section_info): Likewise.
475 * config/tc-aarch64.c (insert_reg_alias): Likewise.
476 (checked_hash_insert): Likewise.
477 * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
478 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
479 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
480 * config/tc-arm.c (insert_reg_alias): Likewise.
481 (arm_tc_equal_in_insn, md_begin): Likewise.
482 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
483 * config/tc-cris.c (md_begin): Likewise.
484 * config/tc-crx.c (md_begin): Likewise.
485 * config/tc-csky.c (md_begin): Likewise.
486 * config/tc-d10v.c (md_begin): Likewise.
487 * config/tc-dlx.c (md_begin): Likewise.
488 * config/tc-ft32.c (md_begin): Likewise.
489 * config/tc-h8300.c (md_begin): Likewise.
490 * config/tc-hppa.c (md_begin): Likewise.
491 * config/tc-i386.c (md_begin): Likewise.
492 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
493 (md_begin, dot_alias): Likewise.
494 * config/tc-m68hc11.c (md_begin): Likewise.
495 * config/tc-m68k.c (md_begin): Likewise.
496 * config/tc-mcore.c (md_begin): Likewise.
497 * config/tc-microblaze.c (md_begin): Likewise.
498 * config/tc-mips.c (md_begin): Likewise.
499 * config/tc-mmix.c (md_begin): Likewise.
500 * config/tc-mn10200.c (md_begin): Likewise.
501 * config/tc-mn10300.c (md_begin): Likewise.
502 * config/tc-moxie.c (md_begin): Likewise.
503 * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
504 * config/tc-nios2.c (md_begin): Likewise.
505 * config/tc-ns32k.c (md_begin): Likewise.
506 * config/tc-pdp11.c (md_begin): Likewise.
507 * config/tc-pj.c (fake_opcode, md_begin): Likewise.
508 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
509 * config/tc-pru.c (md_begin): Likewise.
510 * config/tc-riscv.c (init_ext_version_hash): Likewise.
511 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
512 (riscv_init_csr_hash): Likewise.
513 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
514 * config/tc-score.c (s3_insert_reg): Likewise.
515 (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
516 * config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
517 (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
518 * config/tc-sh.c (md_begin): Likewise.
519 * config/tc-sparc.c (md_begin): Likewise.
520 * config/tc-spu.c (md_begin): Likewise.
521 * config/tc-tic30.c (md_begin): Likewise.
522 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
523 * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
524 (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
525 (subsym_substitute): Likewise.
526 * config/tc-tilegx.c (md_begin): Likewise.
527 * config/tc-tilepro.c (md_begin): Likewise.
528 * config/tc-vax.c (vip_begin): Likewise.
529 * config/tc-wasm32.c (md_begin): Likewise.
530 * config/tc-xgate.c (md_begin): Likewise.
531 * config/tc-z8k.c (md_begin): Likewise.
532 * testsuite/gas/ppc/dcbt.d,
533 * testsuite/gas/ppc/dcbt.s: New test.
534 * testsuite/gas/ppc/ppc.exp: Run it.
536 * ecoff.c (add_string): Report fatal error on duplicates.
537 * config/tc-alpha.c (md_begin): Likewise.
538 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
539 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
540 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
541 * config/tc-cris.c (md_begin): Likewise.
542 * config/tc-crx.c (md_begin): Likewise.
543 * config/tc-dlx.c (md_begin): Likewise.
544 * config/tc-hppa.c (md_begin): Likewise.
545 * config/tc-i386.c (md_begin): Likewise.
546 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
547 (md_begin): Likewise.
548 * config/tc-m68k.c (md_begin): Likewise.
549 * config/tc-mips.c (md_begin): Likewise.
550 * config/tc-nios2.c (md_begin): Likewise.
551 * config/tc-ns32k.c (md_begin): Likewise.
552 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
553 * config/tc-pru.c (md_begin): Likewise.
554 * config/tc-riscv.c (init_ext_version_hash): Likewise.
555 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
556 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
557 * config/tc-sparc.c (md_begin): Likewise.
558 * config/tc-tic30.c (md_begin): Likewise.
559 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
560 * config/tc-tilegx.c (md_begin): Likewise.
561 * config/tc-tilepro.c (md_begin): Likewise.
562 * config/tc-vax.c (vip_begin): Likewise.
570 * config/tc-m68hc11.c,
572 * config/tc-microblaze.c,
577 * config/tc-score7.c,
579 * config/tc-tic54x.c,
580 * config/tc-tilegx.c,
581 * config/tc-tilepro.c,
582 * config/tc-xgate.c: Formatting.
584 2020-08-21 Alan Modra <amodra@gmail.com>
586 * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
587 Delete union. Adjust code throughout file.
588 (struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
590 (struct xsymbol): ..this. New struct. Adjust code throughout file
591 accessing these fields.
592 (struct symbol_entry): Delete.
593 (union symbol_entry): New.
594 (hash_symbol_entry): Adjust for symbol_entry_t change.
595 (symbol_entry_find): Likewise.
596 (eq_symbol_entry): Compare hash values too.
597 (symbol_entry_alloc): Delete.
598 (local_symbol_converted_p, local_symbol_mark_converted): Delete.
599 (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
600 (local_hash): Delete.
601 (abs_symbol_x, dot_symbol_x): New static var.
602 (symbol_init): New function.
603 (symbol_create): Rewrite.
604 (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
605 test of flags.local_symbol.
606 (local_symbol_make): Adjust for struct local_symbol changes.
607 (local_symbol_convert): Rewrite. Adjust all callers.
608 (symbol_table_insert): Simplify.
609 (symbol_clone): Comment on local sym cloning. Handle split symbol
611 (get_real_sym): Delete. Remove all uses.
612 (symbol_find_exact_noref): Simplify.
613 (resolve_local_symbol): Don't resolve non-locals.
614 (S_SET_SEGMENT): Don't special case reg_section.
615 (S_SET_NAME): Set both name and bsym->name.
616 (symbol_mark_resolved, symbol_resolved_p): Simplify.
617 (symbol_symbolS): Update comment.
618 (symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
619 (dot_symbol_init): Adjust dot_symbol setup.
620 (symbol_print_statistics): Delete local_hash stats.
622 2020-08-21 Alan Modra <amodra@gmail.com>
624 * symbols.c (struct symbol_flags): Rename sy_volatile to volatil,
625 and remove sy_ from other field names. Update throughout.
626 (struct symbol): Remove sy_ from field names. Delete unused
627 TARGET_SYMBOL_FIELDS. Update throughout file. Move after..
628 (struct local_symbol): ..here. Remove lsy_ from field names.
629 Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file.
630 (local_symbol_resolved_p, local_symbol_mark_resolved): Delete.
631 Expand uses throughout file.
632 (local_symbol_get_frag, local_symbol_set_frag): Likewise.
633 (symbol_new): Move symbol_table_frozen test to..
634 (symbol_append): ..here, and..
635 (symbol_insert): ..here.
636 (resolve_symbol_value, symbol_relc_make_expr): White space fixes.
637 (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise.
638 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update.
640 2020-08-21 Alan Modra <amodra@gmail.com>
642 * symbols.h (symbol_new, symbol_create, local_symbol_make),
643 (symbol_temp_new): Arrange params as section, frag, offset.
644 * symbols.c: Adjust to suit.
647 * dwarf2dbg.c: Likewise.
650 * itbl-ops.c: Likewise.
653 * subsegs.c: Likewise.
654 * config/obj-coff.c: Likewise.
655 * config/obj-elf.c: Likewise.
656 * config/obj-macho.c: Likewise.
657 * config/tc-aarch64.c: Likewise.
658 * config/tc-alpha.c: Likewise.
659 * config/tc-arc.c: Likewise.
660 * config/tc-arm.c: Likewise.
661 * config/tc-avr.c: Likewise.
662 * config/tc-cr16.c: Likewise.
663 * config/tc-cris.c: Likewise.
664 * config/tc-csky.c: Likewise.
665 * config/tc-dlx.c: Likewise.
666 * config/tc-hppa.c: Likewise.
667 * config/tc-i386.c: Likewise.
668 * config/tc-ia64.c: Likewise.
669 * config/tc-m32r.c: Likewise.
670 * config/tc-m68k.c: Likewise.
671 * config/tc-mips.c: Likewise.
672 * config/tc-mmix.c: Likewise.
673 * config/tc-mn10200.c: Likewise.
674 * config/tc-mn10300.c: Likewise.
675 * config/tc-nds32.c: Likewise.
676 * config/tc-nios2.c: Likewise.
677 * config/tc-ppc.c: Likewise.
678 * config/tc-riscv.c: Likewise.
679 * config/tc-s390.c: Likewise.
680 * config/tc-sh.c: Likewise.
681 * config/tc-tic4x.c: Likewise.
682 * config/tc-tic54x.c: Likewise.
683 * config/tc-xtensa.c: Likewise.
685 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
687 * config/tc-csky.c (csky_insn_info): Add member last_isize.
688 (md_assemble): Assign value to csky_insn.last_isize.
689 * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form.
690 * testsuite/gas/csky/enhance_dsp.s: Likewise.
692 2020-08-20 Martin Liska <mliska@suse.cz>
694 * NEWS: Mention --reduce-memory-overheads and --hash-size arguments
696 * as.c: Remove the options from help.
697 * doc/as.texi: Remove options.
698 * doc/internals.texi: Remove hash from documentation.
699 * hash.c (struct hash_entry): Remove.
700 (struct hash_control): Likewise.
701 (set_gas_hash_table_size): Likewise.
702 (hash_new_sized): Likewise.
703 (hash_new): Likewise.
704 (hash_die): Likewise.
705 (hash_lookup): Likewise.
706 (hash_insert): Likewise.
707 (hash_jam): Likewise.
708 (hash_replace): Likewise.
709 (hash_find): Likewise.
710 (hash_find_n): Likewise.
711 (hash_delete): Likewise.
712 (hash_traverse): Likewise.
713 (hash_print_statistics): Likewise.
715 (STATBUFSIZE): Likewise.
719 (applicatee): Likewise.
720 (whattable): Likewise.
721 * hash.h (struct hash_control): Likewise.
722 (set_gas_hash_table_size): Likewise.
723 (hash_new): Likewise.
724 (hash_new_sized): Likewise.
725 (hash_die): Likewise.
726 (hash_insert): Likewise.
727 (hash_jam): Likewise.
728 (hash_replace): Likewise.
729 (hash_find): Likewise.
730 (hash_find_n): Likewise.
731 (hash_delete): Likewise.
732 (hash_traverse): Likewise.
733 (hash_print_statistics): Likewise.
735 2020-08-20 Martin Liska <mliska@suse.cz>
737 * config/obj-coff-seh.c (seh_hash_insert): Port to use new
739 (seh_hash_find): Likewise.
740 (seh_hash_find_or_make): Likewise.
741 * config/obj-coff.c (tag_init): Likewise.
742 (tag_insert): Likewise.
743 (tag_find): Likewise.
744 * config/obj-elf.c (struct group_list): Likewise.
745 (build_additional_section_info): Likewise.
746 (free_section_idx): Likewise.
747 (elf_adjust_symtab): Likewise.
748 (elf_frob_file_after_relocs): Likewise.
749 * config/tc-aarch64.c (INSN_SIZE): Likewise.
750 (parse_reg): Likewise.
751 (insert_reg_alias): Likewise.
752 (create_register_alias): Likewise.
754 (parse_shift): Likewise.
755 (parse_pldop): Likewise.
756 (parse_barrier): Likewise.
757 (parse_barrier_psb): Likewise.
758 (parse_bti_operand): Likewise.
759 (parse_sys_reg): Likewise.
760 (parse_sys_ins_reg): Likewise.
761 (lookup_mnemonic): Likewise.
762 (opcode_lookup): Likewise.
763 (parse_operands): Likewise.
764 (checked_hash_insert): Likewise.
765 (sysreg_hash_insert): Likewise.
766 (fill_instruction_hash_table): Likewise.
767 (md_begin): Likewise.
768 * config/tc-alpha.c (struct alpha_reloc_tag): Likewise.
769 (get_alpha_reloc_tag): Likewise.
770 (assemble_tokens_to_insn): Likewise.
771 (assemble_tokens): Likewise.
772 (md_begin): Likewise.
773 * config/tc-arc.c (arc_find_opcode): Likewise.
774 (arc_insert_opcode): Likewise.
775 (find_opcode_match): Likewise.
776 (declare_register): Likewise.
777 (declare_addrtype): Likewise.
778 (md_begin): Likewise.
779 (arc_parse_name): Likewise.
780 (tc_arc_regname_to_dw2regnum): Likewise.
781 (arc_extcorereg): Likewise.
782 * config/tc-arm.c (MVE_BAD_QREG): Likewise.
783 (arm_reg_parse_multi): Likewise.
784 (parse_reloc): Likewise.
785 (insert_reg_alias): Likewise.
786 (create_register_alias): Likewise.
788 (parse_shift): Likewise.
789 (parse_psr): Likewise.
790 (parse_cond): Likewise.
791 (parse_barrier): Likewise.
792 (do_vfp_nsyn_opcode): Likewise.
793 (opcode_lookup): Likewise.
794 (arm_tc_equal_in_insn): Likewise.
795 (md_begin): Likewise.
796 * config/tc-avr.c (md_begin): Likewise.
797 (avr_ldi_expression): Likewise.
798 (md_assemble): Likewise.
799 (avr_update_gccisr): Likewise.
800 (avr_emit_insn): Likewise.
801 * config/tc-cr16.c (get_register): Likewise.
802 (get_register_pair): Likewise.
803 (get_index_register): Likewise.
804 (get_index_register_pair): Likewise.
805 (get_pregister): Likewise.
806 (get_pregisterp): Likewise.
807 (initialise_reg_hash_table): Likewise.
808 (md_begin): Likewise.
809 (cr16_assemble): Likewise.
810 (md_assemble): Likewise.
811 * config/tc-cris.c (cris_insn_first_word_frag): Likewise.
812 (md_begin): Likewise.
813 (cris_process_instruction): Likewise.
814 * config/tc-crx.c (get_register): Likewise.
815 (get_copregister): Likewise.
816 (md_begin): Likewise.
817 (md_assemble): Likewise.
818 * config/tc-csky.c (md_begin): Likewise.
819 (parse_opcode): Likewise.
820 (get_operand_value): Likewise.
821 (v1_work_jbsr): Likewise.
822 (v2_work_rotlc): Likewise.
823 (v2_work_bgeni): Likewise.
824 (v2_work_not): Likewise.
825 * config/tc-d10v.c (sizeof): Likewise.
826 (md_begin): Likewise.
827 (do_assemble): Likewise.
828 (md_apply_fix): Likewise.
829 * config/tc-d30v.c (sizeof): Likewise.
830 (md_begin): Likewise.
831 (do_assemble): Likewise.
832 * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise.
833 (md_begin): Likewise.
834 (machine_ip): Likewise.
835 * config/tc-ft32.c (md_begin): Likewise.
836 (md_assemble): Likewise.
837 * config/tc-h8300.c (md_begin): Likewise.
838 (md_assemble): Likewise.
839 * config/tc-hppa.c (pa_ip): Likewise.
840 (md_begin): Likewise.
841 * config/tc-i386.c (md_begin): Likewise.
842 (i386_print_statistics): Likewise.
843 (parse_insn): Likewise.
844 (process_operands): Likewise.
845 (i386_index_check): Likewise.
846 (parse_real_register): Likewise.
847 * config/tc-ia64.c (dot_rot): Likewise.
848 (dot_entry): Likewise.
849 (declare_register): Likewise.
850 (md_begin): Likewise.
851 (ia64_parse_name): Likewise.
852 (md_assemble): Likewise.
853 (dot_alias): Likewise.
854 (do_alias): Likewise.
855 (ia64_adjust_symtab): Likewise.
856 (do_secalias): Likewise.
857 (ia64_frob_file): Likewise.
858 * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise.
859 (md_begin): Likewise.
860 (print_insn_format): Likewise.
861 (md_assemble): Likewise.
862 * config/tc-m68k.c (tc_gen_reloc): Likewise.
864 (md_begin): Likewise.
865 * config/tc-mcore.c (md_begin): Likewise.
866 (md_assemble): Likewise.
867 * config/tc-microblaze.c (md_begin): Likewise.
868 (md_assemble): Likewise.
869 (md_apply_fix): Likewise.
870 * config/tc-mips.c (nopic_need_relax): Likewise.
871 (md_begin): Likewise.
872 (macro_build): Likewise.
873 (mips16_macro_build): Likewise.
874 (mips_lookup_insn): Likewise.
876 (mips16_ip): Likewise.
877 * config/tc-mmix.c (sizeof): Likewise.
878 (mmix_md_begin): Likewise.
879 (md_assemble): Likewise.
880 * config/tc-mn10200.c (md_begin): Likewise.
881 (md_assemble): Likewise.
882 * config/tc-mn10300.c (HAVE_AM30): Likewise.
883 (md_begin): Likewise.
884 (md_assemble): Likewise.
885 * config/tc-moxie.c (md_begin): Likewise.
886 (md_assemble): Likewise.
887 * config/tc-msp430.c (md_begin): Likewise.
888 (msp430_operands): Likewise.
889 (md_assemble): Likewise.
890 * config/tc-nds32.c (PV_DONT_CARE): Likewise.
891 (builtin_isreg): Likewise.
892 (builtin_regnum): Likewise.
893 (nds32_init_nds32_pseudo_opcodes): Likewise.
894 (nds32_lookup_pseudo_opcode): Likewise.
895 (nds32_relax_hint): Likewise.
896 (md_begin): Likewise.
897 (nds32_find_reloc_table): Likewise.
898 (nds32_elf_append_relax_relocs_traverse): Likewise.
899 (nds32_relax_branch_instructions): Likewise.
900 (md_convert_frag): Likewise.
901 (nds32_elf_analysis_relax_hint): Likewise.
902 (tc_nds32_regname_to_dw2regnum): Likewise.
903 * config/tc-nios2.c (nios2_opcode_lookup): Likewise.
904 (nios2_reg_lookup): Likewise.
905 (nios2_ps_lookup): Likewise.
906 (md_begin): Likewise.
907 * config/tc-ns32k.c (struct hash_control): Likewise.
909 (md_begin): Likewise.
910 * config/tc-pdp11.c (md_begin): Likewise.
911 (md_assemble): Likewise.
912 * config/tc-pj.c (fake_opcode): Likewise.
914 (md_begin): Likewise.
915 (md_assemble): Likewise.
916 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
917 (md_assemble): Likewise.
918 * config/tc-pru.c (pru_opcode_lookup): Likewise.
919 (pru_reg_lookup): Likewise.
920 (md_begin): Likewise.
922 * config/tc-riscv.c (init_ext_version_hash): Likewise.
923 (riscv_get_default_ext_version): Likewise.
924 (riscv_set_arch): Likewise.
925 (init_opcode_names_hash): Likewise.
926 (opcode_name_lookup): Likewise.
927 (enum reg_class): Likewise.
928 (hash_reg_name): Likewise.
929 (riscv_init_csr_hash): Likewise.
930 (reg_csr_lookup_internal): Likewise.
931 (reg_lookup_internal): Likewise.
932 (init_opcode_hash): Likewise.
933 (md_begin): Likewise.
934 (DECLARE_CSR): Likewise.
935 (macro_build): Likewise.
936 (riscv_ip): Likewise.
937 * config/tc-s390.c (register_name): Likewise.
938 (s390_setup_opcodes): Likewise.
939 (md_begin): Likewise.
940 (md_assemble): Likewise.
941 (s390_insn): Likewise.
942 * config/tc-score.c (struct s3_reg_map): Likewise.
943 (s3_score_reg_parse): Likewise.
944 (s3_dependency_type_from_insn): Likewise.
945 (s3_parse_16_32_inst): Likewise.
946 (s3_parse_48_inst): Likewise.
947 (s3_insert_reg): Likewise.
948 (s3_build_reg_hsh): Likewise.
949 (s3_build_score_ops_hsh): Likewise.
950 (s3_build_dependency_insn_hsh): Likewise.
951 (s3_begin): Likewise.
952 * config/tc-score7.c (struct s7_reg_map): Likewise.
953 (s7_score_reg_parse): Likewise.
954 (s7_dependency_type_from_insn): Likewise.
955 (s7_parse_16_32_inst): Likewise.
956 (s7_build_score_ops_hsh): Likewise.
957 (s7_build_dependency_insn_hsh): Likewise.
958 (s7_insert_reg): Likewise.
959 (s7_build_reg_hsh): Likewise.
960 (s7_begin): Likewise.
961 * config/tc-sh.c (EMPTY): Likewise.
962 (md_begin): Likewise.
963 (find_cooked_opcode): Likewise.
964 * config/tc-sparc.c (md_begin): Likewise.
965 (sparc_ip): Likewise.
966 * config/tc-spu.c (md_begin): Likewise.
967 (md_assemble): Likewise.
968 * config/tc-tic30.c (md_begin): Likewise.
969 (tic30_operand): Likewise.
970 (tic30_parallel_insn): Likewise.
971 (md_assemble): Likewise.
972 * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise.
973 (tic4x_asg): Likewise.
974 (tic4x_inst_insert): Likewise.
975 (tic4x_inst_add): Likewise.
976 (md_begin): Likewise.
977 (tic4x_operand_parse): Likewise.
978 (md_assemble): Likewise.
979 * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise.
980 (stag_add_field_symbols): Likewise.
981 (tic54x_endstruct): Likewise.
982 (tic54x_tag): Likewise.
983 (tic54x_remove_local_label): Likewise.
984 (tic54x_clear_local_labels): Likewise.
985 (tic54x_var): Likewise.
986 (tic54x_macro_start): Likewise.
987 (tic54x_macro_info): Likewise.
988 (tic54x_macro_end): Likewise.
989 (subsym_isreg): Likewise.
990 (subsym_structsz): Likewise.
991 (md_begin): Likewise.
992 (is_mmreg): Likewise.
994 (encode_condition): Likewise.
995 (encode_cc3): Likewise.
996 (encode_cc2): Likewise.
997 (encode_operand): Likewise.
998 (tic54x_parse_insn): Likewise.
999 (tic54x_parse_parallel_insn_firstline): Likewise.
1000 (subsym_create_or_replace): Likewise.
1001 (subsym_lookup): Likewise.
1002 (subsym_substitute): Likewise.
1003 (tic54x_undefined_symbol): Likewise.
1004 * config/tc-tic6x.c (md_begin): Likewise.
1005 (md_assemble): Likewise.
1006 * config/tc-tilegx.c (O_hw2_last_plt): Likewise.
1007 (INSERT_SPECIAL_OP): Likewise.
1008 (md_begin): Likewise.
1009 (tilegx_parse_name): Likewise.
1010 (parse_reg_expression): Likewise.
1011 (md_assemble): Likewise.
1012 * config/tc-tilepro.c (O_tls_ie_load): Likewise.
1013 (INSERT_SPECIAL_OP): Likewise.
1014 (tilepro_parse_name): Likewise.
1015 (parse_reg_expression): Likewise.
1016 (md_assemble): Likewise.
1017 * config/tc-v850.c (md_begin): Likewise.
1018 (md_assemble): Likewise.
1019 * config/tc-vax.c (md_ri_to_chars): Likewise.
1020 (vip_begin): Likewise.
1023 (md_begin): Likewise.
1024 * config/tc-wasm32.c (md_begin): Likewise.
1025 (md_assemble): Likewise.
1026 * config/tc-xgate.c (xgate_parse_operand): Likewise.
1027 (md_begin): Likewise.
1028 (md_assemble): Likewise.
1029 * config/tc-z8k.c (md_begin): Likewise.
1030 (md_assemble): Likewise.
1032 2020-08-20 Martin Liska <mliska@suse.cz>
1034 * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_*
1036 (dwcfi_hash_find): Likewise.
1037 (dwcfi_hash_find_or_make): Likewise.
1039 2020-08-20 Martin Liska <mliska@suse.cz>
1041 * ecoff.c (INIT_VARRAY): Use htab_t.
1042 (add_string): Likewise.
1043 (ecoff_read_begin_hook): Use new str_htab_create.
1044 (get_tag): Use htab_t.
1045 (add_file): Likewise.
1047 2020-08-20 Martin Liska <mliska@suse.cz>
1049 * hash.h (struct string_tuple): New.
1050 (hash_string_tuple): Likewise.
1051 (eq_string_tuple): Likewise.
1052 (string_tuple_alloc): Likewise.
1053 (str_hash_find): Likewise.
1054 (str_hash_find_n): Likewise.
1055 (str_hash_delete): Likewise.
1056 (str_hash_insert): Likewise.
1057 (str_htab_create): Likewise.
1059 2020-08-20 Martin Liska <mliska@suse.cz>
1061 * symbols.c (struct symbol_entry): New.
1062 (hash_symbol_entry): Likewise.
1063 (eq_symbol_entry): Likewise.
1064 (symbol_entry_alloc): Likewise.
1065 (symbol_entry_find): Likewise.
1066 (local_symbol_make): Use htab hash table.
1067 (local_symbol_convert): Likewise.
1068 (symbol_table_insert): Likewise.
1069 (symbol_find_exact_noref): Likewise.
1070 (resolve_local_symbol): Likewise.
1071 (resolve_local_symbol_values): Likewise.
1072 (symbol_begin): Likewise.
1073 (symbol_print_statistics): Likewise.
1075 2020-08-20 Martin Liska <mliska@suse.cz>
1077 * read.c (struct po_entry): New.
1078 (hash_po_entry): Likewise.
1079 (eq_po_entry): Likewise.
1080 (po_entry_alloc): Likewise.
1081 (po_entry_find): Likewise.
1082 (pop_insert): Likewise.
1083 (pobegin): Use htab hash table.
1084 (read_a_source_file): Likewise.
1085 (s_macro): Likewise.
1086 (read_print_statistics): Likewise.
1087 * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier.
1088 * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise.
1090 2020-08-20 Martin Liska <mliska@suse.cz>
1092 * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table.
1093 * macro.c (struct hash_control): Use htab.
1094 (macro_init): Likewise.
1095 (do_formals): Likewise.
1096 (free_macro): Likewise.
1097 (define_macro): Likewise.
1098 (sub_actual): Likewise.
1099 (macro_expand_body): Likewise.
1100 (macro_expand): Likewise.
1101 (check_macro): Likewise.
1102 (delete_macro): Likewise.
1103 (expand_irp): Likewise.
1104 * macro.h (struct macro_hash_entry): New struct.
1105 (hash_macro_entry): New.
1106 (eq_macro_entry): Likewise.
1107 (macro_entry_alloc): Likewise.
1108 (macro_entry_find): Likewise.
1109 (struct formal_hash_entry): Likewise.
1110 (hash_formal_entry): Likewise.
1111 (eq_formal_entry): Likewise.
1112 (formal_entry_alloc): Likewise.
1113 (formal_entry_find): Likewise.
1115 2020-08-20 Martin Liska <mliska@suse.cz>
1117 * as.h: Include hashtab.h.
1118 * hash.c (htab_insert): New.
1119 (htab_print_statistics): Likewise.
1120 * hash.h (htab_insert): Likewise.
1121 (htab_print_statistics): Likewise.
1123 2020-08-19 Alan Modra <amodra@gmail.com>
1125 * testsuite/gas/ppc/int128.s: Correct vcmpuq.
1126 * testsuite/gas/ppc/int128.d: Update.
1127 * testsuite/gas/ppc/xvtlsbb.d: Update.
1129 2020-08-18 Peter Bergner <bergner@linux.ibm.com>
1131 * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
1132 * testsuite/gas/ppc/vsx4.d: Likewise.
1134 2020-08-17 Alex Coplan <alex.coplan@arm.com>
1136 * config/obj-elf.c (obj_elf_change_section): When repurposing an
1137 existing symbol, ensure that we set sy_value as per other (fresh)
1139 * testsuite/gas/elf/elf.exp: Add new test.
1140 * testsuite/gas/elf/section-symbol-redef.d: New test.
1141 * testsuite/gas/elf/section-symbol-redef.s: Input for test.
1143 2020-08-13 Nick Clifton <nickc@redhat.com>
1146 * config/obj-som.c (obj_som_init_stab_section): Do nothing if the
1147 $GDB_DEBUG$ section has already been created.
1149 2020-08-12 Joe Ramsay <joe.ramsay@.arm.com>
1151 * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for
1152 NS_FD shape when MVE is present
1153 * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test.
1154 * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test.
1155 * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test.
1156 * testsuite/gas/arm/mve-vcvtne-it.d: New test.
1157 * testsuite/gas/arm/mve-vcvtne-it.s: New test.
1159 2020-08-12 Alex Coplan <alex.coplan@arm.com>
1161 * testsuite/gas/aarch64/mpam-bad.d: New test.
1162 * testsuite/gas/aarch64/mpam-bad.l: Error output.
1163 * testsuite/gas/aarch64/mpam-bad.s: Input.
1164 * testsuite/gas/aarch64/mpam.d: New test.
1165 * testsuite/gas/aarch64/mpam.s: Input.
1167 2020-08-12 Nick Clifton <nickc@redhat.com>
1170 * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description
1171 of the -mno-csr-check option.
1173 2020-08-12 Nick Clifton <nickc@redhat.com>
1175 * po/ru.po: Updated Russian translation.
1177 2020-08-10 Alex Coplan <alex.coplan@arm.com>
1179 * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing
1180 a long system register.
1181 (parse_sys_ins_reg): Likewise.
1182 (sysreg_hash_insert): New.
1183 (md_begin): Use sysreg_hash_insert() to ensure all system
1184 registers are no longer than the maximum length at startup.
1185 * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test.
1186 * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output.
1187 * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input.
1189 2020-08-10 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
1191 * config/tc-aarch64.c (parse_sys_reg): Call to
1192 aarch64_sys_ins_reg_supported_p instead of
1193 aarch64_sys_reg_supported_p.
1194 (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check.
1195 * testsuite/gas/aarch64/illegal-sysreg-5.d: New test.
1196 * testsuite/gas/aarch64/illegal-sysreg-5.l: New test.
1197 * testsuite/gas/aarch64/sysreg-5.s: New test.
1199 2020-08-10 Alan Modra <amodra@gmail.com>
1201 * testsuite/gas/ppc/power8.d,
1202 * testsuite/gas/ppc/power8.s: Add miso.
1203 * testsuite/gas/ppc/power9.d,
1204 * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru.
1206 2020-08-10 Alan Modra <amodra@gmail.com>
1208 * testsuite/gas/ppc/power8.d: Update.
1209 * testsuite/gas/ppc/vsx2.d: Update.
1211 2020-08-10 Alan Modra <amodra@gmail.com>
1213 * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
1214 stswi, or stswx in little-endian mode.
1215 * testsuite/gas/ppc/476.d,
1216 * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
1217 * testsuite/gas/ppc/a2.d,
1218 * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
1219 * testsuite/gas/ppc/be.d,
1220 * testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
1221 * testsuite/gas/ppc/le_error.d,
1222 * testsuite/gas/ppc/le_error.l: New little-endian test.
1223 * testsuite/gas/ppc/ppc.exp: Run new tests.
1225 2020-08-07 H.J. Lu <hongjiu.lu@intel.com>
1227 * read.c (read_a_source_file): Ignore rest of line on overflow
1230 2020-08-06 Alex Coplan <alex.coplan@arm.com>
1232 * read.c (read_a_source_file): Use long for local labels, detect
1233 overflow and raise an error for overly-long labels.
1234 * testsuite/gas/all/gas.exp: Add local-label-overflow test.
1235 * testsuite/gas/all/local-label-overflow.d: New test.
1236 * testsuite/gas/all/local-label-overflow.l: Error output.
1237 * testsuite/gas/all/local-label-overflow.s: Input.
1239 2020-08-04 Christian Groessler <chris@groessler.org>
1241 * gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
1242 "sout/soutb #imm,reg"
1244 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1246 * NEWS: Mention {disp16} pseudo prefix.
1248 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1250 * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
1253 2020-08-04 Mark Wielaard <mark@klomp.org>
1255 * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
1256 DW_FORM_udata for DW_AT_high_pc.
1257 (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
1258 DWARF2_VERSION >= 4.
1259 * read.c (emit_leb128_exp): No longer static.
1260 * read.h (emit_leb128_exp): Define.
1262 2020-08-02 Mark Wielaard <mark@klomp.org>
1264 * gas/dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
1265 least one directory if there is at least one file. Use dirs[1]
1266 if dirs[0] is not set, or if there is no dirs[1] the current
1267 working directory. Use files[1] filename, when files[0] filename
1270 2020-08-02 Mark Wielaard <mark@klomp.org>
1272 * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
1274 * gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
1275 * gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
1276 * gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
1277 * gas/testsuite/gas/elf/dwarf-5-cu.s: Likewise.
1278 * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
1280 2020-08-02 Mark Wielaard <mark@klomp.org>
1282 * doc/as.texi (--gdwarf-[345]): Fix typo.
1284 2020-08-03 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1286 * config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
1287 (md_parse_option): Remove case for OPTION_MOVE_DATA.
1288 (md_longopts): Remove "md" entry.
1289 (md_show_usage): Likewise.
1291 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1294 * config/tc-i386.c (_i386_insn::disp_encoding): Add
1295 disp_encoding_16bit.
1296 (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
1298 (build_modrm_byte): Handle {disp16}.
1299 (i386_index_check): Check invalid {disp16} and {disp32} pseudo
1301 * doc/c-i386.texi: Update {disp32} documentation and document
1303 * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
1304 * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
1306 * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
1307 tests with 128-byte displacement. Add {disp16} tests.
1308 * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
1309 vmovaps test. Add (%r13)/(%r13d) tests.
1310 * testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
1311 * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
1312 * testsuite/gas/i386/inval-pseudo.l: Updated.
1313 * testsuite/gas/i386/pseudos.d: Likewise.
1314 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1316 2020-07-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1318 * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
1319 * Makefile.in, doc/Makefile.in: Regenerate.
1320 * configure: Regenerate.
1322 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1324 * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
1325 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1326 * testsuite/gas/i386/dw2-compress-3a.d: Likewise.
1327 * testsuite/gas/i386/dw2-compress-3b.d: Likewise.
1328 * testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
1329 * testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
1331 2020-07-30 Nick Clifton <nickc@redhat.com>
1333 * as.c (dwarf_level): Initialise to 3 in case this is not set on
1336 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1338 * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
1339 * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
1340 * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
1341 * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
1342 * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
1343 * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
1344 * testsuite/gas/mips/mips.exp: Run the new tests.
1346 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1348 * testsuite/gas/mips/global-local-symtab-o32.d: New test.
1349 * testsuite/gas/mips/global-local-symtab-o32t.d: New test.
1350 * testsuite/gas/mips/global-local-symtab-n32.d: New test.
1351 * testsuite/gas/mips/global-local-symtab-n32t.d: New test.
1352 * testsuite/gas/mips/global-local-symtab-n64.d: New test.
1353 * testsuite/gas/mips/global-local-symtab.s: New test source.
1354 * testsuite/gas/mips/mips.exp: Run the new tests.
1356 2020-07-28 H.J. Lu <hongjiu.lu@intel.com>
1359 * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
1360 (%bp)/(%ebp)/(%rbp) for {disp32}.
1361 * doc/c-i386.texi: Update {disp32} documentation.
1362 * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
1363 * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
1364 * testsuite/gas/i386/pseudos.d: Updated.
1365 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1367 2020-07-27 H.J. Lu <hongjiu.lu@intel.com>
1369 * doc/as.texi: Replace preceeded with preceded.
1371 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
1373 * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
1374 * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
1375 * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
1376 * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
1377 * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
1378 * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
1379 * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
1380 * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
1382 * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
1383 * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
1384 * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
1386 * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
1388 * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
1390 * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
1392 * testsuite/gas/mips/jal-xgot-irix.d: New file.
1393 * testsuite/gas/mips/jalr2-irix.d: New file.
1394 * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
1396 * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
1398 * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
1399 * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
1400 `*-*-irix*' targets. Add source file designator.
1401 * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
1402 `*-*-irix*' targets.
1403 * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
1404 * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
1405 * testsuite/gas/mips/jalr2.d: Add name designator.
1406 * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
1407 tests involving the JALR relocation throughout.
1409 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
1411 * testsuite/gas/mips/mips.exp: Use a helper variable for
1412 IRIX/non-IRIX test selection.
1414 2020-07-21 Jan Beulich <jbeulich@suse.com>
1416 * testsuite/gas/i386/evex-no-scale-64.d,
1417 testsuite/gas/i386/addr32.d,
1418 testsuite/gas/i386/x86-64-addr32-intel.d,
1419 testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
1421 2020-07-21 Cooper Qu <cooper.qu@linux.alibaba.com>
1423 * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
1425 2020-07-21 Jan Beulich <jbeulich@suse.com>
1427 * testsuite/gas/i386/evex-no-scale-32.d,
1428 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
1429 * testsuite/gas/i386/evex-no-scale-32.s,
1430 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
1431 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
1432 instead of .section.
1433 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
1436 2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
1438 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
1439 (my_getSmallExpression): Adjust accordingly.
1441 2020-07-20 Jan Beulich <jbeulich@suse.com>
1444 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
1445 conditional around it.
1446 (md_begin): Insert backslash into operand_chars[] when slash is
1447 a comment character.
1448 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
1449 \* as operators when / may be a comment character.
1450 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
1451 * testsuite/gas/i386/i386.exp: Run new test.
1453 2020-07-20 Jan Beulich <jbeulich@suse.com>
1456 * app.c (last_char): Drop TC_ARM conditional around it.
1457 (struct app_save): Drop TC_ARM conditional around last_char.
1458 (app_push, app_pop): Drop TC_ARM conditional from last_char
1460 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
1461 backslash-precedes-comment-character check.
1463 2020-07-20 Jan Beulich <jbeulich@suse.com>
1465 * config/tc-i386.c (frag_opcode_byte): New.
1466 (output_branch): Emit error when in absolute section.
1467 (output_jump, output_insn): Use frag_opcode_byte. Handle being
1468 in absolute section.
1469 (output_interseg_jump, output_disp, output_imm): Handle being in
1471 * testsuite/gas/i386/sizing.s,
1472 testsuite/gas/i386/sizing32.d,
1473 testsuite/gas/i386/sizing64.d: New.
1474 * testsuite/gas/i386/i386.exp: Run new tests.
1476 2020-07-20 Jan Beulich <jbeulich@suse.com>
1478 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
1479 is_elf_format as applicable; merely exclude iamcu tests.
1481 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
1484 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
1485 against section to PC32 reloc.
1486 * testsuite/gas/i386/relax-5.d: Updated.
1487 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1489 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
1492 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
1493 * testsuite/gas/i386/addr32.d: Likewise.
1494 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1495 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1497 2020-07-15 Nick Clifton <nickc@redhat.com>
1499 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
1500 the addend field of REL relocations. Store the full addend into
1501 the note for REL relocations.
1503 2020-07-15 Jan Beulich <jbeulich@suse.com>
1505 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
1507 * testsuite/gas/i386/x86-64-stack-intel.d,
1508 testsuite/gas/i386/x86-64-stack-suffix.d,
1509 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
1511 2020-07-15 Jan Beulich <jbeulich@suse.com>
1513 * testsuite/gas/i386/disassem.d,
1514 testsuite/gas/i386/ilp32/x86-64-branch.d,
1515 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
1516 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
1517 testsuite/gas/i386/noreg32.d,
1518 testsuite/gas/i386/noreg64-rex64.d,
1519 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
1520 testsuite/gas/i386/opcode.d,
1521 testsuite/gas/i386/solaris/x86-64-branch-2.d,
1522 testsuite/gas/i386/solaris/x86-64-jump.d,
1523 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
1524 testsuite/gas/i386/solaris/x86-64-nop-3.d,
1525 testsuite/gas/i386/solaris/x86-64-nop-4.d,
1526 testsuite/gas/i386/solaris/x86-64-nop-5.d,
1527 testsuite/gas/i386/solaris/x86-64-relax-2.d,
1528 testsuite/gas/i386/solaris/x86-64-relax-3.d,
1529 testsuite/gas/i386/x86-64-align-branch-1a.d,
1530 testsuite/gas/i386/x86-64-align-branch-1b.d,
1531 testsuite/gas/i386/x86-64-align-branch-1c.d,
1532 testsuite/gas/i386/x86-64-align-branch-1d.d,
1533 testsuite/gas/i386/x86-64-align-branch-1e.d,
1534 testsuite/gas/i386/x86-64-align-branch-1f.d,
1535 testsuite/gas/i386/x86-64-align-branch-1g.d,
1536 testsuite/gas/i386/x86-64-align-branch-1h.d,
1537 testsuite/gas/i386/x86-64-align-branch-1i.d,
1538 testsuite/gas/i386/x86-64-align-branch-2a.d,
1539 testsuite/gas/i386/x86-64-align-branch-2b.d,
1540 testsuite/gas/i386/x86-64-align-branch-2c.d,
1541 testsuite/gas/i386/x86-64-align-branch-3.d,
1542 testsuite/gas/i386/x86-64-align-branch-4a.d,
1543 testsuite/gas/i386/x86-64-align-branch-4b.d,
1544 testsuite/gas/i386/x86-64-align-branch-5.d,
1545 testsuite/gas/i386/x86-64-align-branch-6.d,
1546 testsuite/gas/i386/x86-64-branch-2.d,
1547 testsuite/gas/i386/x86-64-branch-3.d,
1548 testsuite/gas/i386/x86-64-branch.d,
1549 testsuite/gas/i386/x86-64-disassem.d,
1550 testsuite/gas/i386/x86-64-disp32.d,
1551 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
1552 testsuite/gas/i386/x86-64-gotpcrel.d,
1553 testsuite/gas/i386/x86-64-ifunc.d,
1554 testsuite/gas/i386/x86-64-jump.d,
1555 testsuite/gas/i386/x86-64-lfence-byte.d,
1556 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
1557 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
1558 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
1559 testsuite/gas/i386/x86-64-lfence-load.d,
1560 testsuite/gas/i386/x86-64-lfence-ret-a.d,
1561 testsuite/gas/i386/x86-64-lfence-ret-b.d,
1562 testsuite/gas/i386/x86-64-lfence-ret-c.d,
1563 testsuite/gas/i386/x86-64-lfence-ret-d.d,
1564 testsuite/gas/i386/x86-64-lfence-ret-e.d,
1565 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
1566 testsuite/gas/i386/x86-64-mpx-branch-1.d,
1567 testsuite/gas/i386/x86-64-mpx.d,
1568 testsuite/gas/i386/x86-64-nop-3.d,
1569 testsuite/gas/i386/x86-64-nop-4.d,
1570 testsuite/gas/i386/x86-64-nop-5.d,
1571 testsuite/gas/i386/x86-64-nops-7.d,
1572 testsuite/gas/i386/x86-64-notrack.d,
1573 testsuite/gas/i386/x86-64-opcode.d,
1574 testsuite/gas/i386/x86-64-relax-2.d,
1575 testsuite/gas/i386/x86-64-relax-3.d,
1576 testsuite/gas/i386/x86-64-relax-4.d,
1577 testsuite/gas/i386/x86-64-rtm.d,
1578 testsuite/gas/i386/x86-64-stack.d,
1579 testsuite/gas/i386/x86-64-unique.d,
1580 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
1582 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
1585 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
1587 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
1588 * testsuite/gas/i386/addr32.d: Updated.
1589 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1590 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1591 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
1592 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
1594 2020-07-14 Jan Beulich <jbeulich@suse.com>
1596 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
1597 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
1598 * testsuite/gas/i386/intel.d,
1599 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
1601 2020-07-14 Jan Beulich <jbeulich@suse.com>
1603 * testsuite/gas/i386/prefix.d: Adjust expectations.
1605 2020-07-14 Jan Beulich <jbeulich@suse.com>
1607 * testsuite/gas/i386/x86-64-avx-intel.d,
1608 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
1610 2020-07-14 Jan Beulich <jbeulich@suse.com>
1612 * testsuite/gas/i386/movbe-suffix.d,
1613 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
1614 * testsuite/gas/i386/i386.exp: Run new tests.
1616 2020-07-14 Jan Beulich <jbeulich@suse.com>
1618 * testsuite/gas/i386/crc32-suffix.d,
1619 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
1620 * testsuite/gas/i386/i386.exp: Run new tests.
1621 * testsuite/gas/i386/arch-10-bdver1.d,
1622 testsuite/gas/i386/arch-10-bdver2.d,
1623 testsuite/gas/i386/arch-10-bdver3.d,
1624 testsuite/gas/i386/arch-10-bdver4.d,
1625 testsuite/gas/i386/arch-10-btver1.d,
1626 testsuite/gas/i386/arch-10-btver2.d,
1627 testsuite/gas/i386/arch-10-lzcnt.d,
1628 testsuite/gas/i386/arch-10-prefetchw.d,
1629 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
1630 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
1631 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
1632 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
1633 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
1634 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
1635 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
1636 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
1637 testsuite/gas/i386/x86-64-arch-2-btver1.d,
1638 testsuite/gas/i386/x86-64-arch-2-btver2.d,
1639 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
1640 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
1641 testsuite/gas/i386/x86-64-arch-2.d,
1642 testsuite/gas/i386/x86-64-crc32.d,
1643 testsuite/gas/i386/x86-64-pseudos.d,
1644 testsuite/gas/i386/x86-64-sse-noavx.d,
1645 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
1647 2020-07-14 Jan Beulich <jbeulich@suse.com>
1649 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1650 ModR/M-encoded byte register cases.
1651 * testsuite/gas/i386/x86-64-pseudos.d,
1652 testsuite/gas/i386/x86-64-reg-intel.d,
1653 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
1655 2020-07-14 Jan Beulich <jbeulich@suse.com>
1657 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1658 not-ModR/M-encoded byte register cases.
1659 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
1661 2020-07-14 Jan Beulich <jbeulich@suse.com>
1663 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
1664 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
1665 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
1666 testsuite/gas/i386/ilp32/x86-64-avx.d,
1667 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
1668 testsuite/gas/i386/ilp32/x86-64-crc32.d,
1669 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
1670 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
1671 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
1672 testsuite/gas/i386/ilp32/x86-64-reg.d,
1673 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
1674 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
1675 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
1676 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
1677 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
1678 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
1681 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
1683 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
1686 2020-07-13 Nick Clifton <nickc@redhat.com>
1688 * po/fr.po: Updated French translation.
1690 2020-07-13 Alan Modra <amodra@gmail.com>
1692 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
1693 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1694 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1695 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1697 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
1699 * config/tc-i386.c (output_insn): Check i.xstate to set
1700 GNU_PROPERTY_X86_FEATURE_2_TMM.
1701 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
1702 x86-64-property-8 and x86-64-property-9.
1703 * testsuite/gas/i386/x86-64-property-7.d: New file.
1704 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
1705 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
1706 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
1707 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
1708 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
1710 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1712 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
1713 has_regymm, has_regzmm and has_regtmm. Add xstate.
1714 (md_assemble): Set i.xstate from operand types in instruction
1716 (build_modrm_byte): Updated.
1717 (output_insn): Check i.xstate.
1718 * testsuite/gas/i386/i386.exp: Run property-6 and
1720 * testsuite/gas/i386/property-6.d: New file.
1721 * testsuite/gas/i386/property-6.s: Updated.
1722 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
1724 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1726 * testsuite/gas/i386/property-5.d: Correct test name.
1728 2020-07-10 Lili Cui <lili.cui@intel.com>
1730 * NEWS: Mention support for Intel AMX instructions.
1731 * config/tc-i386.c (i386_error): Add invalid_sib_address.
1732 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
1733 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
1734 (match_simd_size): Add tmmword check.
1735 (operand_type_match): Add tmmword.
1736 (type_names): Add rTMM.
1737 (i386_error): Add invalid_tmm_register_set.
1738 (check_VecOperands): Handle invalid_sib_address and
1739 invalid_tmm_register_set.
1740 (match_template): Handle invalid_sib_address.
1741 (build_modrm_byte): Handle non-vector SIB and zmmword.
1742 (i386_index_check): Disallow RegIP for non-vector SIB.
1743 (check_register): Handle zmmword.
1744 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
1745 * testsuite/gas/i386/i386.exp: Add AMX new tests.
1746 * testsuite/gas/i386/intel-regs.d: Add tmm.
1747 * testsuite/gas/i386/intel-regs.s: Add tmm.
1748 * testsuite/gas/i386/x86-64-amx-intel.d: New.
1749 * testsuite/gas/i386/x86-64-amx-inval.l: New.
1750 * testsuite/gas/i386/x86-64-amx-inval.s: New.
1751 * testsuite/gas/i386/x86-64-amx.d: New.
1752 * testsuite/gas/i386/x86-64-amx.s: New.
1753 * testsuite/gas/i386/x86-64-amx-bad.d: New.
1754 * testsuite/gas/i386/x86-64-amx-bad.s: New.
1756 2020-07-10 Tom de Vries <tdevries@suse.de>
1758 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
1759 readelf's line table decoding.
1760 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1761 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1762 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1763 * testsuite/gas/elf/dwarf2-15.d: Likewise.
1764 * testsuite/gas/elf/dwarf2-16.d: Likewise.
1765 * testsuite/gas/elf/dwarf2-17.d: Likewise.
1766 * testsuite/gas/elf/dwarf2-18.d: Likewise.
1767 * testsuite/gas/elf/dwarf2-19.d: Likewise.
1768 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1769 * testsuite/gas/elf/dwarf2-6.d: Likewise.
1770 * testsuite/gas/elf/dwarf2-7.d: Likewise.
1772 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1774 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
1775 VEX/EVEX vector instructions.
1776 * testsuite/gas/i386/property-4.d: New file.
1777 * testsuite/gas/i386/property-4.s: Likewise.
1778 * testsuite/gas/i386/property-5.d: Likewise.
1779 * testsuite/gas/i386/property-5.s: Likewise.
1780 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
1781 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
1783 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1785 * NEWS: Mention --enable-x86-used-note.
1786 * configure.ac: Configure with --enable-x86-used-note by default
1788 * configure: Regenerated.
1790 2020-07-09 Alan Modra <amodra@gmail.com>
1792 * config/obj-coff.h: Remove TE_PE support.
1793 * config/tc-ppc.c: Likewise.
1794 * config/tc-ppc.h: Likewise.
1795 * configure.tgt: Remove powerpc PE and powerpc lynxos.
1796 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
1798 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
1800 2020-07-08 Jan Beulich <jbeulich@suse.com>
1802 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
1804 * testsuite/gas/i386/i386.exp: Run new tests.
1806 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
1808 * config/tc-arc.c (find_opcode_match): Add error messages.
1809 * testsuite/gas/arc/add_s-err.s: Update test.
1810 * testsuite/gas/arc/asm-errors.err: Likewise.
1811 * testsuite/gas/arc/cpu-em-err.s: Likewise.
1812 * testsuite/gas/arc/hregs-err.s: Likewise.
1813 * testsuite/gas/arc/warn.s: Likewise.
1815 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
1818 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
1820 2020-07-07 Alan Modra <amodra@gmail.com>
1822 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
1823 * testsuite/gas/ppc/ppc.exp: Likewise.
1824 * testsuite/gas/all/weakref1l.d: Likewise.
1826 2020-07-07 Nick Clifton <nickc@redhat.com>
1828 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
1831 2020-07-06 Jan Beulich <jbeulich@suse.com>
1833 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
1834 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
1835 testsuite/gas/i386/x86-64-evex-wig1.d,
1836 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
1839 2020-07-06 Jan Beulich <jbeulich@suse.com>
1841 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
1842 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
1843 * testsuite/gas/i386/avx512f-opts-intel.d,
1844 testsuite/gas/i386/avx512f-opts.d
1845 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
1846 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
1848 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
1851 * config/tc-arm.c: Fix spelling mistake.
1852 * config/tc-riscv.c: Likewise.
1853 * config/tc-z80.c: Likewise.
1854 * po/gas.pot: Regenerate.
1856 2020-07-06 Nick Clifton <nickc@redhat.com>
1858 * po/uk.po: Updated Ukranian translation.
1860 2020-07-04 Nick Clifton <nickc@redhat.com>
1862 * configure: Regenerate.
1863 * po/gas.pot: Regenerate.
1865 2020-07-04 Nick Clifton <nickc@redhat.com>
1867 * version.m4: Change version number to 2.35.50.
1868 * configure: Regenerate.
1869 * po/bfd.pot: Regenerate.
1871 2020-07-04 Nick Clifton <nickc@redhat.com>
1873 Binutils 2.35 branch created.
1875 2020-07-03 Alan Modra <amodra@gmail.com>
1878 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
1880 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
1882 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
1883 swap two source operands.
1885 2020-07-02 Nick Clifton <nickc@redhat.com>
1887 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
1889 2020-07-02 Alex Coplan <alex.coplan@arm.com>
1891 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
1892 segfault on negative chars.
1893 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
1894 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
1896 2020-07-02 Nick Clifton <nickc@redhat.com>
1899 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
1901 * testsuite/gas/ia64/unwind.d: Likewise.
1902 * testsuite/gas/mmix/bspec-1.d: Likewise.
1903 * testsuite/gas/mmix/bspec-2.d: Likewise.
1904 * testsuite/gas/mmix/comment-1.d: Likewise.
1905 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
1907 2020-07-01 Alan Modra <amodra@gmail.com>
1909 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
1911 2020-07-01 Alan Modra <amodra@gmail.com>
1913 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
1914 in data sections, and mep.
1916 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
1918 * NEWS: Mention x86 NaCl target support removal.
1919 * config/tc-i386.c: Remove x86 NaCl target support.
1920 * config/tc-i386.h: Likewise.
1921 * configure.tgt: Likewise.
1922 * testsuite/gas/i386/i386.exp: Likewise.
1923 * testsuite/gas/i386/iamcu-1.d: Likewise.
1924 * testsuite/gas/i386/iamcu-2.d: Likewise.
1925 * testsuite/gas/i386/iamcu-3.d: Likewise.
1926 * testsuite/gas/i386/iamcu-4.d: Likewise.
1927 * testsuite/gas/i386/iamcu-5.d: Likewise.
1928 * testsuite/gas/i386/k1om.d: Likewise.
1929 * testsuite/gas/i386/l1om.d: Likewise.
1931 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
1933 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
1934 checking into riscv_csr_address.
1935 (riscv_csr_version_check): Likewise.
1936 (riscv_csr_address): New function. Return the suitable CSR address
1937 after checking the ISA dependency and versions. Issue warnings if
1938 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
1939 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
1940 priv spec versions for them.
1941 (reg_csr_lookup_internal): Call riscv_csr_address to find the
1942 suitable CSR address.
1943 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
1944 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1945 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1946 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
1947 priv spec warnings here. These warnings are added by accident.
1948 Remove them and only focus on the ISA dependency warnings.
1949 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1950 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1951 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
1952 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
1953 than the privileged ones.
1954 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
1955 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
1956 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
1957 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
1958 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
1959 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
1960 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
1961 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
1962 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1963 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1965 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
1967 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
1968 (md_assemble): Don't process ImmExt without operands.
1970 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
1973 * config/tc-mmix.c (md_assemble) <fixup for
1974 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
1975 Also, set its fx_no_overflow.
1976 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
1977 Similarly this fixup affects 4 bytes, not 8 and needs its
1979 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
1980 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
1982 2020-06-29 Alan Modra <amodra@gmail.com>
1984 * config/tc-s12z.c: Use C style comments.
1985 * config/tc-z80.c: Likewise.
1986 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
1988 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
1990 * config/tc-i386.c (md_assemble): Process ImmExt without
1993 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
1995 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
1996 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
1997 VECSIB256 and VECSIB512, respectively.
1998 (build_modrm_byte): Replace vecsib with sib.
2000 2020-06-26 Jan Beulich <jbeulich@suse.com>
2002 * testsuite/gas/i386/nop-1-suffix.d: New.
2003 * testsuite/gas/i386/i386.exp: Run new test.
2005 2020-06-26 Pat Bernardi <bernardi@adacore.com>
2007 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
2008 (md_pseudo_table): Handle "gnu_attribute".
2009 * doc/as.texi: Document GNU attribute for M68K.
2011 2020-06-25 Nick Clifton <nickc@redhat.com>
2014 * config/tc-arm.c (arm_force_relocation): Force resolution of
2015 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
2016 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
2018 2020-06-25 Jan Beulich <jbeulich@suse.com>
2020 * config/tc-i386.c (md_assemble): Move call to process_immext()
2022 (process_operands): ... here.
2024 2020-06-25 Jan Beulich <jbeulich@suse.com>
2026 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
2027 diagnostic when there is a sizing prefix. Switch to word/dword/
2028 qword encoding when there is a sizing prefix and no (explicit or
2030 (update_imm): Handle presence of a sizing prefix.
2031 * testsuite/gas/i386/noreg16-data32.d,
2032 testsuite/gas/i386/noreg32-data16.d,
2033 testsuite/gas/i386/noreg32-data16.e,
2034 testsuite/gas/i386/noreg64-data16.d,
2035 testsuite/gas/i386/noreg64-data16.e,
2036 testsuite/gas/i386/noreg64-rex64.d: New.
2037 * testsuite/gas/i386/i386.exp: Run new tests.
2038 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
2039 Introduce and use pfx* macros.
2040 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
2042 * testsuite/gas/i386/noreg16.d: Adjust expectations.
2044 2020-06-25 Jan Beulich <jbeulich@suse.com>
2046 * testsuite/gas/i386/avx-16bit.d,
2047 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
2048 testsuite/gas/i386/avx512f-16bit.d,
2049 testsuite/gas/i386/avx512f.d,
2050 testsuite/gas/i386/evex-lig256.d,
2051 testsuite/gas/i386/evex-lig512.d
2052 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
2053 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
2054 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
2055 testsuite/gas/i386/sse2-16bit.d,
2056 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
2059 2020-06-25 Jan Beulich <jbeulich@suse.com>
2061 * config/tc-i386.c (md_assemble): Also reject explicit REX
2062 prefixes with VEX and alike encoded insns. Zap consumed bits
2064 (output_insn): Don't ignore REX prefix for VEX and alike
2065 encodings; abort() instead if encountered.
2066 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
2068 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
2069 * testsuite/gas/i386/x86-64-pseudos.d,
2070 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
2072 2020-06-25 Jan Beulich <jbeulich@suse.com>
2074 * config/tc-i386.c (process_operands): Translate explicit REX
2075 prefix into i.rex for SSE2AVX templates.
2076 (set_rex_vrex): New helper.
2077 (build_modrm_byte): Use it.
2078 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
2080 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
2082 2020-06-25 Jan Beulich <jbeulich@suse.com>
2084 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
2085 templates when there's no data size prefix.
2086 (md_assemble): Reject data size prefix also for legacy encoded
2088 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
2089 Uncomment previously not working line.
2090 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
2092 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
2093 testsuite/gas/i386/sse2avx.d: Adjust expectations.
2095 2020-06-25 Jan Beulich <jbeulich@suse.com>
2097 * config/tc-i386.c (build_evex_prefix): Drop early setting of
2100 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
2102 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
2103 explicit_priv_attr. It used to indicate CSR or priv instructions are
2105 (riscv_is_priv_insn): Return True if it is a privileged instruction.
2106 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
2107 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
2108 (riscv_write_out_attrs): Clarification of when to generate the elf
2109 priv spec attributes.
2110 * testsuite/gas/riscv/attribute-11.s: Add comments.
2111 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
2112 `priv_insn_<n>` to decide which priv instruction is expected to used.
2114 * testsuite/gas/riscv/attribute-14a.d: Likewise.
2115 * testsuite/gas/riscv/attribute-14b.d: Likewise.
2116 * testsuite/gas/riscv/attribute-14c.d: Likewise.
2117 * testsuite/gas/riscv/attribute-14d.d: Likewise.
2118 * testsuite/gas/riscv/attribute-14e.d: Likewise.
2120 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
2122 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
2123 (riscv_set_default_priv_spec): Get the priv spec version from the
2124 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
2126 2020-06-20 Alan Modra <amodra@gmail.com>
2128 * configure.tgt: Set bfd_gas for all SH targets.
2130 2020-06-18 Jan Beulich <jbeulich@suse.com>
2132 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
2133 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2136 2020-06-16 Lili Cui <lili.cui@intel.com>
2138 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
2139 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
2140 * doc/c-i386.texi: Add avx512_vp2intersect.
2142 2020-06-16 Jan Beulich <jbeulich@suse.com>
2144 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
2146 * testsuite/gas/i386/sse-check.s: Adjust comment.
2147 * testsuite/gas/i386/sse-check-error.l,
2148 testsuite/gas/i386/sse-check-warn.e,
2149 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
2152 2020-06-16 Alan Modra <amodra@gmail.com>
2154 * config/tc-tic30.h: Remove OBJ_AOUT support.
2155 * configure.tgt: Delete tic30-*-*aout* entry.
2157 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
2159 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
2161 (elf32xtensa_abi): New declaration.
2162 (option_abi_windowed, option_abi_call0): New enum constants.
2163 (md_longopts): Add entries for --abi-windowed and --abi-call0.
2164 (md_parse_option): Add handlers for --abi-windowed and
2166 (xtensa_add_config_info): Use xtensa_abi_choice instead of
2167 XSHAL_ABI to format ABI tag.
2168 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
2169 --abi-call0 to the list of options.
2170 * doc/c-xtensa.texi: Add description for options --abi-windowed
2172 * testsuite/gas/xtensa/abi-call0.d: New test definition.
2173 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
2174 * testsuite/gas/xtensa/abi.s: New test source.
2176 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
2179 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
2181 * testsuite/gas/i386/tsxldtrk.s: Likewise.
2182 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
2183 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
2185 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
2187 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
2188 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2189 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
2191 2020-06-09 Seth Girvan <snth@snthhacks.com>
2193 * doc/c-avr.texi: Improve wording.
2195 2020-06-09 Jan Beulich <jbeulich@suse.com>
2197 * testsuite/gas/i386/x86-64-pseudos-bad.s,
2198 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
2200 2020-06-09 Jan Beulich <jbeulich@suse.com>
2202 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
2204 * testsuite/gas/i386/prefix.d: Adjust expectations.
2206 2020-06-09 Jan Beulich <jbeulich@suse.com>
2208 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
2209 with VEX/EVEX encoding tests.
2210 * testsuite/gas/i386/prefix.d: Adjust expectations.
2212 2020-06-09 Jan Beulich <jbeulich@suse.com>
2214 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
2216 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
2217 * testsuite/gas/i386/noreg64.d: Adjust expectations.
2218 * testsuite/gas/i386/noreg-intel64.d,
2219 testsuite/gas/i386/noreg-intel64.l,
2220 testsuite/gas/i386/noreg-intel64.s: New.
2221 * testsuite/gas/i386/i386.exp: Run new tests.
2223 2020-06-09 Jan Beulich <jbeulich@suse.com>
2225 * config/tc-i386.c (vex_encoding_error): New enumerator.
2226 (VEX_check_operands): Rename to VEX_check_encoding. Check
2227 for vex_encoding_error. Move Imm4 handling ...
2228 (check_VecOperands): ... here.
2229 (match_template): Call VEX_check_encoding when there are no
2230 operands. Split construct calling check_VecOperands and
2231 VEX_check_encoding (when there are operands).
2232 (check_register): Don't blindly set vex_encoding_evex.
2233 * testsuite/gas/i386/pseudos-bad.s,
2234 testsuite/gas/i386/pseudos-bad.l: New.
2235 * testsuite/gas/i386/i386.exp: Run new test.
2236 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
2238 2020-06-08 Alex Coplan <alex.coplan@arm.com>
2240 * config/tc-arm.c (insns): Add dfb.
2241 * testsuite/gas/arm/dfb.d: New test.
2242 * testsuite/gas/arm/dfb.s: Input for test.
2244 2020-06-08 Nick Clifton <nickc@redhat.com>
2246 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
2248 2020-06-08 Jan Beulich <jbeulich@suse.com>
2250 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
2252 2020-06-08 Jan Beulich <jbeulich@suse.com>
2254 * config/tc-i386.c (check_byte_reg): Drop dead conditional
2257 2020-06-08 Jan Beulich <jbeulich@suse.com>
2259 * config/tc-i386.c (check_register): Split RegTR handling, to
2260 fail recognition also in 64-bit mode as well as with i586 or
2261 i686 explicitly enabled.
2262 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
2263 * testsuite/gas/i386/x86_64-intel.d,
2264 testsuite/gas/i386/x86_64.d: Adjust expectations.
2266 2020-06-08 Jan Beulich <jbeulich@suse.com>
2268 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
2269 * testsuite/gas/cfi/cfi.exp: Run this test.
2271 2020-06-08 Jan Beulich <jbeulich@suse.com>
2273 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
2274 check to %st(N) parsing logic.
2275 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
2277 2020-06-08 Jan Beulich <jbeulich@suse.com>
2279 * config/tc-i386.c (bad_reg): New.
2280 (check_VecOperations, i386_att_operand, i386_parse_name): Check
2282 (check_register): New, broken out from ...
2283 (parse_real_register): ... here. Call it.
2284 (parse_register): Call it, and error upon failure.
2285 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
2286 testsuite/gas/i386/x86-64-equ-bad.s,
2287 testsuite/gas/i386/x86-64-equ-bad.l: New.
2288 * testsuite/gas/i386/i386.exp: Run new tests.
2290 2020-06-06 Alan Modra <amodra@gmail.com>
2292 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
2293 * doc/c-ppc.texi: Likewise.
2295 2020-06-06 Alan Modra <amodra@gmail.com>
2297 * config/tc-ppc.c: Update throughout for reloc renaming.
2299 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
2301 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
2304 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
2306 * config/tc-riscv.c (explicit_csr): New static boolean.
2307 Used to indicate CSR are explictly used.
2308 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
2309 (riscv_write_out_attrs): If we already have set elf priv
2310 attributes, then generate them. Otherwise, don't generate
2311 them when no CSR are used.
2312 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
2313 * testsuite/gas/riscv/attribute-02.d: Likewise.
2314 * testsuite/gas/riscv/attribute-03.d: Likewise.
2315 * testsuite/gas/riscv/attribute-04.d: Likewise.
2316 * testsuite/gas/riscv/attribute-05.d: Likewise.
2317 * testsuite/gas/riscv/attribute-06.d: Likewise.
2318 * testsuite/gas/riscv/attribute-07.d: Likewise.
2319 * testsuite/gas/riscv/attribute-08.d: Likewise.
2320 * testsuite/gas/riscv/attribute-09.d: Likewise.
2321 * testsuite/gas/riscv/attribute-10.d: Likewise.
2322 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2323 * testsuite/gas/riscv/attribute-11.s: New testcase.
2324 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
2325 used, so we should output the ELF priv attributes.
2326 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
2327 used, so output the priv attributes according to the -mpriv-spec.
2328 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
2329 used, so ignore the -mpriv-spec setting.
2331 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
2333 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
2334 cgen_get_insn_value.
2335 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
2336 endianness to cgen_get_insn_value and cgen_put_insn_value.
2338 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2340 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
2341 cgen_put_insn_value.
2343 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2345 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
2347 (md_assemble): Remove no longer needed hack.
2349 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2351 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
2352 cgen_put_insn_value.
2353 (gas_cgen_md_apply_fix): Likewise.
2354 (gas_cgen_md_apply_fix): Likewise.
2355 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
2356 cgen_put_insn_value.
2357 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
2358 cgen_put_insn_value.
2360 2020-06-04 Alan Modra <amodra@gmail.com>
2362 * testsuite/config/default.exp: Remove global directive outside
2364 * testsuite/gas/mep/complex-relocs.exp: Likewise.
2365 * testsuite/gas/microblaze/relax_size.exp: Likewise.
2366 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
2367 * testsuite/gas/mt/relocs.exp: Likewise.
2368 * testsuite/gas/rx/rx.exp: Likewise.
2370 2020-06-03 Stephen Casner <casner@acm.org>
2372 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
2374 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
2375 Jim Wilson <jimw@sifive.com>
2378 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
2379 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
2380 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
2381 Move B before SB. Move J before UJ.
2383 2020-06-01 Alex Coplan <alex.coplan@arm.com>
2385 * write.c (relax_segment): Fix handling of negative offset when
2386 relaxing an rs_org frag.
2387 * testsuite/gas/aarch64/org-neg.d: New test.
2388 * testsuite/gas/aarch64/org-neg.l: Error output for test.
2389 * testsuite/gas/aarch64/org-neg.s: Input for test.
2390 * testsuite/gas/arm/org-neg.d: New test.
2391 * testsuite/gas/arm/org-neg.l: Error output for test.
2392 * testsuite/gas/arm/org-neg.s: Input for test.
2394 2020-05-28 Stephen Casner <casner@acm.org>
2396 Fix unexpected failures in gas testsuite for pdp11-aout target.
2397 These are caused by the PDP11's mix of little-endian octets in
2398 shorts but shorts in big endian order for long or quad.
2400 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
2401 * testsuite/gas/all/gas.exp: Select alternate test scripts for
2402 pdp11, skip octa test completely.
2403 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
2404 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
2405 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
2407 2020-05-28 Alex Coplan <alex.coplan@arm.com>
2409 * frags.c (frag_grow): Fix comment.
2411 2020-05-27 Stephen Casner <casner@acm.org>
2414 * config/tc-pdp11.c (parse_reg): Distinguish register names from
2415 symbols that begin with a register name.
2416 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
2417 * testsuite/gas/pdp11/pr26001.s: Likewise.
2418 * testsuite/gas/pdp11/pr26001.d: Likewise.
2420 2020-05-27 Simon Cook <simon.cook@embecosm.com>
2422 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
2423 pointer when creating struct riscv_csr_extra.
2425 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2427 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
2428 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
2429 * testsuite/gas/i386/inval-avx512f.l: Updated.
2431 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
2433 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
2434 load/store instruction variants with alignment hints.
2435 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
2436 instruction variants with alignment hints.
2438 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2441 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
2442 instead of R_XGATE_PCREL_X.
2443 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
2444 BFD_RELOC_XGATE_PCREL_X.
2446 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2449 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
2450 with &fragP->fr_literal[0].
2452 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2455 * config/tc-vax.c (md_estimate_size_before_relax): Replace
2456 fragP->fr_literal with &fragP->fr_literal[0].
2457 (md_convert_frag): Likewise.
2459 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2462 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
2463 with &fragP->fr_literal[0].
2465 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2468 * config/tc-crx.c (getreg_image): Change argument type to int.
2469 (md_convert_frag): Replace fragP->fr_literal with
2470 &fragP->fr_literal[0].
2472 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2475 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
2476 sprintf with memmove.
2478 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2480 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
2481 with &fragP->fr_literal[0].
2483 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2486 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
2487 2 overlapping strings.
2489 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2491 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
2492 with &fragP->fr_literal[0].
2494 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2496 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
2497 with &fragp->fr_literal[0].
2498 * config/tc-microblaze.c (md_apply_fix): Likewise.
2499 * config/tc-sh.c (md_convert_frag): Likewise.
2501 2020-05-24 Jim Wilson <jimw@sifive.com>
2504 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
2505 asection to segT. New locals seg and subseg. Call subseg_set before
2506 fix_new_exp. Call subseg_set after loop to restore original values.
2508 2020-05-21 Alan Modra <amodra@gmail.com>
2510 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
2512 * config/obj-elf.c: Likewise.
2513 * config/tc-aarch64.c: Likewise.
2514 * config/tc-arm.c: Likewise.
2515 * config/tc-m68k.c: Likewise.
2516 * config/tc-nios2.c: Likewise.
2517 * config/tc-tic30.c: Likewise.
2518 * ecoff.c: Likewise.
2520 * stabs.c: Likewise.
2521 * symbols.c: Likewise.
2522 * testsuite/gas/all/test-gen.c: Likewise.
2524 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
2526 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
2527 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
2528 Static variables which are used to set the ISA extensions. You can
2529 use -march (or ELF build attributes) and -misa-spec to set them,
2531 (ext_version_hash): The hash table used to handle the extensions
2533 (init_ext_version_hash): Initialize the ext_version_hash according
2534 to riscv_ext_version_table.
2535 (riscv_get_default_ext_version): The callback function of
2536 riscv_parse_subset_t. According to the choosed ISA spec,
2537 get the default version for the specific extension.
2538 (riscv_set_arch): Set the callback function.
2539 (enum options, struct option md_longopts): Add new option -misa-spec.
2540 (md_parse_option): Do not call riscv_set_arch for -march. We will
2541 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
2542 to set default_isa_spec class.
2543 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
2544 ext_version_hash, and then call riscv_set_arch to set the architecture
2545 with versions according to default_arch_with_ext.
2546 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
2548 * testsuite/gas/riscv/attribute-03.d: Likewise.
2549 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
2550 already set it's version to 2p1 by march, so no need to use the default
2551 2p2 version. For m-ext, we do not set the version by -march and ELF arch
2552 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
2553 ISA spec 2p2, so set 0p0 to it.
2554 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
2555 zicsr is 2p0 according to ISA spec 20191213.
2556 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
2557 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
2558 You can set them by configure options --with-arch and
2559 --with-isa-spec, respectively.
2560 (riscv_set_default_isa_spec): New function used to set the
2562 (md_parse_option): Call riscv_set_default_isa_spec rather than
2563 call riscv_get_isa_spec_class directly.
2564 (riscv_after_parse_args): If the -isa-spec is not set, then we
2565 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
2566 calling riscv_set_default_isa_spec.
2567 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
2568 the --with-isa-spec may be set to different ISA spec.
2569 * testsuite/gas/riscv/attribute-02.d: Likewise.
2570 * testsuite/gas/riscv/attribute-03.d: Likewise.
2571 * testsuite/gas/riscv/attribute-04.d: Likewise.
2572 * testsuite/gas/riscv/attribute-05.d: Likewise.
2573 * testsuite/gas/riscv/attribute-06.d: Likewise.
2574 * testsuite/gas/riscv/attribute-07.d: Likewise.
2575 * configure.ac: Add configure options, --with-arch and
2577 * configure: Regenerated.
2578 * config.in: Regenerated.
2579 * config/tc-riscv.c (default_priv_spec): Static variable which is
2580 used to check if the CSR is valid for the chosen privilege spec. You
2581 can use -mpriv-spec to set it.
2582 (enum reg_class): We now get the CSR address from csr_extra_hash rather
2583 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
2584 (riscv_init_csr_hashes): Only need to initialize one hash table
2586 (riscv_csr_class_check): Change the return type to void. Don't check
2587 the ISA dependency if -mcsr-check isn't set.
2588 (riscv_csr_version_check): New function. Check and find the CSR address
2589 from csr_extra_hash, according to default_priv_spec. Report warning
2590 for the invalid CSR if -mcsr-check is set.
2591 (reg_csr_lookup_internal): Updated.
2592 (reg_lookup_internal): Likewise.
2593 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
2594 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
2595 (md_parse_option): Call riscv_set_default_priv_version to set
2597 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
2598 privilege spec to the newest one.
2599 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
2600 include/opcode/riscv.h.
2601 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
2602 to check the ISA dependency for CSR, so fix the spec version by adding
2604 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
2605 version warnings for the test case.
2606 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2607 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2608 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2609 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2610 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2611 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
2612 Check whether the CSR is valid when privilege version 1.9 is choosed.
2613 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2614 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
2615 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
2616 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
2617 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
2618 Check whether the CSR is valid when privilege version 1.10 is choosed.
2619 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
2620 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
2621 Check whether the CSR is valid when privilege version 1.11 is choosed.
2622 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
2623 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
2624 setting. You can set it by configure option --with-priv-spec.
2625 (riscv_set_default_priv_spec): New function used to set the default
2627 (md_parse_option): Call riscv_set_default_priv_spec rather than
2628 call riscv_get_priv_spec_class directly.
2629 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
2630 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
2631 calling riscv_set_default_priv_spec.
2632 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
2633 the --with-priv-spec may be set to different privilege spec.
2634 * testsuite/gas/riscv/priv-reg.d: Likewise.
2635 * configure.ac: Add configure option --with-priv-spec.
2636 * configure: Regenerated.
2637 * config.in: Regenerated.
2638 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
2639 explicit_attr. Set it to TRUE if any ELF attribute is found.
2640 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
2641 the priv attributes are set.
2642 (md_assemble): Set the default_priv_spec according to the priv
2643 attributes when we start to assemble instruction.
2644 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
2645 riscv_write_out_attrs. Update the arch and priv attributes. If we
2646 don't set the corresponding ELF attributes, then try to output the
2648 (riscv_set_public_attributes): If any ELF attribute or -march-attr
2649 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
2650 to update the arch and priv attributes.
2651 (s_riscv_attribute): Make sure all arch and priv attributes are set
2652 before any instruction.
2653 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
2654 ELF attribute or -march-attr is set. If the priv attributes are not
2655 set, then try to update them by the default setting (-mpriv-spec or
2657 * testsuite/gas/riscv/attribute-02.d: Likewise.
2658 * testsuite/gas/riscv/attribute-03.d: Likewise.
2659 * testsuite/gas/riscv/attribute-04.d: Likewise.
2660 * testsuite/gas/riscv/attribute-06.d: Likewise.
2661 * testsuite/gas/riscv/attribute-07.d: Likewise.
2662 * testsuite/gas/riscv/attribute-08.d: Likewise.
2663 * testsuite/gas/riscv/attribute-09.d: Likewise.
2664 * testsuite/gas/riscv/attribute-10.d: Likewise.
2665 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2666 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
2667 set by priv attributes must be supported.
2668 * testsuite/gas/riscv/attribute-05.s: Likewise.
2669 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
2670 priv attributes according to the -mpriv-spec option.
2671 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
2672 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
2673 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
2674 * testsuite/gas/riscv/priv-reg.d: Removed.
2675 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
2676 CSR according to the priv spec 1.9.
2677 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
2678 CSR according to the priv spec 1.9.1.
2679 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
2680 CSR according to the priv spec 1.10.
2681 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
2682 CSR according to the priv spec 1.11.
2683 * config/tc-riscv.c (md_show_usage): Add descriptions about
2684 the new GAS options.
2685 * doc/c-riscv.texi: Likewise.
2687 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
2689 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
2690 * testsuite/gas/ppc/power9.d: Likewise.
2691 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
2692 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
2693 sync, wait, waitrsv>: Add tests.
2694 * testsuite/gas/ppc/power10.d: Likewise.
2696 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
2699 * config/tc-arm.c : Add arm_ext_v8r feature.
2700 (it_fsm_post_encode): Check arm_ext_v8r feature.
2701 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
2703 2020-05-19 Alan Modra <amodra@gmail.com>
2705 * write.c (write_contents): Use bfd_get_filename rather than
2706 accessing bfd->filename directly. Use bfd_section_name rather
2707 than accessing section->name directly.
2709 2020-05-19 Alan Modra <amodra@gmail.com>
2711 * symbols.c (local_symbol_make): Init all of lsy_flags.
2713 2020-05-18 Alan Modra <amodra@gmail.com>
2715 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
2716 before looking at add_symbol->sy_flags.
2718 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
2720 * config/tc-i386.c: Not handle lret/iret.
2721 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
2722 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
2723 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
2724 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
2725 * testsuite/gas/i386/lfence-ret.s: Ditto.
2726 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
2727 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
2728 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
2729 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
2730 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
2731 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
2732 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
2734 2020-05-15 Alan Modra <amodra@gmail.com>
2735 Alex Coplan <alex.coplan@arm.com>
2737 * symbols.c (struct local_symbol): Update comment.
2738 (resolve_symbol_value): For resolved symbols equated to other
2739 symbols, verify that the referenced symbol is not a local_symbol
2740 before accessing sy_value. Don't leave symbol loops during
2741 finalize_syms resolution.
2742 * testsuite/gas/all/assign-bad-recursive.d: New test.
2743 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
2744 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
2745 * testsuite/gas/all/gas.exp: Run it.
2747 2020-05-14 Nick Clifton <nickc@redhat.com>
2749 * po/sv.po: Updated Swedish translation.
2751 2020-05-11 Alan Modra <amodra@gmail.com>
2753 * testsuite/gas/ppc/scalarquad.d,
2754 * testsuite/gas/ppc/scalarquad.s: New test.
2755 * testsuite/gas/ppc/ppc.exp: Run it.
2757 2020-05-11 Alan Modra <amodra@gmail.com>
2759 * testsuite/gas/ppc/rightmost.d,
2760 * testsuite/gas/ppc/rightmost.s: New test.
2761 * testsuite/gas/ppc/ppc.exp: Run it.
2763 2020-05-11 Alan Modra <amodra@gmail.com>
2765 * testsuite/gas/ppc/xvtlsbb.d,
2766 * testsuite/gas/ppc/xvtlsbb.s: New test.
2767 * testsuite/gas/ppc/ppc.exp: Run it.
2769 2020-05-11 Alan Modra <amodra@gmail.com>
2771 * testsuite/gas/ppc/stringop.d,
2772 * testsuite/gas/ppc/stringop.s: New test.
2773 * testsuite/gas/ppc/ppc.exp: Run it.
2775 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2777 * testsuite/gas/ppc/set_bool.d,
2778 * testsuite/gas/ppc/set_bool.s: New test.
2779 * testsuite/gas/ppc/ppc.exp: Run it.
2781 2020-05-11 Alan Modra <amodra@gmail.com>
2783 * testsuite/gas/ppc/bitmanip.d,
2784 * testsuite/gas/ppc/bitmanip.s: New test.
2785 * testsuite/gas/ppc/ppc.exp: Run it.
2787 2020-05-11 Alan Modra <amodra@gmail.com>
2789 * testsuite/gas/ppc/genpcv.d,
2790 * testsuite/gas/ppc/genpcv.s: New test.
2791 * testsuite/gas/ppc/ppc.exp: Run it.
2793 2020-05-11 Alan Modra <amodra@gmail.com>
2795 * testsuite/gas/ppc/maskmanip.d,
2796 * testsuite/gas/ppc/maskmanip.s: New test.
2797 * testsuite/gas/ppc/ppc.exp: Run it.
2799 2020-05-11 Alan Modra <amodra@gmail.com>
2800 Peter Bergner <bergner@linux.ibm.com>
2802 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
2803 (md_assemble): Check acc specified in correct operand.
2804 * testsuite/gas/ppc/outerprod.d,
2805 * testsuite/gas/ppc/outerprod.s,
2806 * testsuite/gas/ppc/vsx4.d,
2807 * testsuite/gas/ppc/vsx4.s: New tests.
2808 * testsuite/gas/ppc/ppc.exp: Run them.
2810 2020-05-11 Alan Modra <amodra@gmail.com>
2812 * testsuite/gas/ppc/simd_perm.d,
2813 * testsuite/gas/ppc/simd_perm.s: New test.
2814 * testsuite/gas/ppc/ppc.exp: Run it.
2816 2020-05-11 Alan Modra <amodra@gmail.com>
2818 * testsuite/gas/ppc/int128.d,
2819 * testsuite/gas/ppc/int128.s: New test.
2820 * testsuite/gas/ppc/ppc.exp: Run it.
2822 2020-05-11 Alan Modra <amodra@gmail.com>
2824 * testsuite/gas/ppc/vsx_32byte.d,
2825 * testsuite/gas/ppc/vsx_32byte.s: New test.
2826 * testsuite/gas/ppc/ppc.exp: Run it.
2828 2020-05-11 Alan Modra <amodra@gmail.com>
2830 * testsuite/gas/ppc/vec_mul.s,
2831 * testsuite/gas/ppc/vec_mul.d: New test.
2832 * testsuite/gas/ppc/ppc.exp: Run it.
2834 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2836 * testsuite/gas/ppc/byte_rev.d,
2837 * testsuite/gas/ppc/byte_rev.s: New test.
2838 * testsuite/gas/ppc/ppc.exp: Run it.
2840 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2842 * testsuite/gas/ppc/power10.d: Add paste. tests.
2843 * testsuite/gas/ppc/power10.s: Likewise.
2845 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2847 * testsuite/gas/ppc/power10.s: New test.
2848 * testsuite/gas/ppc/power10.d: Likewise.
2849 * testsuite/gas/ppc/ppc.exp: Run it.
2851 2020-05-11 Alan Modra <amodra@gmail.com>
2853 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
2855 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
2856 place of -mfuture/-Mfuture.
2857 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
2858 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
2860 2020-05-06 Nick Clifton <nickc@redhat.com>
2862 * po/sv.po: Updated Swedish translation.
2864 2020-05-06 Nick Clifton <nickc@redhat.com>
2867 * doc/as.texi (Preprocessing): Replace cross reference to not
2868 existant document with a URL to the equivalent page in the GCC
2871 2020-05-05 Nick Clifton <nickc@redhat.com>
2873 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
2874 construction of a DWARF-5 directory name table.
2875 * testsuite/gas/elf/pr25917.d: Update expected output.
2877 2020-05-05 Gunther Nikl <gnikl@justmail.de>
2879 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
2880 (md_parse_option): Remove initialization of elf_flags.
2882 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
2885 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
2886 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
2887 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
2889 2020-05-04 Nick Clifton <nickc@redhat.com>
2892 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
2893 table's existence before looking at its entries.
2894 Also do not emit a default directory entry if there are no
2897 * testsuite/gas/elf/pr25917.s: New test source file.
2898 * testsuite/gas/elf/pr25917.d: New test driver.
2899 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
2901 2020-04-30 Alex Coplan <alex.coplan@arm.com>
2903 * config/tc-aarch64.c (fix_insn): Implement for
2904 AARCH64_OPND_UNDEFINED.
2905 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
2906 * testsuite/gas/aarch64/udf.s: New.
2907 * testsuite/gas/aarch64/udf.d: New.
2908 * testsuite/gas/aarch64/udf-invalid.s: New.
2909 * testsuite/gas/aarch64/udf-invalid.l: New.
2910 * testsuite/gas/aarch64/udf-invalid.d: New.
2912 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
2914 * config/tc-rx.c (elf_flags): Reset default value.
2915 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
2917 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
2919 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
2920 if it's not defined.
2921 (microarch_earliest): New static variable.
2922 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
2923 simcall opcode has mandatory parameter.
2924 (xg_init_global_config): Initialize microarch_earliest.
2926 2020-04-29 Nick Clifton <nickc@redhat.com>
2929 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
2930 IMM0_8S and add support for IMM0_8U.
2931 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
2932 unsigned 8-bit immediate.
2933 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
2934 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
2936 2020-04-27 Tamar Christina <tamar.christina@arm.com>
2938 * NEWS: Add news entry for big-obj.
2939 * config/tc-i386.c (i386_target_format): Support new format.
2940 * doc/c-i386.texi: Add i386 support.
2941 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
2942 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
2944 2020-04-27 Nick Clifton <nickc@redhat.com>
2947 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
2948 (assign_file_to_slot): New function. Fills in an entry in the
2950 (allocate_filenum): Use new function.
2951 (allocate_filename_to_slot): Use new function. If the specified
2952 slot entry is already in use, but was chosen automatically then
2953 reassign the automatic entry.
2955 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
2957 * config/tc-i386.c (lfence_before_ret_shl): New member.
2958 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
2960 (insert_after_load): Issue warning for REP CMPS/SCAS.
2961 (insert_before_before): Handle iret, Handle
2962 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
2963 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
2964 -mlfence-before-ret=[none/not/or/shl/yes].
2965 Enable -mlfence-before-ret=shl when
2966 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
2967 (md_show_usage): Ditto.
2968 * doc/c-i386.texi: Ditto.
2969 * testsuite/gas/i386/i386.exp: Add new testcases.
2970 * testsuite/gas/i386/lfence-load-b.d: New.
2971 * testsuite/gas/i386/lfence-load-b.e: New.
2972 * testsuite/gas/i386/lfence-load.d: Modified.
2973 * testsuite/gas/i386/lfence-load.e: New.
2974 * testsuite/gas/i386/lfence-load.s: Modified.
2975 * testsuite/gas/i386/lfence-ret-a.d: Modified.
2976 * testsuite/gas/i386/lfence-ret-b.d: Modified.
2977 * testsuite/gas/i386/lfence-ret-c.d: New.
2978 * testsuite/gas/i386/lfence-ret-d.d: New.
2979 * testsuite/gas/i386/lfence-ret.s: Modified.
2980 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
2981 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
2982 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
2983 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
2984 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
2985 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
2986 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
2987 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
2988 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
2989 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
2991 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
2994 * config/tc-xtensa.c (md_apply_fix): Replace
2995 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
2996 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
2997 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
2998 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
2999 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
3001 2020-04-22 Alan Modra <amodra@gmail.com>
3003 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
3004 symbol for ".symver .. remove".
3005 * doc/as.texi (.symver): Update.
3006 * testsuite/gas/symver/symver11.s: Make foo weak.
3007 * testsuite/gas/symver/symver11.d: Expect an error.
3008 * testsuite/gas/symver/symver7.d: Allow other random symbols.
3010 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3012 * testsuite/gas/symver/symver11.s: Add ".balign 8".
3014 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
3017 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
3018 * testsuite/gas/m68k/operands.d: Update.
3019 * testsuite/gas/m68k/op68000.d: Update for new error messages.
3021 2020-04-21 Tamar Christina <tamar.christina@arm.com>
3024 * testsuite/gas/arm/pr24753.d: New test.
3025 * testsuite/gas/arm/pr24753.s: New test.
3027 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3031 * NEWS: Mention .symver extension.
3032 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
3034 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
3035 add a version name. Add local, hidden and remove visibility
3037 (elf_frob_symbol): Handle the list of version names. Update the
3038 original symbol to local, hidden or remove it from the symbol
3040 (elf_frob_file_before_adjust): Handle the list of version names.
3041 * config/obj-elf.h (elf_visibility): New.
3042 (elf_versioned_name_list): Likewise.
3043 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
3044 and visibility. Change versioned_name pointer to struct
3045 elf_versioned_name_list.
3046 * doc/as.texi: Update .symver directive.
3047 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
3048 error checking tests.
3049 * testsuite/gas/symver/symver6.d: New file.
3050 * testsuite/gas/symver/symver7.d: Likewise.
3051 * testsuite/gas/symver/symver7.s: Likewise.
3052 * testsuite/gas/symver/symver8.d: Likewise.
3053 * testsuite/gas/symver/symver8.s: Likewise.
3054 * testsuite/gas/symver/symver9.s: Likewise.
3055 * testsuite/gas/symver/symver9a.d: Likewise.
3056 * testsuite/gas/symver/symver9b.d: Likewise.
3057 * testsuite/gas/symver/symver10.s: Likewise.
3058 * testsuite/gas/symver/symver10a.d: Likewise.
3059 * testsuite/gas/symver/symver10b.d: Likewise.
3060 * testsuite/gas/symver/symver11.d: Likewise.
3061 * testsuite/gas/symver/symver11.s: Likewise.
3062 * testsuite/gas/symver/symver12.d: Likewise.
3063 * testsuite/gas/symver/symver12.s: Likewise.
3064 * testsuite/gas/symver/symver13.d: Likewise.
3065 * testsuite/gas/symver/symver13.s: Likewise.
3066 * testsuite/gas/symver/symver14.d: Likewise.
3067 * testsuite/gas/symver/symver14.l: Likewise.
3068 * testsuite/gas/symver/symver15.d: Likewise.
3069 * testsuite/gas/symver/symver15.l: Likewise.
3070 * testsuite/gas/symver/symver6.l: Removed.
3071 * testsuite/gas/symver/symver6.s: Updated.
3073 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3075 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
3077 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
3078 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
3079 * testsuite/gas/aarch64/system.d: Update.
3081 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3083 * testsuite/gas/aarch64/bti.d: Update -march option.
3084 * testsuite/gas/aarch64/illegal-bti.d: Remove.
3085 * testsuite/gas/aarch64/illegal-bti.l: Remove.
3086 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
3087 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
3089 2020-04-17 Alan Modra <amodra@gmail.com>
3091 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
3093 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
3094 Nick Clifton <nickc@redhat.com>
3097 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
3099 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
3100 for the type-2 test.
3101 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
3102 targets running this test.
3104 2020-02-16 David Faust <david.faust@oracle.com>
3106 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
3107 * testsuite/gas/bpf/jump32.s: New file.
3108 * testsuite/gas/bpf/jump32.d: Likewise.
3110 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
3112 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
3115 2020-04-08 Gunther Nikl <gnikl@justmail.de>
3117 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
3118 (md_pcrel_from): Remove prototytpe.
3119 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
3121 (md_pcrel_from_section): Remove duplicate prototype.
3122 * tc.h (md_pcrel_from_section): Add prototype.
3123 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
3124 * config/tc-arc.h (md_pcrel_from_section): Likewise.
3125 * config/tc-arm.h (md_pcrel_from_section): Likewise.
3126 * config/tc-avr.h (md_pcrel_from_section): Likewise.
3127 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
3128 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
3129 * config/tc-csky.h (md_pcrel_from_section): Likewise.
3130 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
3131 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
3132 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
3133 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
3134 * config/tc-frv.h (md_pcrel_from_section): Likewise.
3135 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
3136 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
3137 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
3138 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
3139 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
3140 * config/tc-mep.h (md_pcrel_from_section): Likewise.
3141 * config/tc-metag.h (md_pcrel_from_section): Likewise.
3142 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
3143 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
3144 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
3145 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
3146 * config/tc-mt.h (md_pcrel_from_section): Likewise.
3147 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
3148 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
3149 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
3150 * config/tc-rx.h (md_pcrel_from_section): Likewise.
3151 * config/tc-s390.h (md_pcrel_from_section): Likewise.
3152 * config/tc-sh.h (md_pcrel_from_section): Likewise.
3153 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
3154 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
3155 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
3156 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
3157 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
3158 md_apply_fix3): Delete prototypes.
3160 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3162 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
3165 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3167 * doc/c-z80.texi: Fix @xref warnings.
3169 2020-04-07 Lili Cui <lili.cui@intel.com>
3171 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
3172 (cpu_noarch): Likewise.
3173 * doc/c-i386.texi: Document TSXLDTRK.
3174 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
3175 * testsuite/gas/i386/tsxldtrk.d: Likewise.
3176 * testsuite/gas/i386/tsxldtrk.s: Likewise.
3177 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
3179 2020-04-02 Lili Cui <lili.cui@intel.com>
3181 * config/tc-i386.c (cpu_arch): Add .serialize.
3182 (cpu_noarch): Likewise.
3183 * doc/c-i386.texi: Document serialize.
3184 * testsuite/gas/i386/i386.exp: Run serialize tests
3185 * testsuite/gas/i386/serialize.d: Likewise.
3186 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
3187 * testsuite/gas/i386/serialize.s: Likewise.
3189 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3191 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
3192 * testsuite/gas/elf/section12b.d: Likewise.
3193 * testsuite/gas/elf/section16a.d: Likewise.
3194 * testsuite/gas/elf/section16b.d: Likewise.
3196 2020-04-02 Gunther Nikl <gnikl@justmail.de>
3198 * config/tc-m68k.c (m68k_ip): Fix range check for index register
3199 with a suppressed address register.
3201 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
3204 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
3205 * testsuite/gas/i386/localpic.s: Add a test for relocation
3206 against local absolute symbol.
3207 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
3208 * testsuite/gas/i386/localpic.d: Updated.
3209 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
3210 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
3212 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3215 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
3216 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
3217 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
3218 testsuite/gas/i386/x86-64-jump.d.
3219 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
3220 Incorporate changes to
3221 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
3222 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
3223 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
3224 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
3225 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
3227 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
3231 * dwarf2dbg.c: Do not include "bignum.h".
3233 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
3235 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
3236 * testsuite/gas/riscv/alias-csr.s: Likewise.
3237 * testsuite/gas/riscv/no-aliases-csr.d: Move this
3238 to priv-reg-pseudo-noalias.
3239 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
3240 * testsuite/gas/riscv/bad-csr.l: Likewise.
3241 * testsuite/gas/riscv/bad-csr.s: Likewise.
3242 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
3243 * testsuite/gas/riscv/satp.s: Likewise.
3244 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
3245 csr instruction, including alias-csr testcase.
3246 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
3247 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
3248 pseudo instruction with objdump -Mno-aliases.
3249 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
3250 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
3251 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
3252 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
3253 * testsuite/gas/riscv/priv-reg.s: Likewise.
3254 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3255 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
3256 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
3258 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
3260 * config/obj-coff.c (obj_coff_section): Set the bss flag on
3261 sections with the "b" attribute.
3263 2020-03-22 Alan Modra <amodra@gmail.com>
3265 * testsuite/gas/s12z/truncated.d: Update expected output.
3267 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3270 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
3271 * doc/c-z80.texi: Update documentation.
3273 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3278 Fix disassembling ED+A4/AC/B4/BC opcodes.
3279 Fix assembling lines containing colonless label and instruction
3280 with first operand inside parentheses.
3281 Fix registration of unsupported by target CPU registers.
3282 * config/tc-z80.c: See above.
3283 * config/tc-z80.h: See above.
3284 * testsuite/gas/z80/colonless.d: Update test.
3285 * testsuite/gas/z80/colonless.s: Likewise.
3286 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
3287 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
3288 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3289 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
3290 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
3291 * testsuite/gas/z80/unsup_regs.s: Likewise.
3292 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
3293 * testsuite/gas/z80/z80.exp: Likewise.
3294 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
3295 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
3296 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
3298 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
3301 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
3302 (parse_operands): Handle new operand codes.
3303 (do_neon_dyadic_long): Make shape check accept the scalar variants.
3304 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
3305 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
3306 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
3307 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
3308 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
3309 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
3310 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
3312 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3314 * NEWS: Mention x86 assembler options for CVE-2020-0551.
3316 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3318 * testsuite/gas/i386/i386.exp: Run new tests.
3319 * testsuite/gas/i386/lfence-byte.d: New file.
3320 * testsuite/gas/i386/lfence-byte.e: Likewise.
3321 * testsuite/gas/i386/lfence-byte.s: Likewise.
3322 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
3323 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
3324 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
3325 * testsuite/gas/i386/lfence-indbr.e: Likewise.
3326 * testsuite/gas/i386/lfence-indbr.s: Likewise.
3327 * testsuite/gas/i386/lfence-load.d: Likewise.
3328 * testsuite/gas/i386/lfence-load.s: Likewise.
3329 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
3330 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
3331 * testsuite/gas/i386/lfence-ret.s: Likewise.
3332 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
3333 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
3334 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
3335 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
3336 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
3337 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
3338 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
3339 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
3340 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
3341 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
3342 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
3343 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
3345 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3347 * config/tc-i386.c (lfence_after_load): New.
3348 (lfence_before_indirect_branch_kind): New.
3349 (lfence_before_indirect_branch): New.
3350 (lfence_before_ret_kind): New.
3351 (lfence_before_ret): New.
3354 (insert_lfence_after): New.
3355 (insert_lfence_before): New.
3356 (md_assemble): Call insert_lfence_before and insert_lfence_after.
3358 (OPTION_MLFENCE_AFTER_LOAD): New.
3359 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
3360 (OPTION_MLFENCE_BEFORE_RET): New.
3361 (md_longopts): Add -mlfence-after-load=,
3362 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3363 (md_parse_option): Handle -mlfence-after-load=,
3364 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3365 (md_show_usage): Display -mlfence-after-load=,
3366 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3367 (i386_cons_align): New.
3368 * config/tc-i386.h (i386_cons_align): New.
3369 (md_cons_align): New.
3370 * doc/c-i386.texi: Document -mlfence-after-load=,
3371 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3373 2020-03-11 Nick Clifton <nickc@redhat.com>
3377 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
3378 (DWARF2_FILE_SIZE_NAME): Default to -1.
3379 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
3380 whichever is higher.
3381 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
3382 (NUM_MD5_BYTES): Define.
3383 (struct file entry): Add md5 field.
3384 (get_filenum): Delete and replace with...
3385 (get_basename): New function.
3386 (get_directory_table_entry): New function.
3387 (allocate_filenum): New function.
3388 (allocate_filename_to_slot): New function.
3389 (dwarf2_where): Use new functions.
3390 (dwarf2_directive_filename): Add support for extended .file
3392 (dwarf2_directive_loc): Allow the use of file number zero with
3394 (out_file_list): Rename to...
3395 (out_dir_and_file_list): Add DWARF 5 support.
3396 (out_debug_line): Emit extra values into the section header for
3398 (out_debug_str): Allow for file 0 to be used with DWARF 5.
3399 * doc/as.texi (.file): Update the description of this pseudo-op.
3400 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
3401 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
3402 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
3403 * NEWS: Mention the new feature.
3405 2020-03-10 Alan Modra <amodra@gmail.com>
3407 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
3408 to avoid signed overflow.
3409 * config/tc-mcore.c (md_assemble): Likewise.
3410 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
3411 * config/tc-nds32.c (SET_ADDEND): Likewise.
3412 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
3414 2020-03-09 Jan Beulich <jbeulich@suse.com>
3416 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
3417 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
3418 testsuite/gas/i386/avx-intel.d: Adjust expectations.
3420 2020-03-07 Alan Modra <amodra@gmail.com>
3422 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
3425 2020-03-06 Nick Clifton <nickc@redhat.com>
3428 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
3429 0 if the dwarf_level is 5 or more. Complain if a filename follows
3431 * testsuite/gas/elf/dwarf-5-file0.s: New test.
3432 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
3433 * testsuite/gas/elf/elf.exp: Run the new test.
3436 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
3437 * doc/as.texi: Fix another typo.
3439 2020-03-06 Nick Clifton <nickc@redhat.com>
3442 * as.c (dwarf_level): Define.
3443 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
3444 (parse_args): Add support for the new options.
3445 as.h (dwarf_level): Prototype.
3446 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
3448 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
3449 (DWARF2_LINE_VERSION): Remove definition.
3450 * doc/as.texi: Document the new options.
3452 2020-03-06 Nick Clifton <nickc@redhat.com>
3455 * as.c (main): Allow matching input and outputs when they are
3458 2020-03-06 Jan Beulich <jbeulich@suse.com>
3460 * config/tc-i386.c (match_mem_size): Generalize broadcast special
3462 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
3463 one of byte/word/dword/qword is set alongside a SIMD register in
3464 a template's operand.
3466 2020-03-06 Jan Beulich <jbeulich@suse.com>
3468 * config/tc-i386.c (match_template): Extend code in logic
3469 rejecting certain suffixes in certain modes to also cover mask
3470 register use and VecSIB. Drop special casing of broadcast. Skip
3471 immediates in the check.
3473 2020-03-06 Jan Beulich <jbeulich@suse.com>
3475 * config/tc-i386.c (match_template): Fold duplicate code in
3476 logic rejecting certain suffixes in certain modes. Drop
3479 2020-03-06 Jan Beulich <jbeulich@suse.com>
3481 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
3482 alongside !norex64 ones.
3483 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
3484 with both 32- and 64-bit GPR operands.
3485 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
3486 32- and 64-bit GPR operands.
3487 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
3488 testsuite/gas/i386/x86-64-avx512bw.d,
3489 testsuite/gas/i386/x86-64-avx512f-intel.d,
3490 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
3492 2020-03-06 Jan Beulich <jbeulich@suse.com>
3494 * config/tc-i386.c (md_assemble): Drop use of rex64.
3495 (process_suffix): For REX.W for 64-bit CRC32.
3497 2020-03-06 Jan Beulich <jbeulich@suse.com>
3499 * config/tc-i386.c (i386_addressing_mode): For 32-bit
3500 addressing for MPX insns without base/index.
3501 * testsuite/gas/i386/mpx-16bit.s,
3502 * testsuite/gas/i386/mpx-16bit.d: New.
3503 * testsuite/gas/i386/i386.exp: Run new test.
3505 2020-03-06 Jan Beulich <jbeulich@suse.com>
3507 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
3508 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
3509 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
3510 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
3511 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
3512 as well as a BSWAP one.
3513 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
3514 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
3515 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
3516 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
3517 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
3518 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
3519 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
3520 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
3521 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
3522 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
3523 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
3524 testsuite/gas/i386/vmx.d: Adjust expectations.
3526 2020-03-06 Jan Beulich <jbeulich@suse.com>
3528 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
3529 from having their operands swapped.
3530 * testsuite/gas/i386/waitpkg.s,
3531 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
3532 3-operand cases as well as testing of 16-bit code generation.
3533 * testsuite/gas/i386/waitpkg.d,
3534 testsuite/gas/i386/waitpkg-intel.d,
3535 testsuite/gas/i386/x86-64-waitpkg.d,
3536 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
3538 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
3540 * config/tc-riscv.c (percent_op_utype): Support the modifier
3542 * doc/c-riscv.texi: Add documentation.
3543 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
3544 modifier %got_pcrel_hi.
3545 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
3546 * testsuite/gas/riscv/relax-reloc.d: Likewise.
3547 * testsuite/gas/riscv/relax-reloc.s: Likewise.
3549 * doc/c-riscv.texi (relocation modifiers): Add documentation.
3550 (RISC-V-Formats): Update the section name from "Instruction Formats"
3551 to "RISC-V Instruction Formats".
3553 2020-03-04 Alexandre Oliva <oliva@adacore.com>
3555 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
3556 detected in a section which does not have at least 4 byte
3558 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
3559 * testsuite/gas/arm/ldr-t.s: Likewise.
3560 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
3561 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
3562 disassembly, ignoring any NOPs that may have been inserted because
3563 of section alignment.
3564 * testsuite/gas/arm/ldr-t.d: Likewise.
3566 2020-03-04 Jan Beulich <jbeulich@suse.com>
3568 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
3569 * doc/c-i386.texi: Mention sev_es.
3570 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
3571 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
3573 * testsuite/gas/i386/arch-13-znver1.d,
3574 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
3576 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3578 * config/tc-i386.c (match_template): Replace ignoresize and
3579 defaultsize with mnemonicsize.
3580 (process_suffix): Likewise.
3582 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3585 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
3586 instruction LD IY,(HL).
3587 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
3588 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
3589 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
3590 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
3592 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3595 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
3596 x86-64-default-suffix-avx.
3597 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
3598 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
3599 * testsuite/gas/i386/noreg64.d: Updated.
3600 * testsuite/gas/i386/noreg64.l: Likewise.
3601 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
3602 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
3603 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
3605 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3608 * config/tc-z80.c (contains_register): Prevent an illegal memory
3609 access when checking an expression for a register name.
3611 2020-03-03 Alan Modra <amodra@gmail.com>
3613 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
3616 2020-03-02 Alan Modra <amodra@gmail.com>
3618 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
3619 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
3621 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
3622 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
3623 (s3_s_score_lcomm): Likewise.
3624 * config/tc-score7.c: Similarly.
3625 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
3627 2020-02-28 YunQiang Su <syq@debian.org>
3630 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
3631 to handle multi-labels.
3632 (has_label_name): New.
3634 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
3636 * config/tc-arm.c (enum pred_instruction_type): Remove
3637 NEUTRAL_IT_NO_VPT_INSN predication type.
3638 (cxn_handle_predication): Modify to require condition suffixes.
3639 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
3640 * testsuite/gas/arm/cde-scalar.s: Update test.
3641 * testsuite/gas/arm/cde-warnings.l: Update test.
3642 * testsuite/gas/arm/cde-warnings.s: Update test.
3644 2020-02-26 Alan Modra <amodra@gmail.com>
3646 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
3647 N_() on empty string.
3649 2020-02-26 Alan Modra <amodra@gmail.com>
3651 * read.c (read_a_source_file): Call strncpy with length one
3652 less than size of original_case_string.
3654 2020-02-26 Alan Modra <amodra@gmail.com>
3656 * config/obj-elf.c: Indent labels correctly.
3657 * config/obj-macho.c: Likewise.
3658 * config/tc-aarch64.c: Likewise.
3659 * config/tc-alpha.c: Likewise.
3660 * config/tc-arm.c: Likewise.
3661 * config/tc-cr16.c: Likewise.
3662 * config/tc-crx.c: Likewise.
3663 * config/tc-frv.c: Likewise.
3664 * config/tc-i386-intel.c: Likewise.
3665 * config/tc-i386.c: Likewise.
3666 * config/tc-ia64.c: Likewise.
3667 * config/tc-mn10200.c: Likewise.
3668 * config/tc-mn10300.c: Likewise.
3669 * config/tc-nds32.c: Likewise.
3670 * config/tc-riscv.c: Likewise.
3671 * config/tc-s12z.c: Likewise.
3672 * config/tc-xtensa.c: Likewise.
3673 * config/tc-z80.c: Likewise.
3675 * symbols.c: Likewise.
3676 * write.c: Likewise.
3678 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
3680 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
3681 we are assembling instruction with CSR. Call riscv_csr_read_only_check
3682 after parsing all arguments.
3683 (enum csr_insn_type): New enum is used to classify the CSR instruction.
3684 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
3685 are used to check if we write a read-only CSR by the CSR instruction.
3686 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
3687 all CSR for the read-only CSR checking.
3688 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
3689 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
3690 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
3691 all CSR instructions for the read-only CSR checking.
3692 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
3693 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
3695 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
3696 (riscv_opts): Initialize it.
3697 (reg_lookup_internal): Check the `riscv_opts.csr_check`
3698 before doing the CSR checking.
3699 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
3700 (md_longopts): Add mcsr-check and mno-csr-check.
3701 (md_parse_option): Handle new enum option values.
3702 (s_riscv_option): Handle new long options.
3703 * doc/c-riscv.texi: Add description for the new .option and assembler
3705 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
3707 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
3709 * config/tc-riscv.c (csr_extra_hash): New.
3710 (enum riscv_csr_class): New enum. Used to decide
3711 whether or not this CSR is legal in the current ISA string.
3712 (struct riscv_csr_extra): New structure to hold all extra information
3714 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
3715 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
3716 Call hash_reg_name to insert CSR address into reg_names_hash.
3717 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
3718 Decide whether the CSR is valid according to the csr_extra_hash.
3719 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
3720 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
3721 not a boolean. This is same as riscv_init_csr_hash, so keep the
3723 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
3724 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
3725 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
3726 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
3727 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
3728 f-ext CSR are not allowed.
3729 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
3730 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
3731 source file is `priv-reg.s`, and the ISA is rv64if, so the
3732 rv32-only CSR are not allowed.
3733 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3735 2020-02-21 Alan Modra <amodra@gmail.com>
3737 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
3738 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
3740 2020-02-21 Alan Modra <amodra@gmail.com>
3743 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
3744 on section size adjustment, instead perform another write if
3745 exec header size is larger than section size.
3747 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3749 * doc/c-riscv.texi: Add the doc entries for -march-attr/
3750 -mno-arch-attr command line options.
3752 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3754 * testsuite/gas/riscv/c-add-addi.d: New testcase.
3755 * testsuite/gas/riscv/c-add-addi.s: Likewise.
3757 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3760 * config/tc-z80.c (md_parse_option): Do not use an underscore
3761 prefix for local labels in SDCC compatability mode.
3762 (z80_start_line_hook): Remove SDCC dollar label support.
3763 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
3764 * testsuite/gas/z80/sdcc.s: Likewise.
3766 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3769 * config/tc-z80.c: Add -march option.
3770 * doc/as.texi: Update Z80 documentation.
3771 * doc/c-z80.texi: Likewise.
3772 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
3773 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
3774 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
3775 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3776 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
3777 * testsuite/gas/z80/gbz80_all.d: Likewise.
3778 * testsuite/gas/z80/r800_extra.d: Likewise.
3779 * testsuite/gas/z80/r800_ii8.d: Likewise.
3780 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
3781 * testsuite/gas/z80/sdcc.d: Likewise.
3782 * testsuite/gas/z80/z180.d: Likewise.
3783 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
3784 * testsuite/gas/z80/z80_doc.d: Likewise.
3785 * testsuite/gas/z80/z80_ii8.d: Likewise.
3786 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
3787 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
3788 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
3789 * testsuite/gas/z80/z80_sli.d: Likewise.
3790 * testsuite/gas/z80/z80n_all.d: Likewise.
3791 * testsuite/gas/z80/z80n_reloc.d: Likewise.
3793 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
3795 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
3796 with GNU_PROPERTY_X86_FEATURE_2_MMX.
3797 * testsuite/gas/i386/i386.exp: Run property-3 and
3799 * testsuite/gas/i386/property-3.d: New file.
3800 * testsuite/gas/i386/property-3.s: Likewise.
3801 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
3803 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
3805 * config/tc-i386.c (cpu_arch): Add .popcnt.
3806 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
3807 Add a tab before @samp{.sse4a}.
3809 2020-02-17 Jan Beulich <jbeulich@suse.com>
3811 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
3812 for AddrPrefixOpReg templates. Combine the two pieces of
3813 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
3816 2020-02-17 Jan Beulich <jbeulich@suse.com>
3819 * config/tc-i386.c (md_assemble): Also suppress operand
3820 swapping for MONITOR{,X} and MWAIT{,X}.
3821 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
3822 Add Intel syntax monitor/mwait tests.
3823 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
3824 Adjust expectations.
3825 *testsuite/gas/i386/sse3-intel.d,
3826 testsuite/gas/i386/x86-64-sse3-intel.d: New.
3827 * testsuite/gas/i386/i386.exp: Run new tests.
3829 2020-02-17 Jan Beulich <jbeulich@suse.com>
3832 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
3833 [XYZ]MMWord memory operand ambiguity recognition logic (largely
3835 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
3837 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
3838 * testsuite/gas/i386/avx512dq-inval.l,
3839 testsuite/gas/i386/inval-avx.l,
3840 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
3841 * testsuite/gas/i386/avx512vl-ambig.s,
3842 testsuite/gas/i386/avx512vl-ambig.l: New.
3843 * testsuite/gas/i386/i386.exp: Run new test.
3845 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
3847 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
3849 * doc/c-i386.texi: Document sse4a and nosse4a.
3851 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
3853 * doc/c-i386.texi: Remove the old movsx and movzx documentation
3856 2020-02-14 Jan Beulich <jbeulich@suse.com>
3859 * config/tc-i386.c (md_assemble): Move movsx/movzx special
3861 (process_suffix): ... here. Consider just the first operand
3863 (check_long_reg): Drop opcode 0x63 special case again.
3864 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
3865 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
3866 Move ambiguous operand size tests ...
3867 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
3868 testsuite/gas/i386/noreg64.s: ... here.
3869 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
3870 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
3871 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
3872 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
3873 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
3874 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
3875 testsuite/gas/i386/x86-64-movsxd.d,
3876 testsuite/gas/i386/x86-64-movsxd-intel.d,
3877 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
3878 Adjust expectations.
3879 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
3880 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
3881 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
3882 * testsuite/gas/i386/i386.exp: Run new tests.
3884 2020-02-14 Jan Beulich <jbeulich@suse.com>
3886 * config/tc-i386.c (process_operands): Also skip segment
3887 override prefix emission if it matches an already present one.
3888 * testsuite/gas/i386/prefix32.s: Add double segment override
3890 * testsuite/gas/i386/prefix32.l: Adjust expectations.
3892 2020-02-14 Jan Beulich <jbeulich@suse.com>
3894 * config/tc-i386.c (process_operands): Drop ineffectual segment
3895 overrides when optimizing.
3896 * testsuite/gas/i386/lea-optimize.d: New.
3897 * testsuite/gas/i386/i386.exp: Run new test.
3899 2020-02-14 Jan Beulich <jbeulich@suse.com>
3901 * config/tc-i386.c (process_operands): Also check insn prefix
3902 for ineffectual segment override warning. Don't cover possible
3903 VEX/EVEX encoded insns there.
3904 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
3905 testsuite/gas/i386/lea.e: New.
3906 * testsuite/gas/i386/i386.exp: Run new test.
3908 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
3911 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
3914 2020-02-13 Fangrui Song <maskray@google.com>
3915 H.J. Lu <hongjiu.lu@intel.com>
3918 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
3919 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
3920 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
3921 * testsuite/gas/i386/relax-5.d: New file.
3922 * testsuite/gas/i386/relax-5.s: Likewise.
3923 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
3924 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
3926 2020-02-13 Jan Beulich <jbeulich@suse.com>
3928 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
3931 2020-02-12 Jan Beulich <jbeulich@suse.com>
3933 * config/tc-i386.c (avx512): New (at file scope), moved from
3934 (check_VecOperands): ... here.
3935 (process_suffix): Add [XYZ]MMword operand size handling.
3936 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
3937 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
3939 * testsuite/gas/i386/avx512dq-inval.l,
3940 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
3942 2020-02-12 Jan Beulich <jbeulich@suse.com>
3945 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
3947 * config/tc-i386-intel.c (i386_intel_operand): Also handle
3948 CALL/JMP in O_tbyte_ptr case.
3949 * doc/c-i386.texi: Mention far call and full pointer load ISA
3951 * testsuite/gas/i386/x86-64-branch-3.s,
3952 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
3953 * testsuite/gas/i386/x86-64-branch-3.d,
3954 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
3955 * testsuite/gas/i386/x86-64-branch-5.l,
3956 testsuite/gas/i386/x86-64-branch-5.s: New.
3957 * testsuite/gas/i386/i386.exp: Run new test.
3959 2020-02-12 Jan Beulich <jbeulich@suse.com>
3962 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
3963 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
3964 64-bit-only warning.
3965 (check_word_reg): Consistently error on mismatching register
3967 * testsuite/gas/i386/general.s: Replace dword GPR with word one
3968 for movw. Replace suffix / GPR for orb.
3969 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
3970 byte GPRs as well as ones for inb/outb with a word accumulator.
3971 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
3972 testsuite/gas/i386/inval.l: Adjust expectations.
3974 2020-02-12 Jan Beulich <jbeulich@suse.com>
3976 * config/tc-i386.c (operand_type_register_match): Also fall
3977 through initial two if()-s when the template allows for a GPR
3978 operand. Adjust comment.
3980 2020-02-11 Jan Beulich <jbeulich@suse.com>
3982 (struct _i386_insn): New field "short_form".
3983 (optimize_encoding): Drop setting of shortform field.
3984 (process_suffix): Set i.short_form. Replace shortform use.
3985 (process_operands): Replace shortform use.
3987 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
3989 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
3990 loop initial declaration.
3992 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
3994 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
3995 instructions that can have 5 arguments.
3996 (enum operand_parse_code): Add new operands.
3997 (parse_operands): Account for new operands.
3999 (enum neon_shape_el): Introduce P suffixes for coprocessor.
4000 (neon_select_shape): Account for P suffix.
4001 (LOW1): Move macro to global position.
4002 (HI4): Move macro to global position.
4003 (vcx_assign_vec_d): New.
4004 (vcx_assign_vec_m): New.
4005 (vcx_assign_vec_n): New.
4006 (enum vcx_reg_type): New.
4007 (vcx_get_reg_type): New.
4008 (vcx_size_pos): New.
4010 (vcx_handle_shape): New.
4011 (vcx_ensure_register_in_range): New.
4012 (vcx_handle_register_arguments): New.
4013 (vcx_handle_insn_block): New.
4014 (vcx_handle_common_checks): New.
4018 * testsuite/gas/arm/cde-missing-fp.d: New test.
4019 * testsuite/gas/arm/cde-missing-fp.l: New test.
4020 * testsuite/gas/arm/cde-missing-mve.d: New test.
4021 * testsuite/gas/arm/cde-missing-mve.l: New test.
4022 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
4023 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
4024 * testsuite/gas/arm/cde-mve.s: New test.
4025 * testsuite/gas/arm/cde-warnings.l:
4026 * testsuite/gas/arm/cde-warnings.s:
4027 * testsuite/gas/arm/cde.d:
4028 * testsuite/gas/arm/cde.s:
4030 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
4031 Matthew Malcomson <matthew.malcomson@arm.com>
4033 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
4034 CDE coprocessor that can be enabled.
4035 (enum pred_instruction_type): New pred type.
4036 (BAD_NO_VPT): New error message.
4037 (BAD_CDE): New error message.
4038 (BAD_CDE_COPROC): New error message.
4039 (enum operand_parse_code): Add new immediate operands.
4040 (parse_operands): Account for new immediate operands.
4041 (check_cde_operand): New.
4042 (cde_coproc_enabled): New.
4043 (cde_coproc_pos): New.
4044 (cde_handle_coproc): New.
4045 (cxn_handle_predication): New.
4046 (do_custom_instruction_1): New.
4047 (do_custom_instruction_2): New.
4048 (do_custom_instruction_3): New.
4061 (handle_pred_state): Define new IT block behaviour.
4062 (insns): Add newn CX*{,d}{,a} instructions.
4063 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
4064 Define new cdecp extension strings.
4065 * doc/c-arm.texi: Document new cdecp extension arguments.
4066 * testsuite/gas/arm/cde-scalar.d: New test.
4067 * testsuite/gas/arm/cde-scalar.s: New test.
4068 * testsuite/gas/arm/cde-warnings.d: New test.
4069 * testsuite/gas/arm/cde-warnings.l: New test.
4070 * testsuite/gas/arm/cde-warnings.s: New test.
4071 * testsuite/gas/arm/cde.d: New test.
4072 * testsuite/gas/arm/cde.s: New test.
4074 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
4077 * config/tc-i386.c (intel64): Renamed to ...
4079 (match_template): Accept Intel64 only instruction by default.
4080 (i386_displacement): Updated.
4081 (md_parse_option): Updated.
4082 * c-i386.texi: Update -mamd64/-mintel64 documentation.
4083 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
4084 -mamd64 to x86-64-sysenter-amd.
4085 * testsuite/gas/i386/x86-64-sysenter.d: New file.
4087 2020-02-10 Alan Modra <amodra@gmail.com>
4089 * config/obj-elf.c (obj_elf_change_section): Error for section
4090 type, attr or entsize changes in assembly.
4091 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
4092 * testsuite/gas/elf/section5.l: Update.
4094 2020-02-10 Alan Modra <amodra@gmail.com>
4096 * output-file.c (output_file_close): Do a normal close when
4097 flag_always_generate_output.
4098 * write.c (write_object_file): Don't stop output when
4099 flag_always_generate_output.
4101 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
4104 * config/tc-z80.c: Add -gbz80 command line option to generate code
4105 for the GameBoy Z80. Add support for generating DWARF.
4106 * config/tc-z80.h: Add support for DWARF debug information
4108 * doc/c-z80.texi: Document new command line option.
4109 * testsuite/gas/z80/gbz80_all.d: New file.
4110 * testsuite/gas/z80/gbz80_all.s: New file.
4111 * testsuite/gas/z80/z80.exp: Run the new tests.
4112 * testsuite/gas/z80/z80n_all.d: New file.
4113 * testsuite/gas/z80/z80n_all.s: New file.
4114 * testsuite/gas/z80/z80n_reloc.d: New file.
4116 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4119 * config/obj-elf.c (get_section): Also check
4120 linked_to_symbol_name.
4121 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
4122 (obj_elf_parse_section_letters): Handle the 'o' flag.
4123 (build_group_lists): Renamed to ...
4124 (build_additional_section_info): This. Set elf_linked_to_section
4125 from map_head.linked_to_symbol_name.
4126 (elf_adjust_symtab): Updated.
4127 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
4128 * doc/as.texi: Document the 'o' flag.
4129 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
4130 * testsuite/gas/elf/section18.d: New file.
4131 * testsuite/gas/elf/section18.s: Likewise.
4132 * testsuite/gas/elf/section19.d: Likewise.
4133 * testsuite/gas/elf/section19.s: Likewise.
4134 * testsuite/gas/elf/section20.d: Likewise.
4135 * testsuite/gas/elf/section20.s: Likewise.
4136 * testsuite/gas/elf/section21.d: Likewise.
4137 * testsuite/gas/elf/section21.l: Likewise.
4138 * testsuite/gas/elf/section21.s: Likewise.
4140 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4142 * NEWS: Mention x86 assembler options to align branches for
4145 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4147 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
4148 only for ELF targets.
4149 * testsuite/gas/i386/unique.d: Don't xfail.
4150 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4152 2020-02-06 Alan Modra <amodra@gmail.com>
4154 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
4155 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4157 2020-02-06 Alan Modra <amodra@gmail.com>
4159 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
4160 xfail, and rename test.
4161 * testsuite/gas/elf/section12b.d: Likewise.
4162 * testsuite/gas/elf/section16a.d: Likewise.
4163 * testsuite/gas/elf/section16b.d: Likewise.
4165 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4168 * config/obj-elf.c (section_match): Removed.
4169 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
4171 (obj_elf_change_section): Replace info and group_name arguments
4172 with match_p. Also update the section ID and flags from match_p.
4173 (obj_elf_section): Handle "unique,N". Update call to
4174 obj_elf_change_section.
4175 * config/obj-elf.h (elf_section_match): New.
4176 (obj_elf_change_section): Updated.
4177 * config/tc-arm.c (start_unwind_section): Update call to
4178 obj_elf_change_section.
4179 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
4180 * config/tc-microblaze.c (microblaze_s_data): Likewise.
4181 (microblaze_s_sdata): Likewise.
4182 (microblaze_s_rdata): Likewise.
4183 (microblaze_s_bss): Likewise.
4184 * config/tc-mips.c (s_change_section): Likewise.
4185 * config/tc-msp430.c (msp430_profiler): Likewise.
4186 * config/tc-rx.c (parse_rx_section): Likewise.
4187 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
4188 * doc/as.texi: Document "unique,N" in .section directive.
4189 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
4190 * testsuite/gas/elf/section15.d: New file.
4191 * testsuite/gas/elf/section15.s: Likewise.
4192 * testsuite/gas/elf/section16.s: Likewise.
4193 * testsuite/gas/elf/section16a.d: Likewise.
4194 * testsuite/gas/elf/section16b.d: Likewise.
4195 * testsuite/gas/elf/section17.d: Likewise.
4196 * testsuite/gas/elf/section17.l: Likewise.
4197 * testsuite/gas/elf/section17.s: Likewise.
4198 * testsuite/gas/i386/unique.d: Likewise.
4199 * testsuite/gas/i386/unique.s: Likewise.
4200 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4201 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
4203 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4205 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
4207 2020-02-01 Anthony Green <green@moxielogic.com>
4209 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
4211 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
4213 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
4216 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
4219 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
4220 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
4222 * testsuite/gas/arm/mve_dsp.d: New test.
4224 2020-01-31 Nick Clifton <nickc@redhat.com>
4226 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
4227 rather than BFD_RELOC_NONE.
4229 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4231 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
4232 to support VLDMIA instruction for MVE.
4233 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
4234 instruction for MVE.
4235 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
4236 instruction for MVE.
4237 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
4238 instruction for MVE.
4239 * testsuite/gas/arm/mve-ldst.d: New test.
4240 * testsuite/gas/arm/mve-ldst.s: Likewise.
4242 2020-01-31 Nick Clifton <nickc@redhat.com>
4244 * po/fr.po: Updated French translation.
4245 * po/ru.po: Updated Russian translation.
4247 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
4249 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
4251 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
4252 * testsuite/gas/aarch64/sve-movprfx_28.d,
4253 * testsuite/gas/aarch64/sve-movprfx_28.l,
4254 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
4256 2020-01-30 Jan Beulich <jbeulich@suse.com>
4258 * config/tc-i386.c (output_disp): Tighten base_opcode check.
4259 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
4260 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
4261 Adjust expectations.
4263 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
4265 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
4266 * testsuite/gas/bpf/alu-be.d: Likewise.
4267 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
4268 * testsuite/gas/bpf/alu32-be.d: Likewise.
4270 2020-01-30 Jan Beulich <jbeulich@suse.com>
4272 * testsuite/gas/i386/x86-64-branch-2.s,
4273 testsuite/gas/i386/x86-64-branch-4.s,
4274 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
4275 * testsuite/gas/i386/ilp32/x86-64-branch.d,
4276 testsuite/gas/i386/x86-64-branch-2.d,
4277 testsuite/gas/i386/x86-64-branch-4.l,
4278 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
4280 2020-01-30 Jan Beulich <jbeulich@suse.com>
4282 * config/tc-i386.c (process_suffix): .
4283 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
4284 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
4286 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
4288 testsuite/gas/i386/x86_64.s: Add RETF cases.
4289 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
4290 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
4291 testsuite/gas/i386/x86-64-opcode.d,
4292 testsuite/gas/i386/x86-64-suffix-intel.d,
4293 testsuite/gas/i386/x86-64-suffix.d,
4294 testsuite/gas/i386/x86_64-intel.d
4295 testsuite/gas/i386/x86_64.d: Adjust expectations.
4296 * testsuite/gas/i386/x86-64-suffix.e,
4297 testsuite/gas/i386/x86_64.e: New.
4299 2020-01-30 Jan Beulich <jbeulich@suse.com>
4301 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
4304 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
4307 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
4309 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
4310 differences. Document movslq and movsxd.
4311 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
4312 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
4313 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
4314 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
4315 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
4316 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
4317 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
4318 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
4319 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
4320 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
4321 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
4323 2020-01-27 Alan Modra <amodra@gmail.com>
4325 * testsuite/gas/all/gas.exp: Replace case statements with switch
4327 * testsuite/gas/elf/elf.exp: Likewise.
4328 * testsuite/gas/macros/macros.exp: Likewise.
4329 * testsuite/lib/gas-defs.exp: Likewise.
4331 2020-01-27 Tamar Christina <tamar.christina@arm.com>
4334 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
4335 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
4337 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
4339 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
4340 s exts must be known, so rename *ok* to *fail*.
4341 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
4342 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
4343 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
4345 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
4346 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
4348 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
4351 * config/tc-i386.c (check_long_reg): Always disallow double word
4352 suffix in mnemonic with word general register.
4353 * testsuite/gas/i386/general.s: Replace word general register
4354 with double word general register for movl.
4355 * testsuite/gas/i386/inval.s: Add tests for movl with word general
4357 * testsuite/gas/i386/general.l: Updated.
4358 * testsuite/gas/i386/inval.l: Likewise.
4360 2020-01-22 Alan Modra <amodra@gmail.com>
4362 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
4363 __tls_get_addr_desc and __tls_get_addr_opt.
4365 2020-01-21 Jan Beulich <jbeulich@suse.com>
4367 * testsuite/gas/i386/inval-crc32.s,
4368 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
4369 * testsuite/gas/i386/inval-crc32.l,
4370 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
4372 2020-01-21 Jan Beulich <jbeulich@suse.com>
4374 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
4375 generic code path. Deal with No_lSuf being set in a template.
4376 * testsuite/gas/i386/inval-crc32.l,
4377 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
4378 instead of error(s) when operand size is ambiguous.
4379 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4380 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
4381 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
4382 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
4383 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
4384 Adjust expectations.
4386 2020-01-21 Jan Beulich <jbeulich@suse.com>
4388 * config/tc-i386.c (process_suffix): Drop SYSRET special case
4389 and an intel_syntax check. Re-write lack-of-suffix processing
4391 * doc/c-i386.texi: Document operand size defaults for suffix-
4392 less AT&T syntax insns.
4393 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
4394 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
4395 testsuite/gas/i386/x86-64-avx-scalar.s,
4396 testsuite/gas/i386/x86-64-avx.s,
4397 testsuite/gas/i386/x86-64-bundle.s,
4398 testsuite/gas/i386/x86-64-intel64.s,
4399 testsuite/gas/i386/x86-64-lock-1.s,
4400 testsuite/gas/i386/x86-64-opcode.s,
4401 testsuite/gas/i386/x86-64-sse2avx.s,
4402 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
4403 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
4404 testsuite/gas/i386/x86-64-nops.s,
4405 testsuite/gas/i386/x86-64-ptwrite.s,
4406 testsuite/gas/i386/x86-64-simd.s,
4407 testsuite/gas/i386/x86-64-sse-noavx.s,
4408 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
4410 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4411 testsuite/gas/i386/noreg64.s: Add further tests.
4412 * testsuite/gas/i386/ilp32/x86-64-nops.d,
4413 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
4414 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
4415 testsuite/gas/i386/sse-noavx.d,
4416 testsuite/gas/i386/x86-64-intel64.d,
4417 testsuite/gas/i386/x86-64-nops.d,
4418 testsuite/gas/i386/x86-64-opcode.d,
4419 testsuite/gas/i386/x86-64-ptwrite-intel.d,
4420 testsuite/gas/i386/x86-64-ptwrite.d,
4421 testsuite/gas/i386/x86-64-simd-intel.d,
4422 testsuite/gas/i386/x86-64-simd-suffix.d,
4423 testsuite/gas/i386/x86-64-simd.d,
4424 testsuite/gas/i386/x86-64-sse-noavx.d
4425 testsuite/gas/i386/x86-64-suffix.d,
4426 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
4427 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
4428 testsuite/gas/i386/noreg64.l: New.
4429 * testsuite/gas/i386/i386.exp: Run new tests.
4431 2020-01-21 Jan Beulich <jbeulich@suse.com>
4433 * testsuite/gas/i386/avx512_bf16_vl.s,
4434 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
4435 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
4436 broadcast forms of VCVTNEPS2BF16.
4437 * testsuite/gas/i386/avx512_bf16_vl.d,
4438 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
4440 2020-01-20 Nick Clifton <nickc@redhat.com>
4442 * po/uk.po: Updated Ukranian translation.
4444 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
4447 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
4448 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
4450 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
4451 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
4452 R_X86_64_GOTPC32_TLSDESC relocation.
4454 2020-01-18 Nick Clifton <nickc@redhat.com>
4456 * configure: Regenerate.
4457 * po/gas.pot: Regenerate.
4459 2020-01-18 Nick Clifton <nickc@redhat.com>
4461 Binutils 2.34 branch created.
4463 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
4465 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
4466 with vex_encoding_vex.
4467 (parse_insn): Likewise.
4468 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
4469 and {vex3} documentation.
4470 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
4472 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
4474 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
4477 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
4478 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
4479 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
4480 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
4481 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
4482 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
4484 2020-01-16 Jan Beulich <jbeulich@suse.com>
4486 * config/tc-i386.c (match_template): Drop found_cpu_match local
4489 2020-01-16 Jan Beulich <jbeulich@suse.com>
4491 * testsuite/gas/i386/avx512dq-inval.l,
4492 testsuite/gas/i386/avx512dq-inval.s: New.
4493 * testsuite/gas/i386/i386.exp: Run new test.
4495 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
4497 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
4498 relocations when the target is 430X, except when extracting part of an
4500 (msp430_srcoperand): Adjust comment.
4501 Initialize the expp member of the msp430_operand_s struct as
4503 (msp430_dstoperand): Likewise.
4504 * testsuite/gas/msp430/msp430.exp: Run new test.
4505 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
4506 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
4508 2020-01-15 Alan Modra <amodra@gmail.com>
4510 * configure.tgt: Add sparc-*-freebsd case.
4512 2020-01-14 Lili Cui <lili.cui@intel.com>
4514 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
4515 * testsuite/gas/i386/align-branch-1b.d: Likewise.
4516 * testsuite/gas/i386/align-branch-1c.d: Likewise.
4517 * testsuite/gas/i386/align-branch-1d.d: Likewise.
4518 * testsuite/gas/i386/align-branch-1e.d: Likewise.
4519 * testsuite/gas/i386/align-branch-1f.d: Likewise.
4520 * testsuite/gas/i386/align-branch-1g.d: Likewise.
4521 * testsuite/gas/i386/align-branch-1h.d: Likewise.
4522 * testsuite/gas/i386/align-branch-1i.d: Likewise.
4523 * testsuite/gas/i386/align-branch-5.d: Likewise.
4524 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
4525 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
4526 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
4527 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
4528 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
4529 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
4530 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
4531 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
4532 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
4533 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
4534 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
4535 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
4537 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
4540 * config/tc-z80.c: Add support for half precision, single
4541 precision and double precision floating point values.
4542 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
4543 * doc/as.texi: Add new z80 command line options.
4544 * doc/c-z80.texi: Document new z80 command line options.
4545 * testsuite/gas/z80/ez80_pref_dis.s: New test.
4546 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
4547 * testsuite/gas/z80/z80.exp: Run the new test.
4548 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
4549 * testsuite/gas/z80/fp_zeda32.d: Likewise.
4550 * testsuite/gas/z80/strings.d: Update expected output.
4552 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
4554 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
4557 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
4559 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
4561 * config/tc-arc.h: Add header if/defs.
4562 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
4564 2020-01-13 Alan Modra <amodra@gmail.com>
4566 * testsuite/gas/wasm32/allinsn.d: Update expected output.
4568 2020-01-13 Alan Modra <amodra@gmail.com>
4570 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
4573 2020-01-10 Alan Modra <amodra@gmail.com>
4575 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
4576 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
4578 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4581 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
4583 (emit_ld_r_r): Likewise.
4584 (emit_ld_rr_m): Likewise.
4585 (emit_ld_rr_nn): Likewise.
4587 2020-01-09 Jan Beulich <jbeulich@suse.com>
4589 * config/tc-i386.c (optimize_encoding): Add
4590 is_any_vex_encoding() invocations. Drop respective
4591 i.tm.extension_opcode == None checks.
4593 2020-01-09 Jan Beulich <jbeulich@suse.com>
4595 * config/tc-i386.c (md_assemble): Check RegRex is clear during
4596 REX transformations. Correct comment indentation.
4598 2020-01-09 Jan Beulich <jbeulich@suse.com>
4600 * config/tc-i386.c (optimize_encoding): Generalize register
4601 transformation for TEST optimization.
4603 2020-01-09 Jan Beulich <jbeulich@suse.com>
4605 * testsuite/gas/i386/x86-64-sysenter-amd.s,
4606 testsuite/gas/i386/x86-64-sysenter-amd.d,
4607 testsuite/gas/i386/x86-64-sysenter-amd.l,
4608 testsuite/gas/i386/x86-64-sysenter-intel.d,
4609 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
4610 * testsuite/gas/i386/i386.exp: Run new tests.
4612 2020-01-08 Nick Clifton <nickc@redhat.com>
4615 * doc/as.texi (Align): Document the fact that all arguments can be
4618 (P2align): Likewise.
4620 2020-01-08 Nick Clifton <nickc@redhat.com>
4623 * config/obj-elf.c (obj_elf_section): Fail if the section name is
4624 already defined as a different symbol type.
4625 * testsuite/gas/elf/pr14891.s: New test source file.
4626 * testsuite/gas/elf/pr14891.d: New test driver.
4627 * testsuite/gas/elf/pr14891.s: New test expected error output.
4628 * testsuite/gas/elf/elf.exp: Run the new test.
4630 2020-01-08 Alan Modra <amodra@gmail.com>
4632 * config/tc-z8k.c (md_begin): Make idx unsigned.
4633 (get_specific): Likewise for this_index.
4635 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
4637 * onfig/tc-arc.c (parse_reloc_symbol): New function.
4638 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
4639 (md_operand): Set X_md to absent.
4640 (arc_parse_name): Check for X_md.
4642 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4645 * as.h (TC_STRING_ESCAPES): Provide a default definition.
4646 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
4648 * read.c (next_char_of_string): Likewise.
4649 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
4650 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
4652 2020-01-03 Nick Clifton <nickc@redhat.com>
4654 * po/sv.po: Updated Swedish translation.
4656 2020-01-03 Jan Beulich <jbeulich@suse.com>
4658 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
4659 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4661 2020-01-03 Jan Beulich <jbeulich@suse.com>
4663 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
4664 by-element usdot. Add 64-bit form tests for by-element sudot.
4665 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
4667 2020-01-03 Jan Beulich <jbeulich@suse.com>
4669 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
4670 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4672 2020-01-03 Jan Beulich <jbeulich@suse.com>
4674 * testsuite/gas/aarch64/f64mm.d,
4675 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
4677 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
4679 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
4680 support for assembler code generated by SDCC. Add new relocation
4681 types. Add z80-elf target support.
4682 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
4683 labels. Local labels starts from ".L".
4684 * NEWS: Mention the new support.
4685 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
4686 * testsuite/gas/all/fwdexp.s: Likewise.
4687 * testsuite/gas/all/cond.l: Likewise.
4688 * testsuite/gas/all/cond.s: Likewise.
4689 * testsuite/gas/all/fwdexp.d: Likewise.
4690 * testsuite/gas/all/fwdexp.s: Likewise.
4691 * testsuite/gas/elf/section2.e-mips: Likewise.
4692 * testsuite/gas/elf/section2.l: Likewise.
4693 * testsuite/gas/elf/section2.s: Likewise.
4694 * testsuite/gas/macros/app1.d: Likewise.
4695 * testsuite/gas/macros/app1.s: Likewise.
4696 * testsuite/gas/macros/app2.d: Likewise.
4697 * testsuite/gas/macros/app2.s: Likewise.
4698 * testsuite/gas/macros/app3.d: Likewise.
4699 * testsuite/gas/macros/app3.s: Likewise.
4700 * testsuite/gas/macros/app4.d: Likewise.
4701 * testsuite/gas/macros/app4.s: Likewise.
4702 * testsuite/gas/macros/app4b.s: Likewise.
4703 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
4704 * testsuite/gas/z80/z80.exp: Add new tests
4705 * testsuite/gas/z80/dollar.d: New file.
4706 * testsuite/gas/z80/dollar.s: New file.
4707 * testsuite/gas/z80/ez80_adl_all.d: New file.
4708 * testsuite/gas/z80/ez80_adl_all.s: New file.
4709 * testsuite/gas/z80/ez80_adl_suf.d: New file.
4710 * testsuite/gas/z80/ez80_isuf.s: New file.
4711 * testsuite/gas/z80/ez80_z80_all.d: New file.
4712 * testsuite/gas/z80/ez80_z80_all.s: New file.
4713 * testsuite/gas/z80/ez80_z80_suf.d: New file.
4714 * testsuite/gas/z80/r800_extra.d: New file.
4715 * testsuite/gas/z80/r800_extra.s: New file.
4716 * testsuite/gas/z80/r800_ii8.d: New file.
4717 * testsuite/gas/z80/r800_z80_doc.d: New file.
4718 * testsuite/gas/z80/z180.d: New file.
4719 * testsuite/gas/z80/z180.s: New file.
4720 * testsuite/gas/z80/z180_z80_doc.d: New file.
4721 * testsuite/gas/z80/z80_doc.d: New file.
4722 * testsuite/gas/z80/z80_doc.s: New file.
4723 * testsuite/gas/z80/z80_ii8.d: New file.
4724 * testsuite/gas/z80/z80_ii8.s: New file.
4725 * testsuite/gas/z80/z80_in_f_c.d: New file.
4726 * testsuite/gas/z80/z80_in_f_c.s: New file.
4727 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
4728 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
4729 * testsuite/gas/z80/z80_out_c_0.d: New file.
4730 * testsuite/gas/z80/z80_out_c_0.s: New file.
4731 * testsuite/gas/z80/z80_reloc.d: New file.
4732 * testsuite/gas/z80/z80_reloc.s: New file.
4733 * testsuite/gas/z80/z80_sli.d: New file.
4734 * testsuite/gas/z80/z80_sli.s: New file.
4736 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
4738 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
4741 2020-01-01 Alan Modra <amodra@gmail.com>
4743 Update year range in copyright notice of all files.
4745 For older changes see ChangeLog-2019
4747 Copyright (C) 2020 Free Software Foundation, Inc.
4749 Copying and distribution of this file, with or without modification,
4750 are permitted in any medium without royalty provided the copyright
4751 notice and this notice are preserved.
4757 version-control: never