1 2020-10-14 H.J. Lu <hongjiu.lu@intel.com>
2 Lili Cui <lili.cui@intel.com>
4 * NEWS: Add Intel AVX VNNI.
5 * config/tc-i386.c (cpu_arch): Add .avx_vnni and noavx_vnni.
6 (cpu_flags_match): Support CpuVEX_PREFIX.
7 * doc/c-i386.texi: Document .avx_vnni, noavx_vnni and how to
8 encode Intel VNNI instructions with VEX prefix.
9 * testsuite/gas/i386/avx-vnni.d: New file.
10 * testsuite/gas/i386/avx-vnni.s: Likewise.
11 * testsuite/gas/i386/x86-64-avx-vnni.d: Likewise.
12 * testsuite/gas/i386/x86-64-avx-vnni.s: Likewise.
13 * testsuite/gas/i386/i386.exp: Run AVX VNNI tests.
15 2020-10-14 Lili Cui <lili.cui@intel.com>
17 * NEWS: Add Intel HRESET.
18 * config/tc-i386.c (cpu_arch): Add .hreset.
19 (cpu_noarch): Likewise.
20 * doc/c-i386.texi: Document .hreset, nohreset.
21 * testsuite/gas/i386/i386.exp: Run HRESET tests.
22 * testsuite/gas/i386/hreset.d: New file.
23 * testsuite/gas/i386/x86-64-hreset.d: Likewise.
24 * testsuite/gas/i386/hreset.s: Likewise.
26 2020-10-14 Lili Cui <lili.cui@intel.com>
28 * NEWS: Add Intel UINTR.
29 * config/tc-i386.c (cpu_arch): Add .uintr.
30 (cpu_noarch): Likewise.
31 * doc/c-i386.texi: Document .uintr and nouintr.
32 * testsuite/gas/i386/i386.exp: Run UINTR tests.
33 * testsuite/gas/i386/x86-64-uintr.d: Likewise.
34 * testsuite/gas/i386/x86-64-uintr.s: Likewise.
36 2020-10-14 H.J. Lu <hongjiu.lu@intel.com>
38 * config/tc-i386.c (load_insn_p): Check opcodeprefix == 0 for
40 (match_template): Likewise.
41 (process_suffix): Check opcodeprefix == PREFIX_0XF2 for CRC32.
42 (check_byte_reg): Likewise.
43 (output_insn): Don't add the 0xf3 prefix twice for PadLock
44 instructions. Don't add prefix from non-VEX/EVEX base_opcode.
46 2020-10-13 H.J. Lu <hongjiu.lu@intel.com>
48 * config/tc-i386.c (build_vex_prefix): Replace vexopcode with
50 (build_evex_prefix): Likewise.
51 (is_any_vex_encoding): Don't check vexopcode.
52 (output_insn): Handle opcodeprefix.
54 2020-10-09 H.J. Lu <hongjiu.lu@intel.com>
57 * config/tc-i386.c (xstate): Add xstate_mask.
58 (md_assemble): Check i.types[j], instead of i.tm.operand_types[j],
59 for xstate. Set xstate_mask, instead of xstate_zmm, for RegMask.
60 (output_insn): Update for GNU_PROPERTY_X86_ISA_1_V[234]. Update
61 xstate for mask register and VSIB.
62 * testsuite/gas/i386/i386.exp: Run more GNU_PROPERTY tests.
63 * testsuite/gas/i386/property-1.s: Updated to the current
64 GNU_PROPERTY_X86_ISA_1_USED value.
65 * testsuite/gas/i386/property-2.s: Only keep cmove.
66 * testsuite/gas/i386/property-3.s: Changed to addsubpd.
67 * testsuite/gas/i386/property-1.d: Updated.
68 * testsuite/gas/i386/property-2.d: Likewise.
69 * testsuite/gas/i386/property-3.d: Likewise.
70 * testsuite/gas/i386/property-4.d: Likewise.
71 * testsuite/gas/i386/property-5.d: Likewise.
72 * testsuite/gas/i386/property-6.d: Likewise.
73 * testsuite/gas/i386/x86-64-property-1.d: Likewise.
74 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
75 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
76 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
77 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
78 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
79 * testsuite/gas/i386/x86-64-property-7.d: Likewise.
80 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
81 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
82 * testsuite/gas/i386/property-11.d: New file.
83 * testsuite/gas/i386/property-11.s: Likewise.
84 * testsuite/gas/i386/property-12.d: Likewise.
85 * testsuite/gas/i386/property-12.s: Likewise.
86 * testsuite/gas/i386/property-13.d: Likewise.
87 * testsuite/gas/i386/property-13.s: Likewise.
88 * testsuite/gas/i386/x86-64-property-11.d: Likewise.
89 * testsuite/gas/i386/x86-64-property-12.d: Likewise.
90 * testsuite/gas/i386/x86-64-property-13.d: Likewise.
91 * testsuite/gas/i386/x86-64-property-14.d: Likewise.
92 * testsuite/gas/i386/x86-64-property-14.s: Likewise.
94 2020-10-06 Alex Coplan <alex.coplan@arm.com>
97 * config/tc-aarch64.c (asm_barrier_opt): Delete.
98 (parse_barrier): Fix bogus type punning.
99 * testsuite/gas/aarch64/system.d: Update disassembly.
100 * testsuite/gas/aarch64/system.s: Add isb sy test.
102 2020-10-06 Sergey Belyashav <sergey.belyashov@gmail.com>
105 * config/tc-z80.c (md_begin): Ensure that xpressions are empty
107 (unify_indexed): Likewise.
108 (z80_start_line_hook): Improve hash sign handling when SDCC
109 compatibility mode enabled.
110 (md_parse_exp_not_indexed): Improve indirect addressing
112 (md_pseudo_table): Accept hd64 as an alias of z810.
114 2020-10-06 Alan Modra <amodra@gmail.com>
116 * testsuite/gas/elf/sh-link-zero.s: Don't start directives in
117 first column. Don't use numeric labels.
119 2020-10-05 Kamil Rytarowski <n54@gmx.com>
121 * configure.tgt (aarch64*-*-netbsd*): Add target.
123 2020-10-05 Samanta Navarro <ferivoz@riseup.net>
125 * doc/as.texi: Fix spelling mistakes.
126 * doc/c-wasm32.texi: Likewise.
128 2020-10-05 T.K. Chia <u1049321969@caramail.com>
131 * NEWS: Updated for i386 lcall and ljmp change.
132 * config/tc-i386.c (output_interseg_jump): Allow non-absolute
133 segment operand for immediate lcall and ljmp.
134 * testsuite/gas/i386/jump.d,
135 * testsuite/gas/i386/jump.s,
136 * testsuite/gas/i386/jump16.d,
137 * testsuite/gas/i386/jump16.e,
138 * testsuite/gas/i386/jump16.s: Add tests for non-absolute
139 segment operand for immediate ljmp.
141 2020-10-05 H.J. Lu <hongjiu.lu@intel.com>
144 * testsuite/gas/i386/noreg64-data16.d: Expect sysretl instead of
146 * testsuite/gas/i386/noreg64.d: Likewise.
147 * testsuite/gas/i386/x86-64-intel64.d: Likewise.
148 * testsuite/gas/i386/x86-64-opcode.d: Likewise.
150 2020-10-05 H.J. Lu <hongjiu.lu@intel.com>
153 * testsuite/gas/i386/x86-64-suffix.s: Add "mov %rsp,%rbp" before
155 * testsuite/gas/i386/x86-64-suffix-intel.d: Updated.
156 * testsuite/gas/i386/x86-64-suffix.d: Likewise.
158 2020-10-05 Nick Clifton <nickc@redhat.com>
161 * config/obj-elf.c (obj_elf_section): Accept a numeric value for
162 the "o" section flag. Interpret it as a section index. Allow an
164 * doc/as.texi: Document the new behaviour.
165 * NEWS: Mention the new feature. Tidy entries.
166 * testsuite/gas/elf/sh-link-zero.s: New test.
167 * testsuite/gas/elf/sh-link-zero.d: New test driver.
168 * testsuite/gas/elf/elf.exp: Run the new test.
169 * testsuite/gas/elf/section21.l: Updated expected assembler
172 2020-10-03 H.J. Lu <hongjiu.lu@intel.com>
175 * config/tc-i386.c (process_suffix): Also check the register
176 operand for the address size prefix if the memory operand has
178 * testsuite/gas/i386/enqcmd-16bit.d: New file.
179 * testsuite/gas/i386/enqcmd-16bit.s: Likewise.
180 * testsuite/gas/i386/movdir-16bit.d: Likewise.
181 * testsuite/gas/i386/movdir-16bit.s: Likewise.
182 * testsuite/gas/i386/enqcmd.s: Add tests with symbol and DISP.
183 * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
184 * testsuite/gas/i386/x86-64-movdir.s: Likewise.
185 * testsuite/gas/i386/movdir.s: Add tests with symbol and DISP.
186 Remove the .code16 test.
187 * testsuite/gas/i386/i386.exp: Run movdir-16bit and enqcmd-16bit.
188 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated.
189 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
190 * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise.
191 * testsuite/gas/i386/x86-64-movdir.d: Likewise.
192 * testsuite/gas/i386/enqcmd-intel.d: Likewise.
193 * testsuite/gas/i386/enqcmd.d: Likewise.
194 * testsuite/gas/i386/movdir-intel.d: Likewise.
195 * testsuite/gas/i386/movdir.d: Likewise.
196 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
197 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
198 * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise.
199 * testsuite/gas/i386/x86-64-movdir.d: Likewise.
201 2020-10-02 Nick Clifton <nickc@redhat.com>
203 * testsuite/gas/arm/mve-vcvtne-it.d: Allow for padding inserted by
206 2020-10-01 Nick Clifton <nickc@redhat.com>
208 * config/obj-elf (elf_pseudo_table): Add attach_to_group.
209 (obj_elf_attach_to_group): New function.
210 * doc/as.texi: Document the new directive.
211 * NEWS: Mention the new feature.
212 * testsuite/gas/elf/attach-1.s: New test.
213 * testsuite/gas/elf/attach-1.d: New test driver.
214 * testsuite/gas/elf/attach-2.s: New test.
215 * testsuite/gas/elf/attach-2.d: New test driver.
216 * testsuite/gas/elf/attach-err.s: New test.
217 * testsuite/gas/elf/attach-err.d: New test driver.
218 * testsuite/gas/elf/attach-err.err: New test error output.
219 * testsuite/gas/elf/elf.exp: Run the new tests.
221 2020-09-16 H.J. Lu <hongjiu.lu@intel.com>
224 * config/tc-i386.c (process_suffix): Check the register operand
225 for the address size prefix if the memory operand is symbol(%rip).
226 * testsuite/gas/i386/x86-64-enqcmd.s: Add tests with RIP-relative
228 * testsuite/gas/i386/x86-64-movdir.s: Likewise.
229 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Updated.
230 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
231 * testsuite/gas/i386/x86-64-movdir-intel.d: Likewise.
232 * testsuite/gas/i386/x86-64-movdir.d: Likewise.
234 2020-09-30 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
236 * config/tc-aarch64.c: Add Cortex-A78 and Cortex-A78AE cores.
237 * doc/c-aarch64.texi: Update docs.
240 2020-09-30 Alex Coplan <alex.coplan@arm.com>
242 * NEWS: Mention recent Arm processor support.
244 2020-09-30 Alex Coplan <alex.coplan@arm.com>
246 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n2.
247 * doc/c-aarch64.texi: Document support for Neoverse N2.
249 2020-09-30 Alan Modra <amodra@gmail.com>
251 * config/obj-elf.c (obj_elf_change_section): Rename variable to
252 avoid shadowing warning.
253 * symbols.c (symbol_entry_find): Init all symbol_flags fields.
255 2020-09-29 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
257 * NEWS: TRBE, ETE, ETMv4 and Cortex-X1 news updates.
259 2020-09-28 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
261 * config/tc-arm.c: (arm_cpus): Add Cortex-X1.
262 * doc/c-arm.texi: Document -mcpu=cortex-x1.
263 * testsuite/gas/arm/cpu-cortex-x1.d: New test.
265 2020-09-28 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
267 * testsuite/gas/aarch64/etm-ro-invalid.d: New test.
268 * testsuite/gas/aarch64/etm-ro-invalid.l: New test.
269 * testsuite/gas/aarch64/etm-ro-invalid.s: New test.
270 * testsuite/gas/aarch64/etm-ro.s: New test.
271 * testsuite/gas/aarch64/etm-wo-invalid.d: New test.
272 * testsuite/gas/aarch64/etm-wo-invalid.l: New test.
273 * testsuite/gas/aarch64/etm-wo-invalid.s: New test.
274 * testsuite/gas/aarch64/etm-wo.s: New test.
275 * testsuite/gas/aarch64/etm.s: New test.
276 * testsuite/gas/aarch64/sysreg.d: system register s2_1_c0_c3_0
277 disassembled now to trcstatr.
279 2020-09-28 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
281 * config/tc-aarch64.c: (aarch64_cpus): Add Cortex-X1.
282 * doc/c-aarch64.texi: Document -mcpu=cortex-x1.
284 2020-09-28 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
286 * testsuite/gas/aarch64/ete.d: New test.
287 * testsuite/gas/aarch64/ete.s: New test.
289 2020-09-28 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
291 * testsuite/gas/aarch64/trbe-invalid.d: New test.
292 * testsuite/gas/aarch64/trbe-invalid.l: New test.
293 * testsuite/gas/aarch64/trbe-invalid.s: New test.
294 * testsuite/gas/aarch64/trbe.d: New test.
295 * testsuite/gas/aarch64/trbe.s: New test.
297 2020-09-28 Alex Coplan <alex.coplan@arm.com>
299 * config/tc-arm.c (arm_cpus): Add FP16 to Neoverse V1.
301 2020-09-28 Alex Coplan <alex.coplan@arm.com>
303 * config/tc-aarch64.c (aarch64_cpus): Group Neoverse cores together,
304 add missing F16 bit to Neoverse V1.
306 2020-09-26 Alan Modra <amodra@gmail.com>
308 * config/tc-csky.c (parse_type_ctrlreg): Don't mask mach_flag
309 for csky_get_control_regno.
310 (csky_get_reg_val): Likewise when calling csky_get_general_regno.
312 2020-09-24 Jim Wilson <jimw@sifive.com>
315 * config/tc-riscv.c (append_insn): If in absolute section, emit
316 error before add_relaxed_insn call.
317 * testsuite/gas/riscv/absolute-sec.d: New.
318 * testsuite/gas/riscv/absolute-sec.l: New.
319 * testsuite/gas/riscv/absolute-sec.s: New.
321 2020-09-23 Mark Wielaard <mark@klomp.org>
323 * testsuite/gas/elf/dwarf-5-cu.d: Adjust expected output.
325 2020-09-24 Alex Coplan <alex.coplan@arm.com>
327 * config/tc-arm.c (arm_cpus): Add Neoverse V1.
328 * doc/c-arm.texi: Document Neoverse V1 support.
330 2020-09-24 Alex Coplan <alex.coplan@arm.com>
332 * config/tc-aarch64.c (aarch64_cpu_option_table): Add Neoverse V1.
333 * doc/c-aarch64.texi: Document Neoverse V1 support.
335 2020-09-24 Alex Coplan <alex.coplan@arm.com>
337 * config/tc-arm.c (arm_cpus): Add Neoverse N2.
338 * doc/c-arm.texi: Document -mcpu=neoverse-n2.
340 2020-09-24 Lili Cui <lili.cui@intel.com>
343 * config/tc-i386.c (cpu_arch): Add .tdx.
344 (cpu_noarch): Likewise.
345 * doc/c-i386.texi: Document tdx.
346 * testsuite/gas/i386/i386.exp: Run tdx tests.
347 * testsuite/gas/i386/tdx.d: Likewise.
348 * testsuite/gas/i386/tdx.s: Likewise.
349 * testsuite/gas/i386/x86-64-tdx.d: Likewise.
350 * testsuite/gas/i386/x86-64-tdx.s: Likewise.
352 2020-09-17 Cooper Qu <cooper.qu@linux.alibaba.com>
354 * config/tc-csky.c (parse_type_ctrlreg): Use function
355 csky_get_control_regno to operand.
356 (csky_get_reg_val): Likewise.
357 (is_reg_sp_with_bracket): Use function csky_get_reg_val
360 (is_oimm_within_range): Fix, report error when operand
362 (parse_type_cpreg): Refine.
363 (parse_type_cpcreg): Refine.
364 (get_operand_value): Add handle of OPRND_TYPE_IMM5b_LS.
365 (md_assemble): Fix no error reporting somtimes when
366 operands number are not fit.
367 (csky_addc64): Refine.
368 (csky_subc64): Refine.
370 (v1_work_fpu_fo): Refine.
371 (v1_work_fpu_read): Refine.
372 (v1_work_fpu_writed): Refine.
373 (v1_work_fpu_readd): Refine.
374 (v2_work_addc): New function, strengthen the operands legality
376 * testsuite/gas/csky/all.d : Use register number format when
377 disassemble register name by default.
378 * testsuite/gas/csky/cskyv2_all.d : Likewise.
379 * testsuite/gas/csky/trust.d: Likewise.
380 * testsuite/gas/csky/cskyv2_ck860.d : Fix.
381 * testsuite/gas/csky/trust.s : Fix.
383 2020-09-23 Lili Cui <lili.cui@intel.com>
385 * NEWS: Add Key Locker.
386 * config/tc-i386.c (cpu_arch): Add .kl and .wide_kl.
387 (cpu_noarch): Likewise.
388 * doc/c-i386.texi: Document kl and wide_kl.
389 * testsuite/gas/i386/i386.exp: Run keylocker tests.
390 * testsuite/gas/i386/keylocker-intel.d: New test.
391 * testsuite/gas/i386/keylocker.d: Likewise.
392 * testsuite/gas/i386/keylocker.s: Likewise.
393 * testsuite/gas/i386/x86-64-keylocker-intel.d: Likewise.
394 * testsuite/gas/i386/x86-64-keylocker.d: Likewise.
395 * testsuite/gas/i386/x86-64-keylocker.s: Likewise.
396 * testsuite/gas/i386/x86-64-property-10.d: Likewise.
397 * testsuite/gas/i386/property-10.d: Likewise.
398 * testsuite/gas/i386/property-10.s: Likewise.
400 2020-09-21 Alan Modra <amodra@gmail.com>
403 * config/tc-riscv.c (append_insn): Don't tie off frags at CALL
405 (riscv_call): Tie them off after the jalr.
406 (md_apply_fix): Zero fx_size of RELAX fixup.
408 2020-09-018 David Faust <david.faust@oracle.com>
410 * testsuite/gas/bpf/alu-xbpf.d: New file.
411 * testsuite/gas/bpf/alu-xbpf.s: Likewise.
412 * testsuite/gas/bpf/alu32-xbpf.d: Likewise.
413 * testsuite/gas/bpf/alu32-xbpf.d: Likewise.
414 * testuiste/gas/bpf/bpf.exp: Run new tests.
416 2020-09-18 Tucker <tuckkern+sourceware@gmail.com>
419 * read.c (bss_alloc): Convert size parameter from octets to
422 2020-09-17 Alan Modra <amodra@gmail.com>
424 * testsuite/gas/i386/i386.exp: Return early if not x86.
426 2020-09-16 Alan Modra <amodra@gmail.com>
428 * config/obj-elf.c (obj_elf_visibility, elf_frob_symbol): Adjust
429 elf_symbol_from invocation.
430 * config/tc-aarch64.c (s_variant_pcs): Likewise.
431 * config/tc-m68hc11.c (s_m68hc11_mark_symbol): Likewise.
432 * config/tc-ppc.c (ppc_elf_localentry, ppc_force_relocation),
433 (ppc_fix_adjustable): Likewise.
434 * config/tc-xgate.c (xgate_frob_symbol): Likewise.
436 2020-09-15 H.J. Lu <hongjiu.lu@intel.com>
438 * testsuite/gas/cfi/reloc-pe-i386.d: Updated.
439 * testsuite/gas/i386/x86-64-w64-pcrel.d: Likewise.
441 2020-09-15 Alan Modra <amodra@gmail.com>
444 * config/tc-arm.c (move_or_literal_pool): Correct extraction of
445 bignum. Use unsigned "v"
446 (is_double_a_single): Make "v" and "mantissa" unsigned. Formatting.
447 (double_to_single): Likewise.
449 2020-09-15 Nick Clifton <nickc@redhat.com>
451 * read.c (s_nop): Preserve the input_line_pointer around the call
453 * config/tc-s12z.c (md_assemble): Revert previous delta.
455 2020-09-15 David Faust <david.faust@oracle.com>
457 * config/tc-bpf.h (md_single_noop_insn): Use 'ja 0' for no-op.
459 2020-09-14 Nick Clifton <nickc@redhat.com>
461 * read.c (s_nop): New function. Handles the .nop directive.
462 (potable): Add entry for "nop".
464 * read.h (s_nop): Add prototype.
465 * config/tc-bpf.h (md_single_noop_insn): Define.
466 * config/tc-mmix.h (md_single_noop_insn): Define.
467 * config/tc-or1k.h (md_single_noop_insn): Define.
468 * config/tc-ia64.h (md_single_noop_insn): Define.
469 * config/tc-s12z.c (md_assemble): Preserve the input line pointer,
470 rather than corrupting it.
471 * write.c (relax_segment): Update error message regarding
472 non-absolute values passed to .fill and .nops.
473 * NEWS: Mention the new directive.
474 * doc/as.texi: Document the new directive.
475 * doc/internals.texi: Document the new internal macros used to
476 implement the new directive.
477 * testsuite/gas/all/nop.s: New test.
478 * testsuite/gas/all/nop.d: New test control file.
479 * testsuite/gas/all/gas.exp: Run the new test.
480 * testsuite/gas/elf/dwarf-5-nop-for-line-table.s: New test.
481 * testsuite/gas/elf/dwarf-5-nop-for-line-table.d: New test
483 * testsuite/gas/elf/elf.exp: Run the new test.
484 * testsuite/gas/i386/space1.l: Adjust expected output.
486 2020-09-07 Mark Wielaard <mark@klomp.org>
488 * as.texi (-g): Explicitly mention when .debug_info and .debug_line
489 are generated for the DWARF format.
490 (Loc): Add that it is an error to both use a .loc directive and
491 generate a .debug_line yourself.
492 * dwarf2dbg.c (dwarf2_any_loc_directive_seen): New static variable.
493 (dwarf2_directive_loc): Set dwarf2_any_loc_directive_seen to TRUE.
494 (dwarf2_finish): Check dwarf2_any_loc_directive_seen before emitting
495 an error. Only create .debug_line if it is empty (or doesn't exist).
496 * testsuite/gas/i386/i386.exp: Add dwarf2-line-{1,2,3,4} when testing
498 * testsuite/gas/i386/dwarf2-line-{1,2,3,4}.{s,d,l}: New test files.
500 2020-09-10 Cooper Qu <cooper.qu@linux.alibaba.com>
502 * config/tc-csky.c (md_begin): Enable extend lrw by default for
503 CK802, CK803 and CK860.
505 2020-09-10 Cooper Qu <cooper.qu@linux.alibaba.com>
507 * config/tc-csky.c (struct csky_cpu_info): Add new members
508 isa_flag, features and ver.
509 (struct csky_cpu_feature): New.
510 (struct csky_cpu_version): New.
511 (CSKY_FEATURE_MAX): Define.
512 (CSKY_CPU_REVERISON_MAX): Define.
513 (FEATURE_DSP_EXT, FEATURE_DSP, FEATURE_MMU, FEATURE_VDSP,
514 FEATURE_FLOAT, FEATURE_TRUST, FEATURE_JAVA, FEATURE_SHIELD):
515 Define, each standard one collection of instructions.
516 (CSKY_FEATURES_DEF_NULL, CSKY_FEATURES_DEF_e,
517 CSKY_FEATURES_DEF_t, CSKY_FEATURES_DEF_f, CSKY_FEATURES_DEF_v,
518 CSKY_FEATURES_DEF_ef, CSKY_FEATURES_DEF_jt,
519 CSKY_FEATURES_DEF_efht, CSKY_FEATURES_DEF_efv,
520 CSKY_FEATURES_DEF_eft, CSKY_FEATURES_DEF_d,
521 CSKY_FEATURES_DEF_df, CSKY_FEATURES_DEF_ft,
522 CSKY_FEATURES_DEF_tv, CSKY_FEATURES_DEF_fv,
523 CSKY_FEATURES_DEF_dft, CSKY_FEATURES_DEF_dfv,
524 CSKY_FEATURES_DEF_ftv, CSKY_FEATURES_DEF_eftv): Define,
525 the features combination used by cpu.
526 (CSKY_CPU_REVERISON_r0p0, CSKY_CPU_REVERISON_r1p0,
527 CSKY_CPU_REVERISON_r2p0, CSKY_CPU_REVERISON_r3p0,
528 CSKY_CPU_REVERISON_RESERVED, CSKY_CPU_REVERISON_R3):
529 Define, version information used by cpu.
530 (csky_cpus): Refine, and add CK804, CK805 and CK800.
532 (parse_arch): Refine.
533 (md_show_usage): Refine.
536 2020-09-09 Alan Modra <amodra@gmail.com>
538 * config/tc-ppc.c (md_assemble): Emit prefix insn by parts when
539 valueT is smaller than 64 bits.
541 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
543 * config/tc-csky.c (CSKYV2_ISA_DSP): CSKY_ISA_DSPE60.
544 (CSKY_ISA_860): Likewise.
546 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
548 * config/tc-csky.c (float_abi): New.
549 (md_longopts): Add mfloat-abi.
550 (struct sky_option_value_table): New.
551 (csky_float_abis): New, the possible values for -mfloat-abi.
552 (parse_float_abi): New funtion.
553 (md_show_usage): Show help information for -mfloat-abi.
554 (set_csky_attribute): Store float-abi value.
556 2020-09-07 Cooper Qu <cooper.qu@linux.alibaba.com>
558 * config/tc-csky.c (float_work_fpuv3_fmovi): New function,
559 helper function to encode fpuv3 fmovi instructions.
560 (float_work_fpuv3_fstore): New function.
561 (struct literal): Add new member 'offset'.
562 (csky_cpus): New cpu CK860f.
563 (enter_literal): Return literal pool pointer instead of offset.
564 (parse_rt): Adjust the change of enter_literal.
565 (parse_rtf): Likewise.
566 (v1_work_lrw): Likewise.
567 (v1_work_jbsr): Likewise.
568 (v2_work_lrw): Likewise.
569 (v2_work_jbsr): Likewise.
570 (v2_work_jsri): Likewise.
571 (vdsp_work_vlrw): Likewise.
572 (is_freglist_legal): Add handler for FPUV3.
573 (parse_type_freg): Likewise.
574 (is_imm_within_range): Set e.X_add_number if it is a signed and
576 (get_operand_value): Add handler for OPRND_TYPE_IMM9b,
577 OPRND_TYPE_HFLOAT_FMOVI, OPRND_TYPE_SFLOAT_FMOVI
578 and OPRND_TYPE_DFLOAT_FMOVI.
579 (float_to_half): Convert float number to harf float.
580 * testsuite/gas/csky/case-fpuv3-ck860f/ : New folder containing
581 the test cases for FPUV3, they are divided by instruction
582 operands format and both have legal cases and illegal cases.
584 2020-09-08 Jozef Lawrynowicz <jozef.l@mittosystems.com>
585 Kuan-Lin Chen <kuanlinchentw@gmail.com>
587 * config/tc-msp430.c (msp430_insert_uleb128_fixes): New.
588 (msp430_md_end): Call msp430_insert_uleb128_fixes.
590 2020-09-08 Alex Coplan <alex.coplan@arm.com>
592 * config/tc-aarch64.c (aarch64_cpus): Add Cortex-R82.
593 * doc/c-aarch64.texi: Document -mcpu=cortex-r82.
595 2020-09-08 Alex Coplan <alex.coplan@arm.com>
597 * config/tc-aarch64.c (parse_sys_reg): Also pass sysreg name to
599 (parse_sys_ins_reg): Likewise.
600 (print_operands): Pass CPU features to aarch64_print_operand().
601 * testsuite/gas/aarch64/v8-r-bad-sysregs.d: New test.
602 * testsuite/gas/aarch64/v8-r-bad-sysregs.l: Error output.
603 * testsuite/gas/aarch64/v8-r-bad-sysregs.s: Input.
604 * testsuite/gas/aarch64/v8-r-sysregs-need-arch.d: New test.
605 * testsuite/gas/aarch64/v8-r-sysregs-need-arch.l: Error output.
606 * testsuite/gas/aarch64/v8-r-sysregs.d: New test.
607 * testsuite/gas/aarch64/v8-r-sysregs.s: Input for previous two tests.
609 2020-09-08 Alex Coplan <alex.coplan@arm.com>
611 * testsuite/gas/aarch64/dfb.d: New test.
612 * testsuite/gas/aarch64/dfb.s: Input.
614 2020-09-08 Alex Coplan <alex.coplan@arm.com>
616 * config/tc-aarch64.c (aarch64_archs): Add armv8-r.
617 * doc/c-aarch64.texi: Document -march=armv8-r.
619 2020-09-07 Mark Wielaard <mark@klomp.org>
621 * dwarf2dbg.c (add_line_strp): New function.
622 (out_dir_and_file_list): Take line_seg and sizeof_offset as
623 arguments, Use DW_FORM_line_strp for dir and file. Call
624 add_line_strp and set symbol offset for DWARF2_LINE_VERSION 5.
625 (out_debug_line): Call out_dir_and_file_list with line_seg and
627 * testsuite/gas/elf/dwarf-5-file0.d: Expect indirect line
630 2020-09-07 Mark Wielaard <mark@klomp.org>
632 * dwarf2dbg.c (DWARF2_RNGLISTS_VERSION): New constant.
633 (out_debug_ranges): Add ranges_sym argument and set it.
634 (out_debug_rnglists): New function.
635 (out_debug_info): Change ranges_seg argument to ranges_sym
636 and use it to set DW_AT_ranges value.
637 (dwarf2_finish): Remove ranges_seg, add ranges_sym. For
638 DWARF2_VERSION 5 call out_debug_rnglists.
640 2020-09-07 Mark Wielaard <mark@klomp.org>
642 * dwarf2dbg.c (dwarf2_directive_filename): Initialize with_md5 to
644 * testsuite/gas/elf/dwarf-5-file0.s: Add a random bignum.
646 2020-09-01 Mark Wielaard <mark@klomp.org>
648 * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_sec_offset for DWARF
651 2020-09-02 Alan Modra <amodra@gmail.com>
653 * expr.c (add_to_result, subtract_from_result): Use unsigned
654 addition and subtraction.
656 2020-09-02 Alan Modra <amodra@gmail.com>
658 * config/tc-z80.c (is_overflow): Avoid too large shift.
660 2020-09-02 Alan Modra <amodra@gmail.com>
662 * config/tc-sparc.c (in_signed_range): Use an unsigned type for
665 2020-09-02 Alan Modra <amodra@gmail.com>
667 * config/tc-nios2.c (md_apply_fix): Avoid too large shift.
669 2020-09-02 Alan Modra <amodra@gmail.com>
671 * config/tc-mips.c (load_register): Avoid too large shift.
673 2020-09-02 Alan Modra <amodra@gmail.com>
675 * config/tc-d30v.c (parallel_ok): Use 1UL for left shift expression.
677 2020-09-02 Alan Modra <amodra@gmail.com>
679 * config/rx-parse.y (rx_intop): Avoid too large shifts.
680 (rx_intop, rx_uintop, rx_disp3op, rx_disp5op, displacement),
681 (rtsd_immediate): Use correctly typed unsigned variables.
683 2020-09-02 Alan Modra <amodra@gmail.com>
685 * config/obj-macho.c (obj_mach_o_zerofill): Correct type of
686 constant shifted left.
688 2020-09-02 Alan Modra <amodra@gmail.com>
690 * config/bfin-lex.l: Use an unsigned type for "value".
692 2020-09-02 Alan Modra <amodra@gmail.com>
694 * config/tc-pdp11.c (md_number_to_chars): Condition nbytes=8 code
697 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
699 * config/tc-csky.c (csky_cpus): Add ck803r3.
700 (CSKY_ISA_803R3): Define.
701 (CSKY_ISA_803R2): Refine, use CSKY_ISA_803R1.
703 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
705 * testsuite/gas/csky/cskyv2_dsp.d : Fix Encode of mulsws.
707 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com>
709 * config/tc-csky.c (struct literal): New member bignum.
710 (dump_literals): Handle big constant.
711 (enter_literal): Likewise.
712 (parse_type_freg): Handle vector register.
714 2020-09-01 H.J. Lu <hongjiu.lu@intel.com>
716 * doc/as.texi: Document the .tls_common directive.
718 2020-09-01 Alan Modra <amodra@gmail.com>
724 * config/tc-arm.c (struct arm_it): Make size, size_req, cond and
725 uncond_value unsigned.
726 (parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t.
727 (parse_big_immediate): Cast generic_bignum elements to unsigned.
728 (encode_thumb32_immediate): Shift left 0xffU.
729 (double_to_single): Make sign unsigned. Tidy.
730 (move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or
732 (vfp_or_neon_is_neon): Adjust inst.uncond_value expression.
733 (md_assemble): Likewise.
734 (handle_pred_state): Make cond unsigned.
735 (thumb32_negate_data_op): Make variables unsigned.
736 (md_apply_fix): Make value and newval unsigned, adjust uses.
738 2020-08-31 Alan Modra <amodra@gmail.com>
741 * config/tc-z8k.c (buffer): Use unsigned char.
742 (apply_fix): Use unsigned char* pointers.
743 (build_bytes): Likewise and mask nibbles when packing.
745 2020-08-31 Alan Modra <amodra@gmail.com>
748 * config/tc-v850.c (parse_register_list): Shift 1u left.
750 2020-08-31 Alan Modra <amodra@gmail.com>
753 * config/tc-tic6x.c (md_apply_fix): Use unsigned variables.
755 2020-08-31 Alan Modra <amodra@gmail.com>
758 * config/tc-sh.c (assemble_ppi): Use unsigned variables.
760 2020-08-31 Alan Modra <amodra@gmail.com>
763 * config/tc-score.c (s3_apply_fix): Use unsigned variables.
764 * config/tc-score7.c (s7_apply_fix): Likewise.
766 2020-08-31 Alan Modra <amodra@gmail.com>
769 * config/tc-nios2.c (nios2_parse_reglist): Shift 1UL left.
771 2020-08-31 Alan Modra <amodra@gmail.com>
774 * config/tc-nios2.c (md_chars_to_number): Cast buf[i] before shifting.
776 2020-08-31 Alan Modra <amodra@gmail.com>
781 * config/tc-mips.c (operand_reg_mask): Shift 1u left.
782 (load_register): Shift 0xffffU left.
784 2020-08-31 Alan Modra <amodra@gmail.com>
787 * config/tc-metag.c (md_chars_to_number): Make retval unsigned.
789 2020-08-31 Alan Modra <amodra@gmail.com>
792 * config/tc-mep.c (md_convert_frag): Use uint32_t for addend and
795 2020-08-31 Alan Modra <amodra@gmail.com>
798 * config/tc-riscv.c (riscv_ip): Cast X_add_number passed to
799 VALID_* macros to unsigned.
801 2020-08-31 Alan Modra <amodra@gmail.com>
803 * config/tc-crx.c: Formatting.
804 (CRX_PRINT): Wrap params in parentheses. Remove parens from uses
806 (reset_vars, get_register, get_copregister, get_optype, get_opbits),
807 (get_opflags, get_number_of_operands, parse_operand, gettrap),
808 (handle_LoadStor, getconstant, check_range, getreg_image),
809 (parse_operands, parse_insn, print_operand, print_constant),
810 (exponent2scale, mask_reg, process_label_constant, set_operand),
811 (assemble_insn, print_insn): Delete unnecessary forward declaration.
812 (print_insn): Make static.
813 (print_constant): Make "constant" unsigned.
814 (assemble_insn): Tidy REVERSE_MATCH index calc.
815 * expr.c (generic_bignum_to_int32): Cast elements to valueT.
817 2020-08-31 Alan Modra <amodra@gmail.com>
820 * config/tc-z80.c (is_overflow): Use 1UL in mask shift expression.
822 2020-08-30 Alan Modra <amodra@gmail.com>
824 * config/tc-tic4x.c (tic4x_gen_to_words): Rewrite mantissa
825 overflow test without UB. Avoid other UB shifts by making them
828 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
830 * config/tc-csky.c (csky_error_state): New member 'arg_int'.
831 (SET_ERROR_NUMBER): Rename to SET_ERROR_STRING.
832 (SET_ERROR_INTEGER): New.
833 (err_formats): Add error format for ERROR_FREG_OVER_RANGE and
834 ERROR_VREG_OVER_RANGE.
835 (csky_show_error): Pass an integer argument for some error
837 (parse_exp): Call SET_ERROR_STRING instead of SET_ERROR_NUMBER.
838 (parse_rt): Likewise.
839 (parse_type_ctrlreg): Likewise.
840 (csky_get_reg_val): Likewise.
841 (is_reglist_legal): Likewise.
842 (is_freglist_legal): Likewise.
843 (is_reglist_dash_comma_legal): Likewise.
844 (is_reg_lshift_illegal): Likewise.
845 (is_psr_bit): Likewise.
846 (parse_type_cpreg): Likewise.
847 (parse_type_cpcreg): Likewise.
848 (parse_type_areg): Likewise.
849 (parse_type_freg): Likewise.
850 (parse_ldst_imm): Likewise and call SET_ERROR_INTEGER.
851 (get_operand_value): Likewise.
852 (parse_operands_op): Likewise and call is_imm_within_range,
853 is_imm_within_range_ext and is_oimm_within_range.
854 (md_assemble): Likewise.
855 (is_imm_within_range): New.
856 (is_imm_within_range_ext): Rename from is_imm_over_range.
857 (is_oimm_within_range): Rename from is_oimm_over_range.
858 (v2_work_add_sub): Call SET_ERROR_INTEGER.
859 (csky_rolc): call is_imm_within_range instead of
862 2020-08-31 Cooper Qu <cooper.qu@linux.alibaba.com>
864 * config/tc-csky.c (md_begin): Add warning when -mdsp and
865 -mcpu=ck803ern are both added.
866 (parse_ldst_imm): Fix error message.
868 2020-08-30 Alan Modra <amodra@gmail.com>
870 * testsuite/gas/cr16/cbitb_test.d: Update expected output.
871 * testsuite/gas/cr16/cbitw_test.d: Likewise.
872 * testsuite/gas/cr16/sbitb_test.d: Likewise.
873 * testsuite/gas/cr16/sbitw_test.d: Likewise.
874 * testsuite/gas/cr16/storb_test.d: Likewise.
875 * testsuite/gas/cr16/storw_test.d: Likewise.
876 * testsuite/gas/cr16/tbitb_test.d: Likewise.
877 * testsuite/gas/cr16/tbitw_test.d: Likewise.
879 2020-08-30 Alan Modra <amodra@gmail.com>
883 * config/tc-cr16.c: Include limits.h, formatting.
884 (CR16_PRINT): Wrap params in parentheses. Remove parens from uses
886 (getconstant): Handle zero nbits.
887 (print_operand): Use unsigned variables. Simplify handling of
889 (check_range): Use int32_t variables. Correct range checks.
891 2020-08-29 Alan Modra <amodra@gmail.com>
894 * config/tc-pj.c (md_assemble): Don't loop past end of
897 2020-08-28 Alan Modra <amodra@gmail.com>
900 * config/tc-ia64.c (parse_operands): Don't access past end of
903 2020-08-26 Mark Wielaard <mark@klomp.org>
905 * as.c (parse_args): Handle bad -gdwarf options.
907 2020-08-28 Cooper Qu <cooper.qu@linux.alibaba.com>
909 * config/tc-csky.c (md_begin): Set attributes.
910 (isa_flag): Change type to unsigned 64 bits.
911 (struct csky_cpu_info): Likewise.
912 (struct csky_macro_info): Likewise.
913 (set_csky_attribute): New.
914 * testsuite/gas/csky/802j.d: Ignore .csky.attributes section.
915 * testsuite/gas/csky/all.d: Likewise.
916 * testsuite/gas/csky/bsr1.d: Likewise.
917 * testsuite/gas/csky/csky_vdsp.d: Likewise.
918 * testsuite/gas/csky/cskyv2_all.d: Likewise.
919 * testsuite/gas/csky/cskyv2_ck803r2.d: Likewise.
920 * testsuite/gas/csky/cskyv2_ck860.d: Likewise.
921 * testsuite/gas/csky/cskyv2_dsp.d: Likewise.
922 * testsuite/gas/csky/cskyv2_elrw.d: Likewise.
923 * testsuite/gas/csky/cskyv2_float.d: Likewise.
924 * testsuite/gas/csky/enhance_dsp.d: Likewise.
925 * testsuite/gas/csky/java.d: Likewise.
926 * testsuite/gas/csky/v1_float.d: Likewise.
927 * testsuite/gas/csky/v2_float_part1.d: Likewise.
928 * testsuite/gas/csky/v2_float_part2.d: Likewise.
929 * testsuite/gas/csky/v2_tls_gd.d: Likewise.
930 * testsuite/gas/csky/v2_tls_ie.d: Likewise.
931 * testsuite/gas/csky/v2_tls_ld.d: Likewise.
932 * testsuite/gas/csky/v2_tls_le.d: Likewise.
933 * testsuite/gas/elf/elf.exp: Add handler for CSKY.
934 * testsuite/gas/elf/section2.e-csky: New.
936 2020-08-27 Alan Modra <amodra@gmail.com>
939 * cgen.c (weak_operand_overflow_check): Handle opmask for
940 operand length zero. Use 1UL constant.
942 2020-08-26 Alan Modra <amodra@gmail.com>
945 * config/tc-xtensa.c (xg_get_trampoline_chain): Return early
946 when n_entries is zero.
948 2020-08-26 Alan Modra <amodra@gmail.com>
951 * symbols.c: Include limits.h.
952 (resolve_symbol_value <O_left_shift, O_right_shift>): Do an
953 unsigned shift. Warn if shift count larger than valueT size.
955 2020-08-26 Alan Modra <amodra@gmail.com>
958 * expr.c (expr <O_left_shift>): Do an unsigned shift.
960 2020-08-25 Alan Modra <amodra@gmail.com>
962 2020-08-26 David Faust <david.faust@oracle.com>
964 * config/tc-bpf.c: Add option -mxbpf to select xbpf isa.
965 * testsuite/gas/bpf/indcall-1.d: New file.
966 * testsuite/gas/bpf/indcall-1.s: Likewise.
967 * testsuite/gas/bpf/indcall-bad-1.l: Likewise.
968 * testsuite/gas/bpf/indcall-bad-1.s: Likewise.
969 * testsuite/gas/bpf/bpf.exp: Run new tests.
971 2020-08-25 Alan Modra <amodra@gmail.com>
974 * config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat
975 misc_symbol_hash entries without values.
977 2020-08-25 Alan Modra <amodra@gmail.com>
980 * config/tc-tic4x.c (tic4x_inst_make): Don't die on terminating
983 2020-08-25 Alan Modra <amodra@gmail.com>
986 * config/tc-cr16.c (get_b_cc): Return NULL early if op isn't
987 two or three chars, and don't bother copying.
989 2020-08-25 Alan Modra <amodra@gmail.com>
992 * config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on
995 2020-08-25 Alan Modra <amodra@gmail.com>
998 * symbols.c (dollar_label_count, dollar_label_max): Make size_t.
999 (dollar_label_clear): Don't call memset with NULL pointer.
1001 2020-08-25 Alan Modra <amodra@gmail.com>
1003 * config/tc-arc.c (declare_register_set): Avoid false positive
1004 format-overflow warning.
1005 * config/tc-epiphany.c (md_assemble): Likewise.
1006 * config/tc-mips.c (md_begin): Likewise.
1007 * config/tc-mmix.c (mmix_md_begin): Likewise.
1008 * config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false
1009 positive "may be used uninitialized" warning.
1011 2020-08-24 Cooper Qu <cooper.qu@linux.alibaba.com>
1013 * config/tc-csky.c (csky_archs): Add item for CK860,
1014 change ck810 and ck807's arch_flag.
1015 (csky_cpus): Add item for CK860.
1016 (md_begin): Enable DSP for CK810 and CK807 by default.
1017 (md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure.
1018 * testsuite/gas/csky/cskyv2_all.d: Change 'sync 0' to 'sync'.
1019 * testsuite/gas/csky/cskyv2_all.s: Likewise.
1020 * testsuite/gas/csky/cskyv2_ck860.d: New.
1021 * testsuite/gas/csky/cskyv2_ck860.s: New.
1022 * testsuite/gas/csky/enhance_dsp.d: Change plsli.u16 to plsli.16.
1023 * testsuite/gas/csky/enhance_dsp.s: Likewise.
1025 2020-08-24 Alan Modra <amodra@gmail.com>
1027 * config/tc-tic54x.c (stag_add_field_symbols): Don't free "name"
1028 in case where it isn't copied.
1029 * config/tc-tic54x.h (LOCAL_LABELS_FB): Undef.
1030 * testsuite/gas/tic54x/field.d: Dump section contents and symbols
1031 rather than disassembling.
1032 * testsuite/gas/tic54x/set.d: Adjust for newer disassembly.
1034 2020-08-24 Alan Modra <amodra@gmail.com>
1036 * config/tc-aarch64.c (md_begin): Don't bother checking for
1037 out of memory failure from str_htab_create.
1038 * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise.
1039 (arc_extcorereg, arc_stralloc): Likewise.
1040 * config/tc-arm.c (md_begin): Likewise.
1041 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
1042 * config/tc-cris.c (md_begin): Likewise.
1043 * config/tc-crx.c (md_begin): Likewise.
1044 * config/tc-pdp11.c (md_begin): Likewise.
1045 * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise.
1046 * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise.
1048 2020-08-24 Alan Modra <amodra@gmail.com>
1050 * config/tc-arm.c (move_or_literal_pool): Avoid false positive
1051 "may be used uninitialised".
1052 (opcode_lookup): Likewise.
1054 2020-08-24 Alan Modra <amodra@gmail.com>
1057 * symbols.c (local_symbol_convert): Clear out xtra.
1059 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
1061 * config/tc-csky.c (CSKY_ISA_803R2): New.
1062 (csky_archs): Add ck803r2 series.
1063 (md_begin): Fix warning about -medsp.
1064 (csky_get_freg_val): Support lowercase of fpu register name.
1065 * testsuite/gas/csky/cskyv2_ck803r2.s: New file.
1066 * testsuite/gas/csky/cskyv2_ck803r2.d: New file.
1068 2020-08-23 Alan Modra <amodra@gmail.com>
1071 * hash.h (htab_insert): Update prototype and comment.
1072 (struct string_tuple): Make "value" a const void*.
1073 (string_tuple_alloc): Likewise.
1074 (str_hash_find, str_hash_find_n): Cast returned value.
1075 (str_hash_insert): Add "replace" parameter, and return slot pointer.
1076 Free alloc'd element when not inserted.
1077 * hash.c (htab_insert): Likewise. Return slot when element exists,
1078 otherwise return NULL.
1079 * read.c (pop_insert): Insert into hash table without first searching.
1080 * config/tc-avr.c (md_begin): Likewise.
1081 * config/tc-msp430.c (md_begin): Likewise.
1082 * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
1083 * config/tc-v850.c (md_begin): Likewise.
1084 * macro.c (do_formals, define_macro, macro_expand_body): Likewise.
1085 (delete_macro): Delete from hash table.
1086 * config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
1088 * symbols.c (local_symbol_make, symbol_table_insert): Allow
1089 replacement of hash table entries.
1090 * config/obj-coff-seh.c (seh_hash_insert): Likewise.
1091 * config/obj-coff.c (tag_insert): Likewise.
1092 * config/tc-iq2000.c (iq2000_add_macro): Likewise.
1093 * config/tc-m68k.c (md_begin): Likewise for aliases.
1094 * config/tc-tic4x.c (tic4x_asg): Likewise.
1095 * config/tc-tic6x.c (md_begin): Likewise.
1097 * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
1099 * ecoff.c (add_string, get_tag): Likewise.
1100 * macro.c (expand_irp): Likewise.
1101 * config/obj-elf.c (build_additional_section_info): Likewise.
1102 * config/tc-aarch64.c (insert_reg_alias): Likewise.
1103 (checked_hash_insert): Likewise.
1104 * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
1105 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
1106 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
1107 * config/tc-arm.c (insert_reg_alias): Likewise.
1108 (arm_tc_equal_in_insn, md_begin): Likewise.
1109 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
1110 * config/tc-cris.c (md_begin): Likewise.
1111 * config/tc-crx.c (md_begin): Likewise.
1112 * config/tc-csky.c (md_begin): Likewise.
1113 * config/tc-d10v.c (md_begin): Likewise.
1114 * config/tc-dlx.c (md_begin): Likewise.
1115 * config/tc-ft32.c (md_begin): Likewise.
1116 * config/tc-h8300.c (md_begin): Likewise.
1117 * config/tc-hppa.c (md_begin): Likewise.
1118 * config/tc-i386.c (md_begin): Likewise.
1119 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
1120 (md_begin, dot_alias): Likewise.
1121 * config/tc-m68hc11.c (md_begin): Likewise.
1122 * config/tc-m68k.c (md_begin): Likewise.
1123 * config/tc-mcore.c (md_begin): Likewise.
1124 * config/tc-microblaze.c (md_begin): Likewise.
1125 * config/tc-mips.c (md_begin): Likewise.
1126 * config/tc-mmix.c (md_begin): Likewise.
1127 * config/tc-mn10200.c (md_begin): Likewise.
1128 * config/tc-mn10300.c (md_begin): Likewise.
1129 * config/tc-moxie.c (md_begin): Likewise.
1130 * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
1131 * config/tc-nios2.c (md_begin): Likewise.
1132 * config/tc-ns32k.c (md_begin): Likewise.
1133 * config/tc-pdp11.c (md_begin): Likewise.
1134 * config/tc-pj.c (fake_opcode, md_begin): Likewise.
1135 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
1136 * config/tc-pru.c (md_begin): Likewise.
1137 * config/tc-riscv.c (init_ext_version_hash): Likewise.
1138 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
1139 (riscv_init_csr_hash): Likewise.
1140 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
1141 * config/tc-score.c (s3_insert_reg): Likewise.
1142 (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
1143 * config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
1144 (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
1145 * config/tc-sh.c (md_begin): Likewise.
1146 * config/tc-sparc.c (md_begin): Likewise.
1147 * config/tc-spu.c (md_begin): Likewise.
1148 * config/tc-tic30.c (md_begin): Likewise.
1149 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
1150 * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
1151 (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
1152 (subsym_substitute): Likewise.
1153 * config/tc-tilegx.c (md_begin): Likewise.
1154 * config/tc-tilepro.c (md_begin): Likewise.
1155 * config/tc-vax.c (vip_begin): Likewise.
1156 * config/tc-wasm32.c (md_begin): Likewise.
1157 * config/tc-xgate.c (md_begin): Likewise.
1158 * config/tc-z8k.c (md_begin): Likewise.
1159 * testsuite/gas/ppc/dcbt.d,
1160 * testsuite/gas/ppc/dcbt.s: New test.
1161 * testsuite/gas/ppc/ppc.exp: Run it.
1163 * ecoff.c (add_string): Report fatal error on duplicates.
1164 * config/tc-alpha.c (md_begin): Likewise.
1165 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
1166 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
1167 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
1168 * config/tc-cris.c (md_begin): Likewise.
1169 * config/tc-crx.c (md_begin): Likewise.
1170 * config/tc-dlx.c (md_begin): Likewise.
1171 * config/tc-hppa.c (md_begin): Likewise.
1172 * config/tc-i386.c (md_begin): Likewise.
1173 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
1174 (md_begin): Likewise.
1175 * config/tc-m68k.c (md_begin): Likewise.
1176 * config/tc-mips.c (md_begin): Likewise.
1177 * config/tc-nios2.c (md_begin): Likewise.
1178 * config/tc-ns32k.c (md_begin): Likewise.
1179 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
1180 * config/tc-pru.c (md_begin): Likewise.
1181 * config/tc-riscv.c (init_ext_version_hash): Likewise.
1182 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
1183 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
1184 * config/tc-sparc.c (md_begin): Likewise.
1185 * config/tc-tic30.c (md_begin): Likewise.
1186 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
1187 * config/tc-tilegx.c (md_begin): Likewise.
1188 * config/tc-tilepro.c (md_begin): Likewise.
1189 * config/tc-vax.c (vip_begin): Likewise.
1191 * config/tc-alpha.c,
1197 * config/tc-m68hc11.c,
1199 * config/tc-microblaze.c,
1200 * config/tc-ns32k.c,
1203 * config/tc-score.c,
1204 * config/tc-score7.c,
1205 * config/tc-tic4x.c,
1206 * config/tc-tic54x.c,
1207 * config/tc-tilegx.c,
1208 * config/tc-tilepro.c,
1209 * config/tc-xgate.c: Formatting.
1211 2020-08-21 Alan Modra <amodra@gmail.com>
1213 * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
1214 Delete union. Adjust code throughout file.
1215 (struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
1217 (struct xsymbol): ..this. New struct. Adjust code throughout file
1218 accessing these fields.
1219 (struct symbol_entry): Delete.
1220 (union symbol_entry): New.
1221 (hash_symbol_entry): Adjust for symbol_entry_t change.
1222 (symbol_entry_find): Likewise.
1223 (eq_symbol_entry): Compare hash values too.
1224 (symbol_entry_alloc): Delete.
1225 (local_symbol_converted_p, local_symbol_mark_converted): Delete.
1226 (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
1227 (local_hash): Delete.
1228 (abs_symbol_x, dot_symbol_x): New static var.
1229 (symbol_init): New function.
1230 (symbol_create): Rewrite.
1231 (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
1232 test of flags.local_symbol.
1233 (local_symbol_make): Adjust for struct local_symbol changes.
1234 (local_symbol_convert): Rewrite. Adjust all callers.
1235 (symbol_table_insert): Simplify.
1236 (symbol_clone): Comment on local sym cloning. Handle split symbol
1238 (get_real_sym): Delete. Remove all uses.
1239 (symbol_find_exact_noref): Simplify.
1240 (resolve_local_symbol): Don't resolve non-locals.
1241 (S_SET_SEGMENT): Don't special case reg_section.
1242 (S_SET_NAME): Set both name and bsym->name.
1243 (symbol_mark_resolved, symbol_resolved_p): Simplify.
1244 (symbol_symbolS): Update comment.
1245 (symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
1246 (dot_symbol_init): Adjust dot_symbol setup.
1247 (symbol_print_statistics): Delete local_hash stats.
1249 2020-08-21 Alan Modra <amodra@gmail.com>
1251 * symbols.c (struct symbol_flags): Rename sy_volatile to volatil,
1252 and remove sy_ from other field names. Update throughout.
1253 (struct symbol): Remove sy_ from field names. Delete unused
1254 TARGET_SYMBOL_FIELDS. Update throughout file. Move after..
1255 (struct local_symbol): ..here. Remove lsy_ from field names.
1256 Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file.
1257 (local_symbol_resolved_p, local_symbol_mark_resolved): Delete.
1258 Expand uses throughout file.
1259 (local_symbol_get_frag, local_symbol_set_frag): Likewise.
1260 (symbol_new): Move symbol_table_frozen test to..
1261 (symbol_append): ..here, and..
1262 (symbol_insert): ..here.
1263 (resolve_symbol_value, symbol_relc_make_expr): White space fixes.
1264 (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise.
1265 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update.
1267 2020-08-21 Alan Modra <amodra@gmail.com>
1269 * symbols.h (symbol_new, symbol_create, local_symbol_make),
1270 (symbol_temp_new): Arrange params as section, frag, offset.
1271 * symbols.c: Adjust to suit.
1274 * dwarf2dbg.c: Likewise.
1275 * ecoff.c: Likewise.
1277 * itbl-ops.c: Likewise.
1279 * stabs.c: Likewise.
1280 * subsegs.c: Likewise.
1281 * config/obj-coff.c: Likewise.
1282 * config/obj-elf.c: Likewise.
1283 * config/obj-macho.c: Likewise.
1284 * config/tc-aarch64.c: Likewise.
1285 * config/tc-alpha.c: Likewise.
1286 * config/tc-arc.c: Likewise.
1287 * config/tc-arm.c: Likewise.
1288 * config/tc-avr.c: Likewise.
1289 * config/tc-cr16.c: Likewise.
1290 * config/tc-cris.c: Likewise.
1291 * config/tc-csky.c: Likewise.
1292 * config/tc-dlx.c: Likewise.
1293 * config/tc-hppa.c: Likewise.
1294 * config/tc-i386.c: Likewise.
1295 * config/tc-ia64.c: Likewise.
1296 * config/tc-m32r.c: Likewise.
1297 * config/tc-m68k.c: Likewise.
1298 * config/tc-mips.c: Likewise.
1299 * config/tc-mmix.c: Likewise.
1300 * config/tc-mn10200.c: Likewise.
1301 * config/tc-mn10300.c: Likewise.
1302 * config/tc-nds32.c: Likewise.
1303 * config/tc-nios2.c: Likewise.
1304 * config/tc-ppc.c: Likewise.
1305 * config/tc-riscv.c: Likewise.
1306 * config/tc-s390.c: Likewise.
1307 * config/tc-sh.c: Likewise.
1308 * config/tc-tic4x.c: Likewise.
1309 * config/tc-tic54x.c: Likewise.
1310 * config/tc-xtensa.c: Likewise.
1312 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
1314 * config/tc-csky.c (csky_insn_info): Add member last_isize.
1315 (md_assemble): Assign value to csky_insn.last_isize.
1316 * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form.
1317 * testsuite/gas/csky/enhance_dsp.s: Likewise.
1319 2020-08-20 Martin Liska <mliska@suse.cz>
1321 * NEWS: Mention --reduce-memory-overheads and --hash-size arguments
1323 * as.c: Remove the options from help.
1324 * doc/as.texi: Remove options.
1325 * doc/internals.texi: Remove hash from documentation.
1326 * hash.c (struct hash_entry): Remove.
1327 (struct hash_control): Likewise.
1328 (set_gas_hash_table_size): Likewise.
1329 (hash_new_sized): Likewise.
1330 (hash_new): Likewise.
1331 (hash_die): Likewise.
1332 (hash_lookup): Likewise.
1333 (hash_insert): Likewise.
1334 (hash_jam): Likewise.
1335 (hash_replace): Likewise.
1336 (hash_find): Likewise.
1337 (hash_find_n): Likewise.
1338 (hash_delete): Likewise.
1339 (hash_traverse): Likewise.
1340 (hash_print_statistics): Likewise.
1342 (STATBUFSIZE): Likewise.
1345 (destroy): Likewise.
1346 (applicatee): Likewise.
1347 (whattable): Likewise.
1348 * hash.h (struct hash_control): Likewise.
1349 (set_gas_hash_table_size): Likewise.
1350 (hash_new): Likewise.
1351 (hash_new_sized): Likewise.
1352 (hash_die): Likewise.
1353 (hash_insert): Likewise.
1354 (hash_jam): Likewise.
1355 (hash_replace): Likewise.
1356 (hash_find): Likewise.
1357 (hash_find_n): Likewise.
1358 (hash_delete): Likewise.
1359 (hash_traverse): Likewise.
1360 (hash_print_statistics): Likewise.
1362 2020-08-20 Martin Liska <mliska@suse.cz>
1364 * config/obj-coff-seh.c (seh_hash_insert): Port to use new
1366 (seh_hash_find): Likewise.
1367 (seh_hash_find_or_make): Likewise.
1368 * config/obj-coff.c (tag_init): Likewise.
1369 (tag_insert): Likewise.
1370 (tag_find): Likewise.
1371 * config/obj-elf.c (struct group_list): Likewise.
1372 (build_additional_section_info): Likewise.
1373 (free_section_idx): Likewise.
1374 (elf_adjust_symtab): Likewise.
1375 (elf_frob_file_after_relocs): Likewise.
1376 * config/tc-aarch64.c (INSN_SIZE): Likewise.
1377 (parse_reg): Likewise.
1378 (insert_reg_alias): Likewise.
1379 (create_register_alias): Likewise.
1380 (s_unreq): Likewise.
1381 (parse_shift): Likewise.
1382 (parse_pldop): Likewise.
1383 (parse_barrier): Likewise.
1384 (parse_barrier_psb): Likewise.
1385 (parse_bti_operand): Likewise.
1386 (parse_sys_reg): Likewise.
1387 (parse_sys_ins_reg): Likewise.
1388 (lookup_mnemonic): Likewise.
1389 (opcode_lookup): Likewise.
1390 (parse_operands): Likewise.
1391 (checked_hash_insert): Likewise.
1392 (sysreg_hash_insert): Likewise.
1393 (fill_instruction_hash_table): Likewise.
1394 (md_begin): Likewise.
1395 * config/tc-alpha.c (struct alpha_reloc_tag): Likewise.
1396 (get_alpha_reloc_tag): Likewise.
1397 (assemble_tokens_to_insn): Likewise.
1398 (assemble_tokens): Likewise.
1399 (md_begin): Likewise.
1400 * config/tc-arc.c (arc_find_opcode): Likewise.
1401 (arc_insert_opcode): Likewise.
1402 (find_opcode_match): Likewise.
1403 (declare_register): Likewise.
1404 (declare_addrtype): Likewise.
1405 (md_begin): Likewise.
1406 (arc_parse_name): Likewise.
1407 (tc_arc_regname_to_dw2regnum): Likewise.
1408 (arc_extcorereg): Likewise.
1409 * config/tc-arm.c (MVE_BAD_QREG): Likewise.
1410 (arm_reg_parse_multi): Likewise.
1411 (parse_reloc): Likewise.
1412 (insert_reg_alias): Likewise.
1413 (create_register_alias): Likewise.
1414 (s_unreq): Likewise.
1415 (parse_shift): Likewise.
1416 (parse_psr): Likewise.
1417 (parse_cond): Likewise.
1418 (parse_barrier): Likewise.
1419 (do_vfp_nsyn_opcode): Likewise.
1420 (opcode_lookup): Likewise.
1421 (arm_tc_equal_in_insn): Likewise.
1422 (md_begin): Likewise.
1423 * config/tc-avr.c (md_begin): Likewise.
1424 (avr_ldi_expression): Likewise.
1425 (md_assemble): Likewise.
1426 (avr_update_gccisr): Likewise.
1427 (avr_emit_insn): Likewise.
1428 * config/tc-cr16.c (get_register): Likewise.
1429 (get_register_pair): Likewise.
1430 (get_index_register): Likewise.
1431 (get_index_register_pair): Likewise.
1432 (get_pregister): Likewise.
1433 (get_pregisterp): Likewise.
1434 (initialise_reg_hash_table): Likewise.
1435 (md_begin): Likewise.
1436 (cr16_assemble): Likewise.
1437 (md_assemble): Likewise.
1438 * config/tc-cris.c (cris_insn_first_word_frag): Likewise.
1439 (md_begin): Likewise.
1440 (cris_process_instruction): Likewise.
1441 * config/tc-crx.c (get_register): Likewise.
1442 (get_copregister): Likewise.
1443 (md_begin): Likewise.
1444 (md_assemble): Likewise.
1445 * config/tc-csky.c (md_begin): Likewise.
1446 (parse_opcode): Likewise.
1447 (get_operand_value): Likewise.
1448 (v1_work_jbsr): Likewise.
1449 (v2_work_rotlc): Likewise.
1450 (v2_work_bgeni): Likewise.
1451 (v2_work_not): Likewise.
1452 * config/tc-d10v.c (sizeof): Likewise.
1453 (md_begin): Likewise.
1454 (do_assemble): Likewise.
1455 (md_apply_fix): Likewise.
1456 * config/tc-d30v.c (sizeof): Likewise.
1457 (md_begin): Likewise.
1458 (do_assemble): Likewise.
1459 * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise.
1460 (md_begin): Likewise.
1461 (machine_ip): Likewise.
1462 * config/tc-ft32.c (md_begin): Likewise.
1463 (md_assemble): Likewise.
1464 * config/tc-h8300.c (md_begin): Likewise.
1465 (md_assemble): Likewise.
1466 * config/tc-hppa.c (pa_ip): Likewise.
1467 (md_begin): Likewise.
1468 * config/tc-i386.c (md_begin): Likewise.
1469 (i386_print_statistics): Likewise.
1470 (parse_insn): Likewise.
1471 (process_operands): Likewise.
1472 (i386_index_check): Likewise.
1473 (parse_real_register): Likewise.
1474 * config/tc-ia64.c (dot_rot): Likewise.
1475 (dot_entry): Likewise.
1476 (declare_register): Likewise.
1477 (md_begin): Likewise.
1478 (ia64_parse_name): Likewise.
1479 (md_assemble): Likewise.
1480 (dot_alias): Likewise.
1481 (do_alias): Likewise.
1482 (ia64_adjust_symtab): Likewise.
1483 (do_secalias): Likewise.
1484 (ia64_frob_file): Likewise.
1485 * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise.
1486 (md_begin): Likewise.
1487 (print_insn_format): Likewise.
1488 (md_assemble): Likewise.
1489 * config/tc-m68k.c (tc_gen_reloc): Likewise.
1490 (m68k_ip): Likewise.
1491 (md_begin): Likewise.
1492 * config/tc-mcore.c (md_begin): Likewise.
1493 (md_assemble): Likewise.
1494 * config/tc-microblaze.c (md_begin): Likewise.
1495 (md_assemble): Likewise.
1496 (md_apply_fix): Likewise.
1497 * config/tc-mips.c (nopic_need_relax): Likewise.
1498 (md_begin): Likewise.
1499 (macro_build): Likewise.
1500 (mips16_macro_build): Likewise.
1501 (mips_lookup_insn): Likewise.
1502 (mips_ip): Likewise.
1503 (mips16_ip): Likewise.
1504 * config/tc-mmix.c (sizeof): Likewise.
1505 (mmix_md_begin): Likewise.
1506 (md_assemble): Likewise.
1507 * config/tc-mn10200.c (md_begin): Likewise.
1508 (md_assemble): Likewise.
1509 * config/tc-mn10300.c (HAVE_AM30): Likewise.
1510 (md_begin): Likewise.
1511 (md_assemble): Likewise.
1512 * config/tc-moxie.c (md_begin): Likewise.
1513 (md_assemble): Likewise.
1514 * config/tc-msp430.c (md_begin): Likewise.
1515 (msp430_operands): Likewise.
1516 (md_assemble): Likewise.
1517 * config/tc-nds32.c (PV_DONT_CARE): Likewise.
1518 (builtin_isreg): Likewise.
1519 (builtin_regnum): Likewise.
1520 (nds32_init_nds32_pseudo_opcodes): Likewise.
1521 (nds32_lookup_pseudo_opcode): Likewise.
1522 (nds32_relax_hint): Likewise.
1523 (md_begin): Likewise.
1524 (nds32_find_reloc_table): Likewise.
1525 (nds32_elf_append_relax_relocs_traverse): Likewise.
1526 (nds32_relax_branch_instructions): Likewise.
1527 (md_convert_frag): Likewise.
1528 (nds32_elf_analysis_relax_hint): Likewise.
1529 (tc_nds32_regname_to_dw2regnum): Likewise.
1530 * config/tc-nios2.c (nios2_opcode_lookup): Likewise.
1531 (nios2_reg_lookup): Likewise.
1532 (nios2_ps_lookup): Likewise.
1533 (md_begin): Likewise.
1534 * config/tc-ns32k.c (struct hash_control): Likewise.
1536 (md_begin): Likewise.
1537 * config/tc-pdp11.c (md_begin): Likewise.
1538 (md_assemble): Likewise.
1539 * config/tc-pj.c (fake_opcode): Likewise.
1541 (md_begin): Likewise.
1542 (md_assemble): Likewise.
1543 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
1544 (md_assemble): Likewise.
1545 * config/tc-pru.c (pru_opcode_lookup): Likewise.
1546 (pru_reg_lookup): Likewise.
1547 (md_begin): Likewise.
1549 * config/tc-riscv.c (init_ext_version_hash): Likewise.
1550 (riscv_get_default_ext_version): Likewise.
1551 (riscv_set_arch): Likewise.
1552 (init_opcode_names_hash): Likewise.
1553 (opcode_name_lookup): Likewise.
1554 (enum reg_class): Likewise.
1555 (hash_reg_name): Likewise.
1556 (riscv_init_csr_hash): Likewise.
1557 (reg_csr_lookup_internal): Likewise.
1558 (reg_lookup_internal): Likewise.
1559 (init_opcode_hash): Likewise.
1560 (md_begin): Likewise.
1561 (DECLARE_CSR): Likewise.
1562 (macro_build): Likewise.
1563 (riscv_ip): Likewise.
1564 * config/tc-s390.c (register_name): Likewise.
1565 (s390_setup_opcodes): Likewise.
1566 (md_begin): Likewise.
1567 (md_assemble): Likewise.
1568 (s390_insn): Likewise.
1569 * config/tc-score.c (struct s3_reg_map): Likewise.
1570 (s3_score_reg_parse): Likewise.
1571 (s3_dependency_type_from_insn): Likewise.
1572 (s3_parse_16_32_inst): Likewise.
1573 (s3_parse_48_inst): Likewise.
1574 (s3_insert_reg): Likewise.
1575 (s3_build_reg_hsh): Likewise.
1576 (s3_build_score_ops_hsh): Likewise.
1577 (s3_build_dependency_insn_hsh): Likewise.
1578 (s3_begin): Likewise.
1579 * config/tc-score7.c (struct s7_reg_map): Likewise.
1580 (s7_score_reg_parse): Likewise.
1581 (s7_dependency_type_from_insn): Likewise.
1582 (s7_parse_16_32_inst): Likewise.
1583 (s7_build_score_ops_hsh): Likewise.
1584 (s7_build_dependency_insn_hsh): Likewise.
1585 (s7_insert_reg): Likewise.
1586 (s7_build_reg_hsh): Likewise.
1587 (s7_begin): Likewise.
1588 * config/tc-sh.c (EMPTY): Likewise.
1589 (md_begin): Likewise.
1590 (find_cooked_opcode): Likewise.
1591 * config/tc-sparc.c (md_begin): Likewise.
1592 (sparc_ip): Likewise.
1593 * config/tc-spu.c (md_begin): Likewise.
1594 (md_assemble): Likewise.
1595 * config/tc-tic30.c (md_begin): Likewise.
1596 (tic30_operand): Likewise.
1597 (tic30_parallel_insn): Likewise.
1598 (md_assemble): Likewise.
1599 * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise.
1600 (tic4x_asg): Likewise.
1601 (tic4x_inst_insert): Likewise.
1602 (tic4x_inst_add): Likewise.
1603 (md_begin): Likewise.
1604 (tic4x_operand_parse): Likewise.
1605 (md_assemble): Likewise.
1606 * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise.
1607 (stag_add_field_symbols): Likewise.
1608 (tic54x_endstruct): Likewise.
1609 (tic54x_tag): Likewise.
1610 (tic54x_remove_local_label): Likewise.
1611 (tic54x_clear_local_labels): Likewise.
1612 (tic54x_var): Likewise.
1613 (tic54x_macro_start): Likewise.
1614 (tic54x_macro_info): Likewise.
1615 (tic54x_macro_end): Likewise.
1616 (subsym_isreg): Likewise.
1617 (subsym_structsz): Likewise.
1618 (md_begin): Likewise.
1619 (is_mmreg): Likewise.
1620 (is_type): Likewise.
1621 (encode_condition): Likewise.
1622 (encode_cc3): Likewise.
1623 (encode_cc2): Likewise.
1624 (encode_operand): Likewise.
1625 (tic54x_parse_insn): Likewise.
1626 (tic54x_parse_parallel_insn_firstline): Likewise.
1627 (subsym_create_or_replace): Likewise.
1628 (subsym_lookup): Likewise.
1629 (subsym_substitute): Likewise.
1630 (tic54x_undefined_symbol): Likewise.
1631 * config/tc-tic6x.c (md_begin): Likewise.
1632 (md_assemble): Likewise.
1633 * config/tc-tilegx.c (O_hw2_last_plt): Likewise.
1634 (INSERT_SPECIAL_OP): Likewise.
1635 (md_begin): Likewise.
1636 (tilegx_parse_name): Likewise.
1637 (parse_reg_expression): Likewise.
1638 (md_assemble): Likewise.
1639 * config/tc-tilepro.c (O_tls_ie_load): Likewise.
1640 (INSERT_SPECIAL_OP): Likewise.
1641 (tilepro_parse_name): Likewise.
1642 (parse_reg_expression): Likewise.
1643 (md_assemble): Likewise.
1644 * config/tc-v850.c (md_begin): Likewise.
1645 (md_assemble): Likewise.
1646 * config/tc-vax.c (md_ri_to_chars): Likewise.
1647 (vip_begin): Likewise.
1650 (md_begin): Likewise.
1651 * config/tc-wasm32.c (md_begin): Likewise.
1652 (md_assemble): Likewise.
1653 * config/tc-xgate.c (xgate_parse_operand): Likewise.
1654 (md_begin): Likewise.
1655 (md_assemble): Likewise.
1656 * config/tc-z8k.c (md_begin): Likewise.
1657 (md_assemble): Likewise.
1659 2020-08-20 Martin Liska <mliska@suse.cz>
1661 * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_*
1663 (dwcfi_hash_find): Likewise.
1664 (dwcfi_hash_find_or_make): Likewise.
1666 2020-08-20 Martin Liska <mliska@suse.cz>
1668 * ecoff.c (INIT_VARRAY): Use htab_t.
1669 (add_string): Likewise.
1670 (ecoff_read_begin_hook): Use new str_htab_create.
1671 (get_tag): Use htab_t.
1672 (add_file): Likewise.
1674 2020-08-20 Martin Liska <mliska@suse.cz>
1676 * hash.h (struct string_tuple): New.
1677 (hash_string_tuple): Likewise.
1678 (eq_string_tuple): Likewise.
1679 (string_tuple_alloc): Likewise.
1680 (str_hash_find): Likewise.
1681 (str_hash_find_n): Likewise.
1682 (str_hash_delete): Likewise.
1683 (str_hash_insert): Likewise.
1684 (str_htab_create): Likewise.
1686 2020-08-20 Martin Liska <mliska@suse.cz>
1688 * symbols.c (struct symbol_entry): New.
1689 (hash_symbol_entry): Likewise.
1690 (eq_symbol_entry): Likewise.
1691 (symbol_entry_alloc): Likewise.
1692 (symbol_entry_find): Likewise.
1693 (local_symbol_make): Use htab hash table.
1694 (local_symbol_convert): Likewise.
1695 (symbol_table_insert): Likewise.
1696 (symbol_find_exact_noref): Likewise.
1697 (resolve_local_symbol): Likewise.
1698 (resolve_local_symbol_values): Likewise.
1699 (symbol_begin): Likewise.
1700 (symbol_print_statistics): Likewise.
1702 2020-08-20 Martin Liska <mliska@suse.cz>
1704 * read.c (struct po_entry): New.
1705 (hash_po_entry): Likewise.
1706 (eq_po_entry): Likewise.
1707 (po_entry_alloc): Likewise.
1708 (po_entry_find): Likewise.
1709 (pop_insert): Likewise.
1710 (pobegin): Use htab hash table.
1711 (read_a_source_file): Likewise.
1712 (s_macro): Likewise.
1713 (read_print_statistics): Likewise.
1714 * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier.
1715 * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise.
1717 2020-08-20 Martin Liska <mliska@suse.cz>
1719 * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table.
1720 * macro.c (struct hash_control): Use htab.
1721 (macro_init): Likewise.
1722 (do_formals): Likewise.
1723 (free_macro): Likewise.
1724 (define_macro): Likewise.
1725 (sub_actual): Likewise.
1726 (macro_expand_body): Likewise.
1727 (macro_expand): Likewise.
1728 (check_macro): Likewise.
1729 (delete_macro): Likewise.
1730 (expand_irp): Likewise.
1731 * macro.h (struct macro_hash_entry): New struct.
1732 (hash_macro_entry): New.
1733 (eq_macro_entry): Likewise.
1734 (macro_entry_alloc): Likewise.
1735 (macro_entry_find): Likewise.
1736 (struct formal_hash_entry): Likewise.
1737 (hash_formal_entry): Likewise.
1738 (eq_formal_entry): Likewise.
1739 (formal_entry_alloc): Likewise.
1740 (formal_entry_find): Likewise.
1742 2020-08-20 Martin Liska <mliska@suse.cz>
1744 * as.h: Include hashtab.h.
1745 * hash.c (htab_insert): New.
1746 (htab_print_statistics): Likewise.
1747 * hash.h (htab_insert): Likewise.
1748 (htab_print_statistics): Likewise.
1750 2020-08-19 Alan Modra <amodra@gmail.com>
1752 * testsuite/gas/ppc/int128.s: Correct vcmpuq.
1753 * testsuite/gas/ppc/int128.d: Update.
1754 * testsuite/gas/ppc/xvtlsbb.d: Update.
1756 2020-08-18 Peter Bergner <bergner@linux.ibm.com>
1758 * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
1759 * testsuite/gas/ppc/vsx4.d: Likewise.
1761 2020-08-17 Alex Coplan <alex.coplan@arm.com>
1763 * config/obj-elf.c (obj_elf_change_section): When repurposing an
1764 existing symbol, ensure that we set sy_value as per other (fresh)
1766 * testsuite/gas/elf/elf.exp: Add new test.
1767 * testsuite/gas/elf/section-symbol-redef.d: New test.
1768 * testsuite/gas/elf/section-symbol-redef.s: Input for test.
1770 2020-08-13 Nick Clifton <nickc@redhat.com>
1773 * config/obj-som.c (obj_som_init_stab_section): Do nothing if the
1774 $GDB_DEBUG$ section has already been created.
1776 2020-08-12 Joe Ramsay <joe.ramsay@.arm.com>
1778 * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for
1779 NS_FD shape when MVE is present
1780 * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test.
1781 * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test.
1782 * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test.
1783 * testsuite/gas/arm/mve-vcvtne-it.d: New test.
1784 * testsuite/gas/arm/mve-vcvtne-it.s: New test.
1786 2020-08-12 Alex Coplan <alex.coplan@arm.com>
1788 * testsuite/gas/aarch64/mpam-bad.d: New test.
1789 * testsuite/gas/aarch64/mpam-bad.l: Error output.
1790 * testsuite/gas/aarch64/mpam-bad.s: Input.
1791 * testsuite/gas/aarch64/mpam.d: New test.
1792 * testsuite/gas/aarch64/mpam.s: Input.
1794 2020-08-12 Nick Clifton <nickc@redhat.com>
1797 * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description
1798 of the -mno-csr-check option.
1800 2020-08-12 Nick Clifton <nickc@redhat.com>
1802 * po/ru.po: Updated Russian translation.
1804 2020-08-10 Alex Coplan <alex.coplan@arm.com>
1806 * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing
1807 a long system register.
1808 (parse_sys_ins_reg): Likewise.
1809 (sysreg_hash_insert): New.
1810 (md_begin): Use sysreg_hash_insert() to ensure all system
1811 registers are no longer than the maximum length at startup.
1812 * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test.
1813 * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output.
1814 * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input.
1816 2020-08-10 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
1818 * config/tc-aarch64.c (parse_sys_reg): Call to
1819 aarch64_sys_ins_reg_supported_p instead of
1820 aarch64_sys_reg_supported_p.
1821 (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check.
1822 * testsuite/gas/aarch64/illegal-sysreg-5.d: New test.
1823 * testsuite/gas/aarch64/illegal-sysreg-5.l: New test.
1824 * testsuite/gas/aarch64/sysreg-5.s: New test.
1826 2020-08-10 Alan Modra <amodra@gmail.com>
1828 * testsuite/gas/ppc/power8.d,
1829 * testsuite/gas/ppc/power8.s: Add miso.
1830 * testsuite/gas/ppc/power9.d,
1831 * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru.
1833 2020-08-10 Alan Modra <amodra@gmail.com>
1835 * testsuite/gas/ppc/power8.d: Update.
1836 * testsuite/gas/ppc/vsx2.d: Update.
1838 2020-08-10 Alan Modra <amodra@gmail.com>
1840 * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
1841 stswi, or stswx in little-endian mode.
1842 * testsuite/gas/ppc/476.d,
1843 * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
1844 * testsuite/gas/ppc/a2.d,
1845 * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
1846 * testsuite/gas/ppc/be.d,
1847 * testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
1848 * testsuite/gas/ppc/le_error.d,
1849 * testsuite/gas/ppc/le_error.l: New little-endian test.
1850 * testsuite/gas/ppc/ppc.exp: Run new tests.
1852 2020-08-07 H.J. Lu <hongjiu.lu@intel.com>
1854 * read.c (read_a_source_file): Ignore rest of line on overflow
1857 2020-08-06 Alex Coplan <alex.coplan@arm.com>
1859 * read.c (read_a_source_file): Use long for local labels, detect
1860 overflow and raise an error for overly-long labels.
1861 * testsuite/gas/all/gas.exp: Add local-label-overflow test.
1862 * testsuite/gas/all/local-label-overflow.d: New test.
1863 * testsuite/gas/all/local-label-overflow.l: Error output.
1864 * testsuite/gas/all/local-label-overflow.s: Input.
1866 2020-08-04 Christian Groessler <chris@groessler.org>
1868 * testsuite/gas/z8k/inout.d: Adapt to correct encoding of
1869 "sout/soutb #imm,reg"
1871 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1873 * NEWS: Mention {disp16} pseudo prefix.
1875 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
1877 * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
1880 2020-08-04 Mark Wielaard <mark@klomp.org>
1882 * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
1883 DW_FORM_udata for DW_AT_high_pc.
1884 (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
1885 DWARF2_VERSION >= 4.
1886 * read.c (emit_leb128_exp): No longer static.
1887 * read.h (emit_leb128_exp): Define.
1889 2020-08-02 Mark Wielaard <mark@klomp.org>
1891 * dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
1892 least one directory if there is at least one file. Use dirs[1]
1893 if dirs[0] is not set, or if there is no dirs[1] the current
1894 working directory. Use files[1] filename, when files[0] filename
1897 2020-08-02 Mark Wielaard <mark@klomp.org>
1899 * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
1901 * testsuite/gas/elf/dwarf-4-cu.d: New file.
1902 * testsuite/gas/elf/dwarf-4-cu.s: Likewise.
1903 * testsuite/gas/elf/dwarf-5-cu.d: Likewise.
1904 * testsuite/gas/elf/dwarf-5-cu.s: Likewise.
1905 * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
1907 2020-08-02 Mark Wielaard <mark@klomp.org>
1909 * doc/as.texi (--gdwarf-[345]): Fix typo.
1911 2020-08-03 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1913 * config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
1914 (md_parse_option): Remove case for OPTION_MOVE_DATA.
1915 (md_longopts): Remove "md" entry.
1916 (md_show_usage): Likewise.
1918 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1921 * config/tc-i386.c (_i386_insn::disp_encoding): Add
1922 disp_encoding_16bit.
1923 (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
1925 (build_modrm_byte): Handle {disp16}.
1926 (i386_index_check): Check invalid {disp16} and {disp32} pseudo
1928 * doc/c-i386.texi: Update {disp32} documentation and document
1930 * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
1931 * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
1933 * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
1934 tests with 128-byte displacement. Add {disp16} tests.
1935 * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
1936 vmovaps test. Add (%r13)/(%r13d) tests.
1937 * testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
1938 * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
1939 * testsuite/gas/i386/inval-pseudo.l: Updated.
1940 * testsuite/gas/i386/pseudos.d: Likewise.
1941 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1943 2020-07-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1945 * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
1946 * Makefile.in, doc/Makefile.in: Regenerate.
1947 * configure: Regenerate.
1949 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
1951 * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
1952 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1953 * testsuite/gas/i386/dw2-compress-3a.d: Likewise.
1954 * testsuite/gas/i386/dw2-compress-3b.d: Likewise.
1955 * testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
1956 * testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
1958 2020-07-30 Nick Clifton <nickc@redhat.com>
1960 * as.c (dwarf_level): Initialise to 3 in case this is not set on
1963 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1965 * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
1966 * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
1967 * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
1968 * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
1969 * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
1970 * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
1971 * testsuite/gas/mips/mips.exp: Run the new tests.
1973 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
1975 * testsuite/gas/mips/global-local-symtab-o32.d: New test.
1976 * testsuite/gas/mips/global-local-symtab-o32t.d: New test.
1977 * testsuite/gas/mips/global-local-symtab-n32.d: New test.
1978 * testsuite/gas/mips/global-local-symtab-n32t.d: New test.
1979 * testsuite/gas/mips/global-local-symtab-n64.d: New test.
1980 * testsuite/gas/mips/global-local-symtab.s: New test source.
1981 * testsuite/gas/mips/mips.exp: Run the new tests.
1983 2020-07-28 H.J. Lu <hongjiu.lu@intel.com>
1986 * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
1987 (%bp)/(%ebp)/(%rbp) for {disp32}.
1988 * doc/c-i386.texi: Update {disp32} documentation.
1989 * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
1990 * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
1991 * testsuite/gas/i386/pseudos.d: Updated.
1992 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1994 2020-07-27 H.J. Lu <hongjiu.lu@intel.com>
1996 * doc/as.texi: Replace preceeded with preceded.
1998 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
2000 * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
2001 * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
2002 * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
2003 * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
2004 * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
2005 * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
2006 * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
2007 * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
2009 * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
2010 * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
2011 * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
2013 * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
2015 * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
2017 * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
2019 * testsuite/gas/mips/jal-xgot-irix.d: New file.
2020 * testsuite/gas/mips/jalr2-irix.d: New file.
2021 * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
2023 * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
2025 * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
2026 * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
2027 `*-*-irix*' targets. Add source file designator.
2028 * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
2029 `*-*-irix*' targets.
2030 * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
2031 * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
2032 * testsuite/gas/mips/jalr2.d: Add name designator.
2033 * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
2034 tests involving the JALR relocation throughout.
2036 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
2038 * testsuite/gas/mips/mips.exp: Use a helper variable for
2039 IRIX/non-IRIX test selection.
2041 2020-07-21 Jan Beulich <jbeulich@suse.com>
2043 * testsuite/gas/i386/evex-no-scale-64.d,
2044 testsuite/gas/i386/addr32.d,
2045 testsuite/gas/i386/x86-64-addr32-intel.d,
2046 testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
2048 2020-07-21 Cooper Qu <cooper.qu@linux.alibaba.com>
2050 * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
2052 2020-07-21 Jan Beulich <jbeulich@suse.com>
2054 * testsuite/gas/i386/evex-no-scale-32.d,
2055 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
2056 * testsuite/gas/i386/evex-no-scale-32.s,
2057 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
2058 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
2059 instead of .section.
2060 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
2063 2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
2065 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
2066 (my_getSmallExpression): Adjust accordingly.
2068 2020-07-20 Jan Beulich <jbeulich@suse.com>
2071 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
2072 conditional around it.
2073 (md_begin): Insert backslash into operand_chars[] when slash is
2074 a comment character.
2075 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
2076 \* as operators when / may be a comment character.
2077 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
2078 * testsuite/gas/i386/i386.exp: Run new test.
2080 2020-07-20 Jan Beulich <jbeulich@suse.com>
2083 * app.c (last_char): Drop TC_ARM conditional around it.
2084 (struct app_save): Drop TC_ARM conditional around last_char.
2085 (app_push, app_pop): Drop TC_ARM conditional from last_char
2087 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
2088 backslash-precedes-comment-character check.
2090 2020-07-20 Jan Beulich <jbeulich@suse.com>
2092 * config/tc-i386.c (frag_opcode_byte): New.
2093 (output_branch): Emit error when in absolute section.
2094 (output_jump, output_insn): Use frag_opcode_byte. Handle being
2095 in absolute section.
2096 (output_interseg_jump, output_disp, output_imm): Handle being in
2098 * testsuite/gas/i386/sizing.s,
2099 testsuite/gas/i386/sizing32.d,
2100 testsuite/gas/i386/sizing64.d: New.
2101 * testsuite/gas/i386/i386.exp: Run new tests.
2103 2020-07-20 Jan Beulich <jbeulich@suse.com>
2105 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
2106 is_elf_format as applicable; merely exclude iamcu tests.
2108 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
2111 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
2112 against section to PC32 reloc.
2113 * testsuite/gas/i386/relax-5.d: Updated.
2114 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2116 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
2119 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
2120 * testsuite/gas/i386/addr32.d: Likewise.
2121 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
2122 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
2124 2020-07-15 Nick Clifton <nickc@redhat.com>
2126 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
2127 the addend field of REL relocations. Store the full addend into
2128 the note for REL relocations.
2130 2020-07-15 Jan Beulich <jbeulich@suse.com>
2132 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
2134 * testsuite/gas/i386/x86-64-stack-intel.d,
2135 testsuite/gas/i386/x86-64-stack-suffix.d,
2136 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
2138 2020-07-15 Jan Beulich <jbeulich@suse.com>
2140 * testsuite/gas/i386/disassem.d,
2141 testsuite/gas/i386/ilp32/x86-64-branch.d,
2142 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
2143 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
2144 testsuite/gas/i386/noreg32.d,
2145 testsuite/gas/i386/noreg64-rex64.d,
2146 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
2147 testsuite/gas/i386/opcode.d,
2148 testsuite/gas/i386/solaris/x86-64-branch-2.d,
2149 testsuite/gas/i386/solaris/x86-64-jump.d,
2150 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
2151 testsuite/gas/i386/solaris/x86-64-nop-3.d,
2152 testsuite/gas/i386/solaris/x86-64-nop-4.d,
2153 testsuite/gas/i386/solaris/x86-64-nop-5.d,
2154 testsuite/gas/i386/solaris/x86-64-relax-2.d,
2155 testsuite/gas/i386/solaris/x86-64-relax-3.d,
2156 testsuite/gas/i386/x86-64-align-branch-1a.d,
2157 testsuite/gas/i386/x86-64-align-branch-1b.d,
2158 testsuite/gas/i386/x86-64-align-branch-1c.d,
2159 testsuite/gas/i386/x86-64-align-branch-1d.d,
2160 testsuite/gas/i386/x86-64-align-branch-1e.d,
2161 testsuite/gas/i386/x86-64-align-branch-1f.d,
2162 testsuite/gas/i386/x86-64-align-branch-1g.d,
2163 testsuite/gas/i386/x86-64-align-branch-1h.d,
2164 testsuite/gas/i386/x86-64-align-branch-1i.d,
2165 testsuite/gas/i386/x86-64-align-branch-2a.d,
2166 testsuite/gas/i386/x86-64-align-branch-2b.d,
2167 testsuite/gas/i386/x86-64-align-branch-2c.d,
2168 testsuite/gas/i386/x86-64-align-branch-3.d,
2169 testsuite/gas/i386/x86-64-align-branch-4a.d,
2170 testsuite/gas/i386/x86-64-align-branch-4b.d,
2171 testsuite/gas/i386/x86-64-align-branch-5.d,
2172 testsuite/gas/i386/x86-64-align-branch-6.d,
2173 testsuite/gas/i386/x86-64-branch-2.d,
2174 testsuite/gas/i386/x86-64-branch-3.d,
2175 testsuite/gas/i386/x86-64-branch.d,
2176 testsuite/gas/i386/x86-64-disassem.d,
2177 testsuite/gas/i386/x86-64-disp32.d,
2178 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
2179 testsuite/gas/i386/x86-64-gotpcrel.d,
2180 testsuite/gas/i386/x86-64-ifunc.d,
2181 testsuite/gas/i386/x86-64-jump.d,
2182 testsuite/gas/i386/x86-64-lfence-byte.d,
2183 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
2184 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
2185 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
2186 testsuite/gas/i386/x86-64-lfence-load.d,
2187 testsuite/gas/i386/x86-64-lfence-ret-a.d,
2188 testsuite/gas/i386/x86-64-lfence-ret-b.d,
2189 testsuite/gas/i386/x86-64-lfence-ret-c.d,
2190 testsuite/gas/i386/x86-64-lfence-ret-d.d,
2191 testsuite/gas/i386/x86-64-lfence-ret-e.d,
2192 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
2193 testsuite/gas/i386/x86-64-mpx-branch-1.d,
2194 testsuite/gas/i386/x86-64-mpx.d,
2195 testsuite/gas/i386/x86-64-nop-3.d,
2196 testsuite/gas/i386/x86-64-nop-4.d,
2197 testsuite/gas/i386/x86-64-nop-5.d,
2198 testsuite/gas/i386/x86-64-nops-7.d,
2199 testsuite/gas/i386/x86-64-notrack.d,
2200 testsuite/gas/i386/x86-64-opcode.d,
2201 testsuite/gas/i386/x86-64-relax-2.d,
2202 testsuite/gas/i386/x86-64-relax-3.d,
2203 testsuite/gas/i386/x86-64-relax-4.d,
2204 testsuite/gas/i386/x86-64-rtm.d,
2205 testsuite/gas/i386/x86-64-stack.d,
2206 testsuite/gas/i386/x86-64-unique.d,
2207 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
2209 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
2212 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
2214 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
2215 * testsuite/gas/i386/addr32.d: Updated.
2216 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
2217 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
2218 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
2219 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
2221 2020-07-14 Jan Beulich <jbeulich@suse.com>
2223 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
2224 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
2225 * testsuite/gas/i386/intel.d,
2226 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
2228 2020-07-14 Jan Beulich <jbeulich@suse.com>
2230 * testsuite/gas/i386/prefix.d: Adjust expectations.
2232 2020-07-14 Jan Beulich <jbeulich@suse.com>
2234 * testsuite/gas/i386/x86-64-avx-intel.d,
2235 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
2237 2020-07-14 Jan Beulich <jbeulich@suse.com>
2239 * testsuite/gas/i386/movbe-suffix.d,
2240 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
2241 * testsuite/gas/i386/i386.exp: Run new tests.
2243 2020-07-14 Jan Beulich <jbeulich@suse.com>
2245 * testsuite/gas/i386/crc32-suffix.d,
2246 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
2247 * testsuite/gas/i386/i386.exp: Run new tests.
2248 * testsuite/gas/i386/arch-10-bdver1.d,
2249 testsuite/gas/i386/arch-10-bdver2.d,
2250 testsuite/gas/i386/arch-10-bdver3.d,
2251 testsuite/gas/i386/arch-10-bdver4.d,
2252 testsuite/gas/i386/arch-10-btver1.d,
2253 testsuite/gas/i386/arch-10-btver2.d,
2254 testsuite/gas/i386/arch-10-lzcnt.d,
2255 testsuite/gas/i386/arch-10-prefetchw.d,
2256 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
2257 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
2258 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
2259 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
2260 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
2261 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
2262 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
2263 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
2264 testsuite/gas/i386/x86-64-arch-2-btver1.d,
2265 testsuite/gas/i386/x86-64-arch-2-btver2.d,
2266 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
2267 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
2268 testsuite/gas/i386/x86-64-arch-2.d,
2269 testsuite/gas/i386/x86-64-crc32.d,
2270 testsuite/gas/i386/x86-64-pseudos.d,
2271 testsuite/gas/i386/x86-64-sse-noavx.d,
2272 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
2274 2020-07-14 Jan Beulich <jbeulich@suse.com>
2276 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
2277 ModR/M-encoded byte register cases.
2278 * testsuite/gas/i386/x86-64-pseudos.d,
2279 testsuite/gas/i386/x86-64-reg-intel.d,
2280 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
2282 2020-07-14 Jan Beulich <jbeulich@suse.com>
2284 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
2285 not-ModR/M-encoded byte register cases.
2286 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
2288 2020-07-14 Jan Beulich <jbeulich@suse.com>
2290 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
2291 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
2292 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
2293 testsuite/gas/i386/ilp32/x86-64-avx.d,
2294 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
2295 testsuite/gas/i386/ilp32/x86-64-crc32.d,
2296 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
2297 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
2298 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
2299 testsuite/gas/i386/ilp32/x86-64-reg.d,
2300 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
2301 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
2302 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
2303 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
2304 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
2305 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
2308 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
2310 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
2313 2020-07-13 Nick Clifton <nickc@redhat.com>
2315 * po/fr.po: Updated French translation.
2317 2020-07-13 Alan Modra <amodra@gmail.com>
2319 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
2320 * testsuite/gas/elf/dwarf2-12.d: Likewise.
2321 * testsuite/gas/elf/dwarf2-13.d: Likewise.
2322 * testsuite/gas/elf/dwarf2-14.d: Likewise.
2324 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
2326 * config/tc-i386.c (output_insn): Check i.xstate to set
2327 GNU_PROPERTY_X86_FEATURE_2_TMM.
2328 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
2329 x86-64-property-8 and x86-64-property-9.
2330 * testsuite/gas/i386/x86-64-property-7.d: New file.
2331 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
2332 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
2333 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
2334 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
2335 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
2337 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
2339 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
2340 has_regymm, has_regzmm and has_regtmm. Add xstate.
2341 (md_assemble): Set i.xstate from operand types in instruction
2343 (build_modrm_byte): Updated.
2344 (output_insn): Check i.xstate.
2345 * testsuite/gas/i386/i386.exp: Run property-6 and
2347 * testsuite/gas/i386/property-6.d: New file.
2348 * testsuite/gas/i386/property-6.s: Updated.
2349 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
2351 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
2353 * testsuite/gas/i386/property-5.d: Correct test name.
2355 2020-07-10 Lili Cui <lili.cui@intel.com>
2357 * NEWS: Mention support for Intel AMX instructions.
2358 * config/tc-i386.c (i386_error): Add invalid_sib_address.
2359 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
2360 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
2361 (match_simd_size): Add tmmword check.
2362 (operand_type_match): Add tmmword.
2363 (type_names): Add rTMM.
2364 (i386_error): Add invalid_tmm_register_set.
2365 (check_VecOperands): Handle invalid_sib_address and
2366 invalid_tmm_register_set.
2367 (match_template): Handle invalid_sib_address.
2368 (build_modrm_byte): Handle non-vector SIB and zmmword.
2369 (i386_index_check): Disallow RegIP for non-vector SIB.
2370 (check_register): Handle zmmword.
2371 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
2372 * testsuite/gas/i386/i386.exp: Add AMX new tests.
2373 * testsuite/gas/i386/intel-regs.d: Add tmm.
2374 * testsuite/gas/i386/intel-regs.s: Add tmm.
2375 * testsuite/gas/i386/x86-64-amx-intel.d: New.
2376 * testsuite/gas/i386/x86-64-amx-inval.l: New.
2377 * testsuite/gas/i386/x86-64-amx-inval.s: New.
2378 * testsuite/gas/i386/x86-64-amx.d: New.
2379 * testsuite/gas/i386/x86-64-amx.s: New.
2380 * testsuite/gas/i386/x86-64-amx-bad.d: New.
2381 * testsuite/gas/i386/x86-64-amx-bad.s: New.
2383 2020-07-10 Tom de Vries <tdevries@suse.de>
2385 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
2386 readelf's line table decoding.
2387 * testsuite/gas/elf/dwarf2-12.d: Likewise.
2388 * testsuite/gas/elf/dwarf2-13.d: Likewise.
2389 * testsuite/gas/elf/dwarf2-14.d: Likewise.
2390 * testsuite/gas/elf/dwarf2-15.d: Likewise.
2391 * testsuite/gas/elf/dwarf2-16.d: Likewise.
2392 * testsuite/gas/elf/dwarf2-17.d: Likewise.
2393 * testsuite/gas/elf/dwarf2-18.d: Likewise.
2394 * testsuite/gas/elf/dwarf2-19.d: Likewise.
2395 * testsuite/gas/elf/dwarf2-5.d: Likewise.
2396 * testsuite/gas/elf/dwarf2-6.d: Likewise.
2397 * testsuite/gas/elf/dwarf2-7.d: Likewise.
2399 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
2401 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
2402 VEX/EVEX vector instructions.
2403 * testsuite/gas/i386/property-4.d: New file.
2404 * testsuite/gas/i386/property-4.s: Likewise.
2405 * testsuite/gas/i386/property-5.d: Likewise.
2406 * testsuite/gas/i386/property-5.s: Likewise.
2407 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
2408 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
2410 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
2412 * NEWS: Mention --enable-x86-used-note.
2413 * configure.ac: Configure with --enable-x86-used-note by default
2415 * configure: Regenerated.
2417 2020-07-09 Alan Modra <amodra@gmail.com>
2419 * config/obj-coff.h: Remove TE_PE support.
2420 * config/tc-ppc.c: Likewise.
2421 * config/tc-ppc.h: Likewise.
2422 * configure.tgt: Remove powerpc PE and powerpc lynxos.
2423 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
2425 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
2427 2020-07-08 Jan Beulich <jbeulich@suse.com>
2429 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
2431 * testsuite/gas/i386/i386.exp: Run new tests.
2433 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
2435 * config/tc-arc.c (find_opcode_match): Add error messages.
2436 * testsuite/gas/arc/add_s-err.s: Update test.
2437 * testsuite/gas/arc/asm-errors.err: Likewise.
2438 * testsuite/gas/arc/cpu-em-err.s: Likewise.
2439 * testsuite/gas/arc/hregs-err.s: Likewise.
2440 * testsuite/gas/arc/warn.s: Likewise.
2442 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
2445 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
2447 2020-07-07 Alan Modra <amodra@gmail.com>
2449 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
2450 * testsuite/gas/ppc/ppc.exp: Likewise.
2451 * testsuite/gas/all/weakref1l.d: Likewise.
2453 2020-07-07 Nick Clifton <nickc@redhat.com>
2455 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
2458 2020-07-06 Jan Beulich <jbeulich@suse.com>
2460 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
2461 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
2462 testsuite/gas/i386/x86-64-evex-wig1.d,
2463 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
2466 2020-07-06 Jan Beulich <jbeulich@suse.com>
2468 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
2469 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
2470 * testsuite/gas/i386/avx512f-opts-intel.d,
2471 testsuite/gas/i386/avx512f-opts.d
2472 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
2473 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
2475 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
2478 * config/tc-arm.c: Fix spelling mistake.
2479 * config/tc-riscv.c: Likewise.
2480 * config/tc-z80.c: Likewise.
2481 * po/gas.pot: Regenerate.
2483 2020-07-06 Nick Clifton <nickc@redhat.com>
2485 * po/uk.po: Updated Ukranian translation.
2487 2020-07-04 Nick Clifton <nickc@redhat.com>
2489 * configure: Regenerate.
2490 * po/gas.pot: Regenerate.
2492 2020-07-04 Nick Clifton <nickc@redhat.com>
2494 * version.m4: Change version number to 2.35.50.
2495 * configure: Regenerate.
2496 * po/bfd.pot: Regenerate.
2498 2020-07-04 Nick Clifton <nickc@redhat.com>
2500 Binutils 2.35 branch created.
2502 2020-07-03 Alan Modra <amodra@gmail.com>
2505 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
2507 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
2509 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
2510 swap two source operands.
2512 2020-07-02 Nick Clifton <nickc@redhat.com>
2514 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
2516 2020-07-02 Alex Coplan <alex.coplan@arm.com>
2518 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
2519 segfault on negative chars.
2520 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
2521 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
2523 2020-07-02 Nick Clifton <nickc@redhat.com>
2526 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
2528 * testsuite/gas/ia64/unwind.d: Likewise.
2529 * testsuite/gas/mmix/bspec-1.d: Likewise.
2530 * testsuite/gas/mmix/bspec-2.d: Likewise.
2531 * testsuite/gas/mmix/comment-1.d: Likewise.
2532 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
2534 2020-07-01 Alan Modra <amodra@gmail.com>
2536 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
2538 2020-07-01 Alan Modra <amodra@gmail.com>
2540 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
2541 in data sections, and mep.
2543 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
2545 * NEWS: Mention x86 NaCl target support removal.
2546 * config/tc-i386.c: Remove x86 NaCl target support.
2547 * config/tc-i386.h: Likewise.
2548 * configure.tgt: Likewise.
2549 * testsuite/gas/i386/i386.exp: Likewise.
2550 * testsuite/gas/i386/iamcu-1.d: Likewise.
2551 * testsuite/gas/i386/iamcu-2.d: Likewise.
2552 * testsuite/gas/i386/iamcu-3.d: Likewise.
2553 * testsuite/gas/i386/iamcu-4.d: Likewise.
2554 * testsuite/gas/i386/iamcu-5.d: Likewise.
2555 * testsuite/gas/i386/k1om.d: Likewise.
2556 * testsuite/gas/i386/l1om.d: Likewise.
2558 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
2560 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
2561 checking into riscv_csr_address.
2562 (riscv_csr_version_check): Likewise.
2563 (riscv_csr_address): New function. Return the suitable CSR address
2564 after checking the ISA dependency and versions. Issue warnings if
2565 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
2566 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
2567 priv spec versions for them.
2568 (reg_csr_lookup_internal): Call riscv_csr_address to find the
2569 suitable CSR address.
2570 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
2571 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2572 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2573 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
2574 priv spec warnings here. These warnings are added by accident.
2575 Remove them and only focus on the ISA dependency warnings.
2576 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2577 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2578 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
2579 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
2580 than the privileged ones.
2581 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
2582 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
2583 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
2584 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
2585 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
2586 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
2587 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
2588 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
2589 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
2590 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
2592 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
2594 * config/tc-i386.c (build_vex_prefix): Support VEX base opcode
2596 (md_assemble): Don't process ImmExt without operands.
2598 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
2601 * config/tc-mmix.c (md_assemble) <fixup for
2602 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
2603 Also, set its fx_no_overflow.
2604 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
2605 Similarly this fixup affects 4 bytes, not 8 and needs its
2607 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
2608 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
2610 2020-06-29 Alan Modra <amodra@gmail.com>
2612 * config/tc-s12z.c: Use C style comments.
2613 * config/tc-z80.c: Likewise.
2614 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
2616 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
2618 * config/tc-i386.c (md_assemble): Process ImmExt without
2621 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
2623 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
2624 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
2625 VECSIB256 and VECSIB512, respectively.
2626 (build_modrm_byte): Replace vecsib with sib.
2628 2020-06-26 Jan Beulich <jbeulich@suse.com>
2630 * testsuite/gas/i386/nop-1-suffix.d: New.
2631 * testsuite/gas/i386/i386.exp: Run new test.
2633 2020-06-26 Pat Bernardi <bernardi@adacore.com>
2635 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
2636 (md_pseudo_table): Handle "gnu_attribute".
2637 * doc/as.texi: Document GNU attribute for M68K.
2639 2020-06-25 Nick Clifton <nickc@redhat.com>
2642 * config/tc-arm.c (arm_force_relocation): Force resolution of
2643 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
2644 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
2646 2020-06-25 Jan Beulich <jbeulich@suse.com>
2648 * config/tc-i386.c (md_assemble): Move call to process_immext()
2650 (process_operands): ... here.
2652 2020-06-25 Jan Beulich <jbeulich@suse.com>
2654 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
2655 diagnostic when there is a sizing prefix. Switch to word/dword/
2656 qword encoding when there is a sizing prefix and no (explicit or
2658 (update_imm): Handle presence of a sizing prefix.
2659 * testsuite/gas/i386/noreg16-data32.d,
2660 testsuite/gas/i386/noreg32-data16.d,
2661 testsuite/gas/i386/noreg32-data16.e,
2662 testsuite/gas/i386/noreg64-data16.d,
2663 testsuite/gas/i386/noreg64-data16.e,
2664 testsuite/gas/i386/noreg64-rex64.d: New.
2665 * testsuite/gas/i386/i386.exp: Run new tests.
2666 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
2667 Introduce and use pfx* macros.
2668 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
2670 * testsuite/gas/i386/noreg16.d: Adjust expectations.
2672 2020-06-25 Jan Beulich <jbeulich@suse.com>
2674 * testsuite/gas/i386/avx-16bit.d,
2675 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
2676 testsuite/gas/i386/avx512f-16bit.d,
2677 testsuite/gas/i386/avx512f.d,
2678 testsuite/gas/i386/evex-lig256.d,
2679 testsuite/gas/i386/evex-lig512.d
2680 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
2681 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
2682 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
2683 testsuite/gas/i386/sse2-16bit.d,
2684 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
2687 2020-06-25 Jan Beulich <jbeulich@suse.com>
2689 * config/tc-i386.c (md_assemble): Also reject explicit REX
2690 prefixes with VEX and alike encoded insns. Zap consumed bits
2692 (output_insn): Don't ignore REX prefix for VEX and alike
2693 encodings; abort() instead if encountered.
2694 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
2696 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
2697 * testsuite/gas/i386/x86-64-pseudos.d,
2698 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
2700 2020-06-25 Jan Beulich <jbeulich@suse.com>
2702 * config/tc-i386.c (process_operands): Translate explicit REX
2703 prefix into i.rex for SSE2AVX templates.
2704 (set_rex_vrex): New helper.
2705 (build_modrm_byte): Use it.
2706 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
2708 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
2710 2020-06-25 Jan Beulich <jbeulich@suse.com>
2712 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
2713 templates when there's no data size prefix.
2714 (md_assemble): Reject data size prefix also for legacy encoded
2716 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
2717 Uncomment previously not working line.
2718 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
2720 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
2721 testsuite/gas/i386/sse2avx.d: Adjust expectations.
2723 2020-06-25 Jan Beulich <jbeulich@suse.com>
2725 * config/tc-i386.c (build_evex_prefix): Drop early setting of
2728 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
2730 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
2731 explicit_priv_attr. It used to indicate CSR or priv instructions are
2733 (riscv_is_priv_insn): Return True if it is a privileged instruction.
2734 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
2735 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
2736 (riscv_write_out_attrs): Clarification of when to generate the elf
2737 priv spec attributes.
2738 * testsuite/gas/riscv/attribute-11.s: Add comments.
2739 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
2740 `priv_insn_<n>` to decide which priv instruction is expected to used.
2742 * testsuite/gas/riscv/attribute-14a.d: Likewise.
2743 * testsuite/gas/riscv/attribute-14b.d: Likewise.
2744 * testsuite/gas/riscv/attribute-14c.d: Likewise.
2745 * testsuite/gas/riscv/attribute-14d.d: Likewise.
2746 * testsuite/gas/riscv/attribute-14e.d: Likewise.
2748 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
2750 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
2751 (riscv_set_default_priv_spec): Get the priv spec version from the
2752 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
2754 2020-06-20 Alan Modra <amodra@gmail.com>
2756 * configure.tgt: Set bfd_gas for all SH targets.
2758 2020-06-18 Jan Beulich <jbeulich@suse.com>
2760 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
2761 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2764 2020-06-16 Lili Cui <lili.cui@intel.com>
2766 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
2767 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
2768 * doc/c-i386.texi: Add avx512_vp2intersect.
2770 2020-06-16 Jan Beulich <jbeulich@suse.com>
2772 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
2774 * testsuite/gas/i386/sse-check.s: Adjust comment.
2775 * testsuite/gas/i386/sse-check-error.l,
2776 testsuite/gas/i386/sse-check-warn.e,
2777 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
2780 2020-06-16 Alan Modra <amodra@gmail.com>
2782 * config/tc-tic30.h: Remove OBJ_AOUT support.
2783 * configure.tgt: Delete tic30-*-*aout* entry.
2785 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
2787 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
2789 (elf32xtensa_abi): New declaration.
2790 (option_abi_windowed, option_abi_call0): New enum constants.
2791 (md_longopts): Add entries for --abi-windowed and --abi-call0.
2792 (md_parse_option): Add handlers for --abi-windowed and
2794 (xtensa_add_config_info): Use xtensa_abi_choice instead of
2795 XSHAL_ABI to format ABI tag.
2796 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
2797 --abi-call0 to the list of options.
2798 * doc/c-xtensa.texi: Add description for options --abi-windowed
2800 * testsuite/gas/xtensa/abi-call0.d: New test definition.
2801 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
2802 * testsuite/gas/xtensa/abi.s: New test source.
2804 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
2807 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
2809 * testsuite/gas/i386/tsxldtrk.s: Likewise.
2810 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
2811 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
2813 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
2815 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
2816 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2817 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
2819 2020-06-09 Seth Girvan <snth@snthhacks.com>
2821 * doc/c-avr.texi: Improve wording.
2823 2020-06-09 Jan Beulich <jbeulich@suse.com>
2825 * testsuite/gas/i386/x86-64-pseudos-bad.s,
2826 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
2828 2020-06-09 Jan Beulich <jbeulich@suse.com>
2830 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
2832 * testsuite/gas/i386/prefix.d: Adjust expectations.
2834 2020-06-09 Jan Beulich <jbeulich@suse.com>
2836 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
2837 with VEX/EVEX encoding tests.
2838 * testsuite/gas/i386/prefix.d: Adjust expectations.
2840 2020-06-09 Jan Beulich <jbeulich@suse.com>
2842 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
2844 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
2845 * testsuite/gas/i386/noreg64.d: Adjust expectations.
2846 * testsuite/gas/i386/noreg-intel64.d,
2847 testsuite/gas/i386/noreg-intel64.l,
2848 testsuite/gas/i386/noreg-intel64.s: New.
2849 * testsuite/gas/i386/i386.exp: Run new tests.
2851 2020-06-09 Jan Beulich <jbeulich@suse.com>
2853 * config/tc-i386.c (vex_encoding_error): New enumerator.
2854 (VEX_check_operands): Rename to VEX_check_encoding. Check
2855 for vex_encoding_error. Move Imm4 handling ...
2856 (check_VecOperands): ... here.
2857 (match_template): Call VEX_check_encoding when there are no
2858 operands. Split construct calling check_VecOperands and
2859 VEX_check_encoding (when there are operands).
2860 (check_register): Don't blindly set vex_encoding_evex.
2861 * testsuite/gas/i386/pseudos-bad.s,
2862 testsuite/gas/i386/pseudos-bad.l: New.
2863 * testsuite/gas/i386/i386.exp: Run new test.
2864 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
2866 2020-06-08 Alex Coplan <alex.coplan@arm.com>
2868 * config/tc-arm.c (insns): Add dfb.
2869 * testsuite/gas/arm/dfb.d: New test.
2870 * testsuite/gas/arm/dfb.s: Input for test.
2872 2020-06-08 Nick Clifton <nickc@redhat.com>
2874 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
2876 2020-06-08 Jan Beulich <jbeulich@suse.com>
2878 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
2880 2020-06-08 Jan Beulich <jbeulich@suse.com>
2882 * config/tc-i386.c (check_byte_reg): Drop dead conditional
2885 2020-06-08 Jan Beulich <jbeulich@suse.com>
2887 * config/tc-i386.c (check_register): Split RegTR handling, to
2888 fail recognition also in 64-bit mode as well as with i586 or
2889 i686 explicitly enabled.
2890 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
2891 * testsuite/gas/i386/x86_64-intel.d,
2892 testsuite/gas/i386/x86_64.d: Adjust expectations.
2894 2020-06-08 Jan Beulich <jbeulich@suse.com>
2896 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
2897 * testsuite/gas/cfi/cfi.exp: Run this test.
2899 2020-06-08 Jan Beulich <jbeulich@suse.com>
2901 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
2902 check to %st(N) parsing logic.
2903 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
2905 2020-06-08 Jan Beulich <jbeulich@suse.com>
2907 * config/tc-i386.c (bad_reg): New.
2908 (check_VecOperations, i386_att_operand, i386_parse_name): Check
2910 (check_register): New, broken out from ...
2911 (parse_real_register): ... here. Call it.
2912 (parse_register): Call it, and error upon failure.
2913 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
2914 testsuite/gas/i386/x86-64-equ-bad.s,
2915 testsuite/gas/i386/x86-64-equ-bad.l: New.
2916 * testsuite/gas/i386/i386.exp: Run new tests.
2918 2020-06-06 Alan Modra <amodra@gmail.com>
2920 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
2921 * doc/c-ppc.texi: Likewise.
2923 2020-06-06 Alan Modra <amodra@gmail.com>
2925 * config/tc-ppc.c: Update throughout for reloc renaming.
2927 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
2929 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
2932 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
2934 * config/tc-riscv.c (explicit_csr): New static boolean.
2935 Used to indicate CSR are explictly used.
2936 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
2937 (riscv_write_out_attrs): If we already have set elf priv
2938 attributes, then generate them. Otherwise, don't generate
2939 them when no CSR are used.
2940 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
2941 * testsuite/gas/riscv/attribute-02.d: Likewise.
2942 * testsuite/gas/riscv/attribute-03.d: Likewise.
2943 * testsuite/gas/riscv/attribute-04.d: Likewise.
2944 * testsuite/gas/riscv/attribute-05.d: Likewise.
2945 * testsuite/gas/riscv/attribute-06.d: Likewise.
2946 * testsuite/gas/riscv/attribute-07.d: Likewise.
2947 * testsuite/gas/riscv/attribute-08.d: Likewise.
2948 * testsuite/gas/riscv/attribute-09.d: Likewise.
2949 * testsuite/gas/riscv/attribute-10.d: Likewise.
2950 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2951 * testsuite/gas/riscv/attribute-11.s: New testcase.
2952 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
2953 used, so we should output the ELF priv attributes.
2954 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
2955 used, so output the priv attributes according to the -mpriv-spec.
2956 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
2957 used, so ignore the -mpriv-spec setting.
2959 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
2961 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
2962 cgen_get_insn_value.
2963 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
2964 endianness to cgen_get_insn_value and cgen_put_insn_value.
2966 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2968 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
2969 cgen_put_insn_value.
2971 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2973 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
2975 (md_assemble): Remove no longer needed hack.
2977 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
2979 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
2980 cgen_put_insn_value.
2981 (gas_cgen_md_apply_fix): Likewise.
2982 (gas_cgen_md_apply_fix): Likewise.
2983 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
2984 cgen_put_insn_value.
2985 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
2986 cgen_put_insn_value.
2988 2020-06-04 Alan Modra <amodra@gmail.com>
2990 * testsuite/config/default.exp: Remove global directive outside
2992 * testsuite/gas/mep/complex-relocs.exp: Likewise.
2993 * testsuite/gas/microblaze/relax_size.exp: Likewise.
2994 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
2995 * testsuite/gas/mt/relocs.exp: Likewise.
2996 * testsuite/gas/rx/rx.exp: Likewise.
2998 2020-06-03 Stephen Casner <casner@acm.org>
3000 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
3002 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
3003 Jim Wilson <jimw@sifive.com>
3006 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
3007 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
3008 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
3009 Move B before SB. Move J before UJ.
3011 2020-06-01 Alex Coplan <alex.coplan@arm.com>
3013 * write.c (relax_segment): Fix handling of negative offset when
3014 relaxing an rs_org frag.
3015 * testsuite/gas/aarch64/org-neg.d: New test.
3016 * testsuite/gas/aarch64/org-neg.l: Error output for test.
3017 * testsuite/gas/aarch64/org-neg.s: Input for test.
3018 * testsuite/gas/arm/org-neg.d: New test.
3019 * testsuite/gas/arm/org-neg.l: Error output for test.
3020 * testsuite/gas/arm/org-neg.s: Input for test.
3022 2020-05-28 Stephen Casner <casner@acm.org>
3024 Fix unexpected failures in gas testsuite for pdp11-aout target.
3025 These are caused by the PDP11's mix of little-endian octets in
3026 shorts but shorts in big endian order for long or quad.
3028 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
3029 * testsuite/gas/all/gas.exp: Select alternate test scripts for
3030 pdp11, skip octa test completely.
3031 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
3032 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
3033 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
3035 2020-05-28 Alex Coplan <alex.coplan@arm.com>
3037 * frags.c (frag_grow): Fix comment.
3039 2020-05-27 Stephen Casner <casner@acm.org>
3042 * config/tc-pdp11.c (parse_reg): Distinguish register names from
3043 symbols that begin with a register name.
3044 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
3045 * testsuite/gas/pdp11/pr26001.s: Likewise.
3046 * testsuite/gas/pdp11/pr26001.d: Likewise.
3048 2020-05-27 Simon Cook <simon.cook@embecosm.com>
3050 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
3051 pointer when creating struct riscv_csr_extra.
3053 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3055 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
3056 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
3057 * testsuite/gas/i386/inval-avx512f.l: Updated.
3059 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
3061 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
3062 load/store instruction variants with alignment hints.
3063 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
3064 instruction variants with alignment hints.
3066 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3069 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
3070 instead of R_XGATE_PCREL_X.
3071 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
3072 BFD_RELOC_XGATE_PCREL_X.
3074 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3077 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
3078 with &fragP->fr_literal[0].
3080 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3083 * config/tc-vax.c (md_estimate_size_before_relax): Replace
3084 fragP->fr_literal with &fragP->fr_literal[0].
3085 (md_convert_frag): Likewise.
3087 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3090 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
3091 with &fragP->fr_literal[0].
3093 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3096 * config/tc-crx.c (getreg_image): Change argument type to int.
3097 (md_convert_frag): Replace fragP->fr_literal with
3098 &fragP->fr_literal[0].
3100 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
3103 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
3104 sprintf with memmove.
3106 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
3108 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
3109 with &fragP->fr_literal[0].
3111 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
3114 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
3115 2 overlapping strings.
3117 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
3119 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
3120 with &fragP->fr_literal[0].
3122 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
3124 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
3125 with &fragp->fr_literal[0].
3126 * config/tc-microblaze.c (md_apply_fix): Likewise.
3127 * config/tc-sh.c (md_convert_frag): Likewise.
3129 2020-05-24 Jim Wilson <jimw@sifive.com>
3132 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
3133 asection to segT. New locals seg and subseg. Call subseg_set before
3134 fix_new_exp. Call subseg_set after loop to restore original values.
3136 2020-05-21 Alan Modra <amodra@gmail.com>
3138 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
3140 * config/obj-elf.c: Likewise.
3141 * config/tc-aarch64.c: Likewise.
3142 * config/tc-arm.c: Likewise.
3143 * config/tc-m68k.c: Likewise.
3144 * config/tc-nios2.c: Likewise.
3145 * config/tc-tic30.c: Likewise.
3146 * ecoff.c: Likewise.
3148 * stabs.c: Likewise.
3149 * symbols.c: Likewise.
3150 * testsuite/gas/all/test-gen.c: Likewise.
3152 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
3154 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
3155 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
3156 Static variables which are used to set the ISA extensions. You can
3157 use -march (or ELF build attributes) and -misa-spec to set them,
3159 (ext_version_hash): The hash table used to handle the extensions
3161 (init_ext_version_hash): Initialize the ext_version_hash according
3162 to riscv_ext_version_table.
3163 (riscv_get_default_ext_version): The callback function of
3164 riscv_parse_subset_t. According to the choosed ISA spec,
3165 get the default version for the specific extension.
3166 (riscv_set_arch): Set the callback function.
3167 (enum options, struct option md_longopts): Add new option -misa-spec.
3168 (md_parse_option): Do not call riscv_set_arch for -march. We will
3169 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
3170 to set default_isa_spec class.
3171 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
3172 ext_version_hash, and then call riscv_set_arch to set the architecture
3173 with versions according to default_arch_with_ext.
3174 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
3176 * testsuite/gas/riscv/attribute-03.d: Likewise.
3177 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
3178 already set it's version to 2p1 by march, so no need to use the default
3179 2p2 version. For m-ext, we do not set the version by -march and ELF arch
3180 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
3181 ISA spec 2p2, so set 0p0 to it.
3182 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
3183 zicsr is 2p0 according to ISA spec 20191213.
3184 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
3185 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
3186 You can set them by configure options --with-arch and
3187 --with-isa-spec, respectively.
3188 (riscv_set_default_isa_spec): New function used to set the
3190 (md_parse_option): Call riscv_set_default_isa_spec rather than
3191 call riscv_get_isa_spec_class directly.
3192 (riscv_after_parse_args): If the -isa-spec is not set, then we
3193 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
3194 calling riscv_set_default_isa_spec.
3195 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
3196 the --with-isa-spec may be set to different ISA spec.
3197 * testsuite/gas/riscv/attribute-02.d: Likewise.
3198 * testsuite/gas/riscv/attribute-03.d: Likewise.
3199 * testsuite/gas/riscv/attribute-04.d: Likewise.
3200 * testsuite/gas/riscv/attribute-05.d: Likewise.
3201 * testsuite/gas/riscv/attribute-06.d: Likewise.
3202 * testsuite/gas/riscv/attribute-07.d: Likewise.
3203 * configure.ac: Add configure options, --with-arch and
3205 * configure: Regenerated.
3206 * config.in: Regenerated.
3207 * config/tc-riscv.c (default_priv_spec): Static variable which is
3208 used to check if the CSR is valid for the chosen privilege spec. You
3209 can use -mpriv-spec to set it.
3210 (enum reg_class): We now get the CSR address from csr_extra_hash rather
3211 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
3212 (riscv_init_csr_hashes): Only need to initialize one hash table
3214 (riscv_csr_class_check): Change the return type to void. Don't check
3215 the ISA dependency if -mcsr-check isn't set.
3216 (riscv_csr_version_check): New function. Check and find the CSR address
3217 from csr_extra_hash, according to default_priv_spec. Report warning
3218 for the invalid CSR if -mcsr-check is set.
3219 (reg_csr_lookup_internal): Updated.
3220 (reg_lookup_internal): Likewise.
3221 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
3222 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
3223 (md_parse_option): Call riscv_set_default_priv_version to set
3225 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
3226 privilege spec to the newest one.
3227 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
3228 include/opcode/riscv.h.
3229 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
3230 to check the ISA dependency for CSR, so fix the spec version by adding
3232 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
3233 version warnings for the test case.
3234 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
3235 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
3236 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
3237 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
3238 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3239 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
3240 Check whether the CSR is valid when privilege version 1.9 is choosed.
3241 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
3242 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
3243 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
3244 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
3245 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
3246 Check whether the CSR is valid when privilege version 1.10 is choosed.
3247 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
3248 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
3249 Check whether the CSR is valid when privilege version 1.11 is choosed.
3250 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
3251 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
3252 setting. You can set it by configure option --with-priv-spec.
3253 (riscv_set_default_priv_spec): New function used to set the default
3255 (md_parse_option): Call riscv_set_default_priv_spec rather than
3256 call riscv_get_priv_spec_class directly.
3257 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
3258 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
3259 calling riscv_set_default_priv_spec.
3260 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
3261 the --with-priv-spec may be set to different privilege spec.
3262 * testsuite/gas/riscv/priv-reg.d: Likewise.
3263 * configure.ac: Add configure option --with-priv-spec.
3264 * configure: Regenerated.
3265 * config.in: Regenerated.
3266 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
3267 explicit_attr. Set it to TRUE if any ELF attribute is found.
3268 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
3269 the priv attributes are set.
3270 (md_assemble): Set the default_priv_spec according to the priv
3271 attributes when we start to assemble instruction.
3272 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
3273 riscv_write_out_attrs. Update the arch and priv attributes. If we
3274 don't set the corresponding ELF attributes, then try to output the
3276 (riscv_set_public_attributes): If any ELF attribute or -march-attr
3277 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
3278 to update the arch and priv attributes.
3279 (s_riscv_attribute): Make sure all arch and priv attributes are set
3280 before any instruction.
3281 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
3282 ELF attribute or -march-attr is set. If the priv attributes are not
3283 set, then try to update them by the default setting (-mpriv-spec or
3285 * testsuite/gas/riscv/attribute-02.d: Likewise.
3286 * testsuite/gas/riscv/attribute-03.d: Likewise.
3287 * testsuite/gas/riscv/attribute-04.d: Likewise.
3288 * testsuite/gas/riscv/attribute-06.d: Likewise.
3289 * testsuite/gas/riscv/attribute-07.d: Likewise.
3290 * testsuite/gas/riscv/attribute-08.d: Likewise.
3291 * testsuite/gas/riscv/attribute-09.d: Likewise.
3292 * testsuite/gas/riscv/attribute-10.d: Likewise.
3293 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
3294 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
3295 set by priv attributes must be supported.
3296 * testsuite/gas/riscv/attribute-05.s: Likewise.
3297 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
3298 priv attributes according to the -mpriv-spec option.
3299 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
3300 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
3301 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
3302 * testsuite/gas/riscv/priv-reg.d: Removed.
3303 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
3304 CSR according to the priv spec 1.9.
3305 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
3306 CSR according to the priv spec 1.9.1.
3307 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
3308 CSR according to the priv spec 1.10.
3309 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
3310 CSR according to the priv spec 1.11.
3311 * config/tc-riscv.c (md_show_usage): Add descriptions about
3312 the new GAS options.
3313 * doc/c-riscv.texi: Likewise.
3315 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
3317 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
3318 * testsuite/gas/ppc/power9.d: Likewise.
3319 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
3320 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
3321 sync, wait, waitrsv>: Add tests.
3322 * testsuite/gas/ppc/power10.d: Likewise.
3324 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
3327 * config/tc-arm.c : Add arm_ext_v8r feature.
3328 (it_fsm_post_encode): Check arm_ext_v8r feature.
3329 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
3331 2020-05-19 Alan Modra <amodra@gmail.com>
3333 * write.c (write_contents): Use bfd_get_filename rather than
3334 accessing bfd->filename directly. Use bfd_section_name rather
3335 than accessing section->name directly.
3337 2020-05-19 Alan Modra <amodra@gmail.com>
3339 * symbols.c (local_symbol_make): Init all of lsy_flags.
3341 2020-05-18 Alan Modra <amodra@gmail.com>
3343 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
3344 before looking at add_symbol->sy_flags.
3346 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
3348 * config/tc-i386.c: Not handle lret/iret.
3349 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
3350 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
3351 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
3352 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
3353 * testsuite/gas/i386/lfence-ret.s: Ditto.
3354 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
3355 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
3356 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
3357 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
3358 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
3359 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
3360 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
3362 2020-05-15 Alan Modra <amodra@gmail.com>
3363 Alex Coplan <alex.coplan@arm.com>
3365 * symbols.c (struct local_symbol): Update comment.
3366 (resolve_symbol_value): For resolved symbols equated to other
3367 symbols, verify that the referenced symbol is not a local_symbol
3368 before accessing sy_value. Don't leave symbol loops during
3369 finalize_syms resolution.
3370 * testsuite/gas/all/assign-bad-recursive.d: New test.
3371 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
3372 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
3373 * testsuite/gas/all/gas.exp: Run it.
3375 2020-05-14 Nick Clifton <nickc@redhat.com>
3377 * po/sv.po: Updated Swedish translation.
3379 2020-05-11 Alan Modra <amodra@gmail.com>
3381 * testsuite/gas/ppc/scalarquad.d,
3382 * testsuite/gas/ppc/scalarquad.s: New test.
3383 * testsuite/gas/ppc/ppc.exp: Run it.
3385 2020-05-11 Alan Modra <amodra@gmail.com>
3387 * testsuite/gas/ppc/rightmost.d,
3388 * testsuite/gas/ppc/rightmost.s: New test.
3389 * testsuite/gas/ppc/ppc.exp: Run it.
3391 2020-05-11 Alan Modra <amodra@gmail.com>
3393 * testsuite/gas/ppc/xvtlsbb.d,
3394 * testsuite/gas/ppc/xvtlsbb.s: New test.
3395 * testsuite/gas/ppc/ppc.exp: Run it.
3397 2020-05-11 Alan Modra <amodra@gmail.com>
3399 * testsuite/gas/ppc/stringop.d,
3400 * testsuite/gas/ppc/stringop.s: New test.
3401 * testsuite/gas/ppc/ppc.exp: Run it.
3403 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
3405 * testsuite/gas/ppc/set_bool.d,
3406 * testsuite/gas/ppc/set_bool.s: New test.
3407 * testsuite/gas/ppc/ppc.exp: Run it.
3409 2020-05-11 Alan Modra <amodra@gmail.com>
3411 * testsuite/gas/ppc/bitmanip.d,
3412 * testsuite/gas/ppc/bitmanip.s: New test.
3413 * testsuite/gas/ppc/ppc.exp: Run it.
3415 2020-05-11 Alan Modra <amodra@gmail.com>
3417 * testsuite/gas/ppc/genpcv.d,
3418 * testsuite/gas/ppc/genpcv.s: New test.
3419 * testsuite/gas/ppc/ppc.exp: Run it.
3421 2020-05-11 Alan Modra <amodra@gmail.com>
3423 * testsuite/gas/ppc/maskmanip.d,
3424 * testsuite/gas/ppc/maskmanip.s: New test.
3425 * testsuite/gas/ppc/ppc.exp: Run it.
3427 2020-05-11 Alan Modra <amodra@gmail.com>
3428 Peter Bergner <bergner@linux.ibm.com>
3430 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
3431 (md_assemble): Check acc specified in correct operand.
3432 * testsuite/gas/ppc/outerprod.d,
3433 * testsuite/gas/ppc/outerprod.s,
3434 * testsuite/gas/ppc/vsx4.d,
3435 * testsuite/gas/ppc/vsx4.s: New tests.
3436 * testsuite/gas/ppc/ppc.exp: Run them.
3438 2020-05-11 Alan Modra <amodra@gmail.com>
3440 * testsuite/gas/ppc/simd_perm.d,
3441 * testsuite/gas/ppc/simd_perm.s: New test.
3442 * testsuite/gas/ppc/ppc.exp: Run it.
3444 2020-05-11 Alan Modra <amodra@gmail.com>
3446 * testsuite/gas/ppc/int128.d,
3447 * testsuite/gas/ppc/int128.s: New test.
3448 * testsuite/gas/ppc/ppc.exp: Run it.
3450 2020-05-11 Alan Modra <amodra@gmail.com>
3452 * testsuite/gas/ppc/vsx_32byte.d,
3453 * testsuite/gas/ppc/vsx_32byte.s: New test.
3454 * testsuite/gas/ppc/ppc.exp: Run it.
3456 2020-05-11 Alan Modra <amodra@gmail.com>
3458 * testsuite/gas/ppc/vec_mul.s,
3459 * testsuite/gas/ppc/vec_mul.d: New test.
3460 * testsuite/gas/ppc/ppc.exp: Run it.
3462 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
3464 * testsuite/gas/ppc/byte_rev.d,
3465 * testsuite/gas/ppc/byte_rev.s: New test.
3466 * testsuite/gas/ppc/ppc.exp: Run it.
3468 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
3470 * testsuite/gas/ppc/power10.d: Add paste. tests.
3471 * testsuite/gas/ppc/power10.s: Likewise.
3473 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
3475 * testsuite/gas/ppc/power10.s: New test.
3476 * testsuite/gas/ppc/power10.d: Likewise.
3477 * testsuite/gas/ppc/ppc.exp: Run it.
3479 2020-05-11 Alan Modra <amodra@gmail.com>
3481 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
3483 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
3484 place of -mfuture/-Mfuture.
3485 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
3486 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
3488 2020-05-06 Nick Clifton <nickc@redhat.com>
3490 * po/sv.po: Updated Swedish translation.
3492 2020-05-06 Nick Clifton <nickc@redhat.com>
3495 * doc/as.texi (Preprocessing): Replace cross reference to not
3496 existant document with a URL to the equivalent page in the GCC
3499 2020-05-05 Nick Clifton <nickc@redhat.com>
3501 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
3502 construction of a DWARF-5 directory name table.
3503 * testsuite/gas/elf/pr25917.d: Update expected output.
3505 2020-05-05 Gunther Nikl <gnikl@justmail.de>
3507 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
3508 (md_parse_option): Remove initialization of elf_flags.
3510 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
3513 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
3514 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
3515 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
3517 2020-05-04 Nick Clifton <nickc@redhat.com>
3520 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
3521 table's existence before looking at its entries.
3522 Also do not emit a default directory entry if there are no
3525 * testsuite/gas/elf/pr25917.s: New test source file.
3526 * testsuite/gas/elf/pr25917.d: New test driver.
3527 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
3529 2020-04-30 Alex Coplan <alex.coplan@arm.com>
3531 * config/tc-aarch64.c (fix_insn): Implement for
3532 AARCH64_OPND_UNDEFINED.
3533 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
3534 * testsuite/gas/aarch64/udf.s: New.
3535 * testsuite/gas/aarch64/udf.d: New.
3536 * testsuite/gas/aarch64/udf-invalid.s: New.
3537 * testsuite/gas/aarch64/udf-invalid.l: New.
3538 * testsuite/gas/aarch64/udf-invalid.d: New.
3540 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
3542 * config/tc-rx.c (elf_flags): Reset default value.
3543 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
3545 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
3547 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
3548 if it's not defined.
3549 (microarch_earliest): New static variable.
3550 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
3551 simcall opcode has mandatory parameter.
3552 (xg_init_global_config): Initialize microarch_earliest.
3554 2020-04-29 Nick Clifton <nickc@redhat.com>
3557 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
3558 IMM0_8S and add support for IMM0_8U.
3559 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
3560 unsigned 8-bit immediate.
3561 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
3562 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
3564 2020-04-27 Tamar Christina <tamar.christina@arm.com>
3566 * NEWS: Add news entry for big-obj.
3567 * config/tc-i386.c (i386_target_format): Support new format.
3568 * doc/c-i386.texi: Add i386 support.
3569 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
3570 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
3572 2020-04-27 Nick Clifton <nickc@redhat.com>
3575 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
3576 (assign_file_to_slot): New function. Fills in an entry in the
3578 (allocate_filenum): Use new function.
3579 (allocate_filename_to_slot): Use new function. If the specified
3580 slot entry is already in use, but was chosen automatically then
3581 reassign the automatic entry.
3583 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
3585 * config/tc-i386.c (lfence_before_ret_shl): New member.
3586 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
3588 (insert_after_load): Issue warning for REP CMPS/SCAS.
3589 (insert_before_before): Handle iret, Handle
3590 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
3591 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
3592 -mlfence-before-ret=[none/not/or/shl/yes].
3593 Enable -mlfence-before-ret=shl when
3594 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
3595 (md_show_usage): Ditto.
3596 * doc/c-i386.texi: Ditto.
3597 * testsuite/gas/i386/i386.exp: Add new testcases.
3598 * testsuite/gas/i386/lfence-load-b.d: New.
3599 * testsuite/gas/i386/lfence-load-b.e: New.
3600 * testsuite/gas/i386/lfence-load.d: Modified.
3601 * testsuite/gas/i386/lfence-load.e: New.
3602 * testsuite/gas/i386/lfence-load.s: Modified.
3603 * testsuite/gas/i386/lfence-ret-a.d: Modified.
3604 * testsuite/gas/i386/lfence-ret-b.d: Modified.
3605 * testsuite/gas/i386/lfence-ret-c.d: New.
3606 * testsuite/gas/i386/lfence-ret-d.d: New.
3607 * testsuite/gas/i386/lfence-ret.s: Modified.
3608 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
3609 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
3610 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
3611 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
3612 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
3613 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
3614 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
3615 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
3616 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
3617 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
3619 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
3622 * config/tc-xtensa.c (md_apply_fix): Replace
3623 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
3624 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
3625 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
3626 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
3627 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
3629 2020-04-22 Alan Modra <amodra@gmail.com>
3631 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
3632 symbol for ".symver .. remove".
3633 * doc/as.texi (.symver): Update.
3634 * testsuite/gas/symver/symver11.s: Make foo weak.
3635 * testsuite/gas/symver/symver11.d: Expect an error.
3636 * testsuite/gas/symver/symver7.d: Allow other random symbols.
3638 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3640 * testsuite/gas/symver/symver11.s: Add ".balign 8".
3642 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
3645 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
3646 * testsuite/gas/m68k/operands.d: Update.
3647 * testsuite/gas/m68k/op68000.d: Update for new error messages.
3649 2020-04-21 Tamar Christina <tamar.christina@arm.com>
3652 * testsuite/gas/arm/pr24753.d: New test.
3653 * testsuite/gas/arm/pr24753.s: New test.
3655 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
3659 * NEWS: Mention .symver extension.
3660 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
3662 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
3663 add a version name. Add local, hidden and remove visibility
3665 (elf_frob_symbol): Handle the list of version names. Update the
3666 original symbol to local, hidden or remove it from the symbol
3668 (elf_frob_file_before_adjust): Handle the list of version names.
3669 * config/obj-elf.h (elf_visibility): New.
3670 (elf_versioned_name_list): Likewise.
3671 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
3672 and visibility. Change versioned_name pointer to struct
3673 elf_versioned_name_list.
3674 * doc/as.texi: Update .symver directive.
3675 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
3676 error checking tests.
3677 * testsuite/gas/symver/symver6.d: New file.
3678 * testsuite/gas/symver/symver7.d: Likewise.
3679 * testsuite/gas/symver/symver7.s: Likewise.
3680 * testsuite/gas/symver/symver8.d: Likewise.
3681 * testsuite/gas/symver/symver8.s: Likewise.
3682 * testsuite/gas/symver/symver9.s: Likewise.
3683 * testsuite/gas/symver/symver9a.d: Likewise.
3684 * testsuite/gas/symver/symver9b.d: Likewise.
3685 * testsuite/gas/symver/symver10.s: Likewise.
3686 * testsuite/gas/symver/symver10a.d: Likewise.
3687 * testsuite/gas/symver/symver10b.d: Likewise.
3688 * testsuite/gas/symver/symver11.d: Likewise.
3689 * testsuite/gas/symver/symver11.s: Likewise.
3690 * testsuite/gas/symver/symver12.d: Likewise.
3691 * testsuite/gas/symver/symver12.s: Likewise.
3692 * testsuite/gas/symver/symver13.d: Likewise.
3693 * testsuite/gas/symver/symver13.s: Likewise.
3694 * testsuite/gas/symver/symver14.d: Likewise.
3695 * testsuite/gas/symver/symver14.l: Likewise.
3696 * testsuite/gas/symver/symver15.d: Likewise.
3697 * testsuite/gas/symver/symver15.l: Likewise.
3698 * testsuite/gas/symver/symver6.l: Removed.
3699 * testsuite/gas/symver/symver6.s: Updated.
3701 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3703 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
3705 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
3706 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
3707 * testsuite/gas/aarch64/system.d: Update.
3709 2020-04-20 Sudakshina Das <sudi.das@arm.com>
3711 * testsuite/gas/aarch64/bti.d: Update -march option.
3712 * testsuite/gas/aarch64/illegal-bti.d: Remove.
3713 * testsuite/gas/aarch64/illegal-bti.l: Remove.
3714 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
3715 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
3717 2020-04-17 Alan Modra <amodra@gmail.com>
3719 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
3721 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
3722 Nick Clifton <nickc@redhat.com>
3725 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
3727 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
3728 for the type-2 test.
3729 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
3730 targets running this test.
3732 2020-02-16 David Faust <david.faust@oracle.com>
3734 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
3735 * testsuite/gas/bpf/jump32.s: New file.
3736 * testsuite/gas/bpf/jump32.d: Likewise.
3738 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
3740 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
3743 2020-04-08 Gunther Nikl <gnikl@justmail.de>
3745 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
3746 (md_pcrel_from): Remove prototytpe.
3747 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
3749 (md_pcrel_from_section): Remove duplicate prototype.
3750 * tc.h (md_pcrel_from_section): Add prototype.
3751 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
3752 * config/tc-arc.h (md_pcrel_from_section): Likewise.
3753 * config/tc-arm.h (md_pcrel_from_section): Likewise.
3754 * config/tc-avr.h (md_pcrel_from_section): Likewise.
3755 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
3756 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
3757 * config/tc-csky.h (md_pcrel_from_section): Likewise.
3758 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
3759 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
3760 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
3761 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
3762 * config/tc-frv.h (md_pcrel_from_section): Likewise.
3763 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
3764 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
3765 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
3766 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
3767 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
3768 * config/tc-mep.h (md_pcrel_from_section): Likewise.
3769 * config/tc-metag.h (md_pcrel_from_section): Likewise.
3770 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
3771 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
3772 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
3773 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
3774 * config/tc-mt.h (md_pcrel_from_section): Likewise.
3775 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
3776 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
3777 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
3778 * config/tc-rx.h (md_pcrel_from_section): Likewise.
3779 * config/tc-s390.h (md_pcrel_from_section): Likewise.
3780 * config/tc-sh.h (md_pcrel_from_section): Likewise.
3781 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
3782 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
3783 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
3784 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
3785 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
3786 md_apply_fix3): Delete prototypes.
3788 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3790 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
3793 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
3795 * doc/c-z80.texi: Fix @xref warnings.
3797 2020-04-07 Lili Cui <lili.cui@intel.com>
3799 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
3800 (cpu_noarch): Likewise.
3801 * doc/c-i386.texi: Document TSXLDTRK.
3802 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
3803 * testsuite/gas/i386/tsxldtrk.d: Likewise.
3804 * testsuite/gas/i386/tsxldtrk.s: Likewise.
3805 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
3807 2020-04-02 Lili Cui <lili.cui@intel.com>
3809 * config/tc-i386.c (cpu_arch): Add .serialize.
3810 (cpu_noarch): Likewise.
3811 * doc/c-i386.texi: Document serialize.
3812 * testsuite/gas/i386/i386.exp: Run serialize tests
3813 * testsuite/gas/i386/serialize.d: Likewise.
3814 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
3815 * testsuite/gas/i386/serialize.s: Likewise.
3817 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3819 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
3820 * testsuite/gas/elf/section12b.d: Likewise.
3821 * testsuite/gas/elf/section16a.d: Likewise.
3822 * testsuite/gas/elf/section16b.d: Likewise.
3824 2020-04-02 Gunther Nikl <gnikl@justmail.de>
3826 * config/tc-m68k.c (m68k_ip): Fix range check for index register
3827 with a suppressed address register.
3829 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
3832 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
3833 * testsuite/gas/i386/localpic.s: Add a test for relocation
3834 against local absolute symbol.
3835 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
3836 * testsuite/gas/i386/localpic.d: Updated.
3837 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
3838 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
3840 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3843 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
3844 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
3845 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
3846 testsuite/gas/i386/x86-64-jump.d.
3847 * testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
3848 Incorporate changes to
3849 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
3850 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
3851 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
3852 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
3853 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
3855 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
3859 * dwarf2dbg.c: Do not include "bignum.h".
3861 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
3863 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
3864 * testsuite/gas/riscv/alias-csr.s: Likewise.
3865 * testsuite/gas/riscv/no-aliases-csr.d: Move this
3866 to priv-reg-pseudo-noalias.
3867 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
3868 * testsuite/gas/riscv/bad-csr.l: Likewise.
3869 * testsuite/gas/riscv/bad-csr.s: Likewise.
3870 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
3871 * testsuite/gas/riscv/satp.s: Likewise.
3872 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
3873 csr instruction, including alias-csr testcase.
3874 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
3875 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
3876 pseudo instruction with objdump -Mno-aliases.
3877 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
3878 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
3879 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
3880 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
3881 * testsuite/gas/riscv/priv-reg.s: Likewise.
3882 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3883 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
3884 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
3886 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
3888 * config/obj-coff.c (obj_coff_section): Set the bss flag on
3889 sections with the "b" attribute.
3891 2020-03-22 Alan Modra <amodra@gmail.com>
3893 * testsuite/gas/s12z/truncated.d: Update expected output.
3895 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3898 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
3899 * doc/c-z80.texi: Update documentation.
3901 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
3906 Fix disassembling ED+A4/AC/B4/BC opcodes.
3907 Fix assembling lines containing colonless label and instruction
3908 with first operand inside parentheses.
3909 Fix registration of unsupported by target CPU registers.
3910 * config/tc-z80.c: See above.
3911 * config/tc-z80.h: See above.
3912 * testsuite/gas/z80/colonless.d: Update test.
3913 * testsuite/gas/z80/colonless.s: Likewise.
3914 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
3915 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
3916 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3917 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
3918 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
3919 * testsuite/gas/z80/unsup_regs.s: Likewise.
3920 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
3921 * testsuite/gas/z80/z80.exp: Likewise.
3922 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
3923 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
3924 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
3926 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
3929 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
3930 (parse_operands): Handle new operand codes.
3931 (do_neon_dyadic_long): Make shape check accept the scalar variants.
3932 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
3933 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
3934 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
3935 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
3936 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
3937 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
3938 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
3940 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3942 * NEWS: Mention x86 assembler options for CVE-2020-0551.
3944 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3946 * testsuite/gas/i386/i386.exp: Run new tests.
3947 * testsuite/gas/i386/lfence-byte.d: New file.
3948 * testsuite/gas/i386/lfence-byte.e: Likewise.
3949 * testsuite/gas/i386/lfence-byte.s: Likewise.
3950 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
3951 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
3952 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
3953 * testsuite/gas/i386/lfence-indbr.e: Likewise.
3954 * testsuite/gas/i386/lfence-indbr.s: Likewise.
3955 * testsuite/gas/i386/lfence-load.d: Likewise.
3956 * testsuite/gas/i386/lfence-load.s: Likewise.
3957 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
3958 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
3959 * testsuite/gas/i386/lfence-ret.s: Likewise.
3960 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
3961 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
3962 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
3963 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
3964 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
3965 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
3966 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
3967 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
3968 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
3969 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
3970 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
3971 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
3973 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3975 * config/tc-i386.c (lfence_after_load): New.
3976 (lfence_before_indirect_branch_kind): New.
3977 (lfence_before_indirect_branch): New.
3978 (lfence_before_ret_kind): New.
3979 (lfence_before_ret): New.
3982 (insert_lfence_after): New.
3983 (insert_lfence_before): New.
3984 (md_assemble): Call insert_lfence_before and insert_lfence_after.
3986 (OPTION_MLFENCE_AFTER_LOAD): New.
3987 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
3988 (OPTION_MLFENCE_BEFORE_RET): New.
3989 (md_longopts): Add -mlfence-after-load=,
3990 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3991 (md_parse_option): Handle -mlfence-after-load=,
3992 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3993 (md_show_usage): Display -mlfence-after-load=,
3994 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
3995 (i386_cons_align): New.
3996 * config/tc-i386.h (i386_cons_align): New.
3997 (md_cons_align): New.
3998 * doc/c-i386.texi: Document -mlfence-after-load=,
3999 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
4001 2020-03-11 Nick Clifton <nickc@redhat.com>
4005 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
4006 (DWARF2_FILE_SIZE_NAME): Default to -1.
4007 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
4008 whichever is higher.
4009 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
4010 (NUM_MD5_BYTES): Define.
4011 (struct file entry): Add md5 field.
4012 (get_filenum): Delete and replace with...
4013 (get_basename): New function.
4014 (get_directory_table_entry): New function.
4015 (allocate_filenum): New function.
4016 (allocate_filename_to_slot): New function.
4017 (dwarf2_where): Use new functions.
4018 (dwarf2_directive_filename): Add support for extended .file
4020 (dwarf2_directive_loc): Allow the use of file number zero with
4022 (out_file_list): Rename to...
4023 (out_dir_and_file_list): Add DWARF 5 support.
4024 (out_debug_line): Emit extra values into the section header for
4026 (out_debug_str): Allow for file 0 to be used with DWARF 5.
4027 * doc/as.texi (.file): Update the description of this pseudo-op.
4028 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
4029 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
4030 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
4031 * NEWS: Mention the new feature.
4033 2020-03-10 Alan Modra <amodra@gmail.com>
4035 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
4036 to avoid signed overflow.
4037 * config/tc-mcore.c (md_assemble): Likewise.
4038 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
4039 * config/tc-nds32.c (SET_ADDEND): Likewise.
4040 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
4042 2020-03-09 Jan Beulich <jbeulich@suse.com>
4044 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
4045 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
4046 testsuite/gas/i386/avx-intel.d: Adjust expectations.
4048 2020-03-07 Alan Modra <amodra@gmail.com>
4050 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
4053 2020-03-06 Nick Clifton <nickc@redhat.com>
4056 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
4057 0 if the dwarf_level is 5 or more. Complain if a filename follows
4059 * testsuite/gas/elf/dwarf-5-file0.s: New test.
4060 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
4061 * testsuite/gas/elf/elf.exp: Run the new test.
4064 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
4065 * doc/as.texi: Fix another typo.
4067 2020-03-06 Nick Clifton <nickc@redhat.com>
4070 * as.c (dwarf_level): Define.
4071 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
4072 (parse_args): Add support for the new options.
4073 as.h (dwarf_level): Prototype.
4074 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
4076 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
4077 (DWARF2_LINE_VERSION): Remove definition.
4078 * doc/as.texi: Document the new options.
4080 2020-03-06 Nick Clifton <nickc@redhat.com>
4083 * as.c (main): Allow matching input and outputs when they are
4086 2020-03-06 Jan Beulich <jbeulich@suse.com>
4088 * config/tc-i386.c (match_mem_size): Generalize broadcast special
4090 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
4091 one of byte/word/dword/qword is set alongside a SIMD register in
4092 a template's operand.
4094 2020-03-06 Jan Beulich <jbeulich@suse.com>
4096 * config/tc-i386.c (match_template): Extend code in logic
4097 rejecting certain suffixes in certain modes to also cover mask
4098 register use and VecSIB. Drop special casing of broadcast. Skip
4099 immediates in the check.
4101 2020-03-06 Jan Beulich <jbeulich@suse.com>
4103 * config/tc-i386.c (match_template): Fold duplicate code in
4104 logic rejecting certain suffixes in certain modes. Drop
4107 2020-03-06 Jan Beulich <jbeulich@suse.com>
4109 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
4110 alongside !norex64 ones.
4111 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
4112 with both 32- and 64-bit GPR operands.
4113 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
4114 32- and 64-bit GPR operands.
4115 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
4116 testsuite/gas/i386/x86-64-avx512bw.d,
4117 testsuite/gas/i386/x86-64-avx512f-intel.d,
4118 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
4120 2020-03-06 Jan Beulich <jbeulich@suse.com>
4122 * config/tc-i386.c (md_assemble): Drop use of rex64.
4123 (process_suffix): For REX.W for 64-bit CRC32.
4125 2020-03-06 Jan Beulich <jbeulich@suse.com>
4127 * config/tc-i386.c (i386_addressing_mode): For 32-bit
4128 addressing for MPX insns without base/index.
4129 * testsuite/gas/i386/mpx-16bit.s,
4130 * testsuite/gas/i386/mpx-16bit.d: New.
4131 * testsuite/gas/i386/i386.exp: Run new test.
4133 2020-03-06 Jan Beulich <jbeulich@suse.com>
4135 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
4136 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
4137 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
4138 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
4139 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
4140 as well as a BSWAP one.
4141 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
4142 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
4143 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
4144 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
4145 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
4146 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
4147 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
4148 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
4149 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
4150 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
4151 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
4152 testsuite/gas/i386/vmx.d: Adjust expectations.
4154 2020-03-06 Jan Beulich <jbeulich@suse.com>
4156 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
4157 from having their operands swapped.
4158 * testsuite/gas/i386/waitpkg.s,
4159 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
4160 3-operand cases as well as testing of 16-bit code generation.
4161 * testsuite/gas/i386/waitpkg.d,
4162 testsuite/gas/i386/waitpkg-intel.d,
4163 testsuite/gas/i386/x86-64-waitpkg.d,
4164 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
4166 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
4168 * config/tc-riscv.c (percent_op_utype): Support the modifier
4170 * doc/c-riscv.texi: Add documentation.
4171 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
4172 modifier %got_pcrel_hi.
4173 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
4174 * testsuite/gas/riscv/relax-reloc.d: Likewise.
4175 * testsuite/gas/riscv/relax-reloc.s: Likewise.
4177 * doc/c-riscv.texi (relocation modifiers): Add documentation.
4178 (RISC-V-Formats): Update the section name from "Instruction Formats"
4179 to "RISC-V Instruction Formats".
4181 2020-03-04 Alexandre Oliva <oliva@adacore.com>
4183 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
4184 detected in a section which does not have at least 4 byte
4186 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
4187 * testsuite/gas/arm/ldr-t.s: Likewise.
4188 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
4189 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
4190 disassembly, ignoring any NOPs that may have been inserted because
4191 of section alignment.
4192 * testsuite/gas/arm/ldr-t.d: Likewise.
4194 2020-03-04 Jan Beulich <jbeulich@suse.com>
4196 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
4197 * doc/c-i386.texi: Mention sev_es.
4198 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
4199 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
4201 * testsuite/gas/i386/arch-13-znver1.d,
4202 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
4204 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
4206 * config/tc-i386.c (match_template): Replace ignoresize and
4207 defaultsize with mnemonicsize.
4208 (process_suffix): Likewise.
4210 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4213 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
4214 instruction LD IY,(HL).
4215 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
4216 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
4217 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
4218 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
4220 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
4223 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
4224 x86-64-default-suffix-avx.
4225 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
4226 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
4227 * testsuite/gas/i386/noreg64.d: Updated.
4228 * testsuite/gas/i386/noreg64.l: Likewise.
4229 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
4230 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
4231 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
4233 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4236 * config/tc-z80.c (contains_register): Prevent an illegal memory
4237 access when checking an expression for a register name.
4239 2020-03-03 Alan Modra <amodra@gmail.com>
4241 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
4244 2020-03-02 Alan Modra <amodra@gmail.com>
4246 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
4247 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
4249 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
4250 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
4251 (s3_s_score_lcomm): Likewise.
4252 * config/tc-score7.c: Similarly.
4253 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
4255 2020-02-28 YunQiang Su <syq@debian.org>
4258 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
4259 to handle multi-labels.
4260 (has_label_name): New.
4262 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
4264 * config/tc-arm.c (enum pred_instruction_type): Remove
4265 NEUTRAL_IT_NO_VPT_INSN predication type.
4266 (cxn_handle_predication): Modify to require condition suffixes.
4267 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
4268 * testsuite/gas/arm/cde-scalar.s: Update test.
4269 * testsuite/gas/arm/cde-warnings.l: Update test.
4270 * testsuite/gas/arm/cde-warnings.s: Update test.
4272 2020-02-26 Alan Modra <amodra@gmail.com>
4274 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
4275 N_() on empty string.
4277 2020-02-26 Alan Modra <amodra@gmail.com>
4279 * read.c (read_a_source_file): Call strncpy with length one
4280 less than size of original_case_string.
4282 2020-02-26 Alan Modra <amodra@gmail.com>
4284 * config/obj-elf.c: Indent labels correctly.
4285 * config/obj-macho.c: Likewise.
4286 * config/tc-aarch64.c: Likewise.
4287 * config/tc-alpha.c: Likewise.
4288 * config/tc-arm.c: Likewise.
4289 * config/tc-cr16.c: Likewise.
4290 * config/tc-crx.c: Likewise.
4291 * config/tc-frv.c: Likewise.
4292 * config/tc-i386-intel.c: Likewise.
4293 * config/tc-i386.c: Likewise.
4294 * config/tc-ia64.c: Likewise.
4295 * config/tc-mn10200.c: Likewise.
4296 * config/tc-mn10300.c: Likewise.
4297 * config/tc-nds32.c: Likewise.
4298 * config/tc-riscv.c: Likewise.
4299 * config/tc-s12z.c: Likewise.
4300 * config/tc-xtensa.c: Likewise.
4301 * config/tc-z80.c: Likewise.
4303 * symbols.c: Likewise.
4304 * write.c: Likewise.
4306 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
4308 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
4309 we are assembling instruction with CSR. Call riscv_csr_read_only_check
4310 after parsing all arguments.
4311 (enum csr_insn_type): New enum is used to classify the CSR instruction.
4312 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
4313 are used to check if we write a read-only CSR by the CSR instruction.
4314 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
4315 all CSR for the read-only CSR checking.
4316 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
4317 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
4318 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
4319 all CSR instructions for the read-only CSR checking.
4320 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
4321 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
4323 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
4324 (riscv_opts): Initialize it.
4325 (reg_lookup_internal): Check the `riscv_opts.csr_check`
4326 before doing the CSR checking.
4327 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
4328 (md_longopts): Add mcsr-check and mno-csr-check.
4329 (md_parse_option): Handle new enum option values.
4330 (s_riscv_option): Handle new long options.
4331 * doc/c-riscv.texi: Add description for the new .option and assembler
4333 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
4335 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
4337 * config/tc-riscv.c (csr_extra_hash): New.
4338 (enum riscv_csr_class): New enum. Used to decide
4339 whether or not this CSR is legal in the current ISA string.
4340 (struct riscv_csr_extra): New structure to hold all extra information
4342 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
4343 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
4344 Call hash_reg_name to insert CSR address into reg_names_hash.
4345 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
4346 Decide whether the CSR is valid according to the csr_extra_hash.
4347 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
4348 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
4349 not a boolean. This is same as riscv_init_csr_hash, so keep the
4351 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
4352 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
4353 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
4354 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
4355 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
4356 f-ext CSR are not allowed.
4357 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
4358 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
4359 source file is `priv-reg.s`, and the ISA is rv64if, so the
4360 rv32-only CSR are not allowed.
4361 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
4363 2020-02-21 Alan Modra <amodra@gmail.com>
4365 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
4366 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
4368 2020-02-21 Alan Modra <amodra@gmail.com>
4371 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
4372 on section size adjustment, instead perform another write if
4373 exec header size is larger than section size.
4375 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
4377 * doc/c-riscv.texi: Add the doc entries for -march-attr/
4378 -mno-arch-attr command line options.
4380 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
4382 * testsuite/gas/riscv/c-add-addi.d: New testcase.
4383 * testsuite/gas/riscv/c-add-addi.s: Likewise.
4385 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
4388 * config/tc-z80.c (md_parse_option): Do not use an underscore
4389 prefix for local labels in SDCC compatability mode.
4390 (z80_start_line_hook): Remove SDCC dollar label support.
4391 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
4392 * testsuite/gas/z80/sdcc.s: Likewise.
4394 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
4397 * config/tc-z80.c: Add -march option.
4398 * doc/as.texi: Update Z80 documentation.
4399 * doc/c-z80.texi: Likewise.
4400 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
4401 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
4402 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
4403 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
4404 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
4405 * testsuite/gas/z80/gbz80_all.d: Likewise.
4406 * testsuite/gas/z80/r800_extra.d: Likewise.
4407 * testsuite/gas/z80/r800_ii8.d: Likewise.
4408 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
4409 * testsuite/gas/z80/sdcc.d: Likewise.
4410 * testsuite/gas/z80/z180.d: Likewise.
4411 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
4412 * testsuite/gas/z80/z80_doc.d: Likewise.
4413 * testsuite/gas/z80/z80_ii8.d: Likewise.
4414 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
4415 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
4416 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
4417 * testsuite/gas/z80/z80_sli.d: Likewise.
4418 * testsuite/gas/z80/z80n_all.d: Likewise.
4419 * testsuite/gas/z80/z80n_reloc.d: Likewise.
4421 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
4423 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
4424 with GNU_PROPERTY_X86_FEATURE_2_MMX.
4425 * testsuite/gas/i386/i386.exp: Run property-3 and
4427 * testsuite/gas/i386/property-3.d: New file.
4428 * testsuite/gas/i386/property-3.s: Likewise.
4429 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
4431 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
4433 * config/tc-i386.c (cpu_arch): Add .popcnt.
4434 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
4435 Add a tab before @samp{.sse4a}.
4437 2020-02-17 Jan Beulich <jbeulich@suse.com>
4439 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
4440 for AddrPrefixOpReg templates. Combine the two pieces of
4441 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
4444 2020-02-17 Jan Beulich <jbeulich@suse.com>
4447 * config/tc-i386.c (md_assemble): Also suppress operand
4448 swapping for MONITOR{,X} and MWAIT{,X}.
4449 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
4450 Add Intel syntax monitor/mwait tests.
4451 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
4452 Adjust expectations.
4453 *testsuite/gas/i386/sse3-intel.d,
4454 testsuite/gas/i386/x86-64-sse3-intel.d: New.
4455 * testsuite/gas/i386/i386.exp: Run new tests.
4457 2020-02-17 Jan Beulich <jbeulich@suse.com>
4460 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
4461 [XYZ]MMWord memory operand ambiguity recognition logic (largely
4463 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
4465 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
4466 * testsuite/gas/i386/avx512dq-inval.l,
4467 testsuite/gas/i386/inval-avx.l,
4468 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
4469 * testsuite/gas/i386/avx512vl-ambig.s,
4470 testsuite/gas/i386/avx512vl-ambig.l: New.
4471 * testsuite/gas/i386/i386.exp: Run new test.
4473 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
4475 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
4477 * doc/c-i386.texi: Document sse4a and nosse4a.
4479 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
4481 * doc/c-i386.texi: Remove the old movsx and movzx documentation
4484 2020-02-14 Jan Beulich <jbeulich@suse.com>
4487 * config/tc-i386.c (md_assemble): Move movsx/movzx special
4489 (process_suffix): ... here. Consider just the first operand
4491 (check_long_reg): Drop opcode 0x63 special case again.
4492 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
4493 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
4494 Move ambiguous operand size tests ...
4495 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4496 testsuite/gas/i386/noreg64.s: ... here.
4497 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
4498 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
4499 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
4500 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
4501 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
4502 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
4503 testsuite/gas/i386/x86-64-movsxd.d,
4504 testsuite/gas/i386/x86-64-movsxd-intel.d,
4505 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
4506 Adjust expectations.
4507 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
4508 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
4509 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
4510 * testsuite/gas/i386/i386.exp: Run new tests.
4512 2020-02-14 Jan Beulich <jbeulich@suse.com>
4514 * config/tc-i386.c (process_operands): Also skip segment
4515 override prefix emission if it matches an already present one.
4516 * testsuite/gas/i386/prefix32.s: Add double segment override
4518 * testsuite/gas/i386/prefix32.l: Adjust expectations.
4520 2020-02-14 Jan Beulich <jbeulich@suse.com>
4522 * config/tc-i386.c (process_operands): Drop ineffectual segment
4523 overrides when optimizing.
4524 * testsuite/gas/i386/lea-optimize.d: New.
4525 * testsuite/gas/i386/i386.exp: Run new test.
4527 2020-02-14 Jan Beulich <jbeulich@suse.com>
4529 * config/tc-i386.c (process_operands): Also check insn prefix
4530 for ineffectual segment override warning. Don't cover possible
4531 VEX/EVEX encoded insns there.
4532 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
4533 testsuite/gas/i386/lea.e: New.
4534 * testsuite/gas/i386/i386.exp: Run new test.
4536 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
4539 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
4542 2020-02-13 Fangrui Song <maskray@google.com>
4543 H.J. Lu <hongjiu.lu@intel.com>
4546 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
4547 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
4548 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
4549 * testsuite/gas/i386/relax-5.d: New file.
4550 * testsuite/gas/i386/relax-5.s: Likewise.
4551 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
4552 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
4554 2020-02-13 Jan Beulich <jbeulich@suse.com>
4556 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
4559 2020-02-12 Jan Beulich <jbeulich@suse.com>
4561 * config/tc-i386.c (avx512): New (at file scope), moved from
4562 (check_VecOperands): ... here.
4563 (process_suffix): Add [XYZ]MMword operand size handling.
4564 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
4565 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
4567 * testsuite/gas/i386/avx512dq-inval.l,
4568 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
4570 2020-02-12 Jan Beulich <jbeulich@suse.com>
4573 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
4575 * config/tc-i386-intel.c (i386_intel_operand): Also handle
4576 CALL/JMP in O_tbyte_ptr case.
4577 * doc/c-i386.texi: Mention far call and full pointer load ISA
4579 * testsuite/gas/i386/x86-64-branch-3.s,
4580 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
4581 * testsuite/gas/i386/x86-64-branch-3.d,
4582 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
4583 * testsuite/gas/i386/x86-64-branch-5.l,
4584 testsuite/gas/i386/x86-64-branch-5.s: New.
4585 * testsuite/gas/i386/i386.exp: Run new test.
4587 2020-02-12 Jan Beulich <jbeulich@suse.com>
4590 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
4591 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
4592 64-bit-only warning.
4593 (check_word_reg): Consistently error on mismatching register
4595 * testsuite/gas/i386/general.s: Replace dword GPR with word one
4596 for movw. Replace suffix / GPR for orb.
4597 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
4598 byte GPRs as well as ones for inb/outb with a word accumulator.
4599 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
4600 testsuite/gas/i386/inval.l: Adjust expectations.
4602 2020-02-12 Jan Beulich <jbeulich@suse.com>
4604 * config/tc-i386.c (operand_type_register_match): Also fall
4605 through initial two if()-s when the template allows for a GPR
4606 operand. Adjust comment.
4608 2020-02-11 Jan Beulich <jbeulich@suse.com>
4610 (struct _i386_insn): New field "short_form".
4611 (optimize_encoding): Drop setting of shortform field.
4612 (process_suffix): Set i.short_form. Replace shortform use.
4613 (process_operands): Replace shortform use.
4615 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
4617 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
4618 loop initial declaration.
4620 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
4622 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
4623 instructions that can have 5 arguments.
4624 (enum operand_parse_code): Add new operands.
4625 (parse_operands): Account for new operands.
4627 (enum neon_shape_el): Introduce P suffixes for coprocessor.
4628 (neon_select_shape): Account for P suffix.
4629 (LOW1): Move macro to global position.
4630 (HI4): Move macro to global position.
4631 (vcx_assign_vec_d): New.
4632 (vcx_assign_vec_m): New.
4633 (vcx_assign_vec_n): New.
4634 (enum vcx_reg_type): New.
4635 (vcx_get_reg_type): New.
4636 (vcx_size_pos): New.
4638 (vcx_handle_shape): New.
4639 (vcx_ensure_register_in_range): New.
4640 (vcx_handle_register_arguments): New.
4641 (vcx_handle_insn_block): New.
4642 (vcx_handle_common_checks): New.
4646 * testsuite/gas/arm/cde-missing-fp.d: New test.
4647 * testsuite/gas/arm/cde-missing-fp.l: New test.
4648 * testsuite/gas/arm/cde-missing-mve.d: New test.
4649 * testsuite/gas/arm/cde-missing-mve.l: New test.
4650 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
4651 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
4652 * testsuite/gas/arm/cde-mve.s: New test.
4653 * testsuite/gas/arm/cde-warnings.l:
4654 * testsuite/gas/arm/cde-warnings.s:
4655 * testsuite/gas/arm/cde.d:
4656 * testsuite/gas/arm/cde.s:
4658 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
4659 Matthew Malcomson <matthew.malcomson@arm.com>
4661 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
4662 CDE coprocessor that can be enabled.
4663 (enum pred_instruction_type): New pred type.
4664 (BAD_NO_VPT): New error message.
4665 (BAD_CDE): New error message.
4666 (BAD_CDE_COPROC): New error message.
4667 (enum operand_parse_code): Add new immediate operands.
4668 (parse_operands): Account for new immediate operands.
4669 (check_cde_operand): New.
4670 (cde_coproc_enabled): New.
4671 (cde_coproc_pos): New.
4672 (cde_handle_coproc): New.
4673 (cxn_handle_predication): New.
4674 (do_custom_instruction_1): New.
4675 (do_custom_instruction_2): New.
4676 (do_custom_instruction_3): New.
4689 (handle_pred_state): Define new IT block behaviour.
4690 (insns): Add newn CX*{,d}{,a} instructions.
4691 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
4692 Define new cdecp extension strings.
4693 * doc/c-arm.texi: Document new cdecp extension arguments.
4694 * testsuite/gas/arm/cde-scalar.d: New test.
4695 * testsuite/gas/arm/cde-scalar.s: New test.
4696 * testsuite/gas/arm/cde-warnings.d: New test.
4697 * testsuite/gas/arm/cde-warnings.l: New test.
4698 * testsuite/gas/arm/cde-warnings.s: New test.
4699 * testsuite/gas/arm/cde.d: New test.
4700 * testsuite/gas/arm/cde.s: New test.
4702 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
4705 * config/tc-i386.c (intel64): Renamed to ...
4707 (match_template): Accept Intel64 only instruction by default.
4708 (i386_displacement): Updated.
4709 (md_parse_option): Updated.
4710 * c-i386.texi: Update -mamd64/-mintel64 documentation.
4711 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
4712 -mamd64 to x86-64-sysenter-amd.
4713 * testsuite/gas/i386/x86-64-sysenter.d: New file.
4715 2020-02-10 Alan Modra <amodra@gmail.com>
4717 * config/obj-elf.c (obj_elf_change_section): Error for section
4718 type, attr or entsize changes in assembly.
4719 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
4720 * testsuite/gas/elf/section5.l: Update.
4722 2020-02-10 Alan Modra <amodra@gmail.com>
4724 * output-file.c (output_file_close): Do a normal close when
4725 flag_always_generate_output.
4726 * write.c (write_object_file): Don't stop output when
4727 flag_always_generate_output.
4729 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
4732 * config/tc-z80.c: Add -gbz80 command line option to generate code
4733 for the GameBoy Z80. Add support for generating DWARF.
4734 * config/tc-z80.h: Add support for DWARF debug information
4736 * doc/c-z80.texi: Document new command line option.
4737 * testsuite/gas/z80/gbz80_all.d: New file.
4738 * testsuite/gas/z80/gbz80_all.s: New file.
4739 * testsuite/gas/z80/z80.exp: Run the new tests.
4740 * testsuite/gas/z80/z80n_all.d: New file.
4741 * testsuite/gas/z80/z80n_all.s: New file.
4742 * testsuite/gas/z80/z80n_reloc.d: New file.
4744 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4747 * config/obj-elf.c (get_section): Also check
4748 linked_to_symbol_name.
4749 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
4750 (obj_elf_parse_section_letters): Handle the 'o' flag.
4751 (build_group_lists): Renamed to ...
4752 (build_additional_section_info): This. Set elf_linked_to_section
4753 from map_head.linked_to_symbol_name.
4754 (elf_adjust_symtab): Updated.
4755 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
4756 * doc/as.texi: Document the 'o' flag.
4757 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
4758 * testsuite/gas/elf/section18.d: New file.
4759 * testsuite/gas/elf/section18.s: Likewise.
4760 * testsuite/gas/elf/section19.d: Likewise.
4761 * testsuite/gas/elf/section19.s: Likewise.
4762 * testsuite/gas/elf/section20.d: Likewise.
4763 * testsuite/gas/elf/section20.s: Likewise.
4764 * testsuite/gas/elf/section21.d: Likewise.
4765 * testsuite/gas/elf/section21.l: Likewise.
4766 * testsuite/gas/elf/section21.s: Likewise.
4768 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4770 * NEWS: Mention x86 assembler options to align branches for
4773 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
4775 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
4776 only for ELF targets.
4777 * testsuite/gas/i386/unique.d: Don't xfail.
4778 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4780 2020-02-06 Alan Modra <amodra@gmail.com>
4782 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
4783 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4785 2020-02-06 Alan Modra <amodra@gmail.com>
4787 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
4788 xfail, and rename test.
4789 * testsuite/gas/elf/section12b.d: Likewise.
4790 * testsuite/gas/elf/section16a.d: Likewise.
4791 * testsuite/gas/elf/section16b.d: Likewise.
4793 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4796 * config/obj-elf.c (section_match): Removed.
4797 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
4799 (obj_elf_change_section): Replace info and group_name arguments
4800 with match_p. Also update the section ID and flags from match_p.
4801 (obj_elf_section): Handle "unique,N". Update call to
4802 obj_elf_change_section.
4803 * config/obj-elf.h (elf_section_match): New.
4804 (obj_elf_change_section): Updated.
4805 * config/tc-arm.c (start_unwind_section): Update call to
4806 obj_elf_change_section.
4807 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
4808 * config/tc-microblaze.c (microblaze_s_data): Likewise.
4809 (microblaze_s_sdata): Likewise.
4810 (microblaze_s_rdata): Likewise.
4811 (microblaze_s_bss): Likewise.
4812 * config/tc-mips.c (s_change_section): Likewise.
4813 * config/tc-msp430.c (msp430_profiler): Likewise.
4814 * config/tc-rx.c (parse_rx_section): Likewise.
4815 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
4816 * doc/as.texi: Document "unique,N" in .section directive.
4817 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
4818 * testsuite/gas/elf/section15.d: New file.
4819 * testsuite/gas/elf/section15.s: Likewise.
4820 * testsuite/gas/elf/section16.s: Likewise.
4821 * testsuite/gas/elf/section16a.d: Likewise.
4822 * testsuite/gas/elf/section16b.d: Likewise.
4823 * testsuite/gas/elf/section17.d: Likewise.
4824 * testsuite/gas/elf/section17.l: Likewise.
4825 * testsuite/gas/elf/section17.s: Likewise.
4826 * testsuite/gas/i386/unique.d: Likewise.
4827 * testsuite/gas/i386/unique.s: Likewise.
4828 * testsuite/gas/i386/x86-64-unique.d: Likewise.
4829 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
4831 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
4833 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
4835 2020-02-01 Anthony Green <green@moxielogic.com>
4837 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
4839 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
4841 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
4844 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
4847 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
4848 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
4850 * testsuite/gas/arm/mve_dsp.d: New test.
4852 2020-01-31 Nick Clifton <nickc@redhat.com>
4854 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
4855 rather than BFD_RELOC_NONE.
4857 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4859 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
4860 to support VLDMIA instruction for MVE.
4861 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
4862 instruction for MVE.
4863 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
4864 instruction for MVE.
4865 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
4866 instruction for MVE.
4867 * testsuite/gas/arm/mve-ldst.d: New test.
4868 * testsuite/gas/arm/mve-ldst.s: Likewise.
4870 2020-01-31 Nick Clifton <nickc@redhat.com>
4872 * po/fr.po: Updated French translation.
4873 * po/ru.po: Updated Russian translation.
4875 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
4877 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
4879 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
4880 * testsuite/gas/aarch64/sve-movprfx_28.d,
4881 * testsuite/gas/aarch64/sve-movprfx_28.l,
4882 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
4884 2020-01-30 Jan Beulich <jbeulich@suse.com>
4886 * config/tc-i386.c (output_disp): Tighten base_opcode check.
4887 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
4888 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
4889 Adjust expectations.
4891 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
4893 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
4894 * testsuite/gas/bpf/alu-be.d: Likewise.
4895 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
4896 * testsuite/gas/bpf/alu32-be.d: Likewise.
4898 2020-01-30 Jan Beulich <jbeulich@suse.com>
4900 * testsuite/gas/i386/x86-64-branch-2.s,
4901 testsuite/gas/i386/x86-64-branch-4.s,
4902 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
4903 * testsuite/gas/i386/ilp32/x86-64-branch.d,
4904 testsuite/gas/i386/x86-64-branch-2.d,
4905 testsuite/gas/i386/x86-64-branch-4.l,
4906 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
4908 2020-01-30 Jan Beulich <jbeulich@suse.com>
4910 * config/tc-i386.c (process_suffix): .
4911 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
4912 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
4914 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
4916 testsuite/gas/i386/x86_64.s: Add RETF cases.
4917 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
4918 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
4919 testsuite/gas/i386/x86-64-opcode.d,
4920 testsuite/gas/i386/x86-64-suffix-intel.d,
4921 testsuite/gas/i386/x86-64-suffix.d,
4922 testsuite/gas/i386/x86_64-intel.d
4923 testsuite/gas/i386/x86_64.d: Adjust expectations.
4924 * testsuite/gas/i386/x86-64-suffix.e,
4925 testsuite/gas/i386/x86_64.e: New.
4927 2020-01-30 Jan Beulich <jbeulich@suse.com>
4929 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
4932 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
4935 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
4937 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
4938 differences. Document movslq and movsxd.
4939 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
4940 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
4941 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
4942 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
4943 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
4944 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
4945 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
4946 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
4947 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
4948 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
4949 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
4951 2020-01-27 Alan Modra <amodra@gmail.com>
4953 * testsuite/gas/all/gas.exp: Replace case statements with switch
4955 * testsuite/gas/elf/elf.exp: Likewise.
4956 * testsuite/gas/macros/macros.exp: Likewise.
4957 * testsuite/lib/gas-defs.exp: Likewise.
4959 2020-01-27 Tamar Christina <tamar.christina@arm.com>
4962 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
4963 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
4965 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
4967 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
4968 s exts must be known, so rename *ok* to *fail*.
4969 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
4970 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
4971 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
4973 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
4974 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
4976 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
4979 * config/tc-i386.c (check_long_reg): Always disallow double word
4980 suffix in mnemonic with word general register.
4981 * testsuite/gas/i386/general.s: Replace word general register
4982 with double word general register for movl.
4983 * testsuite/gas/i386/inval.s: Add tests for movl with word general
4985 * testsuite/gas/i386/general.l: Updated.
4986 * testsuite/gas/i386/inval.l: Likewise.
4988 2020-01-22 Alan Modra <amodra@gmail.com>
4990 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
4991 __tls_get_addr_desc and __tls_get_addr_opt.
4993 2020-01-21 Jan Beulich <jbeulich@suse.com>
4995 * testsuite/gas/i386/inval-crc32.s,
4996 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
4997 * testsuite/gas/i386/inval-crc32.l,
4998 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
5000 2020-01-21 Jan Beulich <jbeulich@suse.com>
5002 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
5003 generic code path. Deal with No_lSuf being set in a template.
5004 * testsuite/gas/i386/inval-crc32.l,
5005 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
5006 instead of error(s) when operand size is ambiguous.
5007 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
5008 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
5009 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
5010 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
5011 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
5012 Adjust expectations.
5014 2020-01-21 Jan Beulich <jbeulich@suse.com>
5016 * config/tc-i386.c (process_suffix): Drop SYSRET special case
5017 and an intel_syntax check. Re-write lack-of-suffix processing
5019 * doc/c-i386.texi: Document operand size defaults for suffix-
5020 less AT&T syntax insns.
5021 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
5022 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
5023 testsuite/gas/i386/x86-64-avx-scalar.s,
5024 testsuite/gas/i386/x86-64-avx.s,
5025 testsuite/gas/i386/x86-64-bundle.s,
5026 testsuite/gas/i386/x86-64-intel64.s,
5027 testsuite/gas/i386/x86-64-lock-1.s,
5028 testsuite/gas/i386/x86-64-opcode.s,
5029 testsuite/gas/i386/x86-64-sse2avx.s,
5030 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
5031 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
5032 testsuite/gas/i386/x86-64-nops.s,
5033 testsuite/gas/i386/x86-64-ptwrite.s,
5034 testsuite/gas/i386/x86-64-simd.s,
5035 testsuite/gas/i386/x86-64-sse-noavx.s,
5036 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
5038 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
5039 testsuite/gas/i386/noreg64.s: Add further tests.
5040 * testsuite/gas/i386/ilp32/x86-64-nops.d,
5041 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
5042 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
5043 testsuite/gas/i386/sse-noavx.d,
5044 testsuite/gas/i386/x86-64-intel64.d,
5045 testsuite/gas/i386/x86-64-nops.d,
5046 testsuite/gas/i386/x86-64-opcode.d,
5047 testsuite/gas/i386/x86-64-ptwrite-intel.d,
5048 testsuite/gas/i386/x86-64-ptwrite.d,
5049 testsuite/gas/i386/x86-64-simd-intel.d,
5050 testsuite/gas/i386/x86-64-simd-suffix.d,
5051 testsuite/gas/i386/x86-64-simd.d,
5052 testsuite/gas/i386/x86-64-sse-noavx.d
5053 testsuite/gas/i386/x86-64-suffix.d,
5054 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
5055 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
5056 testsuite/gas/i386/noreg64.l: New.
5057 * testsuite/gas/i386/i386.exp: Run new tests.
5059 2020-01-21 Jan Beulich <jbeulich@suse.com>
5061 * testsuite/gas/i386/avx512_bf16_vl.s,
5062 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
5063 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
5064 broadcast forms of VCVTNEPS2BF16.
5065 * testsuite/gas/i386/avx512_bf16_vl.d,
5066 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
5068 2020-01-20 Nick Clifton <nickc@redhat.com>
5070 * po/uk.po: Updated Ukranian translation.
5072 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
5075 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
5076 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
5078 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
5079 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
5080 R_X86_64_GOTPC32_TLSDESC relocation.
5082 2020-01-18 Nick Clifton <nickc@redhat.com>
5084 * configure: Regenerate.
5085 * po/gas.pot: Regenerate.
5087 2020-01-18 Nick Clifton <nickc@redhat.com>
5089 Binutils 2.34 branch created.
5091 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
5093 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
5094 with vex_encoding_vex.
5095 (parse_insn): Likewise.
5096 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
5097 and {vex3} documentation.
5098 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
5100 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
5102 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
5105 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
5106 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
5107 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
5108 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
5109 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
5110 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
5112 2020-01-16 Jan Beulich <jbeulich@suse.com>
5114 * config/tc-i386.c (match_template): Drop found_cpu_match local
5117 2020-01-16 Jan Beulich <jbeulich@suse.com>
5119 * testsuite/gas/i386/avx512dq-inval.l,
5120 testsuite/gas/i386/avx512dq-inval.s: New.
5121 * testsuite/gas/i386/i386.exp: Run new test.
5123 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
5125 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
5126 relocations when the target is 430X, except when extracting part of an
5128 (msp430_srcoperand): Adjust comment.
5129 Initialize the expp member of the msp430_operand_s struct as
5131 (msp430_dstoperand): Likewise.
5132 * testsuite/gas/msp430/msp430.exp: Run new test.
5133 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
5134 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
5136 2020-01-15 Alan Modra <amodra@gmail.com>
5138 * configure.tgt: Add sparc-*-freebsd case.
5140 2020-01-14 Lili Cui <lili.cui@intel.com>
5142 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
5143 * testsuite/gas/i386/align-branch-1b.d: Likewise.
5144 * testsuite/gas/i386/align-branch-1c.d: Likewise.
5145 * testsuite/gas/i386/align-branch-1d.d: Likewise.
5146 * testsuite/gas/i386/align-branch-1e.d: Likewise.
5147 * testsuite/gas/i386/align-branch-1f.d: Likewise.
5148 * testsuite/gas/i386/align-branch-1g.d: Likewise.
5149 * testsuite/gas/i386/align-branch-1h.d: Likewise.
5150 * testsuite/gas/i386/align-branch-1i.d: Likewise.
5151 * testsuite/gas/i386/align-branch-5.d: Likewise.
5152 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
5153 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
5154 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
5155 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
5156 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
5157 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
5158 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
5159 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
5160 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
5161 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
5162 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
5163 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
5165 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
5168 * config/tc-z80.c: Add support for half precision, single
5169 precision and double precision floating point values.
5170 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
5171 * doc/as.texi: Add new z80 command line options.
5172 * doc/c-z80.texi: Document new z80 command line options.
5173 * testsuite/gas/z80/ez80_pref_dis.s: New test.
5174 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
5175 * testsuite/gas/z80/z80.exp: Run the new test.
5176 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
5177 * testsuite/gas/z80/fp_zeda32.d: Likewise.
5178 * testsuite/gas/z80/strings.d: Update expected output.
5180 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
5182 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
5185 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
5187 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
5189 * config/tc-arc.h: Add header if/defs.
5190 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
5192 2020-01-13 Alan Modra <amodra@gmail.com>
5194 * testsuite/gas/wasm32/allinsn.d: Update expected output.
5196 2020-01-13 Alan Modra <amodra@gmail.com>
5198 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
5201 2020-01-10 Alan Modra <amodra@gmail.com>
5203 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
5204 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
5206 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
5209 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
5211 (emit_ld_r_r): Likewise.
5212 (emit_ld_rr_m): Likewise.
5213 (emit_ld_rr_nn): Likewise.
5215 2020-01-09 Jan Beulich <jbeulich@suse.com>
5217 * config/tc-i386.c (optimize_encoding): Add
5218 is_any_vex_encoding() invocations. Drop respective
5219 i.tm.extension_opcode == None checks.
5221 2020-01-09 Jan Beulich <jbeulich@suse.com>
5223 * config/tc-i386.c (md_assemble): Check RegRex is clear during
5224 REX transformations. Correct comment indentation.
5226 2020-01-09 Jan Beulich <jbeulich@suse.com>
5228 * config/tc-i386.c (optimize_encoding): Generalize register
5229 transformation for TEST optimization.
5231 2020-01-09 Jan Beulich <jbeulich@suse.com>
5233 * testsuite/gas/i386/x86-64-sysenter-amd.s,
5234 testsuite/gas/i386/x86-64-sysenter-amd.d,
5235 testsuite/gas/i386/x86-64-sysenter-amd.l,
5236 testsuite/gas/i386/x86-64-sysenter-intel.d,
5237 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
5238 * testsuite/gas/i386/i386.exp: Run new tests.
5240 2020-01-08 Nick Clifton <nickc@redhat.com>
5243 * doc/as.texi (Align): Document the fact that all arguments can be
5246 (P2align): Likewise.
5248 2020-01-08 Nick Clifton <nickc@redhat.com>
5251 * config/obj-elf.c (obj_elf_section): Fail if the section name is
5252 already defined as a different symbol type.
5253 * testsuite/gas/elf/pr14891.s: New test source file.
5254 * testsuite/gas/elf/pr14891.d: New test driver.
5255 * testsuite/gas/elf/pr14891.s: New test expected error output.
5256 * testsuite/gas/elf/elf.exp: Run the new test.
5258 2020-01-08 Alan Modra <amodra@gmail.com>
5260 * config/tc-z8k.c (md_begin): Make idx unsigned.
5261 (get_specific): Likewise for this_index.
5263 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
5265 * onfig/tc-arc.c (parse_reloc_symbol): New function.
5266 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
5267 (md_operand): Set X_md to absent.
5268 (arc_parse_name): Check for X_md.
5270 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
5273 * as.h (TC_STRING_ESCAPES): Provide a default definition.
5274 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
5276 * read.c (next_char_of_string): Likewise.
5277 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
5278 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
5280 2020-01-03 Nick Clifton <nickc@redhat.com>
5282 * po/sv.po: Updated Swedish translation.
5284 2020-01-03 Jan Beulich <jbeulich@suse.com>
5286 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
5287 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
5289 2020-01-03 Jan Beulich <jbeulich@suse.com>
5291 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
5292 by-element usdot. Add 64-bit form tests for by-element sudot.
5293 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
5295 2020-01-03 Jan Beulich <jbeulich@suse.com>
5297 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
5298 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
5300 2020-01-03 Jan Beulich <jbeulich@suse.com>
5302 * testsuite/gas/aarch64/f64mm.d,
5303 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
5305 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
5307 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
5308 support for assembler code generated by SDCC. Add new relocation
5309 types. Add z80-elf target support.
5310 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
5311 labels. Local labels starts from ".L".
5312 * NEWS: Mention the new support.
5313 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
5314 * testsuite/gas/all/fwdexp.s: Likewise.
5315 * testsuite/gas/all/cond.l: Likewise.
5316 * testsuite/gas/all/cond.s: Likewise.
5317 * testsuite/gas/all/fwdexp.d: Likewise.
5318 * testsuite/gas/all/fwdexp.s: Likewise.
5319 * testsuite/gas/elf/section2.e-mips: Likewise.
5320 * testsuite/gas/elf/section2.l: Likewise.
5321 * testsuite/gas/elf/section2.s: Likewise.
5322 * testsuite/gas/macros/app1.d: Likewise.
5323 * testsuite/gas/macros/app1.s: Likewise.
5324 * testsuite/gas/macros/app2.d: Likewise.
5325 * testsuite/gas/macros/app2.s: Likewise.
5326 * testsuite/gas/macros/app3.d: Likewise.
5327 * testsuite/gas/macros/app3.s: Likewise.
5328 * testsuite/gas/macros/app4.d: Likewise.
5329 * testsuite/gas/macros/app4.s: Likewise.
5330 * testsuite/gas/macros/app4b.s: Likewise.
5331 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
5332 * testsuite/gas/z80/z80.exp: Add new tests
5333 * testsuite/gas/z80/dollar.d: New file.
5334 * testsuite/gas/z80/dollar.s: New file.
5335 * testsuite/gas/z80/ez80_adl_all.d: New file.
5336 * testsuite/gas/z80/ez80_adl_all.s: New file.
5337 * testsuite/gas/z80/ez80_adl_suf.d: New file.
5338 * testsuite/gas/z80/ez80_isuf.s: New file.
5339 * testsuite/gas/z80/ez80_z80_all.d: New file.
5340 * testsuite/gas/z80/ez80_z80_all.s: New file.
5341 * testsuite/gas/z80/ez80_z80_suf.d: New file.
5342 * testsuite/gas/z80/r800_extra.d: New file.
5343 * testsuite/gas/z80/r800_extra.s: New file.
5344 * testsuite/gas/z80/r800_ii8.d: New file.
5345 * testsuite/gas/z80/r800_z80_doc.d: New file.
5346 * testsuite/gas/z80/z180.d: New file.
5347 * testsuite/gas/z80/z180.s: New file.
5348 * testsuite/gas/z80/z180_z80_doc.d: New file.
5349 * testsuite/gas/z80/z80_doc.d: New file.
5350 * testsuite/gas/z80/z80_doc.s: New file.
5351 * testsuite/gas/z80/z80_ii8.d: New file.
5352 * testsuite/gas/z80/z80_ii8.s: New file.
5353 * testsuite/gas/z80/z80_in_f_c.d: New file.
5354 * testsuite/gas/z80/z80_in_f_c.s: New file.
5355 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
5356 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
5357 * testsuite/gas/z80/z80_out_c_0.d: New file.
5358 * testsuite/gas/z80/z80_out_c_0.s: New file.
5359 * testsuite/gas/z80/z80_reloc.d: New file.
5360 * testsuite/gas/z80/z80_reloc.s: New file.
5361 * testsuite/gas/z80/z80_sli.d: New file.
5362 * testsuite/gas/z80/z80_sli.s: New file.
5364 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
5366 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
5369 2020-01-01 Alan Modra <amodra@gmail.com>
5371 Update year range in copyright notice of all files.
5373 For older changes see ChangeLog-2019
5375 Copyright (C) 2020 Free Software Foundation, Inc.
5377 Copying and distribution of this file, with or without modification,
5378 are permitted in any medium without royalty provided the copyright
5379 notice and this notice are preserved.
5385 version-control: never