1 2020-07-21 Jan Beulich <jbeulich@suse.com>
3 * testsuite/gas/i386/evex-no-scale-32.d,
4 testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
5 * testsuite/gas/i386/evex-no-scale-32.s,
6 testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
7 * testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
9 * testsuite/gas/i386/i386.exp: Move above tests out of ELF-
12 2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
14 * config/tc-mips.c (prev_reloc_op_frag): Remove variable.
15 (my_getSmallExpression): Adjust accordingly.
17 2020-07-20 Jan Beulich <jbeulich@suse.com>
20 * config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
21 conditional around it.
22 (md_begin): Insert backslash into operand_chars[] when slash is
24 * config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
25 \* as operators when / may be a comment character.
26 * testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
27 * testsuite/gas/i386/i386.exp: Run new test.
29 2020-07-20 Jan Beulich <jbeulich@suse.com>
32 * app.c (last_char): Drop TC_ARM conditional around it.
33 (struct app_save): Drop TC_ARM conditional around last_char.
34 (app_push, app_pop): Drop TC_ARM conditional from last_char
36 (do_scrub_chars): Likewise. Drop TC_ARM conditional from
37 backslash-precedes-comment-character check.
39 2020-07-20 Jan Beulich <jbeulich@suse.com>
41 * config/tc-i386.c (frag_opcode_byte): New.
42 (output_branch): Emit error when in absolute section.
43 (output_jump, output_insn): Use frag_opcode_byte. Handle being
45 (output_interseg_jump, output_disp, output_imm): Handle being in
47 * testsuite/gas/i386/sizing.s,
48 testsuite/gas/i386/sizing32.d,
49 testsuite/gas/i386/sizing64.d: New.
50 * testsuite/gas/i386/i386.exp: Run new tests.
52 2020-07-20 Jan Beulich <jbeulich@suse.com>
54 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
55 is_elf_format as applicable; merely exclude iamcu tests.
57 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
60 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
61 against section to PC32 reloc.
62 * testsuite/gas/i386/relax-5.d: Updated.
63 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
65 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
68 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
69 * testsuite/gas/i386/addr32.d: Likewise.
70 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
71 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
73 2020-07-15 Nick Clifton <nickc@redhat.com>
75 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
76 the addend field of REL relocations. Store the full addend into
77 the note for REL relocations.
79 2020-07-15 Jan Beulich <jbeulich@suse.com>
81 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
83 * testsuite/gas/i386/x86-64-stack-intel.d,
84 testsuite/gas/i386/x86-64-stack-suffix.d,
85 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
87 2020-07-15 Jan Beulich <jbeulich@suse.com>
89 * testsuite/gas/i386/disassem.d,
90 testsuite/gas/i386/ilp32/x86-64-branch.d,
91 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
92 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
93 testsuite/gas/i386/noreg32.d,
94 testsuite/gas/i386/noreg64-rex64.d,
95 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
96 testsuite/gas/i386/opcode.d,
97 testsuite/gas/i386/solaris/x86-64-branch-2.d,
98 testsuite/gas/i386/solaris/x86-64-jump.d,
99 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
100 testsuite/gas/i386/solaris/x86-64-nop-3.d,
101 testsuite/gas/i386/solaris/x86-64-nop-4.d,
102 testsuite/gas/i386/solaris/x86-64-nop-5.d,
103 testsuite/gas/i386/solaris/x86-64-relax-2.d,
104 testsuite/gas/i386/solaris/x86-64-relax-3.d,
105 testsuite/gas/i386/x86-64-align-branch-1a.d,
106 testsuite/gas/i386/x86-64-align-branch-1b.d,
107 testsuite/gas/i386/x86-64-align-branch-1c.d,
108 testsuite/gas/i386/x86-64-align-branch-1d.d,
109 testsuite/gas/i386/x86-64-align-branch-1e.d,
110 testsuite/gas/i386/x86-64-align-branch-1f.d,
111 testsuite/gas/i386/x86-64-align-branch-1g.d,
112 testsuite/gas/i386/x86-64-align-branch-1h.d,
113 testsuite/gas/i386/x86-64-align-branch-1i.d,
114 testsuite/gas/i386/x86-64-align-branch-2a.d,
115 testsuite/gas/i386/x86-64-align-branch-2b.d,
116 testsuite/gas/i386/x86-64-align-branch-2c.d,
117 testsuite/gas/i386/x86-64-align-branch-3.d,
118 testsuite/gas/i386/x86-64-align-branch-4a.d,
119 testsuite/gas/i386/x86-64-align-branch-4b.d,
120 testsuite/gas/i386/x86-64-align-branch-5.d,
121 testsuite/gas/i386/x86-64-align-branch-6.d,
122 testsuite/gas/i386/x86-64-branch-2.d,
123 testsuite/gas/i386/x86-64-branch-3.d,
124 testsuite/gas/i386/x86-64-branch.d,
125 testsuite/gas/i386/x86-64-disassem.d,
126 testsuite/gas/i386/x86-64-disp32.d,
127 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
128 testsuite/gas/i386/x86-64-gotpcrel.d,
129 testsuite/gas/i386/x86-64-ifunc.d,
130 testsuite/gas/i386/x86-64-jump.d,
131 testsuite/gas/i386/x86-64-lfence-byte.d,
132 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
133 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
134 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
135 testsuite/gas/i386/x86-64-lfence-load.d,
136 testsuite/gas/i386/x86-64-lfence-ret-a.d,
137 testsuite/gas/i386/x86-64-lfence-ret-b.d,
138 testsuite/gas/i386/x86-64-lfence-ret-c.d,
139 testsuite/gas/i386/x86-64-lfence-ret-d.d,
140 testsuite/gas/i386/x86-64-lfence-ret-e.d,
141 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
142 testsuite/gas/i386/x86-64-mpx-branch-1.d,
143 testsuite/gas/i386/x86-64-mpx.d,
144 testsuite/gas/i386/x86-64-nop-3.d,
145 testsuite/gas/i386/x86-64-nop-4.d,
146 testsuite/gas/i386/x86-64-nop-5.d,
147 testsuite/gas/i386/x86-64-nops-7.d,
148 testsuite/gas/i386/x86-64-notrack.d,
149 testsuite/gas/i386/x86-64-opcode.d,
150 testsuite/gas/i386/x86-64-relax-2.d,
151 testsuite/gas/i386/x86-64-relax-3.d,
152 testsuite/gas/i386/x86-64-relax-4.d,
153 testsuite/gas/i386/x86-64-rtm.d,
154 testsuite/gas/i386/x86-64-stack.d,
155 testsuite/gas/i386/x86-64-unique.d,
156 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
158 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
161 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
163 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
164 * testsuite/gas/i386/addr32.d: Updated.
165 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
166 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
167 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
168 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
170 2020-07-14 Jan Beulich <jbeulich@suse.com>
172 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
173 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
174 * testsuite/gas/i386/intel.d,
175 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
177 2020-07-14 Jan Beulich <jbeulich@suse.com>
179 * testsuite/gas/i386/prefix.d: Adjust expectations.
181 2020-07-14 Jan Beulich <jbeulich@suse.com>
183 * testsuite/gas/i386/x86-64-avx-intel.d,
184 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
186 2020-07-14 Jan Beulich <jbeulich@suse.com>
188 * testsuite/gas/i386/movbe-suffix.d,
189 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
190 * testsuite/gas/i386/i386.exp: Run new tests.
192 2020-07-14 Jan Beulich <jbeulich@suse.com>
194 * testsuite/gas/i386/crc32-suffix.d,
195 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
196 * testsuite/gas/i386/i386.exp: Run new tests.
197 * testsuite/gas/i386/arch-10-bdver1.d,
198 testsuite/gas/i386/arch-10-bdver2.d,
199 testsuite/gas/i386/arch-10-bdver3.d,
200 testsuite/gas/i386/arch-10-bdver4.d,
201 testsuite/gas/i386/arch-10-btver1.d,
202 testsuite/gas/i386/arch-10-btver2.d,
203 testsuite/gas/i386/arch-10-lzcnt.d,
204 testsuite/gas/i386/arch-10-prefetchw.d,
205 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
206 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
207 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
208 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
209 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
210 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
211 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
212 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
213 testsuite/gas/i386/x86-64-arch-2-btver1.d,
214 testsuite/gas/i386/x86-64-arch-2-btver2.d,
215 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
216 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
217 testsuite/gas/i386/x86-64-arch-2.d,
218 testsuite/gas/i386/x86-64-crc32.d,
219 testsuite/gas/i386/x86-64-pseudos.d,
220 testsuite/gas/i386/x86-64-sse-noavx.d,
221 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
223 2020-07-14 Jan Beulich <jbeulich@suse.com>
225 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
226 ModR/M-encoded byte register cases.
227 * testsuite/gas/i386/x86-64-pseudos.d,
228 testsuite/gas/i386/x86-64-reg-intel.d,
229 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
231 2020-07-14 Jan Beulich <jbeulich@suse.com>
233 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
234 not-ModR/M-encoded byte register cases.
235 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
237 2020-07-14 Jan Beulich <jbeulich@suse.com>
239 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
240 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
241 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
242 testsuite/gas/i386/ilp32/x86-64-avx.d,
243 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
244 testsuite/gas/i386/ilp32/x86-64-crc32.d,
245 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
246 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
247 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
248 testsuite/gas/i386/ilp32/x86-64-reg.d,
249 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
250 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
251 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
252 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
253 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
254 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
257 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
259 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
262 2020-07-13 Nick Clifton <nickc@redhat.com>
264 * po/fr.po: Updated French translation.
266 2020-07-13 Alan Modra <amodra@gmail.com>
268 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
269 * testsuite/gas/elf/dwarf2-12.d: Likewise.
270 * testsuite/gas/elf/dwarf2-13.d: Likewise.
271 * testsuite/gas/elf/dwarf2-14.d: Likewise.
273 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
275 * config/tc-i386.c (output_insn): Check i.xstate to set
276 GNU_PROPERTY_X86_FEATURE_2_TMM.
277 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
278 x86-64-property-8 and x86-64-property-9.
279 * testsuite/gas/i386/x86-64-property-7.d: New file.
280 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
281 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
282 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
283 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
284 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
286 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
288 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
289 has_regymm, has_regzmm and has_regtmm. Add xstate.
290 (md_assemble): Set i.xstate from operand types in instruction
292 (build_modrm_byte): Updated.
293 (output_insn): Check i.xstate.
294 * testsuite/gas/i386/i386.exp: Run property-6 and
296 * testsuite/gas/i386/property-6.d: New file.
297 * testsuite/gas/i386/property-6.s: Updated.
298 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
300 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
302 * testsuite/gas/i386/property-5.d: Correct test name.
304 2020-07-10 Lili Cui <lili.cui@intel.com>
306 * NEWS: Mention support for Intel AMX instructions.
307 * config/tc-i386.c (i386_error): Add invalid_sib_address.
308 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
309 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
310 (match_simd_size): Add tmmword check.
311 (operand_type_match): Add tmmword.
312 (type_names): Add rTMM.
313 (i386_error): Add invalid_tmm_register_set.
314 (check_VecOperands): Handle invalid_sib_address and
315 invalid_tmm_register_set.
316 (match_template): Handle invalid_sib_address.
317 (build_modrm_byte): Handle non-vector SIB and zmmword.
318 (i386_index_check): Disallow RegIP for non-vector SIB.
319 (check_register): Handle zmmword.
320 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
321 * testsuite/gas/i386/i386.exp: Add AMX new tests.
322 * testsuite/gas/i386/intel-regs.d: Add tmm.
323 * testsuite/gas/i386/intel-regs.s: Add tmm.
324 * testsuite/gas/i386/x86-64-amx-intel.d: New.
325 * testsuite/gas/i386/x86-64-amx-inval.l: New.
326 * testsuite/gas/i386/x86-64-amx-inval.s: New.
327 * testsuite/gas/i386/x86-64-amx.d: New.
328 * testsuite/gas/i386/x86-64-amx.s: New.
329 * testsuite/gas/i386/x86-64-amx-bad.d: New.
330 * testsuite/gas/i386/x86-64-amx-bad.s: New.
332 2020-07-10 Tom de Vries <tdevries@suse.de>
334 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
335 readelf's line table decoding.
336 * testsuite/gas/elf/dwarf2-12.d: Likewise.
337 * testsuite/gas/elf/dwarf2-13.d: Likewise.
338 * testsuite/gas/elf/dwarf2-14.d: Likewise.
339 * testsuite/gas/elf/dwarf2-15.d: Likewise.
340 * testsuite/gas/elf/dwarf2-16.d: Likewise.
341 * testsuite/gas/elf/dwarf2-17.d: Likewise.
342 * testsuite/gas/elf/dwarf2-18.d: Likewise.
343 * testsuite/gas/elf/dwarf2-19.d: Likewise.
344 * testsuite/gas/elf/dwarf2-5.d: Likewise.
345 * testsuite/gas/elf/dwarf2-6.d: Likewise.
346 * testsuite/gas/elf/dwarf2-7.d: Likewise.
348 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
350 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
351 VEX/EVEX vector instructions.
352 * testsuite/gas/i386/property-4.d: New file.
353 * testsuite/gas/i386/property-4.s: Likewise.
354 * testsuite/gas/i386/property-5.d: Likewise.
355 * testsuite/gas/i386/property-5.s: Likewise.
356 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
357 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
359 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
361 * NEWS: Mention --enable-x86-used-note.
362 * configure.ac: Configure with --enable-x86-used-note by default
364 * configure: Regenerated.
366 2020-07-09 Alan Modra <amodra@gmail.com>
368 * config/obj-coff.h: Remove TE_PE support.
369 * config/tc-ppc.c: Likewise.
370 * config/tc-ppc.h: Likewise.
371 * configure.tgt: Remove powerpc PE and powerpc lynxos.
372 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
374 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
376 2020-07-08 Jan Beulich <jbeulich@suse.com>
378 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
380 * testsuite/gas/i386/i386.exp: Run new tests.
382 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
384 * config/tc-arc.c (find_opcode_match): Add error messages.
385 * testsuite/gas/arc/add_s-err.s: Update test.
386 * testsuite/gas/arc/asm-errors.err: Likewise.
387 * testsuite/gas/arc/cpu-em-err.s: Likewise.
388 * testsuite/gas/arc/hregs-err.s: Likewise.
389 * testsuite/gas/arc/warn.s: Likewise.
391 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
394 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
396 2020-07-07 Alan Modra <amodra@gmail.com>
398 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
399 * testsuite/gas/ppc/ppc.exp: Likewise.
400 * testsuite/gas/all/weakref1l.d: Likewise.
402 2020-07-07 Nick Clifton <nickc@redhat.com>
404 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
407 2020-07-06 Jan Beulich <jbeulich@suse.com>
409 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
410 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
411 testsuite/gas/i386/x86-64-evex-wig1.d,
412 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
415 2020-07-06 Jan Beulich <jbeulich@suse.com>
417 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
418 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
419 * testsuite/gas/i386/avx512f-opts-intel.d,
420 testsuite/gas/i386/avx512f-opts.d
421 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
422 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
424 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
427 * config/tc-arm.c: Fix spelling mistake.
428 * config/tc-riscv.c: Likewise.
429 * config/tc-z80.c: Likewise.
430 * po/gas.pot: Regenerate.
432 2020-07-06 Nick Clifton <nickc@redhat.com>
434 * po/uk.po: Updated Ukranian translation.
436 2020-07-04 Nick Clifton <nickc@redhat.com>
438 * configure: Regenerate.
439 * po/gas.pot: Regenerate.
441 2020-07-04 Nick Clifton <nickc@redhat.com>
443 * version.m4: Change version number to 2.35.50.
444 * configure: Regenerate.
445 * po/bfd.pot: Regenerate.
447 2020-07-04 Nick Clifton <nickc@redhat.com>
449 Binutils 2.35 branch created.
451 2020-07-03 Alan Modra <amodra@gmail.com>
454 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
456 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
458 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
459 swap two source operands.
461 2020-07-02 Nick Clifton <nickc@redhat.com>
463 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
465 2020-07-02 Alex Coplan <alex.coplan@arm.com>
467 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
468 segfault on negative chars.
469 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
470 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
472 2020-07-02 Nick Clifton <nickc@redhat.com>
475 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
477 * testsuite/gas/ia64/unwind.d: Likewise.
478 * testsuite/gas/mmix/bspec-1.d: Likewise.
479 * testsuite/gas/mmix/bspec-2.d: Likewise.
480 * testsuite/gas/mmix/comment-1.d: Likewise.
481 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
483 2020-07-01 Alan Modra <amodra@gmail.com>
485 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
487 2020-07-01 Alan Modra <amodra@gmail.com>
489 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
490 in data sections, and mep.
492 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
494 * NEWS: Mention x86 NaCl target support removal.
495 * config/tc-i386.c: Remove x86 NaCl target support.
496 * config/tc-i386.h: Likewise.
497 * configure.tgt: Likewise.
498 * testsuite/gas/i386/i386.exp: Likewise.
499 * testsuite/gas/i386/iamcu-1.d: Likewise.
500 * testsuite/gas/i386/iamcu-2.d: Likewise.
501 * testsuite/gas/i386/iamcu-3.d: Likewise.
502 * testsuite/gas/i386/iamcu-4.d: Likewise.
503 * testsuite/gas/i386/iamcu-5.d: Likewise.
504 * testsuite/gas/i386/k1om.d: Likewise.
505 * testsuite/gas/i386/l1om.d: Likewise.
507 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
509 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
510 checking into riscv_csr_address.
511 (riscv_csr_version_check): Likewise.
512 (riscv_csr_address): New function. Return the suitable CSR address
513 after checking the ISA dependency and versions. Issue warnings if
514 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
515 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
516 priv spec versions for them.
517 (reg_csr_lookup_internal): Call riscv_csr_address to find the
518 suitable CSR address.
519 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
520 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
521 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
522 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
523 priv spec warnings here. These warnings are added by accident.
524 Remove them and only focus on the ISA dependency warnings.
525 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
526 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
527 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
528 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
529 than the privileged ones.
530 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
531 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
532 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
533 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
534 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
535 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
536 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
537 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
538 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
539 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
541 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
543 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
544 (md_assemble): Don't process ImmExt without operands.
546 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
549 * config/tc-mmix.c (md_assemble) <fixup for
550 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
551 Also, set its fx_no_overflow.
552 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
553 Similarly this fixup affects 4 bytes, not 8 and needs its
555 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
556 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
558 2020-06-29 Alan Modra <amodra@gmail.com>
560 * config/tc-s12z.c: Use C style comments.
561 * config/tc-z80.c: Likewise.
562 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
564 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
566 * config/tc-i386.c (md_assemble): Process ImmExt without
569 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
571 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
572 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
573 VECSIB256 and VECSIB512, respectively.
574 (build_modrm_byte): Replace vecsib with sib.
576 2020-06-26 Jan Beulich <jbeulich@suse.com>
578 * testsuite/gas/i386/nop-1-suffix.d: New.
579 * testsuite/gas/i386/i386.exp: Run new test.
581 2020-06-26 Pat Bernardi <bernardi@adacore.com>
583 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
584 (md_pseudo_table): Handle "gnu_attribute".
585 * doc/as.texi: Document GNU attribute for M68K.
587 2020-06-25 Nick Clifton <nickc@redhat.com>
590 * config/tc-arm.c (arm_force_relocation): Force resolution of
591 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
592 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
594 2020-06-25 Jan Beulich <jbeulich@suse.com>
596 * config/tc-i386.c (md_assemble): Move call to process_immext()
598 (process_operands): ... here.
600 2020-06-25 Jan Beulich <jbeulich@suse.com>
602 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
603 diagnostic when there is a sizing prefix. Switch to word/dword/
604 qword encoding when there is a sizing prefix and no (explicit or
606 (update_imm): Handle presence of a sizing prefix.
607 * testsuite/gas/i386/noreg16-data32.d,
608 testsuite/gas/i386/noreg32-data16.d,
609 testsuite/gas/i386/noreg32-data16.e,
610 testsuite/gas/i386/noreg64-data16.d,
611 testsuite/gas/i386/noreg64-data16.e,
612 testsuite/gas/i386/noreg64-rex64.d: New.
613 * testsuite/gas/i386/i386.exp: Run new tests.
614 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
615 Introduce and use pfx* macros.
616 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
618 * testsuite/gas/i386/noreg16.d: Adjust expectations.
620 2020-06-25 Jan Beulich <jbeulich@suse.com>
622 * testsuite/gas/i386/avx-16bit.d,
623 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
624 testsuite/gas/i386/avx512f-16bit.d,
625 testsuite/gas/i386/avx512f.d,
626 testsuite/gas/i386/evex-lig256.d,
627 testsuite/gas/i386/evex-lig512.d
628 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
629 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
630 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
631 testsuite/gas/i386/sse2-16bit.d,
632 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
635 2020-06-25 Jan Beulich <jbeulich@suse.com>
637 * config/tc-i386.c (md_assemble): Also reject explicit REX
638 prefixes with VEX and alike encoded insns. Zap consumed bits
640 (output_insn): Don't ignore REX prefix for VEX and alike
641 encodings; abort() instead if encountered.
642 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
644 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
645 * testsuite/gas/i386/x86-64-pseudos.d,
646 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
648 2020-06-25 Jan Beulich <jbeulich@suse.com>
650 * config/tc-i386.c (process_operands): Translate explicit REX
651 prefix into i.rex for SSE2AVX templates.
652 (set_rex_vrex): New helper.
653 (build_modrm_byte): Use it.
654 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
656 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
658 2020-06-25 Jan Beulich <jbeulich@suse.com>
660 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
661 templates when there's no data size prefix.
662 (md_assemble): Reject data size prefix also for legacy encoded
664 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
665 Uncomment previously not working line.
666 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
668 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
669 testsuite/gas/i386/sse2avx.d: Adjust expectations.
671 2020-06-25 Jan Beulich <jbeulich@suse.com>
673 * config/tc-i386.c (build_evex_prefix): Drop early setting of
676 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
678 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
679 explicit_priv_attr. It used to indicate CSR or priv instructions are
681 (riscv_is_priv_insn): Return True if it is a privileged instruction.
682 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
683 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
684 (riscv_write_out_attrs): Clarification of when to generate the elf
685 priv spec attributes.
686 * testsuite/gas/riscv/attribute-11.s: Add comments.
687 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
688 `priv_insn_<n>` to decide which priv instruction is expected to used.
690 * testsuite/gas/riscv/attribute-14a.d: Likewise.
691 * testsuite/gas/riscv/attribute-14b.d: Likewise.
692 * testsuite/gas/riscv/attribute-14c.d: Likewise.
693 * testsuite/gas/riscv/attribute-14d.d: Likewise.
694 * testsuite/gas/riscv/attribute-14e.d: Likewise.
696 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
698 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
699 (riscv_set_default_priv_spec): Get the priv spec version from the
700 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
702 2020-06-20 Alan Modra <amodra@gmail.com>
704 * configure.tgt: Set bfd_gas for all SH targets.
706 2020-06-18 Jan Beulich <jbeulich@suse.com>
708 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
709 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
712 2020-06-16 Lili Cui <lili.cui@intel.com>
714 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
715 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
716 * doc/c-i386.texi: Add avx512_vp2intersect.
718 2020-06-16 Jan Beulich <jbeulich@suse.com>
720 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
722 * testsuite/gas/i386/sse-check.s: Adjust comment.
723 * testsuite/gas/i386/sse-check-error.l,
724 testsuite/gas/i386/sse-check-warn.e,
725 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
728 2020-06-16 Alan Modra <amodra@gmail.com>
730 * config/tc-tic30.h: Remove OBJ_AOUT support.
731 * configure.tgt: Delete tic30-*-*aout* entry.
733 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
735 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
737 (elf32xtensa_abi): New declaration.
738 (option_abi_windowed, option_abi_call0): New enum constants.
739 (md_longopts): Add entries for --abi-windowed and --abi-call0.
740 (md_parse_option): Add handlers for --abi-windowed and
742 (xtensa_add_config_info): Use xtensa_abi_choice instead of
743 XSHAL_ABI to format ABI tag.
744 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
745 --abi-call0 to the list of options.
746 * doc/c-xtensa.texi: Add description for options --abi-windowed
748 * testsuite/gas/xtensa/abi-call0.d: New test definition.
749 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
750 * testsuite/gas/xtensa/abi.s: New test source.
752 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
755 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
757 * testsuite/gas/i386/tsxldtrk.s: Likewise.
758 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
759 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
761 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
763 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
764 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
765 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
767 2020-06-09 Seth Girvan <snth@snthhacks.com>
769 * doc/c-avr.texi: Improve wording.
771 2020-06-09 Jan Beulich <jbeulich@suse.com>
773 * testsuite/gas/i386/x86-64-pseudos-bad.s,
774 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
776 2020-06-09 Jan Beulich <jbeulich@suse.com>
778 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
780 * testsuite/gas/i386/prefix.d: Adjust expectations.
782 2020-06-09 Jan Beulich <jbeulich@suse.com>
784 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
785 with VEX/EVEX encoding tests.
786 * testsuite/gas/i386/prefix.d: Adjust expectations.
788 2020-06-09 Jan Beulich <jbeulich@suse.com>
790 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
792 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
793 * testsuite/gas/i386/noreg64.d: Adjust expectations.
794 * testsuite/gas/i386/noreg-intel64.d,
795 testsuite/gas/i386/noreg-intel64.l,
796 testsuite/gas/i386/noreg-intel64.s: New.
797 * testsuite/gas/i386/i386.exp: Run new tests.
799 2020-06-09 Jan Beulich <jbeulich@suse.com>
801 * config/tc-i386.c (vex_encoding_error): New enumerator.
802 (VEX_check_operands): Rename to VEX_check_encoding. Check
803 for vex_encoding_error. Move Imm4 handling ...
804 (check_VecOperands): ... here.
805 (match_template): Call VEX_check_encoding when there are no
806 operands. Split construct calling check_VecOperands and
807 VEX_check_encoding (when there are operands).
808 (check_register): Don't blindly set vex_encoding_evex.
809 * testsuite/gas/i386/pseudos-bad.s,
810 testsuite/gas/i386/pseudos-bad.l: New.
811 * testsuite/gas/i386/i386.exp: Run new test.
812 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
814 2020-06-08 Alex Coplan <alex.coplan@arm.com>
816 * config/tc-arm.c (insns): Add dfb.
817 * testsuite/gas/arm/dfb.d: New test.
818 * testsuite/gas/arm/dfb.s: Input for test.
820 2020-06-08 Nick Clifton <nickc@redhat.com>
822 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
824 2020-06-08 Jan Beulich <jbeulich@suse.com>
826 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
828 2020-06-08 Jan Beulich <jbeulich@suse.com>
830 * config/tc-i386.c (check_byte_reg): Drop dead conditional
833 2020-06-08 Jan Beulich <jbeulich@suse.com>
835 * config/tc-i386.c (check_register): Split RegTR handling, to
836 fail recognition also in 64-bit mode as well as with i586 or
837 i686 explicitly enabled.
838 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
839 * testsuite/gas/i386/x86_64-intel.d,
840 testsuite/gas/i386/x86_64.d: Adjust expectations.
842 2020-06-08 Jan Beulich <jbeulich@suse.com>
844 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
845 * testsuite/gas/cfi/cfi.exp: Run this test.
847 2020-06-08 Jan Beulich <jbeulich@suse.com>
849 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
850 check to %st(N) parsing logic.
851 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
853 2020-06-08 Jan Beulich <jbeulich@suse.com>
855 * config/tc-i386.c (bad_reg): New.
856 (check_VecOperations, i386_att_operand, i386_parse_name): Check
858 (check_register): New, broken out from ...
859 (parse_real_register): ... here. Call it.
860 (parse_register): Call it, and error upon failure.
861 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
862 testsuite/gas/i386/x86-64-equ-bad.s,
863 testsuite/gas/i386/x86-64-equ-bad.l: New.
864 * testsuite/gas/i386/i386.exp: Run new tests.
866 2020-06-06 Alan Modra <amodra@gmail.com>
868 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
869 * doc/c-ppc.texi: Likewise.
871 2020-06-06 Alan Modra <amodra@gmail.com>
873 * config/tc-ppc.c: Update throughout for reloc renaming.
875 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
877 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
880 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
882 * config/tc-riscv.c (explicit_csr): New static boolean.
883 Used to indicate CSR are explictly used.
884 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
885 (riscv_write_out_attrs): If we already have set elf priv
886 attributes, then generate them. Otherwise, don't generate
887 them when no CSR are used.
888 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
889 * testsuite/gas/riscv/attribute-02.d: Likewise.
890 * testsuite/gas/riscv/attribute-03.d: Likewise.
891 * testsuite/gas/riscv/attribute-04.d: Likewise.
892 * testsuite/gas/riscv/attribute-05.d: Likewise.
893 * testsuite/gas/riscv/attribute-06.d: Likewise.
894 * testsuite/gas/riscv/attribute-07.d: Likewise.
895 * testsuite/gas/riscv/attribute-08.d: Likewise.
896 * testsuite/gas/riscv/attribute-09.d: Likewise.
897 * testsuite/gas/riscv/attribute-10.d: Likewise.
898 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
899 * testsuite/gas/riscv/attribute-11.s: New testcase.
900 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
901 used, so we should output the ELF priv attributes.
902 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
903 used, so output the priv attributes according to the -mpriv-spec.
904 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
905 used, so ignore the -mpriv-spec setting.
907 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
909 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
911 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
912 endianness to cgen_get_insn_value and cgen_put_insn_value.
914 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
916 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
919 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
921 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
923 (md_assemble): Remove no longer needed hack.
925 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
927 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
929 (gas_cgen_md_apply_fix): Likewise.
930 (gas_cgen_md_apply_fix): Likewise.
931 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
933 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
936 2020-06-04 Alan Modra <amodra@gmail.com>
938 * testsuite/config/default.exp: Remove global directive outside
940 * testsuite/gas/mep/complex-relocs.exp: Likewise.
941 * testsuite/gas/microblaze/relax_size.exp: Likewise.
942 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
943 * testsuite/gas/mt/relocs.exp: Likewise.
944 * testsuite/gas/rx/rx.exp: Likewise.
946 2020-06-03 Stephen Casner <casner@acm.org>
948 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
950 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
951 Jim Wilson <jimw@sifive.com>
954 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
955 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
956 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
957 Move B before SB. Move J before UJ.
959 2020-06-01 Alex Coplan <alex.coplan@arm.com>
961 * write.c (relax_segment): Fix handling of negative offset when
962 relaxing an rs_org frag.
963 * testsuite/gas/aarch64/org-neg.d: New test.
964 * testsuite/gas/aarch64/org-neg.l: Error output for test.
965 * testsuite/gas/aarch64/org-neg.s: Input for test.
966 * testsuite/gas/arm/org-neg.d: New test.
967 * testsuite/gas/arm/org-neg.l: Error output for test.
968 * testsuite/gas/arm/org-neg.s: Input for test.
970 2020-05-28 Stephen Casner <casner@acm.org>
972 Fix unexpected failures in gas testsuite for pdp11-aout target.
973 These are caused by the PDP11's mix of little-endian octets in
974 shorts but shorts in big endian order for long or quad.
976 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
977 * testsuite/gas/all/gas.exp: Select alternate test scripts for
978 pdp11, skip octa test completely.
979 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
980 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
981 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
983 2020-05-28 Alex Coplan <alex.coplan@arm.com>
985 * frags.c (frag_grow): Fix comment.
987 2020-05-27 Stephen Casner <casner@acm.org>
990 * config/tc-pdp11.c (parse_reg): Distinguish register names from
991 symbols that begin with a register name.
992 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
993 * testsuite/gas/pdp11/pr26001.s: Likewise.
994 * testsuite/gas/pdp11/pr26001.d: Likewise.
996 2020-05-27 Simon Cook <simon.cook@embecosm.com>
998 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
999 pointer when creating struct riscv_csr_extra.
1001 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1003 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
1004 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
1005 * testsuite/gas/i386/inval-avx512f.l: Updated.
1007 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
1009 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
1010 load/store instruction variants with alignment hints.
1011 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
1012 instruction variants with alignment hints.
1014 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1017 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
1018 instead of R_XGATE_PCREL_X.
1019 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
1020 BFD_RELOC_XGATE_PCREL_X.
1022 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1025 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
1026 with &fragP->fr_literal[0].
1028 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1031 * config/tc-vax.c (md_estimate_size_before_relax): Replace
1032 fragP->fr_literal with &fragP->fr_literal[0].
1033 (md_convert_frag): Likewise.
1035 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1038 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
1039 with &fragP->fr_literal[0].
1041 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1044 * config/tc-crx.c (getreg_image): Change argument type to int.
1045 (md_convert_frag): Replace fragP->fr_literal with
1046 &fragP->fr_literal[0].
1048 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1051 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
1052 sprintf with memmove.
1054 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1056 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
1057 with &fragP->fr_literal[0].
1059 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1062 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
1063 2 overlapping strings.
1065 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1067 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
1068 with &fragP->fr_literal[0].
1070 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1072 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
1073 with &fragp->fr_literal[0].
1074 * config/tc-microblaze.c (md_apply_fix): Likewise.
1075 * config/tc-sh.c (md_convert_frag): Likewise.
1077 2020-05-24 Jim Wilson <jimw@sifive.com>
1080 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
1081 asection to segT. New locals seg and subseg. Call subseg_set before
1082 fix_new_exp. Call subseg_set after loop to restore original values.
1084 2020-05-21 Alan Modra <amodra@gmail.com>
1086 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
1088 * config/obj-elf.c: Likewise.
1089 * config/tc-aarch64.c: Likewise.
1090 * config/tc-arm.c: Likewise.
1091 * config/tc-m68k.c: Likewise.
1092 * config/tc-nios2.c: Likewise.
1093 * config/tc-tic30.c: Likewise.
1094 * ecoff.c: Likewise.
1096 * stabs.c: Likewise.
1097 * symbols.c: Likewise.
1098 * testsuite/gas/all/test-gen.c: Likewise.
1100 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
1102 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
1103 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
1104 Static variables which are used to set the ISA extensions. You can
1105 use -march (or ELF build attributes) and -misa-spec to set them,
1107 (ext_version_hash): The hash table used to handle the extensions
1109 (init_ext_version_hash): Initialize the ext_version_hash according
1110 to riscv_ext_version_table.
1111 (riscv_get_default_ext_version): The callback function of
1112 riscv_parse_subset_t. According to the choosed ISA spec,
1113 get the default version for the specific extension.
1114 (riscv_set_arch): Set the callback function.
1115 (enum options, struct option md_longopts): Add new option -misa-spec.
1116 (md_parse_option): Do not call riscv_set_arch for -march. We will
1117 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
1118 to set default_isa_spec class.
1119 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
1120 ext_version_hash, and then call riscv_set_arch to set the architecture
1121 with versions according to default_arch_with_ext.
1122 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
1124 * testsuite/gas/riscv/attribute-03.d: Likewise.
1125 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
1126 already set it's version to 2p1 by march, so no need to use the default
1127 2p2 version. For m-ext, we do not set the version by -march and ELF arch
1128 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
1129 ISA spec 2p2, so set 0p0 to it.
1130 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
1131 zicsr is 2p0 according to ISA spec 20191213.
1132 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
1133 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
1134 You can set them by configure options --with-arch and
1135 --with-isa-spec, respectively.
1136 (riscv_set_default_isa_spec): New function used to set the
1138 (md_parse_option): Call riscv_set_default_isa_spec rather than
1139 call riscv_get_isa_spec_class directly.
1140 (riscv_after_parse_args): If the -isa-spec is not set, then we
1141 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
1142 calling riscv_set_default_isa_spec.
1143 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
1144 the --with-isa-spec may be set to different ISA spec.
1145 * testsuite/gas/riscv/attribute-02.d: Likewise.
1146 * testsuite/gas/riscv/attribute-03.d: Likewise.
1147 * testsuite/gas/riscv/attribute-04.d: Likewise.
1148 * testsuite/gas/riscv/attribute-05.d: Likewise.
1149 * testsuite/gas/riscv/attribute-06.d: Likewise.
1150 * testsuite/gas/riscv/attribute-07.d: Likewise.
1151 * configure.ac: Add configure options, --with-arch and
1153 * configure: Regenerated.
1154 * config.in: Regenerated.
1155 * config/tc-riscv.c (default_priv_spec): Static variable which is
1156 used to check if the CSR is valid for the chosen privilege spec. You
1157 can use -mpriv-spec to set it.
1158 (enum reg_class): We now get the CSR address from csr_extra_hash rather
1159 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
1160 (riscv_init_csr_hashes): Only need to initialize one hash table
1162 (riscv_csr_class_check): Change the return type to void. Don't check
1163 the ISA dependency if -mcsr-check isn't set.
1164 (riscv_csr_version_check): New function. Check and find the CSR address
1165 from csr_extra_hash, according to default_priv_spec. Report warning
1166 for the invalid CSR if -mcsr-check is set.
1167 (reg_csr_lookup_internal): Updated.
1168 (reg_lookup_internal): Likewise.
1169 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
1170 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
1171 (md_parse_option): Call riscv_set_default_priv_version to set
1173 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
1174 privilege spec to the newest one.
1175 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
1176 include/opcode/riscv.h.
1177 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
1178 to check the ISA dependency for CSR, so fix the spec version by adding
1180 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
1181 version warnings for the test case.
1182 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1183 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1184 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1185 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1186 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1187 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
1188 Check whether the CSR is valid when privilege version 1.9 is choosed.
1189 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
1190 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
1191 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
1192 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
1193 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
1194 Check whether the CSR is valid when privilege version 1.10 is choosed.
1195 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
1196 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
1197 Check whether the CSR is valid when privilege version 1.11 is choosed.
1198 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
1199 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
1200 setting. You can set it by configure option --with-priv-spec.
1201 (riscv_set_default_priv_spec): New function used to set the default
1203 (md_parse_option): Call riscv_set_default_priv_spec rather than
1204 call riscv_get_priv_spec_class directly.
1205 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
1206 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
1207 calling riscv_set_default_priv_spec.
1208 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
1209 the --with-priv-spec may be set to different privilege spec.
1210 * testsuite/gas/riscv/priv-reg.d: Likewise.
1211 * configure.ac: Add configure option --with-priv-spec.
1212 * configure: Regenerated.
1213 * config.in: Regenerated.
1214 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
1215 explicit_attr. Set it to TRUE if any ELF attribute is found.
1216 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
1217 the priv attributes are set.
1218 (md_assemble): Set the default_priv_spec according to the priv
1219 attributes when we start to assemble instruction.
1220 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
1221 riscv_write_out_attrs. Update the arch and priv attributes. If we
1222 don't set the corresponding ELF attributes, then try to output the
1224 (riscv_set_public_attributes): If any ELF attribute or -march-attr
1225 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
1226 to update the arch and priv attributes.
1227 (s_riscv_attribute): Make sure all arch and priv attributes are set
1228 before any instruction.
1229 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
1230 ELF attribute or -march-attr is set. If the priv attributes are not
1231 set, then try to update them by the default setting (-mpriv-spec or
1233 * testsuite/gas/riscv/attribute-02.d: Likewise.
1234 * testsuite/gas/riscv/attribute-03.d: Likewise.
1235 * testsuite/gas/riscv/attribute-04.d: Likewise.
1236 * testsuite/gas/riscv/attribute-06.d: Likewise.
1237 * testsuite/gas/riscv/attribute-07.d: Likewise.
1238 * testsuite/gas/riscv/attribute-08.d: Likewise.
1239 * testsuite/gas/riscv/attribute-09.d: Likewise.
1240 * testsuite/gas/riscv/attribute-10.d: Likewise.
1241 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
1242 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
1243 set by priv attributes must be supported.
1244 * testsuite/gas/riscv/attribute-05.s: Likewise.
1245 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
1246 priv attributes according to the -mpriv-spec option.
1247 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
1248 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
1249 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
1250 * testsuite/gas/riscv/priv-reg.d: Removed.
1251 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
1252 CSR according to the priv spec 1.9.
1253 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
1254 CSR according to the priv spec 1.9.1.
1255 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
1256 CSR according to the priv spec 1.10.
1257 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
1258 CSR according to the priv spec 1.11.
1259 * config/tc-riscv.c (md_show_usage): Add descriptions about
1260 the new GAS options.
1261 * doc/c-riscv.texi: Likewise.
1263 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
1265 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
1266 * testsuite/gas/ppc/power9.d: Likewise.
1267 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
1268 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
1269 sync, wait, waitrsv>: Add tests.
1270 * testsuite/gas/ppc/power10.d: Likewise.
1272 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
1275 * config/tc-arm.c : Add arm_ext_v8r feature.
1276 (it_fsm_post_encode): Check arm_ext_v8r feature.
1277 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
1279 2020-05-19 Alan Modra <amodra@gmail.com>
1281 * write.c (write_contents): Use bfd_get_filename rather than
1282 accessing bfd->filename directly. Use bfd_section_name rather
1283 than accessing section->name directly.
1285 2020-05-19 Alan Modra <amodra@gmail.com>
1287 * symbols.c (local_symbol_make): Init all of lsy_flags.
1289 2020-05-18 Alan Modra <amodra@gmail.com>
1291 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
1292 before looking at add_symbol->sy_flags.
1294 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
1296 * config/tc-i386.c: Not handle lret/iret.
1297 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
1298 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
1299 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
1300 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
1301 * testsuite/gas/i386/lfence-ret.s: Ditto.
1302 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
1303 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
1304 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
1305 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
1306 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
1307 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
1308 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
1310 2020-05-15 Alan Modra <amodra@gmail.com>
1311 Alex Coplan <alex.coplan@arm.com>
1313 * symbols.c (struct local_symbol): Update comment.
1314 (resolve_symbol_value): For resolved symbols equated to other
1315 symbols, verify that the referenced symbol is not a local_symbol
1316 before accessing sy_value. Don't leave symbol loops during
1317 finalize_syms resolution.
1318 * testsuite/gas/all/assign-bad-recursive.d: New test.
1319 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
1320 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
1321 * testsuite/gas/all/gas.exp: Run it.
1323 2020-05-14 Nick Clifton <nickc@redhat.com>
1325 * po/sv.po: Updated Swedish translation.
1327 2020-05-11 Alan Modra <amodra@gmail.com>
1329 * testsuite/gas/ppc/scalarquad.d,
1330 * testsuite/gas/ppc/scalarquad.s: New test.
1331 * testsuite/gas/ppc/ppc.exp: Run it.
1333 2020-05-11 Alan Modra <amodra@gmail.com>
1335 * testsuite/gas/ppc/rightmost.d,
1336 * testsuite/gas/ppc/rightmost.s: New test.
1337 * testsuite/gas/ppc/ppc.exp: Run it.
1339 2020-05-11 Alan Modra <amodra@gmail.com>
1341 * testsuite/gas/ppc/xvtlsbb.d,
1342 * testsuite/gas/ppc/xvtlsbb.s: New test.
1343 * testsuite/gas/ppc/ppc.exp: Run it.
1345 2020-05-11 Alan Modra <amodra@gmail.com>
1347 * testsuite/gas/ppc/stringop.d,
1348 * testsuite/gas/ppc/stringop.s: New test.
1349 * testsuite/gas/ppc/ppc.exp: Run it.
1351 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1353 * testsuite/gas/ppc/set_bool.d,
1354 * testsuite/gas/ppc/set_bool.s: New test.
1355 * testsuite/gas/ppc/ppc.exp: Run it.
1357 2020-05-11 Alan Modra <amodra@gmail.com>
1359 * testsuite/gas/ppc/bitmanip.d,
1360 * testsuite/gas/ppc/bitmanip.s: New test.
1361 * testsuite/gas/ppc/ppc.exp: Run it.
1363 2020-05-11 Alan Modra <amodra@gmail.com>
1365 * testsuite/gas/ppc/genpcv.d,
1366 * testsuite/gas/ppc/genpcv.s: New test.
1367 * testsuite/gas/ppc/ppc.exp: Run it.
1369 2020-05-11 Alan Modra <amodra@gmail.com>
1371 * testsuite/gas/ppc/maskmanip.d,
1372 * testsuite/gas/ppc/maskmanip.s: New test.
1373 * testsuite/gas/ppc/ppc.exp: Run it.
1375 2020-05-11 Alan Modra <amodra@gmail.com>
1376 Peter Bergner <bergner@linux.ibm.com>
1378 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
1379 (md_assemble): Check acc specified in correct operand.
1380 * testsuite/gas/ppc/outerprod.d,
1381 * testsuite/gas/ppc/outerprod.s,
1382 * testsuite/gas/ppc/vsx4.d,
1383 * testsuite/gas/ppc/vsx4.s: New tests.
1384 * testsuite/gas/ppc/ppc.exp: Run them.
1386 2020-05-11 Alan Modra <amodra@gmail.com>
1388 * testsuite/gas/ppc/simd_perm.d,
1389 * testsuite/gas/ppc/simd_perm.s: New test.
1390 * testsuite/gas/ppc/ppc.exp: Run it.
1392 2020-05-11 Alan Modra <amodra@gmail.com>
1394 * testsuite/gas/ppc/int128.d,
1395 * testsuite/gas/ppc/int128.s: New test.
1396 * testsuite/gas/ppc/ppc.exp: Run it.
1398 2020-05-11 Alan Modra <amodra@gmail.com>
1400 * testsuite/gas/ppc/vsx_32byte.d,
1401 * testsuite/gas/ppc/vsx_32byte.s: New test.
1402 * testsuite/gas/ppc/ppc.exp: Run it.
1404 2020-05-11 Alan Modra <amodra@gmail.com>
1406 * testsuite/gas/ppc/vec_mul.s,
1407 * testsuite/gas/ppc/vec_mul.d: New test.
1408 * testsuite/gas/ppc/ppc.exp: Run it.
1410 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1412 * testsuite/gas/ppc/byte_rev.d,
1413 * testsuite/gas/ppc/byte_rev.s: New test.
1414 * testsuite/gas/ppc/ppc.exp: Run it.
1416 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1418 * testsuite/gas/ppc/power10.d: Add paste. tests.
1419 * testsuite/gas/ppc/power10.s: Likewise.
1421 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1423 * testsuite/gas/ppc/power10.s: New test.
1424 * testsuite/gas/ppc/power10.d: Likewise.
1425 * testsuite/gas/ppc/ppc.exp: Run it.
1427 2020-05-11 Alan Modra <amodra@gmail.com>
1429 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
1431 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
1432 place of -mfuture/-Mfuture.
1433 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
1434 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
1436 2020-05-06 Nick Clifton <nickc@redhat.com>
1438 * po/sv.po: Updated Swedish translation.
1440 2020-05-06 Nick Clifton <nickc@redhat.com>
1443 * doc/as.texi (Preprocessing): Replace cross reference to not
1444 existant document with a URL to the equivalent page in the GCC
1447 2020-05-05 Nick Clifton <nickc@redhat.com>
1449 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
1450 construction of a DWARF-5 directory name table.
1451 * testsuite/gas/elf/pr25917.d: Update expected output.
1453 2020-05-05 Gunther Nikl <gnikl@justmail.de>
1455 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
1456 (md_parse_option): Remove initialization of elf_flags.
1458 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
1461 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
1462 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
1463 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
1465 2020-05-04 Nick Clifton <nickc@redhat.com>
1468 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
1469 table's existence before looking at its entries.
1470 Also do not emit a default directory entry if there are no
1473 * testsuite/gas/elf/pr25917.s: New test source file.
1474 * testsuite/gas/elf/pr25917.d: New test driver.
1475 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
1477 2020-04-30 Alex Coplan <alex.coplan@arm.com>
1479 * config/tc-aarch64.c (fix_insn): Implement for
1480 AARCH64_OPND_UNDEFINED.
1481 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
1482 * testsuite/gas/aarch64/udf.s: New.
1483 * testsuite/gas/aarch64/udf.d: New.
1484 * testsuite/gas/aarch64/udf-invalid.s: New.
1485 * testsuite/gas/aarch64/udf-invalid.l: New.
1486 * testsuite/gas/aarch64/udf-invalid.d: New.
1488 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
1490 * config/tc-rx.c (elf_flags): Reset default value.
1491 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
1493 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
1495 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
1496 if it's not defined.
1497 (microarch_earliest): New static variable.
1498 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
1499 simcall opcode has mandatory parameter.
1500 (xg_init_global_config): Initialize microarch_earliest.
1502 2020-04-29 Nick Clifton <nickc@redhat.com>
1505 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
1506 IMM0_8S and add support for IMM0_8U.
1507 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
1508 unsigned 8-bit immediate.
1509 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
1510 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
1512 2020-04-27 Tamar Christina <tamar.christina@arm.com>
1514 * NEWS: Add news entry for big-obj.
1515 * config/tc-i386.c (i386_target_format): Support new format.
1516 * doc/c-i386.texi: Add i386 support.
1517 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
1518 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
1520 2020-04-27 Nick Clifton <nickc@redhat.com>
1523 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
1524 (assign_file_to_slot): New function. Fills in an entry in the
1526 (allocate_filenum): Use new function.
1527 (allocate_filename_to_slot): Use new function. If the specified
1528 slot entry is already in use, but was chosen automatically then
1529 reassign the automatic entry.
1531 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
1533 * config/tc-i386.c (lfence_before_ret_shl): New member.
1534 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
1536 (insert_after_load): Issue warning for REP CMPS/SCAS.
1537 (insert_before_before): Handle iret, Handle
1538 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
1539 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
1540 -mlfence-before-ret=[none/not/or/shl/yes].
1541 Enable -mlfence-before-ret=shl when
1542 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
1543 (md_show_usage): Ditto.
1544 * doc/c-i386.texi: Ditto.
1545 * testsuite/gas/i386/i386.exp: Add new testcases.
1546 * testsuite/gas/i386/lfence-load-b.d: New.
1547 * testsuite/gas/i386/lfence-load-b.e: New.
1548 * testsuite/gas/i386/lfence-load.d: Modified.
1549 * testsuite/gas/i386/lfence-load.e: New.
1550 * testsuite/gas/i386/lfence-load.s: Modified.
1551 * testsuite/gas/i386/lfence-ret-a.d: Modified.
1552 * testsuite/gas/i386/lfence-ret-b.d: Modified.
1553 * testsuite/gas/i386/lfence-ret-c.d: New.
1554 * testsuite/gas/i386/lfence-ret-d.d: New.
1555 * testsuite/gas/i386/lfence-ret.s: Modified.
1556 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
1557 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
1558 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
1559 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
1560 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
1561 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
1562 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
1563 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
1564 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
1565 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
1567 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
1570 * config/tc-xtensa.c (md_apply_fix): Replace
1571 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1572 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1573 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1574 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1575 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1577 2020-04-22 Alan Modra <amodra@gmail.com>
1579 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1580 symbol for ".symver .. remove".
1581 * doc/as.texi (.symver): Update.
1582 * testsuite/gas/symver/symver11.s: Make foo weak.
1583 * testsuite/gas/symver/symver11.d: Expect an error.
1584 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1586 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1588 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1590 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
1593 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1594 * testsuite/gas/m68k/operands.d: Update.
1595 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1597 2020-04-21 Tamar Christina <tamar.christina@arm.com>
1600 * testsuite/gas/arm/pr24753.d: New test.
1601 * testsuite/gas/arm/pr24753.s: New test.
1603 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1607 * NEWS: Mention .symver extension.
1608 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1610 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1611 add a version name. Add local, hidden and remove visibility
1613 (elf_frob_symbol): Handle the list of version names. Update the
1614 original symbol to local, hidden or remove it from the symbol
1616 (elf_frob_file_before_adjust): Handle the list of version names.
1617 * config/obj-elf.h (elf_visibility): New.
1618 (elf_versioned_name_list): Likewise.
1619 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1620 and visibility. Change versioned_name pointer to struct
1621 elf_versioned_name_list.
1622 * doc/as.texi: Update .symver directive.
1623 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1624 error checking tests.
1625 * testsuite/gas/symver/symver6.d: New file.
1626 * testsuite/gas/symver/symver7.d: Likewise.
1627 * testsuite/gas/symver/symver7.s: Likewise.
1628 * testsuite/gas/symver/symver8.d: Likewise.
1629 * testsuite/gas/symver/symver8.s: Likewise.
1630 * testsuite/gas/symver/symver9.s: Likewise.
1631 * testsuite/gas/symver/symver9a.d: Likewise.
1632 * testsuite/gas/symver/symver9b.d: Likewise.
1633 * testsuite/gas/symver/symver10.s: Likewise.
1634 * testsuite/gas/symver/symver10a.d: Likewise.
1635 * testsuite/gas/symver/symver10b.d: Likewise.
1636 * testsuite/gas/symver/symver11.d: Likewise.
1637 * testsuite/gas/symver/symver11.s: Likewise.
1638 * testsuite/gas/symver/symver12.d: Likewise.
1639 * testsuite/gas/symver/symver12.s: Likewise.
1640 * testsuite/gas/symver/symver13.d: Likewise.
1641 * testsuite/gas/symver/symver13.s: Likewise.
1642 * testsuite/gas/symver/symver14.d: Likewise.
1643 * testsuite/gas/symver/symver14.l: Likewise.
1644 * testsuite/gas/symver/symver15.d: Likewise.
1645 * testsuite/gas/symver/symver15.l: Likewise.
1646 * testsuite/gas/symver/symver6.l: Removed.
1647 * testsuite/gas/symver/symver6.s: Updated.
1649 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1651 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1653 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1654 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1655 * testsuite/gas/aarch64/system.d: Update.
1657 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1659 * testsuite/gas/aarch64/bti.d: Update -march option.
1660 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1661 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1662 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1663 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1665 2020-04-17 Alan Modra <amodra@gmail.com>
1667 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1669 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
1670 Nick Clifton <nickc@redhat.com>
1673 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1675 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1676 for the type-2 test.
1677 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1678 targets running this test.
1680 2020-02-16 David Faust <david.faust@oracle.com>
1682 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1683 * testsuite/gas/bpf/jump32.s: New file.
1684 * testsuite/gas/bpf/jump32.d: Likewise.
1686 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
1688 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1691 2020-04-08 Gunther Nikl <gnikl@justmail.de>
1693 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1694 (md_pcrel_from): Remove prototytpe.
1695 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1697 (md_pcrel_from_section): Remove duplicate prototype.
1698 * tc.h (md_pcrel_from_section): Add prototype.
1699 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1700 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1701 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1702 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1703 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1704 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1705 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1706 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1707 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1708 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1709 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1710 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1711 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1712 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1713 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1714 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1715 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1716 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1717 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1718 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1719 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1720 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1721 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1722 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1723 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1724 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1725 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1726 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1727 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1728 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1729 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1730 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1731 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1732 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1733 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1734 md_apply_fix3): Delete prototypes.
1736 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1738 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1741 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1743 * doc/c-z80.texi: Fix @xref warnings.
1745 2020-04-07 Lili Cui <lili.cui@intel.com>
1747 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1748 (cpu_noarch): Likewise.
1749 * doc/c-i386.texi: Document TSXLDTRK.
1750 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1751 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1752 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1753 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1755 2020-04-02 Lili Cui <lili.cui@intel.com>
1757 * config/tc-i386.c (cpu_arch): Add .serialize.
1758 (cpu_noarch): Likewise.
1759 * doc/c-i386.texi: Document serialize.
1760 * testsuite/gas/i386/i386.exp: Run serialize tests
1761 * testsuite/gas/i386/serialize.d: Likewise.
1762 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1763 * testsuite/gas/i386/serialize.s: Likewise.
1765 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1767 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1768 * testsuite/gas/elf/section12b.d: Likewise.
1769 * testsuite/gas/elf/section16a.d: Likewise.
1770 * testsuite/gas/elf/section16b.d: Likewise.
1772 2020-04-02 Gunther Nikl <gnikl@justmail.de>
1774 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1775 with a suppressed address register.
1777 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
1780 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1781 * testsuite/gas/i386/localpic.s: Add a test for relocation
1782 against local absolute symbol.
1783 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1784 * testsuite/gas/i386/localpic.d: Updated.
1785 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1786 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1788 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1791 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1792 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1793 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1794 testsuite/gas/i386/x86-64-jump.d.
1795 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1796 Incorporate changes to
1797 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1798 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1799 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1800 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1801 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1803 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
1807 * dwarf2dbg.c: Do not include "bignum.h".
1809 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
1811 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1812 * testsuite/gas/riscv/alias-csr.s: Likewise.
1813 * testsuite/gas/riscv/no-aliases-csr.d: Move this
1814 to priv-reg-pseudo-noalias.
1815 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
1816 * testsuite/gas/riscv/bad-csr.l: Likewise.
1817 * testsuite/gas/riscv/bad-csr.s: Likewise.
1818 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
1819 * testsuite/gas/riscv/satp.s: Likewise.
1820 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
1821 csr instruction, including alias-csr testcase.
1822 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
1823 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
1824 pseudo instruction with objdump -Mno-aliases.
1825 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
1826 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
1827 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
1828 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
1829 * testsuite/gas/riscv/priv-reg.s: Likewise.
1830 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1831 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1832 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1834 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
1836 * config/obj-coff.c (obj_coff_section): Set the bss flag on
1837 sections with the "b" attribute.
1839 2020-03-22 Alan Modra <amodra@gmail.com>
1841 * testsuite/gas/s12z/truncated.d: Update expected output.
1843 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1846 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
1847 * doc/c-z80.texi: Update documentation.
1849 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1854 Fix disassembling ED+A4/AC/B4/BC opcodes.
1855 Fix assembling lines containing colonless label and instruction
1856 with first operand inside parentheses.
1857 Fix registration of unsupported by target CPU registers.
1858 * config/tc-z80.c: See above.
1859 * config/tc-z80.h: See above.
1860 * testsuite/gas/z80/colonless.d: Update test.
1861 * testsuite/gas/z80/colonless.s: Likewise.
1862 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
1863 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
1864 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1865 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
1866 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
1867 * testsuite/gas/z80/unsup_regs.s: Likewise.
1868 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
1869 * testsuite/gas/z80/z80.exp: Likewise.
1870 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
1871 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
1872 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
1874 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
1877 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
1878 (parse_operands): Handle new operand codes.
1879 (do_neon_dyadic_long): Make shape check accept the scalar variants.
1880 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
1881 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
1882 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
1883 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
1884 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
1885 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
1886 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
1888 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1890 * NEWS: Mention x86 assembler options for CVE-2020-0551.
1892 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1894 * testsuite/gas/i386/i386.exp: Run new tests.
1895 * testsuite/gas/i386/lfence-byte.d: New file.
1896 * testsuite/gas/i386/lfence-byte.e: Likewise.
1897 * testsuite/gas/i386/lfence-byte.s: Likewise.
1898 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
1899 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
1900 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
1901 * testsuite/gas/i386/lfence-indbr.e: Likewise.
1902 * testsuite/gas/i386/lfence-indbr.s: Likewise.
1903 * testsuite/gas/i386/lfence-load.d: Likewise.
1904 * testsuite/gas/i386/lfence-load.s: Likewise.
1905 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
1906 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
1907 * testsuite/gas/i386/lfence-ret.s: Likewise.
1908 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
1909 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
1910 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
1911 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
1912 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
1913 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
1914 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
1915 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
1916 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
1917 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
1918 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
1919 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
1921 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1923 * config/tc-i386.c (lfence_after_load): New.
1924 (lfence_before_indirect_branch_kind): New.
1925 (lfence_before_indirect_branch): New.
1926 (lfence_before_ret_kind): New.
1927 (lfence_before_ret): New.
1930 (insert_lfence_after): New.
1931 (insert_lfence_before): New.
1932 (md_assemble): Call insert_lfence_before and insert_lfence_after.
1934 (OPTION_MLFENCE_AFTER_LOAD): New.
1935 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1936 (OPTION_MLFENCE_BEFORE_RET): New.
1937 (md_longopts): Add -mlfence-after-load=,
1938 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1939 (md_parse_option): Handle -mlfence-after-load=,
1940 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1941 (md_show_usage): Display -mlfence-after-load=,
1942 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1943 (i386_cons_align): New.
1944 * config/tc-i386.h (i386_cons_align): New.
1945 (md_cons_align): New.
1946 * doc/c-i386.texi: Document -mlfence-after-load=,
1947 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1949 2020-03-11 Nick Clifton <nickc@redhat.com>
1953 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1954 (DWARF2_FILE_SIZE_NAME): Default to -1.
1955 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1956 whichever is higher.
1957 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1958 (NUM_MD5_BYTES): Define.
1959 (struct file entry): Add md5 field.
1960 (get_filenum): Delete and replace with...
1961 (get_basename): New function.
1962 (get_directory_table_entry): New function.
1963 (allocate_filenum): New function.
1964 (allocate_filename_to_slot): New function.
1965 (dwarf2_where): Use new functions.
1966 (dwarf2_directive_filename): Add support for extended .file
1968 (dwarf2_directive_loc): Allow the use of file number zero with
1970 (out_file_list): Rename to...
1971 (out_dir_and_file_list): Add DWARF 5 support.
1972 (out_debug_line): Emit extra values into the section header for
1974 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1975 * doc/as.texi (.file): Update the description of this pseudo-op.
1976 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1977 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1978 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1979 * NEWS: Mention the new feature.
1981 2020-03-10 Alan Modra <amodra@gmail.com>
1983 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1984 to avoid signed overflow.
1985 * config/tc-mcore.c (md_assemble): Likewise.
1986 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1987 * config/tc-nds32.c (SET_ADDEND): Likewise.
1988 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1990 2020-03-09 Jan Beulich <jbeulich@suse.com>
1992 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1993 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1994 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1996 2020-03-07 Alan Modra <amodra@gmail.com>
1998 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
2001 2020-03-06 Nick Clifton <nickc@redhat.com>
2004 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
2005 0 if the dwarf_level is 5 or more. Complain if a filename follows
2007 * testsuite/gas/elf/dwarf-5-file0.s: New test.
2008 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
2009 * testsuite/gas/elf/elf.exp: Run the new test.
2012 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
2013 * doc/as.texi: Fix another typo.
2015 2020-03-06 Nick Clifton <nickc@redhat.com>
2018 * as.c (dwarf_level): Define.
2019 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
2020 (parse_args): Add support for the new options.
2021 as.h (dwarf_level): Prototype.
2022 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
2024 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
2025 (DWARF2_LINE_VERSION): Remove definition.
2026 * doc/as.texi: Document the new options.
2028 2020-03-06 Nick Clifton <nickc@redhat.com>
2031 * as.c (main): Allow matching input and outputs when they are
2034 2020-03-06 Jan Beulich <jbeulich@suse.com>
2036 * config/tc-i386.c (match_mem_size): Generalize broadcast special
2038 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
2039 one of byte/word/dword/qword is set alongside a SIMD register in
2040 a template's operand.
2042 2020-03-06 Jan Beulich <jbeulich@suse.com>
2044 * config/tc-i386.c (match_template): Extend code in logic
2045 rejecting certain suffixes in certain modes to also cover mask
2046 register use and VecSIB. Drop special casing of broadcast. Skip
2047 immediates in the check.
2049 2020-03-06 Jan Beulich <jbeulich@suse.com>
2051 * config/tc-i386.c (match_template): Fold duplicate code in
2052 logic rejecting certain suffixes in certain modes. Drop
2055 2020-03-06 Jan Beulich <jbeulich@suse.com>
2057 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
2058 alongside !norex64 ones.
2059 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
2060 with both 32- and 64-bit GPR operands.
2061 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
2062 32- and 64-bit GPR operands.
2063 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
2064 testsuite/gas/i386/x86-64-avx512bw.d,
2065 testsuite/gas/i386/x86-64-avx512f-intel.d,
2066 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
2068 2020-03-06 Jan Beulich <jbeulich@suse.com>
2070 * config/tc-i386.c (md_assemble): Drop use of rex64.
2071 (process_suffix): For REX.W for 64-bit CRC32.
2073 2020-03-06 Jan Beulich <jbeulich@suse.com>
2075 * config/tc-i386.c (i386_addressing_mode): For 32-bit
2076 addressing for MPX insns without base/index.
2077 * testsuite/gas/i386/mpx-16bit.s,
2078 * testsuite/gas/i386/mpx-16bit.d: New.
2079 * testsuite/gas/i386/i386.exp: Run new test.
2081 2020-03-06 Jan Beulich <jbeulich@suse.com>
2083 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
2084 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
2085 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
2086 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
2087 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
2088 as well as a BSWAP one.
2089 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
2090 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
2091 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
2092 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
2093 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
2094 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
2095 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
2096 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
2097 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
2098 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
2099 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
2100 testsuite/gas/i386/vmx.d: Adjust expectations.
2102 2020-03-06 Jan Beulich <jbeulich@suse.com>
2104 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
2105 from having their operands swapped.
2106 * testsuite/gas/i386/waitpkg.s,
2107 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
2108 3-operand cases as well as testing of 16-bit code generation.
2109 * testsuite/gas/i386/waitpkg.d,
2110 testsuite/gas/i386/waitpkg-intel.d,
2111 testsuite/gas/i386/x86-64-waitpkg.d,
2112 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
2114 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
2116 * config/tc-riscv.c (percent_op_utype): Support the modifier
2118 * doc/c-riscv.texi: Add documentation.
2119 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
2120 modifier %got_pcrel_hi.
2121 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
2122 * testsuite/gas/riscv/relax-reloc.d: Likewise.
2123 * testsuite/gas/riscv/relax-reloc.s: Likewise.
2125 * doc/c-riscv.texi (relocation modifiers): Add documentation.
2126 (RISC-V-Formats): Update the section name from "Instruction Formats"
2127 to "RISC-V Instruction Formats".
2129 2020-03-04 Alexandre Oliva <oliva@adacore.com>
2131 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
2132 detected in a section which does not have at least 4 byte
2134 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
2135 * testsuite/gas/arm/ldr-t.s: Likewise.
2136 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
2137 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
2138 disassembly, ignoring any NOPs that may have been inserted because
2139 of section alignment.
2140 * testsuite/gas/arm/ldr-t.d: Likewise.
2142 2020-03-04 Jan Beulich <jbeulich@suse.com>
2144 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
2145 * doc/c-i386.texi: Mention sev_es.
2146 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
2147 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2149 * testsuite/gas/i386/arch-13-znver1.d,
2150 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
2152 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
2154 * config/tc-i386.c (match_template): Replace ignoresize and
2155 defaultsize with mnemonicsize.
2156 (process_suffix): Likewise.
2158 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2161 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
2162 instruction LD IY,(HL).
2163 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
2164 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
2165 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
2166 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
2168 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
2171 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
2172 x86-64-default-suffix-avx.
2173 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
2174 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
2175 * testsuite/gas/i386/noreg64.d: Updated.
2176 * testsuite/gas/i386/noreg64.l: Likewise.
2177 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
2178 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
2179 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
2181 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2184 * config/tc-z80.c (contains_register): Prevent an illegal memory
2185 access when checking an expression for a register name.
2187 2020-03-03 Alan Modra <amodra@gmail.com>
2189 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
2192 2020-03-02 Alan Modra <amodra@gmail.com>
2194 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
2195 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
2197 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
2198 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
2199 (s3_s_score_lcomm): Likewise.
2200 * config/tc-score7.c: Similarly.
2201 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
2203 2020-02-28 YunQiang Su <syq@debian.org>
2206 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
2207 to handle multi-labels.
2208 (has_label_name): New.
2210 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
2212 * config/tc-arm.c (enum pred_instruction_type): Remove
2213 NEUTRAL_IT_NO_VPT_INSN predication type.
2214 (cxn_handle_predication): Modify to require condition suffixes.
2215 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
2216 * testsuite/gas/arm/cde-scalar.s: Update test.
2217 * testsuite/gas/arm/cde-warnings.l: Update test.
2218 * testsuite/gas/arm/cde-warnings.s: Update test.
2220 2020-02-26 Alan Modra <amodra@gmail.com>
2222 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
2223 N_() on empty string.
2225 2020-02-26 Alan Modra <amodra@gmail.com>
2227 * read.c (read_a_source_file): Call strncpy with length one
2228 less than size of original_case_string.
2230 2020-02-26 Alan Modra <amodra@gmail.com>
2232 * config/obj-elf.c: Indent labels correctly.
2233 * config/obj-macho.c: Likewise.
2234 * config/tc-aarch64.c: Likewise.
2235 * config/tc-alpha.c: Likewise.
2236 * config/tc-arm.c: Likewise.
2237 * config/tc-cr16.c: Likewise.
2238 * config/tc-crx.c: Likewise.
2239 * config/tc-frv.c: Likewise.
2240 * config/tc-i386-intel.c: Likewise.
2241 * config/tc-i386.c: Likewise.
2242 * config/tc-ia64.c: Likewise.
2243 * config/tc-mn10200.c: Likewise.
2244 * config/tc-mn10300.c: Likewise.
2245 * config/tc-nds32.c: Likewise.
2246 * config/tc-riscv.c: Likewise.
2247 * config/tc-s12z.c: Likewise.
2248 * config/tc-xtensa.c: Likewise.
2249 * config/tc-z80.c: Likewise.
2251 * symbols.c: Likewise.
2252 * write.c: Likewise.
2254 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
2256 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
2257 we are assembling instruction with CSR. Call riscv_csr_read_only_check
2258 after parsing all arguments.
2259 (enum csr_insn_type): New enum is used to classify the CSR instruction.
2260 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
2261 are used to check if we write a read-only CSR by the CSR instruction.
2262 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
2263 all CSR for the read-only CSR checking.
2264 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2265 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2266 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
2267 all CSR instructions for the read-only CSR checking.
2268 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2269 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
2271 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
2272 (riscv_opts): Initialize it.
2273 (reg_lookup_internal): Check the `riscv_opts.csr_check`
2274 before doing the CSR checking.
2275 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
2276 (md_longopts): Add mcsr-check and mno-csr-check.
2277 (md_parse_option): Handle new enum option values.
2278 (s_riscv_option): Handle new long options.
2279 * doc/c-riscv.texi: Add description for the new .option and assembler
2281 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
2283 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2285 * config/tc-riscv.c (csr_extra_hash): New.
2286 (enum riscv_csr_class): New enum. Used to decide
2287 whether or not this CSR is legal in the current ISA string.
2288 (struct riscv_csr_extra): New structure to hold all extra information
2290 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
2291 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
2292 Call hash_reg_name to insert CSR address into reg_names_hash.
2293 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
2294 Decide whether the CSR is valid according to the csr_extra_hash.
2295 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
2296 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
2297 not a boolean. This is same as riscv_init_csr_hash, so keep the
2299 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
2300 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
2301 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
2302 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
2303 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
2304 f-ext CSR are not allowed.
2305 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
2306 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
2307 source file is `priv-reg.s`, and the ISA is rv64if, so the
2308 rv32-only CSR are not allowed.
2309 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2311 2020-02-21 Alan Modra <amodra@gmail.com>
2313 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
2314 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
2316 2020-02-21 Alan Modra <amodra@gmail.com>
2319 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
2320 on section size adjustment, instead perform another write if
2321 exec header size is larger than section size.
2323 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
2325 * doc/c-riscv.texi: Add the doc entries for -march-attr/
2326 -mno-arch-attr command line options.
2328 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
2330 * testsuite/gas/riscv/c-add-addi.d: New testcase.
2331 * testsuite/gas/riscv/c-add-addi.s: Likewise.
2333 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
2336 * config/tc-z80.c (md_parse_option): Do not use an underscore
2337 prefix for local labels in SDCC compatability mode.
2338 (z80_start_line_hook): Remove SDCC dollar label support.
2339 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
2340 * testsuite/gas/z80/sdcc.s: Likewise.
2342 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
2345 * config/tc-z80.c: Add -march option.
2346 * doc/as.texi: Update Z80 documentation.
2347 * doc/c-z80.texi: Likewise.
2348 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
2349 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
2350 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
2351 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
2352 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
2353 * testsuite/gas/z80/gbz80_all.d: Likewise.
2354 * testsuite/gas/z80/r800_extra.d: Likewise.
2355 * testsuite/gas/z80/r800_ii8.d: Likewise.
2356 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
2357 * testsuite/gas/z80/sdcc.d: Likewise.
2358 * testsuite/gas/z80/z180.d: Likewise.
2359 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
2360 * testsuite/gas/z80/z80_doc.d: Likewise.
2361 * testsuite/gas/z80/z80_ii8.d: Likewise.
2362 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
2363 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
2364 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
2365 * testsuite/gas/z80/z80_sli.d: Likewise.
2366 * testsuite/gas/z80/z80n_all.d: Likewise.
2367 * testsuite/gas/z80/z80n_reloc.d: Likewise.
2369 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
2371 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
2372 with GNU_PROPERTY_X86_FEATURE_2_MMX.
2373 * testsuite/gas/i386/i386.exp: Run property-3 and
2375 * testsuite/gas/i386/property-3.d: New file.
2376 * testsuite/gas/i386/property-3.s: Likewise.
2377 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
2379 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
2381 * config/tc-i386.c (cpu_arch): Add .popcnt.
2382 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
2383 Add a tab before @samp{.sse4a}.
2385 2020-02-17 Jan Beulich <jbeulich@suse.com>
2387 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
2388 for AddrPrefixOpReg templates. Combine the two pieces of
2389 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
2392 2020-02-17 Jan Beulich <jbeulich@suse.com>
2395 * config/tc-i386.c (md_assemble): Also suppress operand
2396 swapping for MONITOR{,X} and MWAIT{,X}.
2397 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
2398 Add Intel syntax monitor/mwait tests.
2399 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
2400 Adjust expectations.
2401 *testsuite/gas/i386/sse3-intel.d,
2402 testsuite/gas/i386/x86-64-sse3-intel.d: New.
2403 * testsuite/gas/i386/i386.exp: Run new tests.
2405 2020-02-17 Jan Beulich <jbeulich@suse.com>
2408 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
2409 [XYZ]MMWord memory operand ambiguity recognition logic (largely
2411 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
2413 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
2414 * testsuite/gas/i386/avx512dq-inval.l,
2415 testsuite/gas/i386/inval-avx.l,
2416 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
2417 * testsuite/gas/i386/avx512vl-ambig.s,
2418 testsuite/gas/i386/avx512vl-ambig.l: New.
2419 * testsuite/gas/i386/i386.exp: Run new test.
2421 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
2423 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
2425 * doc/c-i386.texi: Document sse4a and nosse4a.
2427 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
2429 * doc/c-i386.texi: Remove the old movsx and movzx documentation
2432 2020-02-14 Jan Beulich <jbeulich@suse.com>
2435 * config/tc-i386.c (md_assemble): Move movsx/movzx special
2437 (process_suffix): ... here. Consider just the first operand
2439 (check_long_reg): Drop opcode 0x63 special case again.
2440 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
2441 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
2442 Move ambiguous operand size tests ...
2443 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2444 testsuite/gas/i386/noreg64.s: ... here.
2445 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
2446 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
2447 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2448 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
2449 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
2450 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2451 testsuite/gas/i386/x86-64-movsxd.d,
2452 testsuite/gas/i386/x86-64-movsxd-intel.d,
2453 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
2454 Adjust expectations.
2455 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
2456 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
2457 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
2458 * testsuite/gas/i386/i386.exp: Run new tests.
2460 2020-02-14 Jan Beulich <jbeulich@suse.com>
2462 * config/tc-i386.c (process_operands): Also skip segment
2463 override prefix emission if it matches an already present one.
2464 * testsuite/gas/i386/prefix32.s: Add double segment override
2466 * testsuite/gas/i386/prefix32.l: Adjust expectations.
2468 2020-02-14 Jan Beulich <jbeulich@suse.com>
2470 * config/tc-i386.c (process_operands): Drop ineffectual segment
2471 overrides when optimizing.
2472 * testsuite/gas/i386/lea-optimize.d: New.
2473 * testsuite/gas/i386/i386.exp: Run new test.
2475 2020-02-14 Jan Beulich <jbeulich@suse.com>
2477 * config/tc-i386.c (process_operands): Also check insn prefix
2478 for ineffectual segment override warning. Don't cover possible
2479 VEX/EVEX encoded insns there.
2480 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
2481 testsuite/gas/i386/lea.e: New.
2482 * testsuite/gas/i386/i386.exp: Run new test.
2484 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
2487 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
2490 2020-02-13 Fangrui Song <maskray@google.com>
2491 H.J. Lu <hongjiu.lu@intel.com>
2494 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
2495 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
2496 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
2497 * testsuite/gas/i386/relax-5.d: New file.
2498 * testsuite/gas/i386/relax-5.s: Likewise.
2499 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2500 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
2502 2020-02-13 Jan Beulich <jbeulich@suse.com>
2504 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
2507 2020-02-12 Jan Beulich <jbeulich@suse.com>
2509 * config/tc-i386.c (avx512): New (at file scope), moved from
2510 (check_VecOperands): ... here.
2511 (process_suffix): Add [XYZ]MMword operand size handling.
2512 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
2513 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
2515 * testsuite/gas/i386/avx512dq-inval.l,
2516 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
2518 2020-02-12 Jan Beulich <jbeulich@suse.com>
2521 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
2523 * config/tc-i386-intel.c (i386_intel_operand): Also handle
2524 CALL/JMP in O_tbyte_ptr case.
2525 * doc/c-i386.texi: Mention far call and full pointer load ISA
2527 * testsuite/gas/i386/x86-64-branch-3.s,
2528 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
2529 * testsuite/gas/i386/x86-64-branch-3.d,
2530 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
2531 * testsuite/gas/i386/x86-64-branch-5.l,
2532 testsuite/gas/i386/x86-64-branch-5.s: New.
2533 * testsuite/gas/i386/i386.exp: Run new test.
2535 2020-02-12 Jan Beulich <jbeulich@suse.com>
2538 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
2539 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
2540 64-bit-only warning.
2541 (check_word_reg): Consistently error on mismatching register
2543 * testsuite/gas/i386/general.s: Replace dword GPR with word one
2544 for movw. Replace suffix / GPR for orb.
2545 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
2546 byte GPRs as well as ones for inb/outb with a word accumulator.
2547 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
2548 testsuite/gas/i386/inval.l: Adjust expectations.
2550 2020-02-12 Jan Beulich <jbeulich@suse.com>
2552 * config/tc-i386.c (operand_type_register_match): Also fall
2553 through initial two if()-s when the template allows for a GPR
2554 operand. Adjust comment.
2556 2020-02-11 Jan Beulich <jbeulich@suse.com>
2558 (struct _i386_insn): New field "short_form".
2559 (optimize_encoding): Drop setting of shortform field.
2560 (process_suffix): Set i.short_form. Replace shortform use.
2561 (process_operands): Replace shortform use.
2563 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
2565 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
2566 loop initial declaration.
2568 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
2570 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2571 instructions that can have 5 arguments.
2572 (enum operand_parse_code): Add new operands.
2573 (parse_operands): Account for new operands.
2575 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2576 (neon_select_shape): Account for P suffix.
2577 (LOW1): Move macro to global position.
2578 (HI4): Move macro to global position.
2579 (vcx_assign_vec_d): New.
2580 (vcx_assign_vec_m): New.
2581 (vcx_assign_vec_n): New.
2582 (enum vcx_reg_type): New.
2583 (vcx_get_reg_type): New.
2584 (vcx_size_pos): New.
2586 (vcx_handle_shape): New.
2587 (vcx_ensure_register_in_range): New.
2588 (vcx_handle_register_arguments): New.
2589 (vcx_handle_insn_block): New.
2590 (vcx_handle_common_checks): New.
2594 * testsuite/gas/arm/cde-missing-fp.d: New test.
2595 * testsuite/gas/arm/cde-missing-fp.l: New test.
2596 * testsuite/gas/arm/cde-missing-mve.d: New test.
2597 * testsuite/gas/arm/cde-missing-mve.l: New test.
2598 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2599 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2600 * testsuite/gas/arm/cde-mve.s: New test.
2601 * testsuite/gas/arm/cde-warnings.l:
2602 * testsuite/gas/arm/cde-warnings.s:
2603 * testsuite/gas/arm/cde.d:
2604 * testsuite/gas/arm/cde.s:
2606 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2607 Matthew Malcomson <matthew.malcomson@arm.com>
2609 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2610 CDE coprocessor that can be enabled.
2611 (enum pred_instruction_type): New pred type.
2612 (BAD_NO_VPT): New error message.
2613 (BAD_CDE): New error message.
2614 (BAD_CDE_COPROC): New error message.
2615 (enum operand_parse_code): Add new immediate operands.
2616 (parse_operands): Account for new immediate operands.
2617 (check_cde_operand): New.
2618 (cde_coproc_enabled): New.
2619 (cde_coproc_pos): New.
2620 (cde_handle_coproc): New.
2621 (cxn_handle_predication): New.
2622 (do_custom_instruction_1): New.
2623 (do_custom_instruction_2): New.
2624 (do_custom_instruction_3): New.
2637 (handle_pred_state): Define new IT block behaviour.
2638 (insns): Add newn CX*{,d}{,a} instructions.
2639 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2640 Define new cdecp extension strings.
2641 * doc/c-arm.texi: Document new cdecp extension arguments.
2642 * testsuite/gas/arm/cde-scalar.d: New test.
2643 * testsuite/gas/arm/cde-scalar.s: New test.
2644 * testsuite/gas/arm/cde-warnings.d: New test.
2645 * testsuite/gas/arm/cde-warnings.l: New test.
2646 * testsuite/gas/arm/cde-warnings.s: New test.
2647 * testsuite/gas/arm/cde.d: New test.
2648 * testsuite/gas/arm/cde.s: New test.
2650 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
2653 * config/tc-i386.c (intel64): Renamed to ...
2655 (match_template): Accept Intel64 only instruction by default.
2656 (i386_displacement): Updated.
2657 (md_parse_option): Updated.
2658 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2659 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2660 -mamd64 to x86-64-sysenter-amd.
2661 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2663 2020-02-10 Alan Modra <amodra@gmail.com>
2665 * config/obj-elf.c (obj_elf_change_section): Error for section
2666 type, attr or entsize changes in assembly.
2667 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2668 * testsuite/gas/elf/section5.l: Update.
2670 2020-02-10 Alan Modra <amodra@gmail.com>
2672 * output-file.c (output_file_close): Do a normal close when
2673 flag_always_generate_output.
2674 * write.c (write_object_file): Don't stop output when
2675 flag_always_generate_output.
2677 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
2680 * config/tc-z80.c: Add -gbz80 command line option to generate code
2681 for the GameBoy Z80. Add support for generating DWARF.
2682 * config/tc-z80.h: Add support for DWARF debug information
2684 * doc/c-z80.texi: Document new command line option.
2685 * testsuite/gas/z80/gbz80_all.d: New file.
2686 * testsuite/gas/z80/gbz80_all.s: New file.
2687 * testsuite/gas/z80/z80.exp: Run the new tests.
2688 * testsuite/gas/z80/z80n_all.d: New file.
2689 * testsuite/gas/z80/z80n_all.s: New file.
2690 * testsuite/gas/z80/z80n_reloc.d: New file.
2692 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2695 * config/obj-elf.c (get_section): Also check
2696 linked_to_symbol_name.
2697 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2698 (obj_elf_parse_section_letters): Handle the 'o' flag.
2699 (build_group_lists): Renamed to ...
2700 (build_additional_section_info): This. Set elf_linked_to_section
2701 from map_head.linked_to_symbol_name.
2702 (elf_adjust_symtab): Updated.
2703 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2704 * doc/as.texi: Document the 'o' flag.
2705 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2706 * testsuite/gas/elf/section18.d: New file.
2707 * testsuite/gas/elf/section18.s: Likewise.
2708 * testsuite/gas/elf/section19.d: Likewise.
2709 * testsuite/gas/elf/section19.s: Likewise.
2710 * testsuite/gas/elf/section20.d: Likewise.
2711 * testsuite/gas/elf/section20.s: Likewise.
2712 * testsuite/gas/elf/section21.d: Likewise.
2713 * testsuite/gas/elf/section21.l: Likewise.
2714 * testsuite/gas/elf/section21.s: Likewise.
2716 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2718 * NEWS: Mention x86 assembler options to align branches for
2721 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2723 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2724 only for ELF targets.
2725 * testsuite/gas/i386/unique.d: Don't xfail.
2726 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2728 2020-02-06 Alan Modra <amodra@gmail.com>
2730 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2731 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2733 2020-02-06 Alan Modra <amodra@gmail.com>
2735 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2736 xfail, and rename test.
2737 * testsuite/gas/elf/section12b.d: Likewise.
2738 * testsuite/gas/elf/section16a.d: Likewise.
2739 * testsuite/gas/elf/section16b.d: Likewise.
2741 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2744 * config/obj-elf.c (section_match): Removed.
2745 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2747 (obj_elf_change_section): Replace info and group_name arguments
2748 with match_p. Also update the section ID and flags from match_p.
2749 (obj_elf_section): Handle "unique,N". Update call to
2750 obj_elf_change_section.
2751 * config/obj-elf.h (elf_section_match): New.
2752 (obj_elf_change_section): Updated.
2753 * config/tc-arm.c (start_unwind_section): Update call to
2754 obj_elf_change_section.
2755 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2756 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2757 (microblaze_s_sdata): Likewise.
2758 (microblaze_s_rdata): Likewise.
2759 (microblaze_s_bss): Likewise.
2760 * config/tc-mips.c (s_change_section): Likewise.
2761 * config/tc-msp430.c (msp430_profiler): Likewise.
2762 * config/tc-rx.c (parse_rx_section): Likewise.
2763 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2764 * doc/as.texi: Document "unique,N" in .section directive.
2765 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2766 * testsuite/gas/elf/section15.d: New file.
2767 * testsuite/gas/elf/section15.s: Likewise.
2768 * testsuite/gas/elf/section16.s: Likewise.
2769 * testsuite/gas/elf/section16a.d: Likewise.
2770 * testsuite/gas/elf/section16b.d: Likewise.
2771 * testsuite/gas/elf/section17.d: Likewise.
2772 * testsuite/gas/elf/section17.l: Likewise.
2773 * testsuite/gas/elf/section17.s: Likewise.
2774 * testsuite/gas/i386/unique.d: Likewise.
2775 * testsuite/gas/i386/unique.s: Likewise.
2776 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2777 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2779 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2781 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2783 2020-02-01 Anthony Green <green@moxielogic.com>
2785 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2787 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
2789 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2792 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2795 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2796 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2798 * testsuite/gas/arm/mve_dsp.d: New test.
2800 2020-01-31 Nick Clifton <nickc@redhat.com>
2802 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2803 rather than BFD_RELOC_NONE.
2805 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2807 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2808 to support VLDMIA instruction for MVE.
2809 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2810 instruction for MVE.
2811 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2812 instruction for MVE.
2813 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
2814 instruction for MVE.
2815 * testsuite/gas/arm/mve-ldst.d: New test.
2816 * testsuite/gas/arm/mve-ldst.s: Likewise.
2818 2020-01-31 Nick Clifton <nickc@redhat.com>
2820 * po/fr.po: Updated French translation.
2821 * po/ru.po: Updated Russian translation.
2823 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
2825 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
2827 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
2828 * testsuite/gas/aarch64/sve-movprfx_28.d,
2829 * testsuite/gas/aarch64/sve-movprfx_28.l,
2830 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
2832 2020-01-30 Jan Beulich <jbeulich@suse.com>
2834 * config/tc-i386.c (output_disp): Tighten base_opcode check.
2835 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
2836 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
2837 Adjust expectations.
2839 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
2841 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
2842 * testsuite/gas/bpf/alu-be.d: Likewise.
2843 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
2844 * testsuite/gas/bpf/alu32-be.d: Likewise.
2846 2020-01-30 Jan Beulich <jbeulich@suse.com>
2848 * testsuite/gas/i386/x86-64-branch-2.s,
2849 testsuite/gas/i386/x86-64-branch-4.s,
2850 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
2851 * testsuite/gas/i386/ilp32/x86-64-branch.d,
2852 testsuite/gas/i386/x86-64-branch-2.d,
2853 testsuite/gas/i386/x86-64-branch-4.l,
2854 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
2856 2020-01-30 Jan Beulich <jbeulich@suse.com>
2858 * config/tc-i386.c (process_suffix): .
2859 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
2860 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
2862 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
2864 testsuite/gas/i386/x86_64.s: Add RETF cases.
2865 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2866 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
2867 testsuite/gas/i386/x86-64-opcode.d,
2868 testsuite/gas/i386/x86-64-suffix-intel.d,
2869 testsuite/gas/i386/x86-64-suffix.d,
2870 testsuite/gas/i386/x86_64-intel.d
2871 testsuite/gas/i386/x86_64.d: Adjust expectations.
2872 * testsuite/gas/i386/x86-64-suffix.e,
2873 testsuite/gas/i386/x86_64.e: New.
2875 2020-01-30 Jan Beulich <jbeulich@suse.com>
2877 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
2880 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
2883 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
2885 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
2886 differences. Document movslq and movsxd.
2887 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
2888 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
2889 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
2890 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
2891 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
2892 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
2893 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
2894 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
2895 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
2896 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
2897 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
2899 2020-01-27 Alan Modra <amodra@gmail.com>
2901 * testsuite/gas/all/gas.exp: Replace case statements with switch
2903 * testsuite/gas/elf/elf.exp: Likewise.
2904 * testsuite/gas/macros/macros.exp: Likewise.
2905 * testsuite/lib/gas-defs.exp: Likewise.
2907 2020-01-27 Tamar Christina <tamar.christina@arm.com>
2910 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
2911 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
2913 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
2915 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
2916 s exts must be known, so rename *ok* to *fail*.
2917 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
2918 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
2919 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
2921 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
2922 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
2924 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
2927 * config/tc-i386.c (check_long_reg): Always disallow double word
2928 suffix in mnemonic with word general register.
2929 * testsuite/gas/i386/general.s: Replace word general register
2930 with double word general register for movl.
2931 * testsuite/gas/i386/inval.s: Add tests for movl with word general
2933 * testsuite/gas/i386/general.l: Updated.
2934 * testsuite/gas/i386/inval.l: Likewise.
2936 2020-01-22 Alan Modra <amodra@gmail.com>
2938 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2939 __tls_get_addr_desc and __tls_get_addr_opt.
2941 2020-01-21 Jan Beulich <jbeulich@suse.com>
2943 * testsuite/gas/i386/inval-crc32.s,
2944 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2945 * testsuite/gas/i386/inval-crc32.l,
2946 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2948 2020-01-21 Jan Beulich <jbeulich@suse.com>
2950 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2951 generic code path. Deal with No_lSuf being set in a template.
2952 * testsuite/gas/i386/inval-crc32.l,
2953 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2954 instead of error(s) when operand size is ambiguous.
2955 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2956 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2957 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2958 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2959 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2960 Adjust expectations.
2962 2020-01-21 Jan Beulich <jbeulich@suse.com>
2964 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2965 and an intel_syntax check. Re-write lack-of-suffix processing
2967 * doc/c-i386.texi: Document operand size defaults for suffix-
2968 less AT&T syntax insns.
2969 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2970 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2971 testsuite/gas/i386/x86-64-avx-scalar.s,
2972 testsuite/gas/i386/x86-64-avx.s,
2973 testsuite/gas/i386/x86-64-bundle.s,
2974 testsuite/gas/i386/x86-64-intel64.s,
2975 testsuite/gas/i386/x86-64-lock-1.s,
2976 testsuite/gas/i386/x86-64-opcode.s,
2977 testsuite/gas/i386/x86-64-sse2avx.s,
2978 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2979 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2980 testsuite/gas/i386/x86-64-nops.s,
2981 testsuite/gas/i386/x86-64-ptwrite.s,
2982 testsuite/gas/i386/x86-64-simd.s,
2983 testsuite/gas/i386/x86-64-sse-noavx.s,
2984 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2986 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2987 testsuite/gas/i386/noreg64.s: Add further tests.
2988 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2989 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2990 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2991 testsuite/gas/i386/sse-noavx.d,
2992 testsuite/gas/i386/x86-64-intel64.d,
2993 testsuite/gas/i386/x86-64-nops.d,
2994 testsuite/gas/i386/x86-64-opcode.d,
2995 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2996 testsuite/gas/i386/x86-64-ptwrite.d,
2997 testsuite/gas/i386/x86-64-simd-intel.d,
2998 testsuite/gas/i386/x86-64-simd-suffix.d,
2999 testsuite/gas/i386/x86-64-simd.d,
3000 testsuite/gas/i386/x86-64-sse-noavx.d
3001 testsuite/gas/i386/x86-64-suffix.d,
3002 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
3003 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
3004 testsuite/gas/i386/noreg64.l: New.
3005 * testsuite/gas/i386/i386.exp: Run new tests.
3007 2020-01-21 Jan Beulich <jbeulich@suse.com>
3009 * testsuite/gas/i386/avx512_bf16_vl.s,
3010 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
3011 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
3012 broadcast forms of VCVTNEPS2BF16.
3013 * testsuite/gas/i386/avx512_bf16_vl.d,
3014 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
3016 2020-01-20 Nick Clifton <nickc@redhat.com>
3018 * po/uk.po: Updated Ukranian translation.
3020 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
3023 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
3024 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
3026 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
3027 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
3028 R_X86_64_GOTPC32_TLSDESC relocation.
3030 2020-01-18 Nick Clifton <nickc@redhat.com>
3032 * configure: Regenerate.
3033 * po/gas.pot: Regenerate.
3035 2020-01-18 Nick Clifton <nickc@redhat.com>
3037 Binutils 2.34 branch created.
3039 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
3041 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
3042 with vex_encoding_vex.
3043 (parse_insn): Likewise.
3044 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
3045 and {vex3} documentation.
3046 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
3048 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
3050 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
3053 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
3054 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
3055 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
3056 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
3057 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
3058 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
3060 2020-01-16 Jan Beulich <jbeulich@suse.com>
3062 * config/tc-i386.c (match_template): Drop found_cpu_match local
3065 2020-01-16 Jan Beulich <jbeulich@suse.com>
3067 * testsuite/gas/i386/avx512dq-inval.l,
3068 testsuite/gas/i386/avx512dq-inval.s: New.
3069 * testsuite/gas/i386/i386.exp: Run new test.
3071 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3073 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
3074 relocations when the target is 430X, except when extracting part of an
3076 (msp430_srcoperand): Adjust comment.
3077 Initialize the expp member of the msp430_operand_s struct as
3079 (msp430_dstoperand): Likewise.
3080 * testsuite/gas/msp430/msp430.exp: Run new test.
3081 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
3082 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
3084 2020-01-15 Alan Modra <amodra@gmail.com>
3086 * configure.tgt: Add sparc-*-freebsd case.
3088 2020-01-14 Lili Cui <lili.cui@intel.com>
3090 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
3091 * testsuite/gas/i386/align-branch-1b.d: Likewise.
3092 * testsuite/gas/i386/align-branch-1c.d: Likewise.
3093 * testsuite/gas/i386/align-branch-1d.d: Likewise.
3094 * testsuite/gas/i386/align-branch-1e.d: Likewise.
3095 * testsuite/gas/i386/align-branch-1f.d: Likewise.
3096 * testsuite/gas/i386/align-branch-1g.d: Likewise.
3097 * testsuite/gas/i386/align-branch-1h.d: Likewise.
3098 * testsuite/gas/i386/align-branch-1i.d: Likewise.
3099 * testsuite/gas/i386/align-branch-5.d: Likewise.
3100 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
3101 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
3102 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
3103 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
3104 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
3105 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
3106 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
3107 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
3108 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
3109 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
3110 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
3111 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
3113 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
3116 * config/tc-z80.c: Add support for half precision, single
3117 precision and double precision floating point values.
3118 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
3119 * doc/as.texi: Add new z80 command line options.
3120 * doc/c-z80.texi: Document new z80 command line options.
3121 * testsuite/gas/z80/ez80_pref_dis.s: New test.
3122 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
3123 * testsuite/gas/z80/z80.exp: Run the new test.
3124 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
3125 * testsuite/gas/z80/fp_zeda32.d: Likewise.
3126 * testsuite/gas/z80/strings.d: Update expected output.
3128 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
3130 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
3133 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
3135 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
3137 * config/tc-arc.h: Add header if/defs.
3138 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
3140 2020-01-13 Alan Modra <amodra@gmail.com>
3142 * testsuite/gas/wasm32/allinsn.d: Update expected output.
3144 2020-01-13 Alan Modra <amodra@gmail.com>
3146 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
3149 2020-01-10 Alan Modra <amodra@gmail.com>
3151 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
3152 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
3154 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3157 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
3159 (emit_ld_r_r): Likewise.
3160 (emit_ld_rr_m): Likewise.
3161 (emit_ld_rr_nn): Likewise.
3163 2020-01-09 Jan Beulich <jbeulich@suse.com>
3165 * config/tc-i386.c (optimize_encoding): Add
3166 is_any_vex_encoding() invocations. Drop respective
3167 i.tm.extension_opcode == None checks.
3169 2020-01-09 Jan Beulich <jbeulich@suse.com>
3171 * config/tc-i386.c (md_assemble): Check RegRex is clear during
3172 REX transformations. Correct comment indentation.
3174 2020-01-09 Jan Beulich <jbeulich@suse.com>
3176 * config/tc-i386.c (optimize_encoding): Generalize register
3177 transformation for TEST optimization.
3179 2020-01-09 Jan Beulich <jbeulich@suse.com>
3181 * testsuite/gas/i386/x86-64-sysenter-amd.s,
3182 testsuite/gas/i386/x86-64-sysenter-amd.d,
3183 testsuite/gas/i386/x86-64-sysenter-amd.l,
3184 testsuite/gas/i386/x86-64-sysenter-intel.d,
3185 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
3186 * testsuite/gas/i386/i386.exp: Run new tests.
3188 2020-01-08 Nick Clifton <nickc@redhat.com>
3191 * doc/as.texi (Align): Document the fact that all arguments can be
3194 (P2align): Likewise.
3196 2020-01-08 Nick Clifton <nickc@redhat.com>
3199 * config/obj-elf.c (obj_elf_section): Fail if the section name is
3200 already defined as a different symbol type.
3201 * testsuite/gas/elf/pr14891.s: New test source file.
3202 * testsuite/gas/elf/pr14891.d: New test driver.
3203 * testsuite/gas/elf/pr14891.s: New test expected error output.
3204 * testsuite/gas/elf/elf.exp: Run the new test.
3206 2020-01-08 Alan Modra <amodra@gmail.com>
3208 * config/tc-z8k.c (md_begin): Make idx unsigned.
3209 (get_specific): Likewise for this_index.
3211 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
3213 * onfig/tc-arc.c (parse_reloc_symbol): New function.
3214 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
3215 (md_operand): Set X_md to absent.
3216 (arc_parse_name): Check for X_md.
3218 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3221 * as.h (TC_STRING_ESCAPES): Provide a default definition.
3222 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
3224 * read.c (next_char_of_string): Likewise.
3225 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
3226 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
3228 2020-01-03 Nick Clifton <nickc@redhat.com>
3230 * po/sv.po: Updated Swedish translation.
3232 2020-01-03 Jan Beulich <jbeulich@suse.com>
3234 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
3235 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3237 2020-01-03 Jan Beulich <jbeulich@suse.com>
3239 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
3240 by-element usdot. Add 64-bit form tests for by-element sudot.
3241 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
3243 2020-01-03 Jan Beulich <jbeulich@suse.com>
3245 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
3246 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3248 2020-01-03 Jan Beulich <jbeulich@suse.com>
3250 * testsuite/gas/aarch64/f64mm.d,
3251 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
3253 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
3255 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
3256 support for assembler code generated by SDCC. Add new relocation
3257 types. Add z80-elf target support.
3258 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
3259 labels. Local labels starts from ".L".
3260 * NEWS: Mention the new support.
3261 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
3262 * testsuite/gas/all/fwdexp.s: Likewise.
3263 * testsuite/gas/all/cond.l: Likewise.
3264 * testsuite/gas/all/cond.s: Likewise.
3265 * testsuite/gas/all/fwdexp.d: Likewise.
3266 * testsuite/gas/all/fwdexp.s: Likewise.
3267 * testsuite/gas/elf/section2.e-mips: Likewise.
3268 * testsuite/gas/elf/section2.l: Likewise.
3269 * testsuite/gas/elf/section2.s: Likewise.
3270 * testsuite/gas/macros/app1.d: Likewise.
3271 * testsuite/gas/macros/app1.s: Likewise.
3272 * testsuite/gas/macros/app2.d: Likewise.
3273 * testsuite/gas/macros/app2.s: Likewise.
3274 * testsuite/gas/macros/app3.d: Likewise.
3275 * testsuite/gas/macros/app3.s: Likewise.
3276 * testsuite/gas/macros/app4.d: Likewise.
3277 * testsuite/gas/macros/app4.s: Likewise.
3278 * testsuite/gas/macros/app4b.s: Likewise.
3279 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
3280 * testsuite/gas/z80/z80.exp: Add new tests
3281 * testsuite/gas/z80/dollar.d: New file.
3282 * testsuite/gas/z80/dollar.s: New file.
3283 * testsuite/gas/z80/ez80_adl_all.d: New file.
3284 * testsuite/gas/z80/ez80_adl_all.s: New file.
3285 * testsuite/gas/z80/ez80_adl_suf.d: New file.
3286 * testsuite/gas/z80/ez80_isuf.s: New file.
3287 * testsuite/gas/z80/ez80_z80_all.d: New file.
3288 * testsuite/gas/z80/ez80_z80_all.s: New file.
3289 * testsuite/gas/z80/ez80_z80_suf.d: New file.
3290 * testsuite/gas/z80/r800_extra.d: New file.
3291 * testsuite/gas/z80/r800_extra.s: New file.
3292 * testsuite/gas/z80/r800_ii8.d: New file.
3293 * testsuite/gas/z80/r800_z80_doc.d: New file.
3294 * testsuite/gas/z80/z180.d: New file.
3295 * testsuite/gas/z80/z180.s: New file.
3296 * testsuite/gas/z80/z180_z80_doc.d: New file.
3297 * testsuite/gas/z80/z80_doc.d: New file.
3298 * testsuite/gas/z80/z80_doc.s: New file.
3299 * testsuite/gas/z80/z80_ii8.d: New file.
3300 * testsuite/gas/z80/z80_ii8.s: New file.
3301 * testsuite/gas/z80/z80_in_f_c.d: New file.
3302 * testsuite/gas/z80/z80_in_f_c.s: New file.
3303 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
3304 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
3305 * testsuite/gas/z80/z80_out_c_0.d: New file.
3306 * testsuite/gas/z80/z80_out_c_0.s: New file.
3307 * testsuite/gas/z80/z80_reloc.d: New file.
3308 * testsuite/gas/z80/z80_reloc.s: New file.
3309 * testsuite/gas/z80/z80_sli.d: New file.
3310 * testsuite/gas/z80/z80_sli.s: New file.
3312 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
3314 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
3317 2020-01-01 Alan Modra <amodra@gmail.com>
3319 Update year range in copyright notice of all files.
3321 For older changes see ChangeLog-2019
3323 Copyright (C) 2020 Free Software Foundation, Inc.
3325 Copying and distribution of this file, with or without modification,
3326 are permitted in any medium without royalty provided the copyright
3327 notice and this notice are preserved.
3333 version-control: never