1 2020-08-24 Alan Modra <amodra@gmail.com>
3 * config/tc-aarch64.c (md_begin): Don't bother checking for
4 out of memory failure from str_htab_create.
5 * config/tc-arc.c (arc_insert_opcode, md_begin): Likewise.
6 (arc_extcorereg, arc_stralloc): Likewise.
7 * config/tc-arm.c (md_begin): Likewise.
8 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
9 * config/tc-cris.c (md_begin): Likewise.
10 * config/tc-crx.c (md_begin): Likewise.
11 * config/tc-pdp11.c (md_begin): Likewise.
12 * config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise.
13 * config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise.
15 2020-08-24 Alan Modra <amodra@gmail.com>
17 * config/tc-arm.c (move_or_literal_pool): Avoid false positive
18 "may be used uninitialised".
19 (opcode_lookup): Likewise.
21 2020-08-24 Alan Modra <amodra@gmail.com>
24 * symbols.c (local_symbol_convert): Clear out xtra.
26 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
28 * config/tc-csky.c (CSKY_ISA_803R2): New.
29 (csky_archs): Add ck803r2 series.
30 (md_begin): Fix warning about -medsp.
31 (csky_get_freg_val): Support lowercase of fpu register name.
32 * testsuite/gas/csky/cskyv2_ck803r2.s: New file.
33 * testsuite/gas/csky/cskyv2_ck803r2.d: New file.
35 2020-08-23 Alan Modra <amodra@gmail.com>
38 * hash.h (htab_insert): Update prototype and comment.
39 (struct string_tuple): Make "value" a const void*.
40 (string_tuple_alloc): Likewise.
41 (str_hash_find, str_hash_find_n): Cast returned value.
42 (str_hash_insert): Add "replace" parameter, and return slot pointer.
43 Free alloc'd element when not inserted.
44 * hash.c (htab_insert): Likewise. Return slot when element exists,
45 otherwise return NULL.
46 * read.c (pop_insert): Insert into hash table without first searching.
47 * config/tc-avr.c (md_begin): Likewise.
48 * config/tc-msp430.c (md_begin): Likewise.
49 * config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
50 * config/tc-v850.c (md_begin): Likewise.
51 * macro.c (do_formals, define_macro, macro_expand_body): Likewise.
52 (delete_macro): Delete from hash table.
53 * config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
55 * symbols.c (local_symbol_make, symbol_table_insert): Allow
56 replacement of hash table entries.
57 * config/obj-coff-seh.c (seh_hash_insert): Likewise.
58 * config/obj-coff.c (tag_insert): Likewise.
59 * config/tc-iq2000.c (iq2000_add_macro): Likewise.
60 * config/tc-m68k.c (md_begin): Likewise for aliases.
61 * config/tc-tic4x.c (tic4x_asg): Likewise.
62 * config/tc-tic6x.c (md_begin): Likewise.
64 * dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
66 * ecoff.c (add_string, get_tag): Likewise.
67 * macro.c (expand_irp): Likewise.
68 * config/obj-elf.c (build_additional_section_info): Likewise.
69 * config/tc-aarch64.c (insert_reg_alias): Likewise.
70 (checked_hash_insert): Likewise.
71 * config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
72 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
73 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
74 * config/tc-arm.c (insert_reg_alias): Likewise.
75 (arm_tc_equal_in_insn, md_begin): Likewise.
76 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
77 * config/tc-cris.c (md_begin): Likewise.
78 * config/tc-crx.c (md_begin): Likewise.
79 * config/tc-csky.c (md_begin): Likewise.
80 * config/tc-d10v.c (md_begin): Likewise.
81 * config/tc-dlx.c (md_begin): Likewise.
82 * config/tc-ft32.c (md_begin): Likewise.
83 * config/tc-h8300.c (md_begin): Likewise.
84 * config/tc-hppa.c (md_begin): Likewise.
85 * config/tc-i386.c (md_begin): Likewise.
86 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
87 (md_begin, dot_alias): Likewise.
88 * config/tc-m68hc11.c (md_begin): Likewise.
89 * config/tc-m68k.c (md_begin): Likewise.
90 * config/tc-mcore.c (md_begin): Likewise.
91 * config/tc-microblaze.c (md_begin): Likewise.
92 * config/tc-mips.c (md_begin): Likewise.
93 * config/tc-mmix.c (md_begin): Likewise.
94 * config/tc-mn10200.c (md_begin): Likewise.
95 * config/tc-mn10300.c (md_begin): Likewise.
96 * config/tc-moxie.c (md_begin): Likewise.
97 * config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
98 * config/tc-nios2.c (md_begin): Likewise.
99 * config/tc-ns32k.c (md_begin): Likewise.
100 * config/tc-pdp11.c (md_begin): Likewise.
101 * config/tc-pj.c (fake_opcode, md_begin): Likewise.
102 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
103 * config/tc-pru.c (md_begin): Likewise.
104 * config/tc-riscv.c (init_ext_version_hash): Likewise.
105 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
106 (riscv_init_csr_hash): Likewise.
107 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
108 * config/tc-score.c (s3_insert_reg): Likewise.
109 (s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
110 * config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
111 (s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
112 * config/tc-sh.c (md_begin): Likewise.
113 * config/tc-sparc.c (md_begin): Likewise.
114 * config/tc-spu.c (md_begin): Likewise.
115 * config/tc-tic30.c (md_begin): Likewise.
116 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
117 * config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
118 (tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
119 (subsym_substitute): Likewise.
120 * config/tc-tilegx.c (md_begin): Likewise.
121 * config/tc-tilepro.c (md_begin): Likewise.
122 * config/tc-vax.c (vip_begin): Likewise.
123 * config/tc-wasm32.c (md_begin): Likewise.
124 * config/tc-xgate.c (md_begin): Likewise.
125 * config/tc-z8k.c (md_begin): Likewise.
126 * testsuite/gas/ppc/dcbt.d,
127 * testsuite/gas/ppc/dcbt.s: New test.
128 * testsuite/gas/ppc/ppc.exp: Run it.
130 * ecoff.c (add_string): Report fatal error on duplicates.
131 * config/tc-alpha.c (md_begin): Likewise.
132 * config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
133 (declare_addrtype, md_begin, arc_extcorereg): Likewise.
134 * config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
135 * config/tc-cris.c (md_begin): Likewise.
136 * config/tc-crx.c (md_begin): Likewise.
137 * config/tc-dlx.c (md_begin): Likewise.
138 * config/tc-hppa.c (md_begin): Likewise.
139 * config/tc-i386.c (md_begin): Likewise.
140 * config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
141 (md_begin): Likewise.
142 * config/tc-m68k.c (md_begin): Likewise.
143 * config/tc-mips.c (md_begin): Likewise.
144 * config/tc-nios2.c (md_begin): Likewise.
145 * config/tc-ns32k.c (md_begin): Likewise.
146 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
147 * config/tc-pru.c (md_begin): Likewise.
148 * config/tc-riscv.c (init_ext_version_hash): Likewise.
149 (init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
150 * config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
151 * config/tc-sparc.c (md_begin): Likewise.
152 * config/tc-tic30.c (md_begin): Likewise.
153 * config/tc-tic4x.c (tic4x_inst_insert): Likewise.
154 * config/tc-tilegx.c (md_begin): Likewise.
155 * config/tc-tilepro.c (md_begin): Likewise.
156 * config/tc-vax.c (vip_begin): Likewise.
164 * config/tc-m68hc11.c,
166 * config/tc-microblaze.c,
171 * config/tc-score7.c,
173 * config/tc-tic54x.c,
174 * config/tc-tilegx.c,
175 * config/tc-tilepro.c,
176 * config/tc-xgate.c: Formatting.
178 2020-08-21 Alan Modra <amodra@gmail.com>
180 * symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
181 Delete union. Adjust code throughout file.
182 (struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
184 (struct xsymbol): ..this. New struct. Adjust code throughout file
185 accessing these fields.
186 (struct symbol_entry): Delete.
187 (union symbol_entry): New.
188 (hash_symbol_entry): Adjust for symbol_entry_t change.
189 (symbol_entry_find): Likewise.
190 (eq_symbol_entry): Compare hash values too.
191 (symbol_entry_alloc): Delete.
192 (local_symbol_converted_p, local_symbol_mark_converted): Delete.
193 (local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
194 (local_hash): Delete.
195 (abs_symbol_x, dot_symbol_x): New static var.
196 (symbol_init): New function.
197 (symbol_create): Rewrite.
198 (LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
199 test of flags.local_symbol.
200 (local_symbol_make): Adjust for struct local_symbol changes.
201 (local_symbol_convert): Rewrite. Adjust all callers.
202 (symbol_table_insert): Simplify.
203 (symbol_clone): Comment on local sym cloning. Handle split symbol
205 (get_real_sym): Delete. Remove all uses.
206 (symbol_find_exact_noref): Simplify.
207 (resolve_local_symbol): Don't resolve non-locals.
208 (S_SET_SEGMENT): Don't special case reg_section.
209 (S_SET_NAME): Set both name and bsym->name.
210 (symbol_mark_resolved, symbol_resolved_p): Simplify.
211 (symbol_symbolS): Update comment.
212 (symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
213 (dot_symbol_init): Adjust dot_symbol setup.
214 (symbol_print_statistics): Delete local_hash stats.
216 2020-08-21 Alan Modra <amodra@gmail.com>
218 * symbols.c (struct symbol_flags): Rename sy_volatile to volatil,
219 and remove sy_ from other field names. Update throughout.
220 (struct symbol): Remove sy_ from field names. Delete unused
221 TARGET_SYMBOL_FIELDS. Update throughout file. Move after..
222 (struct local_symbol): ..here. Remove lsy_ from field names.
223 Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file.
224 (local_symbol_resolved_p, local_symbol_mark_resolved): Delete.
225 Expand uses throughout file.
226 (local_symbol_get_frag, local_symbol_set_frag): Likewise.
227 (symbol_new): Move symbol_table_frozen test to..
228 (symbol_append): ..here, and..
229 (symbol_insert): ..here.
230 (resolve_symbol_value, symbol_relc_make_expr): White space fixes.
231 (HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise.
232 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update.
234 2020-08-21 Alan Modra <amodra@gmail.com>
236 * symbols.h (symbol_new, symbol_create, local_symbol_make),
237 (symbol_temp_new): Arrange params as section, frag, offset.
238 * symbols.c: Adjust to suit.
241 * dwarf2dbg.c: Likewise.
244 * itbl-ops.c: Likewise.
247 * subsegs.c: Likewise.
248 * config/obj-coff.c: Likewise.
249 * config/obj-elf.c: Likewise.
250 * config/obj-macho.c: Likewise.
251 * config/tc-aarch64.c: Likewise.
252 * config/tc-alpha.c: Likewise.
253 * config/tc-arc.c: Likewise.
254 * config/tc-arm.c: Likewise.
255 * config/tc-avr.c: Likewise.
256 * config/tc-cr16.c: Likewise.
257 * config/tc-cris.c: Likewise.
258 * config/tc-csky.c: Likewise.
259 * config/tc-dlx.c: Likewise.
260 * config/tc-hppa.c: Likewise.
261 * config/tc-i386.c: Likewise.
262 * config/tc-ia64.c: Likewise.
263 * config/tc-m32r.c: Likewise.
264 * config/tc-m68k.c: Likewise.
265 * config/tc-mips.c: Likewise.
266 * config/tc-mmix.c: Likewise.
267 * config/tc-mn10200.c: Likewise.
268 * config/tc-mn10300.c: Likewise.
269 * config/tc-nds32.c: Likewise.
270 * config/tc-nios2.c: Likewise.
271 * config/tc-ppc.c: Likewise.
272 * config/tc-riscv.c: Likewise.
273 * config/tc-s390.c: Likewise.
274 * config/tc-sh.c: Likewise.
275 * config/tc-tic4x.c: Likewise.
276 * config/tc-tic54x.c: Likewise.
277 * config/tc-xtensa.c: Likewise.
279 2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
281 * config/tc-csky.c (csky_insn_info): Add member last_isize.
282 (md_assemble): Assign value to csky_insn.last_isize.
283 * testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form.
284 * testsuite/gas/csky/enhance_dsp.s: Likewise.
286 2020-08-20 Martin Liska <mliska@suse.cz>
288 * NEWS: Mention --reduce-memory-overheads and --hash-size arguments
290 * as.c: Remove the options from help.
291 * doc/as.texi: Remove options.
292 * doc/internals.texi: Remove hash from documentation.
293 * hash.c (struct hash_entry): Remove.
294 (struct hash_control): Likewise.
295 (set_gas_hash_table_size): Likewise.
296 (hash_new_sized): Likewise.
297 (hash_new): Likewise.
298 (hash_die): Likewise.
299 (hash_lookup): Likewise.
300 (hash_insert): Likewise.
301 (hash_jam): Likewise.
302 (hash_replace): Likewise.
303 (hash_find): Likewise.
304 (hash_find_n): Likewise.
305 (hash_delete): Likewise.
306 (hash_traverse): Likewise.
307 (hash_print_statistics): Likewise.
309 (STATBUFSIZE): Likewise.
313 (applicatee): Likewise.
314 (whattable): Likewise.
315 * hash.h (struct hash_control): Likewise.
316 (set_gas_hash_table_size): Likewise.
317 (hash_new): Likewise.
318 (hash_new_sized): Likewise.
319 (hash_die): Likewise.
320 (hash_insert): Likewise.
321 (hash_jam): Likewise.
322 (hash_replace): Likewise.
323 (hash_find): Likewise.
324 (hash_find_n): Likewise.
325 (hash_delete): Likewise.
326 (hash_traverse): Likewise.
327 (hash_print_statistics): Likewise.
329 2020-08-20 Martin Liska <mliska@suse.cz>
331 * config/obj-coff-seh.c (seh_hash_insert): Port to use new
333 (seh_hash_find): Likewise.
334 (seh_hash_find_or_make): Likewise.
335 * config/obj-coff.c (tag_init): Likewise.
336 (tag_insert): Likewise.
337 (tag_find): Likewise.
338 * config/obj-elf.c (struct group_list): Likewise.
339 (build_additional_section_info): Likewise.
340 (free_section_idx): Likewise.
341 (elf_adjust_symtab): Likewise.
342 (elf_frob_file_after_relocs): Likewise.
343 * config/tc-aarch64.c (INSN_SIZE): Likewise.
344 (parse_reg): Likewise.
345 (insert_reg_alias): Likewise.
346 (create_register_alias): Likewise.
348 (parse_shift): Likewise.
349 (parse_pldop): Likewise.
350 (parse_barrier): Likewise.
351 (parse_barrier_psb): Likewise.
352 (parse_bti_operand): Likewise.
353 (parse_sys_reg): Likewise.
354 (parse_sys_ins_reg): Likewise.
355 (lookup_mnemonic): Likewise.
356 (opcode_lookup): Likewise.
357 (parse_operands): Likewise.
358 (checked_hash_insert): Likewise.
359 (sysreg_hash_insert): Likewise.
360 (fill_instruction_hash_table): Likewise.
361 (md_begin): Likewise.
362 * config/tc-alpha.c (struct alpha_reloc_tag): Likewise.
363 (get_alpha_reloc_tag): Likewise.
364 (assemble_tokens_to_insn): Likewise.
365 (assemble_tokens): Likewise.
366 (md_begin): Likewise.
367 * config/tc-arc.c (arc_find_opcode): Likewise.
368 (arc_insert_opcode): Likewise.
369 (find_opcode_match): Likewise.
370 (declare_register): Likewise.
371 (declare_addrtype): Likewise.
372 (md_begin): Likewise.
373 (arc_parse_name): Likewise.
374 (tc_arc_regname_to_dw2regnum): Likewise.
375 (arc_extcorereg): Likewise.
376 * config/tc-arm.c (MVE_BAD_QREG): Likewise.
377 (arm_reg_parse_multi): Likewise.
378 (parse_reloc): Likewise.
379 (insert_reg_alias): Likewise.
380 (create_register_alias): Likewise.
382 (parse_shift): Likewise.
383 (parse_psr): Likewise.
384 (parse_cond): Likewise.
385 (parse_barrier): Likewise.
386 (do_vfp_nsyn_opcode): Likewise.
387 (opcode_lookup): Likewise.
388 (arm_tc_equal_in_insn): Likewise.
389 (md_begin): Likewise.
390 * config/tc-avr.c (md_begin): Likewise.
391 (avr_ldi_expression): Likewise.
392 (md_assemble): Likewise.
393 (avr_update_gccisr): Likewise.
394 (avr_emit_insn): Likewise.
395 * config/tc-cr16.c (get_register): Likewise.
396 (get_register_pair): Likewise.
397 (get_index_register): Likewise.
398 (get_index_register_pair): Likewise.
399 (get_pregister): Likewise.
400 (get_pregisterp): Likewise.
401 (initialise_reg_hash_table): Likewise.
402 (md_begin): Likewise.
403 (cr16_assemble): Likewise.
404 (md_assemble): Likewise.
405 * config/tc-cris.c (cris_insn_first_word_frag): Likewise.
406 (md_begin): Likewise.
407 (cris_process_instruction): Likewise.
408 * config/tc-crx.c (get_register): Likewise.
409 (get_copregister): Likewise.
410 (md_begin): Likewise.
411 (md_assemble): Likewise.
412 * config/tc-csky.c (md_begin): Likewise.
413 (parse_opcode): Likewise.
414 (get_operand_value): Likewise.
415 (v1_work_jbsr): Likewise.
416 (v2_work_rotlc): Likewise.
417 (v2_work_bgeni): Likewise.
418 (v2_work_not): Likewise.
419 * config/tc-d10v.c (sizeof): Likewise.
420 (md_begin): Likewise.
421 (do_assemble): Likewise.
422 (md_apply_fix): Likewise.
423 * config/tc-d30v.c (sizeof): Likewise.
424 (md_begin): Likewise.
425 (do_assemble): Likewise.
426 * config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise.
427 (md_begin): Likewise.
428 (machine_ip): Likewise.
429 * config/tc-ft32.c (md_begin): Likewise.
430 (md_assemble): Likewise.
431 * config/tc-h8300.c (md_begin): Likewise.
432 (md_assemble): Likewise.
433 * config/tc-hppa.c (pa_ip): Likewise.
434 (md_begin): Likewise.
435 * config/tc-i386.c (md_begin): Likewise.
436 (i386_print_statistics): Likewise.
437 (parse_insn): Likewise.
438 (process_operands): Likewise.
439 (i386_index_check): Likewise.
440 (parse_real_register): Likewise.
441 * config/tc-ia64.c (dot_rot): Likewise.
442 (dot_entry): Likewise.
443 (declare_register): Likewise.
444 (md_begin): Likewise.
445 (ia64_parse_name): Likewise.
446 (md_assemble): Likewise.
447 (dot_alias): Likewise.
448 (do_alias): Likewise.
449 (ia64_adjust_symtab): Likewise.
450 (do_secalias): Likewise.
451 (ia64_frob_file): Likewise.
452 * config/tc-m68hc11.c (m68hc11_print_statistics): Likewise.
453 (md_begin): Likewise.
454 (print_insn_format): Likewise.
455 (md_assemble): Likewise.
456 * config/tc-m68k.c (tc_gen_reloc): Likewise.
458 (md_begin): Likewise.
459 * config/tc-mcore.c (md_begin): Likewise.
460 (md_assemble): Likewise.
461 * config/tc-microblaze.c (md_begin): Likewise.
462 (md_assemble): Likewise.
463 (md_apply_fix): Likewise.
464 * config/tc-mips.c (nopic_need_relax): Likewise.
465 (md_begin): Likewise.
466 (macro_build): Likewise.
467 (mips16_macro_build): Likewise.
468 (mips_lookup_insn): Likewise.
470 (mips16_ip): Likewise.
471 * config/tc-mmix.c (sizeof): Likewise.
472 (mmix_md_begin): Likewise.
473 (md_assemble): Likewise.
474 * config/tc-mn10200.c (md_begin): Likewise.
475 (md_assemble): Likewise.
476 * config/tc-mn10300.c (HAVE_AM30): Likewise.
477 (md_begin): Likewise.
478 (md_assemble): Likewise.
479 * config/tc-moxie.c (md_begin): Likewise.
480 (md_assemble): Likewise.
481 * config/tc-msp430.c (md_begin): Likewise.
482 (msp430_operands): Likewise.
483 (md_assemble): Likewise.
484 * config/tc-nds32.c (PV_DONT_CARE): Likewise.
485 (builtin_isreg): Likewise.
486 (builtin_regnum): Likewise.
487 (nds32_init_nds32_pseudo_opcodes): Likewise.
488 (nds32_lookup_pseudo_opcode): Likewise.
489 (nds32_relax_hint): Likewise.
490 (md_begin): Likewise.
491 (nds32_find_reloc_table): Likewise.
492 (nds32_elf_append_relax_relocs_traverse): Likewise.
493 (nds32_relax_branch_instructions): Likewise.
494 (md_convert_frag): Likewise.
495 (nds32_elf_analysis_relax_hint): Likewise.
496 (tc_nds32_regname_to_dw2regnum): Likewise.
497 * config/tc-nios2.c (nios2_opcode_lookup): Likewise.
498 (nios2_reg_lookup): Likewise.
499 (nios2_ps_lookup): Likewise.
500 (md_begin): Likewise.
501 * config/tc-ns32k.c (struct hash_control): Likewise.
503 (md_begin): Likewise.
504 * config/tc-pdp11.c (md_begin): Likewise.
505 (md_assemble): Likewise.
506 * config/tc-pj.c (fake_opcode): Likewise.
508 (md_begin): Likewise.
509 (md_assemble): Likewise.
510 * config/tc-ppc.c (ppc_setup_opcodes): Likewise.
511 (md_assemble): Likewise.
512 * config/tc-pru.c (pru_opcode_lookup): Likewise.
513 (pru_reg_lookup): Likewise.
514 (md_begin): Likewise.
516 * config/tc-riscv.c (init_ext_version_hash): Likewise.
517 (riscv_get_default_ext_version): Likewise.
518 (riscv_set_arch): Likewise.
519 (init_opcode_names_hash): Likewise.
520 (opcode_name_lookup): Likewise.
521 (enum reg_class): Likewise.
522 (hash_reg_name): Likewise.
523 (riscv_init_csr_hash): Likewise.
524 (reg_csr_lookup_internal): Likewise.
525 (reg_lookup_internal): Likewise.
526 (init_opcode_hash): Likewise.
527 (md_begin): Likewise.
528 (DECLARE_CSR): Likewise.
529 (macro_build): Likewise.
530 (riscv_ip): Likewise.
531 * config/tc-s390.c (register_name): Likewise.
532 (s390_setup_opcodes): Likewise.
533 (md_begin): Likewise.
534 (md_assemble): Likewise.
535 (s390_insn): Likewise.
536 * config/tc-score.c (struct s3_reg_map): Likewise.
537 (s3_score_reg_parse): Likewise.
538 (s3_dependency_type_from_insn): Likewise.
539 (s3_parse_16_32_inst): Likewise.
540 (s3_parse_48_inst): Likewise.
541 (s3_insert_reg): Likewise.
542 (s3_build_reg_hsh): Likewise.
543 (s3_build_score_ops_hsh): Likewise.
544 (s3_build_dependency_insn_hsh): Likewise.
545 (s3_begin): Likewise.
546 * config/tc-score7.c (struct s7_reg_map): Likewise.
547 (s7_score_reg_parse): Likewise.
548 (s7_dependency_type_from_insn): Likewise.
549 (s7_parse_16_32_inst): Likewise.
550 (s7_build_score_ops_hsh): Likewise.
551 (s7_build_dependency_insn_hsh): Likewise.
552 (s7_insert_reg): Likewise.
553 (s7_build_reg_hsh): Likewise.
554 (s7_begin): Likewise.
555 * config/tc-sh.c (EMPTY): Likewise.
556 (md_begin): Likewise.
557 (find_cooked_opcode): Likewise.
558 * config/tc-sparc.c (md_begin): Likewise.
559 (sparc_ip): Likewise.
560 * config/tc-spu.c (md_begin): Likewise.
561 (md_assemble): Likewise.
562 * config/tc-tic30.c (md_begin): Likewise.
563 (tic30_operand): Likewise.
564 (tic30_parallel_insn): Likewise.
565 (md_assemble): Likewise.
566 * config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise.
567 (tic4x_asg): Likewise.
568 (tic4x_inst_insert): Likewise.
569 (tic4x_inst_add): Likewise.
570 (md_begin): Likewise.
571 (tic4x_operand_parse): Likewise.
572 (md_assemble): Likewise.
573 * config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise.
574 (stag_add_field_symbols): Likewise.
575 (tic54x_endstruct): Likewise.
576 (tic54x_tag): Likewise.
577 (tic54x_remove_local_label): Likewise.
578 (tic54x_clear_local_labels): Likewise.
579 (tic54x_var): Likewise.
580 (tic54x_macro_start): Likewise.
581 (tic54x_macro_info): Likewise.
582 (tic54x_macro_end): Likewise.
583 (subsym_isreg): Likewise.
584 (subsym_structsz): Likewise.
585 (md_begin): Likewise.
586 (is_mmreg): Likewise.
588 (encode_condition): Likewise.
589 (encode_cc3): Likewise.
590 (encode_cc2): Likewise.
591 (encode_operand): Likewise.
592 (tic54x_parse_insn): Likewise.
593 (tic54x_parse_parallel_insn_firstline): Likewise.
594 (subsym_create_or_replace): Likewise.
595 (subsym_lookup): Likewise.
596 (subsym_substitute): Likewise.
597 (tic54x_undefined_symbol): Likewise.
598 * config/tc-tic6x.c (md_begin): Likewise.
599 (md_assemble): Likewise.
600 * config/tc-tilegx.c (O_hw2_last_plt): Likewise.
601 (INSERT_SPECIAL_OP): Likewise.
602 (md_begin): Likewise.
603 (tilegx_parse_name): Likewise.
604 (parse_reg_expression): Likewise.
605 (md_assemble): Likewise.
606 * config/tc-tilepro.c (O_tls_ie_load): Likewise.
607 (INSERT_SPECIAL_OP): Likewise.
608 (tilepro_parse_name): Likewise.
609 (parse_reg_expression): Likewise.
610 (md_assemble): Likewise.
611 * config/tc-v850.c (md_begin): Likewise.
612 (md_assemble): Likewise.
613 * config/tc-vax.c (md_ri_to_chars): Likewise.
614 (vip_begin): Likewise.
617 (md_begin): Likewise.
618 * config/tc-wasm32.c (md_begin): Likewise.
619 (md_assemble): Likewise.
620 * config/tc-xgate.c (xgate_parse_operand): Likewise.
621 (md_begin): Likewise.
622 (md_assemble): Likewise.
623 * config/tc-z8k.c (md_begin): Likewise.
624 (md_assemble): Likewise.
626 2020-08-20 Martin Liska <mliska@suse.cz>
628 * dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_*
630 (dwcfi_hash_find): Likewise.
631 (dwcfi_hash_find_or_make): Likewise.
633 2020-08-20 Martin Liska <mliska@suse.cz>
635 * ecoff.c (INIT_VARRAY): Use htab_t.
636 (add_string): Likewise.
637 (ecoff_read_begin_hook): Use new str_htab_create.
638 (get_tag): Use htab_t.
639 (add_file): Likewise.
641 2020-08-20 Martin Liska <mliska@suse.cz>
643 * hash.h (struct string_tuple): New.
644 (hash_string_tuple): Likewise.
645 (eq_string_tuple): Likewise.
646 (string_tuple_alloc): Likewise.
647 (str_hash_find): Likewise.
648 (str_hash_find_n): Likewise.
649 (str_hash_delete): Likewise.
650 (str_hash_insert): Likewise.
651 (str_htab_create): Likewise.
653 2020-08-20 Martin Liska <mliska@suse.cz>
655 * symbols.c (struct symbol_entry): New.
656 (hash_symbol_entry): Likewise.
657 (eq_symbol_entry): Likewise.
658 (symbol_entry_alloc): Likewise.
659 (symbol_entry_find): Likewise.
660 (local_symbol_make): Use htab hash table.
661 (local_symbol_convert): Likewise.
662 (symbol_table_insert): Likewise.
663 (symbol_find_exact_noref): Likewise.
664 (resolve_local_symbol): Likewise.
665 (resolve_local_symbol_values): Likewise.
666 (symbol_begin): Likewise.
667 (symbol_print_statistics): Likewise.
669 2020-08-20 Martin Liska <mliska@suse.cz>
671 * read.c (struct po_entry): New.
672 (hash_po_entry): Likewise.
673 (eq_po_entry): Likewise.
674 (po_entry_alloc): Likewise.
675 (po_entry_find): Likewise.
676 (pop_insert): Likewise.
677 (pobegin): Use htab hash table.
678 (read_a_source_file): Likewise.
680 (read_print_statistics): Likewise.
681 * config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier.
682 * config/tc-m68k.h (m68k_conditional_pseudoop): Likewise.
684 2020-08-20 Martin Liska <mliska@suse.cz>
686 * config/tc-iq2000.c (iq2000_add_macro): Use htab hash table.
687 * macro.c (struct hash_control): Use htab.
688 (macro_init): Likewise.
689 (do_formals): Likewise.
690 (free_macro): Likewise.
691 (define_macro): Likewise.
692 (sub_actual): Likewise.
693 (macro_expand_body): Likewise.
694 (macro_expand): Likewise.
695 (check_macro): Likewise.
696 (delete_macro): Likewise.
697 (expand_irp): Likewise.
698 * macro.h (struct macro_hash_entry): New struct.
699 (hash_macro_entry): New.
700 (eq_macro_entry): Likewise.
701 (macro_entry_alloc): Likewise.
702 (macro_entry_find): Likewise.
703 (struct formal_hash_entry): Likewise.
704 (hash_formal_entry): Likewise.
705 (eq_formal_entry): Likewise.
706 (formal_entry_alloc): Likewise.
707 (formal_entry_find): Likewise.
709 2020-08-20 Martin Liska <mliska@suse.cz>
711 * as.h: Include hashtab.h.
712 * hash.c (htab_insert): New.
713 (htab_print_statistics): Likewise.
714 * hash.h (htab_insert): Likewise.
715 (htab_print_statistics): Likewise.
717 2020-08-19 Alan Modra <amodra@gmail.com>
719 * testsuite/gas/ppc/int128.s: Correct vcmpuq.
720 * testsuite/gas/ppc/int128.d: Update.
721 * testsuite/gas/ppc/xvtlsbb.d: Update.
723 2020-08-18 Peter Bergner <bergner@linux.ibm.com>
725 * testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
726 * testsuite/gas/ppc/vsx4.d: Likewise.
728 2020-08-17 Alex Coplan <alex.coplan@arm.com>
730 * config/obj-elf.c (obj_elf_change_section): When repurposing an
731 existing symbol, ensure that we set sy_value as per other (fresh)
733 * testsuite/gas/elf/elf.exp: Add new test.
734 * testsuite/gas/elf/section-symbol-redef.d: New test.
735 * testsuite/gas/elf/section-symbol-redef.s: Input for test.
737 2020-08-13 Nick Clifton <nickc@redhat.com>
740 * config/obj-som.c (obj_som_init_stab_section): Do nothing if the
741 $GDB_DEBUG$ section has already been created.
743 2020-08-12 Joe Ramsay <joe.ramsay@.arm.com>
745 * config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for
746 NS_FD shape when MVE is present
747 * testsuite/gas/arm/mve-vcvtne-it-bad.d: New test.
748 * testsuite/gas/arm/mve-vcvtne-it-bad.l: New test.
749 * testsuite/gas/arm/mve-vcvtne-it-bad.s: New test.
750 * testsuite/gas/arm/mve-vcvtne-it.d: New test.
751 * testsuite/gas/arm/mve-vcvtne-it.s: New test.
753 2020-08-12 Alex Coplan <alex.coplan@arm.com>
755 * testsuite/gas/aarch64/mpam-bad.d: New test.
756 * testsuite/gas/aarch64/mpam-bad.l: Error output.
757 * testsuite/gas/aarch64/mpam-bad.s: Input.
758 * testsuite/gas/aarch64/mpam.d: New test.
759 * testsuite/gas/aarch64/mpam.s: Input.
761 2020-08-12 Nick Clifton <nickc@redhat.com>
764 * doc/c-riscv.texi (RISC-V-Options): Fix typo in the description
765 of the -mno-csr-check option.
767 2020-08-12 Nick Clifton <nickc@redhat.com>
769 * po/ru.po: Updated Russian translation.
771 2020-08-10 Alex Coplan <alex.coplan@arm.com>
773 * config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing
774 a long system register.
775 (parse_sys_ins_reg): Likewise.
776 (sysreg_hash_insert): New.
777 (md_begin): Use sysreg_hash_insert() to ensure all system
778 registers are no longer than the maximum length at startup.
779 * testsuite/gas/aarch64/invalid-sysreg-assert.d: New test.
780 * testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output.
781 * testsuite/gas/aarch64/invalid-sysreg-assert.s: Input.
783 2020-08-10 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
785 * config/tc-aarch64.c (parse_sys_reg): Call to
786 aarch64_sys_ins_reg_supported_p instead of
787 aarch64_sys_reg_supported_p.
788 (parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check.
789 * testsuite/gas/aarch64/illegal-sysreg-5.d: New test.
790 * testsuite/gas/aarch64/illegal-sysreg-5.l: New test.
791 * testsuite/gas/aarch64/sysreg-5.s: New test.
793 2020-08-10 Alan Modra <amodra@gmail.com>
795 * testsuite/gas/ppc/power8.d,
796 * testsuite/gas/ppc/power8.s: Add miso.
797 * testsuite/gas/ppc/power9.d,
798 * testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru.
800 2020-08-10 Alan Modra <amodra@gmail.com>
802 * testsuite/gas/ppc/power8.d: Update.
803 * testsuite/gas/ppc/vsx2.d: Update.
805 2020-08-10 Alan Modra <amodra@gmail.com>
807 * config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
808 stswi, or stswx in little-endian mode.
809 * testsuite/gas/ppc/476.d,
810 * testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
811 * testsuite/gas/ppc/a2.d,
812 * testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
813 * testsuite/gas/ppc/be.d,
814 * testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
815 * testsuite/gas/ppc/le_error.d,
816 * testsuite/gas/ppc/le_error.l: New little-endian test.
817 * testsuite/gas/ppc/ppc.exp: Run new tests.
819 2020-08-07 H.J. Lu <hongjiu.lu@intel.com>
821 * read.c (read_a_source_file): Ignore rest of line on overflow
824 2020-08-06 Alex Coplan <alex.coplan@arm.com>
826 * read.c (read_a_source_file): Use long for local labels, detect
827 overflow and raise an error for overly-long labels.
828 * testsuite/gas/all/gas.exp: Add local-label-overflow test.
829 * testsuite/gas/all/local-label-overflow.d: New test.
830 * testsuite/gas/all/local-label-overflow.l: Error output.
831 * testsuite/gas/all/local-label-overflow.s: Input.
833 2020-08-04 Christian Groessler <chris@groessler.org>
835 * gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
836 "sout/soutb #imm,reg"
838 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
840 * NEWS: Mention {disp16} pseudo prefix.
842 2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
844 * testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
847 2020-08-04 Mark Wielaard <mark@klomp.org>
849 * dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
850 DW_FORM_udata for DW_AT_high_pc.
851 (out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
853 * read.c (emit_leb128_exp): No longer static.
854 * read.h (emit_leb128_exp): Define.
856 2020-08-02 Mark Wielaard <mark@klomp.org>
858 * gas/dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
859 least one directory if there is at least one file. Use dirs[1]
860 if dirs[0] is not set, or if there is no dirs[1] the current
861 working directory. Use files[1] filename, when files[0] filename
864 2020-08-02 Mark Wielaard <mark@klomp.org>
866 * dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
868 * gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
869 * gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
870 * gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
871 * gas/testsuite/gas/elf/dwarf-5-cu.s: Likewise.
872 * testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
874 2020-08-02 Mark Wielaard <mark@klomp.org>
876 * doc/as.texi (--gdwarf-[345]): Fix typo.
878 2020-08-03 Jozef Lawrynowicz <jozef.l@mittosystems.com>
880 * config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
881 (md_parse_option): Remove case for OPTION_MOVE_DATA.
882 (md_longopts): Remove "md" entry.
883 (md_show_usage): Likewise.
885 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
888 * config/tc-i386.c (_i386_insn::disp_encoding): Add
890 (parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
892 (build_modrm_byte): Handle {disp16}.
893 (i386_index_check): Check invalid {disp16} and {disp32} pseudo
895 * doc/c-i386.texi: Update {disp32} documentation and document
897 * testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
898 * testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
900 * testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
901 tests with 128-byte displacement. Add {disp16} tests.
902 * testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
903 vmovaps test. Add (%r13)/(%r13d) tests.
904 * testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
905 * testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
906 * testsuite/gas/i386/inval-pseudo.l: Updated.
907 * testsuite/gas/i386/pseudos.d: Likewise.
908 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
910 2020-07-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
912 * Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
913 * Makefile.in, doc/Makefile.in: Regenerate.
914 * configure: Regenerate.
916 2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
918 * testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
919 * testsuite/gas/elf/dwarf2-5.d: Likewise.
920 * testsuite/gas/i386/dw2-compress-3a.d: Likewise.
921 * testsuite/gas/i386/dw2-compress-3b.d: Likewise.
922 * testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
923 * testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
925 2020-07-30 Nick Clifton <nickc@redhat.com>
927 * as.c (dwarf_level): Initialise to 3 in case this is not set on
930 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
932 * testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
933 * testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
934 * testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
935 * testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
936 * testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
937 * testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
938 * testsuite/gas/mips/mips.exp: Run the new tests.
940 2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
942 * testsuite/gas/mips/global-local-symtab-o32.d: New test.
943 * testsuite/gas/mips/global-local-symtab-o32t.d: New test.
944 * testsuite/gas/mips/global-local-symtab-n32.d: New test.
945 * testsuite/gas/mips/global-local-symtab-n32t.d: New test.
946 * testsuite/gas/mips/global-local-symtab-n64.d: New test.
947 * testsuite/gas/mips/global-local-symtab.s: New test source.
948 * testsuite/gas/mips/mips.exp: Run the new tests.
950 2020-07-28 H.J. Lu <hongjiu.lu@intel.com>
953 * config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
954 (%bp)/(%ebp)/(%rbp) for {disp32}.
955 * doc/c-i386.texi: Update {disp32} documentation.
956 * testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
957 * testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
958 * testsuite/gas/i386/pseudos.d: Updated.
959 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
961 2020-07-27 H.J. Lu <hongjiu.lu@intel.com>
963 * doc/as.texi: Replace preceeded with preceded.
965 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
967 * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
968 * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
969 * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
970 * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
971 * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
972 * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
973 * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
974 * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
976 * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
977 * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
978 * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
980 * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
982 * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
984 * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
986 * testsuite/gas/mips/jal-xgot-irix.d: New file.
987 * testsuite/gas/mips/jalr2-irix.d: New file.
988 * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
990 * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
992 * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
993 * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
994 `*-*-irix*' targets. Add source file designator.
995 * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
997 * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
998 * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
999 * testsuite/gas/mips/jalr2.d: Add name designator.
1000 * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
1001 tests involving the JALR relocation throughout.
1003 2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
1005 * testsuite/gas/mips/mips.exp: Use a helper variable for
1006 IRIX/non-IRIX test selection.
1008 2020-07-21 Jan Beulich <jbeulich@suse.com>
1010 * testsuite/gas/i386/evex-no-scale-64.d,
1011 testsuite/gas/i386/addr32.d,
1012 testsuite/gas/i386/x86-64-addr32-intel.d,
1013 testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
1015 2020-07-21 Cooper Qu <cooper.qu@linux.alibaba.com>
1017 * config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
1019 2020-07-21 Jan Beulich <jbeulich@suse.com>
1021 * testsuite/gas/i386/evex-no-scale-32.d,
1022 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
1023 * testsuite/gas/i386/evex-no-scale-32.s,
1024 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
1025 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
1026 instead of .section.
1027 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
1030 2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
1032 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
1033 (my_getSmallExpression): Adjust accordingly.
1035 2020-07-20 Jan Beulich <jbeulich@suse.com>
1038 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
1039 conditional around it.
1040 (md_begin): Insert backslash into operand_chars[] when slash is
1041 a comment character.
1042 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
1043 \* as operators when / may be a comment character.
1044 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
1045 * testsuite/gas/i386/i386.exp: Run new test.
1047 2020-07-20 Jan Beulich <jbeulich@suse.com>
1050 * app.c (last_char): Drop TC_ARM conditional around it.
1051 (struct app_save): Drop TC_ARM conditional around last_char.
1052 (app_push, app_pop): Drop TC_ARM conditional from last_char
1054 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
1055 backslash-precedes-comment-character check.
1057 2020-07-20 Jan Beulich <jbeulich@suse.com>
1059 * config/tc-i386.c (frag_opcode_byte): New.
1060 (output_branch): Emit error when in absolute section.
1061 (output_jump, output_insn): Use frag_opcode_byte. Handle being
1062 in absolute section.
1063 (output_interseg_jump, output_disp, output_imm): Handle being in
1065 * testsuite/gas/i386/sizing.s,
1066 testsuite/gas/i386/sizing32.d,
1067 testsuite/gas/i386/sizing64.d: New.
1068 * testsuite/gas/i386/i386.exp: Run new tests.
1070 2020-07-20 Jan Beulich <jbeulich@suse.com>
1072 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
1073 is_elf_format as applicable; merely exclude iamcu tests.
1075 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
1078 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
1079 against section to PC32 reloc.
1080 * testsuite/gas/i386/relax-5.d: Updated.
1081 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1083 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
1086 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
1087 * testsuite/gas/i386/addr32.d: Likewise.
1088 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1089 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1091 2020-07-15 Nick Clifton <nickc@redhat.com>
1093 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
1094 the addend field of REL relocations. Store the full addend into
1095 the note for REL relocations.
1097 2020-07-15 Jan Beulich <jbeulich@suse.com>
1099 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
1101 * testsuite/gas/i386/x86-64-stack-intel.d,
1102 testsuite/gas/i386/x86-64-stack-suffix.d,
1103 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
1105 2020-07-15 Jan Beulich <jbeulich@suse.com>
1107 * testsuite/gas/i386/disassem.d,
1108 testsuite/gas/i386/ilp32/x86-64-branch.d,
1109 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
1110 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
1111 testsuite/gas/i386/noreg32.d,
1112 testsuite/gas/i386/noreg64-rex64.d,
1113 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
1114 testsuite/gas/i386/opcode.d,
1115 testsuite/gas/i386/solaris/x86-64-branch-2.d,
1116 testsuite/gas/i386/solaris/x86-64-jump.d,
1117 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
1118 testsuite/gas/i386/solaris/x86-64-nop-3.d,
1119 testsuite/gas/i386/solaris/x86-64-nop-4.d,
1120 testsuite/gas/i386/solaris/x86-64-nop-5.d,
1121 testsuite/gas/i386/solaris/x86-64-relax-2.d,
1122 testsuite/gas/i386/solaris/x86-64-relax-3.d,
1123 testsuite/gas/i386/x86-64-align-branch-1a.d,
1124 testsuite/gas/i386/x86-64-align-branch-1b.d,
1125 testsuite/gas/i386/x86-64-align-branch-1c.d,
1126 testsuite/gas/i386/x86-64-align-branch-1d.d,
1127 testsuite/gas/i386/x86-64-align-branch-1e.d,
1128 testsuite/gas/i386/x86-64-align-branch-1f.d,
1129 testsuite/gas/i386/x86-64-align-branch-1g.d,
1130 testsuite/gas/i386/x86-64-align-branch-1h.d,
1131 testsuite/gas/i386/x86-64-align-branch-1i.d,
1132 testsuite/gas/i386/x86-64-align-branch-2a.d,
1133 testsuite/gas/i386/x86-64-align-branch-2b.d,
1134 testsuite/gas/i386/x86-64-align-branch-2c.d,
1135 testsuite/gas/i386/x86-64-align-branch-3.d,
1136 testsuite/gas/i386/x86-64-align-branch-4a.d,
1137 testsuite/gas/i386/x86-64-align-branch-4b.d,
1138 testsuite/gas/i386/x86-64-align-branch-5.d,
1139 testsuite/gas/i386/x86-64-align-branch-6.d,
1140 testsuite/gas/i386/x86-64-branch-2.d,
1141 testsuite/gas/i386/x86-64-branch-3.d,
1142 testsuite/gas/i386/x86-64-branch.d,
1143 testsuite/gas/i386/x86-64-disassem.d,
1144 testsuite/gas/i386/x86-64-disp32.d,
1145 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
1146 testsuite/gas/i386/x86-64-gotpcrel.d,
1147 testsuite/gas/i386/x86-64-ifunc.d,
1148 testsuite/gas/i386/x86-64-jump.d,
1149 testsuite/gas/i386/x86-64-lfence-byte.d,
1150 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
1151 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
1152 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
1153 testsuite/gas/i386/x86-64-lfence-load.d,
1154 testsuite/gas/i386/x86-64-lfence-ret-a.d,
1155 testsuite/gas/i386/x86-64-lfence-ret-b.d,
1156 testsuite/gas/i386/x86-64-lfence-ret-c.d,
1157 testsuite/gas/i386/x86-64-lfence-ret-d.d,
1158 testsuite/gas/i386/x86-64-lfence-ret-e.d,
1159 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
1160 testsuite/gas/i386/x86-64-mpx-branch-1.d,
1161 testsuite/gas/i386/x86-64-mpx.d,
1162 testsuite/gas/i386/x86-64-nop-3.d,
1163 testsuite/gas/i386/x86-64-nop-4.d,
1164 testsuite/gas/i386/x86-64-nop-5.d,
1165 testsuite/gas/i386/x86-64-nops-7.d,
1166 testsuite/gas/i386/x86-64-notrack.d,
1167 testsuite/gas/i386/x86-64-opcode.d,
1168 testsuite/gas/i386/x86-64-relax-2.d,
1169 testsuite/gas/i386/x86-64-relax-3.d,
1170 testsuite/gas/i386/x86-64-relax-4.d,
1171 testsuite/gas/i386/x86-64-rtm.d,
1172 testsuite/gas/i386/x86-64-stack.d,
1173 testsuite/gas/i386/x86-64-unique.d,
1174 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
1176 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
1179 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
1181 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
1182 * testsuite/gas/i386/addr32.d: Updated.
1183 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
1184 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
1185 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
1186 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
1188 2020-07-14 Jan Beulich <jbeulich@suse.com>
1190 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
1191 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
1192 * testsuite/gas/i386/intel.d,
1193 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
1195 2020-07-14 Jan Beulich <jbeulich@suse.com>
1197 * testsuite/gas/i386/prefix.d: Adjust expectations.
1199 2020-07-14 Jan Beulich <jbeulich@suse.com>
1201 * testsuite/gas/i386/x86-64-avx-intel.d,
1202 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
1204 2020-07-14 Jan Beulich <jbeulich@suse.com>
1206 * testsuite/gas/i386/movbe-suffix.d,
1207 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
1208 * testsuite/gas/i386/i386.exp: Run new tests.
1210 2020-07-14 Jan Beulich <jbeulich@suse.com>
1212 * testsuite/gas/i386/crc32-suffix.d,
1213 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
1214 * testsuite/gas/i386/i386.exp: Run new tests.
1215 * testsuite/gas/i386/arch-10-bdver1.d,
1216 testsuite/gas/i386/arch-10-bdver2.d,
1217 testsuite/gas/i386/arch-10-bdver3.d,
1218 testsuite/gas/i386/arch-10-bdver4.d,
1219 testsuite/gas/i386/arch-10-btver1.d,
1220 testsuite/gas/i386/arch-10-btver2.d,
1221 testsuite/gas/i386/arch-10-lzcnt.d,
1222 testsuite/gas/i386/arch-10-prefetchw.d,
1223 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
1224 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
1225 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
1226 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
1227 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
1228 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
1229 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
1230 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
1231 testsuite/gas/i386/x86-64-arch-2-btver1.d,
1232 testsuite/gas/i386/x86-64-arch-2-btver2.d,
1233 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
1234 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
1235 testsuite/gas/i386/x86-64-arch-2.d,
1236 testsuite/gas/i386/x86-64-crc32.d,
1237 testsuite/gas/i386/x86-64-pseudos.d,
1238 testsuite/gas/i386/x86-64-sse-noavx.d,
1239 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
1241 2020-07-14 Jan Beulich <jbeulich@suse.com>
1243 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1244 ModR/M-encoded byte register cases.
1245 * testsuite/gas/i386/x86-64-pseudos.d,
1246 testsuite/gas/i386/x86-64-reg-intel.d,
1247 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
1249 2020-07-14 Jan Beulich <jbeulich@suse.com>
1251 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
1252 not-ModR/M-encoded byte register cases.
1253 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
1255 2020-07-14 Jan Beulich <jbeulich@suse.com>
1257 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
1258 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
1259 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
1260 testsuite/gas/i386/ilp32/x86-64-avx.d,
1261 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
1262 testsuite/gas/i386/ilp32/x86-64-crc32.d,
1263 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
1264 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
1265 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
1266 testsuite/gas/i386/ilp32/x86-64-reg.d,
1267 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
1268 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
1269 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
1270 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
1271 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
1272 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
1275 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
1277 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
1280 2020-07-13 Nick Clifton <nickc@redhat.com>
1282 * po/fr.po: Updated French translation.
1284 2020-07-13 Alan Modra <amodra@gmail.com>
1286 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
1287 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1288 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1289 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1291 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
1293 * config/tc-i386.c (output_insn): Check i.xstate to set
1294 GNU_PROPERTY_X86_FEATURE_2_TMM.
1295 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
1296 x86-64-property-8 and x86-64-property-9.
1297 * testsuite/gas/i386/x86-64-property-7.d: New file.
1298 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
1299 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
1300 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
1301 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
1302 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
1304 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1306 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
1307 has_regymm, has_regzmm and has_regtmm. Add xstate.
1308 (md_assemble): Set i.xstate from operand types in instruction
1310 (build_modrm_byte): Updated.
1311 (output_insn): Check i.xstate.
1312 * testsuite/gas/i386/i386.exp: Run property-6 and
1314 * testsuite/gas/i386/property-6.d: New file.
1315 * testsuite/gas/i386/property-6.s: Updated.
1316 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
1318 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
1320 * testsuite/gas/i386/property-5.d: Correct test name.
1322 2020-07-10 Lili Cui <lili.cui@intel.com>
1324 * NEWS: Mention support for Intel AMX instructions.
1325 * config/tc-i386.c (i386_error): Add invalid_sib_address.
1326 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
1327 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
1328 (match_simd_size): Add tmmword check.
1329 (operand_type_match): Add tmmword.
1330 (type_names): Add rTMM.
1331 (i386_error): Add invalid_tmm_register_set.
1332 (check_VecOperands): Handle invalid_sib_address and
1333 invalid_tmm_register_set.
1334 (match_template): Handle invalid_sib_address.
1335 (build_modrm_byte): Handle non-vector SIB and zmmword.
1336 (i386_index_check): Disallow RegIP for non-vector SIB.
1337 (check_register): Handle zmmword.
1338 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
1339 * testsuite/gas/i386/i386.exp: Add AMX new tests.
1340 * testsuite/gas/i386/intel-regs.d: Add tmm.
1341 * testsuite/gas/i386/intel-regs.s: Add tmm.
1342 * testsuite/gas/i386/x86-64-amx-intel.d: New.
1343 * testsuite/gas/i386/x86-64-amx-inval.l: New.
1344 * testsuite/gas/i386/x86-64-amx-inval.s: New.
1345 * testsuite/gas/i386/x86-64-amx.d: New.
1346 * testsuite/gas/i386/x86-64-amx.s: New.
1347 * testsuite/gas/i386/x86-64-amx-bad.d: New.
1348 * testsuite/gas/i386/x86-64-amx-bad.s: New.
1350 2020-07-10 Tom de Vries <tdevries@suse.de>
1352 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
1353 readelf's line table decoding.
1354 * testsuite/gas/elf/dwarf2-12.d: Likewise.
1355 * testsuite/gas/elf/dwarf2-13.d: Likewise.
1356 * testsuite/gas/elf/dwarf2-14.d: Likewise.
1357 * testsuite/gas/elf/dwarf2-15.d: Likewise.
1358 * testsuite/gas/elf/dwarf2-16.d: Likewise.
1359 * testsuite/gas/elf/dwarf2-17.d: Likewise.
1360 * testsuite/gas/elf/dwarf2-18.d: Likewise.
1361 * testsuite/gas/elf/dwarf2-19.d: Likewise.
1362 * testsuite/gas/elf/dwarf2-5.d: Likewise.
1363 * testsuite/gas/elf/dwarf2-6.d: Likewise.
1364 * testsuite/gas/elf/dwarf2-7.d: Likewise.
1366 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1368 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
1369 VEX/EVEX vector instructions.
1370 * testsuite/gas/i386/property-4.d: New file.
1371 * testsuite/gas/i386/property-4.s: Likewise.
1372 * testsuite/gas/i386/property-5.d: Likewise.
1373 * testsuite/gas/i386/property-5.s: Likewise.
1374 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
1375 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
1377 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
1379 * NEWS: Mention --enable-x86-used-note.
1380 * configure.ac: Configure with --enable-x86-used-note by default
1382 * configure: Regenerated.
1384 2020-07-09 Alan Modra <amodra@gmail.com>
1386 * config/obj-coff.h: Remove TE_PE support.
1387 * config/tc-ppc.c: Likewise.
1388 * config/tc-ppc.h: Likewise.
1389 * configure.tgt: Remove powerpc PE and powerpc lynxos.
1390 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
1392 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
1394 2020-07-08 Jan Beulich <jbeulich@suse.com>
1396 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
1398 * testsuite/gas/i386/i386.exp: Run new tests.
1400 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
1402 * config/tc-arc.c (find_opcode_match): Add error messages.
1403 * testsuite/gas/arc/add_s-err.s: Update test.
1404 * testsuite/gas/arc/asm-errors.err: Likewise.
1405 * testsuite/gas/arc/cpu-em-err.s: Likewise.
1406 * testsuite/gas/arc/hregs-err.s: Likewise.
1407 * testsuite/gas/arc/warn.s: Likewise.
1409 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
1412 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
1414 2020-07-07 Alan Modra <amodra@gmail.com>
1416 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
1417 * testsuite/gas/ppc/ppc.exp: Likewise.
1418 * testsuite/gas/all/weakref1l.d: Likewise.
1420 2020-07-07 Nick Clifton <nickc@redhat.com>
1422 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
1425 2020-07-06 Jan Beulich <jbeulich@suse.com>
1427 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
1428 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
1429 testsuite/gas/i386/x86-64-evex-wig1.d,
1430 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
1433 2020-07-06 Jan Beulich <jbeulich@suse.com>
1435 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
1436 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
1437 * testsuite/gas/i386/avx512f-opts-intel.d,
1438 testsuite/gas/i386/avx512f-opts.d
1439 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
1440 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
1442 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
1445 * config/tc-arm.c: Fix spelling mistake.
1446 * config/tc-riscv.c: Likewise.
1447 * config/tc-z80.c: Likewise.
1448 * po/gas.pot: Regenerate.
1450 2020-07-06 Nick Clifton <nickc@redhat.com>
1452 * po/uk.po: Updated Ukranian translation.
1454 2020-07-04 Nick Clifton <nickc@redhat.com>
1456 * configure: Regenerate.
1457 * po/gas.pot: Regenerate.
1459 2020-07-04 Nick Clifton <nickc@redhat.com>
1461 * version.m4: Change version number to 2.35.50.
1462 * configure: Regenerate.
1463 * po/bfd.pot: Regenerate.
1465 2020-07-04 Nick Clifton <nickc@redhat.com>
1467 Binutils 2.35 branch created.
1469 2020-07-03 Alan Modra <amodra@gmail.com>
1472 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
1474 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
1476 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
1477 swap two source operands.
1479 2020-07-02 Nick Clifton <nickc@redhat.com>
1481 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
1483 2020-07-02 Alex Coplan <alex.coplan@arm.com>
1485 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
1486 segfault on negative chars.
1487 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
1488 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
1490 2020-07-02 Nick Clifton <nickc@redhat.com>
1493 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
1495 * testsuite/gas/ia64/unwind.d: Likewise.
1496 * testsuite/gas/mmix/bspec-1.d: Likewise.
1497 * testsuite/gas/mmix/bspec-2.d: Likewise.
1498 * testsuite/gas/mmix/comment-1.d: Likewise.
1499 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
1501 2020-07-01 Alan Modra <amodra@gmail.com>
1503 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
1505 2020-07-01 Alan Modra <amodra@gmail.com>
1507 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
1508 in data sections, and mep.
1510 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
1512 * NEWS: Mention x86 NaCl target support removal.
1513 * config/tc-i386.c: Remove x86 NaCl target support.
1514 * config/tc-i386.h: Likewise.
1515 * configure.tgt: Likewise.
1516 * testsuite/gas/i386/i386.exp: Likewise.
1517 * testsuite/gas/i386/iamcu-1.d: Likewise.
1518 * testsuite/gas/i386/iamcu-2.d: Likewise.
1519 * testsuite/gas/i386/iamcu-3.d: Likewise.
1520 * testsuite/gas/i386/iamcu-4.d: Likewise.
1521 * testsuite/gas/i386/iamcu-5.d: Likewise.
1522 * testsuite/gas/i386/k1om.d: Likewise.
1523 * testsuite/gas/i386/l1om.d: Likewise.
1525 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
1527 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
1528 checking into riscv_csr_address.
1529 (riscv_csr_version_check): Likewise.
1530 (riscv_csr_address): New function. Return the suitable CSR address
1531 after checking the ISA dependency and versions. Issue warnings if
1532 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
1533 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
1534 priv spec versions for them.
1535 (reg_csr_lookup_internal): Call riscv_csr_address to find the
1536 suitable CSR address.
1537 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
1538 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1539 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1540 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
1541 priv spec warnings here. These warnings are added by accident.
1542 Remove them and only focus on the ISA dependency warnings.
1543 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1544 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1545 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
1546 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
1547 than the privileged ones.
1548 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
1549 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
1550 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
1551 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
1552 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
1553 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
1554 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
1555 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
1556 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1557 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1559 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
1561 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
1562 (md_assemble): Don't process ImmExt without operands.
1564 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
1567 * config/tc-mmix.c (md_assemble) <fixup for
1568 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
1569 Also, set its fx_no_overflow.
1570 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
1571 Similarly this fixup affects 4 bytes, not 8 and needs its
1573 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
1574 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
1576 2020-06-29 Alan Modra <amodra@gmail.com>
1578 * config/tc-s12z.c: Use C style comments.
1579 * config/tc-z80.c: Likewise.
1580 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
1582 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
1584 * config/tc-i386.c (md_assemble): Process ImmExt without
1587 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
1589 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
1590 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
1591 VECSIB256 and VECSIB512, respectively.
1592 (build_modrm_byte): Replace vecsib with sib.
1594 2020-06-26 Jan Beulich <jbeulich@suse.com>
1596 * testsuite/gas/i386/nop-1-suffix.d: New.
1597 * testsuite/gas/i386/i386.exp: Run new test.
1599 2020-06-26 Pat Bernardi <bernardi@adacore.com>
1601 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
1602 (md_pseudo_table): Handle "gnu_attribute".
1603 * doc/as.texi: Document GNU attribute for M68K.
1605 2020-06-25 Nick Clifton <nickc@redhat.com>
1608 * config/tc-arm.c (arm_force_relocation): Force resolution of
1609 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
1610 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
1612 2020-06-25 Jan Beulich <jbeulich@suse.com>
1614 * config/tc-i386.c (md_assemble): Move call to process_immext()
1616 (process_operands): ... here.
1618 2020-06-25 Jan Beulich <jbeulich@suse.com>
1620 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
1621 diagnostic when there is a sizing prefix. Switch to word/dword/
1622 qword encoding when there is a sizing prefix and no (explicit or
1624 (update_imm): Handle presence of a sizing prefix.
1625 * testsuite/gas/i386/noreg16-data32.d,
1626 testsuite/gas/i386/noreg32-data16.d,
1627 testsuite/gas/i386/noreg32-data16.e,
1628 testsuite/gas/i386/noreg64-data16.d,
1629 testsuite/gas/i386/noreg64-data16.e,
1630 testsuite/gas/i386/noreg64-rex64.d: New.
1631 * testsuite/gas/i386/i386.exp: Run new tests.
1632 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
1633 Introduce and use pfx* macros.
1634 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
1636 * testsuite/gas/i386/noreg16.d: Adjust expectations.
1638 2020-06-25 Jan Beulich <jbeulich@suse.com>
1640 * testsuite/gas/i386/avx-16bit.d,
1641 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
1642 testsuite/gas/i386/avx512f-16bit.d,
1643 testsuite/gas/i386/avx512f.d,
1644 testsuite/gas/i386/evex-lig256.d,
1645 testsuite/gas/i386/evex-lig512.d
1646 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
1647 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
1648 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
1649 testsuite/gas/i386/sse2-16bit.d,
1650 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
1653 2020-06-25 Jan Beulich <jbeulich@suse.com>
1655 * config/tc-i386.c (md_assemble): Also reject explicit REX
1656 prefixes with VEX and alike encoded insns. Zap consumed bits
1658 (output_insn): Don't ignore REX prefix for VEX and alike
1659 encodings; abort() instead if encountered.
1660 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
1662 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
1663 * testsuite/gas/i386/x86-64-pseudos.d,
1664 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
1666 2020-06-25 Jan Beulich <jbeulich@suse.com>
1668 * config/tc-i386.c (process_operands): Translate explicit REX
1669 prefix into i.rex for SSE2AVX templates.
1670 (set_rex_vrex): New helper.
1671 (build_modrm_byte): Use it.
1672 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
1674 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
1676 2020-06-25 Jan Beulich <jbeulich@suse.com>
1678 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
1679 templates when there's no data size prefix.
1680 (md_assemble): Reject data size prefix also for legacy encoded
1682 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
1683 Uncomment previously not working line.
1684 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
1686 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
1687 testsuite/gas/i386/sse2avx.d: Adjust expectations.
1689 2020-06-25 Jan Beulich <jbeulich@suse.com>
1691 * config/tc-i386.c (build_evex_prefix): Drop early setting of
1694 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
1696 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
1697 explicit_priv_attr. It used to indicate CSR or priv instructions are
1699 (riscv_is_priv_insn): Return True if it is a privileged instruction.
1700 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
1701 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
1702 (riscv_write_out_attrs): Clarification of when to generate the elf
1703 priv spec attributes.
1704 * testsuite/gas/riscv/attribute-11.s: Add comments.
1705 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
1706 `priv_insn_<n>` to decide which priv instruction is expected to used.
1708 * testsuite/gas/riscv/attribute-14a.d: Likewise.
1709 * testsuite/gas/riscv/attribute-14b.d: Likewise.
1710 * testsuite/gas/riscv/attribute-14c.d: Likewise.
1711 * testsuite/gas/riscv/attribute-14d.d: Likewise.
1712 * testsuite/gas/riscv/attribute-14e.d: Likewise.
1714 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
1716 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
1717 (riscv_set_default_priv_spec): Get the priv spec version from the
1718 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
1720 2020-06-20 Alan Modra <amodra@gmail.com>
1722 * configure.tgt: Set bfd_gas for all SH targets.
1724 2020-06-18 Jan Beulich <jbeulich@suse.com>
1726 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
1727 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
1730 2020-06-16 Lili Cui <lili.cui@intel.com>
1732 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
1733 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
1734 * doc/c-i386.texi: Add avx512_vp2intersect.
1736 2020-06-16 Jan Beulich <jbeulich@suse.com>
1738 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
1740 * testsuite/gas/i386/sse-check.s: Adjust comment.
1741 * testsuite/gas/i386/sse-check-error.l,
1742 testsuite/gas/i386/sse-check-warn.e,
1743 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
1746 2020-06-16 Alan Modra <amodra@gmail.com>
1748 * config/tc-tic30.h: Remove OBJ_AOUT support.
1749 * configure.tgt: Delete tic30-*-*aout* entry.
1751 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
1753 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
1755 (elf32xtensa_abi): New declaration.
1756 (option_abi_windowed, option_abi_call0): New enum constants.
1757 (md_longopts): Add entries for --abi-windowed and --abi-call0.
1758 (md_parse_option): Add handlers for --abi-windowed and
1760 (xtensa_add_config_info): Use xtensa_abi_choice instead of
1761 XSHAL_ABI to format ABI tag.
1762 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
1763 --abi-call0 to the list of options.
1764 * doc/c-xtensa.texi: Add description for options --abi-windowed
1766 * testsuite/gas/xtensa/abi-call0.d: New test definition.
1767 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
1768 * testsuite/gas/xtensa/abi.s: New test source.
1770 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
1773 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
1775 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1776 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1777 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
1779 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
1781 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
1782 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
1783 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
1785 2020-06-09 Seth Girvan <snth@snthhacks.com>
1787 * doc/c-avr.texi: Improve wording.
1789 2020-06-09 Jan Beulich <jbeulich@suse.com>
1791 * testsuite/gas/i386/x86-64-pseudos-bad.s,
1792 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
1794 2020-06-09 Jan Beulich <jbeulich@suse.com>
1796 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
1798 * testsuite/gas/i386/prefix.d: Adjust expectations.
1800 2020-06-09 Jan Beulich <jbeulich@suse.com>
1802 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
1803 with VEX/EVEX encoding tests.
1804 * testsuite/gas/i386/prefix.d: Adjust expectations.
1806 2020-06-09 Jan Beulich <jbeulich@suse.com>
1808 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
1810 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
1811 * testsuite/gas/i386/noreg64.d: Adjust expectations.
1812 * testsuite/gas/i386/noreg-intel64.d,
1813 testsuite/gas/i386/noreg-intel64.l,
1814 testsuite/gas/i386/noreg-intel64.s: New.
1815 * testsuite/gas/i386/i386.exp: Run new tests.
1817 2020-06-09 Jan Beulich <jbeulich@suse.com>
1819 * config/tc-i386.c (vex_encoding_error): New enumerator.
1820 (VEX_check_operands): Rename to VEX_check_encoding. Check
1821 for vex_encoding_error. Move Imm4 handling ...
1822 (check_VecOperands): ... here.
1823 (match_template): Call VEX_check_encoding when there are no
1824 operands. Split construct calling check_VecOperands and
1825 VEX_check_encoding (when there are operands).
1826 (check_register): Don't blindly set vex_encoding_evex.
1827 * testsuite/gas/i386/pseudos-bad.s,
1828 testsuite/gas/i386/pseudos-bad.l: New.
1829 * testsuite/gas/i386/i386.exp: Run new test.
1830 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
1832 2020-06-08 Alex Coplan <alex.coplan@arm.com>
1834 * config/tc-arm.c (insns): Add dfb.
1835 * testsuite/gas/arm/dfb.d: New test.
1836 * testsuite/gas/arm/dfb.s: Input for test.
1838 2020-06-08 Nick Clifton <nickc@redhat.com>
1840 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
1842 2020-06-08 Jan Beulich <jbeulich@suse.com>
1844 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
1846 2020-06-08 Jan Beulich <jbeulich@suse.com>
1848 * config/tc-i386.c (check_byte_reg): Drop dead conditional
1851 2020-06-08 Jan Beulich <jbeulich@suse.com>
1853 * config/tc-i386.c (check_register): Split RegTR handling, to
1854 fail recognition also in 64-bit mode as well as with i586 or
1855 i686 explicitly enabled.
1856 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
1857 * testsuite/gas/i386/x86_64-intel.d,
1858 testsuite/gas/i386/x86_64.d: Adjust expectations.
1860 2020-06-08 Jan Beulich <jbeulich@suse.com>
1862 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
1863 * testsuite/gas/cfi/cfi.exp: Run this test.
1865 2020-06-08 Jan Beulich <jbeulich@suse.com>
1867 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
1868 check to %st(N) parsing logic.
1869 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
1871 2020-06-08 Jan Beulich <jbeulich@suse.com>
1873 * config/tc-i386.c (bad_reg): New.
1874 (check_VecOperations, i386_att_operand, i386_parse_name): Check
1876 (check_register): New, broken out from ...
1877 (parse_real_register): ... here. Call it.
1878 (parse_register): Call it, and error upon failure.
1879 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
1880 testsuite/gas/i386/x86-64-equ-bad.s,
1881 testsuite/gas/i386/x86-64-equ-bad.l: New.
1882 * testsuite/gas/i386/i386.exp: Run new tests.
1884 2020-06-06 Alan Modra <amodra@gmail.com>
1886 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
1887 * doc/c-ppc.texi: Likewise.
1889 2020-06-06 Alan Modra <amodra@gmail.com>
1891 * config/tc-ppc.c: Update throughout for reloc renaming.
1893 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
1895 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
1898 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
1900 * config/tc-riscv.c (explicit_csr): New static boolean.
1901 Used to indicate CSR are explictly used.
1902 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
1903 (riscv_write_out_attrs): If we already have set elf priv
1904 attributes, then generate them. Otherwise, don't generate
1905 them when no CSR are used.
1906 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
1907 * testsuite/gas/riscv/attribute-02.d: Likewise.
1908 * testsuite/gas/riscv/attribute-03.d: Likewise.
1909 * testsuite/gas/riscv/attribute-04.d: Likewise.
1910 * testsuite/gas/riscv/attribute-05.d: Likewise.
1911 * testsuite/gas/riscv/attribute-06.d: Likewise.
1912 * testsuite/gas/riscv/attribute-07.d: Likewise.
1913 * testsuite/gas/riscv/attribute-08.d: Likewise.
1914 * testsuite/gas/riscv/attribute-09.d: Likewise.
1915 * testsuite/gas/riscv/attribute-10.d: Likewise.
1916 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
1917 * testsuite/gas/riscv/attribute-11.s: New testcase.
1918 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
1919 used, so we should output the ELF priv attributes.
1920 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
1921 used, so output the priv attributes according to the -mpriv-spec.
1922 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
1923 used, so ignore the -mpriv-spec setting.
1925 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
1927 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
1928 cgen_get_insn_value.
1929 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
1930 endianness to cgen_get_insn_value and cgen_put_insn_value.
1932 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
1934 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
1935 cgen_put_insn_value.
1937 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
1939 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
1941 (md_assemble): Remove no longer needed hack.
1943 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
1945 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
1946 cgen_put_insn_value.
1947 (gas_cgen_md_apply_fix): Likewise.
1948 (gas_cgen_md_apply_fix): Likewise.
1949 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
1950 cgen_put_insn_value.
1951 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
1952 cgen_put_insn_value.
1954 2020-06-04 Alan Modra <amodra@gmail.com>
1956 * testsuite/config/default.exp: Remove global directive outside
1958 * testsuite/gas/mep/complex-relocs.exp: Likewise.
1959 * testsuite/gas/microblaze/relax_size.exp: Likewise.
1960 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
1961 * testsuite/gas/mt/relocs.exp: Likewise.
1962 * testsuite/gas/rx/rx.exp: Likewise.
1964 2020-06-03 Stephen Casner <casner@acm.org>
1966 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
1968 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
1969 Jim Wilson <jimw@sifive.com>
1972 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
1973 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
1974 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
1975 Move B before SB. Move J before UJ.
1977 2020-06-01 Alex Coplan <alex.coplan@arm.com>
1979 * write.c (relax_segment): Fix handling of negative offset when
1980 relaxing an rs_org frag.
1981 * testsuite/gas/aarch64/org-neg.d: New test.
1982 * testsuite/gas/aarch64/org-neg.l: Error output for test.
1983 * testsuite/gas/aarch64/org-neg.s: Input for test.
1984 * testsuite/gas/arm/org-neg.d: New test.
1985 * testsuite/gas/arm/org-neg.l: Error output for test.
1986 * testsuite/gas/arm/org-neg.s: Input for test.
1988 2020-05-28 Stephen Casner <casner@acm.org>
1990 Fix unexpected failures in gas testsuite for pdp11-aout target.
1991 These are caused by the PDP11's mix of little-endian octets in
1992 shorts but shorts in big endian order for long or quad.
1994 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
1995 * testsuite/gas/all/gas.exp: Select alternate test scripts for
1996 pdp11, skip octa test completely.
1997 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
1998 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
1999 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
2001 2020-05-28 Alex Coplan <alex.coplan@arm.com>
2003 * frags.c (frag_grow): Fix comment.
2005 2020-05-27 Stephen Casner <casner@acm.org>
2008 * config/tc-pdp11.c (parse_reg): Distinguish register names from
2009 symbols that begin with a register name.
2010 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
2011 * testsuite/gas/pdp11/pr26001.s: Likewise.
2012 * testsuite/gas/pdp11/pr26001.d: Likewise.
2014 2020-05-27 Simon Cook <simon.cook@embecosm.com>
2016 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
2017 pointer when creating struct riscv_csr_extra.
2019 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2021 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
2022 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
2023 * testsuite/gas/i386/inval-avx512f.l: Updated.
2025 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
2027 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
2028 load/store instruction variants with alignment hints.
2029 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
2030 instruction variants with alignment hints.
2032 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2035 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
2036 instead of R_XGATE_PCREL_X.
2037 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
2038 BFD_RELOC_XGATE_PCREL_X.
2040 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2043 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
2044 with &fragP->fr_literal[0].
2046 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2049 * config/tc-vax.c (md_estimate_size_before_relax): Replace
2050 fragP->fr_literal with &fragP->fr_literal[0].
2051 (md_convert_frag): Likewise.
2053 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2056 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
2057 with &fragP->fr_literal[0].
2059 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2062 * config/tc-crx.c (getreg_image): Change argument type to int.
2063 (md_convert_frag): Replace fragP->fr_literal with
2064 &fragP->fr_literal[0].
2066 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
2069 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
2070 sprintf with memmove.
2072 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2074 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
2075 with &fragP->fr_literal[0].
2077 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2080 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
2081 2 overlapping strings.
2083 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2085 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
2086 with &fragP->fr_literal[0].
2088 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
2090 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
2091 with &fragp->fr_literal[0].
2092 * config/tc-microblaze.c (md_apply_fix): Likewise.
2093 * config/tc-sh.c (md_convert_frag): Likewise.
2095 2020-05-24 Jim Wilson <jimw@sifive.com>
2098 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
2099 asection to segT. New locals seg and subseg. Call subseg_set before
2100 fix_new_exp. Call subseg_set after loop to restore original values.
2102 2020-05-21 Alan Modra <amodra@gmail.com>
2104 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
2106 * config/obj-elf.c: Likewise.
2107 * config/tc-aarch64.c: Likewise.
2108 * config/tc-arm.c: Likewise.
2109 * config/tc-m68k.c: Likewise.
2110 * config/tc-nios2.c: Likewise.
2111 * config/tc-tic30.c: Likewise.
2112 * ecoff.c: Likewise.
2114 * stabs.c: Likewise.
2115 * symbols.c: Likewise.
2116 * testsuite/gas/all/test-gen.c: Likewise.
2118 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
2120 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
2121 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
2122 Static variables which are used to set the ISA extensions. You can
2123 use -march (or ELF build attributes) and -misa-spec to set them,
2125 (ext_version_hash): The hash table used to handle the extensions
2127 (init_ext_version_hash): Initialize the ext_version_hash according
2128 to riscv_ext_version_table.
2129 (riscv_get_default_ext_version): The callback function of
2130 riscv_parse_subset_t. According to the choosed ISA spec,
2131 get the default version for the specific extension.
2132 (riscv_set_arch): Set the callback function.
2133 (enum options, struct option md_longopts): Add new option -misa-spec.
2134 (md_parse_option): Do not call riscv_set_arch for -march. We will
2135 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
2136 to set default_isa_spec class.
2137 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
2138 ext_version_hash, and then call riscv_set_arch to set the architecture
2139 with versions according to default_arch_with_ext.
2140 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
2142 * testsuite/gas/riscv/attribute-03.d: Likewise.
2143 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
2144 already set it's version to 2p1 by march, so no need to use the default
2145 2p2 version. For m-ext, we do not set the version by -march and ELF arch
2146 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
2147 ISA spec 2p2, so set 0p0 to it.
2148 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
2149 zicsr is 2p0 according to ISA spec 20191213.
2150 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
2151 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
2152 You can set them by configure options --with-arch and
2153 --with-isa-spec, respectively.
2154 (riscv_set_default_isa_spec): New function used to set the
2156 (md_parse_option): Call riscv_set_default_isa_spec rather than
2157 call riscv_get_isa_spec_class directly.
2158 (riscv_after_parse_args): If the -isa-spec is not set, then we
2159 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
2160 calling riscv_set_default_isa_spec.
2161 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
2162 the --with-isa-spec may be set to different ISA spec.
2163 * testsuite/gas/riscv/attribute-02.d: Likewise.
2164 * testsuite/gas/riscv/attribute-03.d: Likewise.
2165 * testsuite/gas/riscv/attribute-04.d: Likewise.
2166 * testsuite/gas/riscv/attribute-05.d: Likewise.
2167 * testsuite/gas/riscv/attribute-06.d: Likewise.
2168 * testsuite/gas/riscv/attribute-07.d: Likewise.
2169 * configure.ac: Add configure options, --with-arch and
2171 * configure: Regenerated.
2172 * config.in: Regenerated.
2173 * config/tc-riscv.c (default_priv_spec): Static variable which is
2174 used to check if the CSR is valid for the chosen privilege spec. You
2175 can use -mpriv-spec to set it.
2176 (enum reg_class): We now get the CSR address from csr_extra_hash rather
2177 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
2178 (riscv_init_csr_hashes): Only need to initialize one hash table
2180 (riscv_csr_class_check): Change the return type to void. Don't check
2181 the ISA dependency if -mcsr-check isn't set.
2182 (riscv_csr_version_check): New function. Check and find the CSR address
2183 from csr_extra_hash, according to default_priv_spec. Report warning
2184 for the invalid CSR if -mcsr-check is set.
2185 (reg_csr_lookup_internal): Updated.
2186 (reg_lookup_internal): Likewise.
2187 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
2188 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
2189 (md_parse_option): Call riscv_set_default_priv_version to set
2191 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
2192 privilege spec to the newest one.
2193 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
2194 include/opcode/riscv.h.
2195 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
2196 to check the ISA dependency for CSR, so fix the spec version by adding
2198 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
2199 version warnings for the test case.
2200 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2201 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2202 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2203 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2204 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2205 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
2206 Check whether the CSR is valid when privilege version 1.9 is choosed.
2207 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
2208 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
2209 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
2210 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
2211 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
2212 Check whether the CSR is valid when privilege version 1.10 is choosed.
2213 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
2214 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
2215 Check whether the CSR is valid when privilege version 1.11 is choosed.
2216 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
2217 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
2218 setting. You can set it by configure option --with-priv-spec.
2219 (riscv_set_default_priv_spec): New function used to set the default
2221 (md_parse_option): Call riscv_set_default_priv_spec rather than
2222 call riscv_get_priv_spec_class directly.
2223 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
2224 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
2225 calling riscv_set_default_priv_spec.
2226 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
2227 the --with-priv-spec may be set to different privilege spec.
2228 * testsuite/gas/riscv/priv-reg.d: Likewise.
2229 * configure.ac: Add configure option --with-priv-spec.
2230 * configure: Regenerated.
2231 * config.in: Regenerated.
2232 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
2233 explicit_attr. Set it to TRUE if any ELF attribute is found.
2234 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
2235 the priv attributes are set.
2236 (md_assemble): Set the default_priv_spec according to the priv
2237 attributes when we start to assemble instruction.
2238 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
2239 riscv_write_out_attrs. Update the arch and priv attributes. If we
2240 don't set the corresponding ELF attributes, then try to output the
2242 (riscv_set_public_attributes): If any ELF attribute or -march-attr
2243 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
2244 to update the arch and priv attributes.
2245 (s_riscv_attribute): Make sure all arch and priv attributes are set
2246 before any instruction.
2247 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
2248 ELF attribute or -march-attr is set. If the priv attributes are not
2249 set, then try to update them by the default setting (-mpriv-spec or
2251 * testsuite/gas/riscv/attribute-02.d: Likewise.
2252 * testsuite/gas/riscv/attribute-03.d: Likewise.
2253 * testsuite/gas/riscv/attribute-04.d: Likewise.
2254 * testsuite/gas/riscv/attribute-06.d: Likewise.
2255 * testsuite/gas/riscv/attribute-07.d: Likewise.
2256 * testsuite/gas/riscv/attribute-08.d: Likewise.
2257 * testsuite/gas/riscv/attribute-09.d: Likewise.
2258 * testsuite/gas/riscv/attribute-10.d: Likewise.
2259 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
2260 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
2261 set by priv attributes must be supported.
2262 * testsuite/gas/riscv/attribute-05.s: Likewise.
2263 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
2264 priv attributes according to the -mpriv-spec option.
2265 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
2266 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
2267 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
2268 * testsuite/gas/riscv/priv-reg.d: Removed.
2269 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
2270 CSR according to the priv spec 1.9.
2271 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
2272 CSR according to the priv spec 1.9.1.
2273 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
2274 CSR according to the priv spec 1.10.
2275 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
2276 CSR according to the priv spec 1.11.
2277 * config/tc-riscv.c (md_show_usage): Add descriptions about
2278 the new GAS options.
2279 * doc/c-riscv.texi: Likewise.
2281 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
2283 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
2284 * testsuite/gas/ppc/power9.d: Likewise.
2285 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
2286 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
2287 sync, wait, waitrsv>: Add tests.
2288 * testsuite/gas/ppc/power10.d: Likewise.
2290 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
2293 * config/tc-arm.c : Add arm_ext_v8r feature.
2294 (it_fsm_post_encode): Check arm_ext_v8r feature.
2295 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
2297 2020-05-19 Alan Modra <amodra@gmail.com>
2299 * write.c (write_contents): Use bfd_get_filename rather than
2300 accessing bfd->filename directly. Use bfd_section_name rather
2301 than accessing section->name directly.
2303 2020-05-19 Alan Modra <amodra@gmail.com>
2305 * symbols.c (local_symbol_make): Init all of lsy_flags.
2307 2020-05-18 Alan Modra <amodra@gmail.com>
2309 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
2310 before looking at add_symbol->sy_flags.
2312 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
2314 * config/tc-i386.c: Not handle lret/iret.
2315 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
2316 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
2317 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
2318 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
2319 * testsuite/gas/i386/lfence-ret.s: Ditto.
2320 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
2321 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
2322 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
2323 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
2324 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
2325 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
2326 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
2328 2020-05-15 Alan Modra <amodra@gmail.com>
2329 Alex Coplan <alex.coplan@arm.com>
2331 * symbols.c (struct local_symbol): Update comment.
2332 (resolve_symbol_value): For resolved symbols equated to other
2333 symbols, verify that the referenced symbol is not a local_symbol
2334 before accessing sy_value. Don't leave symbol loops during
2335 finalize_syms resolution.
2336 * testsuite/gas/all/assign-bad-recursive.d: New test.
2337 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
2338 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
2339 * testsuite/gas/all/gas.exp: Run it.
2341 2020-05-14 Nick Clifton <nickc@redhat.com>
2343 * po/sv.po: Updated Swedish translation.
2345 2020-05-11 Alan Modra <amodra@gmail.com>
2347 * testsuite/gas/ppc/scalarquad.d,
2348 * testsuite/gas/ppc/scalarquad.s: New test.
2349 * testsuite/gas/ppc/ppc.exp: Run it.
2351 2020-05-11 Alan Modra <amodra@gmail.com>
2353 * testsuite/gas/ppc/rightmost.d,
2354 * testsuite/gas/ppc/rightmost.s: New test.
2355 * testsuite/gas/ppc/ppc.exp: Run it.
2357 2020-05-11 Alan Modra <amodra@gmail.com>
2359 * testsuite/gas/ppc/xvtlsbb.d,
2360 * testsuite/gas/ppc/xvtlsbb.s: New test.
2361 * testsuite/gas/ppc/ppc.exp: Run it.
2363 2020-05-11 Alan Modra <amodra@gmail.com>
2365 * testsuite/gas/ppc/stringop.d,
2366 * testsuite/gas/ppc/stringop.s: New test.
2367 * testsuite/gas/ppc/ppc.exp: Run it.
2369 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2371 * testsuite/gas/ppc/set_bool.d,
2372 * testsuite/gas/ppc/set_bool.s: New test.
2373 * testsuite/gas/ppc/ppc.exp: Run it.
2375 2020-05-11 Alan Modra <amodra@gmail.com>
2377 * testsuite/gas/ppc/bitmanip.d,
2378 * testsuite/gas/ppc/bitmanip.s: New test.
2379 * testsuite/gas/ppc/ppc.exp: Run it.
2381 2020-05-11 Alan Modra <amodra@gmail.com>
2383 * testsuite/gas/ppc/genpcv.d,
2384 * testsuite/gas/ppc/genpcv.s: New test.
2385 * testsuite/gas/ppc/ppc.exp: Run it.
2387 2020-05-11 Alan Modra <amodra@gmail.com>
2389 * testsuite/gas/ppc/maskmanip.d,
2390 * testsuite/gas/ppc/maskmanip.s: New test.
2391 * testsuite/gas/ppc/ppc.exp: Run it.
2393 2020-05-11 Alan Modra <amodra@gmail.com>
2394 Peter Bergner <bergner@linux.ibm.com>
2396 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
2397 (md_assemble): Check acc specified in correct operand.
2398 * testsuite/gas/ppc/outerprod.d,
2399 * testsuite/gas/ppc/outerprod.s,
2400 * testsuite/gas/ppc/vsx4.d,
2401 * testsuite/gas/ppc/vsx4.s: New tests.
2402 * testsuite/gas/ppc/ppc.exp: Run them.
2404 2020-05-11 Alan Modra <amodra@gmail.com>
2406 * testsuite/gas/ppc/simd_perm.d,
2407 * testsuite/gas/ppc/simd_perm.s: New test.
2408 * testsuite/gas/ppc/ppc.exp: Run it.
2410 2020-05-11 Alan Modra <amodra@gmail.com>
2412 * testsuite/gas/ppc/int128.d,
2413 * testsuite/gas/ppc/int128.s: New test.
2414 * testsuite/gas/ppc/ppc.exp: Run it.
2416 2020-05-11 Alan Modra <amodra@gmail.com>
2418 * testsuite/gas/ppc/vsx_32byte.d,
2419 * testsuite/gas/ppc/vsx_32byte.s: New test.
2420 * testsuite/gas/ppc/ppc.exp: Run it.
2422 2020-05-11 Alan Modra <amodra@gmail.com>
2424 * testsuite/gas/ppc/vec_mul.s,
2425 * testsuite/gas/ppc/vec_mul.d: New test.
2426 * testsuite/gas/ppc/ppc.exp: Run it.
2428 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2430 * testsuite/gas/ppc/byte_rev.d,
2431 * testsuite/gas/ppc/byte_rev.s: New test.
2432 * testsuite/gas/ppc/ppc.exp: Run it.
2434 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2436 * testsuite/gas/ppc/power10.d: Add paste. tests.
2437 * testsuite/gas/ppc/power10.s: Likewise.
2439 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
2441 * testsuite/gas/ppc/power10.s: New test.
2442 * testsuite/gas/ppc/power10.d: Likewise.
2443 * testsuite/gas/ppc/ppc.exp: Run it.
2445 2020-05-11 Alan Modra <amodra@gmail.com>
2447 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
2449 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
2450 place of -mfuture/-Mfuture.
2451 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
2452 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
2454 2020-05-06 Nick Clifton <nickc@redhat.com>
2456 * po/sv.po: Updated Swedish translation.
2458 2020-05-06 Nick Clifton <nickc@redhat.com>
2461 * doc/as.texi (Preprocessing): Replace cross reference to not
2462 existant document with a URL to the equivalent page in the GCC
2465 2020-05-05 Nick Clifton <nickc@redhat.com>
2467 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
2468 construction of a DWARF-5 directory name table.
2469 * testsuite/gas/elf/pr25917.d: Update expected output.
2471 2020-05-05 Gunther Nikl <gnikl@justmail.de>
2473 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
2474 (md_parse_option): Remove initialization of elf_flags.
2476 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
2479 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
2480 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
2481 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
2483 2020-05-04 Nick Clifton <nickc@redhat.com>
2486 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
2487 table's existence before looking at its entries.
2488 Also do not emit a default directory entry if there are no
2491 * testsuite/gas/elf/pr25917.s: New test source file.
2492 * testsuite/gas/elf/pr25917.d: New test driver.
2493 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
2495 2020-04-30 Alex Coplan <alex.coplan@arm.com>
2497 * config/tc-aarch64.c (fix_insn): Implement for
2498 AARCH64_OPND_UNDEFINED.
2499 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
2500 * testsuite/gas/aarch64/udf.s: New.
2501 * testsuite/gas/aarch64/udf.d: New.
2502 * testsuite/gas/aarch64/udf-invalid.s: New.
2503 * testsuite/gas/aarch64/udf-invalid.l: New.
2504 * testsuite/gas/aarch64/udf-invalid.d: New.
2506 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
2508 * config/tc-rx.c (elf_flags): Reset default value.
2509 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
2511 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
2513 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
2514 if it's not defined.
2515 (microarch_earliest): New static variable.
2516 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
2517 simcall opcode has mandatory parameter.
2518 (xg_init_global_config): Initialize microarch_earliest.
2520 2020-04-29 Nick Clifton <nickc@redhat.com>
2523 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
2524 IMM0_8S and add support for IMM0_8U.
2525 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
2526 unsigned 8-bit immediate.
2527 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
2528 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
2530 2020-04-27 Tamar Christina <tamar.christina@arm.com>
2532 * NEWS: Add news entry for big-obj.
2533 * config/tc-i386.c (i386_target_format): Support new format.
2534 * doc/c-i386.texi: Add i386 support.
2535 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
2536 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
2538 2020-04-27 Nick Clifton <nickc@redhat.com>
2541 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
2542 (assign_file_to_slot): New function. Fills in an entry in the
2544 (allocate_filenum): Use new function.
2545 (allocate_filename_to_slot): Use new function. If the specified
2546 slot entry is already in use, but was chosen automatically then
2547 reassign the automatic entry.
2549 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
2551 * config/tc-i386.c (lfence_before_ret_shl): New member.
2552 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
2554 (insert_after_load): Issue warning for REP CMPS/SCAS.
2555 (insert_before_before): Handle iret, Handle
2556 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
2557 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
2558 -mlfence-before-ret=[none/not/or/shl/yes].
2559 Enable -mlfence-before-ret=shl when
2560 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
2561 (md_show_usage): Ditto.
2562 * doc/c-i386.texi: Ditto.
2563 * testsuite/gas/i386/i386.exp: Add new testcases.
2564 * testsuite/gas/i386/lfence-load-b.d: New.
2565 * testsuite/gas/i386/lfence-load-b.e: New.
2566 * testsuite/gas/i386/lfence-load.d: Modified.
2567 * testsuite/gas/i386/lfence-load.e: New.
2568 * testsuite/gas/i386/lfence-load.s: Modified.
2569 * testsuite/gas/i386/lfence-ret-a.d: Modified.
2570 * testsuite/gas/i386/lfence-ret-b.d: Modified.
2571 * testsuite/gas/i386/lfence-ret-c.d: New.
2572 * testsuite/gas/i386/lfence-ret-d.d: New.
2573 * testsuite/gas/i386/lfence-ret.s: Modified.
2574 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
2575 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
2576 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
2577 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
2578 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
2579 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
2580 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
2581 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
2582 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
2583 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
2585 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
2588 * config/tc-xtensa.c (md_apply_fix): Replace
2589 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
2590 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
2591 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
2592 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
2593 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
2595 2020-04-22 Alan Modra <amodra@gmail.com>
2597 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
2598 symbol for ".symver .. remove".
2599 * doc/as.texi (.symver): Update.
2600 * testsuite/gas/symver/symver11.s: Make foo weak.
2601 * testsuite/gas/symver/symver11.d: Expect an error.
2602 * testsuite/gas/symver/symver7.d: Allow other random symbols.
2604 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
2606 * testsuite/gas/symver/symver11.s: Add ".balign 8".
2608 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
2611 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
2612 * testsuite/gas/m68k/operands.d: Update.
2613 * testsuite/gas/m68k/op68000.d: Update for new error messages.
2615 2020-04-21 Tamar Christina <tamar.christina@arm.com>
2618 * testsuite/gas/arm/pr24753.d: New test.
2619 * testsuite/gas/arm/pr24753.s: New test.
2621 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
2625 * NEWS: Mention .symver extension.
2626 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
2628 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
2629 add a version name. Add local, hidden and remove visibility
2631 (elf_frob_symbol): Handle the list of version names. Update the
2632 original symbol to local, hidden or remove it from the symbol
2634 (elf_frob_file_before_adjust): Handle the list of version names.
2635 * config/obj-elf.h (elf_visibility): New.
2636 (elf_versioned_name_list): Likewise.
2637 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
2638 and visibility. Change versioned_name pointer to struct
2639 elf_versioned_name_list.
2640 * doc/as.texi: Update .symver directive.
2641 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
2642 error checking tests.
2643 * testsuite/gas/symver/symver6.d: New file.
2644 * testsuite/gas/symver/symver7.d: Likewise.
2645 * testsuite/gas/symver/symver7.s: Likewise.
2646 * testsuite/gas/symver/symver8.d: Likewise.
2647 * testsuite/gas/symver/symver8.s: Likewise.
2648 * testsuite/gas/symver/symver9.s: Likewise.
2649 * testsuite/gas/symver/symver9a.d: Likewise.
2650 * testsuite/gas/symver/symver9b.d: Likewise.
2651 * testsuite/gas/symver/symver10.s: Likewise.
2652 * testsuite/gas/symver/symver10a.d: Likewise.
2653 * testsuite/gas/symver/symver10b.d: Likewise.
2654 * testsuite/gas/symver/symver11.d: Likewise.
2655 * testsuite/gas/symver/symver11.s: Likewise.
2656 * testsuite/gas/symver/symver12.d: Likewise.
2657 * testsuite/gas/symver/symver12.s: Likewise.
2658 * testsuite/gas/symver/symver13.d: Likewise.
2659 * testsuite/gas/symver/symver13.s: Likewise.
2660 * testsuite/gas/symver/symver14.d: Likewise.
2661 * testsuite/gas/symver/symver14.l: Likewise.
2662 * testsuite/gas/symver/symver15.d: Likewise.
2663 * testsuite/gas/symver/symver15.l: Likewise.
2664 * testsuite/gas/symver/symver6.l: Removed.
2665 * testsuite/gas/symver/symver6.s: Updated.
2667 2020-04-20 Sudakshina Das <sudi.das@arm.com>
2669 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
2671 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
2672 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
2673 * testsuite/gas/aarch64/system.d: Update.
2675 2020-04-20 Sudakshina Das <sudi.das@arm.com>
2677 * testsuite/gas/aarch64/bti.d: Update -march option.
2678 * testsuite/gas/aarch64/illegal-bti.d: Remove.
2679 * testsuite/gas/aarch64/illegal-bti.l: Remove.
2680 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
2681 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
2683 2020-04-17 Alan Modra <amodra@gmail.com>
2685 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
2687 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
2688 Nick Clifton <nickc@redhat.com>
2691 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
2693 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
2694 for the type-2 test.
2695 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
2696 targets running this test.
2698 2020-02-16 David Faust <david.faust@oracle.com>
2700 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
2701 * testsuite/gas/bpf/jump32.s: New file.
2702 * testsuite/gas/bpf/jump32.d: Likewise.
2704 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
2706 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
2709 2020-04-08 Gunther Nikl <gnikl@justmail.de>
2711 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
2712 (md_pcrel_from): Remove prototytpe.
2713 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
2715 (md_pcrel_from_section): Remove duplicate prototype.
2716 * tc.h (md_pcrel_from_section): Add prototype.
2717 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
2718 * config/tc-arc.h (md_pcrel_from_section): Likewise.
2719 * config/tc-arm.h (md_pcrel_from_section): Likewise.
2720 * config/tc-avr.h (md_pcrel_from_section): Likewise.
2721 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
2722 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
2723 * config/tc-csky.h (md_pcrel_from_section): Likewise.
2724 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
2725 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
2726 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
2727 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
2728 * config/tc-frv.h (md_pcrel_from_section): Likewise.
2729 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
2730 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
2731 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
2732 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
2733 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
2734 * config/tc-mep.h (md_pcrel_from_section): Likewise.
2735 * config/tc-metag.h (md_pcrel_from_section): Likewise.
2736 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
2737 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
2738 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
2739 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
2740 * config/tc-mt.h (md_pcrel_from_section): Likewise.
2741 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
2742 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
2743 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
2744 * config/tc-rx.h (md_pcrel_from_section): Likewise.
2745 * config/tc-s390.h (md_pcrel_from_section): Likewise.
2746 * config/tc-sh.h (md_pcrel_from_section): Likewise.
2747 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
2748 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
2749 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
2750 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
2751 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
2752 md_apply_fix3): Delete prototypes.
2754 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
2756 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
2759 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
2761 * doc/c-z80.texi: Fix @xref warnings.
2763 2020-04-07 Lili Cui <lili.cui@intel.com>
2765 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
2766 (cpu_noarch): Likewise.
2767 * doc/c-i386.texi: Document TSXLDTRK.
2768 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
2769 * testsuite/gas/i386/tsxldtrk.d: Likewise.
2770 * testsuite/gas/i386/tsxldtrk.s: Likewise.
2771 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
2773 2020-04-02 Lili Cui <lili.cui@intel.com>
2775 * config/tc-i386.c (cpu_arch): Add .serialize.
2776 (cpu_noarch): Likewise.
2777 * doc/c-i386.texi: Document serialize.
2778 * testsuite/gas/i386/i386.exp: Run serialize tests
2779 * testsuite/gas/i386/serialize.d: Likewise.
2780 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
2781 * testsuite/gas/i386/serialize.s: Likewise.
2783 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2785 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
2786 * testsuite/gas/elf/section12b.d: Likewise.
2787 * testsuite/gas/elf/section16a.d: Likewise.
2788 * testsuite/gas/elf/section16b.d: Likewise.
2790 2020-04-02 Gunther Nikl <gnikl@justmail.de>
2792 * config/tc-m68k.c (m68k_ip): Fix range check for index register
2793 with a suppressed address register.
2795 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
2798 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
2799 * testsuite/gas/i386/localpic.s: Add a test for relocation
2800 against local absolute symbol.
2801 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
2802 * testsuite/gas/i386/localpic.d: Updated.
2803 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
2804 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
2806 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2809 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
2810 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
2811 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
2812 testsuite/gas/i386/x86-64-jump.d.
2813 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
2814 Incorporate changes to
2815 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
2816 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
2817 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
2818 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
2819 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
2821 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
2825 * dwarf2dbg.c: Do not include "bignum.h".
2827 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
2829 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
2830 * testsuite/gas/riscv/alias-csr.s: Likewise.
2831 * testsuite/gas/riscv/no-aliases-csr.d: Move this
2832 to priv-reg-pseudo-noalias.
2833 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
2834 * testsuite/gas/riscv/bad-csr.l: Likewise.
2835 * testsuite/gas/riscv/bad-csr.s: Likewise.
2836 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
2837 * testsuite/gas/riscv/satp.s: Likewise.
2838 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
2839 csr instruction, including alias-csr testcase.
2840 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
2841 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
2842 pseudo instruction with objdump -Mno-aliases.
2843 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
2844 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
2845 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
2846 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
2847 * testsuite/gas/riscv/priv-reg.s: Likewise.
2848 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2849 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
2850 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
2852 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
2854 * config/obj-coff.c (obj_coff_section): Set the bss flag on
2855 sections with the "b" attribute.
2857 2020-03-22 Alan Modra <amodra@gmail.com>
2859 * testsuite/gas/s12z/truncated.d: Update expected output.
2861 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
2864 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
2865 * doc/c-z80.texi: Update documentation.
2867 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
2872 Fix disassembling ED+A4/AC/B4/BC opcodes.
2873 Fix assembling lines containing colonless label and instruction
2874 with first operand inside parentheses.
2875 Fix registration of unsupported by target CPU registers.
2876 * config/tc-z80.c: See above.
2877 * config/tc-z80.h: See above.
2878 * testsuite/gas/z80/colonless.d: Update test.
2879 * testsuite/gas/z80/colonless.s: Likewise.
2880 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
2881 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
2882 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
2883 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
2884 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
2885 * testsuite/gas/z80/unsup_regs.s: Likewise.
2886 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
2887 * testsuite/gas/z80/z80.exp: Likewise.
2888 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
2889 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
2890 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
2892 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
2895 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
2896 (parse_operands): Handle new operand codes.
2897 (do_neon_dyadic_long): Make shape check accept the scalar variants.
2898 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
2899 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
2900 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
2901 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
2902 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
2903 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
2904 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
2906 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
2908 * NEWS: Mention x86 assembler options for CVE-2020-0551.
2910 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
2912 * testsuite/gas/i386/i386.exp: Run new tests.
2913 * testsuite/gas/i386/lfence-byte.d: New file.
2914 * testsuite/gas/i386/lfence-byte.e: Likewise.
2915 * testsuite/gas/i386/lfence-byte.s: Likewise.
2916 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
2917 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
2918 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
2919 * testsuite/gas/i386/lfence-indbr.e: Likewise.
2920 * testsuite/gas/i386/lfence-indbr.s: Likewise.
2921 * testsuite/gas/i386/lfence-load.d: Likewise.
2922 * testsuite/gas/i386/lfence-load.s: Likewise.
2923 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
2924 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
2925 * testsuite/gas/i386/lfence-ret.s: Likewise.
2926 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
2927 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
2928 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
2929 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
2930 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
2931 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
2932 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
2933 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
2934 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
2935 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
2936 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
2937 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
2939 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
2941 * config/tc-i386.c (lfence_after_load): New.
2942 (lfence_before_indirect_branch_kind): New.
2943 (lfence_before_indirect_branch): New.
2944 (lfence_before_ret_kind): New.
2945 (lfence_before_ret): New.
2948 (insert_lfence_after): New.
2949 (insert_lfence_before): New.
2950 (md_assemble): Call insert_lfence_before and insert_lfence_after.
2952 (OPTION_MLFENCE_AFTER_LOAD): New.
2953 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
2954 (OPTION_MLFENCE_BEFORE_RET): New.
2955 (md_longopts): Add -mlfence-after-load=,
2956 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2957 (md_parse_option): Handle -mlfence-after-load=,
2958 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2959 (md_show_usage): Display -mlfence-after-load=,
2960 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2961 (i386_cons_align): New.
2962 * config/tc-i386.h (i386_cons_align): New.
2963 (md_cons_align): New.
2964 * doc/c-i386.texi: Document -mlfence-after-load=,
2965 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
2967 2020-03-11 Nick Clifton <nickc@redhat.com>
2971 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
2972 (DWARF2_FILE_SIZE_NAME): Default to -1.
2973 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
2974 whichever is higher.
2975 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
2976 (NUM_MD5_BYTES): Define.
2977 (struct file entry): Add md5 field.
2978 (get_filenum): Delete and replace with...
2979 (get_basename): New function.
2980 (get_directory_table_entry): New function.
2981 (allocate_filenum): New function.
2982 (allocate_filename_to_slot): New function.
2983 (dwarf2_where): Use new functions.
2984 (dwarf2_directive_filename): Add support for extended .file
2986 (dwarf2_directive_loc): Allow the use of file number zero with
2988 (out_file_list): Rename to...
2989 (out_dir_and_file_list): Add DWARF 5 support.
2990 (out_debug_line): Emit extra values into the section header for
2992 (out_debug_str): Allow for file 0 to be used with DWARF 5.
2993 * doc/as.texi (.file): Update the description of this pseudo-op.
2994 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
2995 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
2996 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
2997 * NEWS: Mention the new feature.
2999 2020-03-10 Alan Modra <amodra@gmail.com>
3001 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
3002 to avoid signed overflow.
3003 * config/tc-mcore.c (md_assemble): Likewise.
3004 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
3005 * config/tc-nds32.c (SET_ADDEND): Likewise.
3006 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
3008 2020-03-09 Jan Beulich <jbeulich@suse.com>
3010 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
3011 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
3012 testsuite/gas/i386/avx-intel.d: Adjust expectations.
3014 2020-03-07 Alan Modra <amodra@gmail.com>
3016 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
3019 2020-03-06 Nick Clifton <nickc@redhat.com>
3022 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
3023 0 if the dwarf_level is 5 or more. Complain if a filename follows
3025 * testsuite/gas/elf/dwarf-5-file0.s: New test.
3026 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
3027 * testsuite/gas/elf/elf.exp: Run the new test.
3030 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
3031 * doc/as.texi: Fix another typo.
3033 2020-03-06 Nick Clifton <nickc@redhat.com>
3036 * as.c (dwarf_level): Define.
3037 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
3038 (parse_args): Add support for the new options.
3039 as.h (dwarf_level): Prototype.
3040 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
3042 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
3043 (DWARF2_LINE_VERSION): Remove definition.
3044 * doc/as.texi: Document the new options.
3046 2020-03-06 Nick Clifton <nickc@redhat.com>
3049 * as.c (main): Allow matching input and outputs when they are
3052 2020-03-06 Jan Beulich <jbeulich@suse.com>
3054 * config/tc-i386.c (match_mem_size): Generalize broadcast special
3056 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
3057 one of byte/word/dword/qword is set alongside a SIMD register in
3058 a template's operand.
3060 2020-03-06 Jan Beulich <jbeulich@suse.com>
3062 * config/tc-i386.c (match_template): Extend code in logic
3063 rejecting certain suffixes in certain modes to also cover mask
3064 register use and VecSIB. Drop special casing of broadcast. Skip
3065 immediates in the check.
3067 2020-03-06 Jan Beulich <jbeulich@suse.com>
3069 * config/tc-i386.c (match_template): Fold duplicate code in
3070 logic rejecting certain suffixes in certain modes. Drop
3073 2020-03-06 Jan Beulich <jbeulich@suse.com>
3075 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
3076 alongside !norex64 ones.
3077 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
3078 with both 32- and 64-bit GPR operands.
3079 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
3080 32- and 64-bit GPR operands.
3081 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
3082 testsuite/gas/i386/x86-64-avx512bw.d,
3083 testsuite/gas/i386/x86-64-avx512f-intel.d,
3084 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
3086 2020-03-06 Jan Beulich <jbeulich@suse.com>
3088 * config/tc-i386.c (md_assemble): Drop use of rex64.
3089 (process_suffix): For REX.W for 64-bit CRC32.
3091 2020-03-06 Jan Beulich <jbeulich@suse.com>
3093 * config/tc-i386.c (i386_addressing_mode): For 32-bit
3094 addressing for MPX insns without base/index.
3095 * testsuite/gas/i386/mpx-16bit.s,
3096 * testsuite/gas/i386/mpx-16bit.d: New.
3097 * testsuite/gas/i386/i386.exp: Run new test.
3099 2020-03-06 Jan Beulich <jbeulich@suse.com>
3101 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
3102 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
3103 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
3104 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
3105 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
3106 as well as a BSWAP one.
3107 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
3108 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
3109 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
3110 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
3111 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
3112 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
3113 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
3114 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
3115 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
3116 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
3117 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
3118 testsuite/gas/i386/vmx.d: Adjust expectations.
3120 2020-03-06 Jan Beulich <jbeulich@suse.com>
3122 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
3123 from having their operands swapped.
3124 * testsuite/gas/i386/waitpkg.s,
3125 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
3126 3-operand cases as well as testing of 16-bit code generation.
3127 * testsuite/gas/i386/waitpkg.d,
3128 testsuite/gas/i386/waitpkg-intel.d,
3129 testsuite/gas/i386/x86-64-waitpkg.d,
3130 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
3132 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
3134 * config/tc-riscv.c (percent_op_utype): Support the modifier
3136 * doc/c-riscv.texi: Add documentation.
3137 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
3138 modifier %got_pcrel_hi.
3139 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
3140 * testsuite/gas/riscv/relax-reloc.d: Likewise.
3141 * testsuite/gas/riscv/relax-reloc.s: Likewise.
3143 * doc/c-riscv.texi (relocation modifiers): Add documentation.
3144 (RISC-V-Formats): Update the section name from "Instruction Formats"
3145 to "RISC-V Instruction Formats".
3147 2020-03-04 Alexandre Oliva <oliva@adacore.com>
3149 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
3150 detected in a section which does not have at least 4 byte
3152 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
3153 * testsuite/gas/arm/ldr-t.s: Likewise.
3154 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
3155 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
3156 disassembly, ignoring any NOPs that may have been inserted because
3157 of section alignment.
3158 * testsuite/gas/arm/ldr-t.d: Likewise.
3160 2020-03-04 Jan Beulich <jbeulich@suse.com>
3162 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
3163 * doc/c-i386.texi: Mention sev_es.
3164 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
3165 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
3167 * testsuite/gas/i386/arch-13-znver1.d,
3168 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
3170 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3172 * config/tc-i386.c (match_template): Replace ignoresize and
3173 defaultsize with mnemonicsize.
3174 (process_suffix): Likewise.
3176 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3179 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
3180 instruction LD IY,(HL).
3181 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
3182 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
3183 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
3184 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
3186 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
3189 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
3190 x86-64-default-suffix-avx.
3191 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
3192 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
3193 * testsuite/gas/i386/noreg64.d: Updated.
3194 * testsuite/gas/i386/noreg64.l: Likewise.
3195 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
3196 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
3197 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
3199 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3202 * config/tc-z80.c (contains_register): Prevent an illegal memory
3203 access when checking an expression for a register name.
3205 2020-03-03 Alan Modra <amodra@gmail.com>
3207 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
3210 2020-03-02 Alan Modra <amodra@gmail.com>
3212 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
3213 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
3215 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
3216 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
3217 (s3_s_score_lcomm): Likewise.
3218 * config/tc-score7.c: Similarly.
3219 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
3221 2020-02-28 YunQiang Su <syq@debian.org>
3224 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
3225 to handle multi-labels.
3226 (has_label_name): New.
3228 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
3230 * config/tc-arm.c (enum pred_instruction_type): Remove
3231 NEUTRAL_IT_NO_VPT_INSN predication type.
3232 (cxn_handle_predication): Modify to require condition suffixes.
3233 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
3234 * testsuite/gas/arm/cde-scalar.s: Update test.
3235 * testsuite/gas/arm/cde-warnings.l: Update test.
3236 * testsuite/gas/arm/cde-warnings.s: Update test.
3238 2020-02-26 Alan Modra <amodra@gmail.com>
3240 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
3241 N_() on empty string.
3243 2020-02-26 Alan Modra <amodra@gmail.com>
3245 * read.c (read_a_source_file): Call strncpy with length one
3246 less than size of original_case_string.
3248 2020-02-26 Alan Modra <amodra@gmail.com>
3250 * config/obj-elf.c: Indent labels correctly.
3251 * config/obj-macho.c: Likewise.
3252 * config/tc-aarch64.c: Likewise.
3253 * config/tc-alpha.c: Likewise.
3254 * config/tc-arm.c: Likewise.
3255 * config/tc-cr16.c: Likewise.
3256 * config/tc-crx.c: Likewise.
3257 * config/tc-frv.c: Likewise.
3258 * config/tc-i386-intel.c: Likewise.
3259 * config/tc-i386.c: Likewise.
3260 * config/tc-ia64.c: Likewise.
3261 * config/tc-mn10200.c: Likewise.
3262 * config/tc-mn10300.c: Likewise.
3263 * config/tc-nds32.c: Likewise.
3264 * config/tc-riscv.c: Likewise.
3265 * config/tc-s12z.c: Likewise.
3266 * config/tc-xtensa.c: Likewise.
3267 * config/tc-z80.c: Likewise.
3269 * symbols.c: Likewise.
3270 * write.c: Likewise.
3272 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
3274 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
3275 we are assembling instruction with CSR. Call riscv_csr_read_only_check
3276 after parsing all arguments.
3277 (enum csr_insn_type): New enum is used to classify the CSR instruction.
3278 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
3279 are used to check if we write a read-only CSR by the CSR instruction.
3280 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
3281 all CSR for the read-only CSR checking.
3282 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
3283 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
3284 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
3285 all CSR instructions for the read-only CSR checking.
3286 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
3287 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
3289 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
3290 (riscv_opts): Initialize it.
3291 (reg_lookup_internal): Check the `riscv_opts.csr_check`
3292 before doing the CSR checking.
3293 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
3294 (md_longopts): Add mcsr-check and mno-csr-check.
3295 (md_parse_option): Handle new enum option values.
3296 (s_riscv_option): Handle new long options.
3297 * doc/c-riscv.texi: Add description for the new .option and assembler
3299 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
3301 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
3303 * config/tc-riscv.c (csr_extra_hash): New.
3304 (enum riscv_csr_class): New enum. Used to decide
3305 whether or not this CSR is legal in the current ISA string.
3306 (struct riscv_csr_extra): New structure to hold all extra information
3308 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
3309 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
3310 Call hash_reg_name to insert CSR address into reg_names_hash.
3311 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
3312 Decide whether the CSR is valid according to the csr_extra_hash.
3313 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
3314 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
3315 not a boolean. This is same as riscv_init_csr_hash, so keep the
3317 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
3318 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
3319 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
3320 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
3321 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
3322 f-ext CSR are not allowed.
3323 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
3324 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
3325 source file is `priv-reg.s`, and the ISA is rv64if, so the
3326 rv32-only CSR are not allowed.
3327 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
3329 2020-02-21 Alan Modra <amodra@gmail.com>
3331 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
3332 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
3334 2020-02-21 Alan Modra <amodra@gmail.com>
3337 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
3338 on section size adjustment, instead perform another write if
3339 exec header size is larger than section size.
3341 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3343 * doc/c-riscv.texi: Add the doc entries for -march-attr/
3344 -mno-arch-attr command line options.
3346 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
3348 * testsuite/gas/riscv/c-add-addi.d: New testcase.
3349 * testsuite/gas/riscv/c-add-addi.s: Likewise.
3351 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3354 * config/tc-z80.c (md_parse_option): Do not use an underscore
3355 prefix for local labels in SDCC compatability mode.
3356 (z80_start_line_hook): Remove SDCC dollar label support.
3357 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
3358 * testsuite/gas/z80/sdcc.s: Likewise.
3360 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
3363 * config/tc-z80.c: Add -march option.
3364 * doc/as.texi: Update Z80 documentation.
3365 * doc/c-z80.texi: Likewise.
3366 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
3367 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
3368 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
3369 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
3370 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
3371 * testsuite/gas/z80/gbz80_all.d: Likewise.
3372 * testsuite/gas/z80/r800_extra.d: Likewise.
3373 * testsuite/gas/z80/r800_ii8.d: Likewise.
3374 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
3375 * testsuite/gas/z80/sdcc.d: Likewise.
3376 * testsuite/gas/z80/z180.d: Likewise.
3377 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
3378 * testsuite/gas/z80/z80_doc.d: Likewise.
3379 * testsuite/gas/z80/z80_ii8.d: Likewise.
3380 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
3381 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
3382 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
3383 * testsuite/gas/z80/z80_sli.d: Likewise.
3384 * testsuite/gas/z80/z80n_all.d: Likewise.
3385 * testsuite/gas/z80/z80n_reloc.d: Likewise.
3387 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
3389 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
3390 with GNU_PROPERTY_X86_FEATURE_2_MMX.
3391 * testsuite/gas/i386/i386.exp: Run property-3 and
3393 * testsuite/gas/i386/property-3.d: New file.
3394 * testsuite/gas/i386/property-3.s: Likewise.
3395 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
3397 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
3399 * config/tc-i386.c (cpu_arch): Add .popcnt.
3400 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
3401 Add a tab before @samp{.sse4a}.
3403 2020-02-17 Jan Beulich <jbeulich@suse.com>
3405 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
3406 for AddrPrefixOpReg templates. Combine the two pieces of
3407 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
3410 2020-02-17 Jan Beulich <jbeulich@suse.com>
3413 * config/tc-i386.c (md_assemble): Also suppress operand
3414 swapping for MONITOR{,X} and MWAIT{,X}.
3415 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
3416 Add Intel syntax monitor/mwait tests.
3417 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
3418 Adjust expectations.
3419 *testsuite/gas/i386/sse3-intel.d,
3420 testsuite/gas/i386/x86-64-sse3-intel.d: New.
3421 * testsuite/gas/i386/i386.exp: Run new tests.
3423 2020-02-17 Jan Beulich <jbeulich@suse.com>
3426 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
3427 [XYZ]MMWord memory operand ambiguity recognition logic (largely
3429 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
3431 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
3432 * testsuite/gas/i386/avx512dq-inval.l,
3433 testsuite/gas/i386/inval-avx.l,
3434 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
3435 * testsuite/gas/i386/avx512vl-ambig.s,
3436 testsuite/gas/i386/avx512vl-ambig.l: New.
3437 * testsuite/gas/i386/i386.exp: Run new test.
3439 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
3441 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
3443 * doc/c-i386.texi: Document sse4a and nosse4a.
3445 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
3447 * doc/c-i386.texi: Remove the old movsx and movzx documentation
3450 2020-02-14 Jan Beulich <jbeulich@suse.com>
3453 * config/tc-i386.c (md_assemble): Move movsx/movzx special
3455 (process_suffix): ... here. Consider just the first operand
3457 (check_long_reg): Drop opcode 0x63 special case again.
3458 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
3459 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
3460 Move ambiguous operand size tests ...
3461 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
3462 testsuite/gas/i386/noreg64.s: ... here.
3463 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
3464 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
3465 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
3466 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
3467 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
3468 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
3469 testsuite/gas/i386/x86-64-movsxd.d,
3470 testsuite/gas/i386/x86-64-movsxd-intel.d,
3471 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
3472 Adjust expectations.
3473 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
3474 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
3475 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
3476 * testsuite/gas/i386/i386.exp: Run new tests.
3478 2020-02-14 Jan Beulich <jbeulich@suse.com>
3480 * config/tc-i386.c (process_operands): Also skip segment
3481 override prefix emission if it matches an already present one.
3482 * testsuite/gas/i386/prefix32.s: Add double segment override
3484 * testsuite/gas/i386/prefix32.l: Adjust expectations.
3486 2020-02-14 Jan Beulich <jbeulich@suse.com>
3488 * config/tc-i386.c (process_operands): Drop ineffectual segment
3489 overrides when optimizing.
3490 * testsuite/gas/i386/lea-optimize.d: New.
3491 * testsuite/gas/i386/i386.exp: Run new test.
3493 2020-02-14 Jan Beulich <jbeulich@suse.com>
3495 * config/tc-i386.c (process_operands): Also check insn prefix
3496 for ineffectual segment override warning. Don't cover possible
3497 VEX/EVEX encoded insns there.
3498 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
3499 testsuite/gas/i386/lea.e: New.
3500 * testsuite/gas/i386/i386.exp: Run new test.
3502 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
3505 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
3508 2020-02-13 Fangrui Song <maskray@google.com>
3509 H.J. Lu <hongjiu.lu@intel.com>
3512 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
3513 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
3514 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
3515 * testsuite/gas/i386/relax-5.d: New file.
3516 * testsuite/gas/i386/relax-5.s: Likewise.
3517 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
3518 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
3520 2020-02-13 Jan Beulich <jbeulich@suse.com>
3522 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
3525 2020-02-12 Jan Beulich <jbeulich@suse.com>
3527 * config/tc-i386.c (avx512): New (at file scope), moved from
3528 (check_VecOperands): ... here.
3529 (process_suffix): Add [XYZ]MMword operand size handling.
3530 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
3531 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
3533 * testsuite/gas/i386/avx512dq-inval.l,
3534 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
3536 2020-02-12 Jan Beulich <jbeulich@suse.com>
3539 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
3541 * config/tc-i386-intel.c (i386_intel_operand): Also handle
3542 CALL/JMP in O_tbyte_ptr case.
3543 * doc/c-i386.texi: Mention far call and full pointer load ISA
3545 * testsuite/gas/i386/x86-64-branch-3.s,
3546 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
3547 * testsuite/gas/i386/x86-64-branch-3.d,
3548 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
3549 * testsuite/gas/i386/x86-64-branch-5.l,
3550 testsuite/gas/i386/x86-64-branch-5.s: New.
3551 * testsuite/gas/i386/i386.exp: Run new test.
3553 2020-02-12 Jan Beulich <jbeulich@suse.com>
3556 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
3557 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
3558 64-bit-only warning.
3559 (check_word_reg): Consistently error on mismatching register
3561 * testsuite/gas/i386/general.s: Replace dword GPR with word one
3562 for movw. Replace suffix / GPR for orb.
3563 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
3564 byte GPRs as well as ones for inb/outb with a word accumulator.
3565 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
3566 testsuite/gas/i386/inval.l: Adjust expectations.
3568 2020-02-12 Jan Beulich <jbeulich@suse.com>
3570 * config/tc-i386.c (operand_type_register_match): Also fall
3571 through initial two if()-s when the template allows for a GPR
3572 operand. Adjust comment.
3574 2020-02-11 Jan Beulich <jbeulich@suse.com>
3576 (struct _i386_insn): New field "short_form".
3577 (optimize_encoding): Drop setting of shortform field.
3578 (process_suffix): Set i.short_form. Replace shortform use.
3579 (process_operands): Replace shortform use.
3581 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
3583 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
3584 loop initial declaration.
3586 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
3588 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
3589 instructions that can have 5 arguments.
3590 (enum operand_parse_code): Add new operands.
3591 (parse_operands): Account for new operands.
3593 (enum neon_shape_el): Introduce P suffixes for coprocessor.
3594 (neon_select_shape): Account for P suffix.
3595 (LOW1): Move macro to global position.
3596 (HI4): Move macro to global position.
3597 (vcx_assign_vec_d): New.
3598 (vcx_assign_vec_m): New.
3599 (vcx_assign_vec_n): New.
3600 (enum vcx_reg_type): New.
3601 (vcx_get_reg_type): New.
3602 (vcx_size_pos): New.
3604 (vcx_handle_shape): New.
3605 (vcx_ensure_register_in_range): New.
3606 (vcx_handle_register_arguments): New.
3607 (vcx_handle_insn_block): New.
3608 (vcx_handle_common_checks): New.
3612 * testsuite/gas/arm/cde-missing-fp.d: New test.
3613 * testsuite/gas/arm/cde-missing-fp.l: New test.
3614 * testsuite/gas/arm/cde-missing-mve.d: New test.
3615 * testsuite/gas/arm/cde-missing-mve.l: New test.
3616 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
3617 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
3618 * testsuite/gas/arm/cde-mve.s: New test.
3619 * testsuite/gas/arm/cde-warnings.l:
3620 * testsuite/gas/arm/cde-warnings.s:
3621 * testsuite/gas/arm/cde.d:
3622 * testsuite/gas/arm/cde.s:
3624 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
3625 Matthew Malcomson <matthew.malcomson@arm.com>
3627 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
3628 CDE coprocessor that can be enabled.
3629 (enum pred_instruction_type): New pred type.
3630 (BAD_NO_VPT): New error message.
3631 (BAD_CDE): New error message.
3632 (BAD_CDE_COPROC): New error message.
3633 (enum operand_parse_code): Add new immediate operands.
3634 (parse_operands): Account for new immediate operands.
3635 (check_cde_operand): New.
3636 (cde_coproc_enabled): New.
3637 (cde_coproc_pos): New.
3638 (cde_handle_coproc): New.
3639 (cxn_handle_predication): New.
3640 (do_custom_instruction_1): New.
3641 (do_custom_instruction_2): New.
3642 (do_custom_instruction_3): New.
3655 (handle_pred_state): Define new IT block behaviour.
3656 (insns): Add newn CX*{,d}{,a} instructions.
3657 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
3658 Define new cdecp extension strings.
3659 * doc/c-arm.texi: Document new cdecp extension arguments.
3660 * testsuite/gas/arm/cde-scalar.d: New test.
3661 * testsuite/gas/arm/cde-scalar.s: New test.
3662 * testsuite/gas/arm/cde-warnings.d: New test.
3663 * testsuite/gas/arm/cde-warnings.l: New test.
3664 * testsuite/gas/arm/cde-warnings.s: New test.
3665 * testsuite/gas/arm/cde.d: New test.
3666 * testsuite/gas/arm/cde.s: New test.
3668 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
3671 * config/tc-i386.c (intel64): Renamed to ...
3673 (match_template): Accept Intel64 only instruction by default.
3674 (i386_displacement): Updated.
3675 (md_parse_option): Updated.
3676 * c-i386.texi: Update -mamd64/-mintel64 documentation.
3677 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
3678 -mamd64 to x86-64-sysenter-amd.
3679 * testsuite/gas/i386/x86-64-sysenter.d: New file.
3681 2020-02-10 Alan Modra <amodra@gmail.com>
3683 * config/obj-elf.c (obj_elf_change_section): Error for section
3684 type, attr or entsize changes in assembly.
3685 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
3686 * testsuite/gas/elf/section5.l: Update.
3688 2020-02-10 Alan Modra <amodra@gmail.com>
3690 * output-file.c (output_file_close): Do a normal close when
3691 flag_always_generate_output.
3692 * write.c (write_object_file): Don't stop output when
3693 flag_always_generate_output.
3695 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
3698 * config/tc-z80.c: Add -gbz80 command line option to generate code
3699 for the GameBoy Z80. Add support for generating DWARF.
3700 * config/tc-z80.h: Add support for DWARF debug information
3702 * doc/c-z80.texi: Document new command line option.
3703 * testsuite/gas/z80/gbz80_all.d: New file.
3704 * testsuite/gas/z80/gbz80_all.s: New file.
3705 * testsuite/gas/z80/z80.exp: Run the new tests.
3706 * testsuite/gas/z80/z80n_all.d: New file.
3707 * testsuite/gas/z80/z80n_all.s: New file.
3708 * testsuite/gas/z80/z80n_reloc.d: New file.
3710 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
3713 * config/obj-elf.c (get_section): Also check
3714 linked_to_symbol_name.
3715 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
3716 (obj_elf_parse_section_letters): Handle the 'o' flag.
3717 (build_group_lists): Renamed to ...
3718 (build_additional_section_info): This. Set elf_linked_to_section
3719 from map_head.linked_to_symbol_name.
3720 (elf_adjust_symtab): Updated.
3721 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
3722 * doc/as.texi: Document the 'o' flag.
3723 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
3724 * testsuite/gas/elf/section18.d: New file.
3725 * testsuite/gas/elf/section18.s: Likewise.
3726 * testsuite/gas/elf/section19.d: Likewise.
3727 * testsuite/gas/elf/section19.s: Likewise.
3728 * testsuite/gas/elf/section20.d: Likewise.
3729 * testsuite/gas/elf/section20.s: Likewise.
3730 * testsuite/gas/elf/section21.d: Likewise.
3731 * testsuite/gas/elf/section21.l: Likewise.
3732 * testsuite/gas/elf/section21.s: Likewise.
3734 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
3736 * NEWS: Mention x86 assembler options to align branches for
3739 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
3741 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
3742 only for ELF targets.
3743 * testsuite/gas/i386/unique.d: Don't xfail.
3744 * testsuite/gas/i386/x86-64-unique.d: Likewise.
3746 2020-02-06 Alan Modra <amodra@gmail.com>
3748 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
3749 * testsuite/gas/i386/x86-64-unique.d: Likewise.
3751 2020-02-06 Alan Modra <amodra@gmail.com>
3753 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
3754 xfail, and rename test.
3755 * testsuite/gas/elf/section12b.d: Likewise.
3756 * testsuite/gas/elf/section16a.d: Likewise.
3757 * testsuite/gas/elf/section16b.d: Likewise.
3759 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
3762 * config/obj-elf.c (section_match): Removed.
3763 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
3765 (obj_elf_change_section): Replace info and group_name arguments
3766 with match_p. Also update the section ID and flags from match_p.
3767 (obj_elf_section): Handle "unique,N". Update call to
3768 obj_elf_change_section.
3769 * config/obj-elf.h (elf_section_match): New.
3770 (obj_elf_change_section): Updated.
3771 * config/tc-arm.c (start_unwind_section): Update call to
3772 obj_elf_change_section.
3773 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
3774 * config/tc-microblaze.c (microblaze_s_data): Likewise.
3775 (microblaze_s_sdata): Likewise.
3776 (microblaze_s_rdata): Likewise.
3777 (microblaze_s_bss): Likewise.
3778 * config/tc-mips.c (s_change_section): Likewise.
3779 * config/tc-msp430.c (msp430_profiler): Likewise.
3780 * config/tc-rx.c (parse_rx_section): Likewise.
3781 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
3782 * doc/as.texi: Document "unique,N" in .section directive.
3783 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
3784 * testsuite/gas/elf/section15.d: New file.
3785 * testsuite/gas/elf/section15.s: Likewise.
3786 * testsuite/gas/elf/section16.s: Likewise.
3787 * testsuite/gas/elf/section16a.d: Likewise.
3788 * testsuite/gas/elf/section16b.d: Likewise.
3789 * testsuite/gas/elf/section17.d: Likewise.
3790 * testsuite/gas/elf/section17.l: Likewise.
3791 * testsuite/gas/elf/section17.s: Likewise.
3792 * testsuite/gas/i386/unique.d: Likewise.
3793 * testsuite/gas/i386/unique.s: Likewise.
3794 * testsuite/gas/i386/x86-64-unique.d: Likewise.
3795 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
3797 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
3799 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
3801 2020-02-01 Anthony Green <green@moxielogic.com>
3803 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
3805 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
3807 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
3810 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
3813 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
3814 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
3816 * testsuite/gas/arm/mve_dsp.d: New test.
3818 2020-01-31 Nick Clifton <nickc@redhat.com>
3820 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
3821 rather than BFD_RELOC_NONE.
3823 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
3825 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
3826 to support VLDMIA instruction for MVE.
3827 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
3828 instruction for MVE.
3829 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
3830 instruction for MVE.
3831 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
3832 instruction for MVE.
3833 * testsuite/gas/arm/mve-ldst.d: New test.
3834 * testsuite/gas/arm/mve-ldst.s: Likewise.
3836 2020-01-31 Nick Clifton <nickc@redhat.com>
3838 * po/fr.po: Updated French translation.
3839 * po/ru.po: Updated Russian translation.
3841 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
3843 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
3845 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
3846 * testsuite/gas/aarch64/sve-movprfx_28.d,
3847 * testsuite/gas/aarch64/sve-movprfx_28.l,
3848 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
3850 2020-01-30 Jan Beulich <jbeulich@suse.com>
3852 * config/tc-i386.c (output_disp): Tighten base_opcode check.
3853 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
3854 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
3855 Adjust expectations.
3857 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
3859 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
3860 * testsuite/gas/bpf/alu-be.d: Likewise.
3861 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
3862 * testsuite/gas/bpf/alu32-be.d: Likewise.
3864 2020-01-30 Jan Beulich <jbeulich@suse.com>
3866 * testsuite/gas/i386/x86-64-branch-2.s,
3867 testsuite/gas/i386/x86-64-branch-4.s,
3868 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
3869 * testsuite/gas/i386/ilp32/x86-64-branch.d,
3870 testsuite/gas/i386/x86-64-branch-2.d,
3871 testsuite/gas/i386/x86-64-branch-4.l,
3872 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
3874 2020-01-30 Jan Beulich <jbeulich@suse.com>
3876 * config/tc-i386.c (process_suffix): .
3877 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
3878 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
3880 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
3882 testsuite/gas/i386/x86_64.s: Add RETF cases.
3883 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
3884 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
3885 testsuite/gas/i386/x86-64-opcode.d,
3886 testsuite/gas/i386/x86-64-suffix-intel.d,
3887 testsuite/gas/i386/x86-64-suffix.d,
3888 testsuite/gas/i386/x86_64-intel.d
3889 testsuite/gas/i386/x86_64.d: Adjust expectations.
3890 * testsuite/gas/i386/x86-64-suffix.e,
3891 testsuite/gas/i386/x86_64.e: New.
3893 2020-01-30 Jan Beulich <jbeulich@suse.com>
3895 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
3898 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
3901 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
3903 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
3904 differences. Document movslq and movsxd.
3905 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
3906 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
3907 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
3908 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
3909 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
3910 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
3911 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
3912 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
3913 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
3914 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
3915 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
3917 2020-01-27 Alan Modra <amodra@gmail.com>
3919 * testsuite/gas/all/gas.exp: Replace case statements with switch
3921 * testsuite/gas/elf/elf.exp: Likewise.
3922 * testsuite/gas/macros/macros.exp: Likewise.
3923 * testsuite/lib/gas-defs.exp: Likewise.
3925 2020-01-27 Tamar Christina <tamar.christina@arm.com>
3928 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
3929 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
3931 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
3933 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
3934 s exts must be known, so rename *ok* to *fail*.
3935 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
3936 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
3937 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
3939 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
3940 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
3942 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
3945 * config/tc-i386.c (check_long_reg): Always disallow double word
3946 suffix in mnemonic with word general register.
3947 * testsuite/gas/i386/general.s: Replace word general register
3948 with double word general register for movl.
3949 * testsuite/gas/i386/inval.s: Add tests for movl with word general
3951 * testsuite/gas/i386/general.l: Updated.
3952 * testsuite/gas/i386/inval.l: Likewise.
3954 2020-01-22 Alan Modra <amodra@gmail.com>
3956 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
3957 __tls_get_addr_desc and __tls_get_addr_opt.
3959 2020-01-21 Jan Beulich <jbeulich@suse.com>
3961 * testsuite/gas/i386/inval-crc32.s,
3962 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
3963 * testsuite/gas/i386/inval-crc32.l,
3964 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
3966 2020-01-21 Jan Beulich <jbeulich@suse.com>
3968 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
3969 generic code path. Deal with No_lSuf being set in a template.
3970 * testsuite/gas/i386/inval-crc32.l,
3971 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
3972 instead of error(s) when operand size is ambiguous.
3973 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
3974 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
3975 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
3976 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
3977 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
3978 Adjust expectations.
3980 2020-01-21 Jan Beulich <jbeulich@suse.com>
3982 * config/tc-i386.c (process_suffix): Drop SYSRET special case
3983 and an intel_syntax check. Re-write lack-of-suffix processing
3985 * doc/c-i386.texi: Document operand size defaults for suffix-
3986 less AT&T syntax insns.
3987 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
3988 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
3989 testsuite/gas/i386/x86-64-avx-scalar.s,
3990 testsuite/gas/i386/x86-64-avx.s,
3991 testsuite/gas/i386/x86-64-bundle.s,
3992 testsuite/gas/i386/x86-64-intel64.s,
3993 testsuite/gas/i386/x86-64-lock-1.s,
3994 testsuite/gas/i386/x86-64-opcode.s,
3995 testsuite/gas/i386/x86-64-sse2avx.s,
3996 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
3997 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
3998 testsuite/gas/i386/x86-64-nops.s,
3999 testsuite/gas/i386/x86-64-ptwrite.s,
4000 testsuite/gas/i386/x86-64-simd.s,
4001 testsuite/gas/i386/x86-64-sse-noavx.s,
4002 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
4004 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
4005 testsuite/gas/i386/noreg64.s: Add further tests.
4006 * testsuite/gas/i386/ilp32/x86-64-nops.d,
4007 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
4008 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
4009 testsuite/gas/i386/sse-noavx.d,
4010 testsuite/gas/i386/x86-64-intel64.d,
4011 testsuite/gas/i386/x86-64-nops.d,
4012 testsuite/gas/i386/x86-64-opcode.d,
4013 testsuite/gas/i386/x86-64-ptwrite-intel.d,
4014 testsuite/gas/i386/x86-64-ptwrite.d,
4015 testsuite/gas/i386/x86-64-simd-intel.d,
4016 testsuite/gas/i386/x86-64-simd-suffix.d,
4017 testsuite/gas/i386/x86-64-simd.d,
4018 testsuite/gas/i386/x86-64-sse-noavx.d
4019 testsuite/gas/i386/x86-64-suffix.d,
4020 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
4021 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
4022 testsuite/gas/i386/noreg64.l: New.
4023 * testsuite/gas/i386/i386.exp: Run new tests.
4025 2020-01-21 Jan Beulich <jbeulich@suse.com>
4027 * testsuite/gas/i386/avx512_bf16_vl.s,
4028 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
4029 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
4030 broadcast forms of VCVTNEPS2BF16.
4031 * testsuite/gas/i386/avx512_bf16_vl.d,
4032 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
4034 2020-01-20 Nick Clifton <nickc@redhat.com>
4036 * po/uk.po: Updated Ukranian translation.
4038 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
4041 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
4042 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
4044 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
4045 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
4046 R_X86_64_GOTPC32_TLSDESC relocation.
4048 2020-01-18 Nick Clifton <nickc@redhat.com>
4050 * configure: Regenerate.
4051 * po/gas.pot: Regenerate.
4053 2020-01-18 Nick Clifton <nickc@redhat.com>
4055 Binutils 2.34 branch created.
4057 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
4059 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
4060 with vex_encoding_vex.
4061 (parse_insn): Likewise.
4062 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
4063 and {vex3} documentation.
4064 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
4066 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
4068 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
4071 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
4072 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
4073 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
4074 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
4075 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
4076 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
4078 2020-01-16 Jan Beulich <jbeulich@suse.com>
4080 * config/tc-i386.c (match_template): Drop found_cpu_match local
4083 2020-01-16 Jan Beulich <jbeulich@suse.com>
4085 * testsuite/gas/i386/avx512dq-inval.l,
4086 testsuite/gas/i386/avx512dq-inval.s: New.
4087 * testsuite/gas/i386/i386.exp: Run new test.
4089 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
4091 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
4092 relocations when the target is 430X, except when extracting part of an
4094 (msp430_srcoperand): Adjust comment.
4095 Initialize the expp member of the msp430_operand_s struct as
4097 (msp430_dstoperand): Likewise.
4098 * testsuite/gas/msp430/msp430.exp: Run new test.
4099 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
4100 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
4102 2020-01-15 Alan Modra <amodra@gmail.com>
4104 * configure.tgt: Add sparc-*-freebsd case.
4106 2020-01-14 Lili Cui <lili.cui@intel.com>
4108 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
4109 * testsuite/gas/i386/align-branch-1b.d: Likewise.
4110 * testsuite/gas/i386/align-branch-1c.d: Likewise.
4111 * testsuite/gas/i386/align-branch-1d.d: Likewise.
4112 * testsuite/gas/i386/align-branch-1e.d: Likewise.
4113 * testsuite/gas/i386/align-branch-1f.d: Likewise.
4114 * testsuite/gas/i386/align-branch-1g.d: Likewise.
4115 * testsuite/gas/i386/align-branch-1h.d: Likewise.
4116 * testsuite/gas/i386/align-branch-1i.d: Likewise.
4117 * testsuite/gas/i386/align-branch-5.d: Likewise.
4118 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
4119 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
4120 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
4121 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
4122 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
4123 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
4124 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
4125 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
4126 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
4127 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
4128 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
4129 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
4131 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
4134 * config/tc-z80.c: Add support for half precision, single
4135 precision and double precision floating point values.
4136 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
4137 * doc/as.texi: Add new z80 command line options.
4138 * doc/c-z80.texi: Document new z80 command line options.
4139 * testsuite/gas/z80/ez80_pref_dis.s: New test.
4140 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
4141 * testsuite/gas/z80/z80.exp: Run the new test.
4142 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
4143 * testsuite/gas/z80/fp_zeda32.d: Likewise.
4144 * testsuite/gas/z80/strings.d: Update expected output.
4146 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
4148 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
4151 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
4153 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
4155 * config/tc-arc.h: Add header if/defs.
4156 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
4158 2020-01-13 Alan Modra <amodra@gmail.com>
4160 * testsuite/gas/wasm32/allinsn.d: Update expected output.
4162 2020-01-13 Alan Modra <amodra@gmail.com>
4164 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
4167 2020-01-10 Alan Modra <amodra@gmail.com>
4169 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
4170 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
4172 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4175 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
4177 (emit_ld_r_r): Likewise.
4178 (emit_ld_rr_m): Likewise.
4179 (emit_ld_rr_nn): Likewise.
4181 2020-01-09 Jan Beulich <jbeulich@suse.com>
4183 * config/tc-i386.c (optimize_encoding): Add
4184 is_any_vex_encoding() invocations. Drop respective
4185 i.tm.extension_opcode == None checks.
4187 2020-01-09 Jan Beulich <jbeulich@suse.com>
4189 * config/tc-i386.c (md_assemble): Check RegRex is clear during
4190 REX transformations. Correct comment indentation.
4192 2020-01-09 Jan Beulich <jbeulich@suse.com>
4194 * config/tc-i386.c (optimize_encoding): Generalize register
4195 transformation for TEST optimization.
4197 2020-01-09 Jan Beulich <jbeulich@suse.com>
4199 * testsuite/gas/i386/x86-64-sysenter-amd.s,
4200 testsuite/gas/i386/x86-64-sysenter-amd.d,
4201 testsuite/gas/i386/x86-64-sysenter-amd.l,
4202 testsuite/gas/i386/x86-64-sysenter-intel.d,
4203 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
4204 * testsuite/gas/i386/i386.exp: Run new tests.
4206 2020-01-08 Nick Clifton <nickc@redhat.com>
4209 * doc/as.texi (Align): Document the fact that all arguments can be
4212 (P2align): Likewise.
4214 2020-01-08 Nick Clifton <nickc@redhat.com>
4217 * config/obj-elf.c (obj_elf_section): Fail if the section name is
4218 already defined as a different symbol type.
4219 * testsuite/gas/elf/pr14891.s: New test source file.
4220 * testsuite/gas/elf/pr14891.d: New test driver.
4221 * testsuite/gas/elf/pr14891.s: New test expected error output.
4222 * testsuite/gas/elf/elf.exp: Run the new test.
4224 2020-01-08 Alan Modra <amodra@gmail.com>
4226 * config/tc-z8k.c (md_begin): Make idx unsigned.
4227 (get_specific): Likewise for this_index.
4229 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
4231 * onfig/tc-arc.c (parse_reloc_symbol): New function.
4232 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
4233 (md_operand): Set X_md to absent.
4234 (arc_parse_name): Check for X_md.
4236 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
4239 * as.h (TC_STRING_ESCAPES): Provide a default definition.
4240 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
4242 * read.c (next_char_of_string): Likewise.
4243 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
4244 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
4246 2020-01-03 Nick Clifton <nickc@redhat.com>
4248 * po/sv.po: Updated Swedish translation.
4250 2020-01-03 Jan Beulich <jbeulich@suse.com>
4252 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
4253 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4255 2020-01-03 Jan Beulich <jbeulich@suse.com>
4257 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
4258 by-element usdot. Add 64-bit form tests for by-element sudot.
4259 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
4261 2020-01-03 Jan Beulich <jbeulich@suse.com>
4263 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
4264 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
4266 2020-01-03 Jan Beulich <jbeulich@suse.com>
4268 * testsuite/gas/aarch64/f64mm.d,
4269 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
4271 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
4273 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
4274 support for assembler code generated by SDCC. Add new relocation
4275 types. Add z80-elf target support.
4276 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
4277 labels. Local labels starts from ".L".
4278 * NEWS: Mention the new support.
4279 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
4280 * testsuite/gas/all/fwdexp.s: Likewise.
4281 * testsuite/gas/all/cond.l: Likewise.
4282 * testsuite/gas/all/cond.s: Likewise.
4283 * testsuite/gas/all/fwdexp.d: Likewise.
4284 * testsuite/gas/all/fwdexp.s: Likewise.
4285 * testsuite/gas/elf/section2.e-mips: Likewise.
4286 * testsuite/gas/elf/section2.l: Likewise.
4287 * testsuite/gas/elf/section2.s: Likewise.
4288 * testsuite/gas/macros/app1.d: Likewise.
4289 * testsuite/gas/macros/app1.s: Likewise.
4290 * testsuite/gas/macros/app2.d: Likewise.
4291 * testsuite/gas/macros/app2.s: Likewise.
4292 * testsuite/gas/macros/app3.d: Likewise.
4293 * testsuite/gas/macros/app3.s: Likewise.
4294 * testsuite/gas/macros/app4.d: Likewise.
4295 * testsuite/gas/macros/app4.s: Likewise.
4296 * testsuite/gas/macros/app4b.s: Likewise.
4297 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
4298 * testsuite/gas/z80/z80.exp: Add new tests
4299 * testsuite/gas/z80/dollar.d: New file.
4300 * testsuite/gas/z80/dollar.s: New file.
4301 * testsuite/gas/z80/ez80_adl_all.d: New file.
4302 * testsuite/gas/z80/ez80_adl_all.s: New file.
4303 * testsuite/gas/z80/ez80_adl_suf.d: New file.
4304 * testsuite/gas/z80/ez80_isuf.s: New file.
4305 * testsuite/gas/z80/ez80_z80_all.d: New file.
4306 * testsuite/gas/z80/ez80_z80_all.s: New file.
4307 * testsuite/gas/z80/ez80_z80_suf.d: New file.
4308 * testsuite/gas/z80/r800_extra.d: New file.
4309 * testsuite/gas/z80/r800_extra.s: New file.
4310 * testsuite/gas/z80/r800_ii8.d: New file.
4311 * testsuite/gas/z80/r800_z80_doc.d: New file.
4312 * testsuite/gas/z80/z180.d: New file.
4313 * testsuite/gas/z80/z180.s: New file.
4314 * testsuite/gas/z80/z180_z80_doc.d: New file.
4315 * testsuite/gas/z80/z80_doc.d: New file.
4316 * testsuite/gas/z80/z80_doc.s: New file.
4317 * testsuite/gas/z80/z80_ii8.d: New file.
4318 * testsuite/gas/z80/z80_ii8.s: New file.
4319 * testsuite/gas/z80/z80_in_f_c.d: New file.
4320 * testsuite/gas/z80/z80_in_f_c.s: New file.
4321 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
4322 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
4323 * testsuite/gas/z80/z80_out_c_0.d: New file.
4324 * testsuite/gas/z80/z80_out_c_0.s: New file.
4325 * testsuite/gas/z80/z80_reloc.d: New file.
4326 * testsuite/gas/z80/z80_reloc.s: New file.
4327 * testsuite/gas/z80/z80_sli.d: New file.
4328 * testsuite/gas/z80/z80_sli.s: New file.
4330 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
4332 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
4335 2020-01-01 Alan Modra <amodra@gmail.com>
4337 Update year range in copyright notice of all files.
4339 For older changes see ChangeLog-2019
4341 Copyright (C) 2020 Free Software Foundation, Inc.
4343 Copying and distribution of this file, with or without modification,
4344 are permitted in any medium without royalty provided the copyright
4345 notice and this notice are preserved.
4351 version-control: never