3 * gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
8 * NEWS: Mention {disp16} pseudo prefix.
12 * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
17 * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
18 DW_FORM_udata for DW_AT_high_pc.
19 (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
21 * read.c (emit_leb128_exp): No longer static.
22 * read.h (emit_leb128_exp): Define.
26 * gas/dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
27 least one directory if there is at least one file. Use dirs[1]
28 if dirs[0] is not set, or if there is no dirs[1] the current
29 working directory. Use files[1] filename, when files[0] filename
34 * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
36 * gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
37 * gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
38 * gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
39 * gas/testsuite/gas/elf/dwarf-5-cu.s: Likewise.
40 * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
44 * doc/as.texi (--gdwarf-[345]): Fix typo.
48 * config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
49 (md_parse_option): Remove case for OPTION_MOVE_DATA.
50 (md_longopts): Remove "md" entry.
51 (md_show_usage): Likewise.
56 * config/tc-i386.c (_i386_insn::disp_encoding): Add
58 (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
60 (build_modrm_byte): Handle {disp16}.
61 (i386_index_check): Check invalid {disp16} and {disp32} pseudo
63 * doc/c-i386.texi: Update {disp32} documentation and document
65 * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
66 * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
68 * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
69 tests with 128-byte displacement. Add {disp16} tests.
70 * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
71 vmovaps test. Add (%r13)/(%r13d) tests.
72 * testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
73 * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
74 * testsuite/gas/i386/inval-pseudo.l: Updated.
75 * testsuite/gas/i386/pseudos.d: Likewise.
76 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
80 * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
81 * Makefile.in, doc/Makefile.in: Regenerate.
82 * configure: Regenerate.
86 * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
87 * testsuite/gas/elf/dwarf2-5.d: Likewise.
88 * testsuite/gas/i386/dw2-compress-3a.d: Likewise.
89 * testsuite/gas/i386/dw2-compress-3b.d: Likewise.
90 * testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
91 * testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
95 * as.c (dwarf_level): Initialise to 3 in case this is not set on
100 * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
101 * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
102 * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
103 * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
104 * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
105 * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
106 * testsuite/gas/mips/mips.exp: Run the new tests.
110 * testsuite/gas/mips/global-local-symtab-o32.d: New test.
111 * testsuite/gas/mips/global-local-symtab-o32t.d: New test.
112 * testsuite/gas/mips/global-local-symtab-n32.d: New test.
113 * testsuite/gas/mips/global-local-symtab-n32t.d: New test.
114 * testsuite/gas/mips/global-local-symtab-n64.d: New test.
115 * testsuite/gas/mips/global-local-symtab.s: New test source.
116 * testsuite/gas/mips/mips.exp: Run the new tests.
121 * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
122 (%bp)/(%ebp)/(%rbp) for {disp32}.
123 * doc/c-i386.texi: Update {disp32} documentation.
124 * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
125 * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
126 * testsuite/gas/i386/pseudos.d: Updated.
127 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
131 * doc/as.texi: Replace preceeded with preceded.
135 * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
140 * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
145 * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
154 * testsuite/gas/mips/jal-xgot-irix.d: New file.
155 * testsuite/gas/mips/jalr2-irix.d: New file.
156 * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
158 * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
160 * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
161 * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
162 `*-*-irix*' targets. Add source file designator.
167 * testsuite/gas/mips/jalr2.d: Add name designator.
168 * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
169 tests involving the JALR relocation throughout.
173 * testsuite/gas/mips/mips.exp: Use a helper variable for
174 IRIX/non-IRIX test selection.
178 * testsuite/gas/i386/evex-no-scale-64.d,
179 testsuite/gas/i386/addr32.d,
180 testsuite/gas/i386/x86-64-addr32-intel.d,
181 testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
185 * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
189 * testsuite/gas/i386/evex-no-scale-32.d,
190 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
191 * testsuite/gas/i386/evex-no-scale-32.s,
192 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
193 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
195 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
200 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
201 (my_getSmallExpression): Adjust accordingly.
206 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
207 conditional around it.
208 (md_begin): Insert backslash into operand_chars[] when slash is
210 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
211 \* as operators when / may be a comment character.
212 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
213 * testsuite/gas/i386/i386.exp: Run new test.
218 * app.c (last_char): Drop TC_ARM conditional around it.
219 (struct app_save): Drop TC_ARM conditional around last_char.
220 (app_push, app_pop): Drop TC_ARM conditional from last_char
222 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
223 backslash-precedes-comment-character check.
227 * config/tc-i386.c (frag_opcode_byte): New.
228 (output_branch): Emit error when in absolute section.
229 (output_jump, output_insn): Use frag_opcode_byte. Handle being
231 (output_interseg_jump, output_disp, output_imm): Handle being in
233 * testsuite/gas/i386/sizing.s,
234 testsuite/gas/i386/sizing32.d,
235 testsuite/gas/i386/sizing64.d: New.
236 * testsuite/gas/i386/i386.exp: Run new tests.
240 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
241 is_elf_format as applicable; merely exclude iamcu tests.
246 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
247 against section to PC32 reloc.
248 * testsuite/gas/i386/relax-5.d: Updated.
249 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
254 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
255 * testsuite/gas/i386/addr32.d: Likewise.
256 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
257 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
261 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
262 the addend field of REL relocations. Store the full addend into
263 the note for REL relocations.
267 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
269 * testsuite/gas/i386/x86-64-stack-intel.d,
270 testsuite/gas/i386/x86-64-stack-suffix.d,
271 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
275 * testsuite/gas/i386/disassem.d,
276 testsuite/gas/i386/ilp32/x86-64-branch.d,
277 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
278 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
279 testsuite/gas/i386/noreg32.d,
280 testsuite/gas/i386/noreg64-rex64.d,
281 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
282 testsuite/gas/i386/opcode.d,
283 testsuite/gas/i386/solaris/x86-64-branch-2.d,
284 testsuite/gas/i386/solaris/x86-64-jump.d,
285 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
286 testsuite/gas/i386/solaris/x86-64-nop-3.d,
287 testsuite/gas/i386/solaris/x86-64-nop-4.d,
288 testsuite/gas/i386/solaris/x86-64-nop-5.d,
289 testsuite/gas/i386/solaris/x86-64-relax-2.d,
290 testsuite/gas/i386/solaris/x86-64-relax-3.d,
291 testsuite/gas/i386/x86-64-align-branch-1a.d,
292 testsuite/gas/i386/x86-64-align-branch-1b.d,
293 testsuite/gas/i386/x86-64-align-branch-1c.d,
294 testsuite/gas/i386/x86-64-align-branch-1d.d,
295 testsuite/gas/i386/x86-64-align-branch-1e.d,
296 testsuite/gas/i386/x86-64-align-branch-1f.d,
297 testsuite/gas/i386/x86-64-align-branch-1g.d,
298 testsuite/gas/i386/x86-64-align-branch-1h.d,
299 testsuite/gas/i386/x86-64-align-branch-1i.d,
300 testsuite/gas/i386/x86-64-align-branch-2a.d,
301 testsuite/gas/i386/x86-64-align-branch-2b.d,
302 testsuite/gas/i386/x86-64-align-branch-2c.d,
303 testsuite/gas/i386/x86-64-align-branch-3.d,
304 testsuite/gas/i386/x86-64-align-branch-4a.d,
305 testsuite/gas/i386/x86-64-align-branch-4b.d,
306 testsuite/gas/i386/x86-64-align-branch-5.d,
307 testsuite/gas/i386/x86-64-align-branch-6.d,
308 testsuite/gas/i386/x86-64-branch-2.d,
309 testsuite/gas/i386/x86-64-branch-3.d,
310 testsuite/gas/i386/x86-64-branch.d,
311 testsuite/gas/i386/x86-64-disassem.d,
312 testsuite/gas/i386/x86-64-disp32.d,
313 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
314 testsuite/gas/i386/x86-64-gotpcrel.d,
315 testsuite/gas/i386/x86-64-ifunc.d,
316 testsuite/gas/i386/x86-64-jump.d,
317 testsuite/gas/i386/x86-64-lfence-byte.d,
318 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
319 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
320 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
321 testsuite/gas/i386/x86-64-lfence-load.d,
322 testsuite/gas/i386/x86-64-lfence-ret-a.d,
323 testsuite/gas/i386/x86-64-lfence-ret-b.d,
324 testsuite/gas/i386/x86-64-lfence-ret-c.d,
325 testsuite/gas/i386/x86-64-lfence-ret-d.d,
326 testsuite/gas/i386/x86-64-lfence-ret-e.d,
327 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
328 testsuite/gas/i386/x86-64-mpx-branch-1.d,
329 testsuite/gas/i386/x86-64-mpx.d,
330 testsuite/gas/i386/x86-64-nop-3.d,
331 testsuite/gas/i386/x86-64-nop-4.d,
332 testsuite/gas/i386/x86-64-nop-5.d,
333 testsuite/gas/i386/x86-64-nops-7.d,
334 testsuite/gas/i386/x86-64-notrack.d,
335 testsuite/gas/i386/x86-64-opcode.d,
336 testsuite/gas/i386/x86-64-relax-2.d,
337 testsuite/gas/i386/x86-64-relax-3.d,
338 testsuite/gas/i386/x86-64-relax-4.d,
339 testsuite/gas/i386/x86-64-rtm.d,
340 testsuite/gas/i386/x86-64-stack.d,
341 testsuite/gas/i386/x86-64-unique.d,
342 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
347 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
349 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
350 * testsuite/gas/i386/addr32.d: Updated.
351 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
352 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
353 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
354 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
358 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
359 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
360 * testsuite/gas/i386/intel.d,
361 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
365 * testsuite/gas/i386/prefix.d: Adjust expectations.
369 * testsuite/gas/i386/x86-64-avx-intel.d,
370 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
374 * testsuite/gas/i386/movbe-suffix.d,
375 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
376 * testsuite/gas/i386/i386.exp: Run new tests.
380 * testsuite/gas/i386/crc32-suffix.d,
381 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
382 * testsuite/gas/i386/i386.exp: Run new tests.
383 * testsuite/gas/i386/arch-10-bdver1.d,
384 testsuite/gas/i386/arch-10-bdver2.d,
385 testsuite/gas/i386/arch-10-bdver3.d,
386 testsuite/gas/i386/arch-10-bdver4.d,
387 testsuite/gas/i386/arch-10-btver1.d,
388 testsuite/gas/i386/arch-10-btver2.d,
389 testsuite/gas/i386/arch-10-lzcnt.d,
390 testsuite/gas/i386/arch-10-prefetchw.d,
391 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
392 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
393 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
394 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
395 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
396 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
397 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
398 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
399 testsuite/gas/i386/x86-64-arch-2-btver1.d,
400 testsuite/gas/i386/x86-64-arch-2-btver2.d,
401 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
402 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
403 testsuite/gas/i386/x86-64-arch-2.d,
404 testsuite/gas/i386/x86-64-crc32.d,
405 testsuite/gas/i386/x86-64-pseudos.d,
406 testsuite/gas/i386/x86-64-sse-noavx.d,
407 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
411 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
412 ModR/M-encoded byte register cases.
413 * testsuite/gas/i386/x86-64-pseudos.d,
414 testsuite/gas/i386/x86-64-reg-intel.d,
415 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
419 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
420 not-ModR/M-encoded byte register cases.
421 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
425 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
426 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
427 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
428 testsuite/gas/i386/ilp32/x86-64-avx.d,
429 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
430 testsuite/gas/i386/ilp32/x86-64-crc32.d,
431 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
432 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
433 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
434 testsuite/gas/i386/ilp32/x86-64-reg.d,
435 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
436 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
437 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
438 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
439 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
440 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
445 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
450 * po/fr.po: Updated French translation.
454 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
455 * testsuite/gas/elf/dwarf2-12.d: Likewise.
456 * testsuite/gas/elf/dwarf2-13.d: Likewise.
457 * testsuite/gas/elf/dwarf2-14.d: Likewise.
461 * config/tc-i386.c (output_insn): Check i.xstate to set
462 GNU_PROPERTY_X86_FEATURE_2_TMM.
463 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
464 x86-64-property-8 and x86-64-property-9.
465 * testsuite/gas/i386/x86-64-property-7.d: New file.
466 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
467 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
468 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
469 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
470 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
474 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
475 has_regymm, has_regzmm and has_regtmm. Add xstate.
476 (md_assemble): Set i.xstate from operand types in instruction
478 (build_modrm_byte): Updated.
479 (output_insn): Check i.xstate.
480 * testsuite/gas/i386/i386.exp: Run property-6 and
482 * testsuite/gas/i386/property-6.d: New file.
483 * testsuite/gas/i386/property-6.s: Updated.
484 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
488 * testsuite/gas/i386/property-5.d: Correct test name.
492 * NEWS: Mention support for Intel AMX instructions.
493 * config/tc-i386.c (i386_error): Add invalid_sib_address.
494 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
495 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
496 (match_simd_size): Add tmmword check.
497 (operand_type_match): Add tmmword.
498 (type_names): Add rTMM.
499 (i386_error): Add invalid_tmm_register_set.
500 (check_VecOperands): Handle invalid_sib_address and
501 invalid_tmm_register_set.
502 (match_template): Handle invalid_sib_address.
503 (build_modrm_byte): Handle non-vector SIB and zmmword.
504 (i386_index_check): Disallow RegIP for non-vector SIB.
505 (check_register): Handle zmmword.
506 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
507 * testsuite/gas/i386/i386.exp: Add AMX new tests.
508 * testsuite/gas/i386/intel-regs.d: Add tmm.
509 * testsuite/gas/i386/intel-regs.s: Add tmm.
510 * testsuite/gas/i386/x86-64-amx-intel.d: New.
511 * testsuite/gas/i386/x86-64-amx-inval.l: New.
512 * testsuite/gas/i386/x86-64-amx-inval.s: New.
513 * testsuite/gas/i386/x86-64-amx.d: New.
514 * testsuite/gas/i386/x86-64-amx.s: New.
515 * testsuite/gas/i386/x86-64-amx-bad.d: New.
516 * testsuite/gas/i386/x86-64-amx-bad.s: New.
520 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
521 readelf's line table decoding.
522 * testsuite/gas/elf/dwarf2-12.d: Likewise.
523 * testsuite/gas/elf/dwarf2-13.d: Likewise.
524 * testsuite/gas/elf/dwarf2-14.d: Likewise.
525 * testsuite/gas/elf/dwarf2-15.d: Likewise.
526 * testsuite/gas/elf/dwarf2-16.d: Likewise.
527 * testsuite/gas/elf/dwarf2-17.d: Likewise.
528 * testsuite/gas/elf/dwarf2-18.d: Likewise.
529 * testsuite/gas/elf/dwarf2-19.d: Likewise.
530 * testsuite/gas/elf/dwarf2-5.d: Likewise.
531 * testsuite/gas/elf/dwarf2-6.d: Likewise.
532 * testsuite/gas/elf/dwarf2-7.d: Likewise.
536 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
537 VEX/EVEX vector instructions.
538 * testsuite/gas/i386/property-4.d: New file.
539 * testsuite/gas/i386/property-4.s: Likewise.
540 * testsuite/gas/i386/property-5.d: Likewise.
541 * testsuite/gas/i386/property-5.s: Likewise.
542 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
543 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
547 * NEWS: Mention --enable-x86-used-note.
548 * configure.ac: Configure with --enable-x86-used-note by default
550 * configure: Regenerated.
554 * config/obj-coff.h: Remove TE_PE support.
555 * config/tc-ppc.c: Likewise.
556 * config/tc-ppc.h: Likewise.
557 * configure.tgt: Remove powerpc PE and powerpc lynxos.
558 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
560 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
564 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
566 * testsuite/gas/i386/i386.exp: Run new tests.
570 * config/tc-arc.c (find_opcode_match): Add error messages.
571 * testsuite/gas/arc/add_s-err.s: Update test.
572 * testsuite/gas/arc/asm-errors.err: Likewise.
573 * testsuite/gas/arc/cpu-em-err.s: Likewise.
574 * testsuite/gas/arc/hregs-err.s: Likewise.
575 * testsuite/gas/arc/warn.s: Likewise.
580 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
584 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
585 * testsuite/gas/ppc/ppc.exp: Likewise.
586 * testsuite/gas/all/weakref1l.d: Likewise.
590 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
595 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
596 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
597 testsuite/gas/i386/x86-64-evex-wig1.d,
598 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
603 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
604 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
605 * testsuite/gas/i386/avx512f-opts-intel.d,
606 testsuite/gas/i386/avx512f-opts.d
607 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
608 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
613 * config/tc-arm.c: Fix spelling mistake.
614 * config/tc-riscv.c: Likewise.
615 * config/tc-z80.c: Likewise.
616 * po/gas.pot: Regenerate.
620 * po/uk.po: Updated Ukranian translation.
624 * configure: Regenerate.
625 * po/gas.pot: Regenerate.
629 * version.m4: Change version number to 2.35.50.
630 * configure: Regenerate.
631 * po/bfd.pot: Regenerate.
635 Binutils 2.35 branch created.
640 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
644 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
645 swap two source operands.
649 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
653 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
654 segfault on negative chars.
655 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
656 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
661 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
663 * testsuite/gas/ia64/unwind.d: Likewise.
664 * testsuite/gas/mmix/bspec-1.d: Likewise.
665 * testsuite/gas/mmix/bspec-2.d: Likewise.
666 * testsuite/gas/mmix/comment-1.d: Likewise.
667 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
671 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
675 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
676 in data sections, and mep.
680 * NEWS: Mention x86 NaCl target support removal.
681 * config/tc-i386.c: Remove x86 NaCl target support.
682 * config/tc-i386.h: Likewise.
683 * configure.tgt: Likewise.
684 * testsuite/gas/i386/i386.exp: Likewise.
685 * testsuite/gas/i386/iamcu-1.d: Likewise.
686 * testsuite/gas/i386/iamcu-2.d: Likewise.
687 * testsuite/gas/i386/iamcu-3.d: Likewise.
688 * testsuite/gas/i386/iamcu-4.d: Likewise.
689 * testsuite/gas/i386/iamcu-5.d: Likewise.
690 * testsuite/gas/i386/k1om.d: Likewise.
691 * testsuite/gas/i386/l1om.d: Likewise.
695 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
696 checking into riscv_csr_address.
697 (riscv_csr_version_check): Likewise.
698 (riscv_csr_address): New function. Return the suitable CSR address
699 after checking the ISA dependency and versions. Issue warnings if
700 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
701 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
702 priv spec versions for them.
703 (reg_csr_lookup_internal): Call riscv_csr_address to find the
704 suitable CSR address.
705 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
706 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
707 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
708 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
709 priv spec warnings here. These warnings are added by accident.
710 Remove them and only focus on the ISA dependency warnings.
711 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
712 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
713 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
714 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
715 than the privileged ones.
716 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
717 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
718 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
719 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
720 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
721 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
722 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
723 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
724 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
725 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
729 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
730 (md_assemble): Don't process ImmExt without operands.
735 * config/tc-mmix.c (md_assemble) <fixup for
736 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
737 Also, set its fx_no_overflow.
738 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
739 Similarly this fixup affects 4 bytes, not 8 and needs its
741 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
742 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
746 * config/tc-s12z.c: Use C style comments.
747 * config/tc-z80.c: Likewise.
748 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
752 * config/tc-i386.c (md_assemble): Process ImmExt without
757 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
758 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
759 VECSIB256 and VECSIB512, respectively.
760 (build_modrm_byte): Replace vecsib with sib.
764 * testsuite/gas/i386/nop-1-suffix.d: New.
765 * testsuite/gas/i386/i386.exp: Run new test.
769 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
770 (md_pseudo_table): Handle "gnu_attribute".
771 * doc/as.texi: Document GNU attribute for M68K.
776 * config/tc-arm.c (arm_force_relocation): Force resolution of
777 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
778 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
782 * config/tc-i386.c (md_assemble): Move call to process_immext()
784 (process_operands): ... here.
788 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
789 diagnostic when there is a sizing prefix. Switch to word/dword/
790 qword encoding when there is a sizing prefix and no (explicit or
792 (update_imm): Handle presence of a sizing prefix.
793 * testsuite/gas/i386/noreg16-data32.d,
794 testsuite/gas/i386/noreg32-data16.d,
795 testsuite/gas/i386/noreg32-data16.e,
796 testsuite/gas/i386/noreg64-data16.d,
797 testsuite/gas/i386/noreg64-data16.e,
798 testsuite/gas/i386/noreg64-rex64.d: New.
799 * testsuite/gas/i386/i386.exp: Run new tests.
800 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
801 Introduce and use pfx* macros.
802 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
804 * testsuite/gas/i386/noreg16.d: Adjust expectations.
808 * testsuite/gas/i386/avx-16bit.d,
809 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
810 testsuite/gas/i386/avx512f-16bit.d,
811 testsuite/gas/i386/avx512f.d,
812 testsuite/gas/i386/evex-lig256.d,
813 testsuite/gas/i386/evex-lig512.d
814 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
815 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
816 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
817 testsuite/gas/i386/sse2-16bit.d,
818 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
823 * config/tc-i386.c (md_assemble): Also reject explicit REX
824 prefixes with VEX and alike encoded insns. Zap consumed bits
826 (output_insn): Don't ignore REX prefix for VEX and alike
827 encodings; abort() instead if encountered.
828 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
830 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
831 * testsuite/gas/i386/x86-64-pseudos.d,
832 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
836 * config/tc-i386.c (process_operands): Translate explicit REX
837 prefix into i.rex for SSE2AVX templates.
838 (set_rex_vrex): New helper.
839 (build_modrm_byte): Use it.
840 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
842 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
846 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
847 templates when there's no data size prefix.
848 (md_assemble): Reject data size prefix also for legacy encoded
850 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
851 Uncomment previously not working line.
852 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
854 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
855 testsuite/gas/i386/sse2avx.d: Adjust expectations.
859 * config/tc-i386.c (build_evex_prefix): Drop early setting of
864 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
865 explicit_priv_attr. It used to indicate CSR or priv instructions are
867 (riscv_is_priv_insn): Return True if it is a privileged instruction.
868 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
869 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
870 (riscv_write_out_attrs): Clarification of when to generate the elf
871 priv spec attributes.
872 * testsuite/gas/riscv/attribute-11.s: Add comments.
873 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
874 `priv_insn_<n>` to decide which priv instruction is expected to used.
876 * testsuite/gas/riscv/attribute-14a.d: Likewise.
877 * testsuite/gas/riscv/attribute-14b.d: Likewise.
878 * testsuite/gas/riscv/attribute-14c.d: Likewise.
879 * testsuite/gas/riscv/attribute-14d.d: Likewise.
880 * testsuite/gas/riscv/attribute-14e.d: Likewise.
884 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
885 (riscv_set_default_priv_spec): Get the priv spec version from the
886 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
890 * configure.tgt: Set bfd_gas for all SH targets.
894 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
895 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
900 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
901 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
902 * doc/c-i386.texi: Add avx512_vp2intersect.
906 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
908 * testsuite/gas/i386/sse-check.s: Adjust comment.
909 * testsuite/gas/i386/sse-check-error.l,
910 testsuite/gas/i386/sse-check-warn.e,
911 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
916 * config/tc-tic30.h: Remove OBJ_AOUT support.
917 * configure.tgt: Delete tic30-*-*aout* entry.
921 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
923 (elf32xtensa_abi): New declaration.
924 (option_abi_windowed, option_abi_call0): New enum constants.
925 (md_longopts): Add entries for --abi-windowed and --abi-call0.
926 (md_parse_option): Add handlers for --abi-windowed and
928 (xtensa_add_config_info): Use xtensa_abi_choice instead of
929 XSHAL_ABI to format ABI tag.
930 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
931 --abi-call0 to the list of options.
932 * doc/c-xtensa.texi: Add description for options --abi-windowed
934 * testsuite/gas/xtensa/abi-call0.d: New test definition.
935 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
936 * testsuite/gas/xtensa/abi.s: New test source.
941 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
943 * testsuite/gas/i386/tsxldtrk.s: Likewise.
944 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
945 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
949 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
950 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
951 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
955 * doc/c-avr.texi: Improve wording.
959 * testsuite/gas/i386/x86-64-pseudos-bad.s,
960 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
964 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
966 * testsuite/gas/i386/prefix.d: Adjust expectations.
970 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
971 with VEX/EVEX encoding tests.
972 * testsuite/gas/i386/prefix.d: Adjust expectations.
976 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
978 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
979 * testsuite/gas/i386/noreg64.d: Adjust expectations.
980 * testsuite/gas/i386/noreg-intel64.d,
981 testsuite/gas/i386/noreg-intel64.l,
982 testsuite/gas/i386/noreg-intel64.s: New.
983 * testsuite/gas/i386/i386.exp: Run new tests.
987 * config/tc-i386.c (vex_encoding_error): New enumerator.
988 (VEX_check_operands): Rename to VEX_check_encoding. Check
989 for vex_encoding_error. Move Imm4 handling ...
990 (check_VecOperands): ... here.
991 (match_template): Call VEX_check_encoding when there are no
992 operands. Split construct calling check_VecOperands and
993 VEX_check_encoding (when there are operands).
994 (check_register): Don't blindly set vex_encoding_evex.
995 * testsuite/gas/i386/pseudos-bad.s,
996 testsuite/gas/i386/pseudos-bad.l: New.
997 * testsuite/gas/i386/i386.exp: Run new test.
998 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
1002 * config/tc-arm.c (insns): Add dfb.
1003 * testsuite/gas/arm/dfb.d: New test.
1004 * testsuite/gas/arm/dfb.s: Input for test.
1008 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
1012 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
1016 * config/tc-i386.c (check_byte_reg): Drop dead conditional
1021 * config/tc-i386.c (check_register): Split RegTR handling, to
1022 fail recognition also in 64-bit mode as well as with i586 or
1023 i686 explicitly enabled.
1024 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
1025 * testsuite/gas/i386/x86_64-intel.d,
1026 testsuite/gas/i386/x86_64.d: Adjust expectations.
1030 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
1031 * testsuite/gas/cfi/cfi.exp: Run this test.
1035 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
1036 check to %st(N) parsing logic.
1037 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
1041 * config/tc-i386.c (bad_reg): New.
1042 (check_VecOperations, i386_att_operand, i386_parse_name): Check
1044 (check_register): New, broken out from ...
1045 (parse_real_register): ... here. Call it.
1046 (parse_register): Call it, and error upon failure.
1047 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
1048 testsuite/gas/i386/x86-64-equ-bad.s,
1049 testsuite/gas/i386/x86-64-equ-bad.l: New.
1050 * testsuite/gas/i386/i386.exp: Run new tests.
1054 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
1055 * doc/c-ppc.texi: Likewise.
1059 * config/tc-ppc.c: Update throughout for reloc renaming.
1063 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
1068 * config/tc-riscv.c (explicit_csr): New static boolean.
1069 Used to indicate CSR are explictly used.
1070 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
1071 (riscv_write_out_attrs): If we already have set elf priv
1072 attributes, then generate them. Otherwise, don't generate
1073 them when no CSR are used.
1074 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
1075 * testsuite/gas/riscv/attribute-02.d: Likewise.
1076 * testsuite/gas/riscv/attribute-03.d: Likewise.
1077 * testsuite/gas/riscv/attribute-04.d: Likewise.
1078 * testsuite/gas/riscv/attribute-05.d: Likewise.
1079 * testsuite/gas/riscv/attribute-06.d: Likewise.
1080 * testsuite/gas/riscv/attribute-07.d: Likewise.
1081 * testsuite/gas/riscv/attribute-08.d: Likewise.
1082 * testsuite/gas/riscv/attribute-09.d: Likewise.
1083 * testsuite/gas/riscv/attribute-10.d: Likewise.
1084 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
1085 * testsuite/gas/riscv/attribute-11.s: New testcase.
1086 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
1087 used, so we should output the ELF priv attributes.
1088 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
1089 used, so output the priv attributes according to the -mpriv-spec.
1090 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
1091 used, so ignore the -mpriv-spec setting.
1095 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
1096 cgen_get_insn_value.
1097 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
1098 endianness to cgen_get_insn_value and cgen_put_insn_value.
1102 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
1103 cgen_put_insn_value.
1107 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
1109 (md_assemble): Remove no longer needed hack.
1113 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
1114 cgen_put_insn_value.
1115 (gas_cgen_md_apply_fix): Likewise.
1116 (gas_cgen_md_apply_fix): Likewise.
1117 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
1118 cgen_put_insn_value.
1119 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
1120 cgen_put_insn_value.
1124 * testsuite/config/default.exp: Remove global directive outside
1126 * testsuite/gas/mep/complex-relocs.exp: Likewise.
1127 * testsuite/gas/microblaze/relax_size.exp: Likewise.
1128 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
1129 * testsuite/gas/mt/relocs.exp: Likewise.
1130 * testsuite/gas/rx/rx.exp: Likewise.
1134 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
1140 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
1141 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
1142 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
1143 Move B before SB. Move J before UJ.
1147 * write.c (relax_segment): Fix handling of negative offset when
1148 relaxing an rs_org frag.
1149 * testsuite/gas/aarch64/org-neg.d: New test.
1150 * testsuite/gas/aarch64/org-neg.l: Error output for test.
1151 * testsuite/gas/aarch64/org-neg.s: Input for test.
1152 * testsuite/gas/arm/org-neg.d: New test.
1153 * testsuite/gas/arm/org-neg.l: Error output for test.
1154 * testsuite/gas/arm/org-neg.s: Input for test.
1158 Fix unexpected failures in gas testsuite for pdp11-aout target.
1159 These are caused by the PDP11's mix of little-endian octets in
1160 shorts but shorts in big endian order for long or quad.
1162 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
1163 * testsuite/gas/all/gas.exp: Select alternate test scripts for
1164 pdp11, skip octa test completely.
1165 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
1166 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
1167 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
1171 * frags.c (frag_grow): Fix comment.
1176 * config/tc-pdp11.c (parse_reg): Distinguish register names from
1177 symbols that begin with a register name.
1178 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
1179 * testsuite/gas/pdp11/pr26001.s: Likewise.
1180 * testsuite/gas/pdp11/pr26001.d: Likewise.
1184 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
1185 pointer when creating struct riscv_csr_extra.
1189 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
1190 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
1191 * testsuite/gas/i386/inval-avx512f.l: Updated.
1195 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
1196 load/store instruction variants with alignment hints.
1197 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
1198 instruction variants with alignment hints.
1203 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
1204 instead of R_XGATE_PCREL_X.
1205 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
1206 BFD_RELOC_XGATE_PCREL_X.
1211 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
1212 with &fragP->fr_literal[0].
1217 * config/tc-vax.c (md_estimate_size_before_relax): Replace
1218 fragP->fr_literal with &fragP->fr_literal[0].
1219 (md_convert_frag): Likewise.
1224 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
1225 with &fragP->fr_literal[0].
1230 * config/tc-crx.c (getreg_image): Change argument type to int.
1231 (md_convert_frag): Replace fragP->fr_literal with
1232 &fragP->fr_literal[0].
1237 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
1238 sprintf with memmove.
1242 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
1243 with &fragP->fr_literal[0].
1248 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
1249 2 overlapping strings.
1253 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
1254 with &fragP->fr_literal[0].
1258 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
1259 with &fragp->fr_literal[0].
1260 * config/tc-microblaze.c (md_apply_fix): Likewise.
1261 * config/tc-sh.c (md_convert_frag): Likewise.
1266 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
1267 asection to segT. New locals seg and subseg. Call subseg_set before
1268 fix_new_exp. Call subseg_set after loop to restore original values.
1272 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
1274 * config/obj-elf.c: Likewise.
1275 * config/tc-aarch64.c: Likewise.
1276 * config/tc-arm.c: Likewise.
1277 * config/tc-m68k.c: Likewise.
1278 * config/tc-nios2.c: Likewise.
1279 * config/tc-tic30.c: Likewise.
1280 * ecoff.c: Likewise.
1282 * stabs.c: Likewise.
1283 * symbols.c: Likewise.
1284 * testsuite/gas/all/test-gen.c: Likewise.
1288 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
1289 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
1290 Static variables which are used to set the ISA extensions. You can
1291 use -march (or ELF build attributes) and -misa-spec to set them,
1293 (ext_version_hash): The hash table used to handle the extensions
1295 (init_ext_version_hash): Initialize the ext_version_hash according
1296 to riscv_ext_version_table.
1297 (riscv_get_default_ext_version): The callback function of
1298 riscv_parse_subset_t. According to the choosed ISA spec,
1299 get the default version for the specific extension.
1300 (riscv_set_arch): Set the callback function.
1301 (enum options, struct option md_longopts): Add new option -misa-spec.
1302 (md_parse_option): Do not call riscv_set_arch for -march. We will
1303 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
1304 to set default_isa_spec class.
1305 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
1306 ext_version_hash, and then call riscv_set_arch to set the architecture
1307 with versions according to default_arch_with_ext.
1308 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
1310 * testsuite/gas/riscv/attribute-03.d: Likewise.
1311 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
1312 already set it's version to 2p1 by march, so no need to use the default
1313 2p2 version. For m-ext, we do not set the version by -march and ELF arch
1314 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
1315 ISA spec 2p2, so set 0p0 to it.
1316 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
1317 zicsr is 2p0 according to ISA spec 20191213.
1318 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
1319 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
1320 You can set them by configure options --with-arch and
1321 --with-isa-spec, respectively.
1322 (riscv_set_default_isa_spec): New function used to set the
1324 (md_parse_option): Call riscv_set_default_isa_spec rather than
1325 call riscv_get_isa_spec_class directly.
1326 (riscv_after_parse_args): If the -isa-spec is not set, then we
1327 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
1328 calling riscv_set_default_isa_spec.
1329 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
1330 the --with-isa-spec may be set to different ISA spec.
1331 * testsuite/gas/riscv/attribute-02.d: Likewise.
1332 * testsuite/gas/riscv/attribute-03.d: Likewise.
1333 * testsuite/gas/riscv/attribute-04.d: Likewise.
1334 * testsuite/gas/riscv/attribute-05.d: Likewise.
1335 * testsuite/gas/riscv/attribute-06.d: Likewise.
1336 * testsuite/gas/riscv/attribute-07.d: Likewise.
1337 * configure.ac: Add configure options, --with-arch and
1339 * configure: Regenerated.
1340 * config.in: Regenerated.
1341 * config/tc-riscv.c (default_priv_spec): Static variable which is
1342 used to check if the CSR is valid for the chosen privilege spec. You
1343 can use -mpriv-spec to set it.
1344 (enum reg_class): We now get the CSR address from csr_extra_hash rather
1345 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
1346 (riscv_init_csr_hashes): Only need to initialize one hash table
1348 (riscv_csr_class_check): Change the return type to void. Don't check
1349 the ISA dependency if -mcsr-check isn't set.
1350 (riscv_csr_version_check): New function. Check and find the CSR address
1351 from csr_extra_hash, according to default_priv_spec. Report warning
1352 for the invalid CSR if -mcsr-check is set.
1353 (reg_csr_lookup_internal): Updated.
1354 (reg_lookup_internal): Likewise.
1355 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
1356 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
1357 (md_parse_option): Call riscv_set_default_priv_version to set
1359 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
1360 privilege spec to the newest one.
1361 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
1362 include/opcode/riscv.h.
1363 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
1364 to check the ISA dependency for CSR, so fix the spec version by adding
1366 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
1367 version warnings for the test case.
1368 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1369 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1370 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1371 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1372 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1373 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
1374 Check whether the CSR is valid when privilege version 1.9 is choosed.
1375 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
1376 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
1377 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
1378 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
1379 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
1380 Check whether the CSR is valid when privilege version 1.10 is choosed.
1381 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
1382 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
1383 Check whether the CSR is valid when privilege version 1.11 is choosed.
1384 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
1385 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
1386 setting. You can set it by configure option --with-priv-spec.
1387 (riscv_set_default_priv_spec): New function used to set the default
1389 (md_parse_option): Call riscv_set_default_priv_spec rather than
1390 call riscv_get_priv_spec_class directly.
1391 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
1392 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
1393 calling riscv_set_default_priv_spec.
1394 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
1395 the --with-priv-spec may be set to different privilege spec.
1396 * testsuite/gas/riscv/priv-reg.d: Likewise.
1397 * configure.ac: Add configure option --with-priv-spec.
1398 * configure: Regenerated.
1399 * config.in: Regenerated.
1400 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
1401 explicit_attr. Set it to TRUE if any ELF attribute is found.
1402 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
1403 the priv attributes are set.
1404 (md_assemble): Set the default_priv_spec according to the priv
1405 attributes when we start to assemble instruction.
1406 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
1407 riscv_write_out_attrs. Update the arch and priv attributes. If we
1408 don't set the corresponding ELF attributes, then try to output the
1410 (riscv_set_public_attributes): If any ELF attribute or -march-attr
1411 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
1412 to update the arch and priv attributes.
1413 (s_riscv_attribute): Make sure all arch and priv attributes are set
1414 before any instruction.
1415 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
1416 ELF attribute or -march-attr is set. If the priv attributes are not
1417 set, then try to update them by the default setting (-mpriv-spec or
1419 * testsuite/gas/riscv/attribute-02.d: Likewise.
1420 * testsuite/gas/riscv/attribute-03.d: Likewise.
1421 * testsuite/gas/riscv/attribute-04.d: Likewise.
1422 * testsuite/gas/riscv/attribute-06.d: Likewise.
1423 * testsuite/gas/riscv/attribute-07.d: Likewise.
1424 * testsuite/gas/riscv/attribute-08.d: Likewise.
1425 * testsuite/gas/riscv/attribute-09.d: Likewise.
1426 * testsuite/gas/riscv/attribute-10.d: Likewise.
1427 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
1428 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
1429 set by priv attributes must be supported.
1430 * testsuite/gas/riscv/attribute-05.s: Likewise.
1431 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
1432 priv attributes according to the -mpriv-spec option.
1433 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
1434 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
1435 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
1436 * testsuite/gas/riscv/priv-reg.d: Removed.
1437 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
1438 CSR according to the priv spec 1.9.
1439 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
1440 CSR according to the priv spec 1.9.1.
1441 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
1442 CSR according to the priv spec 1.10.
1443 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
1444 CSR according to the priv spec 1.11.
1445 * config/tc-riscv.c (md_show_usage): Add descriptions about
1446 the new GAS options.
1447 * doc/c-riscv.texi: Likewise.
1451 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
1452 * testsuite/gas/ppc/power9.d: Likewise.
1453 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
1454 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
1455 sync, wait, waitrsv>: Add tests.
1456 * testsuite/gas/ppc/power10.d: Likewise.
1461 * config/tc-arm.c : Add arm_ext_v8r feature.
1462 (it_fsm_post_encode): Check arm_ext_v8r feature.
1463 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
1467 * write.c (write_contents): Use bfd_get_filename rather than
1468 accessing bfd->filename directly. Use bfd_section_name rather
1469 than accessing section->name directly.
1473 * symbols.c (local_symbol_make): Init all of lsy_flags.
1477 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
1478 before looking at add_symbol->sy_flags.
1482 * config/tc-i386.c: Not handle lret/iret.
1483 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
1484 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
1485 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
1486 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
1487 * testsuite/gas/i386/lfence-ret.s: Ditto.
1488 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
1489 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
1490 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
1491 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
1492 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
1493 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
1494 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
1499 * symbols.c (struct local_symbol): Update comment.
1500 (resolve_symbol_value): For resolved symbols equated to other
1501 symbols, verify that the referenced symbol is not a local_symbol
1502 before accessing sy_value. Don't leave symbol loops during
1503 finalize_syms resolution.
1504 * testsuite/gas/all/assign-bad-recursive.d: New test.
1505 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
1506 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
1507 * testsuite/gas/all/gas.exp: Run it.
1511 * po/sv.po: Updated Swedish translation.
1515 * testsuite/gas/ppc/scalarquad.d,
1516 * testsuite/gas/ppc/scalarquad.s: New test.
1517 * testsuite/gas/ppc/ppc.exp: Run it.
1521 * testsuite/gas/ppc/rightmost.d,
1522 * testsuite/gas/ppc/rightmost.s: New test.
1523 * testsuite/gas/ppc/ppc.exp: Run it.
1527 * testsuite/gas/ppc/xvtlsbb.d,
1528 * testsuite/gas/ppc/xvtlsbb.s: New test.
1529 * testsuite/gas/ppc/ppc.exp: Run it.
1533 * testsuite/gas/ppc/stringop.d,
1534 * testsuite/gas/ppc/stringop.s: New test.
1535 * testsuite/gas/ppc/ppc.exp: Run it.
1539 * testsuite/gas/ppc/set_bool.d,
1540 * testsuite/gas/ppc/set_bool.s: New test.
1541 * testsuite/gas/ppc/ppc.exp: Run it.
1545 * testsuite/gas/ppc/bitmanip.d,
1546 * testsuite/gas/ppc/bitmanip.s: New test.
1547 * testsuite/gas/ppc/ppc.exp: Run it.
1551 * testsuite/gas/ppc/genpcv.d,
1552 * testsuite/gas/ppc/genpcv.s: New test.
1553 * testsuite/gas/ppc/ppc.exp: Run it.
1557 * testsuite/gas/ppc/maskmanip.d,
1558 * testsuite/gas/ppc/maskmanip.s: New test.
1559 * testsuite/gas/ppc/ppc.exp: Run it.
1564 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
1565 (md_assemble): Check acc specified in correct operand.
1566 * testsuite/gas/ppc/outerprod.d,
1567 * testsuite/gas/ppc/outerprod.s,
1568 * testsuite/gas/ppc/vsx4.d,
1569 * testsuite/gas/ppc/vsx4.s: New tests.
1570 * testsuite/gas/ppc/ppc.exp: Run them.
1574 * testsuite/gas/ppc/simd_perm.d,
1575 * testsuite/gas/ppc/simd_perm.s: New test.
1576 * testsuite/gas/ppc/ppc.exp: Run it.
1580 * testsuite/gas/ppc/int128.d,
1581 * testsuite/gas/ppc/int128.s: New test.
1582 * testsuite/gas/ppc/ppc.exp: Run it.
1586 * testsuite/gas/ppc/vsx_32byte.d,
1587 * testsuite/gas/ppc/vsx_32byte.s: New test.
1588 * testsuite/gas/ppc/ppc.exp: Run it.
1592 * testsuite/gas/ppc/vec_mul.s,
1593 * testsuite/gas/ppc/vec_mul.d: New test.
1594 * testsuite/gas/ppc/ppc.exp: Run it.
1598 * testsuite/gas/ppc/byte_rev.d,
1599 * testsuite/gas/ppc/byte_rev.s: New test.
1600 * testsuite/gas/ppc/ppc.exp: Run it.
1604 * testsuite/gas/ppc/power10.d: Add paste. tests.
1605 * testsuite/gas/ppc/power10.s: Likewise.
1609 * testsuite/gas/ppc/power10.s: New test.
1610 * testsuite/gas/ppc/power10.d: Likewise.
1611 * testsuite/gas/ppc/ppc.exp: Run it.
1615 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
1617 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
1618 place of -mfuture/-Mfuture.
1619 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
1620 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
1624 * po/sv.po: Updated Swedish translation.
1629 * doc/as.texi (Preprocessing): Replace cross reference to not
1630 existant document with a URL to the equivalent page in the GCC
1635 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
1636 construction of a DWARF-5 directory name table.
1637 * testsuite/gas/elf/pr25917.d: Update expected output.
1641 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
1642 (md_parse_option): Remove initialization of elf_flags.
1647 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
1648 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
1649 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
1654 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
1655 table's existence before looking at its entries.
1656 Also do not emit a default directory entry if there are no
1659 * testsuite/gas/elf/pr25917.s: New test source file.
1660 * testsuite/gas/elf/pr25917.d: New test driver.
1661 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
1665 * config/tc-aarch64.c (fix_insn): Implement for
1666 AARCH64_OPND_UNDEFINED.
1667 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
1668 * testsuite/gas/aarch64/udf.s: New.
1669 * testsuite/gas/aarch64/udf.d: New.
1670 * testsuite/gas/aarch64/udf-invalid.s: New.
1671 * testsuite/gas/aarch64/udf-invalid.l: New.
1672 * testsuite/gas/aarch64/udf-invalid.d: New.
1676 * config/tc-rx.c (elf_flags): Reset default value.
1677 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
1681 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
1682 if it's not defined.
1683 (microarch_earliest): New static variable.
1684 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
1685 simcall opcode has mandatory parameter.
1686 (xg_init_global_config): Initialize microarch_earliest.
1691 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
1692 IMM0_8S and add support for IMM0_8U.
1693 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
1694 unsigned 8-bit immediate.
1695 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
1696 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
1700 * NEWS: Add news entry for big-obj.
1701 * config/tc-i386.c (i386_target_format): Support new format.
1702 * doc/c-i386.texi: Add i386 support.
1703 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
1704 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
1709 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
1710 (assign_file_to_slot): New function. Fills in an entry in the
1712 (allocate_filenum): Use new function.
1713 (allocate_filename_to_slot): Use new function. If the specified
1714 slot entry is already in use, but was chosen automatically then
1715 reassign the automatic entry.
1719 * config/tc-i386.c (lfence_before_ret_shl): New member.
1720 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
1722 (insert_after_load): Issue warning for REP CMPS/SCAS.
1723 (insert_before_before): Handle iret, Handle
1724 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
1725 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
1726 -mlfence-before-ret=[none/not/or/shl/yes].
1727 Enable -mlfence-before-ret=shl when
1728 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
1729 (md_show_usage): Ditto.
1730 * doc/c-i386.texi: Ditto.
1731 * testsuite/gas/i386/i386.exp: Add new testcases.
1732 * testsuite/gas/i386/lfence-load-b.d: New.
1733 * testsuite/gas/i386/lfence-load-b.e: New.
1734 * testsuite/gas/i386/lfence-load.d: Modified.
1735 * testsuite/gas/i386/lfence-load.e: New.
1736 * testsuite/gas/i386/lfence-load.s: Modified.
1737 * testsuite/gas/i386/lfence-ret-a.d: Modified.
1738 * testsuite/gas/i386/lfence-ret-b.d: Modified.
1739 * testsuite/gas/i386/lfence-ret-c.d: New.
1740 * testsuite/gas/i386/lfence-ret-d.d: New.
1741 * testsuite/gas/i386/lfence-ret.s: Modified.
1742 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
1743 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
1744 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
1745 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
1746 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
1747 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
1748 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
1749 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
1750 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
1751 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
1756 * config/tc-xtensa.c (md_apply_fix): Replace
1757 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1758 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1759 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1760 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1761 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1765 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1766 symbol for ".symver .. remove".
1767 * doc/as.texi (.symver): Update.
1768 * testsuite/gas/symver/symver11.s: Make foo weak.
1769 * testsuite/gas/symver/symver11.d: Expect an error.
1770 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1774 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1779 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1780 * testsuite/gas/m68k/operands.d: Update.
1781 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1786 * testsuite/gas/arm/pr24753.d: New test.
1787 * testsuite/gas/arm/pr24753.s: New test.
1793 * NEWS: Mention .symver extension.
1794 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1796 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1797 add a version name. Add local, hidden and remove visibility
1799 (elf_frob_symbol): Handle the list of version names. Update the
1800 original symbol to local, hidden or remove it from the symbol
1802 (elf_frob_file_before_adjust): Handle the list of version names.
1803 * config/obj-elf.h (elf_visibility): New.
1804 (elf_versioned_name_list): Likewise.
1805 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1806 and visibility. Change versioned_name pointer to struct
1807 elf_versioned_name_list.
1808 * doc/as.texi: Update .symver directive.
1809 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1810 error checking tests.
1811 * testsuite/gas/symver/symver6.d: New file.
1812 * testsuite/gas/symver/symver7.d: Likewise.
1813 * testsuite/gas/symver/symver7.s: Likewise.
1814 * testsuite/gas/symver/symver8.d: Likewise.
1815 * testsuite/gas/symver/symver8.s: Likewise.
1816 * testsuite/gas/symver/symver9.s: Likewise.
1817 * testsuite/gas/symver/symver9a.d: Likewise.
1818 * testsuite/gas/symver/symver9b.d: Likewise.
1819 * testsuite/gas/symver/symver10.s: Likewise.
1820 * testsuite/gas/symver/symver10a.d: Likewise.
1821 * testsuite/gas/symver/symver10b.d: Likewise.
1822 * testsuite/gas/symver/symver11.d: Likewise.
1823 * testsuite/gas/symver/symver11.s: Likewise.
1824 * testsuite/gas/symver/symver12.d: Likewise.
1825 * testsuite/gas/symver/symver12.s: Likewise.
1826 * testsuite/gas/symver/symver13.d: Likewise.
1827 * testsuite/gas/symver/symver13.s: Likewise.
1828 * testsuite/gas/symver/symver14.d: Likewise.
1829 * testsuite/gas/symver/symver14.l: Likewise.
1830 * testsuite/gas/symver/symver15.d: Likewise.
1831 * testsuite/gas/symver/symver15.l: Likewise.
1832 * testsuite/gas/symver/symver6.l: Removed.
1833 * testsuite/gas/symver/symver6.s: Updated.
1837 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1839 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1840 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1841 * testsuite/gas/aarch64/system.d: Update.
1845 * testsuite/gas/aarch64/bti.d: Update -march option.
1846 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1847 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1848 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1849 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1853 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1859 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1861 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1862 for the type-2 test.
1863 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1864 targets running this test.
1868 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1869 * testsuite/gas/bpf/jump32.s: New file.
1870 * testsuite/gas/bpf/jump32.d: Likewise.
1874 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1879 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1880 (md_pcrel_from): Remove prototytpe.
1881 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1883 (md_pcrel_from_section): Remove duplicate prototype.
1884 * tc.h (md_pcrel_from_section): Add prototype.
1885 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1886 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1887 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1888 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1889 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1890 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1891 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1892 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1893 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1894 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1895 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1896 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1897 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1898 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1899 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1900 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1901 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1902 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1903 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1904 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1905 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1906 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1907 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1908 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1909 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1910 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1911 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1912 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1913 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1914 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1915 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1916 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1917 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1918 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1919 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1920 md_apply_fix3): Delete prototypes.
1924 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1929 * doc/c-z80.texi: Fix @xref warnings.
1933 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1934 (cpu_noarch): Likewise.
1935 * doc/c-i386.texi: Document TSXLDTRK.
1936 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1937 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1938 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1939 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1943 * config/tc-i386.c (cpu_arch): Add .serialize.
1944 (cpu_noarch): Likewise.
1945 * doc/c-i386.texi: Document serialize.
1946 * testsuite/gas/i386/i386.exp: Run serialize tests
1947 * testsuite/gas/i386/serialize.d: Likewise.
1948 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1949 * testsuite/gas/i386/serialize.s: Likewise.
1953 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1954 * testsuite/gas/elf/section12b.d: Likewise.
1955 * testsuite/gas/elf/section16a.d: Likewise.
1956 * testsuite/gas/elf/section16b.d: Likewise.
1960 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1961 with a suppressed address register.
1966 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1967 * testsuite/gas/i386/localpic.s: Add a test for relocation
1968 against local absolute symbol.
1969 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1970 * testsuite/gas/i386/localpic.d: Updated.
1971 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1972 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1977 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1978 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1979 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1980 testsuite/gas/i386/x86-64-jump.d.
1981 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1982 Incorporate changes to
1983 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1984 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1985 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1986 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1987 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1993 * dwarf2dbg.c: Do not include "bignum.h".
1997 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1998 * testsuite/gas/riscv/alias-csr.s: Likewise.
1999 * testsuite/gas/riscv/no-aliases-csr.d: Move this
2000 to priv-reg-pseudo-noalias.
2001 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
2002 * testsuite/gas/riscv/bad-csr.l: Likewise.
2003 * testsuite/gas/riscv/bad-csr.s: Likewise.
2004 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
2005 * testsuite/gas/riscv/satp.s: Likewise.
2006 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
2007 csr instruction, including alias-csr testcase.
2008 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
2009 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
2010 pseudo instruction with objdump -Mno-aliases.
2011 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
2012 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
2013 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
2014 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
2015 * testsuite/gas/riscv/priv-reg.s: Likewise.
2016 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2017 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
2018 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
2022 * config/obj-coff.c (obj_coff_section): Set the bss flag on
2023 sections with the "b" attribute.
2027 * testsuite/gas/s12z/truncated.d: Update expected output.
2032 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
2033 * doc/c-z80.texi: Update documentation.
2040 Fix disassembling ED+A4/AC/B4/BC opcodes.
2041 Fix assembling lines containing colonless label and instruction
2042 with first operand inside parentheses.
2043 Fix registration of unsupported by target CPU registers.
2044 * config/tc-z80.c: See above.
2045 * config/tc-z80.h: See above.
2046 * testsuite/gas/z80/colonless.d: Update test.
2047 * testsuite/gas/z80/colonless.s: Likewise.
2048 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
2049 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
2050 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
2051 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
2052 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
2053 * testsuite/gas/z80/unsup_regs.s: Likewise.
2054 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
2055 * testsuite/gas/z80/z80.exp: Likewise.
2056 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
2057 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
2058 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
2063 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
2064 (parse_operands): Handle new operand codes.
2065 (do_neon_dyadic_long): Make shape check accept the scalar variants.
2066 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
2067 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
2068 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
2069 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
2070 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
2071 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
2072 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
2076 * NEWS: Mention x86 assembler options for CVE-2020-0551.
2080 * testsuite/gas/i386/i386.exp: Run new tests.
2081 * testsuite/gas/i386/lfence-byte.d: New file.
2082 * testsuite/gas/i386/lfence-byte.e: Likewise.
2083 * testsuite/gas/i386/lfence-byte.s: Likewise.
2084 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
2085 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
2086 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
2087 * testsuite/gas/i386/lfence-indbr.e: Likewise.
2088 * testsuite/gas/i386/lfence-indbr.s: Likewise.
2089 * testsuite/gas/i386/lfence-load.d: Likewise.
2090 * testsuite/gas/i386/lfence-load.s: Likewise.
2091 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
2092 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
2093 * testsuite/gas/i386/lfence-ret.s: Likewise.
2094 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
2095 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
2096 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
2097 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
2098 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
2099 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
2100 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
2101 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
2102 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
2103 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
2104 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
2105 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
2109 * config/tc-i386.c (lfence_after_load): New.
2110 (lfence_before_indirect_branch_kind): New.
2111 (lfence_before_indirect_branch): New.
2112 (lfence_before_ret_kind): New.
2113 (lfence_before_ret): New.
2116 (insert_lfence_after): New.
2117 (insert_lfence_before): New.
2118 (md_assemble): Call insert_lfence_before and insert_lfence_after.
2120 (OPTION_MLFENCE_AFTER_LOAD): New.
2121 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
2122 (OPTION_MLFENCE_BEFORE_RET): New.
2123 (md_longopts): Add -mlfence-after-load=,
2124 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2125 (md_parse_option): Handle -mlfence-after-load=,
2126 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2127 (md_show_usage): Display -mlfence-after-load=,
2128 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2129 (i386_cons_align): New.
2130 * config/tc-i386.h (i386_cons_align): New.
2131 (md_cons_align): New.
2132 * doc/c-i386.texi: Document -mlfence-after-load=,
2133 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2139 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
2140 (DWARF2_FILE_SIZE_NAME): Default to -1.
2141 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
2142 whichever is higher.
2143 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
2144 (NUM_MD5_BYTES): Define.
2145 (struct file entry): Add md5 field.
2146 (get_filenum): Delete and replace with...
2147 (get_basename): New function.
2148 (get_directory_table_entry): New function.
2149 (allocate_filenum): New function.
2150 (allocate_filename_to_slot): New function.
2151 (dwarf2_where): Use new functions.
2152 (dwarf2_directive_filename): Add support for extended .file
2154 (dwarf2_directive_loc): Allow the use of file number zero with
2156 (out_file_list): Rename to...
2157 (out_dir_and_file_list): Add DWARF 5 support.
2158 (out_debug_line): Emit extra values into the section header for
2160 (out_debug_str): Allow for file 0 to be used with DWARF 5.
2161 * doc/as.texi (.file): Update the description of this pseudo-op.
2162 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
2163 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
2164 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
2165 * NEWS: Mention the new feature.
2169 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
2170 to avoid signed overflow.
2171 * config/tc-mcore.c (md_assemble): Likewise.
2172 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
2173 * config/tc-nds32.c (SET_ADDEND): Likewise.
2174 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
2178 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
2179 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
2180 testsuite/gas/i386/avx-intel.d: Adjust expectations.
2184 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
2190 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
2191 0 if the dwarf_level is 5 or more. Complain if a filename follows
2193 * testsuite/gas/elf/dwarf-5-file0.s: New test.
2194 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
2195 * testsuite/gas/elf/elf.exp: Run the new test.
2198 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
2199 * doc/as.texi: Fix another typo.
2204 * as.c (dwarf_level): Define.
2205 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
2206 (parse_args): Add support for the new options.
2207 as.h (dwarf_level): Prototype.
2208 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
2210 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
2211 (DWARF2_LINE_VERSION): Remove definition.
2212 * doc/as.texi: Document the new options.
2217 * as.c (main): Allow matching input and outputs when they are
2222 * config/tc-i386.c (match_mem_size): Generalize broadcast special
2224 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
2225 one of byte/word/dword/qword is set alongside a SIMD register in
2226 a template's operand.
2230 * config/tc-i386.c (match_template): Extend code in logic
2231 rejecting certain suffixes in certain modes to also cover mask
2232 register use and VecSIB. Drop special casing of broadcast. Skip
2233 immediates in the check.
2237 * config/tc-i386.c (match_template): Fold duplicate code in
2238 logic rejecting certain suffixes in certain modes. Drop
2243 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
2244 alongside !norex64 ones.
2245 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
2246 with both 32- and 64-bit GPR operands.
2247 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
2248 32- and 64-bit GPR operands.
2249 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
2250 testsuite/gas/i386/x86-64-avx512bw.d,
2251 testsuite/gas/i386/x86-64-avx512f-intel.d,
2252 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
2256 * config/tc-i386.c (md_assemble): Drop use of rex64.
2257 (process_suffix): For REX.W for 64-bit CRC32.
2261 * config/tc-i386.c (i386_addressing_mode): For 32-bit
2262 addressing for MPX insns without base/index.
2263 * testsuite/gas/i386/mpx-16bit.s,
2264 * testsuite/gas/i386/mpx-16bit.d: New.
2265 * testsuite/gas/i386/i386.exp: Run new test.
2269 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
2270 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
2271 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
2272 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
2273 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
2274 as well as a BSWAP one.
2275 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
2276 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
2277 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
2278 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
2279 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
2280 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
2281 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
2282 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
2283 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
2284 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
2285 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
2286 testsuite/gas/i386/vmx.d: Adjust expectations.
2290 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
2291 from having their operands swapped.
2292 * testsuite/gas/i386/waitpkg.s,
2293 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
2294 3-operand cases as well as testing of 16-bit code generation.
2295 * testsuite/gas/i386/waitpkg.d,
2296 testsuite/gas/i386/waitpkg-intel.d,
2297 testsuite/gas/i386/x86-64-waitpkg.d,
2298 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
2302 * config/tc-riscv.c (percent_op_utype): Support the modifier
2304 * doc/c-riscv.texi: Add documentation.
2305 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
2306 modifier %got_pcrel_hi.
2307 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
2308 * testsuite/gas/riscv/relax-reloc.d: Likewise.
2309 * testsuite/gas/riscv/relax-reloc.s: Likewise.
2311 * doc/c-riscv.texi (relocation modifiers): Add documentation.
2312 (RISC-V-Formats): Update the section name from "Instruction Formats"
2313 to "RISC-V Instruction Formats".
2317 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
2318 detected in a section which does not have at least 4 byte
2320 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
2321 * testsuite/gas/arm/ldr-t.s: Likewise.
2322 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
2323 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
2324 disassembly, ignoring any NOPs that may have been inserted because
2325 of section alignment.
2326 * testsuite/gas/arm/ldr-t.d: Likewise.
2330 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
2331 * doc/c-i386.texi: Mention sev_es.
2332 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
2333 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2335 * testsuite/gas/i386/arch-13-znver1.d,
2336 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
2340 * config/tc-i386.c (match_template): Replace ignoresize and
2341 defaultsize with mnemonicsize.
2342 (process_suffix): Likewise.
2347 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
2348 instruction LD IY,(HL).
2349 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
2350 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
2351 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
2352 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
2357 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
2358 x86-64-default-suffix-avx.
2359 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
2360 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
2361 * testsuite/gas/i386/noreg64.d: Updated.
2362 * testsuite/gas/i386/noreg64.l: Likewise.
2363 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
2364 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
2365 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
2370 * config/tc-z80.c (contains_register): Prevent an illegal memory
2371 access when checking an expression for a register name.
2375 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
2380 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
2381 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
2383 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
2384 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
2385 (s3_s_score_lcomm): Likewise.
2386 * config/tc-score7.c: Similarly.
2387 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
2392 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
2393 to handle multi-labels.
2394 (has_label_name): New.
2398 * config/tc-arm.c (enum pred_instruction_type): Remove
2399 NEUTRAL_IT_NO_VPT_INSN predication type.
2400 (cxn_handle_predication): Modify to require condition suffixes.
2401 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
2402 * testsuite/gas/arm/cde-scalar.s: Update test.
2403 * testsuite/gas/arm/cde-warnings.l: Update test.
2404 * testsuite/gas/arm/cde-warnings.s: Update test.
2408 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
2409 N_() on empty string.
2413 * read.c (read_a_source_file): Call strncpy with length one
2414 less than size of original_case_string.
2418 * config/obj-elf.c: Indent labels correctly.
2419 * config/obj-macho.c: Likewise.
2420 * config/tc-aarch64.c: Likewise.
2421 * config/tc-alpha.c: Likewise.
2422 * config/tc-arm.c: Likewise.
2423 * config/tc-cr16.c: Likewise.
2424 * config/tc-crx.c: Likewise.
2425 * config/tc-frv.c: Likewise.
2426 * config/tc-i386-intel.c: Likewise.
2427 * config/tc-i386.c: Likewise.
2428 * config/tc-ia64.c: Likewise.
2429 * config/tc-mn10200.c: Likewise.
2430 * config/tc-mn10300.c: Likewise.
2431 * config/tc-nds32.c: Likewise.
2432 * config/tc-riscv.c: Likewise.
2433 * config/tc-s12z.c: Likewise.
2434 * config/tc-xtensa.c: Likewise.
2435 * config/tc-z80.c: Likewise.
2437 * symbols.c: Likewise.
2438 * write.c: Likewise.
2442 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
2443 we are assembling instruction with CSR. Call riscv_csr_read_only_check
2444 after parsing all arguments.
2445 (enum csr_insn_type): New enum is used to classify the CSR instruction.
2446 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
2447 are used to check if we write a read-only CSR by the CSR instruction.
2448 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
2449 all CSR for the read-only CSR checking.
2450 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2451 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2452 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
2453 all CSR instructions for the read-only CSR checking.
2454 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2455 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
2457 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
2458 (riscv_opts): Initialize it.
2459 (reg_lookup_internal): Check the `riscv_opts.csr_check`
2460 before doing the CSR checking.
2461 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
2462 (md_longopts): Add mcsr-check and mno-csr-check.
2463 (md_parse_option): Handle new enum option values.
2464 (s_riscv_option): Handle new long options.
2465 * doc/c-riscv.texi: Add description for the new .option and assembler
2467 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
2469 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2471 * config/tc-riscv.c (csr_extra_hash): New.
2472 (enum riscv_csr_class): New enum. Used to decide
2473 whether or not this CSR is legal in the current ISA string.
2474 (struct riscv_csr_extra): New structure to hold all extra information
2476 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
2477 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
2478 Call hash_reg_name to insert CSR address into reg_names_hash.
2479 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
2480 Decide whether the CSR is valid according to the csr_extra_hash.
2481 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
2482 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
2483 not a boolean. This is same as riscv_init_csr_hash, so keep the
2485 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
2486 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
2487 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
2488 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
2489 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
2490 f-ext CSR are not allowed.
2491 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
2492 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
2493 source file is `priv-reg.s`, and the ISA is rv64if, so the
2494 rv32-only CSR are not allowed.
2495 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2499 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
2500 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
2505 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
2506 on section size adjustment, instead perform another write if
2507 exec header size is larger than section size.
2511 * doc/c-riscv.texi: Add the doc entries for -march-attr/
2512 -mno-arch-attr command line options.
2516 * testsuite/gas/riscv/c-add-addi.d: New testcase.
2517 * testsuite/gas/riscv/c-add-addi.s: Likewise.
2522 * config/tc-z80.c (md_parse_option): Do not use an underscore
2523 prefix for local labels in SDCC compatability mode.
2524 (z80_start_line_hook): Remove SDCC dollar label support.
2525 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
2526 * testsuite/gas/z80/sdcc.s: Likewise.
2531 * config/tc-z80.c: Add -march option.
2532 * doc/as.texi: Update Z80 documentation.
2533 * doc/c-z80.texi: Likewise.
2534 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
2535 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
2536 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
2537 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
2538 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
2539 * testsuite/gas/z80/gbz80_all.d: Likewise.
2540 * testsuite/gas/z80/r800_extra.d: Likewise.
2541 * testsuite/gas/z80/r800_ii8.d: Likewise.
2542 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
2543 * testsuite/gas/z80/sdcc.d: Likewise.
2544 * testsuite/gas/z80/z180.d: Likewise.
2545 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
2546 * testsuite/gas/z80/z80_doc.d: Likewise.
2547 * testsuite/gas/z80/z80_ii8.d: Likewise.
2548 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
2549 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
2550 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
2551 * testsuite/gas/z80/z80_sli.d: Likewise.
2552 * testsuite/gas/z80/z80n_all.d: Likewise.
2553 * testsuite/gas/z80/z80n_reloc.d: Likewise.
2557 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
2558 with GNU_PROPERTY_X86_FEATURE_2_MMX.
2559 * testsuite/gas/i386/i386.exp: Run property-3 and
2561 * testsuite/gas/i386/property-3.d: New file.
2562 * testsuite/gas/i386/property-3.s: Likewise.
2563 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
2567 * config/tc-i386.c (cpu_arch): Add .popcnt.
2568 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
2569 Add a tab before @samp{.sse4a}.
2573 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
2574 for AddrPrefixOpReg templates. Combine the two pieces of
2575 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
2581 * config/tc-i386.c (md_assemble): Also suppress operand
2582 swapping for MONITOR{,X} and MWAIT{,X}.
2583 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
2584 Add Intel syntax monitor/mwait tests.
2585 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
2586 Adjust expectations.
2587 *testsuite/gas/i386/sse3-intel.d,
2588 testsuite/gas/i386/x86-64-sse3-intel.d: New.
2589 * testsuite/gas/i386/i386.exp: Run new tests.
2594 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
2595 [XYZ]MMWord memory operand ambiguity recognition logic (largely
2597 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
2599 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
2600 * testsuite/gas/i386/avx512dq-inval.l,
2601 testsuite/gas/i386/inval-avx.l,
2602 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
2603 * testsuite/gas/i386/avx512vl-ambig.s,
2604 testsuite/gas/i386/avx512vl-ambig.l: New.
2605 * testsuite/gas/i386/i386.exp: Run new test.
2609 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
2611 * doc/c-i386.texi: Document sse4a and nosse4a.
2615 * doc/c-i386.texi: Remove the old movsx and movzx documentation
2621 * config/tc-i386.c (md_assemble): Move movsx/movzx special
2623 (process_suffix): ... here. Consider just the first operand
2625 (check_long_reg): Drop opcode 0x63 special case again.
2626 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
2627 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
2628 Move ambiguous operand size tests ...
2629 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2630 testsuite/gas/i386/noreg64.s: ... here.
2631 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
2632 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
2633 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2634 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
2635 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
2636 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2637 testsuite/gas/i386/x86-64-movsxd.d,
2638 testsuite/gas/i386/x86-64-movsxd-intel.d,
2639 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
2640 Adjust expectations.
2641 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
2642 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
2643 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
2644 * testsuite/gas/i386/i386.exp: Run new tests.
2648 * config/tc-i386.c (process_operands): Also skip segment
2649 override prefix emission if it matches an already present one.
2650 * testsuite/gas/i386/prefix32.s: Add double segment override
2652 * testsuite/gas/i386/prefix32.l: Adjust expectations.
2656 * config/tc-i386.c (process_operands): Drop ineffectual segment
2657 overrides when optimizing.
2658 * testsuite/gas/i386/lea-optimize.d: New.
2659 * testsuite/gas/i386/i386.exp: Run new test.
2663 * config/tc-i386.c (process_operands): Also check insn prefix
2664 for ineffectual segment override warning. Don't cover possible
2665 VEX/EVEX encoded insns there.
2666 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
2667 testsuite/gas/i386/lea.e: New.
2668 * testsuite/gas/i386/i386.exp: Run new test.
2673 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
2680 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
2681 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
2682 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
2683 * testsuite/gas/i386/relax-5.d: New file.
2684 * testsuite/gas/i386/relax-5.s: Likewise.
2685 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2686 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
2690 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
2695 * config/tc-i386.c (avx512): New (at file scope), moved from
2696 (check_VecOperands): ... here.
2697 (process_suffix): Add [XYZ]MMword operand size handling.
2698 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
2699 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
2701 * testsuite/gas/i386/avx512dq-inval.l,
2702 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
2707 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
2709 * config/tc-i386-intel.c (i386_intel_operand): Also handle
2710 CALL/JMP in O_tbyte_ptr case.
2711 * doc/c-i386.texi: Mention far call and full pointer load ISA
2713 * testsuite/gas/i386/x86-64-branch-3.s,
2714 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
2715 * testsuite/gas/i386/x86-64-branch-3.d,
2716 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
2717 * testsuite/gas/i386/x86-64-branch-5.l,
2718 testsuite/gas/i386/x86-64-branch-5.s: New.
2719 * testsuite/gas/i386/i386.exp: Run new test.
2724 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
2725 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
2726 64-bit-only warning.
2727 (check_word_reg): Consistently error on mismatching register
2729 * testsuite/gas/i386/general.s: Replace dword GPR with word one
2730 for movw. Replace suffix / GPR for orb.
2731 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
2732 byte GPRs as well as ones for inb/outb with a word accumulator.
2733 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
2734 testsuite/gas/i386/inval.l: Adjust expectations.
2738 * config/tc-i386.c (operand_type_register_match): Also fall
2739 through initial two if()-s when the template allows for a GPR
2740 operand. Adjust comment.
2744 (struct _i386_insn): New field "short_form".
2745 (optimize_encoding): Drop setting of shortform field.
2746 (process_suffix): Set i.short_form. Replace shortform use.
2747 (process_operands): Replace shortform use.
2751 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
2752 loop initial declaration.
2756 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2757 instructions that can have 5 arguments.
2758 (enum operand_parse_code): Add new operands.
2759 (parse_operands): Account for new operands.
2761 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2762 (neon_select_shape): Account for P suffix.
2763 (LOW1): Move macro to global position.
2764 (HI4): Move macro to global position.
2765 (vcx_assign_vec_d): New.
2766 (vcx_assign_vec_m): New.
2767 (vcx_assign_vec_n): New.
2768 (enum vcx_reg_type): New.
2769 (vcx_get_reg_type): New.
2770 (vcx_size_pos): New.
2772 (vcx_handle_shape): New.
2773 (vcx_ensure_register_in_range): New.
2774 (vcx_handle_register_arguments): New.
2775 (vcx_handle_insn_block): New.
2776 (vcx_handle_common_checks): New.
2780 * testsuite/gas/arm/cde-missing-fp.d: New test.
2781 * testsuite/gas/arm/cde-missing-fp.l: New test.
2782 * testsuite/gas/arm/cde-missing-mve.d: New test.
2783 * testsuite/gas/arm/cde-missing-mve.l: New test.
2784 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2785 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2786 * testsuite/gas/arm/cde-mve.s: New test.
2787 * testsuite/gas/arm/cde-warnings.l:
2788 * testsuite/gas/arm/cde-warnings.s:
2789 * testsuite/gas/arm/cde.d:
2790 * testsuite/gas/arm/cde.s:
2795 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2796 CDE coprocessor that can be enabled.
2797 (enum pred_instruction_type): New pred type.
2798 (BAD_NO_VPT): New error message.
2799 (BAD_CDE): New error message.
2800 (BAD_CDE_COPROC): New error message.
2801 (enum operand_parse_code): Add new immediate operands.
2802 (parse_operands): Account for new immediate operands.
2803 (check_cde_operand): New.
2804 (cde_coproc_enabled): New.
2805 (cde_coproc_pos): New.
2806 (cde_handle_coproc): New.
2807 (cxn_handle_predication): New.
2808 (do_custom_instruction_1): New.
2809 (do_custom_instruction_2): New.
2810 (do_custom_instruction_3): New.
2823 (handle_pred_state): Define new IT block behaviour.
2824 (insns): Add newn CX*{,d}{,a} instructions.
2825 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2826 Define new cdecp extension strings.
2827 * doc/c-arm.texi: Document new cdecp extension arguments.
2828 * testsuite/gas/arm/cde-scalar.d: New test.
2829 * testsuite/gas/arm/cde-scalar.s: New test.
2830 * testsuite/gas/arm/cde-warnings.d: New test.
2831 * testsuite/gas/arm/cde-warnings.l: New test.
2832 * testsuite/gas/arm/cde-warnings.s: New test.
2833 * testsuite/gas/arm/cde.d: New test.
2834 * testsuite/gas/arm/cde.s: New test.
2839 * config/tc-i386.c (intel64): Renamed to ...
2841 (match_template): Accept Intel64 only instruction by default.
2842 (i386_displacement): Updated.
2843 (md_parse_option): Updated.
2844 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2845 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2846 -mamd64 to x86-64-sysenter-amd.
2847 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2851 * config/obj-elf.c (obj_elf_change_section): Error for section
2852 type, attr or entsize changes in assembly.
2853 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2854 * testsuite/gas/elf/section5.l: Update.
2858 * output-file.c (output_file_close): Do a normal close when
2859 flag_always_generate_output.
2860 * write.c (write_object_file): Don't stop output when
2861 flag_always_generate_output.
2866 * config/tc-z80.c: Add -gbz80 command line option to generate code
2867 for the GameBoy Z80. Add support for generating DWARF.
2868 * config/tc-z80.h: Add support for DWARF debug information
2870 * doc/c-z80.texi: Document new command line option.
2871 * testsuite/gas/z80/gbz80_all.d: New file.
2872 * testsuite/gas/z80/gbz80_all.s: New file.
2873 * testsuite/gas/z80/z80.exp: Run the new tests.
2874 * testsuite/gas/z80/z80n_all.d: New file.
2875 * testsuite/gas/z80/z80n_all.s: New file.
2876 * testsuite/gas/z80/z80n_reloc.d: New file.
2881 * config/obj-elf.c (get_section): Also check
2882 linked_to_symbol_name.
2883 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2884 (obj_elf_parse_section_letters): Handle the 'o' flag.
2885 (build_group_lists): Renamed to ...
2886 (build_additional_section_info): This. Set elf_linked_to_section
2887 from map_head.linked_to_symbol_name.
2888 (elf_adjust_symtab): Updated.
2889 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2890 * doc/as.texi: Document the 'o' flag.
2891 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2892 * testsuite/gas/elf/section18.d: New file.
2893 * testsuite/gas/elf/section18.s: Likewise.
2894 * testsuite/gas/elf/section19.d: Likewise.
2895 * testsuite/gas/elf/section19.s: Likewise.
2896 * testsuite/gas/elf/section20.d: Likewise.
2897 * testsuite/gas/elf/section20.s: Likewise.
2898 * testsuite/gas/elf/section21.d: Likewise.
2899 * testsuite/gas/elf/section21.l: Likewise.
2900 * testsuite/gas/elf/section21.s: Likewise.
2904 * NEWS: Mention x86 assembler options to align branches for
2909 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2910 only for ELF targets.
2911 * testsuite/gas/i386/unique.d: Don't xfail.
2912 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2916 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2917 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2921 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2922 xfail, and rename test.
2923 * testsuite/gas/elf/section12b.d: Likewise.
2924 * testsuite/gas/elf/section16a.d: Likewise.
2925 * testsuite/gas/elf/section16b.d: Likewise.
2930 * config/obj-elf.c (section_match): Removed.
2931 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2933 (obj_elf_change_section): Replace info and group_name arguments
2934 with match_p. Also update the section ID and flags from match_p.
2935 (obj_elf_section): Handle "unique,N". Update call to
2936 obj_elf_change_section.
2937 * config/obj-elf.h (elf_section_match): New.
2938 (obj_elf_change_section): Updated.
2939 * config/tc-arm.c (start_unwind_section): Update call to
2940 obj_elf_change_section.
2941 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2942 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2943 (microblaze_s_sdata): Likewise.
2944 (microblaze_s_rdata): Likewise.
2945 (microblaze_s_bss): Likewise.
2946 * config/tc-mips.c (s_change_section): Likewise.
2947 * config/tc-msp430.c (msp430_profiler): Likewise.
2948 * config/tc-rx.c (parse_rx_section): Likewise.
2949 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2950 * doc/as.texi: Document "unique,N" in .section directive.
2951 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2952 * testsuite/gas/elf/section15.d: New file.
2953 * testsuite/gas/elf/section15.s: Likewise.
2954 * testsuite/gas/elf/section16.s: Likewise.
2955 * testsuite/gas/elf/section16a.d: Likewise.
2956 * testsuite/gas/elf/section16b.d: Likewise.
2957 * testsuite/gas/elf/section17.d: Likewise.
2958 * testsuite/gas/elf/section17.l: Likewise.
2959 * testsuite/gas/elf/section17.s: Likewise.
2960 * testsuite/gas/i386/unique.d: Likewise.
2961 * testsuite/gas/i386/unique.s: Likewise.
2962 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2963 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2967 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2971 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2975 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2981 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2982 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2984 * testsuite/gas/arm/mve_dsp.d: New test.
2988 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2989 rather than BFD_RELOC_NONE.
2993 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2994 to support VLDMIA instruction for MVE.
2995 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2996 instruction for MVE.
2997 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2998 instruction for MVE.
2999 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
3000 instruction for MVE.
3001 * testsuite/gas/arm/mve-ldst.d: New test.
3002 * testsuite/gas/arm/mve-ldst.s: Likewise.
3006 * po/fr.po: Updated French translation.
3007 * po/ru.po: Updated Russian translation.
3011 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
3013 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
3014 * testsuite/gas/aarch64/sve-movprfx_28.d,
3015 * testsuite/gas/aarch64/sve-movprfx_28.l,
3016 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
3020 * config/tc-i386.c (output_disp): Tighten base_opcode check.
3021 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
3022 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
3023 Adjust expectations.
3027 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
3028 * testsuite/gas/bpf/alu-be.d: Likewise.
3029 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
3030 * testsuite/gas/bpf/alu32-be.d: Likewise.
3034 * testsuite/gas/i386/x86-64-branch-2.s,
3035 testsuite/gas/i386/x86-64-branch-4.s,
3036 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
3037 * testsuite/gas/i386/ilp32/x86-64-branch.d,
3038 testsuite/gas/i386/x86-64-branch-2.d,
3039 testsuite/gas/i386/x86-64-branch-4.l,
3040 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
3044 * config/tc-i386.c (process_suffix): .
3045 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
3046 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
3048 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
3050 testsuite/gas/i386/x86_64.s: Add RETF cases.
3051 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
3052 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
3053 testsuite/gas/i386/x86-64-opcode.d,
3054 testsuite/gas/i386/x86-64-suffix-intel.d,
3055 testsuite/gas/i386/x86-64-suffix.d,
3056 testsuite/gas/i386/x86_64-intel.d
3057 testsuite/gas/i386/x86_64.d: Adjust expectations.
3058 * testsuite/gas/i386/x86-64-suffix.e,
3059 testsuite/gas/i386/x86_64.e: New.
3063 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
3069 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
3071 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
3072 differences. Document movslq and movsxd.
3073 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
3074 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
3075 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
3076 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
3077 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
3078 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
3079 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
3080 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
3081 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
3082 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
3083 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
3087 * testsuite/gas/all/gas.exp: Replace case statements with switch
3089 * testsuite/gas/elf/elf.exp: Likewise.
3090 * testsuite/gas/macros/macros.exp: Likewise.
3091 * testsuite/lib/gas-defs.exp: Likewise.
3096 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
3097 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
3101 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
3102 s exts must be known, so rename *ok* to *fail*.
3103 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
3104 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
3105 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
3107 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
3108 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
3113 * config/tc-i386.c (check_long_reg): Always disallow double word
3114 suffix in mnemonic with word general register.
3115 * testsuite/gas/i386/general.s: Replace word general register
3116 with double word general register for movl.
3117 * testsuite/gas/i386/inval.s: Add tests for movl with word general
3119 * testsuite/gas/i386/general.l: Updated.
3120 * testsuite/gas/i386/inval.l: Likewise.
3124 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
3125 __tls_get_addr_desc and __tls_get_addr_opt.
3129 * testsuite/gas/i386/inval-crc32.s,
3130 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
3131 * testsuite/gas/i386/inval-crc32.l,
3132 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
3136 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
3137 generic code path. Deal with No_lSuf being set in a template.
3138 * testsuite/gas/i386/inval-crc32.l,
3139 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
3140 instead of error(s) when operand size is ambiguous.
3141 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
3142 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
3143 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
3144 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
3145 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
3146 Adjust expectations.
3150 * config/tc-i386.c (process_suffix): Drop SYSRET special case
3151 and an intel_syntax check. Re-write lack-of-suffix processing
3153 * doc/c-i386.texi: Document operand size defaults for suffix-
3154 less AT&T syntax insns.
3155 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
3156 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
3157 testsuite/gas/i386/x86-64-avx-scalar.s,
3158 testsuite/gas/i386/x86-64-avx.s,
3159 testsuite/gas/i386/x86-64-bundle.s,
3160 testsuite/gas/i386/x86-64-intel64.s,
3161 testsuite/gas/i386/x86-64-lock-1.s,
3162 testsuite/gas/i386/x86-64-opcode.s,
3163 testsuite/gas/i386/x86-64-sse2avx.s,
3164 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
3165 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
3166 testsuite/gas/i386/x86-64-nops.s,
3167 testsuite/gas/i386/x86-64-ptwrite.s,
3168 testsuite/gas/i386/x86-64-simd.s,
3169 testsuite/gas/i386/x86-64-sse-noavx.s,
3170 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
3172 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
3173 testsuite/gas/i386/noreg64.s: Add further tests.
3174 * testsuite/gas/i386/ilp32/x86-64-nops.d,
3175 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
3176 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
3177 testsuite/gas/i386/sse-noavx.d,
3178 testsuite/gas/i386/x86-64-intel64.d,
3179 testsuite/gas/i386/x86-64-nops.d,
3180 testsuite/gas/i386/x86-64-opcode.d,
3181 testsuite/gas/i386/x86-64-ptwrite-intel.d,
3182 testsuite/gas/i386/x86-64-ptwrite.d,
3183 testsuite/gas/i386/x86-64-simd-intel.d,
3184 testsuite/gas/i386/x86-64-simd-suffix.d,
3185 testsuite/gas/i386/x86-64-simd.d,
3186 testsuite/gas/i386/x86-64-sse-noavx.d
3187 testsuite/gas/i386/x86-64-suffix.d,
3188 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
3189 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
3190 testsuite/gas/i386/noreg64.l: New.
3191 * testsuite/gas/i386/i386.exp: Run new tests.
3195 * testsuite/gas/i386/avx512_bf16_vl.s,
3196 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
3197 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
3198 broadcast forms of VCVTNEPS2BF16.
3199 * testsuite/gas/i386/avx512_bf16_vl.d,
3200 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
3204 * po/uk.po: Updated Ukranian translation.
3209 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
3210 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
3212 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
3213 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
3214 R_X86_64_GOTPC32_TLSDESC relocation.
3218 * configure: Regenerate.
3219 * po/gas.pot: Regenerate.
3223 Binutils 2.34 branch created.
3227 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
3228 with vex_encoding_vex.
3229 (parse_insn): Likewise.
3230 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
3231 and {vex3} documentation.
3232 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
3234 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
3239 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
3240 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
3241 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
3242 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
3243 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
3244 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
3248 * config/tc-i386.c (match_template): Drop found_cpu_match local
3253 * testsuite/gas/i386/avx512dq-inval.l,
3254 testsuite/gas/i386/avx512dq-inval.s: New.
3255 * testsuite/gas/i386/i386.exp: Run new test.
3259 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
3260 relocations when the target is 430X, except when extracting part of an
3262 (msp430_srcoperand): Adjust comment.
3263 Initialize the expp member of the msp430_operand_s struct as
3265 (msp430_dstoperand): Likewise.
3266 * testsuite/gas/msp430/msp430.exp: Run new test.
3267 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
3268 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
3272 * configure.tgt: Add sparc-*-freebsd case.
3276 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
3277 * testsuite/gas/i386/align-branch-1b.d: Likewise.
3278 * testsuite/gas/i386/align-branch-1c.d: Likewise.
3279 * testsuite/gas/i386/align-branch-1d.d: Likewise.
3280 * testsuite/gas/i386/align-branch-1e.d: Likewise.
3281 * testsuite/gas/i386/align-branch-1f.d: Likewise.
3282 * testsuite/gas/i386/align-branch-1g.d: Likewise.
3283 * testsuite/gas/i386/align-branch-1h.d: Likewise.
3284 * testsuite/gas/i386/align-branch-1i.d: Likewise.
3285 * testsuite/gas/i386/align-branch-5.d: Likewise.
3286 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
3287 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
3288 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
3289 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
3290 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
3291 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
3292 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
3293 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
3294 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
3295 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
3296 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
3297 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
3302 * config/tc-z80.c: Add support for half precision, single
3303 precision and double precision floating point values.
3304 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
3305 * doc/as.texi: Add new z80 command line options.
3306 * doc/c-z80.texi: Document new z80 command line options.
3307 * testsuite/gas/z80/ez80_pref_dis.s: New test.
3308 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
3309 * testsuite/gas/z80/z80.exp: Run the new test.
3310 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
3311 * testsuite/gas/z80/fp_zeda32.d: Likewise.
3312 * testsuite/gas/z80/strings.d: Update expected output.
3316 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
3321 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
3323 * config/tc-arc.h: Add header if/defs.
3324 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
3328 * testsuite/gas/wasm32/allinsn.d: Update expected output.
3332 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
3337 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
3338 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
3343 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
3345 (emit_ld_r_r): Likewise.
3346 (emit_ld_rr_m): Likewise.
3347 (emit_ld_rr_nn): Likewise.
3351 * config/tc-i386.c (optimize_encoding): Add
3352 is_any_vex_encoding() invocations. Drop respective
3353 i.tm.extension_opcode == None checks.
3357 * config/tc-i386.c (md_assemble): Check RegRex is clear during
3358 REX transformations. Correct comment indentation.
3362 * config/tc-i386.c (optimize_encoding): Generalize register
3363 transformation for TEST optimization.
3367 * testsuite/gas/i386/x86-64-sysenter-amd.s,
3368 testsuite/gas/i386/x86-64-sysenter-amd.d,
3369 testsuite/gas/i386/x86-64-sysenter-amd.l,
3370 testsuite/gas/i386/x86-64-sysenter-intel.d,
3371 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
3372 * testsuite/gas/i386/i386.exp: Run new tests.
3377 * doc/as.texi (Align): Document the fact that all arguments can be
3380 (P2align): Likewise.
3385 * config/obj-elf.c (obj_elf_section): Fail if the section name is
3386 already defined as a different symbol type.
3387 * testsuite/gas/elf/pr14891.s: New test source file.
3388 * testsuite/gas/elf/pr14891.d: New test driver.
3389 * testsuite/gas/elf/pr14891.s: New test expected error output.
3390 * testsuite/gas/elf/elf.exp: Run the new test.
3394 * config/tc-z8k.c (md_begin): Make idx unsigned.
3395 (get_specific): Likewise for this_index.
3399 * onfig/tc-arc.c (parse_reloc_symbol): New function.
3400 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
3401 (md_operand): Set X_md to absent.
3402 (arc_parse_name): Check for X_md.
3407 * as.h (TC_STRING_ESCAPES): Provide a default definition.
3408 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
3410 * read.c (next_char_of_string): Likewise.
3411 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
3412 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
3416 * po/sv.po: Updated Swedish translation.
3420 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
3421 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3425 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
3426 by-element usdot. Add 64-bit form tests for by-element sudot.
3427 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
3431 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
3432 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3436 * testsuite/gas/aarch64/f64mm.d,
3437 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
3441 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
3442 support for assembler code generated by SDCC. Add new relocation
3443 types. Add z80-elf target support.
3444 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
3445 labels. Local labels starts from ".L".
3446 * NEWS: Mention the new support.
3447 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
3448 * testsuite/gas/all/fwdexp.s: Likewise.
3449 * testsuite/gas/all/cond.l: Likewise.
3450 * testsuite/gas/all/cond.s: Likewise.
3451 * testsuite/gas/all/fwdexp.d: Likewise.
3452 * testsuite/gas/all/fwdexp.s: Likewise.
3453 * testsuite/gas/elf/section2.e-mips: Likewise.
3454 * testsuite/gas/elf/section2.l: Likewise.
3455 * testsuite/gas/elf/section2.s: Likewise.
3456 * testsuite/gas/macros/app1.d: Likewise.
3457 * testsuite/gas/macros/app1.s: Likewise.
3458 * testsuite/gas/macros/app2.d: Likewise.
3459 * testsuite/gas/macros/app2.s: Likewise.
3460 * testsuite/gas/macros/app3.d: Likewise.
3461 * testsuite/gas/macros/app3.s: Likewise.
3462 * testsuite/gas/macros/app4.d: Likewise.
3463 * testsuite/gas/macros/app4.s: Likewise.
3464 * testsuite/gas/macros/app4b.s: Likewise.
3465 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
3466 * testsuite/gas/z80/z80.exp: Add new tests
3467 * testsuite/gas/z80/dollar.d: New file.
3468 * testsuite/gas/z80/dollar.s: New file.
3469 * testsuite/gas/z80/ez80_adl_all.d: New file.
3470 * testsuite/gas/z80/ez80_adl_all.s: New file.
3471 * testsuite/gas/z80/ez80_adl_suf.d: New file.
3472 * testsuite/gas/z80/ez80_isuf.s: New file.
3473 * testsuite/gas/z80/ez80_z80_all.d: New file.
3474 * testsuite/gas/z80/ez80_z80_all.s: New file.
3475 * testsuite/gas/z80/ez80_z80_suf.d: New file.
3476 * testsuite/gas/z80/r800_extra.d: New file.
3477 * testsuite/gas/z80/r800_extra.s: New file.
3478 * testsuite/gas/z80/r800_ii8.d: New file.
3479 * testsuite/gas/z80/r800_z80_doc.d: New file.
3480 * testsuite/gas/z80/z180.d: New file.
3481 * testsuite/gas/z80/z180.s: New file.
3482 * testsuite/gas/z80/z180_z80_doc.d: New file.
3483 * testsuite/gas/z80/z80_doc.d: New file.
3484 * testsuite/gas/z80/z80_doc.s: New file.
3485 * testsuite/gas/z80/z80_ii8.d: New file.
3486 * testsuite/gas/z80/z80_ii8.s: New file.
3487 * testsuite/gas/z80/z80_in_f_c.d: New file.
3488 * testsuite/gas/z80/z80_in_f_c.s: New file.
3489 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
3490 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
3491 * testsuite/gas/z80/z80_out_c_0.d: New file.
3492 * testsuite/gas/z80/z80_out_c_0.s: New file.
3493 * testsuite/gas/z80/z80_reloc.d: New file.
3494 * testsuite/gas/z80/z80_reloc.s: New file.
3495 * testsuite/gas/z80/z80_sli.d: New file.
3496 * testsuite/gas/z80/z80_sli.s: New file.
3500 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
3505 Update year range in copyright notice of all files.
3507 For older changes see ChangeLog-2019
3509 Copyright (C) 2020 Free Software Foundation, Inc.
3511 Copying and distribution of this file, with or without modification,
3512 are permitted in any medium without royalty provided the copyright
3513 notice and this notice are preserved.
3519 version-control: never