1 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
3 * config/tc-i386.c (lfence_after_load): New.
4 (lfence_before_indirect_branch_kind): New.
5 (lfence_before_indirect_branch): New.
6 (lfence_before_ret_kind): New.
7 (lfence_before_ret): New.
10 (insert_lfence_after): New.
11 (insert_lfence_before): New.
12 (md_assemble): Call insert_lfence_before and insert_lfence_after.
14 (OPTION_MLFENCE_AFTER_LOAD): New.
15 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
16 (OPTION_MLFENCE_BEFORE_RET): New.
17 (md_longopts): Add -mlfence-after-load=,
18 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
19 (md_parse_option): Handle -mlfence-after-load=,
20 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
21 (md_show_usage): Display -mlfence-after-load=,
22 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
23 (i386_cons_align): New.
24 * config/tc-i386.h (i386_cons_align): New.
26 * doc/c-i386.texi: Document -mlfence-after-load=,
27 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
29 2020-03-11 Nick Clifton <nickc@redhat.com>
33 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
34 (DWARF2_FILE_SIZE_NAME): Default to -1.
35 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
37 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
38 (NUM_MD5_BYTES): Define.
39 (struct file entry): Add md5 field.
40 (get_filenum): Delete and replace with...
41 (get_basename): New function.
42 (get_directory_table_entry): New function.
43 (allocate_filenum): New function.
44 (allocate_filename_to_slot): New function.
45 (dwarf2_where): Use new functions.
46 (dwarf2_directive_filename): Add support for extended .file
48 (dwarf2_directive_loc): Allow the use of file number zero with
50 (out_file_list): Rename to...
51 (out_dir_and_file_list): Add DWARF 5 support.
52 (out_debug_line): Emit extra values into the section header for
54 (out_debug_str): Allow for file 0 to be used with DWARF 5.
55 * doc/as.texi (.file): Update the description of this pseudo-op.
56 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
57 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
58 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
59 * NEWS: Mention the new feature.
61 2020-03-10 Alan Modra <amodra@gmail.com>
63 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
64 to avoid signed overflow.
65 * config/tc-mcore.c (md_assemble): Likewise.
66 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
67 * config/tc-nds32.c (SET_ADDEND): Likewise.
68 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
70 2020-03-09 Jan Beulich <jbeulich@suse.com>
72 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
73 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
74 testsuite/gas/i386/avx-intel.d: Adjust expectations.
76 2020-03-07 Alan Modra <amodra@gmail.com>
78 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
81 2020-03-06 Nick Clifton <nickc@redhat.com>
84 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
85 0 if the dwarf_level is 5 or more. Complain if a filename follows
87 * testsuite/gas/elf/dwarf-5-file0.s: New test.
88 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
89 * testsuite/gas/elf/elf.exp: Run the new test.
92 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
93 * doc/as.texi: Fix another typo.
95 2020-03-06 Nick Clifton <nickc@redhat.com>
98 * as.c (dwarf_level): Define.
99 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
100 (parse_args): Add support for the new options.
101 as.h (dwarf_level): Prototype.
102 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
104 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
105 (DWARF2_LINE_VERSION): Remove definition.
106 * doc/as.texi: Document the new options.
108 2020-03-06 Nick Clifton <nickc@redhat.com>
111 * as.c (main): Allow matching input and outputs when they are
114 2020-03-06 Jan Beulich <jbeulich@suse.com>
116 * config/tc-i386.c (match_mem_size): Generalize broadcast special
118 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
119 one of byte/word/dword/qword is set alongside a SIMD register in
120 a template's operand.
122 2020-03-06 Jan Beulich <jbeulich@suse.com>
124 * config/tc-i386.c (match_template): Extend code in logic
125 rejecting certain suffixes in certain modes to also cover mask
126 register use and VecSIB. Drop special casing of broadcast. Skip
127 immediates in the check.
129 2020-03-06 Jan Beulich <jbeulich@suse.com>
131 * config/tc-i386.c (match_template): Fold duplicate code in
132 logic rejecting certain suffixes in certain modes. Drop
135 2020-03-06 Jan Beulich <jbeulich@suse.com>
137 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
138 alongside !norex64 ones.
139 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
140 with both 32- and 64-bit GPR operands.
141 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
142 32- and 64-bit GPR operands.
143 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
144 testsuite/gas/i386/x86-64-avx512bw.d,
145 testsuite/gas/i386/x86-64-avx512f-intel.d,
146 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
148 2020-03-06 Jan Beulich <jbeulich@suse.com>
150 * config/tc-i386.c (md_assemble): Drop use of rex64.
151 (process_suffix): For REX.W for 64-bit CRC32.
153 2020-03-06 Jan Beulich <jbeulich@suse.com>
155 * config/tc-i386.c (i386_addressing_mode): For 32-bit
156 addressing for MPX insns without base/index.
157 * testsuite/gas/i386/mpx-16bit.s,
158 * testsuite/gas/i386/mpx-16bit.d: New.
159 * testsuite/gas/i386/i386.exp: Run new test.
161 2020-03-06 Jan Beulich <jbeulich@suse.com>
163 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
164 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
165 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
166 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
167 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
168 as well as a BSWAP one.
169 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
170 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
171 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
172 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
173 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
174 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
175 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
176 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
177 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
178 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
179 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
180 testsuite/gas/i386/vmx.d: Adjust expectations.
182 2020-03-06 Jan Beulich <jbeulich@suse.com>
184 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
185 from having their operands swapped.
186 * testsuite/gas/i386/waitpkg.s,
187 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
188 3-operand cases as well as testing of 16-bit code generation.
189 * testsuite/gas/i386/waitpkg.d,
190 testsuite/gas/i386/waitpkg-intel.d,
191 testsuite/gas/i386/x86-64-waitpkg.d,
192 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
194 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
196 * config/tc-riscv.c (percent_op_utype): Support the modifier
198 * doc/c-riscv.texi: Add documentation.
199 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
200 modifier %got_pcrel_hi.
201 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
202 * testsuite/gas/riscv/relax-reloc.d: Likewise.
203 * testsuite/gas/riscv/relax-reloc.s: Likewise.
205 * doc/c-riscv.texi (relocation modifiers): Add documentation.
206 (RISC-V-Formats): Update the section name from "Instruction Formats"
207 to "RISC-V Instruction Formats".
209 2020-03-04 Alexandre Oliva <oliva@adacore.com>
211 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
212 detected in a section which does not have at least 4 byte
214 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
215 * testsuite/gas/arm/ldr-t.s: Likewise.
216 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
217 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
218 disassembly, ignoring any NOPs that may have been inserted because
219 of section alignment.
220 * testsuite/gas/arm/ldr-t.d: Likewise.
222 2020-03-04 Jan Beulich <jbeulich@suse.com>
224 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
225 * doc/c-i386.texi: Mention sev_es.
226 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
227 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
229 * testsuite/gas/i386/arch-13-znver1.d,
230 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
232 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
234 * config/tc-i386.c (match_template): Replace ignoresize and
235 defaultsize with mnemonicsize.
236 (process_suffix): Likewise.
238 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
241 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
242 instruction LD IY,(HL).
243 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
244 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
245 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
246 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
248 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
251 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
252 x86-64-default-suffix-avx.
253 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
254 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
255 * testsuite/gas/i386/noreg64.d: Updated.
256 * testsuite/gas/i386/noreg64.l: Likewise.
257 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
258 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
259 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
261 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
264 * config/tc-z80.c (contains_register): Prevent an illegal memory
265 access when checking an expression for a register name.
267 2020-03-03 Alan Modra <amodra@gmail.com>
269 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
272 2020-03-02 Alan Modra <amodra@gmail.com>
274 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
275 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
277 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
278 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
279 (s3_s_score_lcomm): Likewise.
280 * config/tc-score7.c: Similarly.
281 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
283 2020-02-28 YunQiang Su <syq@debian.org>
286 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
287 to handle multi-labels.
288 (has_label_name): New.
290 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
292 * config/tc-arm.c (enum pred_instruction_type): Remove
293 NEUTRAL_IT_NO_VPT_INSN predication type.
294 (cxn_handle_predication): Modify to require condition suffixes.
295 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
296 * testsuite/gas/arm/cde-scalar.s: Update test.
297 * testsuite/gas/arm/cde-warnings.l: Update test.
298 * testsuite/gas/arm/cde-warnings.s: Update test.
300 2020-02-26 Alan Modra <amodra@gmail.com>
302 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
303 N_() on empty string.
305 2020-02-26 Alan Modra <amodra@gmail.com>
307 * read.c (read_a_source_file): Call strncpy with length one
308 less than size of original_case_string.
310 2020-02-26 Alan Modra <amodra@gmail.com>
312 * config/obj-elf.c: Indent labels correctly.
313 * config/obj-macho.c: Likewise.
314 * config/tc-aarch64.c: Likewise.
315 * config/tc-alpha.c: Likewise.
316 * config/tc-arm.c: Likewise.
317 * config/tc-cr16.c: Likewise.
318 * config/tc-crx.c: Likewise.
319 * config/tc-frv.c: Likewise.
320 * config/tc-i386-intel.c: Likewise.
321 * config/tc-i386.c: Likewise.
322 * config/tc-ia64.c: Likewise.
323 * config/tc-mn10200.c: Likewise.
324 * config/tc-mn10300.c: Likewise.
325 * config/tc-nds32.c: Likewise.
326 * config/tc-riscv.c: Likewise.
327 * config/tc-s12z.c: Likewise.
328 * config/tc-xtensa.c: Likewise.
329 * config/tc-z80.c: Likewise.
331 * symbols.c: Likewise.
334 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
336 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
337 we are assembling instruction with CSR. Call riscv_csr_read_only_check
338 after parsing all arguments.
339 (enum csr_insn_type): New enum is used to classify the CSR instruction.
340 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
341 are used to check if we write a read-only CSR by the CSR instruction.
342 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
343 all CSR for the read-only CSR checking.
344 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
345 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
346 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
347 all CSR instructions for the read-only CSR checking.
348 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
349 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
351 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
352 (riscv_opts): Initialize it.
353 (reg_lookup_internal): Check the `riscv_opts.csr_check`
354 before doing the CSR checking.
355 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
356 (md_longopts): Add mcsr-check and mno-csr-check.
357 (md_parse_option): Handle new enum option values.
358 (s_riscv_option): Handle new long options.
359 * doc/c-riscv.texi: Add description for the new .option and assembler
361 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
363 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
365 * config/tc-riscv.c (csr_extra_hash): New.
366 (enum riscv_csr_class): New enum. Used to decide
367 whether or not this CSR is legal in the current ISA string.
368 (struct riscv_csr_extra): New structure to hold all extra information
370 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
371 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
372 Call hash_reg_name to insert CSR address into reg_names_hash.
373 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
374 Decide whether the CSR is valid according to the csr_extra_hash.
375 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
376 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
377 not a boolean. This is same as riscv_init_csr_hash, so keep the
379 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
380 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
381 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
382 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
383 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
384 f-ext CSR are not allowed.
385 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
386 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
387 source file is `priv-reg.s`, and the ISA is rv64if, so the
388 rv32-only CSR are not allowed.
389 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
391 2020-02-21 Alan Modra <amodra@gmail.com>
393 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
394 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
396 2020-02-21 Alan Modra <amodra@gmail.com>
399 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
400 on section size adjustment, instead perform another write if
401 exec header size is larger than section size.
403 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
405 * doc/c-riscv.texi: Add the doc entries for -march-attr/
406 -mno-arch-attr command line options.
408 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
410 * testsuite/gas/riscv/c-add-addi.d: New testcase.
411 * testsuite/gas/riscv/c-add-addi.s: Likewise.
413 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
416 * config/tc-z80.c (md_parse_option): Do not use an underscore
417 prefix for local labels in SDCC compatability mode.
418 (z80_start_line_hook): Remove SDCC dollar label support.
419 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
420 * testsuite/gas/z80/sdcc.s: Likewise.
422 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
425 * config/tc-z80.c: Add -march option.
426 * doc/as.texi: Update Z80 documentation.
427 * doc/c-z80.texi: Likewise.
428 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
429 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
430 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
431 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
432 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
433 * testsuite/gas/z80/gbz80_all.d: Likewise.
434 * testsuite/gas/z80/r800_extra.d: Likewise.
435 * testsuite/gas/z80/r800_ii8.d: Likewise.
436 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
437 * testsuite/gas/z80/sdcc.d: Likewise.
438 * testsuite/gas/z80/z180.d: Likewise.
439 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
440 * testsuite/gas/z80/z80_doc.d: Likewise.
441 * testsuite/gas/z80/z80_ii8.d: Likewise.
442 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
443 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
444 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
445 * testsuite/gas/z80/z80_sli.d: Likewise.
446 * testsuite/gas/z80/z80n_all.d: Likewise.
447 * testsuite/gas/z80/z80n_reloc.d: Likewise.
449 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
451 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
452 with GNU_PROPERTY_X86_FEATURE_2_MMX.
453 * testsuite/gas/i386/i386.exp: Run property-3 and
455 * testsuite/gas/i386/property-3.d: New file.
456 * testsuite/gas/i386/property-3.s: Likewise.
457 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
459 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
461 * config/tc-i386.c (cpu_arch): Add .popcnt.
462 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
463 Add a tab before @samp{.sse4a}.
465 2020-02-17 Jan Beulich <jbeulich@suse.com>
467 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
468 for AddrPrefixOpReg templates. Combine the two pieces of
469 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
472 2020-02-17 Jan Beulich <jbeulich@suse.com>
475 * config/tc-i386.c (md_assemble): Also suppress operand
476 swapping for MONITOR{,X} and MWAIT{,X}.
477 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
478 Add Intel syntax monitor/mwait tests.
479 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
481 *testsuite/gas/i386/sse3-intel.d,
482 testsuite/gas/i386/x86-64-sse3-intel.d: New.
483 * testsuite/gas/i386/i386.exp: Run new tests.
485 2020-02-17 Jan Beulich <jbeulich@suse.com>
488 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
489 [XYZ]MMWord memory operand ambiguity recognition logic (largely
491 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
493 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
494 * testsuite/gas/i386/avx512dq-inval.l,
495 testsuite/gas/i386/inval-avx.l,
496 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
497 * testsuite/gas/i386/avx512vl-ambig.s,
498 testsuite/gas/i386/avx512vl-ambig.l: New.
499 * testsuite/gas/i386/i386.exp: Run new test.
501 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
503 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
505 * doc/c-i386.texi: Document sse4a and nosse4a.
507 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
509 * doc/c-i386.texi: Remove the old movsx and movzx documentation
512 2020-02-14 Jan Beulich <jbeulich@suse.com>
515 * config/tc-i386.c (md_assemble): Move movsx/movzx special
517 (process_suffix): ... here. Consider just the first operand
519 (check_long_reg): Drop opcode 0x63 special case again.
520 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
521 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
522 Move ambiguous operand size tests ...
523 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
524 testsuite/gas/i386/noreg64.s: ... here.
525 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
526 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
527 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
528 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
529 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
530 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
531 testsuite/gas/i386/x86-64-movsxd.d,
532 testsuite/gas/i386/x86-64-movsxd-intel.d,
533 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
535 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
536 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
537 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
538 * testsuite/gas/i386/i386.exp: Run new tests.
540 2020-02-14 Jan Beulich <jbeulich@suse.com>
542 * config/tc-i386.c (process_operands): Also skip segment
543 override prefix emission if it matches an already present one.
544 * testsuite/gas/i386/prefix32.s: Add double segment override
546 * testsuite/gas/i386/prefix32.l: Adjust expectations.
548 2020-02-14 Jan Beulich <jbeulich@suse.com>
550 * config/tc-i386.c (process_operands): Drop ineffectual segment
551 overrides when optimizing.
552 * testsuite/gas/i386/lea-optimize.d: New.
553 * testsuite/gas/i386/i386.exp: Run new test.
555 2020-02-14 Jan Beulich <jbeulich@suse.com>
557 * config/tc-i386.c (process_operands): Also check insn prefix
558 for ineffectual segment override warning. Don't cover possible
559 VEX/EVEX encoded insns there.
560 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
561 testsuite/gas/i386/lea.e: New.
562 * testsuite/gas/i386/i386.exp: Run new test.
564 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
567 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
570 2020-02-13 Fangrui Song <maskray@google.com>
571 H.J. Lu <hongjiu.lu@intel.com>
574 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
575 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
576 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
577 * testsuite/gas/i386/relax-5.d: New file.
578 * testsuite/gas/i386/relax-5.s: Likewise.
579 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
580 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
582 2020-02-13 Jan Beulich <jbeulich@suse.com>
584 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
587 2020-02-12 Jan Beulich <jbeulich@suse.com>
589 * config/tc-i386.c (avx512): New (at file scope), moved from
590 (check_VecOperands): ... here.
591 (process_suffix): Add [XYZ]MMword operand size handling.
592 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
593 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
595 * testsuite/gas/i386/avx512dq-inval.l,
596 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
598 2020-02-12 Jan Beulich <jbeulich@suse.com>
601 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
603 * config/tc-i386-intel.c (i386_intel_operand): Also handle
604 CALL/JMP in O_tbyte_ptr case.
605 * doc/c-i386.texi: Mention far call and full pointer load ISA
607 * testsuite/gas/i386/x86-64-branch-3.s,
608 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
609 * testsuite/gas/i386/x86-64-branch-3.d,
610 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
611 * testsuite/gas/i386/x86-64-branch-5.l,
612 testsuite/gas/i386/x86-64-branch-5.s: New.
613 * testsuite/gas/i386/i386.exp: Run new test.
615 2020-02-12 Jan Beulich <jbeulich@suse.com>
618 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
619 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
621 (check_word_reg): Consistently error on mismatching register
623 * testsuite/gas/i386/general.s: Replace dword GPR with word one
624 for movw. Replace suffix / GPR for orb.
625 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
626 byte GPRs as well as ones for inb/outb with a word accumulator.
627 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
628 testsuite/gas/i386/inval.l: Adjust expectations.
630 2020-02-12 Jan Beulich <jbeulich@suse.com>
632 * config/tc-i386.c (operand_type_register_match): Also fall
633 through initial two if()-s when the template allows for a GPR
634 operand. Adjust comment.
636 2020-02-11 Jan Beulich <jbeulich@suse.com>
638 (struct _i386_insn): New field "short_form".
639 (optimize_encoding): Drop setting of shortform field.
640 (process_suffix): Set i.short_form. Replace shortform use.
641 (process_operands): Replace shortform use.
643 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
645 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
646 loop initial declaration.
648 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
650 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
651 instructions that can have 5 arguments.
652 (enum operand_parse_code): Add new operands.
653 (parse_operands): Account for new operands.
655 (enum neon_shape_el): Introduce P suffixes for coprocessor.
656 (neon_select_shape): Account for P suffix.
657 (LOW1): Move macro to global position.
658 (HI4): Move macro to global position.
659 (vcx_assign_vec_d): New.
660 (vcx_assign_vec_m): New.
661 (vcx_assign_vec_n): New.
662 (enum vcx_reg_type): New.
663 (vcx_get_reg_type): New.
666 (vcx_handle_shape): New.
667 (vcx_ensure_register_in_range): New.
668 (vcx_handle_register_arguments): New.
669 (vcx_handle_insn_block): New.
670 (vcx_handle_common_checks): New.
674 * testsuite/gas/arm/cde-missing-fp.d: New test.
675 * testsuite/gas/arm/cde-missing-fp.l: New test.
676 * testsuite/gas/arm/cde-missing-mve.d: New test.
677 * testsuite/gas/arm/cde-missing-mve.l: New test.
678 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
679 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
680 * testsuite/gas/arm/cde-mve.s: New test.
681 * testsuite/gas/arm/cde-warnings.l:
682 * testsuite/gas/arm/cde-warnings.s:
683 * testsuite/gas/arm/cde.d:
684 * testsuite/gas/arm/cde.s:
686 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
687 Matthew Malcomson <matthew.malcomson@arm.com>
689 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
690 CDE coprocessor that can be enabled.
691 (enum pred_instruction_type): New pred type.
692 (BAD_NO_VPT): New error message.
693 (BAD_CDE): New error message.
694 (BAD_CDE_COPROC): New error message.
695 (enum operand_parse_code): Add new immediate operands.
696 (parse_operands): Account for new immediate operands.
697 (check_cde_operand): New.
698 (cde_coproc_enabled): New.
699 (cde_coproc_pos): New.
700 (cde_handle_coproc): New.
701 (cxn_handle_predication): New.
702 (do_custom_instruction_1): New.
703 (do_custom_instruction_2): New.
704 (do_custom_instruction_3): New.
717 (handle_pred_state): Define new IT block behaviour.
718 (insns): Add newn CX*{,d}{,a} instructions.
719 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
720 Define new cdecp extension strings.
721 * doc/c-arm.texi: Document new cdecp extension arguments.
722 * testsuite/gas/arm/cde-scalar.d: New test.
723 * testsuite/gas/arm/cde-scalar.s: New test.
724 * testsuite/gas/arm/cde-warnings.d: New test.
725 * testsuite/gas/arm/cde-warnings.l: New test.
726 * testsuite/gas/arm/cde-warnings.s: New test.
727 * testsuite/gas/arm/cde.d: New test.
728 * testsuite/gas/arm/cde.s: New test.
730 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
733 * config/tc-i386.c (intel64): Renamed to ...
735 (match_template): Accept Intel64 only instruction by default.
736 (i386_displacement): Updated.
737 (md_parse_option): Updated.
738 * c-i386.texi: Update -mamd64/-mintel64 documentation.
739 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
740 -mamd64 to x86-64-sysenter-amd.
741 * testsuite/gas/i386/x86-64-sysenter.d: New file.
743 2020-02-10 Alan Modra <amodra@gmail.com>
745 * config/obj-elf.c (obj_elf_change_section): Error for section
746 type, attr or entsize changes in assembly.
747 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
748 * testsuite/gas/elf/section5.l: Update.
750 2020-02-10 Alan Modra <amodra@gmail.com>
752 * output-file.c (output_file_close): Do a normal close when
753 flag_always_generate_output.
754 * write.c (write_object_file): Don't stop output when
755 flag_always_generate_output.
757 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
760 * config/tc-z80.c: Add -gbz80 command line option to generate code
761 for the GameBoy Z80. Add support for generating DWARF.
762 * config/tc-z80.h: Add support for DWARF debug information
764 * doc/c-z80.texi: Document new command line option.
765 * testsuite/gas/z80/gbz80_all.d: New file.
766 * testsuite/gas/z80/gbz80_all.s: New file.
767 * testsuite/gas/z80/z80.exp: Run the new tests.
768 * testsuite/gas/z80/z80n_all.d: New file.
769 * testsuite/gas/z80/z80n_all.s: New file.
770 * testsuite/gas/z80/z80n_reloc.d: New file.
772 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
775 * config/obj-elf.c (get_section): Also check
776 linked_to_symbol_name.
777 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
778 (obj_elf_parse_section_letters): Handle the 'o' flag.
779 (build_group_lists): Renamed to ...
780 (build_additional_section_info): This. Set elf_linked_to_section
781 from map_head.linked_to_symbol_name.
782 (elf_adjust_symtab): Updated.
783 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
784 * doc/as.texi: Document the 'o' flag.
785 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
786 * testsuite/gas/elf/section18.d: New file.
787 * testsuite/gas/elf/section18.s: Likewise.
788 * testsuite/gas/elf/section19.d: Likewise.
789 * testsuite/gas/elf/section19.s: Likewise.
790 * testsuite/gas/elf/section20.d: Likewise.
791 * testsuite/gas/elf/section20.s: Likewise.
792 * testsuite/gas/elf/section21.d: Likewise.
793 * testsuite/gas/elf/section21.l: Likewise.
794 * testsuite/gas/elf/section21.s: Likewise.
796 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
798 * NEWS: Mention x86 assembler options to align branches for
801 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
803 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
804 only for ELF targets.
805 * testsuite/gas/i386/unique.d: Don't xfail.
806 * testsuite/gas/i386/x86-64-unique.d: Likewise.
808 2020-02-06 Alan Modra <amodra@gmail.com>
810 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
811 * testsuite/gas/i386/x86-64-unique.d: Likewise.
813 2020-02-06 Alan Modra <amodra@gmail.com>
815 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
816 xfail, and rename test.
817 * testsuite/gas/elf/section12b.d: Likewise.
818 * testsuite/gas/elf/section16a.d: Likewise.
819 * testsuite/gas/elf/section16b.d: Likewise.
821 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
824 * config/obj-elf.c (section_match): Removed.
825 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
827 (obj_elf_change_section): Replace info and group_name arguments
828 with match_p. Also update the section ID and flags from match_p.
829 (obj_elf_section): Handle "unique,N". Update call to
830 obj_elf_change_section.
831 * config/obj-elf.h (elf_section_match): New.
832 (obj_elf_change_section): Updated.
833 * config/tc-arm.c (start_unwind_section): Update call to
834 obj_elf_change_section.
835 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
836 * config/tc-microblaze.c (microblaze_s_data): Likewise.
837 (microblaze_s_sdata): Likewise.
838 (microblaze_s_rdata): Likewise.
839 (microblaze_s_bss): Likewise.
840 * config/tc-mips.c (s_change_section): Likewise.
841 * config/tc-msp430.c (msp430_profiler): Likewise.
842 * config/tc-rx.c (parse_rx_section): Likewise.
843 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
844 * doc/as.texi: Document "unique,N" in .section directive.
845 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
846 * testsuite/gas/elf/section15.d: New file.
847 * testsuite/gas/elf/section15.s: Likewise.
848 * testsuite/gas/elf/section16.s: Likewise.
849 * testsuite/gas/elf/section16a.d: Likewise.
850 * testsuite/gas/elf/section16b.d: Likewise.
851 * testsuite/gas/elf/section17.d: Likewise.
852 * testsuite/gas/elf/section17.l: Likewise.
853 * testsuite/gas/elf/section17.s: Likewise.
854 * testsuite/gas/i386/unique.d: Likewise.
855 * testsuite/gas/i386/unique.s: Likewise.
856 * testsuite/gas/i386/x86-64-unique.d: Likewise.
857 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
859 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
861 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
863 2020-02-01 Anthony Green <green@moxielogic.com>
865 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
867 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
869 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
872 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
875 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
876 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
878 * testsuite/gas/arm/mve_dsp.d: New test.
880 2020-01-31 Nick Clifton <nickc@redhat.com>
882 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
883 rather than BFD_RELOC_NONE.
885 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
887 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
888 to support VLDMIA instruction for MVE.
889 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
891 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
893 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
895 * testsuite/gas/arm/mve-ldst.d: New test.
896 * testsuite/gas/arm/mve-ldst.s: Likewise.
898 2020-01-31 Nick Clifton <nickc@redhat.com>
900 * po/fr.po: Updated French translation.
901 * po/ru.po: Updated Russian translation.
903 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
905 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
907 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
908 * testsuite/gas/aarch64/sve-movprfx_28.d,
909 * testsuite/gas/aarch64/sve-movprfx_28.l,
910 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
912 2020-01-30 Jan Beulich <jbeulich@suse.com>
914 * config/tc-i386.c (output_disp): Tighten base_opcode check.
915 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
916 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
919 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
921 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
922 * testsuite/gas/bpf/alu-be.d: Likewise.
923 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
924 * testsuite/gas/bpf/alu32-be.d: Likewise.
926 2020-01-30 Jan Beulich <jbeulich@suse.com>
928 * testsuite/gas/i386/x86-64-branch-2.s,
929 testsuite/gas/i386/x86-64-branch-4.s,
930 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
931 * testsuite/gas/i386/ilp32/x86-64-branch.d,
932 testsuite/gas/i386/x86-64-branch-2.d,
933 testsuite/gas/i386/x86-64-branch-4.l,
934 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
936 2020-01-30 Jan Beulich <jbeulich@suse.com>
938 * config/tc-i386.c (process_suffix): .
939 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
940 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
942 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
944 testsuite/gas/i386/x86_64.s: Add RETF cases.
945 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
946 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
947 testsuite/gas/i386/x86-64-opcode.d,
948 testsuite/gas/i386/x86-64-suffix-intel.d,
949 testsuite/gas/i386/x86-64-suffix.d,
950 testsuite/gas/i386/x86_64-intel.d
951 testsuite/gas/i386/x86_64.d: Adjust expectations.
952 * testsuite/gas/i386/x86-64-suffix.e,
953 testsuite/gas/i386/x86_64.e: New.
955 2020-01-30 Jan Beulich <jbeulich@suse.com>
957 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
960 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
963 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
965 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
966 differences. Document movslq and movsxd.
967 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
968 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
969 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
970 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
971 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
972 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
973 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
974 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
975 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
976 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
977 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
979 2020-01-27 Alan Modra <amodra@gmail.com>
981 * testsuite/gas/all/gas.exp: Replace case statements with switch
983 * testsuite/gas/elf/elf.exp: Likewise.
984 * testsuite/gas/macros/macros.exp: Likewise.
985 * testsuite/lib/gas-defs.exp: Likewise.
987 2020-01-27 Tamar Christina <tamar.christina@arm.com>
990 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
991 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
993 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
995 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
996 s exts must be known, so rename *ok* to *fail*.
997 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
998 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
999 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
1001 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
1002 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
1004 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
1007 * config/tc-i386.c (check_long_reg): Always disallow double word
1008 suffix in mnemonic with word general register.
1009 * testsuite/gas/i386/general.s: Replace word general register
1010 with double word general register for movl.
1011 * testsuite/gas/i386/inval.s: Add tests for movl with word general
1013 * testsuite/gas/i386/general.l: Updated.
1014 * testsuite/gas/i386/inval.l: Likewise.
1016 2020-01-22 Alan Modra <amodra@gmail.com>
1018 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
1019 __tls_get_addr_desc and __tls_get_addr_opt.
1021 2020-01-21 Jan Beulich <jbeulich@suse.com>
1023 * testsuite/gas/i386/inval-crc32.s,
1024 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
1025 * testsuite/gas/i386/inval-crc32.l,
1026 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
1028 2020-01-21 Jan Beulich <jbeulich@suse.com>
1030 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
1031 generic code path. Deal with No_lSuf being set in a template.
1032 * testsuite/gas/i386/inval-crc32.l,
1033 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
1034 instead of error(s) when operand size is ambiguous.
1035 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1036 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
1037 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
1038 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
1039 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
1040 Adjust expectations.
1042 2020-01-21 Jan Beulich <jbeulich@suse.com>
1044 * config/tc-i386.c (process_suffix): Drop SYSRET special case
1045 and an intel_syntax check. Re-write lack-of-suffix processing
1047 * doc/c-i386.texi: Document operand size defaults for suffix-
1048 less AT&T syntax insns.
1049 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
1050 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
1051 testsuite/gas/i386/x86-64-avx-scalar.s,
1052 testsuite/gas/i386/x86-64-avx.s,
1053 testsuite/gas/i386/x86-64-bundle.s,
1054 testsuite/gas/i386/x86-64-intel64.s,
1055 testsuite/gas/i386/x86-64-lock-1.s,
1056 testsuite/gas/i386/x86-64-opcode.s,
1057 testsuite/gas/i386/x86-64-sse2avx.s,
1058 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
1059 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
1060 testsuite/gas/i386/x86-64-nops.s,
1061 testsuite/gas/i386/x86-64-ptwrite.s,
1062 testsuite/gas/i386/x86-64-simd.s,
1063 testsuite/gas/i386/x86-64-sse-noavx.s,
1064 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
1066 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1067 testsuite/gas/i386/noreg64.s: Add further tests.
1068 * testsuite/gas/i386/ilp32/x86-64-nops.d,
1069 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
1070 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1071 testsuite/gas/i386/sse-noavx.d,
1072 testsuite/gas/i386/x86-64-intel64.d,
1073 testsuite/gas/i386/x86-64-nops.d,
1074 testsuite/gas/i386/x86-64-opcode.d,
1075 testsuite/gas/i386/x86-64-ptwrite-intel.d,
1076 testsuite/gas/i386/x86-64-ptwrite.d,
1077 testsuite/gas/i386/x86-64-simd-intel.d,
1078 testsuite/gas/i386/x86-64-simd-suffix.d,
1079 testsuite/gas/i386/x86-64-simd.d,
1080 testsuite/gas/i386/x86-64-sse-noavx.d
1081 testsuite/gas/i386/x86-64-suffix.d,
1082 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
1083 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
1084 testsuite/gas/i386/noreg64.l: New.
1085 * testsuite/gas/i386/i386.exp: Run new tests.
1087 2020-01-21 Jan Beulich <jbeulich@suse.com>
1089 * testsuite/gas/i386/avx512_bf16_vl.s,
1090 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
1091 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
1092 broadcast forms of VCVTNEPS2BF16.
1093 * testsuite/gas/i386/avx512_bf16_vl.d,
1094 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
1096 2020-01-20 Nick Clifton <nickc@redhat.com>
1098 * po/uk.po: Updated Ukranian translation.
1100 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
1103 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
1104 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
1106 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
1107 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
1108 R_X86_64_GOTPC32_TLSDESC relocation.
1110 2020-01-18 Nick Clifton <nickc@redhat.com>
1112 * configure: Regenerate.
1113 * po/gas.pot: Regenerate.
1115 2020-01-18 Nick Clifton <nickc@redhat.com>
1117 Binutils 2.34 branch created.
1119 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
1121 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
1122 with vex_encoding_vex.
1123 (parse_insn): Likewise.
1124 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
1125 and {vex3} documentation.
1126 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
1128 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
1130 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1133 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
1134 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
1135 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
1136 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
1137 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
1138 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
1140 2020-01-16 Jan Beulich <jbeulich@suse.com>
1142 * config/tc-i386.c (match_template): Drop found_cpu_match local
1145 2020-01-16 Jan Beulich <jbeulich@suse.com>
1147 * testsuite/gas/i386/avx512dq-inval.l,
1148 testsuite/gas/i386/avx512dq-inval.s: New.
1149 * testsuite/gas/i386/i386.exp: Run new test.
1151 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1153 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
1154 relocations when the target is 430X, except when extracting part of an
1156 (msp430_srcoperand): Adjust comment.
1157 Initialize the expp member of the msp430_operand_s struct as
1159 (msp430_dstoperand): Likewise.
1160 * testsuite/gas/msp430/msp430.exp: Run new test.
1161 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
1162 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
1164 2020-01-15 Alan Modra <amodra@gmail.com>
1166 * configure.tgt: Add sparc-*-freebsd case.
1168 2020-01-14 Lili Cui <lili.cui@intel.com>
1170 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
1171 * testsuite/gas/i386/align-branch-1b.d: Likewise.
1172 * testsuite/gas/i386/align-branch-1c.d: Likewise.
1173 * testsuite/gas/i386/align-branch-1d.d: Likewise.
1174 * testsuite/gas/i386/align-branch-1e.d: Likewise.
1175 * testsuite/gas/i386/align-branch-1f.d: Likewise.
1176 * testsuite/gas/i386/align-branch-1g.d: Likewise.
1177 * testsuite/gas/i386/align-branch-1h.d: Likewise.
1178 * testsuite/gas/i386/align-branch-1i.d: Likewise.
1179 * testsuite/gas/i386/align-branch-5.d: Likewise.
1180 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
1181 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
1182 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
1183 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
1184 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
1185 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
1186 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
1187 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
1188 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
1189 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
1190 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
1191 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
1193 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
1196 * config/tc-z80.c: Add support for half precision, single
1197 precision and double precision floating point values.
1198 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
1199 * doc/as.texi: Add new z80 command line options.
1200 * doc/c-z80.texi: Document new z80 command line options.
1201 * testsuite/gas/z80/ez80_pref_dis.s: New test.
1202 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
1203 * testsuite/gas/z80/z80.exp: Run the new test.
1204 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
1205 * testsuite/gas/z80/fp_zeda32.d: Likewise.
1206 * testsuite/gas/z80/strings.d: Update expected output.
1208 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
1210 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
1213 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
1215 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
1217 * config/tc-arc.h: Add header if/defs.
1218 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
1220 2020-01-13 Alan Modra <amodra@gmail.com>
1222 * testsuite/gas/wasm32/allinsn.d: Update expected output.
1224 2020-01-13 Alan Modra <amodra@gmail.com>
1226 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
1229 2020-01-10 Alan Modra <amodra@gmail.com>
1231 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
1232 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
1234 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1237 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
1239 (emit_ld_r_r): Likewise.
1240 (emit_ld_rr_m): Likewise.
1241 (emit_ld_rr_nn): Likewise.
1243 2020-01-09 Jan Beulich <jbeulich@suse.com>
1245 * config/tc-i386.c (optimize_encoding): Add
1246 is_any_vex_encoding() invocations. Drop respective
1247 i.tm.extension_opcode == None checks.
1249 2020-01-09 Jan Beulich <jbeulich@suse.com>
1251 * config/tc-i386.c (md_assemble): Check RegRex is clear during
1252 REX transformations. Correct comment indentation.
1254 2020-01-09 Jan Beulich <jbeulich@suse.com>
1256 * config/tc-i386.c (optimize_encoding): Generalize register
1257 transformation for TEST optimization.
1259 2020-01-09 Jan Beulich <jbeulich@suse.com>
1261 * testsuite/gas/i386/x86-64-sysenter-amd.s,
1262 testsuite/gas/i386/x86-64-sysenter-amd.d,
1263 testsuite/gas/i386/x86-64-sysenter-amd.l,
1264 testsuite/gas/i386/x86-64-sysenter-intel.d,
1265 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
1266 * testsuite/gas/i386/i386.exp: Run new tests.
1268 2020-01-08 Nick Clifton <nickc@redhat.com>
1271 * doc/as.texi (Align): Document the fact that all arguments can be
1274 (P2align): Likewise.
1276 2020-01-08 Nick Clifton <nickc@redhat.com>
1279 * config/obj-elf.c (obj_elf_section): Fail if the section name is
1280 already defined as a different symbol type.
1281 * testsuite/gas/elf/pr14891.s: New test source file.
1282 * testsuite/gas/elf/pr14891.d: New test driver.
1283 * testsuite/gas/elf/pr14891.s: New test expected error output.
1284 * testsuite/gas/elf/elf.exp: Run the new test.
1286 2020-01-08 Alan Modra <amodra@gmail.com>
1288 * config/tc-z8k.c (md_begin): Make idx unsigned.
1289 (get_specific): Likewise for this_index.
1291 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
1293 * onfig/tc-arc.c (parse_reloc_symbol): New function.
1294 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
1295 (md_operand): Set X_md to absent.
1296 (arc_parse_name): Check for X_md.
1298 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1301 * as.h (TC_STRING_ESCAPES): Provide a default definition.
1302 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
1304 * read.c (next_char_of_string): Likewise.
1305 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
1306 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
1308 2020-01-03 Nick Clifton <nickc@redhat.com>
1310 * po/sv.po: Updated Swedish translation.
1312 2020-01-03 Jan Beulich <jbeulich@suse.com>
1314 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
1315 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1317 2020-01-03 Jan Beulich <jbeulich@suse.com>
1319 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
1320 by-element usdot. Add 64-bit form tests for by-element sudot.
1321 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
1323 2020-01-03 Jan Beulich <jbeulich@suse.com>
1325 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
1326 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
1328 2020-01-03 Jan Beulich <jbeulich@suse.com>
1330 * testsuite/gas/aarch64/f64mm.d,
1331 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
1333 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
1335 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
1336 support for assembler code generated by SDCC. Add new relocation
1337 types. Add z80-elf target support.
1338 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
1339 labels. Local labels starts from ".L".
1340 * NEWS: Mention the new support.
1341 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
1342 * testsuite/gas/all/fwdexp.s: Likewise.
1343 * testsuite/gas/all/cond.l: Likewise.
1344 * testsuite/gas/all/cond.s: Likewise.
1345 * testsuite/gas/all/fwdexp.d: Likewise.
1346 * testsuite/gas/all/fwdexp.s: Likewise.
1347 * testsuite/gas/elf/section2.e-mips: Likewise.
1348 * testsuite/gas/elf/section2.l: Likewise.
1349 * testsuite/gas/elf/section2.s: Likewise.
1350 * testsuite/gas/macros/app1.d: Likewise.
1351 * testsuite/gas/macros/app1.s: Likewise.
1352 * testsuite/gas/macros/app2.d: Likewise.
1353 * testsuite/gas/macros/app2.s: Likewise.
1354 * testsuite/gas/macros/app3.d: Likewise.
1355 * testsuite/gas/macros/app3.s: Likewise.
1356 * testsuite/gas/macros/app4.d: Likewise.
1357 * testsuite/gas/macros/app4.s: Likewise.
1358 * testsuite/gas/macros/app4b.s: Likewise.
1359 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
1360 * testsuite/gas/z80/z80.exp: Add new tests
1361 * testsuite/gas/z80/dollar.d: New file.
1362 * testsuite/gas/z80/dollar.s: New file.
1363 * testsuite/gas/z80/ez80_adl_all.d: New file.
1364 * testsuite/gas/z80/ez80_adl_all.s: New file.
1365 * testsuite/gas/z80/ez80_adl_suf.d: New file.
1366 * testsuite/gas/z80/ez80_isuf.s: New file.
1367 * testsuite/gas/z80/ez80_z80_all.d: New file.
1368 * testsuite/gas/z80/ez80_z80_all.s: New file.
1369 * testsuite/gas/z80/ez80_z80_suf.d: New file.
1370 * testsuite/gas/z80/r800_extra.d: New file.
1371 * testsuite/gas/z80/r800_extra.s: New file.
1372 * testsuite/gas/z80/r800_ii8.d: New file.
1373 * testsuite/gas/z80/r800_z80_doc.d: New file.
1374 * testsuite/gas/z80/z180.d: New file.
1375 * testsuite/gas/z80/z180.s: New file.
1376 * testsuite/gas/z80/z180_z80_doc.d: New file.
1377 * testsuite/gas/z80/z80_doc.d: New file.
1378 * testsuite/gas/z80/z80_doc.s: New file.
1379 * testsuite/gas/z80/z80_ii8.d: New file.
1380 * testsuite/gas/z80/z80_ii8.s: New file.
1381 * testsuite/gas/z80/z80_in_f_c.d: New file.
1382 * testsuite/gas/z80/z80_in_f_c.s: New file.
1383 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
1384 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
1385 * testsuite/gas/z80/z80_out_c_0.d: New file.
1386 * testsuite/gas/z80/z80_out_c_0.s: New file.
1387 * testsuite/gas/z80/z80_reloc.d: New file.
1388 * testsuite/gas/z80/z80_reloc.s: New file.
1389 * testsuite/gas/z80/z80_sli.d: New file.
1390 * testsuite/gas/z80/z80_sli.s: New file.
1392 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
1394 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
1397 2020-01-01 Alan Modra <amodra@gmail.com>
1399 Update year range in copyright notice of all files.
1401 For older changes see ChangeLog-2019
1403 Copyright (C) 2020 Free Software Foundation, Inc.
1405 Copying and distribution of this file, with or without modification,
1406 are permitted in any medium without royalty provided the copyright
1407 notice and this notice are preserved.
1413 version-control: never