1 2020-06-04 Alan Modra <amodra@gmail.com>
3 * testsuite/config/default.exp: Remove global directive outside
5 * testsuite/gas/mep/complex-relocs.exp: Likewise.
6 * testsuite/gas/microblaze/relax_size.exp: Likewise.
7 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
8 * testsuite/gas/mt/relocs.exp: Likewise.
9 * testsuite/gas/rx/rx.exp: Likewise.
11 2020-06-03 Stephen Casner <casner@acm.org>
13 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
15 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
16 Jim Wilson <jimw@sifive.com>
19 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
20 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
21 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
22 Move B before SB. Move J before UJ.
24 2020-06-01 Alex Coplan <alex.coplan@arm.com>
26 * write.c (relax_segment): Fix handling of negative offset when
27 relaxing an rs_org frag.
28 * testsuite/gas/aarch64/org-neg.d: New test.
29 * testsuite/gas/aarch64/org-neg.l: Error output for test.
30 * testsuite/gas/aarch64/org-neg.s: Input for test.
31 * testsuite/gas/arm/org-neg.d: New test.
32 * testsuite/gas/arm/org-neg.l: Error output for test.
33 * testsuite/gas/arm/org-neg.s: Input for test.
35 2020-05-28 Stephen Casner <casner@acm.org>
37 Fix unexpected failures in gas testsuite for pdp11-aout target.
38 These are caused by the PDP11's mix of little-endian octets in
39 shorts but shorts in big endian order for long or quad.
41 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
42 * testsuite/gas/all/gas.exp: Select alternate test scripts for
43 pdp11, skip octa test completely.
44 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
45 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
46 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
48 2020-05-28 Alex Coplan <alex.coplan@arm.com>
50 * frags.c (frag_grow): Fix comment.
52 2020-05-27 Stephen Casner <casner@acm.org>
55 * config/tc-pdp11.c (parse_reg): Distinguish register names from
56 symbols that begin with a register name.
57 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
58 * testsuite/gas/pdp11/pr26001.s: Likewise.
59 * testsuite/gas/pdp11/pr26001.d: Likewise.
61 2020-05-27 Simon Cook <simon.cook@embecosm.com>
63 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
64 pointer when creating struct riscv_csr_extra.
66 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
68 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
69 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
70 * testsuite/gas/i386/inval-avx512f.l: Updated.
72 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
74 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
75 load/store instruction variants with alignment hints.
76 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
77 instruction variants with alignment hints.
79 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
82 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
83 instead of R_XGATE_PCREL_X.
84 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
85 BFD_RELOC_XGATE_PCREL_X.
87 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
90 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
91 with &fragP->fr_literal[0].
93 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
96 * config/tc-vax.c (md_estimate_size_before_relax): Replace
97 fragP->fr_literal with &fragP->fr_literal[0].
98 (md_convert_frag): Likewise.
100 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
103 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
104 with &fragP->fr_literal[0].
106 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
109 * config/tc-crx.c (getreg_image): Change argument type to int.
110 (md_convert_frag): Replace fragP->fr_literal with
111 &fragP->fr_literal[0].
113 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
116 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
117 sprintf with memmove.
119 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
121 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
122 with &fragP->fr_literal[0].
124 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
127 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
128 2 overlapping strings.
130 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
132 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
133 with &fragP->fr_literal[0].
135 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
137 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
138 with &fragp->fr_literal[0].
139 * config/tc-microblaze.c (md_apply_fix): Likewise.
140 * config/tc-sh.c (md_convert_frag): Likewise.
142 2020-05-24 Jim Wilson <jimw@sifive.com>
145 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
146 asection to segT. New locals seg and subseg. Call subseg_set before
147 fix_new_exp. Call subseg_set after loop to restore original values.
149 2020-05-21 Alan Modra <amodra@gmail.com>
151 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
153 * config/obj-elf.c: Likewise.
154 * config/tc-aarch64.c: Likewise.
155 * config/tc-arm.c: Likewise.
156 * config/tc-m68k.c: Likewise.
157 * config/tc-nios2.c: Likewise.
158 * config/tc-tic30.c: Likewise.
162 * symbols.c: Likewise.
163 * testsuite/gas/all/test-gen.c: Likewise.
165 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
167 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
168 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
169 Static variables which are used to set the ISA extensions. You can
170 use -march (or ELF build attributes) and -misa-spec to set them,
172 (ext_version_hash): The hash table used to handle the extensions
174 (init_ext_version_hash): Initialize the ext_version_hash according
175 to riscv_ext_version_table.
176 (riscv_get_default_ext_version): The callback function of
177 riscv_parse_subset_t. According to the choosed ISA spec,
178 get the default version for the specific extension.
179 (riscv_set_arch): Set the callback function.
180 (enum options, struct option md_longopts): Add new option -misa-spec.
181 (md_parse_option): Do not call riscv_set_arch for -march. We will
182 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
183 to set default_isa_spec class.
184 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
185 ext_version_hash, and then call riscv_set_arch to set the architecture
186 with versions according to default_arch_with_ext.
187 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
189 * testsuite/gas/riscv/attribute-03.d: Likewise.
190 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
191 already set it's version to 2p1 by march, so no need to use the default
192 2p2 version. For m-ext, we do not set the version by -march and ELF arch
193 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
194 ISA spec 2p2, so set 0p0 to it.
195 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
196 zicsr is 2p0 according to ISA spec 20191213.
197 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
198 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
199 You can set them by configure options --with-arch and
200 --with-isa-spec, respectively.
201 (riscv_set_default_isa_spec): New function used to set the
203 (md_parse_option): Call riscv_set_default_isa_spec rather than
204 call riscv_get_isa_spec_class directly.
205 (riscv_after_parse_args): If the -isa-spec is not set, then we
206 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
207 calling riscv_set_default_isa_spec.
208 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
209 the --with-isa-spec may be set to different ISA spec.
210 * testsuite/gas/riscv/attribute-02.d: Likewise.
211 * testsuite/gas/riscv/attribute-03.d: Likewise.
212 * testsuite/gas/riscv/attribute-04.d: Likewise.
213 * testsuite/gas/riscv/attribute-05.d: Likewise.
214 * testsuite/gas/riscv/attribute-06.d: Likewise.
215 * testsuite/gas/riscv/attribute-07.d: Likewise.
216 * configure.ac: Add configure options, --with-arch and
218 * configure: Regenerated.
219 * config.in: Regenerated.
220 * config/tc-riscv.c (default_priv_spec): Static variable which is
221 used to check if the CSR is valid for the chosen privilege spec. You
222 can use -mpriv-spec to set it.
223 (enum reg_class): We now get the CSR address from csr_extra_hash rather
224 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
225 (riscv_init_csr_hashes): Only need to initialize one hash table
227 (riscv_csr_class_check): Change the return type to void. Don't check
228 the ISA dependency if -mcsr-check isn't set.
229 (riscv_csr_version_check): New function. Check and find the CSR address
230 from csr_extra_hash, according to default_priv_spec. Report warning
231 for the invalid CSR if -mcsr-check is set.
232 (reg_csr_lookup_internal): Updated.
233 (reg_lookup_internal): Likewise.
234 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
235 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
236 (md_parse_option): Call riscv_set_default_priv_version to set
238 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
239 privilege spec to the newest one.
240 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
241 include/opcode/riscv.h.
242 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
243 to check the ISA dependency for CSR, so fix the spec version by adding
245 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
246 version warnings for the test case.
247 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
248 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
249 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
250 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
251 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
252 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
253 Check whether the CSR is valid when privilege version 1.9 is choosed.
254 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
255 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
256 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
257 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
258 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
259 Check whether the CSR is valid when privilege version 1.10 is choosed.
260 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
261 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
262 Check whether the CSR is valid when privilege version 1.11 is choosed.
263 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
264 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
265 setting. You can set it by configure option --with-priv-spec.
266 (riscv_set_default_priv_spec): New function used to set the default
268 (md_parse_option): Call riscv_set_default_priv_spec rather than
269 call riscv_get_priv_spec_class directly.
270 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
271 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
272 calling riscv_set_default_priv_spec.
273 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
274 the --with-priv-spec may be set to different privilege spec.
275 * testsuite/gas/riscv/priv-reg.d: Likewise.
276 * configure.ac: Add configure option --with-priv-spec.
277 * configure: Regenerated.
278 * config.in: Regenerated.
279 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
280 explicit_attr. Set it to TRUE if any ELF attribute is found.
281 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
282 the priv attributes are set.
283 (md_assemble): Set the default_priv_spec according to the priv
284 attributes when we start to assemble instruction.
285 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
286 riscv_write_out_attrs. Update the arch and priv attributes. If we
287 don't set the corresponding ELF attributes, then try to output the
289 (riscv_set_public_attributes): If any ELF attribute or -march-attr
290 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
291 to update the arch and priv attributes.
292 (s_riscv_attribute): Make sure all arch and priv attributes are set
293 before any instruction.
294 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
295 ELF attribute or -march-attr is set. If the priv attributes are not
296 set, then try to update them by the default setting (-mpriv-spec or
298 * testsuite/gas/riscv/attribute-02.d: Likewise.
299 * testsuite/gas/riscv/attribute-03.d: Likewise.
300 * testsuite/gas/riscv/attribute-04.d: Likewise.
301 * testsuite/gas/riscv/attribute-06.d: Likewise.
302 * testsuite/gas/riscv/attribute-07.d: Likewise.
303 * testsuite/gas/riscv/attribute-08.d: Likewise.
304 * testsuite/gas/riscv/attribute-09.d: Likewise.
305 * testsuite/gas/riscv/attribute-10.d: Likewise.
306 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
307 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
308 set by priv attributes must be supported.
309 * testsuite/gas/riscv/attribute-05.s: Likewise.
310 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
311 priv attributes according to the -mpriv-spec option.
312 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
313 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
314 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
315 * testsuite/gas/riscv/priv-reg.d: Removed.
316 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
317 CSR according to the priv spec 1.9.
318 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
319 CSR according to the priv spec 1.9.1.
320 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
321 CSR according to the priv spec 1.10.
322 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
323 CSR according to the priv spec 1.11.
324 * config/tc-riscv.c (md_show_usage): Add descriptions about
326 * doc/c-riscv.texi: Likewise.
328 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
330 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
331 * testsuite/gas/ppc/power9.d: Likewise.
332 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
333 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
334 sync, wait, waitrsv>: Add tests.
335 * testsuite/gas/ppc/power10.d: Likewise.
337 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
340 * config/tc-arm.c : Add arm_ext_v8r feature.
341 (it_fsm_post_encode): Check arm_ext_v8r feature.
342 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
344 2020-05-19 Alan Modra <amodra@gmail.com>
346 * write.c (write_contents): Use bfd_get_filename rather than
347 accessing bfd->filename directly. Use bfd_section_name rather
348 than accessing section->name directly.
350 2020-05-19 Alan Modra <amodra@gmail.com>
352 * symbols.c (local_symbol_make): Init all of lsy_flags.
354 2020-05-18 Alan Modra <amodra@gmail.com>
356 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
357 before looking at add_symbol->sy_flags.
359 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
361 * config/tc-i386.c: Not handle lret/iret.
362 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
363 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
364 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
365 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
366 * testsuite/gas/i386/lfence-ret.s: Ditto.
367 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
368 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
369 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
370 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
371 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
372 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
373 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
375 2020-05-15 Alan Modra <amodra@gmail.com>
376 Alex Coplan <alex.coplan@arm.com>
378 * symbols.c (struct local_symbol): Update comment.
379 (resolve_symbol_value): For resolved symbols equated to other
380 symbols, verify that the referenced symbol is not a local_symbol
381 before accessing sy_value. Don't leave symbol loops during
382 finalize_syms resolution.
383 * testsuite/gas/all/assign-bad-recursive.d: New test.
384 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
385 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
386 * testsuite/gas/all/gas.exp: Run it.
388 2020-05-14 Nick Clifton <nickc@redhat.com>
390 * po/sv.po: Updated Swedish translation.
392 2020-05-11 Alan Modra <amodra@gmail.com>
394 * testsuite/gas/ppc/scalarquad.d,
395 * testsuite/gas/ppc/scalarquad.s: New test.
396 * testsuite/gas/ppc/ppc.exp: Run it.
398 2020-05-11 Alan Modra <amodra@gmail.com>
400 * testsuite/gas/ppc/rightmost.d,
401 * testsuite/gas/ppc/rightmost.s: New test.
402 * testsuite/gas/ppc/ppc.exp: Run it.
404 2020-05-11 Alan Modra <amodra@gmail.com>
406 * testsuite/gas/ppc/xvtlsbb.d,
407 * testsuite/gas/ppc/xvtlsbb.s: New test.
408 * testsuite/gas/ppc/ppc.exp: Run it.
410 2020-05-11 Alan Modra <amodra@gmail.com>
412 * testsuite/gas/ppc/stringop.d,
413 * testsuite/gas/ppc/stringop.s: New test.
414 * testsuite/gas/ppc/ppc.exp: Run it.
416 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
418 * testsuite/gas/ppc/set_bool.d,
419 * testsuite/gas/ppc/set_bool.s: New test.
420 * testsuite/gas/ppc/ppc.exp: Run it.
422 2020-05-11 Alan Modra <amodra@gmail.com>
424 * testsuite/gas/ppc/bitmanip.d,
425 * testsuite/gas/ppc/bitmanip.s: New test.
426 * testsuite/gas/ppc/ppc.exp: Run it.
428 2020-05-11 Alan Modra <amodra@gmail.com>
430 * testsuite/gas/ppc/genpcv.d,
431 * testsuite/gas/ppc/genpcv.s: New test.
432 * testsuite/gas/ppc/ppc.exp: Run it.
434 2020-05-11 Alan Modra <amodra@gmail.com>
436 * testsuite/gas/ppc/maskmanip.d,
437 * testsuite/gas/ppc/maskmanip.s: New test.
438 * testsuite/gas/ppc/ppc.exp: Run it.
440 2020-05-11 Alan Modra <amodra@gmail.com>
441 Peter Bergner <bergner@linux.ibm.com>
443 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
444 (md_assemble): Check acc specified in correct operand.
445 * testsuite/gas/ppc/outerprod.d,
446 * testsuite/gas/ppc/outerprod.s,
447 * testsuite/gas/ppc/vsx4.d,
448 * testsuite/gas/ppc/vsx4.s: New tests.
449 * testsuite/gas/ppc/ppc.exp: Run them.
451 2020-05-11 Alan Modra <amodra@gmail.com>
453 * testsuite/gas/ppc/simd_perm.d,
454 * testsuite/gas/ppc/simd_perm.s: New test.
455 * testsuite/gas/ppc/ppc.exp: Run it.
457 2020-05-11 Alan Modra <amodra@gmail.com>
459 * testsuite/gas/ppc/int128.d,
460 * testsuite/gas/ppc/int128.s: New test.
461 * testsuite/gas/ppc/ppc.exp: Run it.
463 2020-05-11 Alan Modra <amodra@gmail.com>
465 * testsuite/gas/ppc/vsx_32byte.d,
466 * testsuite/gas/ppc/vsx_32byte.s: New test.
467 * testsuite/gas/ppc/ppc.exp: Run it.
469 2020-05-11 Alan Modra <amodra@gmail.com>
471 * testsuite/gas/ppc/vec_mul.s,
472 * testsuite/gas/ppc/vec_mul.d: New test.
473 * testsuite/gas/ppc/ppc.exp: Run it.
475 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
477 * testsuite/gas/ppc/byte_rev.d,
478 * testsuite/gas/ppc/byte_rev.s: New test.
479 * testsuite/gas/ppc/ppc.exp: Run it.
481 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
483 * testsuite/gas/ppc/power10.d: Add paste. tests.
484 * testsuite/gas/ppc/power10.s: Likewise.
486 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
488 * testsuite/gas/ppc/power10.s: New test.
489 * testsuite/gas/ppc/power10.d: Likewise.
490 * testsuite/gas/ppc/ppc.exp: Run it.
492 2020-05-11 Alan Modra <amodra@gmail.com>
494 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
496 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
497 place of -mfuture/-Mfuture.
498 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
499 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
501 2020-05-06 Nick Clifton <nickc@redhat.com>
503 * po/sv.po: Updated Swedish translation.
505 2020-05-06 Nick Clifton <nickc@redhat.com>
508 * doc/as.texi (Preprocessing): Replace cross reference to not
509 existant document with a URL to the equivalent page in the GCC
512 2020-05-05 Nick Clifton <nickc@redhat.com>
514 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
515 construction of a DWARF-5 directory name table.
516 * testsuite/gas/elf/pr25917.d: Update expected output.
518 2020-05-05 Gunther Nikl <gnikl@justmail.de>
520 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
521 (md_parse_option): Remove initialization of elf_flags.
523 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
526 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
527 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
528 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
530 2020-05-04 Nick Clifton <nickc@redhat.com>
533 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
534 table's existence before looking at its entries.
535 Also do not emit a default directory entry if there are no
538 * testsuite/gas/elf/pr25917.s: New test source file.
539 * testsuite/gas/elf/pr25917.d: New test driver.
540 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
542 2020-04-30 Alex Coplan <alex.coplan@arm.com>
544 * config/tc-aarch64.c (fix_insn): Implement for
545 AARCH64_OPND_UNDEFINED.
546 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
547 * testsuite/gas/aarch64/udf.s: New.
548 * testsuite/gas/aarch64/udf.d: New.
549 * testsuite/gas/aarch64/udf-invalid.s: New.
550 * testsuite/gas/aarch64/udf-invalid.l: New.
551 * testsuite/gas/aarch64/udf-invalid.d: New.
553 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
555 * config/tc-rx.c (elf_flags): Reset default value.
556 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
558 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
560 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
562 (microarch_earliest): New static variable.
563 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
564 simcall opcode has mandatory parameter.
565 (xg_init_global_config): Initialize microarch_earliest.
567 2020-04-29 Nick Clifton <nickc@redhat.com>
570 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
571 IMM0_8S and add support for IMM0_8U.
572 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
573 unsigned 8-bit immediate.
574 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
575 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
577 2020-04-27 Tamar Christina <tamar.christina@arm.com>
579 * NEWS: Add news entry for big-obj.
580 * config/tc-i386.c (i386_target_format): Support new format.
581 * doc/c-i386.texi: Add i386 support.
582 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
583 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
585 2020-04-27 Nick Clifton <nickc@redhat.com>
588 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
589 (assign_file_to_slot): New function. Fills in an entry in the
591 (allocate_filenum): Use new function.
592 (allocate_filename_to_slot): Use new function. If the specified
593 slot entry is already in use, but was chosen automatically then
594 reassign the automatic entry.
596 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
598 * config/tc-i386.c (lfence_before_ret_shl): New member.
599 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
601 (insert_after_load): Issue warning for REP CMPS/SCAS.
602 (insert_before_before): Handle iret, Handle
603 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
604 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
605 -mlfence-before-ret=[none/not/or/shl/yes].
606 Enable -mlfence-before-ret=shl when
607 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
608 (md_show_usage): Ditto.
609 * doc/c-i386.texi: Ditto.
610 * testsuite/gas/i386/i386.exp: Add new testcases.
611 * testsuite/gas/i386/lfence-load-b.d: New.
612 * testsuite/gas/i386/lfence-load-b.e: New.
613 * testsuite/gas/i386/lfence-load.d: Modified.
614 * testsuite/gas/i386/lfence-load.e: New.
615 * testsuite/gas/i386/lfence-load.s: Modified.
616 * testsuite/gas/i386/lfence-ret-a.d: Modified.
617 * testsuite/gas/i386/lfence-ret-b.d: Modified.
618 * testsuite/gas/i386/lfence-ret-c.d: New.
619 * testsuite/gas/i386/lfence-ret-d.d: New.
620 * testsuite/gas/i386/lfence-ret.s: Modified.
621 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
622 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
623 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
624 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
625 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
626 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
627 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
628 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
629 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
630 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
632 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
635 * config/tc-xtensa.c (md_apply_fix): Replace
636 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
637 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
638 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
639 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
640 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
642 2020-04-22 Alan Modra <amodra@gmail.com>
644 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
645 symbol for ".symver .. remove".
646 * doc/as.texi (.symver): Update.
647 * testsuite/gas/symver/symver11.s: Make foo weak.
648 * testsuite/gas/symver/symver11.d: Expect an error.
649 * testsuite/gas/symver/symver7.d: Allow other random symbols.
651 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
653 * testsuite/gas/symver/symver11.s: Add ".balign 8".
655 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
658 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
659 * testsuite/gas/m68k/operands.d: Update.
660 * testsuite/gas/m68k/op68000.d: Update for new error messages.
662 2020-04-21 Tamar Christina <tamar.christina@arm.com>
665 * testsuite/gas/arm/pr24753.d: New test.
666 * testsuite/gas/arm/pr24753.s: New test.
668 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
672 * NEWS: Mention .symver extension.
673 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
675 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
676 add a version name. Add local, hidden and remove visibility
678 (elf_frob_symbol): Handle the list of version names. Update the
679 original symbol to local, hidden or remove it from the symbol
681 (elf_frob_file_before_adjust): Handle the list of version names.
682 * config/obj-elf.h (elf_visibility): New.
683 (elf_versioned_name_list): Likewise.
684 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
685 and visibility. Change versioned_name pointer to struct
686 elf_versioned_name_list.
687 * doc/as.texi: Update .symver directive.
688 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
689 error checking tests.
690 * testsuite/gas/symver/symver6.d: New file.
691 * testsuite/gas/symver/symver7.d: Likewise.
692 * testsuite/gas/symver/symver7.s: Likewise.
693 * testsuite/gas/symver/symver8.d: Likewise.
694 * testsuite/gas/symver/symver8.s: Likewise.
695 * testsuite/gas/symver/symver9.s: Likewise.
696 * testsuite/gas/symver/symver9a.d: Likewise.
697 * testsuite/gas/symver/symver9b.d: Likewise.
698 * testsuite/gas/symver/symver10.s: Likewise.
699 * testsuite/gas/symver/symver10a.d: Likewise.
700 * testsuite/gas/symver/symver10b.d: Likewise.
701 * testsuite/gas/symver/symver11.d: Likewise.
702 * testsuite/gas/symver/symver11.s: Likewise.
703 * testsuite/gas/symver/symver12.d: Likewise.
704 * testsuite/gas/symver/symver12.s: Likewise.
705 * testsuite/gas/symver/symver13.d: Likewise.
706 * testsuite/gas/symver/symver13.s: Likewise.
707 * testsuite/gas/symver/symver14.d: Likewise.
708 * testsuite/gas/symver/symver14.l: Likewise.
709 * testsuite/gas/symver/symver15.d: Likewise.
710 * testsuite/gas/symver/symver15.l: Likewise.
711 * testsuite/gas/symver/symver6.l: Removed.
712 * testsuite/gas/symver/symver6.s: Updated.
714 2020-04-20 Sudakshina Das <sudi.das@arm.com>
716 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
718 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
719 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
720 * testsuite/gas/aarch64/system.d: Update.
722 2020-04-20 Sudakshina Das <sudi.das@arm.com>
724 * testsuite/gas/aarch64/bti.d: Update -march option.
725 * testsuite/gas/aarch64/illegal-bti.d: Remove.
726 * testsuite/gas/aarch64/illegal-bti.l: Remove.
727 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
728 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
730 2020-04-17 Alan Modra <amodra@gmail.com>
732 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
734 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
735 Nick Clifton <nickc@redhat.com>
738 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
740 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
742 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
743 targets running this test.
745 2020-02-16 David Faust <david.faust@oracle.com>
747 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
748 * testsuite/gas/bpf/jump32.s: New file.
749 * testsuite/gas/bpf/jump32.d: Likewise.
751 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
753 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
756 2020-04-08 Gunther Nikl <gnikl@justmail.de>
758 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
759 (md_pcrel_from): Remove prototytpe.
760 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
762 (md_pcrel_from_section): Remove duplicate prototype.
763 * tc.h (md_pcrel_from_section): Add prototype.
764 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
765 * config/tc-arc.h (md_pcrel_from_section): Likewise.
766 * config/tc-arm.h (md_pcrel_from_section): Likewise.
767 * config/tc-avr.h (md_pcrel_from_section): Likewise.
768 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
769 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
770 * config/tc-csky.h (md_pcrel_from_section): Likewise.
771 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
772 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
773 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
774 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
775 * config/tc-frv.h (md_pcrel_from_section): Likewise.
776 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
777 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
778 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
779 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
780 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
781 * config/tc-mep.h (md_pcrel_from_section): Likewise.
782 * config/tc-metag.h (md_pcrel_from_section): Likewise.
783 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
784 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
785 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
786 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
787 * config/tc-mt.h (md_pcrel_from_section): Likewise.
788 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
789 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
790 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
791 * config/tc-rx.h (md_pcrel_from_section): Likewise.
792 * config/tc-s390.h (md_pcrel_from_section): Likewise.
793 * config/tc-sh.h (md_pcrel_from_section): Likewise.
794 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
795 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
796 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
797 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
798 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
799 md_apply_fix3): Delete prototypes.
801 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
803 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
806 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
808 * doc/c-z80.texi: Fix @xref warnings.
810 2020-04-07 Lili Cui <lili.cui@intel.com>
812 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
813 (cpu_noarch): Likewise.
814 * doc/c-i386.texi: Document TSXLDTRK.
815 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
816 * testsuite/gas/i386/tsxldtrk.d: Likewise.
817 * testsuite/gas/i386/tsxldtrk.s: Likewise.
818 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
820 2020-04-02 Lili Cui <lili.cui@intel.com>
822 * config/tc-i386.c (cpu_arch): Add .serialize.
823 (cpu_noarch): Likewise.
824 * doc/c-i386.texi: Document serialize.
825 * testsuite/gas/i386/i386.exp: Run serialize tests
826 * testsuite/gas/i386/serialize.d: Likewise.
827 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
828 * testsuite/gas/i386/serialize.s: Likewise.
830 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
832 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
833 * testsuite/gas/elf/section12b.d: Likewise.
834 * testsuite/gas/elf/section16a.d: Likewise.
835 * testsuite/gas/elf/section16b.d: Likewise.
837 2020-04-02 Gunther Nikl <gnikl@justmail.de>
839 * config/tc-m68k.c (m68k_ip): Fix range check for index register
840 with a suppressed address register.
842 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
845 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
846 * testsuite/gas/i386/localpic.s: Add a test for relocation
847 against local absolute symbol.
848 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
849 * testsuite/gas/i386/localpic.d: Updated.
850 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
851 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
853 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
856 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
857 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
858 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
859 testsuite/gas/i386/x86-64-jump.d.
860 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
861 Incorporate changes to
862 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
863 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
864 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
865 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
866 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
868 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
872 * dwarf2dbg.c: Do not include "bignum.h".
874 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
876 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
877 * testsuite/gas/riscv/alias-csr.s: Likewise.
878 * testsuite/gas/riscv/no-aliases-csr.d: Move this
879 to priv-reg-pseudo-noalias.
880 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
881 * testsuite/gas/riscv/bad-csr.l: Likewise.
882 * testsuite/gas/riscv/bad-csr.s: Likewise.
883 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
884 * testsuite/gas/riscv/satp.s: Likewise.
885 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
886 csr instruction, including alias-csr testcase.
887 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
888 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
889 pseudo instruction with objdump -Mno-aliases.
890 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
891 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
892 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
893 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
894 * testsuite/gas/riscv/priv-reg.s: Likewise.
895 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
896 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
897 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
899 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
901 * config/obj-coff.c (obj_coff_section): Set the bss flag on
902 sections with the "b" attribute.
904 2020-03-22 Alan Modra <amodra@gmail.com>
906 * testsuite/gas/s12z/truncated.d: Update expected output.
908 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
911 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
912 * doc/c-z80.texi: Update documentation.
914 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
919 Fix disassembling ED+A4/AC/B4/BC opcodes.
920 Fix assembling lines containing colonless label and instruction
921 with first operand inside parentheses.
922 Fix registration of unsupported by target CPU registers.
923 * config/tc-z80.c: See above.
924 * config/tc-z80.h: See above.
925 * testsuite/gas/z80/colonless.d: Update test.
926 * testsuite/gas/z80/colonless.s: Likewise.
927 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
928 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
929 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
930 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
931 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
932 * testsuite/gas/z80/unsup_regs.s: Likewise.
933 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
934 * testsuite/gas/z80/z80.exp: Likewise.
935 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
936 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
937 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
939 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
942 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
943 (parse_operands): Handle new operand codes.
944 (do_neon_dyadic_long): Make shape check accept the scalar variants.
945 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
946 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
947 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
948 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
949 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
950 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
951 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
953 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
955 * NEWS: Mention x86 assembler options for CVE-2020-0551.
957 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
959 * testsuite/gas/i386/i386.exp: Run new tests.
960 * testsuite/gas/i386/lfence-byte.d: New file.
961 * testsuite/gas/i386/lfence-byte.e: Likewise.
962 * testsuite/gas/i386/lfence-byte.s: Likewise.
963 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
964 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
965 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
966 * testsuite/gas/i386/lfence-indbr.e: Likewise.
967 * testsuite/gas/i386/lfence-indbr.s: Likewise.
968 * testsuite/gas/i386/lfence-load.d: Likewise.
969 * testsuite/gas/i386/lfence-load.s: Likewise.
970 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
971 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
972 * testsuite/gas/i386/lfence-ret.s: Likewise.
973 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
974 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
975 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
976 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
977 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
978 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
979 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
980 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
981 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
982 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
983 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
984 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
986 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
988 * config/tc-i386.c (lfence_after_load): New.
989 (lfence_before_indirect_branch_kind): New.
990 (lfence_before_indirect_branch): New.
991 (lfence_before_ret_kind): New.
992 (lfence_before_ret): New.
995 (insert_lfence_after): New.
996 (insert_lfence_before): New.
997 (md_assemble): Call insert_lfence_before and insert_lfence_after.
999 (OPTION_MLFENCE_AFTER_LOAD): New.
1000 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1001 (OPTION_MLFENCE_BEFORE_RET): New.
1002 (md_longopts): Add -mlfence-after-load=,
1003 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1004 (md_parse_option): Handle -mlfence-after-load=,
1005 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1006 (md_show_usage): Display -mlfence-after-load=,
1007 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1008 (i386_cons_align): New.
1009 * config/tc-i386.h (i386_cons_align): New.
1010 (md_cons_align): New.
1011 * doc/c-i386.texi: Document -mlfence-after-load=,
1012 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1014 2020-03-11 Nick Clifton <nickc@redhat.com>
1018 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1019 (DWARF2_FILE_SIZE_NAME): Default to -1.
1020 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1021 whichever is higher.
1022 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1023 (NUM_MD5_BYTES): Define.
1024 (struct file entry): Add md5 field.
1025 (get_filenum): Delete and replace with...
1026 (get_basename): New function.
1027 (get_directory_table_entry): New function.
1028 (allocate_filenum): New function.
1029 (allocate_filename_to_slot): New function.
1030 (dwarf2_where): Use new functions.
1031 (dwarf2_directive_filename): Add support for extended .file
1033 (dwarf2_directive_loc): Allow the use of file number zero with
1035 (out_file_list): Rename to...
1036 (out_dir_and_file_list): Add DWARF 5 support.
1037 (out_debug_line): Emit extra values into the section header for
1039 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1040 * doc/as.texi (.file): Update the description of this pseudo-op.
1041 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1042 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1043 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1044 * NEWS: Mention the new feature.
1046 2020-03-10 Alan Modra <amodra@gmail.com>
1048 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1049 to avoid signed overflow.
1050 * config/tc-mcore.c (md_assemble): Likewise.
1051 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1052 * config/tc-nds32.c (SET_ADDEND): Likewise.
1053 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1055 2020-03-09 Jan Beulich <jbeulich@suse.com>
1057 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1058 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1059 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1061 2020-03-07 Alan Modra <amodra@gmail.com>
1063 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
1066 2020-03-06 Nick Clifton <nickc@redhat.com>
1069 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
1070 0 if the dwarf_level is 5 or more. Complain if a filename follows
1072 * testsuite/gas/elf/dwarf-5-file0.s: New test.
1073 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
1074 * testsuite/gas/elf/elf.exp: Run the new test.
1077 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
1078 * doc/as.texi: Fix another typo.
1080 2020-03-06 Nick Clifton <nickc@redhat.com>
1083 * as.c (dwarf_level): Define.
1084 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
1085 (parse_args): Add support for the new options.
1086 as.h (dwarf_level): Prototype.
1087 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
1089 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
1090 (DWARF2_LINE_VERSION): Remove definition.
1091 * doc/as.texi: Document the new options.
1093 2020-03-06 Nick Clifton <nickc@redhat.com>
1096 * as.c (main): Allow matching input and outputs when they are
1099 2020-03-06 Jan Beulich <jbeulich@suse.com>
1101 * config/tc-i386.c (match_mem_size): Generalize broadcast special
1103 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
1104 one of byte/word/dword/qword is set alongside a SIMD register in
1105 a template's operand.
1107 2020-03-06 Jan Beulich <jbeulich@suse.com>
1109 * config/tc-i386.c (match_template): Extend code in logic
1110 rejecting certain suffixes in certain modes to also cover mask
1111 register use and VecSIB. Drop special casing of broadcast. Skip
1112 immediates in the check.
1114 2020-03-06 Jan Beulich <jbeulich@suse.com>
1116 * config/tc-i386.c (match_template): Fold duplicate code in
1117 logic rejecting certain suffixes in certain modes. Drop
1120 2020-03-06 Jan Beulich <jbeulich@suse.com>
1122 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
1123 alongside !norex64 ones.
1124 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
1125 with both 32- and 64-bit GPR operands.
1126 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
1127 32- and 64-bit GPR operands.
1128 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
1129 testsuite/gas/i386/x86-64-avx512bw.d,
1130 testsuite/gas/i386/x86-64-avx512f-intel.d,
1131 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
1133 2020-03-06 Jan Beulich <jbeulich@suse.com>
1135 * config/tc-i386.c (md_assemble): Drop use of rex64.
1136 (process_suffix): For REX.W for 64-bit CRC32.
1138 2020-03-06 Jan Beulich <jbeulich@suse.com>
1140 * config/tc-i386.c (i386_addressing_mode): For 32-bit
1141 addressing for MPX insns without base/index.
1142 * testsuite/gas/i386/mpx-16bit.s,
1143 * testsuite/gas/i386/mpx-16bit.d: New.
1144 * testsuite/gas/i386/i386.exp: Run new test.
1146 2020-03-06 Jan Beulich <jbeulich@suse.com>
1148 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
1149 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
1150 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
1151 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
1152 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
1153 as well as a BSWAP one.
1154 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
1155 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
1156 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
1157 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
1158 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
1159 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
1160 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
1161 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
1162 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
1163 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
1164 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
1165 testsuite/gas/i386/vmx.d: Adjust expectations.
1167 2020-03-06 Jan Beulich <jbeulich@suse.com>
1169 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
1170 from having their operands swapped.
1171 * testsuite/gas/i386/waitpkg.s,
1172 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
1173 3-operand cases as well as testing of 16-bit code generation.
1174 * testsuite/gas/i386/waitpkg.d,
1175 testsuite/gas/i386/waitpkg-intel.d,
1176 testsuite/gas/i386/x86-64-waitpkg.d,
1177 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
1179 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
1181 * config/tc-riscv.c (percent_op_utype): Support the modifier
1183 * doc/c-riscv.texi: Add documentation.
1184 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
1185 modifier %got_pcrel_hi.
1186 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
1187 * testsuite/gas/riscv/relax-reloc.d: Likewise.
1188 * testsuite/gas/riscv/relax-reloc.s: Likewise.
1190 * doc/c-riscv.texi (relocation modifiers): Add documentation.
1191 (RISC-V-Formats): Update the section name from "Instruction Formats"
1192 to "RISC-V Instruction Formats".
1194 2020-03-04 Alexandre Oliva <oliva@adacore.com>
1196 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
1197 detected in a section which does not have at least 4 byte
1199 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
1200 * testsuite/gas/arm/ldr-t.s: Likewise.
1201 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
1202 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
1203 disassembly, ignoring any NOPs that may have been inserted because
1204 of section alignment.
1205 * testsuite/gas/arm/ldr-t.d: Likewise.
1207 2020-03-04 Jan Beulich <jbeulich@suse.com>
1209 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
1210 * doc/c-i386.texi: Mention sev_es.
1211 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
1212 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
1214 * testsuite/gas/i386/arch-13-znver1.d,
1215 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
1217 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1219 * config/tc-i386.c (match_template): Replace ignoresize and
1220 defaultsize with mnemonicsize.
1221 (process_suffix): Likewise.
1223 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1226 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
1227 instruction LD IY,(HL).
1228 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
1229 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
1230 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
1231 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
1233 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1236 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
1237 x86-64-default-suffix-avx.
1238 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
1239 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
1240 * testsuite/gas/i386/noreg64.d: Updated.
1241 * testsuite/gas/i386/noreg64.l: Likewise.
1242 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
1243 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
1244 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
1246 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1249 * config/tc-z80.c (contains_register): Prevent an illegal memory
1250 access when checking an expression for a register name.
1252 2020-03-03 Alan Modra <amodra@gmail.com>
1254 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
1257 2020-03-02 Alan Modra <amodra@gmail.com>
1259 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
1260 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
1262 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
1263 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
1264 (s3_s_score_lcomm): Likewise.
1265 * config/tc-score7.c: Similarly.
1266 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
1268 2020-02-28 YunQiang Su <syq@debian.org>
1271 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
1272 to handle multi-labels.
1273 (has_label_name): New.
1275 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
1277 * config/tc-arm.c (enum pred_instruction_type): Remove
1278 NEUTRAL_IT_NO_VPT_INSN predication type.
1279 (cxn_handle_predication): Modify to require condition suffixes.
1280 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
1281 * testsuite/gas/arm/cde-scalar.s: Update test.
1282 * testsuite/gas/arm/cde-warnings.l: Update test.
1283 * testsuite/gas/arm/cde-warnings.s: Update test.
1285 2020-02-26 Alan Modra <amodra@gmail.com>
1287 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
1288 N_() on empty string.
1290 2020-02-26 Alan Modra <amodra@gmail.com>
1292 * read.c (read_a_source_file): Call strncpy with length one
1293 less than size of original_case_string.
1295 2020-02-26 Alan Modra <amodra@gmail.com>
1297 * config/obj-elf.c: Indent labels correctly.
1298 * config/obj-macho.c: Likewise.
1299 * config/tc-aarch64.c: Likewise.
1300 * config/tc-alpha.c: Likewise.
1301 * config/tc-arm.c: Likewise.
1302 * config/tc-cr16.c: Likewise.
1303 * config/tc-crx.c: Likewise.
1304 * config/tc-frv.c: Likewise.
1305 * config/tc-i386-intel.c: Likewise.
1306 * config/tc-i386.c: Likewise.
1307 * config/tc-ia64.c: Likewise.
1308 * config/tc-mn10200.c: Likewise.
1309 * config/tc-mn10300.c: Likewise.
1310 * config/tc-nds32.c: Likewise.
1311 * config/tc-riscv.c: Likewise.
1312 * config/tc-s12z.c: Likewise.
1313 * config/tc-xtensa.c: Likewise.
1314 * config/tc-z80.c: Likewise.
1316 * symbols.c: Likewise.
1317 * write.c: Likewise.
1319 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
1321 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
1322 we are assembling instruction with CSR. Call riscv_csr_read_only_check
1323 after parsing all arguments.
1324 (enum csr_insn_type): New enum is used to classify the CSR instruction.
1325 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
1326 are used to check if we write a read-only CSR by the CSR instruction.
1327 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
1328 all CSR for the read-only CSR checking.
1329 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1330 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1331 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
1332 all CSR instructions for the read-only CSR checking.
1333 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1334 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
1336 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
1337 (riscv_opts): Initialize it.
1338 (reg_lookup_internal): Check the `riscv_opts.csr_check`
1339 before doing the CSR checking.
1340 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
1341 (md_longopts): Add mcsr-check and mno-csr-check.
1342 (md_parse_option): Handle new enum option values.
1343 (s_riscv_option): Handle new long options.
1344 * doc/c-riscv.texi: Add description for the new .option and assembler
1346 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
1348 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1350 * config/tc-riscv.c (csr_extra_hash): New.
1351 (enum riscv_csr_class): New enum. Used to decide
1352 whether or not this CSR is legal in the current ISA string.
1353 (struct riscv_csr_extra): New structure to hold all extra information
1355 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
1356 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
1357 Call hash_reg_name to insert CSR address into reg_names_hash.
1358 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
1359 Decide whether the CSR is valid according to the csr_extra_hash.
1360 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
1361 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
1362 not a boolean. This is same as riscv_init_csr_hash, so keep the
1364 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
1365 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
1366 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
1367 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
1368 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
1369 f-ext CSR are not allowed.
1370 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
1371 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
1372 source file is `priv-reg.s`, and the ISA is rv64if, so the
1373 rv32-only CSR are not allowed.
1374 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1376 2020-02-21 Alan Modra <amodra@gmail.com>
1378 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
1379 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
1381 2020-02-21 Alan Modra <amodra@gmail.com>
1384 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
1385 on section size adjustment, instead perform another write if
1386 exec header size is larger than section size.
1388 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1390 * doc/c-riscv.texi: Add the doc entries for -march-attr/
1391 -mno-arch-attr command line options.
1393 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1395 * testsuite/gas/riscv/c-add-addi.d: New testcase.
1396 * testsuite/gas/riscv/c-add-addi.s: Likewise.
1398 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1401 * config/tc-z80.c (md_parse_option): Do not use an underscore
1402 prefix for local labels in SDCC compatability mode.
1403 (z80_start_line_hook): Remove SDCC dollar label support.
1404 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
1405 * testsuite/gas/z80/sdcc.s: Likewise.
1407 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1410 * config/tc-z80.c: Add -march option.
1411 * doc/as.texi: Update Z80 documentation.
1412 * doc/c-z80.texi: Likewise.
1413 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
1414 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
1415 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
1416 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1417 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
1418 * testsuite/gas/z80/gbz80_all.d: Likewise.
1419 * testsuite/gas/z80/r800_extra.d: Likewise.
1420 * testsuite/gas/z80/r800_ii8.d: Likewise.
1421 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
1422 * testsuite/gas/z80/sdcc.d: Likewise.
1423 * testsuite/gas/z80/z180.d: Likewise.
1424 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
1425 * testsuite/gas/z80/z80_doc.d: Likewise.
1426 * testsuite/gas/z80/z80_ii8.d: Likewise.
1427 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
1428 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
1429 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
1430 * testsuite/gas/z80/z80_sli.d: Likewise.
1431 * testsuite/gas/z80/z80n_all.d: Likewise.
1432 * testsuite/gas/z80/z80n_reloc.d: Likewise.
1434 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
1436 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
1437 with GNU_PROPERTY_X86_FEATURE_2_MMX.
1438 * testsuite/gas/i386/i386.exp: Run property-3 and
1440 * testsuite/gas/i386/property-3.d: New file.
1441 * testsuite/gas/i386/property-3.s: Likewise.
1442 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
1444 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
1446 * config/tc-i386.c (cpu_arch): Add .popcnt.
1447 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
1448 Add a tab before @samp{.sse4a}.
1450 2020-02-17 Jan Beulich <jbeulich@suse.com>
1452 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
1453 for AddrPrefixOpReg templates. Combine the two pieces of
1454 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
1457 2020-02-17 Jan Beulich <jbeulich@suse.com>
1460 * config/tc-i386.c (md_assemble): Also suppress operand
1461 swapping for MONITOR{,X} and MWAIT{,X}.
1462 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
1463 Add Intel syntax monitor/mwait tests.
1464 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
1465 Adjust expectations.
1466 *testsuite/gas/i386/sse3-intel.d,
1467 testsuite/gas/i386/x86-64-sse3-intel.d: New.
1468 * testsuite/gas/i386/i386.exp: Run new tests.
1470 2020-02-17 Jan Beulich <jbeulich@suse.com>
1473 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
1474 [XYZ]MMWord memory operand ambiguity recognition logic (largely
1476 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
1478 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
1479 * testsuite/gas/i386/avx512dq-inval.l,
1480 testsuite/gas/i386/inval-avx.l,
1481 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
1482 * testsuite/gas/i386/avx512vl-ambig.s,
1483 testsuite/gas/i386/avx512vl-ambig.l: New.
1484 * testsuite/gas/i386/i386.exp: Run new test.
1486 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
1488 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
1490 * doc/c-i386.texi: Document sse4a and nosse4a.
1492 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1494 * doc/c-i386.texi: Remove the old movsx and movzx documentation
1497 2020-02-14 Jan Beulich <jbeulich@suse.com>
1500 * config/tc-i386.c (md_assemble): Move movsx/movzx special
1502 (process_suffix): ... here. Consider just the first operand
1504 (check_long_reg): Drop opcode 0x63 special case again.
1505 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
1506 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
1507 Move ambiguous operand size tests ...
1508 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1509 testsuite/gas/i386/noreg64.s: ... here.
1510 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
1511 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
1512 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1513 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
1514 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
1515 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1516 testsuite/gas/i386/x86-64-movsxd.d,
1517 testsuite/gas/i386/x86-64-movsxd-intel.d,
1518 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
1519 Adjust expectations.
1520 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
1521 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
1522 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
1523 * testsuite/gas/i386/i386.exp: Run new tests.
1525 2020-02-14 Jan Beulich <jbeulich@suse.com>
1527 * config/tc-i386.c (process_operands): Also skip segment
1528 override prefix emission if it matches an already present one.
1529 * testsuite/gas/i386/prefix32.s: Add double segment override
1531 * testsuite/gas/i386/prefix32.l: Adjust expectations.
1533 2020-02-14 Jan Beulich <jbeulich@suse.com>
1535 * config/tc-i386.c (process_operands): Drop ineffectual segment
1536 overrides when optimizing.
1537 * testsuite/gas/i386/lea-optimize.d: New.
1538 * testsuite/gas/i386/i386.exp: Run new test.
1540 2020-02-14 Jan Beulich <jbeulich@suse.com>
1542 * config/tc-i386.c (process_operands): Also check insn prefix
1543 for ineffectual segment override warning. Don't cover possible
1544 VEX/EVEX encoded insns there.
1545 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
1546 testsuite/gas/i386/lea.e: New.
1547 * testsuite/gas/i386/i386.exp: Run new test.
1549 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1552 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
1555 2020-02-13 Fangrui Song <maskray@google.com>
1556 H.J. Lu <hongjiu.lu@intel.com>
1559 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
1560 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
1561 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
1562 * testsuite/gas/i386/relax-5.d: New file.
1563 * testsuite/gas/i386/relax-5.s: Likewise.
1564 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1565 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
1567 2020-02-13 Jan Beulich <jbeulich@suse.com>
1569 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
1572 2020-02-12 Jan Beulich <jbeulich@suse.com>
1574 * config/tc-i386.c (avx512): New (at file scope), moved from
1575 (check_VecOperands): ... here.
1576 (process_suffix): Add [XYZ]MMword operand size handling.
1577 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
1578 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
1580 * testsuite/gas/i386/avx512dq-inval.l,
1581 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
1583 2020-02-12 Jan Beulich <jbeulich@suse.com>
1586 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
1588 * config/tc-i386-intel.c (i386_intel_operand): Also handle
1589 CALL/JMP in O_tbyte_ptr case.
1590 * doc/c-i386.texi: Mention far call and full pointer load ISA
1592 * testsuite/gas/i386/x86-64-branch-3.s,
1593 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
1594 * testsuite/gas/i386/x86-64-branch-3.d,
1595 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
1596 * testsuite/gas/i386/x86-64-branch-5.l,
1597 testsuite/gas/i386/x86-64-branch-5.s: New.
1598 * testsuite/gas/i386/i386.exp: Run new test.
1600 2020-02-12 Jan Beulich <jbeulich@suse.com>
1603 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
1604 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
1605 64-bit-only warning.
1606 (check_word_reg): Consistently error on mismatching register
1608 * testsuite/gas/i386/general.s: Replace dword GPR with word one
1609 for movw. Replace suffix / GPR for orb.
1610 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
1611 byte GPRs as well as ones for inb/outb with a word accumulator.
1612 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
1613 testsuite/gas/i386/inval.l: Adjust expectations.
1615 2020-02-12 Jan Beulich <jbeulich@suse.com>
1617 * config/tc-i386.c (operand_type_register_match): Also fall
1618 through initial two if()-s when the template allows for a GPR
1619 operand. Adjust comment.
1621 2020-02-11 Jan Beulich <jbeulich@suse.com>
1623 (struct _i386_insn): New field "short_form".
1624 (optimize_encoding): Drop setting of shortform field.
1625 (process_suffix): Set i.short_form. Replace shortform use.
1626 (process_operands): Replace shortform use.
1628 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
1630 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
1631 loop initial declaration.
1633 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
1635 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
1636 instructions that can have 5 arguments.
1637 (enum operand_parse_code): Add new operands.
1638 (parse_operands): Account for new operands.
1640 (enum neon_shape_el): Introduce P suffixes for coprocessor.
1641 (neon_select_shape): Account for P suffix.
1642 (LOW1): Move macro to global position.
1643 (HI4): Move macro to global position.
1644 (vcx_assign_vec_d): New.
1645 (vcx_assign_vec_m): New.
1646 (vcx_assign_vec_n): New.
1647 (enum vcx_reg_type): New.
1648 (vcx_get_reg_type): New.
1649 (vcx_size_pos): New.
1651 (vcx_handle_shape): New.
1652 (vcx_ensure_register_in_range): New.
1653 (vcx_handle_register_arguments): New.
1654 (vcx_handle_insn_block): New.
1655 (vcx_handle_common_checks): New.
1659 * testsuite/gas/arm/cde-missing-fp.d: New test.
1660 * testsuite/gas/arm/cde-missing-fp.l: New test.
1661 * testsuite/gas/arm/cde-missing-mve.d: New test.
1662 * testsuite/gas/arm/cde-missing-mve.l: New test.
1663 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
1664 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
1665 * testsuite/gas/arm/cde-mve.s: New test.
1666 * testsuite/gas/arm/cde-warnings.l:
1667 * testsuite/gas/arm/cde-warnings.s:
1668 * testsuite/gas/arm/cde.d:
1669 * testsuite/gas/arm/cde.s:
1671 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
1672 Matthew Malcomson <matthew.malcomson@arm.com>
1674 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
1675 CDE coprocessor that can be enabled.
1676 (enum pred_instruction_type): New pred type.
1677 (BAD_NO_VPT): New error message.
1678 (BAD_CDE): New error message.
1679 (BAD_CDE_COPROC): New error message.
1680 (enum operand_parse_code): Add new immediate operands.
1681 (parse_operands): Account for new immediate operands.
1682 (check_cde_operand): New.
1683 (cde_coproc_enabled): New.
1684 (cde_coproc_pos): New.
1685 (cde_handle_coproc): New.
1686 (cxn_handle_predication): New.
1687 (do_custom_instruction_1): New.
1688 (do_custom_instruction_2): New.
1689 (do_custom_instruction_3): New.
1702 (handle_pred_state): Define new IT block behaviour.
1703 (insns): Add newn CX*{,d}{,a} instructions.
1704 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
1705 Define new cdecp extension strings.
1706 * doc/c-arm.texi: Document new cdecp extension arguments.
1707 * testsuite/gas/arm/cde-scalar.d: New test.
1708 * testsuite/gas/arm/cde-scalar.s: New test.
1709 * testsuite/gas/arm/cde-warnings.d: New test.
1710 * testsuite/gas/arm/cde-warnings.l: New test.
1711 * testsuite/gas/arm/cde-warnings.s: New test.
1712 * testsuite/gas/arm/cde.d: New test.
1713 * testsuite/gas/arm/cde.s: New test.
1715 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
1718 * config/tc-i386.c (intel64): Renamed to ...
1720 (match_template): Accept Intel64 only instruction by default.
1721 (i386_displacement): Updated.
1722 (md_parse_option): Updated.
1723 * c-i386.texi: Update -mamd64/-mintel64 documentation.
1724 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
1725 -mamd64 to x86-64-sysenter-amd.
1726 * testsuite/gas/i386/x86-64-sysenter.d: New file.
1728 2020-02-10 Alan Modra <amodra@gmail.com>
1730 * config/obj-elf.c (obj_elf_change_section): Error for section
1731 type, attr or entsize changes in assembly.
1732 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
1733 * testsuite/gas/elf/section5.l: Update.
1735 2020-02-10 Alan Modra <amodra@gmail.com>
1737 * output-file.c (output_file_close): Do a normal close when
1738 flag_always_generate_output.
1739 * write.c (write_object_file): Don't stop output when
1740 flag_always_generate_output.
1742 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
1745 * config/tc-z80.c: Add -gbz80 command line option to generate code
1746 for the GameBoy Z80. Add support for generating DWARF.
1747 * config/tc-z80.h: Add support for DWARF debug information
1749 * doc/c-z80.texi: Document new command line option.
1750 * testsuite/gas/z80/gbz80_all.d: New file.
1751 * testsuite/gas/z80/gbz80_all.s: New file.
1752 * testsuite/gas/z80/z80.exp: Run the new tests.
1753 * testsuite/gas/z80/z80n_all.d: New file.
1754 * testsuite/gas/z80/z80n_all.s: New file.
1755 * testsuite/gas/z80/z80n_reloc.d: New file.
1757 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1760 * config/obj-elf.c (get_section): Also check
1761 linked_to_symbol_name.
1762 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
1763 (obj_elf_parse_section_letters): Handle the 'o' flag.
1764 (build_group_lists): Renamed to ...
1765 (build_additional_section_info): This. Set elf_linked_to_section
1766 from map_head.linked_to_symbol_name.
1767 (elf_adjust_symtab): Updated.
1768 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
1769 * doc/as.texi: Document the 'o' flag.
1770 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
1771 * testsuite/gas/elf/section18.d: New file.
1772 * testsuite/gas/elf/section18.s: Likewise.
1773 * testsuite/gas/elf/section19.d: Likewise.
1774 * testsuite/gas/elf/section19.s: Likewise.
1775 * testsuite/gas/elf/section20.d: Likewise.
1776 * testsuite/gas/elf/section20.s: Likewise.
1777 * testsuite/gas/elf/section21.d: Likewise.
1778 * testsuite/gas/elf/section21.l: Likewise.
1779 * testsuite/gas/elf/section21.s: Likewise.
1781 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1783 * NEWS: Mention x86 assembler options to align branches for
1786 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
1788 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
1789 only for ELF targets.
1790 * testsuite/gas/i386/unique.d: Don't xfail.
1791 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1793 2020-02-06 Alan Modra <amodra@gmail.com>
1795 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
1796 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1798 2020-02-06 Alan Modra <amodra@gmail.com>
1800 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
1801 xfail, and rename test.
1802 * testsuite/gas/elf/section12b.d: Likewise.
1803 * testsuite/gas/elf/section16a.d: Likewise.
1804 * testsuite/gas/elf/section16b.d: Likewise.
1806 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
1809 * config/obj-elf.c (section_match): Removed.
1810 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
1812 (obj_elf_change_section): Replace info and group_name arguments
1813 with match_p. Also update the section ID and flags from match_p.
1814 (obj_elf_section): Handle "unique,N". Update call to
1815 obj_elf_change_section.
1816 * config/obj-elf.h (elf_section_match): New.
1817 (obj_elf_change_section): Updated.
1818 * config/tc-arm.c (start_unwind_section): Update call to
1819 obj_elf_change_section.
1820 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
1821 * config/tc-microblaze.c (microblaze_s_data): Likewise.
1822 (microblaze_s_sdata): Likewise.
1823 (microblaze_s_rdata): Likewise.
1824 (microblaze_s_bss): Likewise.
1825 * config/tc-mips.c (s_change_section): Likewise.
1826 * config/tc-msp430.c (msp430_profiler): Likewise.
1827 * config/tc-rx.c (parse_rx_section): Likewise.
1828 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
1829 * doc/as.texi: Document "unique,N" in .section directive.
1830 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
1831 * testsuite/gas/elf/section15.d: New file.
1832 * testsuite/gas/elf/section15.s: Likewise.
1833 * testsuite/gas/elf/section16.s: Likewise.
1834 * testsuite/gas/elf/section16a.d: Likewise.
1835 * testsuite/gas/elf/section16b.d: Likewise.
1836 * testsuite/gas/elf/section17.d: Likewise.
1837 * testsuite/gas/elf/section17.l: Likewise.
1838 * testsuite/gas/elf/section17.s: Likewise.
1839 * testsuite/gas/i386/unique.d: Likewise.
1840 * testsuite/gas/i386/unique.s: Likewise.
1841 * testsuite/gas/i386/x86-64-unique.d: Likewise.
1842 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
1844 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
1846 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
1848 2020-02-01 Anthony Green <green@moxielogic.com>
1850 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
1852 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
1854 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
1857 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
1860 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
1861 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
1863 * testsuite/gas/arm/mve_dsp.d: New test.
1865 2020-01-31 Nick Clifton <nickc@redhat.com>
1867 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
1868 rather than BFD_RELOC_NONE.
1870 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1872 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
1873 to support VLDMIA instruction for MVE.
1874 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
1875 instruction for MVE.
1876 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
1877 instruction for MVE.
1878 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
1879 instruction for MVE.
1880 * testsuite/gas/arm/mve-ldst.d: New test.
1881 * testsuite/gas/arm/mve-ldst.s: Likewise.
1883 2020-01-31 Nick Clifton <nickc@redhat.com>
1885 * po/fr.po: Updated French translation.
1886 * po/ru.po: Updated Russian translation.
1888 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
1890 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
1892 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
1893 * testsuite/gas/aarch64/sve-movprfx_28.d,
1894 * testsuite/gas/aarch64/sve-movprfx_28.l,
1895 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
1897 2020-01-30 Jan Beulich <jbeulich@suse.com>
1899 * config/tc-i386.c (output_disp): Tighten base_opcode check.
1900 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
1901 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
1902 Adjust expectations.
1904 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
1906 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
1907 * testsuite/gas/bpf/alu-be.d: Likewise.
1908 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
1909 * testsuite/gas/bpf/alu32-be.d: Likewise.
1911 2020-01-30 Jan Beulich <jbeulich@suse.com>
1913 * testsuite/gas/i386/x86-64-branch-2.s,
1914 testsuite/gas/i386/x86-64-branch-4.s,
1915 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
1916 * testsuite/gas/i386/ilp32/x86-64-branch.d,
1917 testsuite/gas/i386/x86-64-branch-2.d,
1918 testsuite/gas/i386/x86-64-branch-4.l,
1919 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
1921 2020-01-30 Jan Beulich <jbeulich@suse.com>
1923 * config/tc-i386.c (process_suffix): .
1924 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
1925 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
1927 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
1929 testsuite/gas/i386/x86_64.s: Add RETF cases.
1930 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1931 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
1932 testsuite/gas/i386/x86-64-opcode.d,
1933 testsuite/gas/i386/x86-64-suffix-intel.d,
1934 testsuite/gas/i386/x86-64-suffix.d,
1935 testsuite/gas/i386/x86_64-intel.d
1936 testsuite/gas/i386/x86_64.d: Adjust expectations.
1937 * testsuite/gas/i386/x86-64-suffix.e,
1938 testsuite/gas/i386/x86_64.e: New.
1940 2020-01-30 Jan Beulich <jbeulich@suse.com>
1942 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
1945 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
1948 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
1950 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
1951 differences. Document movslq and movsxd.
1952 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
1953 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
1954 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
1955 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
1956 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
1957 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
1958 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
1959 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
1960 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
1961 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
1962 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
1964 2020-01-27 Alan Modra <amodra@gmail.com>
1966 * testsuite/gas/all/gas.exp: Replace case statements with switch
1968 * testsuite/gas/elf/elf.exp: Likewise.
1969 * testsuite/gas/macros/macros.exp: Likewise.
1970 * testsuite/lib/gas-defs.exp: Likewise.
1972 2020-01-27 Tamar Christina <tamar.christina@arm.com>
1975 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
1976 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
1978 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
1980 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
1981 s exts must be known, so rename *ok* to *fail*.
1982 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
1983 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
1984 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
1986 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
1987 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
1989 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
1992 * config/tc-i386.c (check_long_reg): Always disallow double word
1993 suffix in mnemonic with word general register.
1994 * testsuite/gas/i386/general.s: Replace word general register
1995 with double word general register for movl.
1996 * testsuite/gas/i386/inval.s: Add tests for movl with word general
1998 * testsuite/gas/i386/general.l: Updated.
1999 * testsuite/gas/i386/inval.l: Likewise.
2001 2020-01-22 Alan Modra <amodra@gmail.com>
2003 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2004 __tls_get_addr_desc and __tls_get_addr_opt.
2006 2020-01-21 Jan Beulich <jbeulich@suse.com>
2008 * testsuite/gas/i386/inval-crc32.s,
2009 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2010 * testsuite/gas/i386/inval-crc32.l,
2011 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2013 2020-01-21 Jan Beulich <jbeulich@suse.com>
2015 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2016 generic code path. Deal with No_lSuf being set in a template.
2017 * testsuite/gas/i386/inval-crc32.l,
2018 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2019 instead of error(s) when operand size is ambiguous.
2020 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2021 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2022 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2023 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2024 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2025 Adjust expectations.
2027 2020-01-21 Jan Beulich <jbeulich@suse.com>
2029 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2030 and an intel_syntax check. Re-write lack-of-suffix processing
2032 * doc/c-i386.texi: Document operand size defaults for suffix-
2033 less AT&T syntax insns.
2034 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2035 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2036 testsuite/gas/i386/x86-64-avx-scalar.s,
2037 testsuite/gas/i386/x86-64-avx.s,
2038 testsuite/gas/i386/x86-64-bundle.s,
2039 testsuite/gas/i386/x86-64-intel64.s,
2040 testsuite/gas/i386/x86-64-lock-1.s,
2041 testsuite/gas/i386/x86-64-opcode.s,
2042 testsuite/gas/i386/x86-64-sse2avx.s,
2043 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2044 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2045 testsuite/gas/i386/x86-64-nops.s,
2046 testsuite/gas/i386/x86-64-ptwrite.s,
2047 testsuite/gas/i386/x86-64-simd.s,
2048 testsuite/gas/i386/x86-64-sse-noavx.s,
2049 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2051 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2052 testsuite/gas/i386/noreg64.s: Add further tests.
2053 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2054 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2055 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2056 testsuite/gas/i386/sse-noavx.d,
2057 testsuite/gas/i386/x86-64-intel64.d,
2058 testsuite/gas/i386/x86-64-nops.d,
2059 testsuite/gas/i386/x86-64-opcode.d,
2060 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2061 testsuite/gas/i386/x86-64-ptwrite.d,
2062 testsuite/gas/i386/x86-64-simd-intel.d,
2063 testsuite/gas/i386/x86-64-simd-suffix.d,
2064 testsuite/gas/i386/x86-64-simd.d,
2065 testsuite/gas/i386/x86-64-sse-noavx.d
2066 testsuite/gas/i386/x86-64-suffix.d,
2067 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
2068 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
2069 testsuite/gas/i386/noreg64.l: New.
2070 * testsuite/gas/i386/i386.exp: Run new tests.
2072 2020-01-21 Jan Beulich <jbeulich@suse.com>
2074 * testsuite/gas/i386/avx512_bf16_vl.s,
2075 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
2076 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
2077 broadcast forms of VCVTNEPS2BF16.
2078 * testsuite/gas/i386/avx512_bf16_vl.d,
2079 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
2081 2020-01-20 Nick Clifton <nickc@redhat.com>
2083 * po/uk.po: Updated Ukranian translation.
2085 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
2088 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
2089 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
2091 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
2092 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
2093 R_X86_64_GOTPC32_TLSDESC relocation.
2095 2020-01-18 Nick Clifton <nickc@redhat.com>
2097 * configure: Regenerate.
2098 * po/gas.pot: Regenerate.
2100 2020-01-18 Nick Clifton <nickc@redhat.com>
2102 Binutils 2.34 branch created.
2104 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
2106 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
2107 with vex_encoding_vex.
2108 (parse_insn): Likewise.
2109 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
2110 and {vex3} documentation.
2111 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
2113 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
2115 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2118 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
2119 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
2120 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
2121 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
2122 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
2123 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
2125 2020-01-16 Jan Beulich <jbeulich@suse.com>
2127 * config/tc-i386.c (match_template): Drop found_cpu_match local
2130 2020-01-16 Jan Beulich <jbeulich@suse.com>
2132 * testsuite/gas/i386/avx512dq-inval.l,
2133 testsuite/gas/i386/avx512dq-inval.s: New.
2134 * testsuite/gas/i386/i386.exp: Run new test.
2136 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2138 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
2139 relocations when the target is 430X, except when extracting part of an
2141 (msp430_srcoperand): Adjust comment.
2142 Initialize the expp member of the msp430_operand_s struct as
2144 (msp430_dstoperand): Likewise.
2145 * testsuite/gas/msp430/msp430.exp: Run new test.
2146 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
2147 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
2149 2020-01-15 Alan Modra <amodra@gmail.com>
2151 * configure.tgt: Add sparc-*-freebsd case.
2153 2020-01-14 Lili Cui <lili.cui@intel.com>
2155 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
2156 * testsuite/gas/i386/align-branch-1b.d: Likewise.
2157 * testsuite/gas/i386/align-branch-1c.d: Likewise.
2158 * testsuite/gas/i386/align-branch-1d.d: Likewise.
2159 * testsuite/gas/i386/align-branch-1e.d: Likewise.
2160 * testsuite/gas/i386/align-branch-1f.d: Likewise.
2161 * testsuite/gas/i386/align-branch-1g.d: Likewise.
2162 * testsuite/gas/i386/align-branch-1h.d: Likewise.
2163 * testsuite/gas/i386/align-branch-1i.d: Likewise.
2164 * testsuite/gas/i386/align-branch-5.d: Likewise.
2165 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
2166 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
2167 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
2168 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
2169 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
2170 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
2171 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
2172 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
2173 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
2174 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
2175 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
2176 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
2178 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
2181 * config/tc-z80.c: Add support for half precision, single
2182 precision and double precision floating point values.
2183 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
2184 * doc/as.texi: Add new z80 command line options.
2185 * doc/c-z80.texi: Document new z80 command line options.
2186 * testsuite/gas/z80/ez80_pref_dis.s: New test.
2187 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
2188 * testsuite/gas/z80/z80.exp: Run the new test.
2189 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
2190 * testsuite/gas/z80/fp_zeda32.d: Likewise.
2191 * testsuite/gas/z80/strings.d: Update expected output.
2193 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
2195 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
2198 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
2200 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
2202 * config/tc-arc.h: Add header if/defs.
2203 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
2205 2020-01-13 Alan Modra <amodra@gmail.com>
2207 * testsuite/gas/wasm32/allinsn.d: Update expected output.
2209 2020-01-13 Alan Modra <amodra@gmail.com>
2211 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
2214 2020-01-10 Alan Modra <amodra@gmail.com>
2216 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
2217 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
2219 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2222 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
2224 (emit_ld_r_r): Likewise.
2225 (emit_ld_rr_m): Likewise.
2226 (emit_ld_rr_nn): Likewise.
2228 2020-01-09 Jan Beulich <jbeulich@suse.com>
2230 * config/tc-i386.c (optimize_encoding): Add
2231 is_any_vex_encoding() invocations. Drop respective
2232 i.tm.extension_opcode == None checks.
2234 2020-01-09 Jan Beulich <jbeulich@suse.com>
2236 * config/tc-i386.c (md_assemble): Check RegRex is clear during
2237 REX transformations. Correct comment indentation.
2239 2020-01-09 Jan Beulich <jbeulich@suse.com>
2241 * config/tc-i386.c (optimize_encoding): Generalize register
2242 transformation for TEST optimization.
2244 2020-01-09 Jan Beulich <jbeulich@suse.com>
2246 * testsuite/gas/i386/x86-64-sysenter-amd.s,
2247 testsuite/gas/i386/x86-64-sysenter-amd.d,
2248 testsuite/gas/i386/x86-64-sysenter-amd.l,
2249 testsuite/gas/i386/x86-64-sysenter-intel.d,
2250 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
2251 * testsuite/gas/i386/i386.exp: Run new tests.
2253 2020-01-08 Nick Clifton <nickc@redhat.com>
2256 * doc/as.texi (Align): Document the fact that all arguments can be
2259 (P2align): Likewise.
2261 2020-01-08 Nick Clifton <nickc@redhat.com>
2264 * config/obj-elf.c (obj_elf_section): Fail if the section name is
2265 already defined as a different symbol type.
2266 * testsuite/gas/elf/pr14891.s: New test source file.
2267 * testsuite/gas/elf/pr14891.d: New test driver.
2268 * testsuite/gas/elf/pr14891.s: New test expected error output.
2269 * testsuite/gas/elf/elf.exp: Run the new test.
2271 2020-01-08 Alan Modra <amodra@gmail.com>
2273 * config/tc-z8k.c (md_begin): Make idx unsigned.
2274 (get_specific): Likewise for this_index.
2276 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
2278 * onfig/tc-arc.c (parse_reloc_symbol): New function.
2279 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
2280 (md_operand): Set X_md to absent.
2281 (arc_parse_name): Check for X_md.
2283 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2286 * as.h (TC_STRING_ESCAPES): Provide a default definition.
2287 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
2289 * read.c (next_char_of_string): Likewise.
2290 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
2291 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
2293 2020-01-03 Nick Clifton <nickc@redhat.com>
2295 * po/sv.po: Updated Swedish translation.
2297 2020-01-03 Jan Beulich <jbeulich@suse.com>
2299 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
2300 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2302 2020-01-03 Jan Beulich <jbeulich@suse.com>
2304 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
2305 by-element usdot. Add 64-bit form tests for by-element sudot.
2306 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
2308 2020-01-03 Jan Beulich <jbeulich@suse.com>
2310 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
2311 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2313 2020-01-03 Jan Beulich <jbeulich@suse.com>
2315 * testsuite/gas/aarch64/f64mm.d,
2316 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
2318 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
2320 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
2321 support for assembler code generated by SDCC. Add new relocation
2322 types. Add z80-elf target support.
2323 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
2324 labels. Local labels starts from ".L".
2325 * NEWS: Mention the new support.
2326 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
2327 * testsuite/gas/all/fwdexp.s: Likewise.
2328 * testsuite/gas/all/cond.l: Likewise.
2329 * testsuite/gas/all/cond.s: Likewise.
2330 * testsuite/gas/all/fwdexp.d: Likewise.
2331 * testsuite/gas/all/fwdexp.s: Likewise.
2332 * testsuite/gas/elf/section2.e-mips: Likewise.
2333 * testsuite/gas/elf/section2.l: Likewise.
2334 * testsuite/gas/elf/section2.s: Likewise.
2335 * testsuite/gas/macros/app1.d: Likewise.
2336 * testsuite/gas/macros/app1.s: Likewise.
2337 * testsuite/gas/macros/app2.d: Likewise.
2338 * testsuite/gas/macros/app2.s: Likewise.
2339 * testsuite/gas/macros/app3.d: Likewise.
2340 * testsuite/gas/macros/app3.s: Likewise.
2341 * testsuite/gas/macros/app4.d: Likewise.
2342 * testsuite/gas/macros/app4.s: Likewise.
2343 * testsuite/gas/macros/app4b.s: Likewise.
2344 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
2345 * testsuite/gas/z80/z80.exp: Add new tests
2346 * testsuite/gas/z80/dollar.d: New file.
2347 * testsuite/gas/z80/dollar.s: New file.
2348 * testsuite/gas/z80/ez80_adl_all.d: New file.
2349 * testsuite/gas/z80/ez80_adl_all.s: New file.
2350 * testsuite/gas/z80/ez80_adl_suf.d: New file.
2351 * testsuite/gas/z80/ez80_isuf.s: New file.
2352 * testsuite/gas/z80/ez80_z80_all.d: New file.
2353 * testsuite/gas/z80/ez80_z80_all.s: New file.
2354 * testsuite/gas/z80/ez80_z80_suf.d: New file.
2355 * testsuite/gas/z80/r800_extra.d: New file.
2356 * testsuite/gas/z80/r800_extra.s: New file.
2357 * testsuite/gas/z80/r800_ii8.d: New file.
2358 * testsuite/gas/z80/r800_z80_doc.d: New file.
2359 * testsuite/gas/z80/z180.d: New file.
2360 * testsuite/gas/z80/z180.s: New file.
2361 * testsuite/gas/z80/z180_z80_doc.d: New file.
2362 * testsuite/gas/z80/z80_doc.d: New file.
2363 * testsuite/gas/z80/z80_doc.s: New file.
2364 * testsuite/gas/z80/z80_ii8.d: New file.
2365 * testsuite/gas/z80/z80_ii8.s: New file.
2366 * testsuite/gas/z80/z80_in_f_c.d: New file.
2367 * testsuite/gas/z80/z80_in_f_c.s: New file.
2368 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
2369 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
2370 * testsuite/gas/z80/z80_out_c_0.d: New file.
2371 * testsuite/gas/z80/z80_out_c_0.s: New file.
2372 * testsuite/gas/z80/z80_reloc.d: New file.
2373 * testsuite/gas/z80/z80_reloc.s: New file.
2374 * testsuite/gas/z80/z80_sli.d: New file.
2375 * testsuite/gas/z80/z80_sli.s: New file.
2377 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
2379 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
2382 2020-01-01 Alan Modra <amodra@gmail.com>
2384 Update year range in copyright notice of all files.
2386 For older changes see ChangeLog-2019
2388 Copyright (C) 2020 Free Software Foundation, Inc.
2390 Copying and distribution of this file, with or without modification,
2391 are permitted in any medium without royalty provided the copyright
2392 notice and this notice are preserved.
2398 version-control: never