1 2020-05-06 Nick Clifton <nickc@redhat.com>
4 * doc/as.texi (Preprocessing): Replace cross reference to not
5 existant document with a URL to the equivalent page in the GCC
8 2020-05-05 Nick Clifton <nickc@redhat.com>
10 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
11 construction of a DWARF-5 directory name table.
12 * testsuite/gas/elf/pr25917.d: Update expected output.
14 2020-05-05 Gunther Nikl <gnikl@justmail.de>
16 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
17 (md_parse_option): Remove initialization of elf_flags.
19 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
22 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
23 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
24 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
26 2020-05-04 Nick Clifton <nickc@redhat.com>
29 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
30 table's existence before looking at its entries.
31 Also do not emit a default directory entry if there are no
34 * testsuite/gas/elf/pr25917.s: New test source file.
35 * testsuite/gas/elf/pr25917.d: New test driver.
36 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
38 2020-04-30 Alex Coplan <alex.coplan@arm.com>
40 * config/tc-aarch64.c (fix_insn): Implement for
41 AARCH64_OPND_UNDEFINED.
42 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
43 * testsuite/gas/aarch64/udf.s: New.
44 * testsuite/gas/aarch64/udf.d: New.
45 * testsuite/gas/aarch64/udf-invalid.s: New.
46 * testsuite/gas/aarch64/udf-invalid.l: New.
47 * testsuite/gas/aarch64/udf-invalid.d: New.
49 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
51 * config/tc-rx.c (elf_flags): Reset default value.
52 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
54 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
56 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
58 (microarch_earliest): New static variable.
59 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
60 simcall opcode has mandatory parameter.
61 (xg_init_global_config): Initialize microarch_earliest.
63 2020-04-29 Nick Clifton <nickc@redhat.com>
66 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
67 IMM0_8S and add support for IMM0_8U.
68 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
69 unsigned 8-bit immediate.
70 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
71 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
73 2020-04-27 Tamar Christina <tamar.christina@arm.com>
75 * NEWS: Add news entry for big-obj.
76 * config/tc-i386.c (i386_target_format): Support new format.
77 * doc/c-i386.texi: Add i386 support.
78 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
79 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
81 2020-04-27 Nick Clifton <nickc@redhat.com>
84 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
85 (assign_file_to_slot): New function. Fills in an entry in the
87 (allocate_filenum): Use new function.
88 (allocate_filename_to_slot): Use new function. If the specified
89 slot entry is already in use, but was chosen automatically then
90 reassign the automatic entry.
92 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
94 * config/tc-i386.c (lfence_before_ret_shl): New member.
95 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
97 (insert_after_load): Issue warning for REP CMPS/SCAS.
98 (insert_before_before): Handle iret, Handle
99 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
100 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
101 -mlfence-before-ret=[none/not/or/shl/yes].
102 Enable -mlfence-before-ret=shl when
103 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
104 (md_show_usage): Ditto.
105 * doc/c-i386.texi: Ditto.
106 * testsuite/gas/i386/i386.exp: Add new testcases.
107 * testsuite/gas/i386/lfence-load-b.d: New.
108 * testsuite/gas/i386/lfence-load-b.e: New.
109 * testsuite/gas/i386/lfence-load.d: Modified.
110 * testsuite/gas/i386/lfence-load.e: New.
111 * testsuite/gas/i386/lfence-load.s: Modified.
112 * testsuite/gas/i386/lfence-ret-a.d: Modified.
113 * testsuite/gas/i386/lfence-ret-b.d: Modified.
114 * testsuite/gas/i386/lfence-ret-c.d: New.
115 * testsuite/gas/i386/lfence-ret-d.d: New.
116 * testsuite/gas/i386/lfence-ret.s: Modified.
117 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
118 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
119 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
120 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
121 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
122 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
123 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
124 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
125 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
126 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
128 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
131 * config/tc-xtensa.c (md_apply_fix): Replace
132 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
133 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
134 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
135 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
136 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
138 2020-04-22 Alan Modra <amodra@gmail.com>
140 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
141 symbol for ".symver .. remove".
142 * doc/as.texi (.symver): Update.
143 * testsuite/gas/symver/symver11.s: Make foo weak.
144 * testsuite/gas/symver/symver11.d: Expect an error.
145 * testsuite/gas/symver/symver7.d: Allow other random symbols.
147 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
149 * testsuite/gas/symver/symver11.s: Add ".balign 8".
151 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
154 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
155 * testsuite/gas/m68k/operands.d: Update.
156 * testsuite/gas/m68k/op68000.d: Update for new error messages.
158 2020-04-21 Tamar Christina <tamar.christina@arm.com>
161 * testsuite/gas/arm/pr24753.d: New test.
162 * testsuite/gas/arm/pr24753.s: New test.
164 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
168 * NEWS: Mention .symver extension.
169 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
171 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
172 add a version name. Add local, hidden and remove visibility
174 (elf_frob_symbol): Handle the list of version names. Update the
175 original symbol to local, hidden or remove it from the symbol
177 (elf_frob_file_before_adjust): Handle the list of version names.
178 * config/obj-elf.h (elf_visibility): New.
179 (elf_versioned_name_list): Likewise.
180 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
181 and visibility. Change versioned_name pointer to struct
182 elf_versioned_name_list.
183 * doc/as.texi: Update .symver directive.
184 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
185 error checking tests.
186 * testsuite/gas/symver/symver6.d: New file.
187 * testsuite/gas/symver/symver7.d: Likewise.
188 * testsuite/gas/symver/symver7.s: Likewise.
189 * testsuite/gas/symver/symver8.d: Likewise.
190 * testsuite/gas/symver/symver8.s: Likewise.
191 * testsuite/gas/symver/symver9.s: Likewise.
192 * testsuite/gas/symver/symver9a.d: Likewise.
193 * testsuite/gas/symver/symver9b.d: Likewise.
194 * testsuite/gas/symver/symver10.s: Likewise.
195 * testsuite/gas/symver/symver10a.d: Likewise.
196 * testsuite/gas/symver/symver10b.d: Likewise.
197 * testsuite/gas/symver/symver11.d: Likewise.
198 * testsuite/gas/symver/symver11.s: Likewise.
199 * testsuite/gas/symver/symver12.d: Likewise.
200 * testsuite/gas/symver/symver12.s: Likewise.
201 * testsuite/gas/symver/symver13.d: Likewise.
202 * testsuite/gas/symver/symver13.s: Likewise.
203 * testsuite/gas/symver/symver14.d: Likewise.
204 * testsuite/gas/symver/symver14.l: Likewise.
205 * testsuite/gas/symver/symver15.d: Likewise.
206 * testsuite/gas/symver/symver15.l: Likewise.
207 * testsuite/gas/symver/symver6.l: Removed.
208 * testsuite/gas/symver/symver6.s: Updated.
210 2020-04-20 Sudakshina Das <sudi.das@arm.com>
212 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
214 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
215 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
216 * testsuite/gas/aarch64/system.d: Update.
218 2020-04-20 Sudakshina Das <sudi.das@arm.com>
220 * testsuite/gas/aarch64/bti.d: Update -march option.
221 * testsuite/gas/aarch64/illegal-bti.d: Remove.
222 * testsuite/gas/aarch64/illegal-bti.l: Remove.
223 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
224 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
226 2020-04-17 Alan Modra <amodra@gmail.com>
228 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
230 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
231 Nick Clifton <nickc@redhat.com>
234 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
236 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
238 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
239 targets running this test.
241 2020-02-16 David Faust <david.faust@oracle.com>
243 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
244 * testsuite/gas/bpf/jump32.s: New file.
245 * testsuite/gas/bpf/jump32.d: Likewise.
247 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
249 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
252 2020-04-08 Gunther Nikl <gnikl@justmail.de>
254 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
255 (md_pcrel_from): Remove prototytpe.
256 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
258 (md_pcrel_from_section): Remove duplicate prototype.
259 * tc.h (md_pcrel_from_section): Add prototype.
260 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
261 * config/tc-arc.h (md_pcrel_from_section): Likewise.
262 * config/tc-arm.h (md_pcrel_from_section): Likewise.
263 * config/tc-avr.h (md_pcrel_from_section): Likewise.
264 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
265 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
266 * config/tc-csky.h (md_pcrel_from_section): Likewise.
267 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
268 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
269 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
270 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
271 * config/tc-frv.h (md_pcrel_from_section): Likewise.
272 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
273 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
274 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
275 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
276 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
277 * config/tc-mep.h (md_pcrel_from_section): Likewise.
278 * config/tc-metag.h (md_pcrel_from_section): Likewise.
279 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
280 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
281 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
282 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
283 * config/tc-mt.h (md_pcrel_from_section): Likewise.
284 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
285 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
286 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
287 * config/tc-rx.h (md_pcrel_from_section): Likewise.
288 * config/tc-s390.h (md_pcrel_from_section): Likewise.
289 * config/tc-sh.h (md_pcrel_from_section): Likewise.
290 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
291 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
292 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
293 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
294 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
295 md_apply_fix3): Delete prototypes.
297 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
299 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
302 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
304 * doc/c-z80.texi: Fix @xref warnings.
306 2020-04-07 Lili Cui <lili.cui@intel.com>
308 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
309 (cpu_noarch): Likewise.
310 * doc/c-i386.texi: Document TSXLDTRK.
311 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
312 * testsuite/gas/i386/tsxldtrk.d: Likewise.
313 * testsuite/gas/i386/tsxldtrk.s: Likewise.
314 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
316 2020-04-02 Lili Cui <lili.cui@intel.com>
318 * config/tc-i386.c (cpu_arch): Add .serialize.
319 (cpu_noarch): Likewise.
320 * doc/c-i386.texi: Document serialize.
321 * testsuite/gas/i386/i386.exp: Run serialize tests
322 * testsuite/gas/i386/serialize.d: Likewise.
323 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
324 * testsuite/gas/i386/serialize.s: Likewise.
326 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
328 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
329 * testsuite/gas/elf/section12b.d: Likewise.
330 * testsuite/gas/elf/section16a.d: Likewise.
331 * testsuite/gas/elf/section16b.d: Likewise.
333 2020-04-02 Gunther Nikl <gnikl@justmail.de>
335 * config/tc-m68k.c (m68k_ip): Fix range check for index register
336 with a suppressed address register.
338 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
341 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
342 * testsuite/gas/i386/localpic.s: Add a test for relocation
343 against local absolute symbol.
344 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
345 * testsuite/gas/i386/localpic.d: Updated.
346 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
347 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
349 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
352 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
353 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
354 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
355 testsuite/gas/i386/x86-64-jump.d.
356 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
357 Incorporate changes to
358 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
359 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
360 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
361 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
362 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
364 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
368 * dwarf2dbg.c: Do not include "bignum.h".
370 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
372 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
373 * testsuite/gas/riscv/alias-csr.s: Likewise.
374 * testsuite/gas/riscv/no-aliases-csr.d: Move this
375 to priv-reg-pseudo-noalias.
376 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
377 * testsuite/gas/riscv/bad-csr.l: Likewise.
378 * testsuite/gas/riscv/bad-csr.s: Likewise.
379 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
380 * testsuite/gas/riscv/satp.s: Likewise.
381 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
382 csr instruction, including alias-csr testcase.
383 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
384 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
385 pseudo instruction with objdump -Mno-aliases.
386 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
387 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
388 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
389 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
390 * testsuite/gas/riscv/priv-reg.s: Likewise.
391 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
392 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
393 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
395 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
397 * config/obj-coff.c (obj_coff_section): Set the bss flag on
398 sections with the "b" attribute.
400 2020-03-22 Alan Modra <amodra@gmail.com>
402 * testsuite/gas/s12z/truncated.d: Update expected output.
404 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
407 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
408 * doc/c-z80.texi: Update documentation.
410 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
415 Fix disassembling ED+A4/AC/B4/BC opcodes.
416 Fix assembling lines containing colonless label and instruction
417 with first operand inside parentheses.
418 Fix registration of unsupported by target CPU registers.
419 * config/tc-z80.c: See above.
420 * config/tc-z80.h: See above.
421 * testsuite/gas/z80/colonless.d: Update test.
422 * testsuite/gas/z80/colonless.s: Likewise.
423 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
424 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
425 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
426 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
427 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
428 * testsuite/gas/z80/unsup_regs.s: Likewise.
429 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
430 * testsuite/gas/z80/z80.exp: Likewise.
431 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
432 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
433 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
435 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
438 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
439 (parse_operands): Handle new operand codes.
440 (do_neon_dyadic_long): Make shape check accept the scalar variants.
441 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
442 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
443 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
444 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
445 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
446 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
447 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
449 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
451 * NEWS: Mention x86 assembler options for CVE-2020-0551.
453 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
455 * testsuite/gas/i386/i386.exp: Run new tests.
456 * testsuite/gas/i386/lfence-byte.d: New file.
457 * testsuite/gas/i386/lfence-byte.e: Likewise.
458 * testsuite/gas/i386/lfence-byte.s: Likewise.
459 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
460 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
461 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
462 * testsuite/gas/i386/lfence-indbr.e: Likewise.
463 * testsuite/gas/i386/lfence-indbr.s: Likewise.
464 * testsuite/gas/i386/lfence-load.d: Likewise.
465 * testsuite/gas/i386/lfence-load.s: Likewise.
466 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
467 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
468 * testsuite/gas/i386/lfence-ret.s: Likewise.
469 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
470 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
471 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
472 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
473 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
474 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
475 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
476 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
477 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
478 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
479 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
480 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
482 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
484 * config/tc-i386.c (lfence_after_load): New.
485 (lfence_before_indirect_branch_kind): New.
486 (lfence_before_indirect_branch): New.
487 (lfence_before_ret_kind): New.
488 (lfence_before_ret): New.
491 (insert_lfence_after): New.
492 (insert_lfence_before): New.
493 (md_assemble): Call insert_lfence_before and insert_lfence_after.
495 (OPTION_MLFENCE_AFTER_LOAD): New.
496 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
497 (OPTION_MLFENCE_BEFORE_RET): New.
498 (md_longopts): Add -mlfence-after-load=,
499 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
500 (md_parse_option): Handle -mlfence-after-load=,
501 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
502 (md_show_usage): Display -mlfence-after-load=,
503 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
504 (i386_cons_align): New.
505 * config/tc-i386.h (i386_cons_align): New.
506 (md_cons_align): New.
507 * doc/c-i386.texi: Document -mlfence-after-load=,
508 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
510 2020-03-11 Nick Clifton <nickc@redhat.com>
514 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
515 (DWARF2_FILE_SIZE_NAME): Default to -1.
516 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
518 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
519 (NUM_MD5_BYTES): Define.
520 (struct file entry): Add md5 field.
521 (get_filenum): Delete and replace with...
522 (get_basename): New function.
523 (get_directory_table_entry): New function.
524 (allocate_filenum): New function.
525 (allocate_filename_to_slot): New function.
526 (dwarf2_where): Use new functions.
527 (dwarf2_directive_filename): Add support for extended .file
529 (dwarf2_directive_loc): Allow the use of file number zero with
531 (out_file_list): Rename to...
532 (out_dir_and_file_list): Add DWARF 5 support.
533 (out_debug_line): Emit extra values into the section header for
535 (out_debug_str): Allow for file 0 to be used with DWARF 5.
536 * doc/as.texi (.file): Update the description of this pseudo-op.
537 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
538 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
539 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
540 * NEWS: Mention the new feature.
542 2020-03-10 Alan Modra <amodra@gmail.com>
544 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
545 to avoid signed overflow.
546 * config/tc-mcore.c (md_assemble): Likewise.
547 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
548 * config/tc-nds32.c (SET_ADDEND): Likewise.
549 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
551 2020-03-09 Jan Beulich <jbeulich@suse.com>
553 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
554 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
555 testsuite/gas/i386/avx-intel.d: Adjust expectations.
557 2020-03-07 Alan Modra <amodra@gmail.com>
559 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
562 2020-03-06 Nick Clifton <nickc@redhat.com>
565 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
566 0 if the dwarf_level is 5 or more. Complain if a filename follows
568 * testsuite/gas/elf/dwarf-5-file0.s: New test.
569 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
570 * testsuite/gas/elf/elf.exp: Run the new test.
573 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
574 * doc/as.texi: Fix another typo.
576 2020-03-06 Nick Clifton <nickc@redhat.com>
579 * as.c (dwarf_level): Define.
580 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
581 (parse_args): Add support for the new options.
582 as.h (dwarf_level): Prototype.
583 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
585 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
586 (DWARF2_LINE_VERSION): Remove definition.
587 * doc/as.texi: Document the new options.
589 2020-03-06 Nick Clifton <nickc@redhat.com>
592 * as.c (main): Allow matching input and outputs when they are
595 2020-03-06 Jan Beulich <jbeulich@suse.com>
597 * config/tc-i386.c (match_mem_size): Generalize broadcast special
599 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
600 one of byte/word/dword/qword is set alongside a SIMD register in
601 a template's operand.
603 2020-03-06 Jan Beulich <jbeulich@suse.com>
605 * config/tc-i386.c (match_template): Extend code in logic
606 rejecting certain suffixes in certain modes to also cover mask
607 register use and VecSIB. Drop special casing of broadcast. Skip
608 immediates in the check.
610 2020-03-06 Jan Beulich <jbeulich@suse.com>
612 * config/tc-i386.c (match_template): Fold duplicate code in
613 logic rejecting certain suffixes in certain modes. Drop
616 2020-03-06 Jan Beulich <jbeulich@suse.com>
618 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
619 alongside !norex64 ones.
620 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
621 with both 32- and 64-bit GPR operands.
622 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
623 32- and 64-bit GPR operands.
624 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
625 testsuite/gas/i386/x86-64-avx512bw.d,
626 testsuite/gas/i386/x86-64-avx512f-intel.d,
627 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
629 2020-03-06 Jan Beulich <jbeulich@suse.com>
631 * config/tc-i386.c (md_assemble): Drop use of rex64.
632 (process_suffix): For REX.W for 64-bit CRC32.
634 2020-03-06 Jan Beulich <jbeulich@suse.com>
636 * config/tc-i386.c (i386_addressing_mode): For 32-bit
637 addressing for MPX insns without base/index.
638 * testsuite/gas/i386/mpx-16bit.s,
639 * testsuite/gas/i386/mpx-16bit.d: New.
640 * testsuite/gas/i386/i386.exp: Run new test.
642 2020-03-06 Jan Beulich <jbeulich@suse.com>
644 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
645 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
646 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
647 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
648 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
649 as well as a BSWAP one.
650 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
651 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
652 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
653 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
654 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
655 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
656 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
657 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
658 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
659 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
660 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
661 testsuite/gas/i386/vmx.d: Adjust expectations.
663 2020-03-06 Jan Beulich <jbeulich@suse.com>
665 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
666 from having their operands swapped.
667 * testsuite/gas/i386/waitpkg.s,
668 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
669 3-operand cases as well as testing of 16-bit code generation.
670 * testsuite/gas/i386/waitpkg.d,
671 testsuite/gas/i386/waitpkg-intel.d,
672 testsuite/gas/i386/x86-64-waitpkg.d,
673 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
675 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
677 * config/tc-riscv.c (percent_op_utype): Support the modifier
679 * doc/c-riscv.texi: Add documentation.
680 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
681 modifier %got_pcrel_hi.
682 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
683 * testsuite/gas/riscv/relax-reloc.d: Likewise.
684 * testsuite/gas/riscv/relax-reloc.s: Likewise.
686 * doc/c-riscv.texi (relocation modifiers): Add documentation.
687 (RISC-V-Formats): Update the section name from "Instruction Formats"
688 to "RISC-V Instruction Formats".
690 2020-03-04 Alexandre Oliva <oliva@adacore.com>
692 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
693 detected in a section which does not have at least 4 byte
695 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
696 * testsuite/gas/arm/ldr-t.s: Likewise.
697 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
698 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
699 disassembly, ignoring any NOPs that may have been inserted because
700 of section alignment.
701 * testsuite/gas/arm/ldr-t.d: Likewise.
703 2020-03-04 Jan Beulich <jbeulich@suse.com>
705 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
706 * doc/c-i386.texi: Mention sev_es.
707 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
708 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
710 * testsuite/gas/i386/arch-13-znver1.d,
711 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
713 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
715 * config/tc-i386.c (match_template): Replace ignoresize and
716 defaultsize with mnemonicsize.
717 (process_suffix): Likewise.
719 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
722 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
723 instruction LD IY,(HL).
724 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
725 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
726 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
727 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
729 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
732 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
733 x86-64-default-suffix-avx.
734 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
735 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
736 * testsuite/gas/i386/noreg64.d: Updated.
737 * testsuite/gas/i386/noreg64.l: Likewise.
738 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
739 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
740 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
742 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
745 * config/tc-z80.c (contains_register): Prevent an illegal memory
746 access when checking an expression for a register name.
748 2020-03-03 Alan Modra <amodra@gmail.com>
750 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
753 2020-03-02 Alan Modra <amodra@gmail.com>
755 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
756 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
758 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
759 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
760 (s3_s_score_lcomm): Likewise.
761 * config/tc-score7.c: Similarly.
762 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
764 2020-02-28 YunQiang Su <syq@debian.org>
767 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
768 to handle multi-labels.
769 (has_label_name): New.
771 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
773 * config/tc-arm.c (enum pred_instruction_type): Remove
774 NEUTRAL_IT_NO_VPT_INSN predication type.
775 (cxn_handle_predication): Modify to require condition suffixes.
776 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
777 * testsuite/gas/arm/cde-scalar.s: Update test.
778 * testsuite/gas/arm/cde-warnings.l: Update test.
779 * testsuite/gas/arm/cde-warnings.s: Update test.
781 2020-02-26 Alan Modra <amodra@gmail.com>
783 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
784 N_() on empty string.
786 2020-02-26 Alan Modra <amodra@gmail.com>
788 * read.c (read_a_source_file): Call strncpy with length one
789 less than size of original_case_string.
791 2020-02-26 Alan Modra <amodra@gmail.com>
793 * config/obj-elf.c: Indent labels correctly.
794 * config/obj-macho.c: Likewise.
795 * config/tc-aarch64.c: Likewise.
796 * config/tc-alpha.c: Likewise.
797 * config/tc-arm.c: Likewise.
798 * config/tc-cr16.c: Likewise.
799 * config/tc-crx.c: Likewise.
800 * config/tc-frv.c: Likewise.
801 * config/tc-i386-intel.c: Likewise.
802 * config/tc-i386.c: Likewise.
803 * config/tc-ia64.c: Likewise.
804 * config/tc-mn10200.c: Likewise.
805 * config/tc-mn10300.c: Likewise.
806 * config/tc-nds32.c: Likewise.
807 * config/tc-riscv.c: Likewise.
808 * config/tc-s12z.c: Likewise.
809 * config/tc-xtensa.c: Likewise.
810 * config/tc-z80.c: Likewise.
812 * symbols.c: Likewise.
815 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
817 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
818 we are assembling instruction with CSR. Call riscv_csr_read_only_check
819 after parsing all arguments.
820 (enum csr_insn_type): New enum is used to classify the CSR instruction.
821 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
822 are used to check if we write a read-only CSR by the CSR instruction.
823 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
824 all CSR for the read-only CSR checking.
825 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
826 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
827 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
828 all CSR instructions for the read-only CSR checking.
829 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
830 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
832 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
833 (riscv_opts): Initialize it.
834 (reg_lookup_internal): Check the `riscv_opts.csr_check`
835 before doing the CSR checking.
836 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
837 (md_longopts): Add mcsr-check and mno-csr-check.
838 (md_parse_option): Handle new enum option values.
839 (s_riscv_option): Handle new long options.
840 * doc/c-riscv.texi: Add description for the new .option and assembler
842 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
844 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
846 * config/tc-riscv.c (csr_extra_hash): New.
847 (enum riscv_csr_class): New enum. Used to decide
848 whether or not this CSR is legal in the current ISA string.
849 (struct riscv_csr_extra): New structure to hold all extra information
851 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
852 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
853 Call hash_reg_name to insert CSR address into reg_names_hash.
854 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
855 Decide whether the CSR is valid according to the csr_extra_hash.
856 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
857 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
858 not a boolean. This is same as riscv_init_csr_hash, so keep the
860 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
861 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
862 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
863 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
864 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
865 f-ext CSR are not allowed.
866 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
867 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
868 source file is `priv-reg.s`, and the ISA is rv64if, so the
869 rv32-only CSR are not allowed.
870 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
872 2020-02-21 Alan Modra <amodra@gmail.com>
874 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
875 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
877 2020-02-21 Alan Modra <amodra@gmail.com>
880 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
881 on section size adjustment, instead perform another write if
882 exec header size is larger than section size.
884 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
886 * doc/c-riscv.texi: Add the doc entries for -march-attr/
887 -mno-arch-attr command line options.
889 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
891 * testsuite/gas/riscv/c-add-addi.d: New testcase.
892 * testsuite/gas/riscv/c-add-addi.s: Likewise.
894 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
897 * config/tc-z80.c (md_parse_option): Do not use an underscore
898 prefix for local labels in SDCC compatability mode.
899 (z80_start_line_hook): Remove SDCC dollar label support.
900 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
901 * testsuite/gas/z80/sdcc.s: Likewise.
903 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
906 * config/tc-z80.c: Add -march option.
907 * doc/as.texi: Update Z80 documentation.
908 * doc/c-z80.texi: Likewise.
909 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
910 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
911 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
912 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
913 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
914 * testsuite/gas/z80/gbz80_all.d: Likewise.
915 * testsuite/gas/z80/r800_extra.d: Likewise.
916 * testsuite/gas/z80/r800_ii8.d: Likewise.
917 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
918 * testsuite/gas/z80/sdcc.d: Likewise.
919 * testsuite/gas/z80/z180.d: Likewise.
920 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
921 * testsuite/gas/z80/z80_doc.d: Likewise.
922 * testsuite/gas/z80/z80_ii8.d: Likewise.
923 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
924 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
925 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
926 * testsuite/gas/z80/z80_sli.d: Likewise.
927 * testsuite/gas/z80/z80n_all.d: Likewise.
928 * testsuite/gas/z80/z80n_reloc.d: Likewise.
930 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
932 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
933 with GNU_PROPERTY_X86_FEATURE_2_MMX.
934 * testsuite/gas/i386/i386.exp: Run property-3 and
936 * testsuite/gas/i386/property-3.d: New file.
937 * testsuite/gas/i386/property-3.s: Likewise.
938 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
940 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
942 * config/tc-i386.c (cpu_arch): Add .popcnt.
943 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
944 Add a tab before @samp{.sse4a}.
946 2020-02-17 Jan Beulich <jbeulich@suse.com>
948 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
949 for AddrPrefixOpReg templates. Combine the two pieces of
950 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
953 2020-02-17 Jan Beulich <jbeulich@suse.com>
956 * config/tc-i386.c (md_assemble): Also suppress operand
957 swapping for MONITOR{,X} and MWAIT{,X}.
958 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
959 Add Intel syntax monitor/mwait tests.
960 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
962 *testsuite/gas/i386/sse3-intel.d,
963 testsuite/gas/i386/x86-64-sse3-intel.d: New.
964 * testsuite/gas/i386/i386.exp: Run new tests.
966 2020-02-17 Jan Beulich <jbeulich@suse.com>
969 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
970 [XYZ]MMWord memory operand ambiguity recognition logic (largely
972 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
974 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
975 * testsuite/gas/i386/avx512dq-inval.l,
976 testsuite/gas/i386/inval-avx.l,
977 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
978 * testsuite/gas/i386/avx512vl-ambig.s,
979 testsuite/gas/i386/avx512vl-ambig.l: New.
980 * testsuite/gas/i386/i386.exp: Run new test.
982 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
984 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
986 * doc/c-i386.texi: Document sse4a and nosse4a.
988 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
990 * doc/c-i386.texi: Remove the old movsx and movzx documentation
993 2020-02-14 Jan Beulich <jbeulich@suse.com>
996 * config/tc-i386.c (md_assemble): Move movsx/movzx special
998 (process_suffix): ... here. Consider just the first operand
1000 (check_long_reg): Drop opcode 0x63 special case again.
1001 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
1002 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
1003 Move ambiguous operand size tests ...
1004 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1005 testsuite/gas/i386/noreg64.s: ... here.
1006 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
1007 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
1008 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1009 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
1010 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
1011 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1012 testsuite/gas/i386/x86-64-movsxd.d,
1013 testsuite/gas/i386/x86-64-movsxd-intel.d,
1014 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
1015 Adjust expectations.
1016 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
1017 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
1018 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
1019 * testsuite/gas/i386/i386.exp: Run new tests.
1021 2020-02-14 Jan Beulich <jbeulich@suse.com>
1023 * config/tc-i386.c (process_operands): Also skip segment
1024 override prefix emission if it matches an already present one.
1025 * testsuite/gas/i386/prefix32.s: Add double segment override
1027 * testsuite/gas/i386/prefix32.l: Adjust expectations.
1029 2020-02-14 Jan Beulich <jbeulich@suse.com>
1031 * config/tc-i386.c (process_operands): Drop ineffectual segment
1032 overrides when optimizing.
1033 * testsuite/gas/i386/lea-optimize.d: New.
1034 * testsuite/gas/i386/i386.exp: Run new test.
1036 2020-02-14 Jan Beulich <jbeulich@suse.com>
1038 * config/tc-i386.c (process_operands): Also check insn prefix
1039 for ineffectual segment override warning. Don't cover possible
1040 VEX/EVEX encoded insns there.
1041 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
1042 testsuite/gas/i386/lea.e: New.
1043 * testsuite/gas/i386/i386.exp: Run new test.
1045 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1048 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
1051 2020-02-13 Fangrui Song <maskray@google.com>
1052 H.J. Lu <hongjiu.lu@intel.com>
1055 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
1056 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
1057 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
1058 * testsuite/gas/i386/relax-5.d: New file.
1059 * testsuite/gas/i386/relax-5.s: Likewise.
1060 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1061 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
1063 2020-02-13 Jan Beulich <jbeulich@suse.com>
1065 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
1068 2020-02-12 Jan Beulich <jbeulich@suse.com>
1070 * config/tc-i386.c (avx512): New (at file scope), moved from
1071 (check_VecOperands): ... here.
1072 (process_suffix): Add [XYZ]MMword operand size handling.
1073 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
1074 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
1076 * testsuite/gas/i386/avx512dq-inval.l,
1077 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
1079 2020-02-12 Jan Beulich <jbeulich@suse.com>
1082 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
1084 * config/tc-i386-intel.c (i386_intel_operand): Also handle
1085 CALL/JMP in O_tbyte_ptr case.
1086 * doc/c-i386.texi: Mention far call and full pointer load ISA
1088 * testsuite/gas/i386/x86-64-branch-3.s,
1089 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
1090 * testsuite/gas/i386/x86-64-branch-3.d,
1091 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
1092 * testsuite/gas/i386/x86-64-branch-5.l,
1093 testsuite/gas/i386/x86-64-branch-5.s: New.
1094 * testsuite/gas/i386/i386.exp: Run new test.
1096 2020-02-12 Jan Beulich <jbeulich@suse.com>
1099 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
1100 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
1101 64-bit-only warning.
1102 (check_word_reg): Consistently error on mismatching register
1104 * testsuite/gas/i386/general.s: Replace dword GPR with word one
1105 for movw. Replace suffix / GPR for orb.
1106 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
1107 byte GPRs as well as ones for inb/outb with a word accumulator.
1108 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
1109 testsuite/gas/i386/inval.l: Adjust expectations.
1111 2020-02-12 Jan Beulich <jbeulich@suse.com>
1113 * config/tc-i386.c (operand_type_register_match): Also fall
1114 through initial two if()-s when the template allows for a GPR
1115 operand. Adjust comment.
1117 2020-02-11 Jan Beulich <jbeulich@suse.com>
1119 (struct _i386_insn): New field "short_form".
1120 (optimize_encoding): Drop setting of shortform field.
1121 (process_suffix): Set i.short_form. Replace shortform use.
1122 (process_operands): Replace shortform use.
1124 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
1126 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
1127 loop initial declaration.
1129 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
1131 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
1132 instructions that can have 5 arguments.
1133 (enum operand_parse_code): Add new operands.
1134 (parse_operands): Account for new operands.
1136 (enum neon_shape_el): Introduce P suffixes for coprocessor.
1137 (neon_select_shape): Account for P suffix.
1138 (LOW1): Move macro to global position.
1139 (HI4): Move macro to global position.
1140 (vcx_assign_vec_d): New.
1141 (vcx_assign_vec_m): New.
1142 (vcx_assign_vec_n): New.
1143 (enum vcx_reg_type): New.
1144 (vcx_get_reg_type): New.
1145 (vcx_size_pos): New.
1147 (vcx_handle_shape): New.
1148 (vcx_ensure_register_in_range): New.
1149 (vcx_handle_register_arguments): New.
1150 (vcx_handle_insn_block): New.
1151 (vcx_handle_common_checks): New.
1155 * testsuite/gas/arm/cde-missing-fp.d: New test.
1156 * testsuite/gas/arm/cde-missing-fp.l: New test.
1157 * testsuite/gas/arm/cde-missing-mve.d: New test.
1158 * testsuite/gas/arm/cde-missing-mve.l: New test.
1159 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
1160 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
1161 * testsuite/gas/arm/cde-mve.s: New test.
1162 * testsuite/gas/arm/cde-warnings.l:
1163 * testsuite/gas/arm/cde-warnings.s:
1164 * testsuite/gas/arm/cde.d:
1165 * testsuite/gas/arm/cde.s:
1167 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
1168 Matthew Malcomson <matthew.malcomson@arm.com>
1170 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
1171 CDE coprocessor that can be enabled.
1172 (enum pred_instruction_type): New pred type.
1173 (BAD_NO_VPT): New error message.
1174 (BAD_CDE): New error message.
1175 (BAD_CDE_COPROC): New error message.
1176 (enum operand_parse_code): Add new immediate operands.
1177 (parse_operands): Account for new immediate operands.
1178 (check_cde_operand): New.
1179 (cde_coproc_enabled): New.
1180 (cde_coproc_pos): New.
1181 (cde_handle_coproc): New.
1182 (cxn_handle_predication): New.
1183 (do_custom_instruction_1): New.
1184 (do_custom_instruction_2): New.
1185 (do_custom_instruction_3): New.
1198 (handle_pred_state): Define new IT block behaviour.
1199 (insns): Add newn CX*{,d}{,a} instructions.
1200 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
1201 Define new cdecp extension strings.
1202 * doc/c-arm.texi: Document new cdecp extension arguments.
1203 * testsuite/gas/arm/cde-scalar.d: New test.
1204 * testsuite/gas/arm/cde-scalar.s: New test.
1205 * testsuite/gas/arm/cde-warnings.d: New test.
1206 * testsuite/gas/arm/cde-warnings.l: New test.
1207 * testsuite/gas/arm/cde-warnings.s: New test.
1208 * testsuite/gas/arm/cde.d: New test.
1209 * testsuite/gas/arm/cde.s: New test.
1211 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
1214 * config/tc-i386.c (intel64): Renamed to ...
1216 (match_template): Accept Intel64 only instruction by default.
1217 (i386_displacement): Updated.
1218 (md_parse_option): Updated.
1219 * c-i386.texi: Update -mamd64/-mintel64 documentation.
1220 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
1221 -mamd64 to x86-64-sysenter-amd.
1222 * testsuite/gas/i386/x86-64-sysenter.d: New file.
1224 2020-02-10 Alan Modra <amodra@gmail.com>
1226 * config/obj-elf.c (obj_elf_change_section): Error for section
1227 type, attr or entsize changes in assembly.
1228 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
1229 * testsuite/gas/elf/section5.l: Update.
1231 2020-02-10 Alan Modra <amodra@gmail.com>
1233 * output-file.c (output_file_close): Do a normal close when
1234 flag_always_generate_output.
1235 * write.c (write_object_file): Don't stop output when
1236 flag_always_generate_output.
1238 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
1241 * config/tc-z80.c: Add -gbz80 command line option to generate code
1242 for the GameBoy Z80. Add support for generating DWARF.
1243 * config/tc-z80.h: Add support for DWARF debug information
1245 * doc/c-z80.texi: Document new command line option.
1246 * testsuite/gas/z80/gbz80_all.d: New file.
1247 * testsuite/gas/z80/gbz80_all.s: New file.
1248 * testsuite/gas/z80/z80.exp: Run the new tests.
1249 * testsuite/gas/z80/z80n_all.d: New file.
1250 * testsuite/gas/z80/z80n_all.s: New file.
1251 * testsuite/gas/z80/z80n_reloc.d: New file.
1253 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1256 * config/obj-elf.c (get_section): Also check
1257 linked_to_symbol_name.
1258 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
1259 (obj_elf_parse_section_letters): Handle the 'o' flag.
1260 (build_group_lists): Renamed to ...
1261 (build_additional_section_info): This. Set elf_linked_to_section
1262 from map_head.linked_to_symbol_name.
1263 (elf_adjust_symtab): Updated.
1264 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
1265 * doc/as.texi: Document the 'o' flag.
1266 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
1267 * testsuite/gas/elf/section18.d: New file.
1268 * testsuite/gas/elf/section18.s: Likewise.
1269 * testsuite/gas/elf/section19.d: Likewise.
1270 * testsuite/gas/elf/section19.s: Likewise.
1271 * testsuite/gas/elf/section20.d: Likewise.
1272 * testsuite/gas/elf/section20.s: Likewise.
1273 * testsuite/gas/elf/section21.d: Likewise.
1274 * testsuite/gas/elf/section21.l: Likewise.
1275 * testsuite/gas/elf/section21.s: Likewise.
1277 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1279 * NEWS: Mention x86 assembler options to align branches for
1282 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1284 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
1285 only for ELF targets.
1286 * testsuite/gas/i386/unique.d: Don't xfail.
1287 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1289 2020-02-06 Alan Modra <amodra@gmail.com>
1291 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
1292 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1294 2020-02-06 Alan Modra <amodra@gmail.com>
1296 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
1297 xfail, and rename test.
1298 * testsuite/gas/elf/section12b.d: Likewise.
1299 * testsuite/gas/elf/section16a.d: Likewise.
1300 * testsuite/gas/elf/section16b.d: Likewise.
1302 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
1305 * config/obj-elf.c (section_match): Removed.
1306 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
1308 (obj_elf_change_section): Replace info and group_name arguments
1309 with match_p. Also update the section ID and flags from match_p.
1310 (obj_elf_section): Handle "unique,N". Update call to
1311 obj_elf_change_section.
1312 * config/obj-elf.h (elf_section_match): New.
1313 (obj_elf_change_section): Updated.
1314 * config/tc-arm.c (start_unwind_section): Update call to
1315 obj_elf_change_section.
1316 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
1317 * config/tc-microblaze.c (microblaze_s_data): Likewise.
1318 (microblaze_s_sdata): Likewise.
1319 (microblaze_s_rdata): Likewise.
1320 (microblaze_s_bss): Likewise.
1321 * config/tc-mips.c (s_change_section): Likewise.
1322 * config/tc-msp430.c (msp430_profiler): Likewise.
1323 * config/tc-rx.c (parse_rx_section): Likewise.
1324 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
1325 * doc/as.texi: Document "unique,N" in .section directive.
1326 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
1327 * testsuite/gas/elf/section15.d: New file.
1328 * testsuite/gas/elf/section15.s: Likewise.
1329 * testsuite/gas/elf/section16.s: Likewise.
1330 * testsuite/gas/elf/section16a.d: Likewise.
1331 * testsuite/gas/elf/section16b.d: Likewise.
1332 * testsuite/gas/elf/section17.d: Likewise.
1333 * testsuite/gas/elf/section17.l: Likewise.
1334 * testsuite/gas/elf/section17.s: Likewise.
1335 * testsuite/gas/i386/unique.d: Likewise.
1336 * testsuite/gas/i386/unique.s: Likewise.
1337 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1338 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
1340 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
1342 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
1344 2020-02-01 Anthony Green <green@moxielogic.com>
1346 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
1348 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
1350 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
1353 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
1356 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
1357 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
1359 * testsuite/gas/arm/mve_dsp.d: New test.
1361 2020-01-31 Nick Clifton <nickc@redhat.com>
1363 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
1364 rather than BFD_RELOC_NONE.
1366 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1368 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
1369 to support VLDMIA instruction for MVE.
1370 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
1371 instruction for MVE.
1372 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
1373 instruction for MVE.
1374 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
1375 instruction for MVE.
1376 * testsuite/gas/arm/mve-ldst.d: New test.
1377 * testsuite/gas/arm/mve-ldst.s: Likewise.
1379 2020-01-31 Nick Clifton <nickc@redhat.com>
1381 * po/fr.po: Updated French translation.
1382 * po/ru.po: Updated Russian translation.
1384 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
1386 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
1388 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
1389 * testsuite/gas/aarch64/sve-movprfx_28.d,
1390 * testsuite/gas/aarch64/sve-movprfx_28.l,
1391 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
1393 2020-01-30 Jan Beulich <jbeulich@suse.com>
1395 * config/tc-i386.c (output_disp): Tighten base_opcode check.
1396 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
1397 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
1398 Adjust expectations.
1400 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
1402 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
1403 * testsuite/gas/bpf/alu-be.d: Likewise.
1404 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
1405 * testsuite/gas/bpf/alu32-be.d: Likewise.
1407 2020-01-30 Jan Beulich <jbeulich@suse.com>
1409 * testsuite/gas/i386/x86-64-branch-2.s,
1410 testsuite/gas/i386/x86-64-branch-4.s,
1411 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
1412 * testsuite/gas/i386/ilp32/x86-64-branch.d,
1413 testsuite/gas/i386/x86-64-branch-2.d,
1414 testsuite/gas/i386/x86-64-branch-4.l,
1415 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
1417 2020-01-30 Jan Beulich <jbeulich@suse.com>
1419 * config/tc-i386.c (process_suffix): .
1420 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
1421 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
1423 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
1425 testsuite/gas/i386/x86_64.s: Add RETF cases.
1426 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1427 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
1428 testsuite/gas/i386/x86-64-opcode.d,
1429 testsuite/gas/i386/x86-64-suffix-intel.d,
1430 testsuite/gas/i386/x86-64-suffix.d,
1431 testsuite/gas/i386/x86_64-intel.d
1432 testsuite/gas/i386/x86_64.d: Adjust expectations.
1433 * testsuite/gas/i386/x86-64-suffix.e,
1434 testsuite/gas/i386/x86_64.e: New.
1436 2020-01-30 Jan Beulich <jbeulich@suse.com>
1438 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
1441 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
1444 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
1446 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
1447 differences. Document movslq and movsxd.
1448 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
1449 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
1450 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
1451 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
1452 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
1453 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
1454 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
1455 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
1456 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
1457 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
1458 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
1460 2020-01-27 Alan Modra <amodra@gmail.com>
1462 * testsuite/gas/all/gas.exp: Replace case statements with switch
1464 * testsuite/gas/elf/elf.exp: Likewise.
1465 * testsuite/gas/macros/macros.exp: Likewise.
1466 * testsuite/lib/gas-defs.exp: Likewise.
1468 2020-01-27 Tamar Christina <tamar.christina@arm.com>
1471 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
1472 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
1474 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
1476 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
1477 s exts must be known, so rename *ok* to *fail*.
1478 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
1479 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
1480 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
1482 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
1483 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
1485 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
1488 * config/tc-i386.c (check_long_reg): Always disallow double word
1489 suffix in mnemonic with word general register.
1490 * testsuite/gas/i386/general.s: Replace word general register
1491 with double word general register for movl.
1492 * testsuite/gas/i386/inval.s: Add tests for movl with word general
1494 * testsuite/gas/i386/general.l: Updated.
1495 * testsuite/gas/i386/inval.l: Likewise.
1497 2020-01-22 Alan Modra <amodra@gmail.com>
1499 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
1500 __tls_get_addr_desc and __tls_get_addr_opt.
1502 2020-01-21 Jan Beulich <jbeulich@suse.com>
1504 * testsuite/gas/i386/inval-crc32.s,
1505 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
1506 * testsuite/gas/i386/inval-crc32.l,
1507 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
1509 2020-01-21 Jan Beulich <jbeulich@suse.com>
1511 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
1512 generic code path. Deal with No_lSuf being set in a template.
1513 * testsuite/gas/i386/inval-crc32.l,
1514 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
1515 instead of error(s) when operand size is ambiguous.
1516 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1517 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
1518 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
1519 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
1520 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
1521 Adjust expectations.
1523 2020-01-21 Jan Beulich <jbeulich@suse.com>
1525 * config/tc-i386.c (process_suffix): Drop SYSRET special case
1526 and an intel_syntax check. Re-write lack-of-suffix processing
1528 * doc/c-i386.texi: Document operand size defaults for suffix-
1529 less AT&T syntax insns.
1530 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
1531 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
1532 testsuite/gas/i386/x86-64-avx-scalar.s,
1533 testsuite/gas/i386/x86-64-avx.s,
1534 testsuite/gas/i386/x86-64-bundle.s,
1535 testsuite/gas/i386/x86-64-intel64.s,
1536 testsuite/gas/i386/x86-64-lock-1.s,
1537 testsuite/gas/i386/x86-64-opcode.s,
1538 testsuite/gas/i386/x86-64-sse2avx.s,
1539 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
1540 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
1541 testsuite/gas/i386/x86-64-nops.s,
1542 testsuite/gas/i386/x86-64-ptwrite.s,
1543 testsuite/gas/i386/x86-64-simd.s,
1544 testsuite/gas/i386/x86-64-sse-noavx.s,
1545 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
1547 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1548 testsuite/gas/i386/noreg64.s: Add further tests.
1549 * testsuite/gas/i386/ilp32/x86-64-nops.d,
1550 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
1551 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1552 testsuite/gas/i386/sse-noavx.d,
1553 testsuite/gas/i386/x86-64-intel64.d,
1554 testsuite/gas/i386/x86-64-nops.d,
1555 testsuite/gas/i386/x86-64-opcode.d,
1556 testsuite/gas/i386/x86-64-ptwrite-intel.d,
1557 testsuite/gas/i386/x86-64-ptwrite.d,
1558 testsuite/gas/i386/x86-64-simd-intel.d,
1559 testsuite/gas/i386/x86-64-simd-suffix.d,
1560 testsuite/gas/i386/x86-64-simd.d,
1561 testsuite/gas/i386/x86-64-sse-noavx.d
1562 testsuite/gas/i386/x86-64-suffix.d,
1563 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
1564 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
1565 testsuite/gas/i386/noreg64.l: New.
1566 * testsuite/gas/i386/i386.exp: Run new tests.
1568 2020-01-21 Jan Beulich <jbeulich@suse.com>
1570 * testsuite/gas/i386/avx512_bf16_vl.s,
1571 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
1572 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
1573 broadcast forms of VCVTNEPS2BF16.
1574 * testsuite/gas/i386/avx512_bf16_vl.d,
1575 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
1577 2020-01-20 Nick Clifton <nickc@redhat.com>
1579 * po/uk.po: Updated Ukranian translation.
1581 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
1584 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
1585 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
1587 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
1588 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
1589 R_X86_64_GOTPC32_TLSDESC relocation.
1591 2020-01-18 Nick Clifton <nickc@redhat.com>
1593 * configure: Regenerate.
1594 * po/gas.pot: Regenerate.
1596 2020-01-18 Nick Clifton <nickc@redhat.com>
1598 Binutils 2.34 branch created.
1600 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
1602 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
1603 with vex_encoding_vex.
1604 (parse_insn): Likewise.
1605 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
1606 and {vex3} documentation.
1607 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
1609 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
1611 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1614 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
1615 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
1616 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
1617 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
1618 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
1619 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
1621 2020-01-16 Jan Beulich <jbeulich@suse.com>
1623 * config/tc-i386.c (match_template): Drop found_cpu_match local
1626 2020-01-16 Jan Beulich <jbeulich@suse.com>
1628 * testsuite/gas/i386/avx512dq-inval.l,
1629 testsuite/gas/i386/avx512dq-inval.s: New.
1630 * testsuite/gas/i386/i386.exp: Run new test.
1632 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1634 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
1635 relocations when the target is 430X, except when extracting part of an
1637 (msp430_srcoperand): Adjust comment.
1638 Initialize the expp member of the msp430_operand_s struct as
1640 (msp430_dstoperand): Likewise.
1641 * testsuite/gas/msp430/msp430.exp: Run new test.
1642 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
1643 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
1645 2020-01-15 Alan Modra <amodra@gmail.com>
1647 * configure.tgt: Add sparc-*-freebsd case.
1649 2020-01-14 Lili Cui <lili.cui@intel.com>
1651 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
1652 * testsuite/gas/i386/align-branch-1b.d: Likewise.
1653 * testsuite/gas/i386/align-branch-1c.d: Likewise.
1654 * testsuite/gas/i386/align-branch-1d.d: Likewise.
1655 * testsuite/gas/i386/align-branch-1e.d: Likewise.
1656 * testsuite/gas/i386/align-branch-1f.d: Likewise.
1657 * testsuite/gas/i386/align-branch-1g.d: Likewise.
1658 * testsuite/gas/i386/align-branch-1h.d: Likewise.
1659 * testsuite/gas/i386/align-branch-1i.d: Likewise.
1660 * testsuite/gas/i386/align-branch-5.d: Likewise.
1661 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
1662 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
1663 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
1664 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
1665 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
1666 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
1667 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
1668 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
1669 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
1670 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
1671 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
1672 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
1674 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
1677 * config/tc-z80.c: Add support for half precision, single
1678 precision and double precision floating point values.
1679 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
1680 * doc/as.texi: Add new z80 command line options.
1681 * doc/c-z80.texi: Document new z80 command line options.
1682 * testsuite/gas/z80/ez80_pref_dis.s: New test.
1683 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
1684 * testsuite/gas/z80/z80.exp: Run the new test.
1685 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
1686 * testsuite/gas/z80/fp_zeda32.d: Likewise.
1687 * testsuite/gas/z80/strings.d: Update expected output.
1689 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
1691 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
1694 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
1696 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
1698 * config/tc-arc.h: Add header if/defs.
1699 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
1701 2020-01-13 Alan Modra <amodra@gmail.com>
1703 * testsuite/gas/wasm32/allinsn.d: Update expected output.
1705 2020-01-13 Alan Modra <amodra@gmail.com>
1707 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
1710 2020-01-10 Alan Modra <amodra@gmail.com>
1712 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
1713 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
1715 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1718 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
1720 (emit_ld_r_r): Likewise.
1721 (emit_ld_rr_m): Likewise.
1722 (emit_ld_rr_nn): Likewise.
1724 2020-01-09 Jan Beulich <jbeulich@suse.com>
1726 * config/tc-i386.c (optimize_encoding): Add
1727 is_any_vex_encoding() invocations. Drop respective
1728 i.tm.extension_opcode == None checks.
1730 2020-01-09 Jan Beulich <jbeulich@suse.com>
1732 * config/tc-i386.c (md_assemble): Check RegRex is clear during
1733 REX transformations. Correct comment indentation.
1735 2020-01-09 Jan Beulich <jbeulich@suse.com>
1737 * config/tc-i386.c (optimize_encoding): Generalize register
1738 transformation for TEST optimization.
1740 2020-01-09 Jan Beulich <jbeulich@suse.com>
1742 * testsuite/gas/i386/x86-64-sysenter-amd.s,
1743 testsuite/gas/i386/x86-64-sysenter-amd.d,
1744 testsuite/gas/i386/x86-64-sysenter-amd.l,
1745 testsuite/gas/i386/x86-64-sysenter-intel.d,
1746 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
1747 * testsuite/gas/i386/i386.exp: Run new tests.
1749 2020-01-08 Nick Clifton <nickc@redhat.com>
1752 * doc/as.texi (Align): Document the fact that all arguments can be
1755 (P2align): Likewise.
1757 2020-01-08 Nick Clifton <nickc@redhat.com>
1760 * config/obj-elf.c (obj_elf_section): Fail if the section name is
1761 already defined as a different symbol type.
1762 * testsuite/gas/elf/pr14891.s: New test source file.
1763 * testsuite/gas/elf/pr14891.d: New test driver.
1764 * testsuite/gas/elf/pr14891.s: New test expected error output.
1765 * testsuite/gas/elf/elf.exp: Run the new test.
1767 2020-01-08 Alan Modra <amodra@gmail.com>
1769 * config/tc-z8k.c (md_begin): Make idx unsigned.
1770 (get_specific): Likewise for this_index.
1772 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
1774 * onfig/tc-arc.c (parse_reloc_symbol): New function.
1775 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
1776 (md_operand): Set X_md to absent.
1777 (arc_parse_name): Check for X_md.
1779 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1782 * as.h (TC_STRING_ESCAPES): Provide a default definition.
1783 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
1785 * read.c (next_char_of_string): Likewise.
1786 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
1787 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
1789 2020-01-03 Nick Clifton <nickc@redhat.com>
1791 * po/sv.po: Updated Swedish translation.
1793 2020-01-03 Jan Beulich <jbeulich@suse.com>
1795 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
1796 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1798 2020-01-03 Jan Beulich <jbeulich@suse.com>
1800 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
1801 by-element usdot. Add 64-bit form tests for by-element sudot.
1802 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
1804 2020-01-03 Jan Beulich <jbeulich@suse.com>
1806 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
1807 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1809 2020-01-03 Jan Beulich <jbeulich@suse.com>
1811 * testsuite/gas/aarch64/f64mm.d,
1812 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
1814 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
1816 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
1817 support for assembler code generated by SDCC. Add new relocation
1818 types. Add z80-elf target support.
1819 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
1820 labels. Local labels starts from ".L".
1821 * NEWS: Mention the new support.
1822 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
1823 * testsuite/gas/all/fwdexp.s: Likewise.
1824 * testsuite/gas/all/cond.l: Likewise.
1825 * testsuite/gas/all/cond.s: Likewise.
1826 * testsuite/gas/all/fwdexp.d: Likewise.
1827 * testsuite/gas/all/fwdexp.s: Likewise.
1828 * testsuite/gas/elf/section2.e-mips: Likewise.
1829 * testsuite/gas/elf/section2.l: Likewise.
1830 * testsuite/gas/elf/section2.s: Likewise.
1831 * testsuite/gas/macros/app1.d: Likewise.
1832 * testsuite/gas/macros/app1.s: Likewise.
1833 * testsuite/gas/macros/app2.d: Likewise.
1834 * testsuite/gas/macros/app2.s: Likewise.
1835 * testsuite/gas/macros/app3.d: Likewise.
1836 * testsuite/gas/macros/app3.s: Likewise.
1837 * testsuite/gas/macros/app4.d: Likewise.
1838 * testsuite/gas/macros/app4.s: Likewise.
1839 * testsuite/gas/macros/app4b.s: Likewise.
1840 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
1841 * testsuite/gas/z80/z80.exp: Add new tests
1842 * testsuite/gas/z80/dollar.d: New file.
1843 * testsuite/gas/z80/dollar.s: New file.
1844 * testsuite/gas/z80/ez80_adl_all.d: New file.
1845 * testsuite/gas/z80/ez80_adl_all.s: New file.
1846 * testsuite/gas/z80/ez80_adl_suf.d: New file.
1847 * testsuite/gas/z80/ez80_isuf.s: New file.
1848 * testsuite/gas/z80/ez80_z80_all.d: New file.
1849 * testsuite/gas/z80/ez80_z80_all.s: New file.
1850 * testsuite/gas/z80/ez80_z80_suf.d: New file.
1851 * testsuite/gas/z80/r800_extra.d: New file.
1852 * testsuite/gas/z80/r800_extra.s: New file.
1853 * testsuite/gas/z80/r800_ii8.d: New file.
1854 * testsuite/gas/z80/r800_z80_doc.d: New file.
1855 * testsuite/gas/z80/z180.d: New file.
1856 * testsuite/gas/z80/z180.s: New file.
1857 * testsuite/gas/z80/z180_z80_doc.d: New file.
1858 * testsuite/gas/z80/z80_doc.d: New file.
1859 * testsuite/gas/z80/z80_doc.s: New file.
1860 * testsuite/gas/z80/z80_ii8.d: New file.
1861 * testsuite/gas/z80/z80_ii8.s: New file.
1862 * testsuite/gas/z80/z80_in_f_c.d: New file.
1863 * testsuite/gas/z80/z80_in_f_c.s: New file.
1864 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
1865 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
1866 * testsuite/gas/z80/z80_out_c_0.d: New file.
1867 * testsuite/gas/z80/z80_out_c_0.s: New file.
1868 * testsuite/gas/z80/z80_reloc.d: New file.
1869 * testsuite/gas/z80/z80_reloc.s: New file.
1870 * testsuite/gas/z80/z80_sli.d: New file.
1871 * testsuite/gas/z80/z80_sli.s: New file.
1873 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
1875 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
1878 2020-01-01 Alan Modra <amodra@gmail.com>
1880 Update year range in copyright notice of all files.
1882 For older changes see ChangeLog-2019
1884 Copyright (C) 2020 Free Software Foundation, Inc.
1886 Copying and distribution of this file, with or without modification,
1887 are permitted in any medium without royalty provided the copyright
1888 notice and this notice are preserved.
1894 version-control: never