1 2020-09-07 Mark Wielaard <mark@klomp.org>
3 * as.texi (-g): Explicitly mention when .debug_info and .debug_line
4 are generated for the DWARF format.
5 (Loc): Add that it is an error to both use a .loc directive and
6 generate a .debug_line yourself.
7 * dwarf2dbg.c (dwarf2_any_loc_directive_seen): New static variable.
8 (dwarf2_directive_loc): Set dwarf2_any_loc_directive_seen to TRUE.
9 (dwarf2_finish): Check dwarf2_any_loc_directive_seen before emitting
10 an error. Only create .debug_line if it is empty (or doesn't exist).
11 * testsuite/gas/i386/i386.exp: Add dwarf2-line-{1,2,3,4} when testing
13 * testsuite/gas/i386/dwarf2-line-{1,2,3,4}.{s,d,l}: New test files.
15 2020-09-10 Cooper Qu <cooper.qu@linux.alibaba.com>
17 * config/tc-csky.c (md_begin): Enable extend lrw by default for
18 CK802, CK803 and CK860.
20 2020-09-10 Cooper Qu <cooper.qu@linux.alibaba.com>
22 * config/tc-csky.c (struct csky_cpu_info): Add new members
23 isa_flag, features and ver.
24 (struct csky_cpu_feature): New.
25 (struct csky_cpu_version): New.
26 (CSKY_FEATURE_MAX): Define.
27 (CSKY_CPU_REVERISON_MAX): Define.
28 (FEATURE_DSP_EXT, FEATURE_DSP, FEATURE_MMU, FEATURE_VDSP,
29 FEATURE_FLOAT, FEATURE_TRUST, FEATURE_JAVA, FEATURE_SHIELD):
30 Define, each standard one collection of instructions.
31 (CSKY_FEATURES_DEF_NULL, CSKY_FEATURES_DEF_e,
32 CSKY_FEATURES_DEF_t, CSKY_FEATURES_DEF_f, CSKY_FEATURES_DEF_v,
33 CSKY_FEATURES_DEF_ef, CSKY_FEATURES_DEF_jt,
34 CSKY_FEATURES_DEF_efht, CSKY_FEATURES_DEF_efv,
35 CSKY_FEATURES_DEF_eft, CSKY_FEATURES_DEF_d,
36 CSKY_FEATURES_DEF_df, CSKY_FEATURES_DEF_ft,
37 CSKY_FEATURES_DEF_tv, CSKY_FEATURES_DEF_fv,
38 CSKY_FEATURES_DEF_dft, CSKY_FEATURES_DEF_dfv,
39 CSKY_FEATURES_DEF_ftv, CSKY_FEATURES_DEF_eftv): Define,
40 the features combination used by cpu.
41 (CSKY_CPU_REVERISON_r0p0, CSKY_CPU_REVERISON_r1p0,
42 CSKY_CPU_REVERISON_r2p0, CSKY_CPU_REVERISON_r3p0,
43 CSKY_CPU_REVERISON_RESERVED, CSKY_CPU_REVERISON_R3):
44 Define, version information used by cpu.
45 (csky_cpus): Refine, and add CK804, CK805 and CK800.
48 (md_show_usage): Refine.
51 2020-09-09 Alan Modra <amodra@gmail.com>
53 * config/tc-ppc.c (md_assemble): Emit prefix insn by parts when
54 valueT is smaller than 64 bits.
56 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
58 * config/tc-csky.c (CSKYV2_ISA_DSP): CSKY_ISA_DSPE60.
59 (CSKY_ISA_860): Likewise.
61 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
63 * config/tc-csky.c (float_abi): New.
64 (md_longopts): Add mfloat-abi.
65 (struct sky_option_value_table): New.
66 (csky_float_abis): New, the possible values for -mfloat-abi.
67 (parse_float_abi): New funtion.
68 (md_show_usage): Show help information for -mfloat-abi.
69 (set_csky_attribute): Store float-abi value.
71 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
73 * config/tc-csky.c (float_work_fpuv3_fmovi): New function,
74 helper function to encode fpuv3 fmovi instructions.
75 (float_work_fpuv3_fstore): New function.
76 (struct literal): Add new member 'offset'.
77 (csky_cpus): New cpu CK860f.
78 (enter_literal): Return literal pool pointer instead of offset.
79 (parse_rt): Adjust the change of enter_literal.
80 (parse_rtf): Likewise.
81 (v1_work_lrw): Likewise.
82 (v1_work_jbsr): Likewise.
83 (v2_work_lrw): Likewise.
84 (v2_work_jbsr): Likewise.
85 (v2_work_jsri): Likewise.
86 (vdsp_work_vlrw): Likewise.
87 (is_freglist_legal): Add handler for FPUV3.
88 (parse_type_freg): Likewise.
89 (is_imm_within_range): Set e.X_add_number if it is a signed and
91 (get_operand_value): Add handler for OPRND_TYPE_IMM9b,
92 OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI
93 and OPRND_TYPE_DFLOAT_FMOVI.
94 (float_to_half): Convert float number to harf float.
95 * testsuite/gas/csky/case-fpuv3-ck860f/ : New folder containing
96 the test cases for FPUV3, they are divided by instruction
97 operands format and both have legal cases and illegal cases.
99 2020-09-08 Jozef Lawrynowicz <jozef.l@mittosystems.com>
100 Kuan-Lin Chen <kuanlinchentw@gmail.com>
102 * config/tc-msp430.c (msp430_insert_uleb128_fixes): New.
103 (msp430_md_end): Call msp430_insert_uleb128_fixes.
105 2020-09-08 Alex Coplan <alex.coplan@arm.com>
107 * config/tc-aarch64.c (aarch64_cpus): Add Cortex-R82.
108 * doc/c-aarch64.texi: Document -mcpu=cortex-r82.
110 2020-09-08 Alex Coplan <alex.coplan@arm.com>
112 * config/tc-aarch64.c (parse_sys_reg): Also pass sysreg name to
114 (parse_sys_ins_reg): Likewise.
115 (print_operands): Pass CPU features to aarch64_print_operand().
116 * testsuite/gas/aarch64/v8-r-bad-sysregs.d: New test.
117 * testsuite/gas/aarch64/v8-r-bad-sysregs.l: Error output.
118 * testsuite/gas/aarch64/v8-r-bad-sysregs.s: Input.
119 * testsuite/gas/aarch64/v8-r-sysregs-need-arch.d: New test.
120 * testsuite/gas/aarch64/v8-r-sysregs-need-arch.l: Error output.
121 * testsuite/gas/aarch64/v8-r-sysregs.d: New test.
122 * testsuite/gas/aarch64/v8-r-sysregs.s: Input for previous two tests.
124 2020-09-08 Alex Coplan <alex.coplan@arm.com>
126 * testsuite/gas/aarch64/dfb.d: New test.
127 * testsuite/gas/aarch64/dfb.s: Input.
129 2020-09-08 Alex Coplan <alex.coplan@arm.com>
131 * config/tc-aarch64.c (aarch64_archs): Add armv8-r.
132 * doc/c-aarch64.texi: Document -march=armv8-r.
134 2020-09-07 Mark Wielaard <mark@klomp.org>
136 * dwarf2dbg.c (add_line_strp): New function.
137 (out_dir_and_file_list): Take line_seg and sizeof_offset as
138 arguments, Use DW_FORM_line_strp for dir and file. Call
139 add_line_strp and set symbol offset for DWARF2_LINE_VERSION 5.
140 (out_debug_line): Call out_dir_and_file_list with line_seg and
142 * gas/testsuite/gas/elf/dwarf-5-file0.d: Expect indirect line
145 2020-09-07 Mark Wielaard <mark@klomp.org>
147 * dwarf2dbg.c (DWARF2_RNGLISTS_VERSION): New constant.
148 (out_debug_ranges): Add ranges_sym argument and set it.
149 (out_debug_rnglists): New function.
150 (out_debug_info): Change ranges_seg argument to ranges_sym
151 and use it to set DW_AT_ranges value.
152 (dwarf2_finish): Remove ranges_seg, add ranges_sym. For
153 DWARF2_VERSION 5 call out_debug_rnglists.
155 2020-09-07 Mark Wielaard <mark@klomp.org>
157 * dwarf2dbg.c (dwarf2_directive_filename): Initialize with_md5 to
159 * gas/testsuite/gas/elf/dwarf-5-file0.s: Add a random bignum.
161 2020-09-01 Mark Wielaard <mark@klomp.org>
163 * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_sec_offset for DWARF
166 2020-09-02 Alan Modra <amodra@gmail.com>
168 * expr.c (add_to_result, subtract_from_result): Use unsigned
169 addition and subtraction.
171 2020-09-02 Alan Modra <amodra@gmail.com>
173 * config/tc-z80.c (is_overflow): Avoid too large shift.
175 2020-09-02 Alan Modra <amodra@gmail.com>
177 * config/tc-sparc.c (in_signed_range): Use an unsigned type for
180 2020-09-02 Alan Modra <amodra@gmail.com>
182 * config/tc-nios2.c (md_apply_fix): Avoid too large shift.
184 2020-09-02 Alan Modra <amodra@gmail.com>
186 * config/tc-mips.c (load_register): Avoid too large shift.
188 2020-09-02 Alan Modra <amodra@gmail.com>
190 * config/tc-d30v.c (parallel_ok): Use 1UL for left shift expression.
192 2020-09-02 Alan Modra <amodra@gmail.com>
194 * config/rx-parse.y (rx_intop): Avoid too large shifts.
195 (rx_intop, rx_uintop, rx_disp3op, rx_disp5op, displacement),
196 (rtsd_immediate): Use correctly typed unsigned variables.
198 2020-09-02 Alan Modra <amodra@gmail.com>
200 * config/obj-macho.c (obj_mach_o_zerofill): Correct type of
201 constant shifted left.
203 2020-09-02 Alan Modra <amodra@gmail.com>
205 * config/bfin-lex.l: Use an unsigned type for "value".
207 2020-09-02 Alan Modra <amodra@gmail.com>
209 * config/tc-pdp11.c (md_number_to_chars): Condition nbytes=8 code
212 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
214 * config/tc-csky.c (csky_cpus): Add ck803r3.
215 (CSKY_ISA_803R3): Define.
216 (CSKY_ISA_803R2): Refine, use CSKY_ISA_803R1.
218 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
220 * testsuite/gas/csky/cskyv2_dsp.d : Fix Encode of mulsws.
222 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
224 * config/tc-csky.c (struct literal): New member bignum.
225 (dump_literals): Handle big constant.
226 (enter_literal): Likewise.
227 (parse_type_freg): Handle vector register.
229 2020-09-01 H.J. Lu <hongjiu.lu@intel.com>
231 * doc/as.texi: Document the .tls_common directive.
233 2020-09-01 Alan Modra <amodra@gmail.com>
239 * config/tc-arm.c (struct arm_it): Make size, size_req, cond and
240 uncond_value unsigned.
241 (parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t.
242 (parse_big_immediate): Cast generic_bignum elements to unsigned.
243 (encode_thumb32_immediate): Shift left 0xffU.
244 (double_to_single): Make sign unsigned. Tidy.
245 (move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or
247 (vfp_or_neon_is_neon): Adjust inst.uncond_value expression.
248 (md_assemble): Likewise.
249 (handle_pred_state): Make cond unsigned.
250 (thumb32_negate_data_op): Make variables unsigned.
251 (md_apply_fix): Make value and newval unsigned, adjust uses.
253 2020-08-31 Alan Modra <amodra@gmail.com>
256 * config/tc-z8k.c (buffer): Use unsigned char.
257 (apply_fix): Use unsigned char* pointers.
258 (build_bytes): Likewise and mask nibbles when packing.
260 2020-08-31 Alan Modra <amodra@gmail.com>
263 * config/tc-v850.c (parse_register_list): Shift 1u left.
265 2020-08-31 Alan Modra <amodra@gmail.com>
268 * config/tc-tic6x.c (md_apply_fix): Use unsigned variables.
270 2020-08-31 Alan Modra <amodra@gmail.com>
273 * config/tc-sh.c (assemble_ppi): Use unsigned variables.
275 2020-08-31 Alan Modra <amodra@gmail.com>
278 * config/tc-score.c (s3_apply_fix): Use unsigned variables.
279 * config/tc-score7.c (s7_apply_fix): Likewise.
281 2020-08-31 Alan Modra <amodra@gmail.com>
284 * config/tc-nios2.c (nios2_parse_reglist): Shift 1UL left.
286 2020-08-31 Alan Modra <amodra@gmail.com>
289 * config/tc-nios2.c (md_chars_to_number): Cast buf[i] before shifting.
291 2020-08-31 Alan Modra <amodra@gmail.com>
296 * config/tc-mips.c (operand_reg_mask): Shift 1u left.
297 (load_register): Shift 0xffffU left.
299 2020-08-31 Alan Modra <amodra@gmail.com>
302 * config/tc-metag.c (md_chars_to_number): Make retval unsigned.
304 2020-08-31 Alan Modra <amodra@gmail.com>
307 * config/tc-mep.c (md_convert_frag): Use uint32_t for addend and
310 2020-08-31 Alan Modra <amodra@gmail.com>
313 * config/tc-riscv.c (riscv_ip): Cast X_add_number passed to
314 VALID_* macros to unsigned.
316 2020-08-31 Alan Modra <amodra@gmail.com>
318 * config/tc-crx.c: Formatting.
319 (CRX_PRINT): Wrap params in parentheses. Remove parens from uses
321 (reset_vars, get_register, get_copregister, get_optype, get_opbits),
322 (get_opflags, get_number_of_operands, parse_operand, gettrap),
323 (handle_LoadStor, getconstant, check_range, getreg_image),
324 (parse_operands, parse_insn, print_operand, print_constant),
325 (exponent2scale, mask_reg, process_label_constant, set_operand),
326 (assemble_insn, print_insn): Delete unnecessary forward declaration.
327 (print_insn): Make static.
328 (print_constant): Make "constant" unsigned.
329 (assemble_insn): Tidy REVERSE_MATCH index calc.
330 * expr.c (generic_bignum_to_int32): Cast elements to valueT.
332 2020-08-31 Alan Modra <amodra@gmail.com>
335 * config/tc-z80.c (is_overflow): Use 1UL in mask shift expression.
337 2020-08-30 Alan Modra <amodra@gmail.com>
339 * config/tc-tic4x.c (tic4x_gen_to_words): Rewrite mantissa
340 overflow test without UB. Avoid other UB shifts by making them
343 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
345 * config/tc-csky.c (csky_error_state): New member 'arg_int'.
346 (SET_ERROR_NUMBER): Rename to SET_ERROR_STRING.
347 (SET_ERROR_INTEGER): New.
348 (err_formats): Add error format for ERROR_FREG_OVER_RANGE and
349 ERROR_VREG_OVER_RANGE.
350 (csky_show_error): Pass an integer argument for some error
352 (parse_exp): Call SET_ERROR_STRING instead of SET_ERROR_NUMBER.
353 (parse_rt): Likewise.
354 (parse_type_ctrlreg): Likewise.
355 (csky_get_reg_val): Likewise.
356 (is_reglist_legal): Likewise.
357 (is_freglist_legal): Likewise.
358 (is_reglist_dash_comma_legal): Likewise.
359 (is_reg_lshift_illegal): Likewise.
360 (is_psr_bit): Likewise.
361 (parse_type_cpreg): Likewise.
362 (parse_type_cpcreg): Likewise.
363 (parse_type_areg): Likewise.
364 (parse_type_freg): Likewise.
365 (parse_ldst_imm): Likewise and call SET_ERROR_INTEGER.
366 (get_operand_value): Likewise.
367 (parse_operands_op): Likewise and call is_imm_within_range,
368 is_imm_within_range_ext and is_oimm_within_range.
369 (md_assemble): Likewise.
370 (is_imm_within_range): New.
371 (is_imm_within_range_ext): Rename from is_imm_over_range.
372 (is_oimm_within_range): Rename from is_oimm_over_range.
373 (v2_work_add_sub): Call SET_ERROR_INTEGER.
374 (csky_rolc): call is_imm_within_range instead of
377 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
379 * config/tc-csky.c (md_begin): Add warning when -mdsp and
380 -mcpu=ck803ern are both added.
381 (parse_ldst_imm): Fix error message.
383 2020-08-30 Alan Modra <amodra@gmail.com>
385 * testsuite/gas/cr16/cbitb_test.d: Update expected output.
386 * testsuite/gas/cr16/cbitw_test.d: Likewise.
387 * testsuite/gas/cr16/sbitb_test.d: Likewise.
388 * testsuite/gas/cr16/sbitw_test.d: Likewise.
389 * testsuite/gas/cr16/storb_test.d: Likewise.
390 * testsuite/gas/cr16/storw_test.d: Likewise.
391 * testsuite/gas/cr16/tbitb_test.d: Likewise.
392 * testsuite/gas/cr16/tbitw_test.d: Likewise.
394 2020-08-30 Alan Modra <amodra@gmail.com>
398 * config/tc-cr16.c: Include limits.h, formatting.
399 (CR16_PRINT): Wrap params in parentheses. Remove parens from uses
401 (getconstant): Handle zero nbits.
402 (print_operand): Use unsigned variables. Simplify handling of
404 (check_range): Use int32_t variables. Correct range checks.
406 2020-08-29 Alan Modra <amodra@gmail.com>
409 * config/tc-pj.c (md_assemble): Don't loop past end of
412 2020-08-28 Alan Modra <amodra@gmail.com>
415 * config/tc-ia64.c (parse_operands): Don't access past end of
418 2020-08-26 Mark Wielaard <mark@klomp.org>
420 * as.c (parse_args): Handle bad -gdwarf options.
422 2020-08-28 Cooper Qu <cooper.qu@linux.alibaba.com>
424 * gas/config/tc-csky.c (md_begin): Set attributes.
425 (isa_flag): Change type to unsigned 64 bits.
426 (struct csky_cpu_info): Likewise.
427 (struct csky_macro_info): Likewise.
428 (set_csky_attribute): New.
429 * testsuite/gas/csky/802j.d: Ignore .csky.attributes section.
430 * testsuite/gas/csky/all.d: Likewise.
431 * testsuite/gas/csky/bsr1.d: Likewise.
432 * testsuite/gas/csky/csky_vdsp.d: Likewise.
433 * testsuite/gas/csky/cskyv2_all.d: Likewise.
434 * testsuite/gas/csky/cskyv2_ck803r2.d: Likewise.
435 * testsuite/gas/csky/cskyv2_ck860.d: Likewise.
436 * testsuite/gas/csky/cskyv2_dsp.d: Likewise.
437 * testsuite/gas/csky/cskyv2_elrw.d: Likewise.
438 * testsuite/gas/csky/cskyv2_float.d: Likewise.
439 * testsuite/gas/csky/enhance_dsp.d: Likewise.
440 * testsuite/gas/csky/java.d: Likewise.
441 * testsuite/gas/csky/v1_float.d: Likewise.
442 * testsuite/gas/csky/v2_float_part1.d: Likewise.
443 * testsuite/gas/csky/v2_float_part2.d: Likewise.
444 * testsuite/gas/csky/v2_tls_gd.d: Likewise.
445 * testsuite/gas/csky/v2_tls_ie.d: Likewise.
446 * testsuite/gas/csky/v2_tls_ld.d: Likewise.
447 * testsuite/gas/csky/v2_tls_le.d: Likewise.
448 * testsuite/gas/elf/elf.exp: Add handler for CSKY.
449 * testsuite/gas/elf/section2.e-csky: New.
451 2020-08-27 Alan Modra <amodra@gmail.com>
454 * cgen.c (weak_operand_overflow_check): Handle opmask for
455 operand length zero. Use 1UL constant.
457 2020-08-26 Alan Modra <amodra@gmail.com>
460 * config/tc-xtensa.c (xg_get_trampoline_chain): Return early
461 when n_entries is zero.
463 2020-08-26 Alan Modra <amodra@gmail.com>
466 * symbols.c: Include limits.h.
467 (resolve_symbol_value <O_left_shift, O_right_shift>): Do an
468 unsigned shift. Warn if shift count larger than valueT size.
470 2020-08-26 Alan Modra <amodra@gmail.com>
473 * expr.c (expr <O_left_shift>): Do an unsigned shift.
475 2020-08-25 Alan Modra <amodra@gmail.com>
477 2020-08-26 David Faust <david.faust@oracle.com>
479 * config/tc-bpf.c: Add option -mxbpf to select xbpf isa.
480 * testsuite/gas/bpf/indcall-1.d: New file.
481 * testsuite/gas/bpf/indcall-1.s: Likewise.
482 * testsuite/gas/bpf/indcall-bad-1.l: Likewise.
483 * testsuite/gas/bpf/indcall-bad-1.s: Likewise.
484 * testsuite/gas/bpf/bpf.exp: Run new tests.
486 2020-08-25 Alan Modra <amodra@gmail.com>
489 * gas/config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat
490 misc_symbol_hash entries without values.
492 2020-08-25 Alan Modra <amodra@gmail.com>
495 * tc-tic4x.c (tic4x_inst_make): Don't die on terminating insn
498 2020-08-25 Alan Modra <amodra@gmail.com>
501 * config/tc-cr16.c (get_b_cc): Return NULL early if op isn't
502 two or three chars, and don't bother copying.
504 2020-08-25 Alan Modra <amodra@gmail.com>
507 * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on
510 2020-08-25 Alan Modra <amodra@gmail.com>
513 * symbols.c (dollar_label_count, dollar_label_max): Make size_t.
514 (dollar_label_clear): Don't call memset with NULL pointer.
516 2020-08-25 Alan Modra <amodra@gmail.com>
518 * config/tc-arc.c (declare_register_set): Avoid false positive
519 format-overflow warning.
520 * config/tc-epiphany.c (md_assemble): Likewise.
521 * config/tc-mips.c (md_begin): Likewise.
522 * config/tc-mmix.c (mmix_md_begin): Likewise.
523 * config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false
524 positive "may be used uninitialized" warning.
526 2020-08-24 Cooper Qu <cooper.qu@linux.alibaba.com>
528 * config/tc-csky.c (csky_archs): Add item for CK860,
529 change ck810 and ck807's arch_flag.
530 (csky_cpus): Add item for CK860.
531 (md_begin): Enable DSP for CK810 and CK807 by default.
532 (md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure.
533 * gas/testsuite/gas/csky/cskyv2_all.d: Change 'sync 0'
535 * gas/testsuite/gas/csky/cskyv2_all.s: Likewise.
536 * gas/testsuite/gas/csky/cskyv2_ck860.d: New.
537 * gas/testsuite/gas/csky/cskyv2_ck860.s: New.
538 * gas/testsuite/gas/csky/enhance_dsp.d: Change plsli.u16
540 * gas/testsuite/gas/csky/enhance_dsp.s: Likewise.
542 2020-08-24 Alan Modra <amodra@gmail.com>
544 * config/tc-tic54x.c (stag_add_field_symbols): Don't free "name"
545 in case where it isn't copied.
546 * config/tc-tic54x.h (LOCAL_LABELS_FB): Undef.
547 * testsuite/gas/tic54x/field.d: Dump section contents and symbols
548 rather than disassembling.
549 * testsuite/gas/tic54x/set.d: Adjust for newer disassembly.
551 2020-08-24 Alan Modra <amodra@gmail.com>
553 * config/tc-aarch64.c (md_begin): Don't bother checking for
554 out of memory failure from str_htab_create.
555 * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise.
556 (arc_extcorereg, arc_stralloc): Likewise.
557 * config/tc-arm.c (md_begin): Likewise.
558 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
559 * config/tc-cris.c (md_begin): Likewise.
560 * config/tc-crx.c (md_begin): Likewise.
561 * config/tc-pdp11.c (md_begin): Likewise.
562 * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise.
563 * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise.
565 2020-08-24 Alan Modra <amodra@gmail.com>
567 * config/tc-arm.c (move_or_literal_pool): Avoid false positive
568 "may be used uninitialised".
569 (opcode_lookup): Likewise.
571 2020-08-24 Alan Modra <amodra@gmail.com>
574 * symbols.c (local_symbol_convert): Clear out xtra.
576 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
578 * config/tc-csky.c (CSKY_ISA_803R2): New.
579 (csky_archs): Add ck803r2 series.
580 (md_begin): Fix warning about -medsp.
581 (csky_get_freg_val): Support lowercase of fpu register name.
582 * testsuite/gas/csky/cskyv2_ck803r2.s: New file.
583 * testsuite/gas/csky/cskyv2_ck803r2.d: New file.
585 2020-08-23 Alan Modra <amodra@gmail.com>
588 * hash.h (htab_insert): Update prototype and comment.
589 (struct string_tuple): Make "value" a const void*.
590 (string_tuple_alloc): Likewise.
591 (str_hash_find, str_hash_find_n): Cast returned value.
592 (str_hash_insert): Add "replace" parameter, and return slot pointer.
593 Free alloc'd element when not inserted.
594 * hash.c (htab_insert): Likewise. Return slot when element exists,
595 otherwise return NULL.
596 * read.c (pop_insert): Insert into hash table without first searching.
597 * config/tc-avr.c (md_begin): Likewise.
598 * config/tc-msp430.c (md_begin): Likewise.
599 * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
600 * config/tc-v850.c (md_begin): Likewise.
601 * macro.c (do_formals, define_macro, macro_expand_body): Likewise.
602 (delete_macro): Delete from hash table.
603 * config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
605 * symbols.c (local_symbol_make, symbol_table_insert): Allow
606 replacement of hash table entries.
607 * config/obj-coff-seh.c (seh_hash_insert): Likewise.
608 * config/obj-coff.c (tag_insert): Likewise.
609 * config/tc-iq2000.c (iq2000_add_macro): Likewise.
610 * config/tc-m68k.c (md_begin): Likewise for aliases.
611 * config/tc-tic4x.c (tic4x_asg): Likewise.
612 * config/tc-tic6x.c (md_begin): Likewise.
614 * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
616 * ecoff.c (add_string, get_tag): Likewise.
617 * macro.c (expand_irp): Likewise.
618 * config/obj-elf.c (build_additional_section_info): Likewise.
619 * config/tc-aarch64.c (insert_reg_alias): Likewise.
620 (checked_hash_insert): Likewise.
621 * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
622 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
623 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
624 * config/tc-arm.c (insert_reg_alias): Likewise.
625 (arm_tc_equal_in_insn, md_begin): Likewise.
626 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
627 * config/tc-cris.c (md_begin): Likewise.
628 * config/tc-crx.c (md_begin): Likewise.
629 * config/tc-csky.c (md_begin): Likewise.
630 * config/tc-d10v.c (md_begin): Likewise.
631 * config/tc-dlx.c (md_begin): Likewise.
632 * config/tc-ft32.c (md_begin): Likewise.
633 * config/tc-h8300.c (md_begin): Likewise.
634 * config/tc-hppa.c (md_begin): Likewise.
635 * config/tc-i386.c (md_begin): Likewise.
636 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
637 (md_begin, dot_alias): Likewise.
638 * config/tc-m68hc11.c (md_begin): Likewise.
639 * config/tc-m68k.c (md_begin): Likewise.
640 * config/tc-mcore.c (md_begin): Likewise.
641 * config/tc-microblaze.c (md_begin): Likewise.
642 * config/tc-mips.c (md_begin): Likewise.
643 * config/tc-mmix.c (md_begin): Likewise.
644 * config/tc-mn10200.c (md_begin): Likewise.
645 * config/tc-mn10300.c (md_begin): Likewise.
646 * config/tc-moxie.c (md_begin): Likewise.
647 * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
648 * config/tc-nios2.c (md_begin): Likewise.
649 * config/tc-ns32k.c (md_begin): Likewise.
650 * config/tc-pdp11.c (md_begin): Likewise.
651 * config/tc-pj.c (fake_opcode, md_begin): Likewise.
652 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
653 * config/tc-pru.c (md_begin): Likewise.
654 * config/tc-riscv.c (init_ext_version_hash): Likewise.
655 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
656 (riscv_init_csr_hash): Likewise.
657 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
658 * config/tc-score.c (s3_insert_reg): Likewise.
659 (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
660 * config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
661 (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
662 * config/tc-sh.c (md_begin): Likewise.
663 * config/tc-sparc.c (md_begin): Likewise.
664 * config/tc-spu.c (md_begin): Likewise.
665 * config/tc-tic30.c (md_begin): Likewise.
666 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
667 * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
668 (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
669 (subsym_substitute): Likewise.
670 * config/tc-tilegx.c (md_begin): Likewise.
671 * config/tc-tilepro.c (md_begin): Likewise.
672 * config/tc-vax.c (vip_begin): Likewise.
673 * config/tc-wasm32.c (md_begin): Likewise.
674 * config/tc-xgate.c (md_begin): Likewise.
675 * config/tc-z8k.c (md_begin): Likewise.
676 * testsuite/gas/ppc/dcbt.d,
677 * testsuite/gas/ppc/dcbt.s: New test.
678 * testsuite/gas/ppc/ppc.exp: Run it.
680 * ecoff.c (add_string): Report fatal error on duplicates.
681 * config/tc-alpha.c (md_begin): Likewise.
682 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
683 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
684 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
685 * config/tc-cris.c (md_begin): Likewise.
686 * config/tc-crx.c (md_begin): Likewise.
687 * config/tc-dlx.c (md_begin): Likewise.
688 * config/tc-hppa.c (md_begin): Likewise.
689 * config/tc-i386.c (md_begin): Likewise.
690 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
691 (md_begin): Likewise.
692 * config/tc-m68k.c (md_begin): Likewise.
693 * config/tc-mips.c (md_begin): Likewise.
694 * config/tc-nios2.c (md_begin): Likewise.
695 * config/tc-ns32k.c (md_begin): Likewise.
696 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
697 * config/tc-pru.c (md_begin): Likewise.
698 * config/tc-riscv.c (init_ext_version_hash): Likewise.
699 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
700 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
701 * config/tc-sparc.c (md_begin): Likewise.
702 * config/tc-tic30.c (md_begin): Likewise.
703 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
704 * config/tc-tilegx.c (md_begin): Likewise.
705 * config/tc-tilepro.c (md_begin): Likewise.
706 * config/tc-vax.c (vip_begin): Likewise.
714 * config/tc-m68hc11.c,
716 * config/tc-microblaze.c,
721 * config/tc-score7.c,
723 * config/tc-tic54x.c,
724 * config/tc-tilegx.c,
725 * config/tc-tilepro.c,
726 * config/tc-xgate.c: Formatting.
728 2020-08-21 Alan Modra <amodra@gmail.com>
730 * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
731 Delete union. Adjust code throughout file.
732 (struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
734 (struct xsymbol): ..this. New struct. Adjust code throughout file
735 accessing these fields.
736 (struct symbol_entry): Delete.
737 (union symbol_entry): New.
738 (hash_symbol_entry): Adjust for symbol_entry_t change.
739 (symbol_entry_find): Likewise.
740 (eq_symbol_entry): Compare hash values too.
741 (symbol_entry_alloc): Delete.
742 (local_symbol_converted_p, local_symbol_mark_converted): Delete.
743 (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
744 (local_hash): Delete.
745 (abs_symbol_x, dot_symbol_x): New static var.
746 (symbol_init): New function.
747 (symbol_create): Rewrite.
748 (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
749 test of flags.local_symbol.
750 (local_symbol_make): Adjust for struct local_symbol changes.
751 (local_symbol_convert): Rewrite. Adjust all callers.
752 (symbol_table_insert): Simplify.
753 (symbol_clone): Comment on local sym cloning. Handle split symbol
755 (get_real_sym): Delete. Remove all uses.
756 (symbol_find_exact_noref): Simplify.
757 (resolve_local_symbol): Don't resolve non-locals.
758 (S_SET_SEGMENT): Don't special case reg_section.
759 (S_SET_NAME): Set both name and bsym->name.
760 (symbol_mark_resolved, symbol_resolved_p): Simplify.
761 (symbol_symbolS): Update comment.
762 (symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
763 (dot_symbol_init): Adjust dot_symbol setup.
764 (symbol_print_statistics): Delete local_hash stats.
766 2020-08-21 Alan Modra <amodra@gmail.com>
768 * symbols.c (struct symbol_flags): Rename sy_volatile to volatil,
769 and remove sy_ from other field names. Update throughout.
770 (struct symbol): Remove sy_ from field names. Delete unused
771 TARGET_SYMBOL_FIELDS. Update throughout file. Move after..
772 (struct local_symbol): ..here. Remove lsy_ from field names.
773 Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file.
774 (local_symbol_resolved_p, local_symbol_mark_resolved): Delete.
775 Expand uses throughout file.
776 (local_symbol_get_frag, local_symbol_set_frag): Likewise.
777 (symbol_new): Move symbol_table_frozen test to..
778 (symbol_append): ..here, and..
779 (symbol_insert): ..here.
780 (resolve_symbol_value, symbol_relc_make_expr): White space fixes.
781 (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise.
782 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update.
784 2020-08-21 Alan Modra <amodra@gmail.com>
786 * symbols.h (symbol_new, symbol_create, local_symbol_make),
787 (symbol_temp_new): Arrange params as section, frag, offset.
788 * symbols.c: Adjust to suit.
791 * dwarf2dbg.c: Likewise.
794 * itbl-ops.c: Likewise.
797 * subsegs.c: Likewise.
798 * config/obj-coff.c: Likewise.
799 * config/obj-elf.c: Likewise.
800 * config/obj-macho.c: Likewise.
801 * config/tc-aarch64.c: Likewise.
802 * config/tc-alpha.c: Likewise.
803 * config/tc-arc.c: Likewise.
804 * config/tc-arm.c: Likewise.
805 * config/tc-avr.c: Likewise.
806 * config/tc-cr16.c: Likewise.
807 * config/tc-cris.c: Likewise.
808 * config/tc-csky.c: Likewise.
809 * config/tc-dlx.c: Likewise.
810 * config/tc-hppa.c: Likewise.
811 * config/tc-i386.c: Likewise.
812 * config/tc-ia64.c: Likewise.
813 * config/tc-m32r.c: Likewise.
814 * config/tc-m68k.c: Likewise.
815 * config/tc-mips.c: Likewise.
816 * config/tc-mmix.c: Likewise.
817 * config/tc-mn10200.c: Likewise.
818 * config/tc-mn10300.c: Likewise.
819 * config/tc-nds32.c: Likewise.
820 * config/tc-nios2.c: Likewise.
821 * config/tc-ppc.c: Likewise.
822 * config/tc-riscv.c: Likewise.
823 * config/tc-s390.c: Likewise.
824 * config/tc-sh.c: Likewise.
825 * config/tc-tic4x.c: Likewise.
826 * config/tc-tic54x.c: Likewise.
827 * config/tc-xtensa.c: Likewise.
829 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
831 * config/tc-csky.c (csky_insn_info): Add member last_isize.
832 (md_assemble): Assign value to csky_insn.last_isize.
833 * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form.
834 * testsuite/gas/csky/enhance_dsp.s: Likewise.
836 2020-08-20 Martin Liska <mliska@suse.cz>
838 * NEWS: Mention --reduce-memory-overheads and --hash-size arguments
840 * as.c: Remove the options from help.
841 * doc/as.texi: Remove options.
842 * doc/internals.texi: Remove hash from documentation.
843 * hash.c (struct hash_entry): Remove.
844 (struct hash_control): Likewise.
845 (set_gas_hash_table_size): Likewise.
846 (hash_new_sized): Likewise.
847 (hash_new): Likewise.
848 (hash_die): Likewise.
849 (hash_lookup): Likewise.
850 (hash_insert): Likewise.
851 (hash_jam): Likewise.
852 (hash_replace): Likewise.
853 (hash_find): Likewise.
854 (hash_find_n): Likewise.
855 (hash_delete): Likewise.
856 (hash_traverse): Likewise.
857 (hash_print_statistics): Likewise.
859 (STATBUFSIZE): Likewise.
863 (applicatee): Likewise.
864 (whattable): Likewise.
865 * hash.h (struct hash_control): Likewise.
866 (set_gas_hash_table_size): Likewise.
867 (hash_new): Likewise.
868 (hash_new_sized): Likewise.
869 (hash_die): Likewise.
870 (hash_insert): Likewise.
871 (hash_jam): Likewise.
872 (hash_replace): Likewise.
873 (hash_find): Likewise.
874 (hash_find_n): Likewise.
875 (hash_delete): Likewise.
876 (hash_traverse): Likewise.
877 (hash_print_statistics): Likewise.
879 2020-08-20 Martin Liska <mliska@suse.cz>
881 * config/obj-coff-seh.c (seh_hash_insert): Port to use new
883 (seh_hash_find): Likewise.
884 (seh_hash_find_or_make): Likewise.
885 * config/obj-coff.c (tag_init): Likewise.
886 (tag_insert): Likewise.
887 (tag_find): Likewise.
888 * config/obj-elf.c (struct group_list): Likewise.
889 (build_additional_section_info): Likewise.
890 (free_section_idx): Likewise.
891 (elf_adjust_symtab): Likewise.
892 (elf_frob_file_after_relocs): Likewise.
893 * config/tc-aarch64.c (INSN_SIZE): Likewise.
894 (parse_reg): Likewise.
895 (insert_reg_alias): Likewise.
896 (create_register_alias): Likewise.
898 (parse_shift): Likewise.
899 (parse_pldop): Likewise.
900 (parse_barrier): Likewise.
901 (parse_barrier_psb): Likewise.
902 (parse_bti_operand): Likewise.
903 (parse_sys_reg): Likewise.
904 (parse_sys_ins_reg): Likewise.
905 (lookup_mnemonic): Likewise.
906 (opcode_lookup): Likewise.
907 (parse_operands): Likewise.
908 (checked_hash_insert): Likewise.
909 (sysreg_hash_insert): Likewise.
910 (fill_instruction_hash_table): Likewise.
911 (md_begin): Likewise.
912 * config/tc-alpha.c (struct alpha_reloc_tag): Likewise.
913 (get_alpha_reloc_tag): Likewise.
914 (assemble_tokens_to_insn): Likewise.
915 (assemble_tokens): Likewise.
916 (md_begin): Likewise.
917 * config/tc-arc.c (arc_find_opcode): Likewise.
918 (arc_insert_opcode): Likewise.
919 (find_opcode_match): Likewise.
920 (declare_register): Likewise.
921 (declare_addrtype): Likewise.
922 (md_begin): Likewise.
923 (arc_parse_name): Likewise.
924 (tc_arc_regname_to_dw2regnum): Likewise.
925 (arc_extcorereg): Likewise.
926 * config/tc-arm.c (MVE_BAD_QREG): Likewise.
927 (arm_reg_parse_multi): Likewise.
928 (parse_reloc): Likewise.
929 (insert_reg_alias): Likewise.
930 (create_register_alias): Likewise.
932 (parse_shift): Likewise.
933 (parse_psr): Likewise.
934 (parse_cond): Likewise.
935 (parse_barrier): Likewise.
936 (do_vfp_nsyn_opcode): Likewise.
937 (opcode_lookup): Likewise.
938 (arm_tc_equal_in_insn): Likewise.
939 (md_begin): Likewise.
940 * config/tc-avr.c (md_begin): Likewise.
941 (avr_ldi_expression): Likewise.
942 (md_assemble): Likewise.
943 (avr_update_gccisr): Likewise.
944 (avr_emit_insn): Likewise.
945 * config/tc-cr16.c (get_register): Likewise.
946 (get_register_pair): Likewise.
947 (get_index_register): Likewise.
948 (get_index_register_pair): Likewise.
949 (get_pregister): Likewise.
950 (get_pregisterp): Likewise.
951 (initialise_reg_hash_table): Likewise.
952 (md_begin): Likewise.
953 (cr16_assemble): Likewise.
954 (md_assemble): Likewise.
955 * config/tc-cris.c (cris_insn_first_word_frag): Likewise.
956 (md_begin): Likewise.
957 (cris_process_instruction): Likewise.
958 * config/tc-crx.c (get_register): Likewise.
959 (get_copregister): Likewise.
960 (md_begin): Likewise.
961 (md_assemble): Likewise.
962 * config/tc-csky.c (md_begin): Likewise.
963 (parse_opcode): Likewise.
964 (get_operand_value): Likewise.
965 (v1_work_jbsr): Likewise.
966 (v2_work_rotlc): Likewise.
967 (v2_work_bgeni): Likewise.
968 (v2_work_not): Likewise.
969 * config/tc-d10v.c (sizeof): Likewise.
970 (md_begin): Likewise.
971 (do_assemble): Likewise.
972 (md_apply_fix): Likewise.
973 * config/tc-d30v.c (sizeof): Likewise.
974 (md_begin): Likewise.
975 (do_assemble): Likewise.
976 * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise.
977 (md_begin): Likewise.
978 (machine_ip): Likewise.
979 * config/tc-ft32.c (md_begin): Likewise.
980 (md_assemble): Likewise.
981 * config/tc-h8300.c (md_begin): Likewise.
982 (md_assemble): Likewise.
983 * config/tc-hppa.c (pa_ip): Likewise.
984 (md_begin): Likewise.
985 * config/tc-i386.c (md_begin): Likewise.
986 (i386_print_statistics): Likewise.
987 (parse_insn): Likewise.
988 (process_operands): Likewise.
989 (i386_index_check): Likewise.
990 (parse_real_register): Likewise.
991 * config/tc-ia64.c (dot_rot): Likewise.
992 (dot_entry): Likewise.
993 (declare_register): Likewise.
994 (md_begin): Likewise.
995 (ia64_parse_name): Likewise.
996 (md_assemble): Likewise.
997 (dot_alias): Likewise.
998 (do_alias): Likewise.
999 (ia64_adjust_symtab): Likewise.
1000 (do_secalias): Likewise.
1001 (ia64_frob_file): Likewise.
1002 * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise.
1003 (md_begin): Likewise.
1004 (print_insn_format): Likewise.
1005 (md_assemble): Likewise.
1006 * config/tc-m68k.c (tc_gen_reloc): Likewise.
1007 (m68k_ip): Likewise.
1008 (md_begin): Likewise.
1009 * config/tc-mcore.c (md_begin): Likewise.
1010 (md_assemble): Likewise.
1011 * config/tc-microblaze.c (md_begin): Likewise.
1012 (md_assemble): Likewise.
1013 (md_apply_fix): Likewise.
1014 * config/tc-mips.c (nopic_need_relax): Likewise.
1015 (md_begin): Likewise.
1016 (macro_build): Likewise.
1017 (mips16_macro_build): Likewise.
1018 (mips_lookup_insn): Likewise.
1019 (mips_ip): Likewise.
1020 (mips16_ip): Likewise.
1021 * config/tc-mmix.c (sizeof): Likewise.
1022 (mmix_md_begin): Likewise.
1023 (md_assemble): Likewise.
1024 * config/tc-mn10200.c (md_begin): Likewise.
1025 (md_assemble): Likewise.
1026 * config/tc-mn10300.c (HAVE_AM30): Likewise.
1027 (md_begin): Likewise.
1028 (md_assemble): Likewise.
1029 * config/tc-moxie.c (md_begin): Likewise.
1030 (md_assemble): Likewise.
1031 * config/tc-msp430.c (md_begin): Likewise.
1032 (msp430_operands): Likewise.
1033 (md_assemble): Likewise.
1034 * config/tc-nds32.c (PV_DONT_CARE): Likewise.
1035 (builtin_isreg): Likewise.
1036 (builtin_regnum): Likewise.
1037 (nds32_init_nds32_pseudo_opcodes): Likewise.
1038 (nds32_lookup_pseudo_opcode): Likewise.
1039 (nds32_relax_hint): Likewise.
1040 (md_begin): Likewise.
1041 (nds32_find_reloc_table): Likewise.
1042 (nds32_elf_append_relax_relocs_traverse): Likewise.
1043 (nds32_relax_branch_instructions): Likewise.
1044 (md_convert_frag): Likewise.
1045 (nds32_elf_analysis_relax_hint): Likewise.
1046 (tc_nds32_regname_to_dw2regnum): Likewise.
1047 * config/tc-nios2.c (nios2_opcode_lookup): Likewise.
1048 (nios2_reg_lookup): Likewise.
1049 (nios2_ps_lookup): Likewise.
1050 (md_begin): Likewise.
1051 * config/tc-ns32k.c (struct hash_control): Likewise.
1053 (md_begin): Likewise.
1054 * config/tc-pdp11.c (md_begin): Likewise.
1055 (md_assemble): Likewise.
1056 * config/tc-pj.c (fake_opcode): Likewise.
1058 (md_begin): Likewise.
1059 (md_assemble): Likewise.
1060 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
1061 (md_assemble): Likewise.
1062 * config/tc-pru.c (pru_opcode_lookup): Likewise.
1063 (pru_reg_lookup): Likewise.
1064 (md_begin): Likewise.
1066 * config/tc-riscv.c (init_ext_version_hash): Likewise.
1067 (riscv_get_default_ext_version): Likewise.
1068 (riscv_set_arch): Likewise.
1069 (init_opcode_names_hash): Likewise.
1070 (opcode_name_lookup): Likewise.
1071 (enum reg_class): Likewise.
1072 (hash_reg_name): Likewise.
1073 (riscv_init_csr_hash): Likewise.
1074 (reg_csr_lookup_internal): Likewise.
1075 (reg_lookup_internal): Likewise.
1076 (init_opcode_hash): Likewise.
1077 (md_begin): Likewise.
1078 (DECLARE_CSR): Likewise.
1079 (macro_build): Likewise.
1080 (riscv_ip): Likewise.
1081 * config/tc-s390.c (register_name): Likewise.
1082 (s390_setup_opcodes): Likewise.
1083 (md_begin): Likewise.
1084 (md_assemble): Likewise.
1085 (s390_insn): Likewise.
1086 * config/tc-score.c (struct s3_reg_map): Likewise.
1087 (s3_score_reg_parse): Likewise.
1088 (s3_dependency_type_from_insn): Likewise.
1089 (s3_parse_16_32_inst): Likewise.
1090 (s3_parse_48_inst): Likewise.
1091 (s3_insert_reg): Likewise.
1092 (s3_build_reg_hsh): Likewise.
1093 (s3_build_score_ops_hsh): Likewise.
1094 (s3_build_dependency_insn_hsh): Likewise.
1095 (s3_begin): Likewise.
1096 * config/tc-score7.c (struct s7_reg_map): Likewise.
1097 (s7_score_reg_parse): Likewise.
1098 (s7_dependency_type_from_insn): Likewise.
1099 (s7_parse_16_32_inst): Likewise.
1100 (s7_build_score_ops_hsh): Likewise.
1101 (s7_build_dependency_insn_hsh): Likewise.
1102 (s7_insert_reg): Likewise.
1103 (s7_build_reg_hsh): Likewise.
1104 (s7_begin): Likewise.
1105 * config/tc-sh.c (EMPTY): Likewise.
1106 (md_begin): Likewise.
1107 (find_cooked_opcode): Likewise.
1108 * config/tc-sparc.c (md_begin): Likewise.
1109 (sparc_ip): Likewise.
1110 * config/tc-spu.c (md_begin): Likewise.
1111 (md_assemble): Likewise.
1112 * config/tc-tic30.c (md_begin): Likewise.
1113 (tic30_operand): Likewise.
1114 (tic30_parallel_insn): Likewise.
1115 (md_assemble): Likewise.
1116 * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise.
1117 (tic4x_asg): Likewise.
1118 (tic4x_inst_insert): Likewise.
1119 (tic4x_inst_add): Likewise.
1120 (md_begin): Likewise.
1121 (tic4x_operand_parse): Likewise.
1122 (md_assemble): Likewise.
1123 * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise.
1124 (stag_add_field_symbols): Likewise.
1125 (tic54x_endstruct): Likewise.
1126 (tic54x_tag): Likewise.
1127 (tic54x_remove_local_label): Likewise.
1128 (tic54x_clear_local_labels): Likewise.
1129 (tic54x_var): Likewise.
1130 (tic54x_macro_start): Likewise.
1131 (tic54x_macro_info): Likewise.
1132 (tic54x_macro_end): Likewise.
1133 (subsym_isreg): Likewise.
1134 (subsym_structsz): Likewise.
1135 (md_begin): Likewise.
1136 (is_mmreg): Likewise.
1137 (is_type): Likewise.
1138 (encode_condition): Likewise.
1139 (encode_cc3): Likewise.
1140 (encode_cc2): Likewise.
1141 (encode_operand): Likewise.
1142 (tic54x_parse_insn): Likewise.
1143 (tic54x_parse_parallel_insn_firstline): Likewise.
1144 (subsym_create_or_replace): Likewise.
1145 (subsym_lookup): Likewise.
1146 (subsym_substitute): Likewise.
1147 (tic54x_undefined_symbol): Likewise.
1148 * config/tc-tic6x.c (md_begin): Likewise.
1149 (md_assemble): Likewise.
1150 * config/tc-tilegx.c (O_hw2_last_plt): Likewise.
1151 (INSERT_SPECIAL_OP): Likewise.
1152 (md_begin): Likewise.
1153 (tilegx_parse_name): Likewise.
1154 (parse_reg_expression): Likewise.
1155 (md_assemble): Likewise.
1156 * config/tc-tilepro.c (O_tls_ie_load): Likewise.
1157 (INSERT_SPECIAL_OP): Likewise.
1158 (tilepro_parse_name): Likewise.
1159 (parse_reg_expression): Likewise.
1160 (md_assemble): Likewise.
1161 * config/tc-v850.c (md_begin): Likewise.
1162 (md_assemble): Likewise.
1163 * config/tc-vax.c (md_ri_to_chars): Likewise.
1164 (vip_begin): Likewise.
1167 (md_begin): Likewise.
1168 * config/tc-wasm32.c (md_begin): Likewise.
1169 (md_assemble): Likewise.
1170 * config/tc-xgate.c (xgate_parse_operand): Likewise.
1171 (md_begin): Likewise.
1172 (md_assemble): Likewise.
1173 * config/tc-z8k.c (md_begin): Likewise.
1174 (md_assemble): Likewise.
1176 2020-08-20 Martin Liska <mliska@suse.cz>
1178 * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_*
1180 (dwcfi_hash_find): Likewise.
1181 (dwcfi_hash_find_or_make): Likewise.
1183 2020-08-20 Martin Liska <mliska@suse.cz>
1185 * ecoff.c (INIT_VARRAY): Use htab_t.
1186 (add_string): Likewise.
1187 (ecoff_read_begin_hook): Use new str_htab_create.
1188 (get_tag): Use htab_t.
1189 (add_file): Likewise.
1191 2020-08-20 Martin Liska <mliska@suse.cz>
1193 * hash.h (struct string_tuple): New.
1194 (hash_string_tuple): Likewise.
1195 (eq_string_tuple): Likewise.
1196 (string_tuple_alloc): Likewise.
1197 (str_hash_find): Likewise.
1198 (str_hash_find_n): Likewise.
1199 (str_hash_delete): Likewise.
1200 (str_hash_insert): Likewise.
1201 (str_htab_create): Likewise.
1203 2020-08-20 Martin Liska <mliska@suse.cz>
1205 * symbols.c (struct symbol_entry): New.
1206 (hash_symbol_entry): Likewise.
1207 (eq_symbol_entry): Likewise.
1208 (symbol_entry_alloc): Likewise.
1209 (symbol_entry_find): Likewise.
1210 (local_symbol_make): Use htab hash table.
1211 (local_symbol_convert): Likewise.
1212 (symbol_table_insert): Likewise.
1213 (symbol_find_exact_noref): Likewise.
1214 (resolve_local_symbol): Likewise.
1215 (resolve_local_symbol_values): Likewise.
1216 (symbol_begin): Likewise.
1217 (symbol_print_statistics): Likewise.
1219 2020-08-20 Martin Liska <mliska@suse.cz>
1221 * read.c (struct po_entry): New.
1222 (hash_po_entry): Likewise.
1223 (eq_po_entry): Likewise.
1224 (po_entry_alloc): Likewise.
1225 (po_entry_find): Likewise.
1226 (pop_insert): Likewise.
1227 (pobegin): Use htab hash table.
1228 (read_a_source_file): Likewise.
1229 (s_macro): Likewise.
1230 (read_print_statistics): Likewise.
1231 * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier.
1232 * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise.
1234 2020-08-20 Martin Liska <mliska@suse.cz>
1236 * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table.
1237 * macro.c (struct hash_control): Use htab.
1238 (macro_init): Likewise.
1239 (do_formals): Likewise.
1240 (free_macro): Likewise.
1241 (define_macro): Likewise.
1242 (sub_actual): Likewise.
1243 (macro_expand_body): Likewise.
1244 (macro_expand): Likewise.
1245 (check_macro): Likewise.
1246 (delete_macro): Likewise.
1247 (expand_irp): Likewise.
1248 * macro.h (struct macro_hash_entry): New struct.
1249 (hash_macro_entry): New.
1250 (eq_macro_entry): Likewise.
1251 (macro_entry_alloc): Likewise.
1252 (macro_entry_find): Likewise.
1253 (struct formal_hash_entry): Likewise.
1254 (hash_formal_entry): Likewise.
1255 (eq_formal_entry): Likewise.
1256 (formal_entry_alloc): Likewise.
1257 (formal_entry_find): Likewise.
1259 2020-08-20 Martin Liska <mliska@suse.cz>
1261 * as.h: Include hashtab.h.
1262 * hash.c (htab_insert): New.
1263 (htab_print_statistics): Likewise.
1264 * hash.h (htab_insert): Likewise.
1265 (htab_print_statistics): Likewise.
1267 2020-08-19 Alan Modra <amodra@gmail.com>
1269 * testsuite/gas/ppc/int128.s: Correct vcmpuq.
1270 * testsuite/gas/ppc/int128.d: Update.
1271 * testsuite/gas/ppc/xvtlsbb.d: Update.
1273 2020-08-18 Peter Bergner <bergner@linux.ibm.com>
1275 * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
1276 * testsuite/gas/ppc/vsx4.d: Likewise.
1278 2020-08-17 Alex Coplan <alex.coplan@arm.com>
1280 * config/obj-elf.c (obj_elf_change_section): When repurposing an
1281 existing symbol, ensure that we set sy_value as per other (fresh)
1283 * testsuite/gas/elf/elf.exp: Add new test.
1284 * testsuite/gas/elf/section-symbol-redef.d: New test.
1285 * testsuite/gas/elf/section-symbol-redef.s: Input for test.
1287 2020-08-13 Nick Clifton <nickc@redhat.com>
1290 * config/obj-som.c (obj_som_init_stab_section): Do nothing if the
1291 $GDB_DEBUG$ section has already been created.
1293 2020-08-12 Joe Ramsay <joe.ramsay@.arm.com>
1295 * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for
1296 NS_FD shape when MVE is present
1297 * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test.
1298 * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test.
1299 * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test.
1300 * testsuite/gas/arm/mve-vcvtne-it.d: New test.
1301 * testsuite/gas/arm/mve-vcvtne-it.s: New test.
1303 2020-08-12 Alex Coplan <alex.coplan@arm.com>
1305 * testsuite/gas/aarch64/mpam-bad.d: New test.
1306 * testsuite/gas/aarch64/mpam-bad.l: Error output.
1307 * testsuite/gas/aarch64/mpam-bad.s: Input.
1308 * testsuite/gas/aarch64/mpam.d: New test.
1309 * testsuite/gas/aarch64/mpam.s: Input.
1311 2020-08-12 Nick Clifton <nickc@redhat.com>
1314 * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description
1315 of the -mno-csr-check option.
1317 2020-08-12 Nick Clifton <nickc@redhat.com>
1319 * po/ru.po: Updated Russian translation.
1321 2020-08-10 Alex Coplan <alex.coplan@arm.com>
1323 * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing
1324 a long system register.
1325 (parse_sys_ins_reg): Likewise.
1326 (sysreg_hash_insert): New.
1327 (md_begin): Use sysreg_hash_insert() to ensure all system
1328 registers are no longer than the maximum length at startup.
1329 * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test.
1330 * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output.
1331 * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input.
1333 2020-08-10 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
1335 * config/tc-aarch64.c (parse_sys_reg): Call to
1336 aarch64_sys_ins_reg_supported_p instead of
1337 aarch64_sys_reg_supported_p.
1338 (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check.
1339 * testsuite/gas/aarch64/illegal-sysreg-5.d: New test.
1340 * testsuite/gas/aarch64/illegal-sysreg-5.l: New test.
1341 * testsuite/gas/aarch64/sysreg-5.s: New test.
1343 2020-08-10 Alan Modra <amodra@gmail.com>
1345 * testsuite/gas/ppc/power8.d,
1346 * testsuite/gas/ppc/power8.s: Add miso.
1347 * testsuite/gas/ppc/power9.d,
1348 * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru.
1350 2020-08-10 Alan Modra <amodra@gmail.com>
1352 * testsuite/gas/ppc/power8.d: Update.
1353 * testsuite/gas/ppc/vsx2.d: Update.
1355 2020-08-10 Alan Modra <amodra@gmail.com>
1357 * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
1358 stswi, or stswx in little-endian mode.
1359 * testsuite/gas/ppc/476.d,
1360 * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
1361 * testsuite/gas/ppc/a2.d,
1362 * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
1363 * testsuite/gas/ppc/be.d,
1364 * testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
1365 * testsuite/gas/ppc/le_error.d,
1366 * testsuite/gas/ppc/le_error.l: New little-endian test.
1367 * testsuite/gas/ppc/ppc.exp: Run new tests.
1369 2020-08-07 H.J. Lu <hongjiu.lu@intel.com>
1371 * read.c (read_a_source_file): Ignore rest of line on overflow
1374 2020-08-06 Alex Coplan <alex.coplan@arm.com>
1376 * read.c (read_a_source_file): Use long for local labels, detect
1377 overflow and raise an error for overly-long labels.
1378 * testsuite/gas/all/gas.exp: Add local-label-overflow test.
1379 * testsuite/gas/all/local-label-overflow.d: New test.
1380 * testsuite/gas/all/local-label-overflow.l: Error output.
1381 * testsuite/gas/all/local-label-overflow.s: Input.
1383 2020-08-04 Christian Groessler <chris@groessler.org>
1385 * gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
1386 "sout/soutb #imm,reg"
1388 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1390 * NEWS: Mention {disp16} pseudo prefix.
1392 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1394 * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
1397 2020-08-04 Mark Wielaard <mark@klomp.org>
1399 * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
1400 DW_FORM_udata for DW_AT_high_pc.
1401 (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
1402 DWARF2_VERSION >= 4.
1403 * read.c (emit_leb128_exp): No longer static.
1404 * read.h (emit_leb128_exp): Define.
1406 2020-08-02 Mark Wielaard <mark@klomp.org>
1408 * gas/dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
1409 least one directory if there is at least one file. Use dirs[1]
1410 if dirs[0] is not set, or if there is no dirs[1] the current
1411 working directory. Use files[1] filename, when files[0] filename
1414 2020-08-02 Mark Wielaard <mark@klomp.org>
1416 * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
1418 * gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
1419 * gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
1420 * gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
1421 * gas/testsuite/gas/elf/dwarf-5-cu.s: Likewise.
1422 * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
1424 2020-08-02 Mark Wielaard <mark@klomp.org>
1426 * doc/as.texi (--gdwarf-[345]): Fix typo.
1428 2020-08-03 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1430 * config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
1431 (md_parse_option): Remove case for OPTION_MOVE_DATA.
1432 (md_longopts): Remove "md" entry.
1433 (md_show_usage): Likewise.
1435 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1438 * config/tc-i386.c (_i386_insn::disp_encoding): Add
1439 disp_encoding_16bit.
1440 (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
1442 (build_modrm_byte): Handle {disp16}.
1443 (i386_index_check): Check invalid {disp16} and {disp32} pseudo
1445 * doc/c-i386.texi: Update {disp32} documentation and document
1447 * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
1448 * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
1450 * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
1451 tests with 128-byte displacement. Add {disp16} tests.
1452 * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
1453 vmovaps test. Add (%r13)/(%r13d) tests.
1454 * testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
1455 * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
1456 * testsuite/gas/i386/inval-pseudo.l: Updated.
1457 * testsuite/gas/i386/pseudos.d: Likewise.
1458 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1460 2020-07-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1462 * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
1463 * Makefile.in, doc/Makefile.in: Regenerate.
1464 * configure: Regenerate.
1466 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1468 * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
1469 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1470 * testsuite/gas/i386/dw2-compress-3a.d: Likewise.
1471 * testsuite/gas/i386/dw2-compress-3b.d: Likewise.
1472 * testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
1473 * testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
1475 2020-07-30 Nick Clifton <nickc@redhat.com>
1477 * as.c (dwarf_level): Initialise to 3 in case this is not set on
1480 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1482 * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
1483 * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
1484 * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
1485 * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
1486 * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
1487 * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
1488 * testsuite/gas/mips/mips.exp: Run the new tests.
1490 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1492 * testsuite/gas/mips/global-local-symtab-o32.d: New test.
1493 * testsuite/gas/mips/global-local-symtab-o32t.d: New test.
1494 * testsuite/gas/mips/global-local-symtab-n32.d: New test.
1495 * testsuite/gas/mips/global-local-symtab-n32t.d: New test.
1496 * testsuite/gas/mips/global-local-symtab-n64.d: New test.
1497 * testsuite/gas/mips/global-local-symtab.s: New test source.
1498 * testsuite/gas/mips/mips.exp: Run the new tests.
1500 2020-07-28 H.J. Lu <hongjiu.lu@intel.com>
1503 * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
1504 (%bp)/(%ebp)/(%rbp) for {disp32}.
1505 * doc/c-i386.texi: Update {disp32} documentation.
1506 * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
1507 * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
1508 * testsuite/gas/i386/pseudos.d: Updated.
1509 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1511 2020-07-27 H.J. Lu <hongjiu.lu@intel.com>
1513 * doc/as.texi: Replace preceeded with preceded.
1515 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
1517 * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
1518 * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
1519 * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
1520 * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
1521 * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
1522 * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
1523 * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
1524 * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
1526 * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
1527 * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
1528 * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
1530 * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
1532 * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
1534 * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
1536 * testsuite/gas/mips/jal-xgot-irix.d: New file.
1537 * testsuite/gas/mips/jalr2-irix.d: New file.
1538 * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
1540 * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
1542 * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
1543 * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
1544 `*-*-irix*' targets. Add source file designator.
1545 * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
1546 `*-*-irix*' targets.
1547 * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
1548 * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
1549 * testsuite/gas/mips/jalr2.d: Add name designator.
1550 * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
1551 tests involving the JALR relocation throughout.
1553 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
1555 * testsuite/gas/mips/mips.exp: Use a helper variable for
1556 IRIX/non-IRIX test selection.
1558 2020-07-21 Jan Beulich <jbeulich@suse.com>
1560 * testsuite/gas/i386/evex-no-scale-64.d,
1561 testsuite/gas/i386/addr32.d,
1562 testsuite/gas/i386/x86-64-addr32-intel.d,
1563 testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
1565 2020-07-21 Cooper Qu <cooper.qu@linux.alibaba.com>
1567 * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
1569 2020-07-21 Jan Beulich <jbeulich@suse.com>
1571 * testsuite/gas/i386/evex-no-scale-32.d,
1572 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
1573 * testsuite/gas/i386/evex-no-scale-32.s,
1574 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
1575 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
1576 instead of .section.
1577 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
1580 2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
1582 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
1583 (my_getSmallExpression): Adjust accordingly.
1585 2020-07-20 Jan Beulich <jbeulich@suse.com>
1588 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
1589 conditional around it.
1590 (md_begin): Insert backslash into operand_chars[] when slash is
1591 a comment character.
1592 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
1593 \* as operators when / may be a comment character.
1594 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
1595 * testsuite/gas/i386/i386.exp: Run new test.
1597 2020-07-20 Jan Beulich <jbeulich@suse.com>
1600 * app.c (last_char): Drop TC_ARM conditional around it.
1601 (struct app_save): Drop TC_ARM conditional around last_char.
1602 (app_push, app_pop): Drop TC_ARM conditional from last_char
1604 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
1605 backslash-precedes-comment-character check.
1607 2020-07-20 Jan Beulich <jbeulich@suse.com>
1609 * config/tc-i386.c (frag_opcode_byte): New.
1610 (output_branch): Emit error when in absolute section.
1611 (output_jump, output_insn): Use frag_opcode_byte. Handle being
1612 in absolute section.
1613 (output_interseg_jump, output_disp, output_imm): Handle being in
1615 * testsuite/gas/i386/sizing.s,
1616 testsuite/gas/i386/sizing32.d,
1617 testsuite/gas/i386/sizing64.d: New.
1618 * testsuite/gas/i386/i386.exp: Run new tests.
1620 2020-07-20 Jan Beulich <jbeulich@suse.com>
1622 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
1623 is_elf_format as applicable; merely exclude iamcu tests.
1625 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
1628 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
1629 against section to PC32 reloc.
1630 * testsuite/gas/i386/relax-5.d: Updated.
1631 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1633 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
1636 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
1637 * testsuite/gas/i386/addr32.d: Likewise.
1638 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1639 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1641 2020-07-15 Nick Clifton <nickc@redhat.com>
1643 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
1644 the addend field of REL relocations. Store the full addend into
1645 the note for REL relocations.
1647 2020-07-15 Jan Beulich <jbeulich@suse.com>
1649 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
1651 * testsuite/gas/i386/x86-64-stack-intel.d,
1652 testsuite/gas/i386/x86-64-stack-suffix.d,
1653 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
1655 2020-07-15 Jan Beulich <jbeulich@suse.com>
1657 * testsuite/gas/i386/disassem.d,
1658 testsuite/gas/i386/ilp32/x86-64-branch.d,
1659 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
1660 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
1661 testsuite/gas/i386/noreg32.d,
1662 testsuite/gas/i386/noreg64-rex64.d,
1663 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
1664 testsuite/gas/i386/opcode.d,
1665 testsuite/gas/i386/solaris/x86-64-branch-2.d,
1666 testsuite/gas/i386/solaris/x86-64-jump.d,
1667 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
1668 testsuite/gas/i386/solaris/x86-64-nop-3.d,
1669 testsuite/gas/i386/solaris/x86-64-nop-4.d,
1670 testsuite/gas/i386/solaris/x86-64-nop-5.d,
1671 testsuite/gas/i386/solaris/x86-64-relax-2.d,
1672 testsuite/gas/i386/solaris/x86-64-relax-3.d,
1673 testsuite/gas/i386/x86-64-align-branch-1a.d,
1674 testsuite/gas/i386/x86-64-align-branch-1b.d,
1675 testsuite/gas/i386/x86-64-align-branch-1c.d,
1676 testsuite/gas/i386/x86-64-align-branch-1d.d,
1677 testsuite/gas/i386/x86-64-align-branch-1e.d,
1678 testsuite/gas/i386/x86-64-align-branch-1f.d,
1679 testsuite/gas/i386/x86-64-align-branch-1g.d,
1680 testsuite/gas/i386/x86-64-align-branch-1h.d,
1681 testsuite/gas/i386/x86-64-align-branch-1i.d,
1682 testsuite/gas/i386/x86-64-align-branch-2a.d,
1683 testsuite/gas/i386/x86-64-align-branch-2b.d,
1684 testsuite/gas/i386/x86-64-align-branch-2c.d,
1685 testsuite/gas/i386/x86-64-align-branch-3.d,
1686 testsuite/gas/i386/x86-64-align-branch-4a.d,
1687 testsuite/gas/i386/x86-64-align-branch-4b.d,
1688 testsuite/gas/i386/x86-64-align-branch-5.d,
1689 testsuite/gas/i386/x86-64-align-branch-6.d,
1690 testsuite/gas/i386/x86-64-branch-2.d,
1691 testsuite/gas/i386/x86-64-branch-3.d,
1692 testsuite/gas/i386/x86-64-branch.d,
1693 testsuite/gas/i386/x86-64-disassem.d,
1694 testsuite/gas/i386/x86-64-disp32.d,
1695 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
1696 testsuite/gas/i386/x86-64-gotpcrel.d,
1697 testsuite/gas/i386/x86-64-ifunc.d,
1698 testsuite/gas/i386/x86-64-jump.d,
1699 testsuite/gas/i386/x86-64-lfence-byte.d,
1700 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
1701 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
1702 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
1703 testsuite/gas/i386/x86-64-lfence-load.d,
1704 testsuite/gas/i386/x86-64-lfence-ret-a.d,
1705 testsuite/gas/i386/x86-64-lfence-ret-b.d,
1706 testsuite/gas/i386/x86-64-lfence-ret-c.d,
1707 testsuite/gas/i386/x86-64-lfence-ret-d.d,
1708 testsuite/gas/i386/x86-64-lfence-ret-e.d,
1709 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
1710 testsuite/gas/i386/x86-64-mpx-branch-1.d,
1711 testsuite/gas/i386/x86-64-mpx.d,
1712 testsuite/gas/i386/x86-64-nop-3.d,
1713 testsuite/gas/i386/x86-64-nop-4.d,
1714 testsuite/gas/i386/x86-64-nop-5.d,
1715 testsuite/gas/i386/x86-64-nops-7.d,
1716 testsuite/gas/i386/x86-64-notrack.d,
1717 testsuite/gas/i386/x86-64-opcode.d,
1718 testsuite/gas/i386/x86-64-relax-2.d,
1719 testsuite/gas/i386/x86-64-relax-3.d,
1720 testsuite/gas/i386/x86-64-relax-4.d,
1721 testsuite/gas/i386/x86-64-rtm.d,
1722 testsuite/gas/i386/x86-64-stack.d,
1723 testsuite/gas/i386/x86-64-unique.d,
1724 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
1726 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
1729 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
1731 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
1732 * testsuite/gas/i386/addr32.d: Updated.
1733 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1734 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1735 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
1736 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
1738 2020-07-14 Jan Beulich <jbeulich@suse.com>
1740 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
1741 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
1742 * testsuite/gas/i386/intel.d,
1743 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
1745 2020-07-14 Jan Beulich <jbeulich@suse.com>
1747 * testsuite/gas/i386/prefix.d: Adjust expectations.
1749 2020-07-14 Jan Beulich <jbeulich@suse.com>
1751 * testsuite/gas/i386/x86-64-avx-intel.d,
1752 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
1754 2020-07-14 Jan Beulich <jbeulich@suse.com>
1756 * testsuite/gas/i386/movbe-suffix.d,
1757 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
1758 * testsuite/gas/i386/i386.exp: Run new tests.
1760 2020-07-14 Jan Beulich <jbeulich@suse.com>
1762 * testsuite/gas/i386/crc32-suffix.d,
1763 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
1764 * testsuite/gas/i386/i386.exp: Run new tests.
1765 * testsuite/gas/i386/arch-10-bdver1.d,
1766 testsuite/gas/i386/arch-10-bdver2.d,
1767 testsuite/gas/i386/arch-10-bdver3.d,
1768 testsuite/gas/i386/arch-10-bdver4.d,
1769 testsuite/gas/i386/arch-10-btver1.d,
1770 testsuite/gas/i386/arch-10-btver2.d,
1771 testsuite/gas/i386/arch-10-lzcnt.d,
1772 testsuite/gas/i386/arch-10-prefetchw.d,
1773 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
1774 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
1775 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
1776 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
1777 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
1778 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
1779 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
1780 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
1781 testsuite/gas/i386/x86-64-arch-2-btver1.d,
1782 testsuite/gas/i386/x86-64-arch-2-btver2.d,
1783 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
1784 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
1785 testsuite/gas/i386/x86-64-arch-2.d,
1786 testsuite/gas/i386/x86-64-crc32.d,
1787 testsuite/gas/i386/x86-64-pseudos.d,
1788 testsuite/gas/i386/x86-64-sse-noavx.d,
1789 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
1791 2020-07-14 Jan Beulich <jbeulich@suse.com>
1793 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1794 ModR/M-encoded byte register cases.
1795 * testsuite/gas/i386/x86-64-pseudos.d,
1796 testsuite/gas/i386/x86-64-reg-intel.d,
1797 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
1799 2020-07-14 Jan Beulich <jbeulich@suse.com>
1801 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1802 not-ModR/M-encoded byte register cases.
1803 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
1805 2020-07-14 Jan Beulich <jbeulich@suse.com>
1807 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
1808 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
1809 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
1810 testsuite/gas/i386/ilp32/x86-64-avx.d,
1811 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
1812 testsuite/gas/i386/ilp32/x86-64-crc32.d,
1813 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
1814 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
1815 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
1816 testsuite/gas/i386/ilp32/x86-64-reg.d,
1817 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
1818 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
1819 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
1820 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
1821 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
1822 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
1825 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
1827 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
1830 2020-07-13 Nick Clifton <nickc@redhat.com>
1832 * po/fr.po: Updated French translation.
1834 2020-07-13 Alan Modra <amodra@gmail.com>
1836 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
1837 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1838 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1839 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1841 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
1843 * config/tc-i386.c (output_insn): Check i.xstate to set
1844 GNU_PROPERTY_X86_FEATURE_2_TMM.
1845 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
1846 x86-64-property-8 and x86-64-property-9.
1847 * testsuite/gas/i386/x86-64-property-7.d: New file.
1848 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
1849 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
1850 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
1851 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
1852 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
1854 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1856 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
1857 has_regymm, has_regzmm and has_regtmm. Add xstate.
1858 (md_assemble): Set i.xstate from operand types in instruction
1860 (build_modrm_byte): Updated.
1861 (output_insn): Check i.xstate.
1862 * testsuite/gas/i386/i386.exp: Run property-6 and
1864 * testsuite/gas/i386/property-6.d: New file.
1865 * testsuite/gas/i386/property-6.s: Updated.
1866 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
1868 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1870 * testsuite/gas/i386/property-5.d: Correct test name.
1872 2020-07-10 Lili Cui <lili.cui@intel.com>
1874 * NEWS: Mention support for Intel AMX instructions.
1875 * config/tc-i386.c (i386_error): Add invalid_sib_address.
1876 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
1877 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
1878 (match_simd_size): Add tmmword check.
1879 (operand_type_match): Add tmmword.
1880 (type_names): Add rTMM.
1881 (i386_error): Add invalid_tmm_register_set.
1882 (check_VecOperands): Handle invalid_sib_address and
1883 invalid_tmm_register_set.
1884 (match_template): Handle invalid_sib_address.
1885 (build_modrm_byte): Handle non-vector SIB and zmmword.
1886 (i386_index_check): Disallow RegIP for non-vector SIB.
1887 (check_register): Handle zmmword.
1888 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
1889 * testsuite/gas/i386/i386.exp: Add AMX new tests.
1890 * testsuite/gas/i386/intel-regs.d: Add tmm.
1891 * testsuite/gas/i386/intel-regs.s: Add tmm.
1892 * testsuite/gas/i386/x86-64-amx-intel.d: New.
1893 * testsuite/gas/i386/x86-64-amx-inval.l: New.
1894 * testsuite/gas/i386/x86-64-amx-inval.s: New.
1895 * testsuite/gas/i386/x86-64-amx.d: New.
1896 * testsuite/gas/i386/x86-64-amx.s: New.
1897 * testsuite/gas/i386/x86-64-amx-bad.d: New.
1898 * testsuite/gas/i386/x86-64-amx-bad.s: New.
1900 2020-07-10 Tom de Vries <tdevries@suse.de>
1902 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
1903 readelf's line table decoding.
1904 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1905 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1906 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1907 * testsuite/gas/elf/dwarf2-15.d: Likewise.
1908 * testsuite/gas/elf/dwarf2-16.d: Likewise.
1909 * testsuite/gas/elf/dwarf2-17.d: Likewise.
1910 * testsuite/gas/elf/dwarf2-18.d: Likewise.
1911 * testsuite/gas/elf/dwarf2-19.d: Likewise.
1912 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1913 * testsuite/gas/elf/dwarf2-6.d: Likewise.
1914 * testsuite/gas/elf/dwarf2-7.d: Likewise.
1916 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1918 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
1919 VEX/EVEX vector instructions.
1920 * testsuite/gas/i386/property-4.d: New file.
1921 * testsuite/gas/i386/property-4.s: Likewise.
1922 * testsuite/gas/i386/property-5.d: Likewise.
1923 * testsuite/gas/i386/property-5.s: Likewise.
1924 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
1925 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
1927 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1929 * NEWS: Mention --enable-x86-used-note.
1930 * configure.ac: Configure with --enable-x86-used-note by default
1932 * configure: Regenerated.
1934 2020-07-09 Alan Modra <amodra@gmail.com>
1936 * config/obj-coff.h: Remove TE_PE support.
1937 * config/tc-ppc.c: Likewise.
1938 * config/tc-ppc.h: Likewise.
1939 * configure.tgt: Remove powerpc PE and powerpc lynxos.
1940 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
1942 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
1944 2020-07-08 Jan Beulich <jbeulich@suse.com>
1946 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
1948 * testsuite/gas/i386/i386.exp: Run new tests.
1950 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
1952 * config/tc-arc.c (find_opcode_match): Add error messages.
1953 * testsuite/gas/arc/add_s-err.s: Update test.
1954 * testsuite/gas/arc/asm-errors.err: Likewise.
1955 * testsuite/gas/arc/cpu-em-err.s: Likewise.
1956 * testsuite/gas/arc/hregs-err.s: Likewise.
1957 * testsuite/gas/arc/warn.s: Likewise.
1959 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
1962 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
1964 2020-07-07 Alan Modra <amodra@gmail.com>
1966 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
1967 * testsuite/gas/ppc/ppc.exp: Likewise.
1968 * testsuite/gas/all/weakref1l.d: Likewise.
1970 2020-07-07 Nick Clifton <nickc@redhat.com>
1972 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
1975 2020-07-06 Jan Beulich <jbeulich@suse.com>
1977 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
1978 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
1979 testsuite/gas/i386/x86-64-evex-wig1.d,
1980 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
1983 2020-07-06 Jan Beulich <jbeulich@suse.com>
1985 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
1986 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
1987 * testsuite/gas/i386/avx512f-opts-intel.d,
1988 testsuite/gas/i386/avx512f-opts.d
1989 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
1990 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
1992 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
1995 * config/tc-arm.c: Fix spelling mistake.
1996 * config/tc-riscv.c: Likewise.
1997 * config/tc-z80.c: Likewise.
1998 * po/gas.pot: Regenerate.
2000 2020-07-06 Nick Clifton <nickc@redhat.com>
2002 * po/uk.po: Updated Ukranian translation.
2004 2020-07-04 Nick Clifton <nickc@redhat.com>
2006 * configure: Regenerate.
2007 * po/gas.pot: Regenerate.
2009 2020-07-04 Nick Clifton <nickc@redhat.com>
2011 * version.m4: Change version number to 2.35.50.
2012 * configure: Regenerate.
2013 * po/bfd.pot: Regenerate.
2015 2020-07-04 Nick Clifton <nickc@redhat.com>
2017 Binutils 2.35 branch created.
2019 2020-07-03 Alan Modra <amodra@gmail.com>
2022 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
2024 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
2026 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
2027 swap two source operands.
2029 2020-07-02 Nick Clifton <nickc@redhat.com>
2031 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
2033 2020-07-02 Alex Coplan <alex.coplan@arm.com>
2035 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
2036 segfault on negative chars.
2037 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
2038 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
2040 2020-07-02 Nick Clifton <nickc@redhat.com>
2043 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
2045 * testsuite/gas/ia64/unwind.d: Likewise.
2046 * testsuite/gas/mmix/bspec-1.d: Likewise.
2047 * testsuite/gas/mmix/bspec-2.d: Likewise.
2048 * testsuite/gas/mmix/comment-1.d: Likewise.
2049 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
2051 2020-07-01 Alan Modra <amodra@gmail.com>
2053 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
2055 2020-07-01 Alan Modra <amodra@gmail.com>
2057 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
2058 in data sections, and mep.
2060 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
2062 * NEWS: Mention x86 NaCl target support removal.
2063 * config/tc-i386.c: Remove x86 NaCl target support.
2064 * config/tc-i386.h: Likewise.
2065 * configure.tgt: Likewise.
2066 * testsuite/gas/i386/i386.exp: Likewise.
2067 * testsuite/gas/i386/iamcu-1.d: Likewise.
2068 * testsuite/gas/i386/iamcu-2.d: Likewise.
2069 * testsuite/gas/i386/iamcu-3.d: Likewise.
2070 * testsuite/gas/i386/iamcu-4.d: Likewise.
2071 * testsuite/gas/i386/iamcu-5.d: Likewise.
2072 * testsuite/gas/i386/k1om.d: Likewise.
2073 * testsuite/gas/i386/l1om.d: Likewise.
2075 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
2077 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
2078 checking into riscv_csr_address.
2079 (riscv_csr_version_check): Likewise.
2080 (riscv_csr_address): New function. Return the suitable CSR address
2081 after checking the ISA dependency and versions. Issue warnings if
2082 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
2083 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
2084 priv spec versions for them.
2085 (reg_csr_lookup_internal): Call riscv_csr_address to find the
2086 suitable CSR address.
2087 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
2088 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2089 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2090 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
2091 priv spec warnings here. These warnings are added by accident.
2092 Remove them and only focus on the ISA dependency warnings.
2093 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2094 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2095 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
2096 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
2097 than the privileged ones.
2098 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
2099 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
2100 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
2101 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
2102 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
2103 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
2104 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
2105 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
2106 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
2107 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
2109 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
2111 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
2112 (md_assemble): Don't process ImmExt without operands.
2114 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
2117 * config/tc-mmix.c (md_assemble) <fixup for
2118 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
2119 Also, set its fx_no_overflow.
2120 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
2121 Similarly this fixup affects 4 bytes, not 8 and needs its
2123 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
2124 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
2126 2020-06-29 Alan Modra <amodra@gmail.com>
2128 * config/tc-s12z.c: Use C style comments.
2129 * config/tc-z80.c: Likewise.
2130 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
2132 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
2134 * config/tc-i386.c (md_assemble): Process ImmExt without
2137 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
2139 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
2140 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
2141 VECSIB256 and VECSIB512, respectively.
2142 (build_modrm_byte): Replace vecsib with sib.
2144 2020-06-26 Jan Beulich <jbeulich@suse.com>
2146 * testsuite/gas/i386/nop-1-suffix.d: New.
2147 * testsuite/gas/i386/i386.exp: Run new test.
2149 2020-06-26 Pat Bernardi <bernardi@adacore.com>
2151 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
2152 (md_pseudo_table): Handle "gnu_attribute".
2153 * doc/as.texi: Document GNU attribute for M68K.
2155 2020-06-25 Nick Clifton <nickc@redhat.com>
2158 * config/tc-arm.c (arm_force_relocation): Force resolution of
2159 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
2160 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
2162 2020-06-25 Jan Beulich <jbeulich@suse.com>
2164 * config/tc-i386.c (md_assemble): Move call to process_immext()
2166 (process_operands): ... here.
2168 2020-06-25 Jan Beulich <jbeulich@suse.com>
2170 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
2171 diagnostic when there is a sizing prefix. Switch to word/dword/
2172 qword encoding when there is a sizing prefix and no (explicit or
2174 (update_imm): Handle presence of a sizing prefix.
2175 * testsuite/gas/i386/noreg16-data32.d,
2176 testsuite/gas/i386/noreg32-data16.d,
2177 testsuite/gas/i386/noreg32-data16.e,
2178 testsuite/gas/i386/noreg64-data16.d,
2179 testsuite/gas/i386/noreg64-data16.e,
2180 testsuite/gas/i386/noreg64-rex64.d: New.
2181 * testsuite/gas/i386/i386.exp: Run new tests.
2182 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
2183 Introduce and use pfx* macros.
2184 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
2186 * testsuite/gas/i386/noreg16.d: Adjust expectations.
2188 2020-06-25 Jan Beulich <jbeulich@suse.com>
2190 * testsuite/gas/i386/avx-16bit.d,
2191 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
2192 testsuite/gas/i386/avx512f-16bit.d,
2193 testsuite/gas/i386/avx512f.d,
2194 testsuite/gas/i386/evex-lig256.d,
2195 testsuite/gas/i386/evex-lig512.d
2196 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
2197 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
2198 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
2199 testsuite/gas/i386/sse2-16bit.d,
2200 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
2203 2020-06-25 Jan Beulich <jbeulich@suse.com>
2205 * config/tc-i386.c (md_assemble): Also reject explicit REX
2206 prefixes with VEX and alike encoded insns. Zap consumed bits
2208 (output_insn): Don't ignore REX prefix for VEX and alike
2209 encodings; abort() instead if encountered.
2210 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
2212 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
2213 * testsuite/gas/i386/x86-64-pseudos.d,
2214 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
2216 2020-06-25 Jan Beulich <jbeulich@suse.com>
2218 * config/tc-i386.c (process_operands): Translate explicit REX
2219 prefix into i.rex for SSE2AVX templates.
2220 (set_rex_vrex): New helper.
2221 (build_modrm_byte): Use it.
2222 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
2224 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
2226 2020-06-25 Jan Beulich <jbeulich@suse.com>
2228 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
2229 templates when there's no data size prefix.
2230 (md_assemble): Reject data size prefix also for legacy encoded
2232 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
2233 Uncomment previously not working line.
2234 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
2236 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
2237 testsuite/gas/i386/sse2avx.d: Adjust expectations.
2239 2020-06-25 Jan Beulich <jbeulich@suse.com>
2241 * config/tc-i386.c (build_evex_prefix): Drop early setting of
2244 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
2246 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
2247 explicit_priv_attr. It used to indicate CSR or priv instructions are
2249 (riscv_is_priv_insn): Return True if it is a privileged instruction.
2250 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
2251 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
2252 (riscv_write_out_attrs): Clarification of when to generate the elf
2253 priv spec attributes.
2254 * testsuite/gas/riscv/attribute-11.s: Add comments.
2255 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
2256 `priv_insn_<n>` to decide which priv instruction is expected to used.
2258 * testsuite/gas/riscv/attribute-14a.d: Likewise.
2259 * testsuite/gas/riscv/attribute-14b.d: Likewise.
2260 * testsuite/gas/riscv/attribute-14c.d: Likewise.
2261 * testsuite/gas/riscv/attribute-14d.d: Likewise.
2262 * testsuite/gas/riscv/attribute-14e.d: Likewise.
2264 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
2266 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
2267 (riscv_set_default_priv_spec): Get the priv spec version from the
2268 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
2270 2020-06-20 Alan Modra <amodra@gmail.com>
2272 * configure.tgt: Set bfd_gas for all SH targets.
2274 2020-06-18 Jan Beulich <jbeulich@suse.com>
2276 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
2277 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2280 2020-06-16 Lili Cui <lili.cui@intel.com>
2282 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
2283 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
2284 * doc/c-i386.texi: Add avx512_vp2intersect.
2286 2020-06-16 Jan Beulich <jbeulich@suse.com>
2288 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
2290 * testsuite/gas/i386/sse-check.s: Adjust comment.
2291 * testsuite/gas/i386/sse-check-error.l,
2292 testsuite/gas/i386/sse-check-warn.e,
2293 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
2296 2020-06-16 Alan Modra <amodra@gmail.com>
2298 * config/tc-tic30.h: Remove OBJ_AOUT support.
2299 * configure.tgt: Delete tic30-*-*aout* entry.
2301 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
2303 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
2305 (elf32xtensa_abi): New declaration.
2306 (option_abi_windowed, option_abi_call0): New enum constants.
2307 (md_longopts): Add entries for --abi-windowed and --abi-call0.
2308 (md_parse_option): Add handlers for --abi-windowed and
2310 (xtensa_add_config_info): Use xtensa_abi_choice instead of
2311 XSHAL_ABI to format ABI tag.
2312 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
2313 --abi-call0 to the list of options.
2314 * doc/c-xtensa.texi: Add description for options --abi-windowed
2316 * testsuite/gas/xtensa/abi-call0.d: New test definition.
2317 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
2318 * testsuite/gas/xtensa/abi.s: New test source.
2320 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
2323 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
2325 * testsuite/gas/i386/tsxldtrk.s: Likewise.
2326 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
2327 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
2329 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
2331 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
2332 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2333 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
2335 2020-06-09 Seth Girvan <snth@snthhacks.com>
2337 * doc/c-avr.texi: Improve wording.
2339 2020-06-09 Jan Beulich <jbeulich@suse.com>
2341 * testsuite/gas/i386/x86-64-pseudos-bad.s,
2342 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
2344 2020-06-09 Jan Beulich <jbeulich@suse.com>
2346 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
2348 * testsuite/gas/i386/prefix.d: Adjust expectations.
2350 2020-06-09 Jan Beulich <jbeulich@suse.com>
2352 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
2353 with VEX/EVEX encoding tests.
2354 * testsuite/gas/i386/prefix.d: Adjust expectations.
2356 2020-06-09 Jan Beulich <jbeulich@suse.com>
2358 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
2360 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
2361 * testsuite/gas/i386/noreg64.d: Adjust expectations.
2362 * testsuite/gas/i386/noreg-intel64.d,
2363 testsuite/gas/i386/noreg-intel64.l,
2364 testsuite/gas/i386/noreg-intel64.s: New.
2365 * testsuite/gas/i386/i386.exp: Run new tests.
2367 2020-06-09 Jan Beulich <jbeulich@suse.com>
2369 * config/tc-i386.c (vex_encoding_error): New enumerator.
2370 (VEX_check_operands): Rename to VEX_check_encoding. Check
2371 for vex_encoding_error. Move Imm4 handling ...
2372 (check_VecOperands): ... here.
2373 (match_template): Call VEX_check_encoding when there are no
2374 operands. Split construct calling check_VecOperands and
2375 VEX_check_encoding (when there are operands).
2376 (check_register): Don't blindly set vex_encoding_evex.
2377 * testsuite/gas/i386/pseudos-bad.s,
2378 testsuite/gas/i386/pseudos-bad.l: New.
2379 * testsuite/gas/i386/i386.exp: Run new test.
2380 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
2382 2020-06-08 Alex Coplan <alex.coplan@arm.com>
2384 * config/tc-arm.c (insns): Add dfb.
2385 * testsuite/gas/arm/dfb.d: New test.
2386 * testsuite/gas/arm/dfb.s: Input for test.
2388 2020-06-08 Nick Clifton <nickc@redhat.com>
2390 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
2392 2020-06-08 Jan Beulich <jbeulich@suse.com>
2394 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
2396 2020-06-08 Jan Beulich <jbeulich@suse.com>
2398 * config/tc-i386.c (check_byte_reg): Drop dead conditional
2401 2020-06-08 Jan Beulich <jbeulich@suse.com>
2403 * config/tc-i386.c (check_register): Split RegTR handling, to
2404 fail recognition also in 64-bit mode as well as with i586 or
2405 i686 explicitly enabled.
2406 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
2407 * testsuite/gas/i386/x86_64-intel.d,
2408 testsuite/gas/i386/x86_64.d: Adjust expectations.
2410 2020-06-08 Jan Beulich <jbeulich@suse.com>
2412 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
2413 * testsuite/gas/cfi/cfi.exp: Run this test.
2415 2020-06-08 Jan Beulich <jbeulich@suse.com>
2417 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
2418 check to %st(N) parsing logic.
2419 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
2421 2020-06-08 Jan Beulich <jbeulich@suse.com>
2423 * config/tc-i386.c (bad_reg): New.
2424 (check_VecOperations, i386_att_operand, i386_parse_name): Check
2426 (check_register): New, broken out from ...
2427 (parse_real_register): ... here. Call it.
2428 (parse_register): Call it, and error upon failure.
2429 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
2430 testsuite/gas/i386/x86-64-equ-bad.s,
2431 testsuite/gas/i386/x86-64-equ-bad.l: New.
2432 * testsuite/gas/i386/i386.exp: Run new tests.
2434 2020-06-06 Alan Modra <amodra@gmail.com>
2436 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
2437 * doc/c-ppc.texi: Likewise.
2439 2020-06-06 Alan Modra <amodra@gmail.com>
2441 * config/tc-ppc.c: Update throughout for reloc renaming.
2443 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
2445 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
2448 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
2450 * config/tc-riscv.c (explicit_csr): New static boolean.
2451 Used to indicate CSR are explictly used.
2452 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
2453 (riscv_write_out_attrs): If we already have set elf priv
2454 attributes, then generate them. Otherwise, don't generate
2455 them when no CSR are used.
2456 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
2457 * testsuite/gas/riscv/attribute-02.d: Likewise.
2458 * testsuite/gas/riscv/attribute-03.d: Likewise.
2459 * testsuite/gas/riscv/attribute-04.d: Likewise.
2460 * testsuite/gas/riscv/attribute-05.d: Likewise.
2461 * testsuite/gas/riscv/attribute-06.d: Likewise.
2462 * testsuite/gas/riscv/attribute-07.d: Likewise.
2463 * testsuite/gas/riscv/attribute-08.d: Likewise.
2464 * testsuite/gas/riscv/attribute-09.d: Likewise.
2465 * testsuite/gas/riscv/attribute-10.d: Likewise.
2466 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2467 * testsuite/gas/riscv/attribute-11.s: New testcase.
2468 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
2469 used, so we should output the ELF priv attributes.
2470 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
2471 used, so output the priv attributes according to the -mpriv-spec.
2472 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
2473 used, so ignore the -mpriv-spec setting.
2475 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
2477 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
2478 cgen_get_insn_value.
2479 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
2480 endianness to cgen_get_insn_value and cgen_put_insn_value.
2482 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2484 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
2485 cgen_put_insn_value.
2487 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2489 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
2491 (md_assemble): Remove no longer needed hack.
2493 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2495 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
2496 cgen_put_insn_value.
2497 (gas_cgen_md_apply_fix): Likewise.
2498 (gas_cgen_md_apply_fix): Likewise.
2499 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
2500 cgen_put_insn_value.
2501 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
2502 cgen_put_insn_value.
2504 2020-06-04 Alan Modra <amodra@gmail.com>
2506 * testsuite/config/default.exp: Remove global directive outside
2508 * testsuite/gas/mep/complex-relocs.exp: Likewise.
2509 * testsuite/gas/microblaze/relax_size.exp: Likewise.
2510 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
2511 * testsuite/gas/mt/relocs.exp: Likewise.
2512 * testsuite/gas/rx/rx.exp: Likewise.
2514 2020-06-03 Stephen Casner <casner@acm.org>
2516 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
2518 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
2519 Jim Wilson <jimw@sifive.com>
2522 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
2523 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
2524 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
2525 Move B before SB. Move J before UJ.
2527 2020-06-01 Alex Coplan <alex.coplan@arm.com>
2529 * write.c (relax_segment): Fix handling of negative offset when
2530 relaxing an rs_org frag.
2531 * testsuite/gas/aarch64/org-neg.d: New test.
2532 * testsuite/gas/aarch64/org-neg.l: Error output for test.
2533 * testsuite/gas/aarch64/org-neg.s: Input for test.
2534 * testsuite/gas/arm/org-neg.d: New test.
2535 * testsuite/gas/arm/org-neg.l: Error output for test.
2536 * testsuite/gas/arm/org-neg.s: Input for test.
2538 2020-05-28 Stephen Casner <casner@acm.org>
2540 Fix unexpected failures in gas testsuite for pdp11-aout target.
2541 These are caused by the PDP11's mix of little-endian octets in
2542 shorts but shorts in big endian order for long or quad.
2544 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
2545 * testsuite/gas/all/gas.exp: Select alternate test scripts for
2546 pdp11, skip octa test completely.
2547 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
2548 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
2549 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
2551 2020-05-28 Alex Coplan <alex.coplan@arm.com>
2553 * frags.c (frag_grow): Fix comment.
2555 2020-05-27 Stephen Casner <casner@acm.org>
2558 * config/tc-pdp11.c (parse_reg): Distinguish register names from
2559 symbols that begin with a register name.
2560 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
2561 * testsuite/gas/pdp11/pr26001.s: Likewise.
2562 * testsuite/gas/pdp11/pr26001.d: Likewise.
2564 2020-05-27 Simon Cook <simon.cook@embecosm.com>
2566 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
2567 pointer when creating struct riscv_csr_extra.
2569 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2571 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
2572 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
2573 * testsuite/gas/i386/inval-avx512f.l: Updated.
2575 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
2577 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
2578 load/store instruction variants with alignment hints.
2579 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
2580 instruction variants with alignment hints.
2582 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2585 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
2586 instead of R_XGATE_PCREL_X.
2587 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
2588 BFD_RELOC_XGATE_PCREL_X.
2590 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2593 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
2594 with &fragP->fr_literal[0].
2596 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2599 * config/tc-vax.c (md_estimate_size_before_relax): Replace
2600 fragP->fr_literal with &fragP->fr_literal[0].
2601 (md_convert_frag): Likewise.
2603 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2606 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
2607 with &fragP->fr_literal[0].
2609 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2612 * config/tc-crx.c (getreg_image): Change argument type to int.
2613 (md_convert_frag): Replace fragP->fr_literal with
2614 &fragP->fr_literal[0].
2616 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2619 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
2620 sprintf with memmove.
2622 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2624 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
2625 with &fragP->fr_literal[0].
2627 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2630 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
2631 2 overlapping strings.
2633 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2635 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
2636 with &fragP->fr_literal[0].
2638 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2640 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
2641 with &fragp->fr_literal[0].
2642 * config/tc-microblaze.c (md_apply_fix): Likewise.
2643 * config/tc-sh.c (md_convert_frag): Likewise.
2645 2020-05-24 Jim Wilson <jimw@sifive.com>
2648 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
2649 asection to segT. New locals seg and subseg. Call subseg_set before
2650 fix_new_exp. Call subseg_set after loop to restore original values.
2652 2020-05-21 Alan Modra <amodra@gmail.com>
2654 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
2656 * config/obj-elf.c: Likewise.
2657 * config/tc-aarch64.c: Likewise.
2658 * config/tc-arm.c: Likewise.
2659 * config/tc-m68k.c: Likewise.
2660 * config/tc-nios2.c: Likewise.
2661 * config/tc-tic30.c: Likewise.
2662 * ecoff.c: Likewise.
2664 * stabs.c: Likewise.
2665 * symbols.c: Likewise.
2666 * testsuite/gas/all/test-gen.c: Likewise.
2668 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
2670 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
2671 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
2672 Static variables which are used to set the ISA extensions. You can
2673 use -march (or ELF build attributes) and -misa-spec to set them,
2675 (ext_version_hash): The hash table used to handle the extensions
2677 (init_ext_version_hash): Initialize the ext_version_hash according
2678 to riscv_ext_version_table.
2679 (riscv_get_default_ext_version): The callback function of
2680 riscv_parse_subset_t. According to the choosed ISA spec,
2681 get the default version for the specific extension.
2682 (riscv_set_arch): Set the callback function.
2683 (enum options, struct option md_longopts): Add new option -misa-spec.
2684 (md_parse_option): Do not call riscv_set_arch for -march. We will
2685 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
2686 to set default_isa_spec class.
2687 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
2688 ext_version_hash, and then call riscv_set_arch to set the architecture
2689 with versions according to default_arch_with_ext.
2690 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
2692 * testsuite/gas/riscv/attribute-03.d: Likewise.
2693 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
2694 already set it's version to 2p1 by march, so no need to use the default
2695 2p2 version. For m-ext, we do not set the version by -march and ELF arch
2696 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
2697 ISA spec 2p2, so set 0p0 to it.
2698 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
2699 zicsr is 2p0 according to ISA spec 20191213.
2700 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
2701 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
2702 You can set them by configure options --with-arch and
2703 --with-isa-spec, respectively.
2704 (riscv_set_default_isa_spec): New function used to set the
2706 (md_parse_option): Call riscv_set_default_isa_spec rather than
2707 call riscv_get_isa_spec_class directly.
2708 (riscv_after_parse_args): If the -isa-spec is not set, then we
2709 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
2710 calling riscv_set_default_isa_spec.
2711 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
2712 the --with-isa-spec may be set to different ISA spec.
2713 * testsuite/gas/riscv/attribute-02.d: Likewise.
2714 * testsuite/gas/riscv/attribute-03.d: Likewise.
2715 * testsuite/gas/riscv/attribute-04.d: Likewise.
2716 * testsuite/gas/riscv/attribute-05.d: Likewise.
2717 * testsuite/gas/riscv/attribute-06.d: Likewise.
2718 * testsuite/gas/riscv/attribute-07.d: Likewise.
2719 * configure.ac: Add configure options, --with-arch and
2721 * configure: Regenerated.
2722 * config.in: Regenerated.
2723 * config/tc-riscv.c (default_priv_spec): Static variable which is
2724 used to check if the CSR is valid for the chosen privilege spec. You
2725 can use -mpriv-spec to set it.
2726 (enum reg_class): We now get the CSR address from csr_extra_hash rather
2727 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
2728 (riscv_init_csr_hashes): Only need to initialize one hash table
2730 (riscv_csr_class_check): Change the return type to void. Don't check
2731 the ISA dependency if -mcsr-check isn't set.
2732 (riscv_csr_version_check): New function. Check and find the CSR address
2733 from csr_extra_hash, according to default_priv_spec. Report warning
2734 for the invalid CSR if -mcsr-check is set.
2735 (reg_csr_lookup_internal): Updated.
2736 (reg_lookup_internal): Likewise.
2737 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
2738 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
2739 (md_parse_option): Call riscv_set_default_priv_version to set
2741 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
2742 privilege spec to the newest one.
2743 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
2744 include/opcode/riscv.h.
2745 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
2746 to check the ISA dependency for CSR, so fix the spec version by adding
2748 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
2749 version warnings for the test case.
2750 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2751 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2752 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2753 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2754 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2755 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
2756 Check whether the CSR is valid when privilege version 1.9 is choosed.
2757 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2758 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
2759 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
2760 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
2761 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
2762 Check whether the CSR is valid when privilege version 1.10 is choosed.
2763 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
2764 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
2765 Check whether the CSR is valid when privilege version 1.11 is choosed.
2766 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
2767 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
2768 setting. You can set it by configure option --with-priv-spec.
2769 (riscv_set_default_priv_spec): New function used to set the default
2771 (md_parse_option): Call riscv_set_default_priv_spec rather than
2772 call riscv_get_priv_spec_class directly.
2773 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
2774 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
2775 calling riscv_set_default_priv_spec.
2776 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
2777 the --with-priv-spec may be set to different privilege spec.
2778 * testsuite/gas/riscv/priv-reg.d: Likewise.
2779 * configure.ac: Add configure option --with-priv-spec.
2780 * configure: Regenerated.
2781 * config.in: Regenerated.
2782 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
2783 explicit_attr. Set it to TRUE if any ELF attribute is found.
2784 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
2785 the priv attributes are set.
2786 (md_assemble): Set the default_priv_spec according to the priv
2787 attributes when we start to assemble instruction.
2788 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
2789 riscv_write_out_attrs. Update the arch and priv attributes. If we
2790 don't set the corresponding ELF attributes, then try to output the
2792 (riscv_set_public_attributes): If any ELF attribute or -march-attr
2793 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
2794 to update the arch and priv attributes.
2795 (s_riscv_attribute): Make sure all arch and priv attributes are set
2796 before any instruction.
2797 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
2798 ELF attribute or -march-attr is set. If the priv attributes are not
2799 set, then try to update them by the default setting (-mpriv-spec or
2801 * testsuite/gas/riscv/attribute-02.d: Likewise.
2802 * testsuite/gas/riscv/attribute-03.d: Likewise.
2803 * testsuite/gas/riscv/attribute-04.d: Likewise.
2804 * testsuite/gas/riscv/attribute-06.d: Likewise.
2805 * testsuite/gas/riscv/attribute-07.d: Likewise.
2806 * testsuite/gas/riscv/attribute-08.d: Likewise.
2807 * testsuite/gas/riscv/attribute-09.d: Likewise.
2808 * testsuite/gas/riscv/attribute-10.d: Likewise.
2809 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2810 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
2811 set by priv attributes must be supported.
2812 * testsuite/gas/riscv/attribute-05.s: Likewise.
2813 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
2814 priv attributes according to the -mpriv-spec option.
2815 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
2816 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
2817 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
2818 * testsuite/gas/riscv/priv-reg.d: Removed.
2819 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
2820 CSR according to the priv spec 1.9.
2821 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
2822 CSR according to the priv spec 1.9.1.
2823 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
2824 CSR according to the priv spec 1.10.
2825 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
2826 CSR according to the priv spec 1.11.
2827 * config/tc-riscv.c (md_show_usage): Add descriptions about
2828 the new GAS options.
2829 * doc/c-riscv.texi: Likewise.
2831 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
2833 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
2834 * testsuite/gas/ppc/power9.d: Likewise.
2835 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
2836 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
2837 sync, wait, waitrsv>: Add tests.
2838 * testsuite/gas/ppc/power10.d: Likewise.
2840 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
2843 * config/tc-arm.c : Add arm_ext_v8r feature.
2844 (it_fsm_post_encode): Check arm_ext_v8r feature.
2845 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
2847 2020-05-19 Alan Modra <amodra@gmail.com>
2849 * write.c (write_contents): Use bfd_get_filename rather than
2850 accessing bfd->filename directly. Use bfd_section_name rather
2851 than accessing section->name directly.
2853 2020-05-19 Alan Modra <amodra@gmail.com>
2855 * symbols.c (local_symbol_make): Init all of lsy_flags.
2857 2020-05-18 Alan Modra <amodra@gmail.com>
2859 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
2860 before looking at add_symbol->sy_flags.
2862 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
2864 * config/tc-i386.c: Not handle lret/iret.
2865 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
2866 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
2867 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
2868 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
2869 * testsuite/gas/i386/lfence-ret.s: Ditto.
2870 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
2871 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
2872 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
2873 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
2874 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
2875 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
2876 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
2878 2020-05-15 Alan Modra <amodra@gmail.com>
2879 Alex Coplan <alex.coplan@arm.com>
2881 * symbols.c (struct local_symbol): Update comment.
2882 (resolve_symbol_value): For resolved symbols equated to other
2883 symbols, verify that the referenced symbol is not a local_symbol
2884 before accessing sy_value. Don't leave symbol loops during
2885 finalize_syms resolution.
2886 * testsuite/gas/all/assign-bad-recursive.d: New test.
2887 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
2888 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
2889 * testsuite/gas/all/gas.exp: Run it.
2891 2020-05-14 Nick Clifton <nickc@redhat.com>
2893 * po/sv.po: Updated Swedish translation.
2895 2020-05-11 Alan Modra <amodra@gmail.com>
2897 * testsuite/gas/ppc/scalarquad.d,
2898 * testsuite/gas/ppc/scalarquad.s: New test.
2899 * testsuite/gas/ppc/ppc.exp: Run it.
2901 2020-05-11 Alan Modra <amodra@gmail.com>
2903 * testsuite/gas/ppc/rightmost.d,
2904 * testsuite/gas/ppc/rightmost.s: New test.
2905 * testsuite/gas/ppc/ppc.exp: Run it.
2907 2020-05-11 Alan Modra <amodra@gmail.com>
2909 * testsuite/gas/ppc/xvtlsbb.d,
2910 * testsuite/gas/ppc/xvtlsbb.s: New test.
2911 * testsuite/gas/ppc/ppc.exp: Run it.
2913 2020-05-11 Alan Modra <amodra@gmail.com>
2915 * testsuite/gas/ppc/stringop.d,
2916 * testsuite/gas/ppc/stringop.s: New test.
2917 * testsuite/gas/ppc/ppc.exp: Run it.
2919 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2921 * testsuite/gas/ppc/set_bool.d,
2922 * testsuite/gas/ppc/set_bool.s: New test.
2923 * testsuite/gas/ppc/ppc.exp: Run it.
2925 2020-05-11 Alan Modra <amodra@gmail.com>
2927 * testsuite/gas/ppc/bitmanip.d,
2928 * testsuite/gas/ppc/bitmanip.s: New test.
2929 * testsuite/gas/ppc/ppc.exp: Run it.
2931 2020-05-11 Alan Modra <amodra@gmail.com>
2933 * testsuite/gas/ppc/genpcv.d,
2934 * testsuite/gas/ppc/genpcv.s: New test.
2935 * testsuite/gas/ppc/ppc.exp: Run it.
2937 2020-05-11 Alan Modra <amodra@gmail.com>
2939 * testsuite/gas/ppc/maskmanip.d,
2940 * testsuite/gas/ppc/maskmanip.s: New test.
2941 * testsuite/gas/ppc/ppc.exp: Run it.
2943 2020-05-11 Alan Modra <amodra@gmail.com>
2944 Peter Bergner <bergner@linux.ibm.com>
2946 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
2947 (md_assemble): Check acc specified in correct operand.
2948 * testsuite/gas/ppc/outerprod.d,
2949 * testsuite/gas/ppc/outerprod.s,
2950 * testsuite/gas/ppc/vsx4.d,
2951 * testsuite/gas/ppc/vsx4.s: New tests.
2952 * testsuite/gas/ppc/ppc.exp: Run them.
2954 2020-05-11 Alan Modra <amodra@gmail.com>
2956 * testsuite/gas/ppc/simd_perm.d,
2957 * testsuite/gas/ppc/simd_perm.s: New test.
2958 * testsuite/gas/ppc/ppc.exp: Run it.
2960 2020-05-11 Alan Modra <amodra@gmail.com>
2962 * testsuite/gas/ppc/int128.d,
2963 * testsuite/gas/ppc/int128.s: New test.
2964 * testsuite/gas/ppc/ppc.exp: Run it.
2966 2020-05-11 Alan Modra <amodra@gmail.com>
2968 * testsuite/gas/ppc/vsx_32byte.d,
2969 * testsuite/gas/ppc/vsx_32byte.s: New test.
2970 * testsuite/gas/ppc/ppc.exp: Run it.
2972 2020-05-11 Alan Modra <amodra@gmail.com>
2974 * testsuite/gas/ppc/vec_mul.s,
2975 * testsuite/gas/ppc/vec_mul.d: New test.
2976 * testsuite/gas/ppc/ppc.exp: Run it.
2978 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2980 * testsuite/gas/ppc/byte_rev.d,
2981 * testsuite/gas/ppc/byte_rev.s: New test.
2982 * testsuite/gas/ppc/ppc.exp: Run it.
2984 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2986 * testsuite/gas/ppc/power10.d: Add paste. tests.
2987 * testsuite/gas/ppc/power10.s: Likewise.
2989 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2991 * testsuite/gas/ppc/power10.s: New test.
2992 * testsuite/gas/ppc/power10.d: Likewise.
2993 * testsuite/gas/ppc/ppc.exp: Run it.
2995 2020-05-11 Alan Modra <amodra@gmail.com>
2997 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
2999 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
3000 place of -mfuture/-Mfuture.
3001 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
3002 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
3004 2020-05-06 Nick Clifton <nickc@redhat.com>
3006 * po/sv.po: Updated Swedish translation.
3008 2020-05-06 Nick Clifton <nickc@redhat.com>
3011 * doc/as.texi (Preprocessing): Replace cross reference to not
3012 existant document with a URL to the equivalent page in the GCC
3015 2020-05-05 Nick Clifton <nickc@redhat.com>
3017 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
3018 construction of a DWARF-5 directory name table.
3019 * testsuite/gas/elf/pr25917.d: Update expected output.
3021 2020-05-05 Gunther Nikl <gnikl@justmail.de>
3023 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
3024 (md_parse_option): Remove initialization of elf_flags.
3026 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
3029 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
3030 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
3031 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
3033 2020-05-04 Nick Clifton <nickc@redhat.com>
3036 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
3037 table's existence before looking at its entries.
3038 Also do not emit a default directory entry if there are no
3041 * testsuite/gas/elf/pr25917.s: New test source file.
3042 * testsuite/gas/elf/pr25917.d: New test driver.
3043 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
3045 2020-04-30 Alex Coplan <alex.coplan@arm.com>
3047 * config/tc-aarch64.c (fix_insn): Implement for
3048 AARCH64_OPND_UNDEFINED.
3049 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
3050 * testsuite/gas/aarch64/udf.s: New.
3051 * testsuite/gas/aarch64/udf.d: New.
3052 * testsuite/gas/aarch64/udf-invalid.s: New.
3053 * testsuite/gas/aarch64/udf-invalid.l: New.
3054 * testsuite/gas/aarch64/udf-invalid.d: New.
3056 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
3058 * config/tc-rx.c (elf_flags): Reset default value.
3059 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
3061 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
3063 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
3064 if it's not defined.
3065 (microarch_earliest): New static variable.
3066 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
3067 simcall opcode has mandatory parameter.
3068 (xg_init_global_config): Initialize microarch_earliest.
3070 2020-04-29 Nick Clifton <nickc@redhat.com>
3073 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
3074 IMM0_8S and add support for IMM0_8U.
3075 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
3076 unsigned 8-bit immediate.
3077 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
3078 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
3080 2020-04-27 Tamar Christina <tamar.christina@arm.com>
3082 * NEWS: Add news entry for big-obj.
3083 * config/tc-i386.c (i386_target_format): Support new format.
3084 * doc/c-i386.texi: Add i386 support.
3085 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
3086 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
3088 2020-04-27 Nick Clifton <nickc@redhat.com>
3091 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
3092 (assign_file_to_slot): New function. Fills in an entry in the
3094 (allocate_filenum): Use new function.
3095 (allocate_filename_to_slot): Use new function. If the specified
3096 slot entry is already in use, but was chosen automatically then
3097 reassign the automatic entry.
3099 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
3101 * config/tc-i386.c (lfence_before_ret_shl): New member.
3102 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
3104 (insert_after_load): Issue warning for REP CMPS/SCAS.
3105 (insert_before_before): Handle iret, Handle
3106 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
3107 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
3108 -mlfence-before-ret=[none/not/or/shl/yes].
3109 Enable -mlfence-before-ret=shl when
3110 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
3111 (md_show_usage): Ditto.
3112 * doc/c-i386.texi: Ditto.
3113 * testsuite/gas/i386/i386.exp: Add new testcases.
3114 * testsuite/gas/i386/lfence-load-b.d: New.
3115 * testsuite/gas/i386/lfence-load-b.e: New.
3116 * testsuite/gas/i386/lfence-load.d: Modified.
3117 * testsuite/gas/i386/lfence-load.e: New.
3118 * testsuite/gas/i386/lfence-load.s: Modified.
3119 * testsuite/gas/i386/lfence-ret-a.d: Modified.
3120 * testsuite/gas/i386/lfence-ret-b.d: Modified.
3121 * testsuite/gas/i386/lfence-ret-c.d: New.
3122 * testsuite/gas/i386/lfence-ret-d.d: New.
3123 * testsuite/gas/i386/lfence-ret.s: Modified.
3124 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
3125 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
3126 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
3127 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
3128 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
3129 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
3130 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
3131 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
3132 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
3133 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
3135 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
3138 * config/tc-xtensa.c (md_apply_fix): Replace
3139 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
3140 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
3141 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
3142 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
3143 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
3145 2020-04-22 Alan Modra <amodra@gmail.com>
3147 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
3148 symbol for ".symver .. remove".
3149 * doc/as.texi (.symver): Update.
3150 * testsuite/gas/symver/symver11.s: Make foo weak.
3151 * testsuite/gas/symver/symver11.d: Expect an error.
3152 * testsuite/gas/symver/symver7.d: Allow other random symbols.
3154 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3156 * testsuite/gas/symver/symver11.s: Add ".balign 8".
3158 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
3161 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
3162 * testsuite/gas/m68k/operands.d: Update.
3163 * testsuite/gas/m68k/op68000.d: Update for new error messages.
3165 2020-04-21 Tamar Christina <tamar.christina@arm.com>
3168 * testsuite/gas/arm/pr24753.d: New test.
3169 * testsuite/gas/arm/pr24753.s: New test.
3171 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3175 * NEWS: Mention .symver extension.
3176 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
3178 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
3179 add a version name. Add local, hidden and remove visibility
3181 (elf_frob_symbol): Handle the list of version names. Update the
3182 original symbol to local, hidden or remove it from the symbol
3184 (elf_frob_file_before_adjust): Handle the list of version names.
3185 * config/obj-elf.h (elf_visibility): New.
3186 (elf_versioned_name_list): Likewise.
3187 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
3188 and visibility. Change versioned_name pointer to struct
3189 elf_versioned_name_list.
3190 * doc/as.texi: Update .symver directive.
3191 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
3192 error checking tests.
3193 * testsuite/gas/symver/symver6.d: New file.
3194 * testsuite/gas/symver/symver7.d: Likewise.
3195 * testsuite/gas/symver/symver7.s: Likewise.
3196 * testsuite/gas/symver/symver8.d: Likewise.
3197 * testsuite/gas/symver/symver8.s: Likewise.
3198 * testsuite/gas/symver/symver9.s: Likewise.
3199 * testsuite/gas/symver/symver9a.d: Likewise.
3200 * testsuite/gas/symver/symver9b.d: Likewise.
3201 * testsuite/gas/symver/symver10.s: Likewise.
3202 * testsuite/gas/symver/symver10a.d: Likewise.
3203 * testsuite/gas/symver/symver10b.d: Likewise.
3204 * testsuite/gas/symver/symver11.d: Likewise.
3205 * testsuite/gas/symver/symver11.s: Likewise.
3206 * testsuite/gas/symver/symver12.d: Likewise.
3207 * testsuite/gas/symver/symver12.s: Likewise.
3208 * testsuite/gas/symver/symver13.d: Likewise.
3209 * testsuite/gas/symver/symver13.s: Likewise.
3210 * testsuite/gas/symver/symver14.d: Likewise.
3211 * testsuite/gas/symver/symver14.l: Likewise.
3212 * testsuite/gas/symver/symver15.d: Likewise.
3213 * testsuite/gas/symver/symver15.l: Likewise.
3214 * testsuite/gas/symver/symver6.l: Removed.
3215 * testsuite/gas/symver/symver6.s: Updated.
3217 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3219 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
3221 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
3222 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
3223 * testsuite/gas/aarch64/system.d: Update.
3225 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3227 * testsuite/gas/aarch64/bti.d: Update -march option.
3228 * testsuite/gas/aarch64/illegal-bti.d: Remove.
3229 * testsuite/gas/aarch64/illegal-bti.l: Remove.
3230 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
3231 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
3233 2020-04-17 Alan Modra <amodra@gmail.com>
3235 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
3237 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
3238 Nick Clifton <nickc@redhat.com>
3241 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
3243 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
3244 for the type-2 test.
3245 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
3246 targets running this test.
3248 2020-02-16 David Faust <david.faust@oracle.com>
3250 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
3251 * testsuite/gas/bpf/jump32.s: New file.
3252 * testsuite/gas/bpf/jump32.d: Likewise.
3254 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
3256 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
3259 2020-04-08 Gunther Nikl <gnikl@justmail.de>
3261 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
3262 (md_pcrel_from): Remove prototytpe.
3263 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
3265 (md_pcrel_from_section): Remove duplicate prototype.
3266 * tc.h (md_pcrel_from_section): Add prototype.
3267 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
3268 * config/tc-arc.h (md_pcrel_from_section): Likewise.
3269 * config/tc-arm.h (md_pcrel_from_section): Likewise.
3270 * config/tc-avr.h (md_pcrel_from_section): Likewise.
3271 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
3272 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
3273 * config/tc-csky.h (md_pcrel_from_section): Likewise.
3274 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
3275 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
3276 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
3277 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
3278 * config/tc-frv.h (md_pcrel_from_section): Likewise.
3279 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
3280 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
3281 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
3282 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
3283 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
3284 * config/tc-mep.h (md_pcrel_from_section): Likewise.
3285 * config/tc-metag.h (md_pcrel_from_section): Likewise.
3286 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
3287 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
3288 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
3289 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
3290 * config/tc-mt.h (md_pcrel_from_section): Likewise.
3291 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
3292 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
3293 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
3294 * config/tc-rx.h (md_pcrel_from_section): Likewise.
3295 * config/tc-s390.h (md_pcrel_from_section): Likewise.
3296 * config/tc-sh.h (md_pcrel_from_section): Likewise.
3297 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
3298 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
3299 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
3300 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
3301 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
3302 md_apply_fix3): Delete prototypes.
3304 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3306 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
3309 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3311 * doc/c-z80.texi: Fix @xref warnings.
3313 2020-04-07 Lili Cui <lili.cui@intel.com>
3315 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
3316 (cpu_noarch): Likewise.
3317 * doc/c-i386.texi: Document TSXLDTRK.
3318 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
3319 * testsuite/gas/i386/tsxldtrk.d: Likewise.
3320 * testsuite/gas/i386/tsxldtrk.s: Likewise.
3321 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
3323 2020-04-02 Lili Cui <lili.cui@intel.com>
3325 * config/tc-i386.c (cpu_arch): Add .serialize.
3326 (cpu_noarch): Likewise.
3327 * doc/c-i386.texi: Document serialize.
3328 * testsuite/gas/i386/i386.exp: Run serialize tests
3329 * testsuite/gas/i386/serialize.d: Likewise.
3330 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
3331 * testsuite/gas/i386/serialize.s: Likewise.
3333 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3335 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
3336 * testsuite/gas/elf/section12b.d: Likewise.
3337 * testsuite/gas/elf/section16a.d: Likewise.
3338 * testsuite/gas/elf/section16b.d: Likewise.
3340 2020-04-02 Gunther Nikl <gnikl@justmail.de>
3342 * config/tc-m68k.c (m68k_ip): Fix range check for index register
3343 with a suppressed address register.
3345 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
3348 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
3349 * testsuite/gas/i386/localpic.s: Add a test for relocation
3350 against local absolute symbol.
3351 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
3352 * testsuite/gas/i386/localpic.d: Updated.
3353 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
3354 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
3356 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3359 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
3360 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
3361 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
3362 testsuite/gas/i386/x86-64-jump.d.
3363 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
3364 Incorporate changes to
3365 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
3366 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
3367 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
3368 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
3369 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
3371 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
3375 * dwarf2dbg.c: Do not include "bignum.h".
3377 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
3379 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
3380 * testsuite/gas/riscv/alias-csr.s: Likewise.
3381 * testsuite/gas/riscv/no-aliases-csr.d: Move this
3382 to priv-reg-pseudo-noalias.
3383 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
3384 * testsuite/gas/riscv/bad-csr.l: Likewise.
3385 * testsuite/gas/riscv/bad-csr.s: Likewise.
3386 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
3387 * testsuite/gas/riscv/satp.s: Likewise.
3388 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
3389 csr instruction, including alias-csr testcase.
3390 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
3391 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
3392 pseudo instruction with objdump -Mno-aliases.
3393 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
3394 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
3395 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
3396 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
3397 * testsuite/gas/riscv/priv-reg.s: Likewise.
3398 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3399 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
3400 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
3402 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
3404 * config/obj-coff.c (obj_coff_section): Set the bss flag on
3405 sections with the "b" attribute.
3407 2020-03-22 Alan Modra <amodra@gmail.com>
3409 * testsuite/gas/s12z/truncated.d: Update expected output.
3411 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3414 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
3415 * doc/c-z80.texi: Update documentation.
3417 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3422 Fix disassembling ED+A4/AC/B4/BC opcodes.
3423 Fix assembling lines containing colonless label and instruction
3424 with first operand inside parentheses.
3425 Fix registration of unsupported by target CPU registers.
3426 * config/tc-z80.c: See above.
3427 * config/tc-z80.h: See above.
3428 * testsuite/gas/z80/colonless.d: Update test.
3429 * testsuite/gas/z80/colonless.s: Likewise.
3430 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
3431 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
3432 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3433 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
3434 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
3435 * testsuite/gas/z80/unsup_regs.s: Likewise.
3436 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
3437 * testsuite/gas/z80/z80.exp: Likewise.
3438 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
3439 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
3440 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
3442 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
3445 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
3446 (parse_operands): Handle new operand codes.
3447 (do_neon_dyadic_long): Make shape check accept the scalar variants.
3448 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
3449 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
3450 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
3451 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
3452 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
3453 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
3454 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
3456 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3458 * NEWS: Mention x86 assembler options for CVE-2020-0551.
3460 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3462 * testsuite/gas/i386/i386.exp: Run new tests.
3463 * testsuite/gas/i386/lfence-byte.d: New file.
3464 * testsuite/gas/i386/lfence-byte.e: Likewise.
3465 * testsuite/gas/i386/lfence-byte.s: Likewise.
3466 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
3467 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
3468 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
3469 * testsuite/gas/i386/lfence-indbr.e: Likewise.
3470 * testsuite/gas/i386/lfence-indbr.s: Likewise.
3471 * testsuite/gas/i386/lfence-load.d: Likewise.
3472 * testsuite/gas/i386/lfence-load.s: Likewise.
3473 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
3474 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
3475 * testsuite/gas/i386/lfence-ret.s: Likewise.
3476 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
3477 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
3478 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
3479 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
3480 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
3481 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
3482 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
3483 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
3484 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
3485 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
3486 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
3487 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
3489 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3491 * config/tc-i386.c (lfence_after_load): New.
3492 (lfence_before_indirect_branch_kind): New.
3493 (lfence_before_indirect_branch): New.
3494 (lfence_before_ret_kind): New.
3495 (lfence_before_ret): New.
3498 (insert_lfence_after): New.
3499 (insert_lfence_before): New.
3500 (md_assemble): Call insert_lfence_before and insert_lfence_after.
3502 (OPTION_MLFENCE_AFTER_LOAD): New.
3503 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
3504 (OPTION_MLFENCE_BEFORE_RET): New.
3505 (md_longopts): Add -mlfence-after-load=,
3506 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3507 (md_parse_option): Handle -mlfence-after-load=,
3508 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3509 (md_show_usage): Display -mlfence-after-load=,
3510 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3511 (i386_cons_align): New.
3512 * config/tc-i386.h (i386_cons_align): New.
3513 (md_cons_align): New.
3514 * doc/c-i386.texi: Document -mlfence-after-load=,
3515 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3517 2020-03-11 Nick Clifton <nickc@redhat.com>
3521 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
3522 (DWARF2_FILE_SIZE_NAME): Default to -1.
3523 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
3524 whichever is higher.
3525 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
3526 (NUM_MD5_BYTES): Define.
3527 (struct file entry): Add md5 field.
3528 (get_filenum): Delete and replace with...
3529 (get_basename): New function.
3530 (get_directory_table_entry): New function.
3531 (allocate_filenum): New function.
3532 (allocate_filename_to_slot): New function.
3533 (dwarf2_where): Use new functions.
3534 (dwarf2_directive_filename): Add support for extended .file
3536 (dwarf2_directive_loc): Allow the use of file number zero with
3538 (out_file_list): Rename to...
3539 (out_dir_and_file_list): Add DWARF 5 support.
3540 (out_debug_line): Emit extra values into the section header for
3542 (out_debug_str): Allow for file 0 to be used with DWARF 5.
3543 * doc/as.texi (.file): Update the description of this pseudo-op.
3544 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
3545 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
3546 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
3547 * NEWS: Mention the new feature.
3549 2020-03-10 Alan Modra <amodra@gmail.com>
3551 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
3552 to avoid signed overflow.
3553 * config/tc-mcore.c (md_assemble): Likewise.
3554 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
3555 * config/tc-nds32.c (SET_ADDEND): Likewise.
3556 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
3558 2020-03-09 Jan Beulich <jbeulich@suse.com>
3560 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
3561 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
3562 testsuite/gas/i386/avx-intel.d: Adjust expectations.
3564 2020-03-07 Alan Modra <amodra@gmail.com>
3566 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
3569 2020-03-06 Nick Clifton <nickc@redhat.com>
3572 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
3573 0 if the dwarf_level is 5 or more. Complain if a filename follows
3575 * testsuite/gas/elf/dwarf-5-file0.s: New test.
3576 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
3577 * testsuite/gas/elf/elf.exp: Run the new test.
3580 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
3581 * doc/as.texi: Fix another typo.
3583 2020-03-06 Nick Clifton <nickc@redhat.com>
3586 * as.c (dwarf_level): Define.
3587 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
3588 (parse_args): Add support for the new options.
3589 as.h (dwarf_level): Prototype.
3590 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
3592 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
3593 (DWARF2_LINE_VERSION): Remove definition.
3594 * doc/as.texi: Document the new options.
3596 2020-03-06 Nick Clifton <nickc@redhat.com>
3599 * as.c (main): Allow matching input and outputs when they are
3602 2020-03-06 Jan Beulich <jbeulich@suse.com>
3604 * config/tc-i386.c (match_mem_size): Generalize broadcast special
3606 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
3607 one of byte/word/dword/qword is set alongside a SIMD register in
3608 a template's operand.
3610 2020-03-06 Jan Beulich <jbeulich@suse.com>
3612 * config/tc-i386.c (match_template): Extend code in logic
3613 rejecting certain suffixes in certain modes to also cover mask
3614 register use and VecSIB. Drop special casing of broadcast. Skip
3615 immediates in the check.
3617 2020-03-06 Jan Beulich <jbeulich@suse.com>
3619 * config/tc-i386.c (match_template): Fold duplicate code in
3620 logic rejecting certain suffixes in certain modes. Drop
3623 2020-03-06 Jan Beulich <jbeulich@suse.com>
3625 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
3626 alongside !norex64 ones.
3627 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
3628 with both 32- and 64-bit GPR operands.
3629 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
3630 32- and 64-bit GPR operands.
3631 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
3632 testsuite/gas/i386/x86-64-avx512bw.d,
3633 testsuite/gas/i386/x86-64-avx512f-intel.d,
3634 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
3636 2020-03-06 Jan Beulich <jbeulich@suse.com>
3638 * config/tc-i386.c (md_assemble): Drop use of rex64.
3639 (process_suffix): For REX.W for 64-bit CRC32.
3641 2020-03-06 Jan Beulich <jbeulich@suse.com>
3643 * config/tc-i386.c (i386_addressing_mode): For 32-bit
3644 addressing for MPX insns without base/index.
3645 * testsuite/gas/i386/mpx-16bit.s,
3646 * testsuite/gas/i386/mpx-16bit.d: New.
3647 * testsuite/gas/i386/i386.exp: Run new test.
3649 2020-03-06 Jan Beulich <jbeulich@suse.com>
3651 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
3652 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
3653 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
3654 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
3655 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
3656 as well as a BSWAP one.
3657 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
3658 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
3659 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
3660 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
3661 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
3662 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
3663 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
3664 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
3665 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
3666 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
3667 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
3668 testsuite/gas/i386/vmx.d: Adjust expectations.
3670 2020-03-06 Jan Beulich <jbeulich@suse.com>
3672 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
3673 from having their operands swapped.
3674 * testsuite/gas/i386/waitpkg.s,
3675 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
3676 3-operand cases as well as testing of 16-bit code generation.
3677 * testsuite/gas/i386/waitpkg.d,
3678 testsuite/gas/i386/waitpkg-intel.d,
3679 testsuite/gas/i386/x86-64-waitpkg.d,
3680 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
3682 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
3684 * config/tc-riscv.c (percent_op_utype): Support the modifier
3686 * doc/c-riscv.texi: Add documentation.
3687 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
3688 modifier %got_pcrel_hi.
3689 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
3690 * testsuite/gas/riscv/relax-reloc.d: Likewise.
3691 * testsuite/gas/riscv/relax-reloc.s: Likewise.
3693 * doc/c-riscv.texi (relocation modifiers): Add documentation.
3694 (RISC-V-Formats): Update the section name from "Instruction Formats"
3695 to "RISC-V Instruction Formats".
3697 2020-03-04 Alexandre Oliva <oliva@adacore.com>
3699 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
3700 detected in a section which does not have at least 4 byte
3702 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
3703 * testsuite/gas/arm/ldr-t.s: Likewise.
3704 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
3705 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
3706 disassembly, ignoring any NOPs that may have been inserted because
3707 of section alignment.
3708 * testsuite/gas/arm/ldr-t.d: Likewise.
3710 2020-03-04 Jan Beulich <jbeulich@suse.com>
3712 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
3713 * doc/c-i386.texi: Mention sev_es.
3714 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
3715 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
3717 * testsuite/gas/i386/arch-13-znver1.d,
3718 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
3720 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3722 * config/tc-i386.c (match_template): Replace ignoresize and
3723 defaultsize with mnemonicsize.
3724 (process_suffix): Likewise.
3726 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3729 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
3730 instruction LD IY,(HL).
3731 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
3732 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
3733 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
3734 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
3736 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3739 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
3740 x86-64-default-suffix-avx.
3741 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
3742 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
3743 * testsuite/gas/i386/noreg64.d: Updated.
3744 * testsuite/gas/i386/noreg64.l: Likewise.
3745 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
3746 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
3747 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
3749 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3752 * config/tc-z80.c (contains_register): Prevent an illegal memory
3753 access when checking an expression for a register name.
3755 2020-03-03 Alan Modra <amodra@gmail.com>
3757 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
3760 2020-03-02 Alan Modra <amodra@gmail.com>
3762 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
3763 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
3765 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
3766 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
3767 (s3_s_score_lcomm): Likewise.
3768 * config/tc-score7.c: Similarly.
3769 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
3771 2020-02-28 YunQiang Su <syq@debian.org>
3774 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
3775 to handle multi-labels.
3776 (has_label_name): New.
3778 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
3780 * config/tc-arm.c (enum pred_instruction_type): Remove
3781 NEUTRAL_IT_NO_VPT_INSN predication type.
3782 (cxn_handle_predication): Modify to require condition suffixes.
3783 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
3784 * testsuite/gas/arm/cde-scalar.s: Update test.
3785 * testsuite/gas/arm/cde-warnings.l: Update test.
3786 * testsuite/gas/arm/cde-warnings.s: Update test.
3788 2020-02-26 Alan Modra <amodra@gmail.com>
3790 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
3791 N_() on empty string.
3793 2020-02-26 Alan Modra <amodra@gmail.com>
3795 * read.c (read_a_source_file): Call strncpy with length one
3796 less than size of original_case_string.
3798 2020-02-26 Alan Modra <amodra@gmail.com>
3800 * config/obj-elf.c: Indent labels correctly.
3801 * config/obj-macho.c: Likewise.
3802 * config/tc-aarch64.c: Likewise.
3803 * config/tc-alpha.c: Likewise.
3804 * config/tc-arm.c: Likewise.
3805 * config/tc-cr16.c: Likewise.
3806 * config/tc-crx.c: Likewise.
3807 * config/tc-frv.c: Likewise.
3808 * config/tc-i386-intel.c: Likewise.
3809 * config/tc-i386.c: Likewise.
3810 * config/tc-ia64.c: Likewise.
3811 * config/tc-mn10200.c: Likewise.
3812 * config/tc-mn10300.c: Likewise.
3813 * config/tc-nds32.c: Likewise.
3814 * config/tc-riscv.c: Likewise.
3815 * config/tc-s12z.c: Likewise.
3816 * config/tc-xtensa.c: Likewise.
3817 * config/tc-z80.c: Likewise.
3819 * symbols.c: Likewise.
3820 * write.c: Likewise.
3822 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
3824 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
3825 we are assembling instruction with CSR. Call riscv_csr_read_only_check
3826 after parsing all arguments.
3827 (enum csr_insn_type): New enum is used to classify the CSR instruction.
3828 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
3829 are used to check if we write a read-only CSR by the CSR instruction.
3830 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
3831 all CSR for the read-only CSR checking.
3832 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
3833 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
3834 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
3835 all CSR instructions for the read-only CSR checking.
3836 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
3837 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
3839 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
3840 (riscv_opts): Initialize it.
3841 (reg_lookup_internal): Check the `riscv_opts.csr_check`
3842 before doing the CSR checking.
3843 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
3844 (md_longopts): Add mcsr-check and mno-csr-check.
3845 (md_parse_option): Handle new enum option values.
3846 (s_riscv_option): Handle new long options.
3847 * doc/c-riscv.texi: Add description for the new .option and assembler
3849 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
3851 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
3853 * config/tc-riscv.c (csr_extra_hash): New.
3854 (enum riscv_csr_class): New enum. Used to decide
3855 whether or not this CSR is legal in the current ISA string.
3856 (struct riscv_csr_extra): New structure to hold all extra information
3858 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
3859 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
3860 Call hash_reg_name to insert CSR address into reg_names_hash.
3861 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
3862 Decide whether the CSR is valid according to the csr_extra_hash.
3863 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
3864 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
3865 not a boolean. This is same as riscv_init_csr_hash, so keep the
3867 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
3868 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
3869 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
3870 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
3871 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
3872 f-ext CSR are not allowed.
3873 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
3874 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
3875 source file is `priv-reg.s`, and the ISA is rv64if, so the
3876 rv32-only CSR are not allowed.
3877 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3879 2020-02-21 Alan Modra <amodra@gmail.com>
3881 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
3882 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
3884 2020-02-21 Alan Modra <amodra@gmail.com>
3887 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
3888 on section size adjustment, instead perform another write if
3889 exec header size is larger than section size.
3891 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3893 * doc/c-riscv.texi: Add the doc entries for -march-attr/
3894 -mno-arch-attr command line options.
3896 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3898 * testsuite/gas/riscv/c-add-addi.d: New testcase.
3899 * testsuite/gas/riscv/c-add-addi.s: Likewise.
3901 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3904 * config/tc-z80.c (md_parse_option): Do not use an underscore
3905 prefix for local labels in SDCC compatability mode.
3906 (z80_start_line_hook): Remove SDCC dollar label support.
3907 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
3908 * testsuite/gas/z80/sdcc.s: Likewise.
3910 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3913 * config/tc-z80.c: Add -march option.
3914 * doc/as.texi: Update Z80 documentation.
3915 * doc/c-z80.texi: Likewise.
3916 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
3917 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
3918 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
3919 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3920 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
3921 * testsuite/gas/z80/gbz80_all.d: Likewise.
3922 * testsuite/gas/z80/r800_extra.d: Likewise.
3923 * testsuite/gas/z80/r800_ii8.d: Likewise.
3924 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
3925 * testsuite/gas/z80/sdcc.d: Likewise.
3926 * testsuite/gas/z80/z180.d: Likewise.
3927 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
3928 * testsuite/gas/z80/z80_doc.d: Likewise.
3929 * testsuite/gas/z80/z80_ii8.d: Likewise.
3930 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
3931 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
3932 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
3933 * testsuite/gas/z80/z80_sli.d: Likewise.
3934 * testsuite/gas/z80/z80n_all.d: Likewise.
3935 * testsuite/gas/z80/z80n_reloc.d: Likewise.
3937 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
3939 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
3940 with GNU_PROPERTY_X86_FEATURE_2_MMX.
3941 * testsuite/gas/i386/i386.exp: Run property-3 and
3943 * testsuite/gas/i386/property-3.d: New file.
3944 * testsuite/gas/i386/property-3.s: Likewise.
3945 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
3947 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
3949 * config/tc-i386.c (cpu_arch): Add .popcnt.
3950 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
3951 Add a tab before @samp{.sse4a}.
3953 2020-02-17 Jan Beulich <jbeulich@suse.com>
3955 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
3956 for AddrPrefixOpReg templates. Combine the two pieces of
3957 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
3960 2020-02-17 Jan Beulich <jbeulich@suse.com>
3963 * config/tc-i386.c (md_assemble): Also suppress operand
3964 swapping for MONITOR{,X} and MWAIT{,X}.
3965 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
3966 Add Intel syntax monitor/mwait tests.
3967 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
3968 Adjust expectations.
3969 *testsuite/gas/i386/sse3-intel.d,
3970 testsuite/gas/i386/x86-64-sse3-intel.d: New.
3971 * testsuite/gas/i386/i386.exp: Run new tests.
3973 2020-02-17 Jan Beulich <jbeulich@suse.com>
3976 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
3977 [XYZ]MMWord memory operand ambiguity recognition logic (largely
3979 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
3981 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
3982 * testsuite/gas/i386/avx512dq-inval.l,
3983 testsuite/gas/i386/inval-avx.l,
3984 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
3985 * testsuite/gas/i386/avx512vl-ambig.s,
3986 testsuite/gas/i386/avx512vl-ambig.l: New.
3987 * testsuite/gas/i386/i386.exp: Run new test.
3989 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
3991 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
3993 * doc/c-i386.texi: Document sse4a and nosse4a.
3995 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
3997 * doc/c-i386.texi: Remove the old movsx and movzx documentation
4000 2020-02-14 Jan Beulich <jbeulich@suse.com>
4003 * config/tc-i386.c (md_assemble): Move movsx/movzx special
4005 (process_suffix): ... here. Consider just the first operand
4007 (check_long_reg): Drop opcode 0x63 special case again.
4008 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
4009 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
4010 Move ambiguous operand size tests ...
4011 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4012 testsuite/gas/i386/noreg64.s: ... here.
4013 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
4014 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
4015 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
4016 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
4017 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
4018 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
4019 testsuite/gas/i386/x86-64-movsxd.d,
4020 testsuite/gas/i386/x86-64-movsxd-intel.d,
4021 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
4022 Adjust expectations.
4023 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
4024 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
4025 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
4026 * testsuite/gas/i386/i386.exp: Run new tests.
4028 2020-02-14 Jan Beulich <jbeulich@suse.com>
4030 * config/tc-i386.c (process_operands): Also skip segment
4031 override prefix emission if it matches an already present one.
4032 * testsuite/gas/i386/prefix32.s: Add double segment override
4034 * testsuite/gas/i386/prefix32.l: Adjust expectations.
4036 2020-02-14 Jan Beulich <jbeulich@suse.com>
4038 * config/tc-i386.c (process_operands): Drop ineffectual segment
4039 overrides when optimizing.
4040 * testsuite/gas/i386/lea-optimize.d: New.
4041 * testsuite/gas/i386/i386.exp: Run new test.
4043 2020-02-14 Jan Beulich <jbeulich@suse.com>
4045 * config/tc-i386.c (process_operands): Also check insn prefix
4046 for ineffectual segment override warning. Don't cover possible
4047 VEX/EVEX encoded insns there.
4048 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
4049 testsuite/gas/i386/lea.e: New.
4050 * testsuite/gas/i386/i386.exp: Run new test.
4052 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
4055 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
4058 2020-02-13 Fangrui Song <maskray@google.com>
4059 H.J. Lu <hongjiu.lu@intel.com>
4062 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
4063 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
4064 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
4065 * testsuite/gas/i386/relax-5.d: New file.
4066 * testsuite/gas/i386/relax-5.s: Likewise.
4067 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
4068 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
4070 2020-02-13 Jan Beulich <jbeulich@suse.com>
4072 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
4075 2020-02-12 Jan Beulich <jbeulich@suse.com>
4077 * config/tc-i386.c (avx512): New (at file scope), moved from
4078 (check_VecOperands): ... here.
4079 (process_suffix): Add [XYZ]MMword operand size handling.
4080 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
4081 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
4083 * testsuite/gas/i386/avx512dq-inval.l,
4084 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
4086 2020-02-12 Jan Beulich <jbeulich@suse.com>
4089 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
4091 * config/tc-i386-intel.c (i386_intel_operand): Also handle
4092 CALL/JMP in O_tbyte_ptr case.
4093 * doc/c-i386.texi: Mention far call and full pointer load ISA
4095 * testsuite/gas/i386/x86-64-branch-3.s,
4096 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
4097 * testsuite/gas/i386/x86-64-branch-3.d,
4098 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
4099 * testsuite/gas/i386/x86-64-branch-5.l,
4100 testsuite/gas/i386/x86-64-branch-5.s: New.
4101 * testsuite/gas/i386/i386.exp: Run new test.
4103 2020-02-12 Jan Beulich <jbeulich@suse.com>
4106 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
4107 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
4108 64-bit-only warning.
4109 (check_word_reg): Consistently error on mismatching register
4111 * testsuite/gas/i386/general.s: Replace dword GPR with word one
4112 for movw. Replace suffix / GPR for orb.
4113 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
4114 byte GPRs as well as ones for inb/outb with a word accumulator.
4115 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
4116 testsuite/gas/i386/inval.l: Adjust expectations.
4118 2020-02-12 Jan Beulich <jbeulich@suse.com>
4120 * config/tc-i386.c (operand_type_register_match): Also fall
4121 through initial two if()-s when the template allows for a GPR
4122 operand. Adjust comment.
4124 2020-02-11 Jan Beulich <jbeulich@suse.com>
4126 (struct _i386_insn): New field "short_form".
4127 (optimize_encoding): Drop setting of shortform field.
4128 (process_suffix): Set i.short_form. Replace shortform use.
4129 (process_operands): Replace shortform use.
4131 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
4133 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
4134 loop initial declaration.
4136 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
4138 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
4139 instructions that can have 5 arguments.
4140 (enum operand_parse_code): Add new operands.
4141 (parse_operands): Account for new operands.
4143 (enum neon_shape_el): Introduce P suffixes for coprocessor.
4144 (neon_select_shape): Account for P suffix.
4145 (LOW1): Move macro to global position.
4146 (HI4): Move macro to global position.
4147 (vcx_assign_vec_d): New.
4148 (vcx_assign_vec_m): New.
4149 (vcx_assign_vec_n): New.
4150 (enum vcx_reg_type): New.
4151 (vcx_get_reg_type): New.
4152 (vcx_size_pos): New.
4154 (vcx_handle_shape): New.
4155 (vcx_ensure_register_in_range): New.
4156 (vcx_handle_register_arguments): New.
4157 (vcx_handle_insn_block): New.
4158 (vcx_handle_common_checks): New.
4162 * testsuite/gas/arm/cde-missing-fp.d: New test.
4163 * testsuite/gas/arm/cde-missing-fp.l: New test.
4164 * testsuite/gas/arm/cde-missing-mve.d: New test.
4165 * testsuite/gas/arm/cde-missing-mve.l: New test.
4166 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
4167 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
4168 * testsuite/gas/arm/cde-mve.s: New test.
4169 * testsuite/gas/arm/cde-warnings.l:
4170 * testsuite/gas/arm/cde-warnings.s:
4171 * testsuite/gas/arm/cde.d:
4172 * testsuite/gas/arm/cde.s:
4174 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
4175 Matthew Malcomson <matthew.malcomson@arm.com>
4177 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
4178 CDE coprocessor that can be enabled.
4179 (enum pred_instruction_type): New pred type.
4180 (BAD_NO_VPT): New error message.
4181 (BAD_CDE): New error message.
4182 (BAD_CDE_COPROC): New error message.
4183 (enum operand_parse_code): Add new immediate operands.
4184 (parse_operands): Account for new immediate operands.
4185 (check_cde_operand): New.
4186 (cde_coproc_enabled): New.
4187 (cde_coproc_pos): New.
4188 (cde_handle_coproc): New.
4189 (cxn_handle_predication): New.
4190 (do_custom_instruction_1): New.
4191 (do_custom_instruction_2): New.
4192 (do_custom_instruction_3): New.
4205 (handle_pred_state): Define new IT block behaviour.
4206 (insns): Add newn CX*{,d}{,a} instructions.
4207 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
4208 Define new cdecp extension strings.
4209 * doc/c-arm.texi: Document new cdecp extension arguments.
4210 * testsuite/gas/arm/cde-scalar.d: New test.
4211 * testsuite/gas/arm/cde-scalar.s: New test.
4212 * testsuite/gas/arm/cde-warnings.d: New test.
4213 * testsuite/gas/arm/cde-warnings.l: New test.
4214 * testsuite/gas/arm/cde-warnings.s: New test.
4215 * testsuite/gas/arm/cde.d: New test.
4216 * testsuite/gas/arm/cde.s: New test.
4218 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
4221 * config/tc-i386.c (intel64): Renamed to ...
4223 (match_template): Accept Intel64 only instruction by default.
4224 (i386_displacement): Updated.
4225 (md_parse_option): Updated.
4226 * c-i386.texi: Update -mamd64/-mintel64 documentation.
4227 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
4228 -mamd64 to x86-64-sysenter-amd.
4229 * testsuite/gas/i386/x86-64-sysenter.d: New file.
4231 2020-02-10 Alan Modra <amodra@gmail.com>
4233 * config/obj-elf.c (obj_elf_change_section): Error for section
4234 type, attr or entsize changes in assembly.
4235 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
4236 * testsuite/gas/elf/section5.l: Update.
4238 2020-02-10 Alan Modra <amodra@gmail.com>
4240 * output-file.c (output_file_close): Do a normal close when
4241 flag_always_generate_output.
4242 * write.c (write_object_file): Don't stop output when
4243 flag_always_generate_output.
4245 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
4248 * config/tc-z80.c: Add -gbz80 command line option to generate code
4249 for the GameBoy Z80. Add support for generating DWARF.
4250 * config/tc-z80.h: Add support for DWARF debug information
4252 * doc/c-z80.texi: Document new command line option.
4253 * testsuite/gas/z80/gbz80_all.d: New file.
4254 * testsuite/gas/z80/gbz80_all.s: New file.
4255 * testsuite/gas/z80/z80.exp: Run the new tests.
4256 * testsuite/gas/z80/z80n_all.d: New file.
4257 * testsuite/gas/z80/z80n_all.s: New file.
4258 * testsuite/gas/z80/z80n_reloc.d: New file.
4260 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4263 * config/obj-elf.c (get_section): Also check
4264 linked_to_symbol_name.
4265 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
4266 (obj_elf_parse_section_letters): Handle the 'o' flag.
4267 (build_group_lists): Renamed to ...
4268 (build_additional_section_info): This. Set elf_linked_to_section
4269 from map_head.linked_to_symbol_name.
4270 (elf_adjust_symtab): Updated.
4271 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
4272 * doc/as.texi: Document the 'o' flag.
4273 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
4274 * testsuite/gas/elf/section18.d: New file.
4275 * testsuite/gas/elf/section18.s: Likewise.
4276 * testsuite/gas/elf/section19.d: Likewise.
4277 * testsuite/gas/elf/section19.s: Likewise.
4278 * testsuite/gas/elf/section20.d: Likewise.
4279 * testsuite/gas/elf/section20.s: Likewise.
4280 * testsuite/gas/elf/section21.d: Likewise.
4281 * testsuite/gas/elf/section21.l: Likewise.
4282 * testsuite/gas/elf/section21.s: Likewise.
4284 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4286 * NEWS: Mention x86 assembler options to align branches for
4289 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4291 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
4292 only for ELF targets.
4293 * testsuite/gas/i386/unique.d: Don't xfail.
4294 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4296 2020-02-06 Alan Modra <amodra@gmail.com>
4298 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
4299 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4301 2020-02-06 Alan Modra <amodra@gmail.com>
4303 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
4304 xfail, and rename test.
4305 * testsuite/gas/elf/section12b.d: Likewise.
4306 * testsuite/gas/elf/section16a.d: Likewise.
4307 * testsuite/gas/elf/section16b.d: Likewise.
4309 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4312 * config/obj-elf.c (section_match): Removed.
4313 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
4315 (obj_elf_change_section): Replace info and group_name arguments
4316 with match_p. Also update the section ID and flags from match_p.
4317 (obj_elf_section): Handle "unique,N". Update call to
4318 obj_elf_change_section.
4319 * config/obj-elf.h (elf_section_match): New.
4320 (obj_elf_change_section): Updated.
4321 * config/tc-arm.c (start_unwind_section): Update call to
4322 obj_elf_change_section.
4323 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
4324 * config/tc-microblaze.c (microblaze_s_data): Likewise.
4325 (microblaze_s_sdata): Likewise.
4326 (microblaze_s_rdata): Likewise.
4327 (microblaze_s_bss): Likewise.
4328 * config/tc-mips.c (s_change_section): Likewise.
4329 * config/tc-msp430.c (msp430_profiler): Likewise.
4330 * config/tc-rx.c (parse_rx_section): Likewise.
4331 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
4332 * doc/as.texi: Document "unique,N" in .section directive.
4333 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
4334 * testsuite/gas/elf/section15.d: New file.
4335 * testsuite/gas/elf/section15.s: Likewise.
4336 * testsuite/gas/elf/section16.s: Likewise.
4337 * testsuite/gas/elf/section16a.d: Likewise.
4338 * testsuite/gas/elf/section16b.d: Likewise.
4339 * testsuite/gas/elf/section17.d: Likewise.
4340 * testsuite/gas/elf/section17.l: Likewise.
4341 * testsuite/gas/elf/section17.s: Likewise.
4342 * testsuite/gas/i386/unique.d: Likewise.
4343 * testsuite/gas/i386/unique.s: Likewise.
4344 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4345 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
4347 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4349 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
4351 2020-02-01 Anthony Green <green@moxielogic.com>
4353 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
4355 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
4357 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
4360 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
4363 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
4364 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
4366 * testsuite/gas/arm/mve_dsp.d: New test.
4368 2020-01-31 Nick Clifton <nickc@redhat.com>
4370 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
4371 rather than BFD_RELOC_NONE.
4373 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4375 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
4376 to support VLDMIA instruction for MVE.
4377 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
4378 instruction for MVE.
4379 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
4380 instruction for MVE.
4381 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
4382 instruction for MVE.
4383 * testsuite/gas/arm/mve-ldst.d: New test.
4384 * testsuite/gas/arm/mve-ldst.s: Likewise.
4386 2020-01-31 Nick Clifton <nickc@redhat.com>
4388 * po/fr.po: Updated French translation.
4389 * po/ru.po: Updated Russian translation.
4391 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
4393 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
4395 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
4396 * testsuite/gas/aarch64/sve-movprfx_28.d,
4397 * testsuite/gas/aarch64/sve-movprfx_28.l,
4398 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
4400 2020-01-30 Jan Beulich <jbeulich@suse.com>
4402 * config/tc-i386.c (output_disp): Tighten base_opcode check.
4403 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
4404 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
4405 Adjust expectations.
4407 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
4409 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
4410 * testsuite/gas/bpf/alu-be.d: Likewise.
4411 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
4412 * testsuite/gas/bpf/alu32-be.d: Likewise.
4414 2020-01-30 Jan Beulich <jbeulich@suse.com>
4416 * testsuite/gas/i386/x86-64-branch-2.s,
4417 testsuite/gas/i386/x86-64-branch-4.s,
4418 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
4419 * testsuite/gas/i386/ilp32/x86-64-branch.d,
4420 testsuite/gas/i386/x86-64-branch-2.d,
4421 testsuite/gas/i386/x86-64-branch-4.l,
4422 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
4424 2020-01-30 Jan Beulich <jbeulich@suse.com>
4426 * config/tc-i386.c (process_suffix): .
4427 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
4428 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
4430 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
4432 testsuite/gas/i386/x86_64.s: Add RETF cases.
4433 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
4434 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
4435 testsuite/gas/i386/x86-64-opcode.d,
4436 testsuite/gas/i386/x86-64-suffix-intel.d,
4437 testsuite/gas/i386/x86-64-suffix.d,
4438 testsuite/gas/i386/x86_64-intel.d
4439 testsuite/gas/i386/x86_64.d: Adjust expectations.
4440 * testsuite/gas/i386/x86-64-suffix.e,
4441 testsuite/gas/i386/x86_64.e: New.
4443 2020-01-30 Jan Beulich <jbeulich@suse.com>
4445 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
4448 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
4451 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
4453 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
4454 differences. Document movslq and movsxd.
4455 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
4456 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
4457 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
4458 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
4459 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
4460 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
4461 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
4462 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
4463 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
4464 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
4465 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
4467 2020-01-27 Alan Modra <amodra@gmail.com>
4469 * testsuite/gas/all/gas.exp: Replace case statements with switch
4471 * testsuite/gas/elf/elf.exp: Likewise.
4472 * testsuite/gas/macros/macros.exp: Likewise.
4473 * testsuite/lib/gas-defs.exp: Likewise.
4475 2020-01-27 Tamar Christina <tamar.christina@arm.com>
4478 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
4479 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
4481 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
4483 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
4484 s exts must be known, so rename *ok* to *fail*.
4485 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
4486 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
4487 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
4489 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
4490 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
4492 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
4495 * config/tc-i386.c (check_long_reg): Always disallow double word
4496 suffix in mnemonic with word general register.
4497 * testsuite/gas/i386/general.s: Replace word general register
4498 with double word general register for movl.
4499 * testsuite/gas/i386/inval.s: Add tests for movl with word general
4501 * testsuite/gas/i386/general.l: Updated.
4502 * testsuite/gas/i386/inval.l: Likewise.
4504 2020-01-22 Alan Modra <amodra@gmail.com>
4506 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
4507 __tls_get_addr_desc and __tls_get_addr_opt.
4509 2020-01-21 Jan Beulich <jbeulich@suse.com>
4511 * testsuite/gas/i386/inval-crc32.s,
4512 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
4513 * testsuite/gas/i386/inval-crc32.l,
4514 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
4516 2020-01-21 Jan Beulich <jbeulich@suse.com>
4518 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
4519 generic code path. Deal with No_lSuf being set in a template.
4520 * testsuite/gas/i386/inval-crc32.l,
4521 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
4522 instead of error(s) when operand size is ambiguous.
4523 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4524 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
4525 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
4526 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
4527 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
4528 Adjust expectations.
4530 2020-01-21 Jan Beulich <jbeulich@suse.com>
4532 * config/tc-i386.c (process_suffix): Drop SYSRET special case
4533 and an intel_syntax check. Re-write lack-of-suffix processing
4535 * doc/c-i386.texi: Document operand size defaults for suffix-
4536 less AT&T syntax insns.
4537 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
4538 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
4539 testsuite/gas/i386/x86-64-avx-scalar.s,
4540 testsuite/gas/i386/x86-64-avx.s,
4541 testsuite/gas/i386/x86-64-bundle.s,
4542 testsuite/gas/i386/x86-64-intel64.s,
4543 testsuite/gas/i386/x86-64-lock-1.s,
4544 testsuite/gas/i386/x86-64-opcode.s,
4545 testsuite/gas/i386/x86-64-sse2avx.s,
4546 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
4547 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
4548 testsuite/gas/i386/x86-64-nops.s,
4549 testsuite/gas/i386/x86-64-ptwrite.s,
4550 testsuite/gas/i386/x86-64-simd.s,
4551 testsuite/gas/i386/x86-64-sse-noavx.s,
4552 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
4554 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4555 testsuite/gas/i386/noreg64.s: Add further tests.
4556 * testsuite/gas/i386/ilp32/x86-64-nops.d,
4557 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
4558 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
4559 testsuite/gas/i386/sse-noavx.d,
4560 testsuite/gas/i386/x86-64-intel64.d,
4561 testsuite/gas/i386/x86-64-nops.d,
4562 testsuite/gas/i386/x86-64-opcode.d,
4563 testsuite/gas/i386/x86-64-ptwrite-intel.d,
4564 testsuite/gas/i386/x86-64-ptwrite.d,
4565 testsuite/gas/i386/x86-64-simd-intel.d,
4566 testsuite/gas/i386/x86-64-simd-suffix.d,
4567 testsuite/gas/i386/x86-64-simd.d,
4568 testsuite/gas/i386/x86-64-sse-noavx.d
4569 testsuite/gas/i386/x86-64-suffix.d,
4570 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
4571 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
4572 testsuite/gas/i386/noreg64.l: New.
4573 * testsuite/gas/i386/i386.exp: Run new tests.
4575 2020-01-21 Jan Beulich <jbeulich@suse.com>
4577 * testsuite/gas/i386/avx512_bf16_vl.s,
4578 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
4579 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
4580 broadcast forms of VCVTNEPS2BF16.
4581 * testsuite/gas/i386/avx512_bf16_vl.d,
4582 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
4584 2020-01-20 Nick Clifton <nickc@redhat.com>
4586 * po/uk.po: Updated Ukranian translation.
4588 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
4591 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
4592 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
4594 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
4595 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
4596 R_X86_64_GOTPC32_TLSDESC relocation.
4598 2020-01-18 Nick Clifton <nickc@redhat.com>
4600 * configure: Regenerate.
4601 * po/gas.pot: Regenerate.
4603 2020-01-18 Nick Clifton <nickc@redhat.com>
4605 Binutils 2.34 branch created.
4607 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
4609 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
4610 with vex_encoding_vex.
4611 (parse_insn): Likewise.
4612 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
4613 and {vex3} documentation.
4614 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
4616 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
4618 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
4621 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
4622 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
4623 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
4624 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
4625 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
4626 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
4628 2020-01-16 Jan Beulich <jbeulich@suse.com>
4630 * config/tc-i386.c (match_template): Drop found_cpu_match local
4633 2020-01-16 Jan Beulich <jbeulich@suse.com>
4635 * testsuite/gas/i386/avx512dq-inval.l,
4636 testsuite/gas/i386/avx512dq-inval.s: New.
4637 * testsuite/gas/i386/i386.exp: Run new test.
4639 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
4641 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
4642 relocations when the target is 430X, except when extracting part of an
4644 (msp430_srcoperand): Adjust comment.
4645 Initialize the expp member of the msp430_operand_s struct as
4647 (msp430_dstoperand): Likewise.
4648 * testsuite/gas/msp430/msp430.exp: Run new test.
4649 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
4650 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
4652 2020-01-15 Alan Modra <amodra@gmail.com>
4654 * configure.tgt: Add sparc-*-freebsd case.
4656 2020-01-14 Lili Cui <lili.cui@intel.com>
4658 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
4659 * testsuite/gas/i386/align-branch-1b.d: Likewise.
4660 * testsuite/gas/i386/align-branch-1c.d: Likewise.
4661 * testsuite/gas/i386/align-branch-1d.d: Likewise.
4662 * testsuite/gas/i386/align-branch-1e.d: Likewise.
4663 * testsuite/gas/i386/align-branch-1f.d: Likewise.
4664 * testsuite/gas/i386/align-branch-1g.d: Likewise.
4665 * testsuite/gas/i386/align-branch-1h.d: Likewise.
4666 * testsuite/gas/i386/align-branch-1i.d: Likewise.
4667 * testsuite/gas/i386/align-branch-5.d: Likewise.
4668 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
4669 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
4670 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
4671 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
4672 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
4673 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
4674 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
4675 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
4676 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
4677 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
4678 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
4679 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
4681 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
4684 * config/tc-z80.c: Add support for half precision, single
4685 precision and double precision floating point values.
4686 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
4687 * doc/as.texi: Add new z80 command line options.
4688 * doc/c-z80.texi: Document new z80 command line options.
4689 * testsuite/gas/z80/ez80_pref_dis.s: New test.
4690 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
4691 * testsuite/gas/z80/z80.exp: Run the new test.
4692 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
4693 * testsuite/gas/z80/fp_zeda32.d: Likewise.
4694 * testsuite/gas/z80/strings.d: Update expected output.
4696 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
4698 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
4701 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
4703 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
4705 * config/tc-arc.h: Add header if/defs.
4706 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
4708 2020-01-13 Alan Modra <amodra@gmail.com>
4710 * testsuite/gas/wasm32/allinsn.d: Update expected output.
4712 2020-01-13 Alan Modra <amodra@gmail.com>
4714 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
4717 2020-01-10 Alan Modra <amodra@gmail.com>
4719 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
4720 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
4722 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4725 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
4727 (emit_ld_r_r): Likewise.
4728 (emit_ld_rr_m): Likewise.
4729 (emit_ld_rr_nn): Likewise.
4731 2020-01-09 Jan Beulich <jbeulich@suse.com>
4733 * config/tc-i386.c (optimize_encoding): Add
4734 is_any_vex_encoding() invocations. Drop respective
4735 i.tm.extension_opcode == None checks.
4737 2020-01-09 Jan Beulich <jbeulich@suse.com>
4739 * config/tc-i386.c (md_assemble): Check RegRex is clear during
4740 REX transformations. Correct comment indentation.
4742 2020-01-09 Jan Beulich <jbeulich@suse.com>
4744 * config/tc-i386.c (optimize_encoding): Generalize register
4745 transformation for TEST optimization.
4747 2020-01-09 Jan Beulich <jbeulich@suse.com>
4749 * testsuite/gas/i386/x86-64-sysenter-amd.s,
4750 testsuite/gas/i386/x86-64-sysenter-amd.d,
4751 testsuite/gas/i386/x86-64-sysenter-amd.l,
4752 testsuite/gas/i386/x86-64-sysenter-intel.d,
4753 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
4754 * testsuite/gas/i386/i386.exp: Run new tests.
4756 2020-01-08 Nick Clifton <nickc@redhat.com>
4759 * doc/as.texi (Align): Document the fact that all arguments can be
4762 (P2align): Likewise.
4764 2020-01-08 Nick Clifton <nickc@redhat.com>
4767 * config/obj-elf.c (obj_elf_section): Fail if the section name is
4768 already defined as a different symbol type.
4769 * testsuite/gas/elf/pr14891.s: New test source file.
4770 * testsuite/gas/elf/pr14891.d: New test driver.
4771 * testsuite/gas/elf/pr14891.s: New test expected error output.
4772 * testsuite/gas/elf/elf.exp: Run the new test.
4774 2020-01-08 Alan Modra <amodra@gmail.com>
4776 * config/tc-z8k.c (md_begin): Make idx unsigned.
4777 (get_specific): Likewise for this_index.
4779 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
4781 * onfig/tc-arc.c (parse_reloc_symbol): New function.
4782 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
4783 (md_operand): Set X_md to absent.
4784 (arc_parse_name): Check for X_md.
4786 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4789 * as.h (TC_STRING_ESCAPES): Provide a default definition.
4790 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
4792 * read.c (next_char_of_string): Likewise.
4793 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
4794 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
4796 2020-01-03 Nick Clifton <nickc@redhat.com>
4798 * po/sv.po: Updated Swedish translation.
4800 2020-01-03 Jan Beulich <jbeulich@suse.com>
4802 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
4803 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4805 2020-01-03 Jan Beulich <jbeulich@suse.com>
4807 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
4808 by-element usdot. Add 64-bit form tests for by-element sudot.
4809 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
4811 2020-01-03 Jan Beulich <jbeulich@suse.com>
4813 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
4814 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4816 2020-01-03 Jan Beulich <jbeulich@suse.com>
4818 * testsuite/gas/aarch64/f64mm.d,
4819 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
4821 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
4823 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
4824 support for assembler code generated by SDCC. Add new relocation
4825 types. Add z80-elf target support.
4826 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
4827 labels. Local labels starts from ".L".
4828 * NEWS: Mention the new support.
4829 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
4830 * testsuite/gas/all/fwdexp.s: Likewise.
4831 * testsuite/gas/all/cond.l: Likewise.
4832 * testsuite/gas/all/cond.s: Likewise.
4833 * testsuite/gas/all/fwdexp.d: Likewise.
4834 * testsuite/gas/all/fwdexp.s: Likewise.
4835 * testsuite/gas/elf/section2.e-mips: Likewise.
4836 * testsuite/gas/elf/section2.l: Likewise.
4837 * testsuite/gas/elf/section2.s: Likewise.
4838 * testsuite/gas/macros/app1.d: Likewise.
4839 * testsuite/gas/macros/app1.s: Likewise.
4840 * testsuite/gas/macros/app2.d: Likewise.
4841 * testsuite/gas/macros/app2.s: Likewise.
4842 * testsuite/gas/macros/app3.d: Likewise.
4843 * testsuite/gas/macros/app3.s: Likewise.
4844 * testsuite/gas/macros/app4.d: Likewise.
4845 * testsuite/gas/macros/app4.s: Likewise.
4846 * testsuite/gas/macros/app4b.s: Likewise.
4847 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
4848 * testsuite/gas/z80/z80.exp: Add new tests
4849 * testsuite/gas/z80/dollar.d: New file.
4850 * testsuite/gas/z80/dollar.s: New file.
4851 * testsuite/gas/z80/ez80_adl_all.d: New file.
4852 * testsuite/gas/z80/ez80_adl_all.s: New file.
4853 * testsuite/gas/z80/ez80_adl_suf.d: New file.
4854 * testsuite/gas/z80/ez80_isuf.s: New file.
4855 * testsuite/gas/z80/ez80_z80_all.d: New file.
4856 * testsuite/gas/z80/ez80_z80_all.s: New file.
4857 * testsuite/gas/z80/ez80_z80_suf.d: New file.
4858 * testsuite/gas/z80/r800_extra.d: New file.
4859 * testsuite/gas/z80/r800_extra.s: New file.
4860 * testsuite/gas/z80/r800_ii8.d: New file.
4861 * testsuite/gas/z80/r800_z80_doc.d: New file.
4862 * testsuite/gas/z80/z180.d: New file.
4863 * testsuite/gas/z80/z180.s: New file.
4864 * testsuite/gas/z80/z180_z80_doc.d: New file.
4865 * testsuite/gas/z80/z80_doc.d: New file.
4866 * testsuite/gas/z80/z80_doc.s: New file.
4867 * testsuite/gas/z80/z80_ii8.d: New file.
4868 * testsuite/gas/z80/z80_ii8.s: New file.
4869 * testsuite/gas/z80/z80_in_f_c.d: New file.
4870 * testsuite/gas/z80/z80_in_f_c.s: New file.
4871 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
4872 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
4873 * testsuite/gas/z80/z80_out_c_0.d: New file.
4874 * testsuite/gas/z80/z80_out_c_0.s: New file.
4875 * testsuite/gas/z80/z80_reloc.d: New file.
4876 * testsuite/gas/z80/z80_reloc.s: New file.
4877 * testsuite/gas/z80/z80_sli.d: New file.
4878 * testsuite/gas/z80/z80_sli.s: New file.
4880 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
4882 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
4885 2020-01-01 Alan Modra <amodra@gmail.com>
4887 Update year range in copyright notice of all files.
4889 For older changes see ChangeLog-2019
4891 Copyright (C) 2020 Free Software Foundation, Inc.
4893 Copying and distribution of this file, with or without modification,
4894 are permitted in any medium without royalty provided the copyright
4895 notice and this notice are preserved.
4901 version-control: never