1 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
4 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
5 (parse_operands): Handle new operand codes.
6 (do_neon_dyadic_long): Make shape check accept the scalar variants.
7 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
8 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
9 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
10 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
11 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
12 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
13 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
15 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
17 * NEWS: Mention x86 assembler options for CVE-2020-0551.
19 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
21 * testsuite/gas/i386/i386.exp: Run new tests.
22 * testsuite/gas/i386/lfence-byte.d: New file.
23 * testsuite/gas/i386/lfence-byte.e: Likewise.
24 * testsuite/gas/i386/lfence-byte.s: Likewise.
25 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
26 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
27 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
28 * testsuite/gas/i386/lfence-indbr.e: Likewise.
29 * testsuite/gas/i386/lfence-indbr.s: Likewise.
30 * testsuite/gas/i386/lfence-load.d: Likewise.
31 * testsuite/gas/i386/lfence-load.s: Likewise.
32 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
33 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
34 * testsuite/gas/i386/lfence-ret.s: Likewise.
35 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
36 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
37 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
38 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
39 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
40 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
41 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
42 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
43 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
44 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
45 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
46 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
48 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
50 * config/tc-i386.c (lfence_after_load): New.
51 (lfence_before_indirect_branch_kind): New.
52 (lfence_before_indirect_branch): New.
53 (lfence_before_ret_kind): New.
54 (lfence_before_ret): New.
57 (insert_lfence_after): New.
58 (insert_lfence_before): New.
59 (md_assemble): Call insert_lfence_before and insert_lfence_after.
61 (OPTION_MLFENCE_AFTER_LOAD): New.
62 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
63 (OPTION_MLFENCE_BEFORE_RET): New.
64 (md_longopts): Add -mlfence-after-load=,
65 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
66 (md_parse_option): Handle -mlfence-after-load=,
67 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
68 (md_show_usage): Display -mlfence-after-load=,
69 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
70 (i386_cons_align): New.
71 * config/tc-i386.h (i386_cons_align): New.
73 * doc/c-i386.texi: Document -mlfence-after-load=,
74 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
76 2020-03-11 Nick Clifton <nickc@redhat.com>
80 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
81 (DWARF2_FILE_SIZE_NAME): Default to -1.
82 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
84 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
85 (NUM_MD5_BYTES): Define.
86 (struct file entry): Add md5 field.
87 (get_filenum): Delete and replace with...
88 (get_basename): New function.
89 (get_directory_table_entry): New function.
90 (allocate_filenum): New function.
91 (allocate_filename_to_slot): New function.
92 (dwarf2_where): Use new functions.
93 (dwarf2_directive_filename): Add support for extended .file
95 (dwarf2_directive_loc): Allow the use of file number zero with
97 (out_file_list): Rename to...
98 (out_dir_and_file_list): Add DWARF 5 support.
99 (out_debug_line): Emit extra values into the section header for
101 (out_debug_str): Allow for file 0 to be used with DWARF 5.
102 * doc/as.texi (.file): Update the description of this pseudo-op.
103 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
104 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
105 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
106 * NEWS: Mention the new feature.
108 2020-03-10 Alan Modra <amodra@gmail.com>
110 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
111 to avoid signed overflow.
112 * config/tc-mcore.c (md_assemble): Likewise.
113 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
114 * config/tc-nds32.c (SET_ADDEND): Likewise.
115 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
117 2020-03-09 Jan Beulich <jbeulich@suse.com>
119 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
120 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
121 testsuite/gas/i386/avx-intel.d: Adjust expectations.
123 2020-03-07 Alan Modra <amodra@gmail.com>
125 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
128 2020-03-06 Nick Clifton <nickc@redhat.com>
131 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
132 0 if the dwarf_level is 5 or more. Complain if a filename follows
134 * testsuite/gas/elf/dwarf-5-file0.s: New test.
135 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
136 * testsuite/gas/elf/elf.exp: Run the new test.
139 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
140 * doc/as.texi: Fix another typo.
142 2020-03-06 Nick Clifton <nickc@redhat.com>
145 * as.c (dwarf_level): Define.
146 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
147 (parse_args): Add support for the new options.
148 as.h (dwarf_level): Prototype.
149 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
151 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
152 (DWARF2_LINE_VERSION): Remove definition.
153 * doc/as.texi: Document the new options.
155 2020-03-06 Nick Clifton <nickc@redhat.com>
158 * as.c (main): Allow matching input and outputs when they are
161 2020-03-06 Jan Beulich <jbeulich@suse.com>
163 * config/tc-i386.c (match_mem_size): Generalize broadcast special
165 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
166 one of byte/word/dword/qword is set alongside a SIMD register in
167 a template's operand.
169 2020-03-06 Jan Beulich <jbeulich@suse.com>
171 * config/tc-i386.c (match_template): Extend code in logic
172 rejecting certain suffixes in certain modes to also cover mask
173 register use and VecSIB. Drop special casing of broadcast. Skip
174 immediates in the check.
176 2020-03-06 Jan Beulich <jbeulich@suse.com>
178 * config/tc-i386.c (match_template): Fold duplicate code in
179 logic rejecting certain suffixes in certain modes. Drop
182 2020-03-06 Jan Beulich <jbeulich@suse.com>
184 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
185 alongside !norex64 ones.
186 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
187 with both 32- and 64-bit GPR operands.
188 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
189 32- and 64-bit GPR operands.
190 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
191 testsuite/gas/i386/x86-64-avx512bw.d,
192 testsuite/gas/i386/x86-64-avx512f-intel.d,
193 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
195 2020-03-06 Jan Beulich <jbeulich@suse.com>
197 * config/tc-i386.c (md_assemble): Drop use of rex64.
198 (process_suffix): For REX.W for 64-bit CRC32.
200 2020-03-06 Jan Beulich <jbeulich@suse.com>
202 * config/tc-i386.c (i386_addressing_mode): For 32-bit
203 addressing for MPX insns without base/index.
204 * testsuite/gas/i386/mpx-16bit.s,
205 * testsuite/gas/i386/mpx-16bit.d: New.
206 * testsuite/gas/i386/i386.exp: Run new test.
208 2020-03-06 Jan Beulich <jbeulich@suse.com>
210 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
211 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
212 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
213 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
214 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
215 as well as a BSWAP one.
216 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
217 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
218 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
219 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
220 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
221 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
222 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
223 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
224 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
225 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
226 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
227 testsuite/gas/i386/vmx.d: Adjust expectations.
229 2020-03-06 Jan Beulich <jbeulich@suse.com>
231 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
232 from having their operands swapped.
233 * testsuite/gas/i386/waitpkg.s,
234 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
235 3-operand cases as well as testing of 16-bit code generation.
236 * testsuite/gas/i386/waitpkg.d,
237 testsuite/gas/i386/waitpkg-intel.d,
238 testsuite/gas/i386/x86-64-waitpkg.d,
239 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
241 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
243 * config/tc-riscv.c (percent_op_utype): Support the modifier
245 * doc/c-riscv.texi: Add documentation.
246 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
247 modifier %got_pcrel_hi.
248 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
249 * testsuite/gas/riscv/relax-reloc.d: Likewise.
250 * testsuite/gas/riscv/relax-reloc.s: Likewise.
252 * doc/c-riscv.texi (relocation modifiers): Add documentation.
253 (RISC-V-Formats): Update the section name from "Instruction Formats"
254 to "RISC-V Instruction Formats".
256 2020-03-04 Alexandre Oliva <oliva@adacore.com>
258 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
259 detected in a section which does not have at least 4 byte
261 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
262 * testsuite/gas/arm/ldr-t.s: Likewise.
263 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
264 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
265 disassembly, ignoring any NOPs that may have been inserted because
266 of section alignment.
267 * testsuite/gas/arm/ldr-t.d: Likewise.
269 2020-03-04 Jan Beulich <jbeulich@suse.com>
271 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
272 * doc/c-i386.texi: Mention sev_es.
273 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
274 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
276 * testsuite/gas/i386/arch-13-znver1.d,
277 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
279 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
281 * config/tc-i386.c (match_template): Replace ignoresize and
282 defaultsize with mnemonicsize.
283 (process_suffix): Likewise.
285 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
288 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
289 instruction LD IY,(HL).
290 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
291 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
292 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
293 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
295 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
298 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
299 x86-64-default-suffix-avx.
300 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
301 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
302 * testsuite/gas/i386/noreg64.d: Updated.
303 * testsuite/gas/i386/noreg64.l: Likewise.
304 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
305 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
306 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
308 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
311 * config/tc-z80.c (contains_register): Prevent an illegal memory
312 access when checking an expression for a register name.
314 2020-03-03 Alan Modra <amodra@gmail.com>
316 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
319 2020-03-02 Alan Modra <amodra@gmail.com>
321 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
322 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
324 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
325 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
326 (s3_s_score_lcomm): Likewise.
327 * config/tc-score7.c: Similarly.
328 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
330 2020-02-28 YunQiang Su <syq@debian.org>
333 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
334 to handle multi-labels.
335 (has_label_name): New.
337 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
339 * config/tc-arm.c (enum pred_instruction_type): Remove
340 NEUTRAL_IT_NO_VPT_INSN predication type.
341 (cxn_handle_predication): Modify to require condition suffixes.
342 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
343 * testsuite/gas/arm/cde-scalar.s: Update test.
344 * testsuite/gas/arm/cde-warnings.l: Update test.
345 * testsuite/gas/arm/cde-warnings.s: Update test.
347 2020-02-26 Alan Modra <amodra@gmail.com>
349 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
350 N_() on empty string.
352 2020-02-26 Alan Modra <amodra@gmail.com>
354 * read.c (read_a_source_file): Call strncpy with length one
355 less than size of original_case_string.
357 2020-02-26 Alan Modra <amodra@gmail.com>
359 * config/obj-elf.c: Indent labels correctly.
360 * config/obj-macho.c: Likewise.
361 * config/tc-aarch64.c: Likewise.
362 * config/tc-alpha.c: Likewise.
363 * config/tc-arm.c: Likewise.
364 * config/tc-cr16.c: Likewise.
365 * config/tc-crx.c: Likewise.
366 * config/tc-frv.c: Likewise.
367 * config/tc-i386-intel.c: Likewise.
368 * config/tc-i386.c: Likewise.
369 * config/tc-ia64.c: Likewise.
370 * config/tc-mn10200.c: Likewise.
371 * config/tc-mn10300.c: Likewise.
372 * config/tc-nds32.c: Likewise.
373 * config/tc-riscv.c: Likewise.
374 * config/tc-s12z.c: Likewise.
375 * config/tc-xtensa.c: Likewise.
376 * config/tc-z80.c: Likewise.
378 * symbols.c: Likewise.
381 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
383 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
384 we are assembling instruction with CSR. Call riscv_csr_read_only_check
385 after parsing all arguments.
386 (enum csr_insn_type): New enum is used to classify the CSR instruction.
387 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
388 are used to check if we write a read-only CSR by the CSR instruction.
389 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
390 all CSR for the read-only CSR checking.
391 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
392 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
393 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
394 all CSR instructions for the read-only CSR checking.
395 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
396 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
398 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
399 (riscv_opts): Initialize it.
400 (reg_lookup_internal): Check the `riscv_opts.csr_check`
401 before doing the CSR checking.
402 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
403 (md_longopts): Add mcsr-check and mno-csr-check.
404 (md_parse_option): Handle new enum option values.
405 (s_riscv_option): Handle new long options.
406 * doc/c-riscv.texi: Add description for the new .option and assembler
408 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
410 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
412 * config/tc-riscv.c (csr_extra_hash): New.
413 (enum riscv_csr_class): New enum. Used to decide
414 whether or not this CSR is legal in the current ISA string.
415 (struct riscv_csr_extra): New structure to hold all extra information
417 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
418 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
419 Call hash_reg_name to insert CSR address into reg_names_hash.
420 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
421 Decide whether the CSR is valid according to the csr_extra_hash.
422 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
423 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
424 not a boolean. This is same as riscv_init_csr_hash, so keep the
426 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
427 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
428 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
429 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
430 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
431 f-ext CSR are not allowed.
432 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
433 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
434 source file is `priv-reg.s`, and the ISA is rv64if, so the
435 rv32-only CSR are not allowed.
436 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
438 2020-02-21 Alan Modra <amodra@gmail.com>
440 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
441 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
443 2020-02-21 Alan Modra <amodra@gmail.com>
446 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
447 on section size adjustment, instead perform another write if
448 exec header size is larger than section size.
450 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
452 * doc/c-riscv.texi: Add the doc entries for -march-attr/
453 -mno-arch-attr command line options.
455 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
457 * testsuite/gas/riscv/c-add-addi.d: New testcase.
458 * testsuite/gas/riscv/c-add-addi.s: Likewise.
460 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
463 * config/tc-z80.c (md_parse_option): Do not use an underscore
464 prefix for local labels in SDCC compatability mode.
465 (z80_start_line_hook): Remove SDCC dollar label support.
466 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
467 * testsuite/gas/z80/sdcc.s: Likewise.
469 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
472 * config/tc-z80.c: Add -march option.
473 * doc/as.texi: Update Z80 documentation.
474 * doc/c-z80.texi: Likewise.
475 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
476 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
477 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
478 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
479 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
480 * testsuite/gas/z80/gbz80_all.d: Likewise.
481 * testsuite/gas/z80/r800_extra.d: Likewise.
482 * testsuite/gas/z80/r800_ii8.d: Likewise.
483 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
484 * testsuite/gas/z80/sdcc.d: Likewise.
485 * testsuite/gas/z80/z180.d: Likewise.
486 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
487 * testsuite/gas/z80/z80_doc.d: Likewise.
488 * testsuite/gas/z80/z80_ii8.d: Likewise.
489 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
490 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
491 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
492 * testsuite/gas/z80/z80_sli.d: Likewise.
493 * testsuite/gas/z80/z80n_all.d: Likewise.
494 * testsuite/gas/z80/z80n_reloc.d: Likewise.
496 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
498 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
499 with GNU_PROPERTY_X86_FEATURE_2_MMX.
500 * testsuite/gas/i386/i386.exp: Run property-3 and
502 * testsuite/gas/i386/property-3.d: New file.
503 * testsuite/gas/i386/property-3.s: Likewise.
504 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
506 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
508 * config/tc-i386.c (cpu_arch): Add .popcnt.
509 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
510 Add a tab before @samp{.sse4a}.
512 2020-02-17 Jan Beulich <jbeulich@suse.com>
514 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
515 for AddrPrefixOpReg templates. Combine the two pieces of
516 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
519 2020-02-17 Jan Beulich <jbeulich@suse.com>
522 * config/tc-i386.c (md_assemble): Also suppress operand
523 swapping for MONITOR{,X} and MWAIT{,X}.
524 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
525 Add Intel syntax monitor/mwait tests.
526 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
528 *testsuite/gas/i386/sse3-intel.d,
529 testsuite/gas/i386/x86-64-sse3-intel.d: New.
530 * testsuite/gas/i386/i386.exp: Run new tests.
532 2020-02-17 Jan Beulich <jbeulich@suse.com>
535 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
536 [XYZ]MMWord memory operand ambiguity recognition logic (largely
538 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
540 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
541 * testsuite/gas/i386/avx512dq-inval.l,
542 testsuite/gas/i386/inval-avx.l,
543 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
544 * testsuite/gas/i386/avx512vl-ambig.s,
545 testsuite/gas/i386/avx512vl-ambig.l: New.
546 * testsuite/gas/i386/i386.exp: Run new test.
548 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
550 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
552 * doc/c-i386.texi: Document sse4a and nosse4a.
554 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
556 * doc/c-i386.texi: Remove the old movsx and movzx documentation
559 2020-02-14 Jan Beulich <jbeulich@suse.com>
562 * config/tc-i386.c (md_assemble): Move movsx/movzx special
564 (process_suffix): ... here. Consider just the first operand
566 (check_long_reg): Drop opcode 0x63 special case again.
567 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
568 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
569 Move ambiguous operand size tests ...
570 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
571 testsuite/gas/i386/noreg64.s: ... here.
572 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
573 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
574 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
575 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
576 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
577 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
578 testsuite/gas/i386/x86-64-movsxd.d,
579 testsuite/gas/i386/x86-64-movsxd-intel.d,
580 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
582 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
583 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
584 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
585 * testsuite/gas/i386/i386.exp: Run new tests.
587 2020-02-14 Jan Beulich <jbeulich@suse.com>
589 * config/tc-i386.c (process_operands): Also skip segment
590 override prefix emission if it matches an already present one.
591 * testsuite/gas/i386/prefix32.s: Add double segment override
593 * testsuite/gas/i386/prefix32.l: Adjust expectations.
595 2020-02-14 Jan Beulich <jbeulich@suse.com>
597 * config/tc-i386.c (process_operands): Drop ineffectual segment
598 overrides when optimizing.
599 * testsuite/gas/i386/lea-optimize.d: New.
600 * testsuite/gas/i386/i386.exp: Run new test.
602 2020-02-14 Jan Beulich <jbeulich@suse.com>
604 * config/tc-i386.c (process_operands): Also check insn prefix
605 for ineffectual segment override warning. Don't cover possible
606 VEX/EVEX encoded insns there.
607 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
608 testsuite/gas/i386/lea.e: New.
609 * testsuite/gas/i386/i386.exp: Run new test.
611 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
614 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
617 2020-02-13 Fangrui Song <maskray@google.com>
618 H.J. Lu <hongjiu.lu@intel.com>
621 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
622 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
623 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
624 * testsuite/gas/i386/relax-5.d: New file.
625 * testsuite/gas/i386/relax-5.s: Likewise.
626 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
627 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
629 2020-02-13 Jan Beulich <jbeulich@suse.com>
631 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
634 2020-02-12 Jan Beulich <jbeulich@suse.com>
636 * config/tc-i386.c (avx512): New (at file scope), moved from
637 (check_VecOperands): ... here.
638 (process_suffix): Add [XYZ]MMword operand size handling.
639 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
640 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
642 * testsuite/gas/i386/avx512dq-inval.l,
643 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
645 2020-02-12 Jan Beulich <jbeulich@suse.com>
648 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
650 * config/tc-i386-intel.c (i386_intel_operand): Also handle
651 CALL/JMP in O_tbyte_ptr case.
652 * doc/c-i386.texi: Mention far call and full pointer load ISA
654 * testsuite/gas/i386/x86-64-branch-3.s,
655 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
656 * testsuite/gas/i386/x86-64-branch-3.d,
657 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
658 * testsuite/gas/i386/x86-64-branch-5.l,
659 testsuite/gas/i386/x86-64-branch-5.s: New.
660 * testsuite/gas/i386/i386.exp: Run new test.
662 2020-02-12 Jan Beulich <jbeulich@suse.com>
665 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
666 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
668 (check_word_reg): Consistently error on mismatching register
670 * testsuite/gas/i386/general.s: Replace dword GPR with word one
671 for movw. Replace suffix / GPR for orb.
672 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
673 byte GPRs as well as ones for inb/outb with a word accumulator.
674 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
675 testsuite/gas/i386/inval.l: Adjust expectations.
677 2020-02-12 Jan Beulich <jbeulich@suse.com>
679 * config/tc-i386.c (operand_type_register_match): Also fall
680 through initial two if()-s when the template allows for a GPR
681 operand. Adjust comment.
683 2020-02-11 Jan Beulich <jbeulich@suse.com>
685 (struct _i386_insn): New field "short_form".
686 (optimize_encoding): Drop setting of shortform field.
687 (process_suffix): Set i.short_form. Replace shortform use.
688 (process_operands): Replace shortform use.
690 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
692 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
693 loop initial declaration.
695 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
697 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
698 instructions that can have 5 arguments.
699 (enum operand_parse_code): Add new operands.
700 (parse_operands): Account for new operands.
702 (enum neon_shape_el): Introduce P suffixes for coprocessor.
703 (neon_select_shape): Account for P suffix.
704 (LOW1): Move macro to global position.
705 (HI4): Move macro to global position.
706 (vcx_assign_vec_d): New.
707 (vcx_assign_vec_m): New.
708 (vcx_assign_vec_n): New.
709 (enum vcx_reg_type): New.
710 (vcx_get_reg_type): New.
713 (vcx_handle_shape): New.
714 (vcx_ensure_register_in_range): New.
715 (vcx_handle_register_arguments): New.
716 (vcx_handle_insn_block): New.
717 (vcx_handle_common_checks): New.
721 * testsuite/gas/arm/cde-missing-fp.d: New test.
722 * testsuite/gas/arm/cde-missing-fp.l: New test.
723 * testsuite/gas/arm/cde-missing-mve.d: New test.
724 * testsuite/gas/arm/cde-missing-mve.l: New test.
725 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
726 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
727 * testsuite/gas/arm/cde-mve.s: New test.
728 * testsuite/gas/arm/cde-warnings.l:
729 * testsuite/gas/arm/cde-warnings.s:
730 * testsuite/gas/arm/cde.d:
731 * testsuite/gas/arm/cde.s:
733 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
734 Matthew Malcomson <matthew.malcomson@arm.com>
736 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
737 CDE coprocessor that can be enabled.
738 (enum pred_instruction_type): New pred type.
739 (BAD_NO_VPT): New error message.
740 (BAD_CDE): New error message.
741 (BAD_CDE_COPROC): New error message.
742 (enum operand_parse_code): Add new immediate operands.
743 (parse_operands): Account for new immediate operands.
744 (check_cde_operand): New.
745 (cde_coproc_enabled): New.
746 (cde_coproc_pos): New.
747 (cde_handle_coproc): New.
748 (cxn_handle_predication): New.
749 (do_custom_instruction_1): New.
750 (do_custom_instruction_2): New.
751 (do_custom_instruction_3): New.
764 (handle_pred_state): Define new IT block behaviour.
765 (insns): Add newn CX*{,d}{,a} instructions.
766 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
767 Define new cdecp extension strings.
768 * doc/c-arm.texi: Document new cdecp extension arguments.
769 * testsuite/gas/arm/cde-scalar.d: New test.
770 * testsuite/gas/arm/cde-scalar.s: New test.
771 * testsuite/gas/arm/cde-warnings.d: New test.
772 * testsuite/gas/arm/cde-warnings.l: New test.
773 * testsuite/gas/arm/cde-warnings.s: New test.
774 * testsuite/gas/arm/cde.d: New test.
775 * testsuite/gas/arm/cde.s: New test.
777 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
780 * config/tc-i386.c (intel64): Renamed to ...
782 (match_template): Accept Intel64 only instruction by default.
783 (i386_displacement): Updated.
784 (md_parse_option): Updated.
785 * c-i386.texi: Update -mamd64/-mintel64 documentation.
786 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
787 -mamd64 to x86-64-sysenter-amd.
788 * testsuite/gas/i386/x86-64-sysenter.d: New file.
790 2020-02-10 Alan Modra <amodra@gmail.com>
792 * config/obj-elf.c (obj_elf_change_section): Error for section
793 type, attr or entsize changes in assembly.
794 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
795 * testsuite/gas/elf/section5.l: Update.
797 2020-02-10 Alan Modra <amodra@gmail.com>
799 * output-file.c (output_file_close): Do a normal close when
800 flag_always_generate_output.
801 * write.c (write_object_file): Don't stop output when
802 flag_always_generate_output.
804 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
807 * config/tc-z80.c: Add -gbz80 command line option to generate code
808 for the GameBoy Z80. Add support for generating DWARF.
809 * config/tc-z80.h: Add support for DWARF debug information
811 * doc/c-z80.texi: Document new command line option.
812 * testsuite/gas/z80/gbz80_all.d: New file.
813 * testsuite/gas/z80/gbz80_all.s: New file.
814 * testsuite/gas/z80/z80.exp: Run the new tests.
815 * testsuite/gas/z80/z80n_all.d: New file.
816 * testsuite/gas/z80/z80n_all.s: New file.
817 * testsuite/gas/z80/z80n_reloc.d: New file.
819 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
822 * config/obj-elf.c (get_section): Also check
823 linked_to_symbol_name.
824 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
825 (obj_elf_parse_section_letters): Handle the 'o' flag.
826 (build_group_lists): Renamed to ...
827 (build_additional_section_info): This. Set elf_linked_to_section
828 from map_head.linked_to_symbol_name.
829 (elf_adjust_symtab): Updated.
830 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
831 * doc/as.texi: Document the 'o' flag.
832 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
833 * testsuite/gas/elf/section18.d: New file.
834 * testsuite/gas/elf/section18.s: Likewise.
835 * testsuite/gas/elf/section19.d: Likewise.
836 * testsuite/gas/elf/section19.s: Likewise.
837 * testsuite/gas/elf/section20.d: Likewise.
838 * testsuite/gas/elf/section20.s: Likewise.
839 * testsuite/gas/elf/section21.d: Likewise.
840 * testsuite/gas/elf/section21.l: Likewise.
841 * testsuite/gas/elf/section21.s: Likewise.
843 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
845 * NEWS: Mention x86 assembler options to align branches for
848 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
850 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
851 only for ELF targets.
852 * testsuite/gas/i386/unique.d: Don't xfail.
853 * testsuite/gas/i386/x86-64-unique.d: Likewise.
855 2020-02-06 Alan Modra <amodra@gmail.com>
857 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
858 * testsuite/gas/i386/x86-64-unique.d: Likewise.
860 2020-02-06 Alan Modra <amodra@gmail.com>
862 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
863 xfail, and rename test.
864 * testsuite/gas/elf/section12b.d: Likewise.
865 * testsuite/gas/elf/section16a.d: Likewise.
866 * testsuite/gas/elf/section16b.d: Likewise.
868 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
871 * config/obj-elf.c (section_match): Removed.
872 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
874 (obj_elf_change_section): Replace info and group_name arguments
875 with match_p. Also update the section ID and flags from match_p.
876 (obj_elf_section): Handle "unique,N". Update call to
877 obj_elf_change_section.
878 * config/obj-elf.h (elf_section_match): New.
879 (obj_elf_change_section): Updated.
880 * config/tc-arm.c (start_unwind_section): Update call to
881 obj_elf_change_section.
882 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
883 * config/tc-microblaze.c (microblaze_s_data): Likewise.
884 (microblaze_s_sdata): Likewise.
885 (microblaze_s_rdata): Likewise.
886 (microblaze_s_bss): Likewise.
887 * config/tc-mips.c (s_change_section): Likewise.
888 * config/tc-msp430.c (msp430_profiler): Likewise.
889 * config/tc-rx.c (parse_rx_section): Likewise.
890 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
891 * doc/as.texi: Document "unique,N" in .section directive.
892 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
893 * testsuite/gas/elf/section15.d: New file.
894 * testsuite/gas/elf/section15.s: Likewise.
895 * testsuite/gas/elf/section16.s: Likewise.
896 * testsuite/gas/elf/section16a.d: Likewise.
897 * testsuite/gas/elf/section16b.d: Likewise.
898 * testsuite/gas/elf/section17.d: Likewise.
899 * testsuite/gas/elf/section17.l: Likewise.
900 * testsuite/gas/elf/section17.s: Likewise.
901 * testsuite/gas/i386/unique.d: Likewise.
902 * testsuite/gas/i386/unique.s: Likewise.
903 * testsuite/gas/i386/x86-64-unique.d: Likewise.
904 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
906 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
908 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
910 2020-02-01 Anthony Green <green@moxielogic.com>
912 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
914 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
916 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
919 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
922 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
923 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
925 * testsuite/gas/arm/mve_dsp.d: New test.
927 2020-01-31 Nick Clifton <nickc@redhat.com>
929 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
930 rather than BFD_RELOC_NONE.
932 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
934 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
935 to support VLDMIA instruction for MVE.
936 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
938 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
940 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
942 * testsuite/gas/arm/mve-ldst.d: New test.
943 * testsuite/gas/arm/mve-ldst.s: Likewise.
945 2020-01-31 Nick Clifton <nickc@redhat.com>
947 * po/fr.po: Updated French translation.
948 * po/ru.po: Updated Russian translation.
950 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
952 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
954 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
955 * testsuite/gas/aarch64/sve-movprfx_28.d,
956 * testsuite/gas/aarch64/sve-movprfx_28.l,
957 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
959 2020-01-30 Jan Beulich <jbeulich@suse.com>
961 * config/tc-i386.c (output_disp): Tighten base_opcode check.
962 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
963 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
966 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
968 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
969 * testsuite/gas/bpf/alu-be.d: Likewise.
970 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
971 * testsuite/gas/bpf/alu32-be.d: Likewise.
973 2020-01-30 Jan Beulich <jbeulich@suse.com>
975 * testsuite/gas/i386/x86-64-branch-2.s,
976 testsuite/gas/i386/x86-64-branch-4.s,
977 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
978 * testsuite/gas/i386/ilp32/x86-64-branch.d,
979 testsuite/gas/i386/x86-64-branch-2.d,
980 testsuite/gas/i386/x86-64-branch-4.l,
981 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
983 2020-01-30 Jan Beulich <jbeulich@suse.com>
985 * config/tc-i386.c (process_suffix): .
986 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
987 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
989 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
991 testsuite/gas/i386/x86_64.s: Add RETF cases.
992 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
993 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
994 testsuite/gas/i386/x86-64-opcode.d,
995 testsuite/gas/i386/x86-64-suffix-intel.d,
996 testsuite/gas/i386/x86-64-suffix.d,
997 testsuite/gas/i386/x86_64-intel.d
998 testsuite/gas/i386/x86_64.d: Adjust expectations.
999 * testsuite/gas/i386/x86-64-suffix.e,
1000 testsuite/gas/i386/x86_64.e: New.
1002 2020-01-30 Jan Beulich <jbeulich@suse.com>
1004 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
1007 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
1010 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
1012 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
1013 differences. Document movslq and movsxd.
1014 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
1015 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
1016 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
1017 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
1018 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
1019 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
1020 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
1021 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
1022 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
1023 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
1024 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
1026 2020-01-27 Alan Modra <amodra@gmail.com>
1028 * testsuite/gas/all/gas.exp: Replace case statements with switch
1030 * testsuite/gas/elf/elf.exp: Likewise.
1031 * testsuite/gas/macros/macros.exp: Likewise.
1032 * testsuite/lib/gas-defs.exp: Likewise.
1034 2020-01-27 Tamar Christina <tamar.christina@arm.com>
1037 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
1038 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
1040 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
1042 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
1043 s exts must be known, so rename *ok* to *fail*.
1044 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
1045 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
1046 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
1048 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
1049 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
1051 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
1054 * config/tc-i386.c (check_long_reg): Always disallow double word
1055 suffix in mnemonic with word general register.
1056 * testsuite/gas/i386/general.s: Replace word general register
1057 with double word general register for movl.
1058 * testsuite/gas/i386/inval.s: Add tests for movl with word general
1060 * testsuite/gas/i386/general.l: Updated.
1061 * testsuite/gas/i386/inval.l: Likewise.
1063 2020-01-22 Alan Modra <amodra@gmail.com>
1065 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
1066 __tls_get_addr_desc and __tls_get_addr_opt.
1068 2020-01-21 Jan Beulich <jbeulich@suse.com>
1070 * testsuite/gas/i386/inval-crc32.s,
1071 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
1072 * testsuite/gas/i386/inval-crc32.l,
1073 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
1075 2020-01-21 Jan Beulich <jbeulich@suse.com>
1077 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
1078 generic code path. Deal with No_lSuf being set in a template.
1079 * testsuite/gas/i386/inval-crc32.l,
1080 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
1081 instead of error(s) when operand size is ambiguous.
1082 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1083 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
1084 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
1085 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
1086 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
1087 Adjust expectations.
1089 2020-01-21 Jan Beulich <jbeulich@suse.com>
1091 * config/tc-i386.c (process_suffix): Drop SYSRET special case
1092 and an intel_syntax check. Re-write lack-of-suffix processing
1094 * doc/c-i386.texi: Document operand size defaults for suffix-
1095 less AT&T syntax insns.
1096 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
1097 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
1098 testsuite/gas/i386/x86-64-avx-scalar.s,
1099 testsuite/gas/i386/x86-64-avx.s,
1100 testsuite/gas/i386/x86-64-bundle.s,
1101 testsuite/gas/i386/x86-64-intel64.s,
1102 testsuite/gas/i386/x86-64-lock-1.s,
1103 testsuite/gas/i386/x86-64-opcode.s,
1104 testsuite/gas/i386/x86-64-sse2avx.s,
1105 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
1106 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
1107 testsuite/gas/i386/x86-64-nops.s,
1108 testsuite/gas/i386/x86-64-ptwrite.s,
1109 testsuite/gas/i386/x86-64-simd.s,
1110 testsuite/gas/i386/x86-64-sse-noavx.s,
1111 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
1113 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1114 testsuite/gas/i386/noreg64.s: Add further tests.
1115 * testsuite/gas/i386/ilp32/x86-64-nops.d,
1116 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
1117 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1118 testsuite/gas/i386/sse-noavx.d,
1119 testsuite/gas/i386/x86-64-intel64.d,
1120 testsuite/gas/i386/x86-64-nops.d,
1121 testsuite/gas/i386/x86-64-opcode.d,
1122 testsuite/gas/i386/x86-64-ptwrite-intel.d,
1123 testsuite/gas/i386/x86-64-ptwrite.d,
1124 testsuite/gas/i386/x86-64-simd-intel.d,
1125 testsuite/gas/i386/x86-64-simd-suffix.d,
1126 testsuite/gas/i386/x86-64-simd.d,
1127 testsuite/gas/i386/x86-64-sse-noavx.d
1128 testsuite/gas/i386/x86-64-suffix.d,
1129 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
1130 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
1131 testsuite/gas/i386/noreg64.l: New.
1132 * testsuite/gas/i386/i386.exp: Run new tests.
1134 2020-01-21 Jan Beulich <jbeulich@suse.com>
1136 * testsuite/gas/i386/avx512_bf16_vl.s,
1137 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
1138 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
1139 broadcast forms of VCVTNEPS2BF16.
1140 * testsuite/gas/i386/avx512_bf16_vl.d,
1141 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
1143 2020-01-20 Nick Clifton <nickc@redhat.com>
1145 * po/uk.po: Updated Ukranian translation.
1147 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
1150 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
1151 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
1153 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
1154 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
1155 R_X86_64_GOTPC32_TLSDESC relocation.
1157 2020-01-18 Nick Clifton <nickc@redhat.com>
1159 * configure: Regenerate.
1160 * po/gas.pot: Regenerate.
1162 2020-01-18 Nick Clifton <nickc@redhat.com>
1164 Binutils 2.34 branch created.
1166 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
1168 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
1169 with vex_encoding_vex.
1170 (parse_insn): Likewise.
1171 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
1172 and {vex3} documentation.
1173 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
1175 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
1177 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1180 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
1181 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
1182 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
1183 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
1184 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
1185 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
1187 2020-01-16 Jan Beulich <jbeulich@suse.com>
1189 * config/tc-i386.c (match_template): Drop found_cpu_match local
1192 2020-01-16 Jan Beulich <jbeulich@suse.com>
1194 * testsuite/gas/i386/avx512dq-inval.l,
1195 testsuite/gas/i386/avx512dq-inval.s: New.
1196 * testsuite/gas/i386/i386.exp: Run new test.
1198 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1200 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
1201 relocations when the target is 430X, except when extracting part of an
1203 (msp430_srcoperand): Adjust comment.
1204 Initialize the expp member of the msp430_operand_s struct as
1206 (msp430_dstoperand): Likewise.
1207 * testsuite/gas/msp430/msp430.exp: Run new test.
1208 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
1209 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
1211 2020-01-15 Alan Modra <amodra@gmail.com>
1213 * configure.tgt: Add sparc-*-freebsd case.
1215 2020-01-14 Lili Cui <lili.cui@intel.com>
1217 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
1218 * testsuite/gas/i386/align-branch-1b.d: Likewise.
1219 * testsuite/gas/i386/align-branch-1c.d: Likewise.
1220 * testsuite/gas/i386/align-branch-1d.d: Likewise.
1221 * testsuite/gas/i386/align-branch-1e.d: Likewise.
1222 * testsuite/gas/i386/align-branch-1f.d: Likewise.
1223 * testsuite/gas/i386/align-branch-1g.d: Likewise.
1224 * testsuite/gas/i386/align-branch-1h.d: Likewise.
1225 * testsuite/gas/i386/align-branch-1i.d: Likewise.
1226 * testsuite/gas/i386/align-branch-5.d: Likewise.
1227 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
1228 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
1229 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
1230 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
1231 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
1232 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
1233 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
1234 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
1235 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
1236 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
1237 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
1238 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
1240 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
1243 * config/tc-z80.c: Add support for half precision, single
1244 precision and double precision floating point values.
1245 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
1246 * doc/as.texi: Add new z80 command line options.
1247 * doc/c-z80.texi: Document new z80 command line options.
1248 * testsuite/gas/z80/ez80_pref_dis.s: New test.
1249 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
1250 * testsuite/gas/z80/z80.exp: Run the new test.
1251 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
1252 * testsuite/gas/z80/fp_zeda32.d: Likewise.
1253 * testsuite/gas/z80/strings.d: Update expected output.
1255 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
1257 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
1260 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
1262 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
1264 * config/tc-arc.h: Add header if/defs.
1265 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
1267 2020-01-13 Alan Modra <amodra@gmail.com>
1269 * testsuite/gas/wasm32/allinsn.d: Update expected output.
1271 2020-01-13 Alan Modra <amodra@gmail.com>
1273 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
1276 2020-01-10 Alan Modra <amodra@gmail.com>
1278 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
1279 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
1281 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1284 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
1286 (emit_ld_r_r): Likewise.
1287 (emit_ld_rr_m): Likewise.
1288 (emit_ld_rr_nn): Likewise.
1290 2020-01-09 Jan Beulich <jbeulich@suse.com>
1292 * config/tc-i386.c (optimize_encoding): Add
1293 is_any_vex_encoding() invocations. Drop respective
1294 i.tm.extension_opcode == None checks.
1296 2020-01-09 Jan Beulich <jbeulich@suse.com>
1298 * config/tc-i386.c (md_assemble): Check RegRex is clear during
1299 REX transformations. Correct comment indentation.
1301 2020-01-09 Jan Beulich <jbeulich@suse.com>
1303 * config/tc-i386.c (optimize_encoding): Generalize register
1304 transformation for TEST optimization.
1306 2020-01-09 Jan Beulich <jbeulich@suse.com>
1308 * testsuite/gas/i386/x86-64-sysenter-amd.s,
1309 testsuite/gas/i386/x86-64-sysenter-amd.d,
1310 testsuite/gas/i386/x86-64-sysenter-amd.l,
1311 testsuite/gas/i386/x86-64-sysenter-intel.d,
1312 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
1313 * testsuite/gas/i386/i386.exp: Run new tests.
1315 2020-01-08 Nick Clifton <nickc@redhat.com>
1318 * doc/as.texi (Align): Document the fact that all arguments can be
1321 (P2align): Likewise.
1323 2020-01-08 Nick Clifton <nickc@redhat.com>
1326 * config/obj-elf.c (obj_elf_section): Fail if the section name is
1327 already defined as a different symbol type.
1328 * testsuite/gas/elf/pr14891.s: New test source file.
1329 * testsuite/gas/elf/pr14891.d: New test driver.
1330 * testsuite/gas/elf/pr14891.s: New test expected error output.
1331 * testsuite/gas/elf/elf.exp: Run the new test.
1333 2020-01-08 Alan Modra <amodra@gmail.com>
1335 * config/tc-z8k.c (md_begin): Make idx unsigned.
1336 (get_specific): Likewise for this_index.
1338 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
1340 * onfig/tc-arc.c (parse_reloc_symbol): New function.
1341 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
1342 (md_operand): Set X_md to absent.
1343 (arc_parse_name): Check for X_md.
1345 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1348 * as.h (TC_STRING_ESCAPES): Provide a default definition.
1349 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
1351 * read.c (next_char_of_string): Likewise.
1352 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
1353 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
1355 2020-01-03 Nick Clifton <nickc@redhat.com>
1357 * po/sv.po: Updated Swedish translation.
1359 2020-01-03 Jan Beulich <jbeulich@suse.com>
1361 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
1362 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1364 2020-01-03 Jan Beulich <jbeulich@suse.com>
1366 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
1367 by-element usdot. Add 64-bit form tests for by-element sudot.
1368 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
1370 2020-01-03 Jan Beulich <jbeulich@suse.com>
1372 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
1373 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1375 2020-01-03 Jan Beulich <jbeulich@suse.com>
1377 * testsuite/gas/aarch64/f64mm.d,
1378 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
1380 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
1382 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
1383 support for assembler code generated by SDCC. Add new relocation
1384 types. Add z80-elf target support.
1385 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
1386 labels. Local labels starts from ".L".
1387 * NEWS: Mention the new support.
1388 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
1389 * testsuite/gas/all/fwdexp.s: Likewise.
1390 * testsuite/gas/all/cond.l: Likewise.
1391 * testsuite/gas/all/cond.s: Likewise.
1392 * testsuite/gas/all/fwdexp.d: Likewise.
1393 * testsuite/gas/all/fwdexp.s: Likewise.
1394 * testsuite/gas/elf/section2.e-mips: Likewise.
1395 * testsuite/gas/elf/section2.l: Likewise.
1396 * testsuite/gas/elf/section2.s: Likewise.
1397 * testsuite/gas/macros/app1.d: Likewise.
1398 * testsuite/gas/macros/app1.s: Likewise.
1399 * testsuite/gas/macros/app2.d: Likewise.
1400 * testsuite/gas/macros/app2.s: Likewise.
1401 * testsuite/gas/macros/app3.d: Likewise.
1402 * testsuite/gas/macros/app3.s: Likewise.
1403 * testsuite/gas/macros/app4.d: Likewise.
1404 * testsuite/gas/macros/app4.s: Likewise.
1405 * testsuite/gas/macros/app4b.s: Likewise.
1406 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
1407 * testsuite/gas/z80/z80.exp: Add new tests
1408 * testsuite/gas/z80/dollar.d: New file.
1409 * testsuite/gas/z80/dollar.s: New file.
1410 * testsuite/gas/z80/ez80_adl_all.d: New file.
1411 * testsuite/gas/z80/ez80_adl_all.s: New file.
1412 * testsuite/gas/z80/ez80_adl_suf.d: New file.
1413 * testsuite/gas/z80/ez80_isuf.s: New file.
1414 * testsuite/gas/z80/ez80_z80_all.d: New file.
1415 * testsuite/gas/z80/ez80_z80_all.s: New file.
1416 * testsuite/gas/z80/ez80_z80_suf.d: New file.
1417 * testsuite/gas/z80/r800_extra.d: New file.
1418 * testsuite/gas/z80/r800_extra.s: New file.
1419 * testsuite/gas/z80/r800_ii8.d: New file.
1420 * testsuite/gas/z80/r800_z80_doc.d: New file.
1421 * testsuite/gas/z80/z180.d: New file.
1422 * testsuite/gas/z80/z180.s: New file.
1423 * testsuite/gas/z80/z180_z80_doc.d: New file.
1424 * testsuite/gas/z80/z80_doc.d: New file.
1425 * testsuite/gas/z80/z80_doc.s: New file.
1426 * testsuite/gas/z80/z80_ii8.d: New file.
1427 * testsuite/gas/z80/z80_ii8.s: New file.
1428 * testsuite/gas/z80/z80_in_f_c.d: New file.
1429 * testsuite/gas/z80/z80_in_f_c.s: New file.
1430 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
1431 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
1432 * testsuite/gas/z80/z80_out_c_0.d: New file.
1433 * testsuite/gas/z80/z80_out_c_0.s: New file.
1434 * testsuite/gas/z80/z80_reloc.d: New file.
1435 * testsuite/gas/z80/z80_reloc.s: New file.
1436 * testsuite/gas/z80/z80_sli.d: New file.
1437 * testsuite/gas/z80/z80_sli.s: New file.
1439 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
1441 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
1444 2020-01-01 Alan Modra <amodra@gmail.com>
1446 Update year range in copyright notice of all files.
1448 For older changes see ChangeLog-2019
1450 Copyright (C) 2020 Free Software Foundation, Inc.
1452 Copying and distribution of this file, with or without modification,
1453 are permitted in any medium without royalty provided the copyright
1454 notice and this notice are preserved.
1460 version-control: never