1 2020-07-20 Jan Beulich <jbeulich@suse.com>
3 * testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
4 is_elf_format as applicable; merely exclude iamcu tests.
6 2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
9 * config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
10 against section to PC32 reloc.
11 * testsuite/gas/i386/relax-5.d: Updated.
12 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
14 2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
17 * testsuite/gas/i386/evex-no-scale-64.d: Updated.
18 * testsuite/gas/i386/addr32.d: Likewise.
19 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
20 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
22 2020-07-15 Nick Clifton <nickc@redhat.com>
24 * write.c (create_note_reloc): Add desc2_size parameter. Zero out
25 the addend field of REL relocations. Store the full addend into
26 the note for REL relocations.
28 2020-07-15 Jan Beulich <jbeulich@suse.com>
30 * testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
32 * testsuite/gas/i386/x86-64-stack-intel.d,
33 testsuite/gas/i386/x86-64-stack-suffix.d,
34 testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
36 2020-07-15 Jan Beulich <jbeulich@suse.com>
38 * testsuite/gas/i386/disassem.d,
39 testsuite/gas/i386/ilp32/x86-64-branch.d,
40 testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
41 testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
42 testsuite/gas/i386/noreg32.d,
43 testsuite/gas/i386/noreg64-rex64.d,
44 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
45 testsuite/gas/i386/opcode.d,
46 testsuite/gas/i386/solaris/x86-64-branch-2.d,
47 testsuite/gas/i386/solaris/x86-64-jump.d,
48 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
49 testsuite/gas/i386/solaris/x86-64-nop-3.d,
50 testsuite/gas/i386/solaris/x86-64-nop-4.d,
51 testsuite/gas/i386/solaris/x86-64-nop-5.d,
52 testsuite/gas/i386/solaris/x86-64-relax-2.d,
53 testsuite/gas/i386/solaris/x86-64-relax-3.d,
54 testsuite/gas/i386/x86-64-align-branch-1a.d,
55 testsuite/gas/i386/x86-64-align-branch-1b.d,
56 testsuite/gas/i386/x86-64-align-branch-1c.d,
57 testsuite/gas/i386/x86-64-align-branch-1d.d,
58 testsuite/gas/i386/x86-64-align-branch-1e.d,
59 testsuite/gas/i386/x86-64-align-branch-1f.d,
60 testsuite/gas/i386/x86-64-align-branch-1g.d,
61 testsuite/gas/i386/x86-64-align-branch-1h.d,
62 testsuite/gas/i386/x86-64-align-branch-1i.d,
63 testsuite/gas/i386/x86-64-align-branch-2a.d,
64 testsuite/gas/i386/x86-64-align-branch-2b.d,
65 testsuite/gas/i386/x86-64-align-branch-2c.d,
66 testsuite/gas/i386/x86-64-align-branch-3.d,
67 testsuite/gas/i386/x86-64-align-branch-4a.d,
68 testsuite/gas/i386/x86-64-align-branch-4b.d,
69 testsuite/gas/i386/x86-64-align-branch-5.d,
70 testsuite/gas/i386/x86-64-align-branch-6.d,
71 testsuite/gas/i386/x86-64-branch-2.d,
72 testsuite/gas/i386/x86-64-branch-3.d,
73 testsuite/gas/i386/x86-64-branch.d,
74 testsuite/gas/i386/x86-64-disassem.d,
75 testsuite/gas/i386/x86-64-disp32.d,
76 testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
77 testsuite/gas/i386/x86-64-gotpcrel.d,
78 testsuite/gas/i386/x86-64-ifunc.d,
79 testsuite/gas/i386/x86-64-jump.d,
80 testsuite/gas/i386/x86-64-lfence-byte.d,
81 testsuite/gas/i386/x86-64-lfence-indbr-a.d,
82 testsuite/gas/i386/x86-64-lfence-indbr-b.d,
83 testsuite/gas/i386/x86-64-lfence-indbr-c.d,
84 testsuite/gas/i386/x86-64-lfence-load.d,
85 testsuite/gas/i386/x86-64-lfence-ret-a.d,
86 testsuite/gas/i386/x86-64-lfence-ret-b.d,
87 testsuite/gas/i386/x86-64-lfence-ret-c.d,
88 testsuite/gas/i386/x86-64-lfence-ret-d.d,
89 testsuite/gas/i386/x86-64-lfence-ret-e.d,
90 testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
91 testsuite/gas/i386/x86-64-mpx-branch-1.d,
92 testsuite/gas/i386/x86-64-mpx.d,
93 testsuite/gas/i386/x86-64-nop-3.d,
94 testsuite/gas/i386/x86-64-nop-4.d,
95 testsuite/gas/i386/x86-64-nop-5.d,
96 testsuite/gas/i386/x86-64-nops-7.d,
97 testsuite/gas/i386/x86-64-notrack.d,
98 testsuite/gas/i386/x86-64-opcode.d,
99 testsuite/gas/i386/x86-64-relax-2.d,
100 testsuite/gas/i386/x86-64-relax-3.d,
101 testsuite/gas/i386/x86-64-relax-4.d,
102 testsuite/gas/i386/x86-64-rtm.d,
103 testsuite/gas/i386/x86-64-stack.d,
104 testsuite/gas/i386/x86-64-unique.d,
105 testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
107 2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
110 * testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
112 * testsuite/gas/i386/x86-64-addr32.s: Likewise.
113 * testsuite/gas/i386/addr32.d: Updated.
114 * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
115 * testsuite/gas/i386/x86-64-addr32.d: Likewise.
116 * testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
117 * testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
119 2020-07-14 Jan Beulich <jbeulich@suse.com>
121 * testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
122 * testsuite/gas/i386/intel-intel.d: Disambiguate name.
123 * testsuite/gas/i386/intel.d,
124 testsuite/gas/i386/opcode-intel.d: Adjust expectations.
126 2020-07-14 Jan Beulich <jbeulich@suse.com>
128 * testsuite/gas/i386/prefix.d: Adjust expectations.
130 2020-07-14 Jan Beulich <jbeulich@suse.com>
132 * testsuite/gas/i386/x86-64-avx-intel.d,
133 testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
135 2020-07-14 Jan Beulich <jbeulich@suse.com>
137 * testsuite/gas/i386/movbe-suffix.d,
138 testsuite/gas/i386/x86-64-movbe-suffix.d: New.
139 * testsuite/gas/i386/i386.exp: Run new tests.
141 2020-07-14 Jan Beulich <jbeulich@suse.com>
143 * testsuite/gas/i386/crc32-suffix.d,
144 testsuite/gas/i386/x86-64-crc32-suffix.d: New.
145 * testsuite/gas/i386/i386.exp: Run new tests.
146 * testsuite/gas/i386/arch-10-bdver1.d,
147 testsuite/gas/i386/arch-10-bdver2.d,
148 testsuite/gas/i386/arch-10-bdver3.d,
149 testsuite/gas/i386/arch-10-bdver4.d,
150 testsuite/gas/i386/arch-10-btver1.d,
151 testsuite/gas/i386/arch-10-btver2.d,
152 testsuite/gas/i386/arch-10-lzcnt.d,
153 testsuite/gas/i386/arch-10-prefetchw.d,
154 testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
155 testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
156 testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
157 testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
158 testsuite/gas/i386/x86-64-arch-2-bdver1.d,
159 testsuite/gas/i386/x86-64-arch-2-bdver2.d,
160 testsuite/gas/i386/x86-64-arch-2-bdver3.d,
161 testsuite/gas/i386/x86-64-arch-2-bdver4.d,
162 testsuite/gas/i386/x86-64-arch-2-btver1.d,
163 testsuite/gas/i386/x86-64-arch-2-btver2.d,
164 testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
165 testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
166 testsuite/gas/i386/x86-64-arch-2.d,
167 testsuite/gas/i386/x86-64-crc32.d,
168 testsuite/gas/i386/x86-64-pseudos.d,
169 testsuite/gas/i386/x86-64-sse-noavx.d,
170 testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
172 2020-07-14 Jan Beulich <jbeulich@suse.com>
174 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
175 ModR/M-encoded byte register cases.
176 * testsuite/gas/i386/x86-64-pseudos.d,
177 testsuite/gas/i386/x86-64-reg-intel.d,
178 testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
180 2020-07-14 Jan Beulich <jbeulich@suse.com>
182 * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
183 not-ModR/M-encoded byte register cases.
184 * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
186 2020-07-14 Jan Beulich <jbeulich@suse.com>
188 * testsuite/gas/i386/ilp32/x86-64-arch-1.d,
189 testsuite/gas/i386/ilp32/x86-64-arch-2.d,
190 testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
191 testsuite/gas/i386/ilp32/x86-64-avx.d,
192 testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
193 testsuite/gas/i386/ilp32/x86-64-crc32.d,
194 testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
195 testsuite/gas/i386/ilp32/x86-64-ifunc.d,
196 testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
197 testsuite/gas/i386/ilp32/x86-64-reg.d,
198 testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
199 testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
200 testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
201 testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
202 testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
203 testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
206 2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
208 * config/tc-i386.c (offset_in_range): Remove 32-bit sign
211 2020-07-13 Nick Clifton <nickc@redhat.com>
213 * po/fr.po: Updated French translation.
215 2020-07-13 Alan Modra <amodra@gmail.com>
217 * testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
218 * testsuite/gas/elf/dwarf2-12.d: Likewise.
219 * testsuite/gas/elf/dwarf2-13.d: Likewise.
220 * testsuite/gas/elf/dwarf2-14.d: Likewise.
222 2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
224 * config/tc-i386.c (output_insn): Check i.xstate to set
225 GNU_PROPERTY_X86_FEATURE_2_TMM.
226 * testsuite/gas/i386/i386.exp: Run x86-64-property-7,
227 x86-64-property-8 and x86-64-property-9.
228 * testsuite/gas/i386/x86-64-property-7.d: New file.
229 * testsuite/gas/i386/x86-64-property-7.s: Likewise.
230 * testsuite/gas/i386/x86-64-property-8.d: Likewise.
231 * testsuite/gas/i386/x86-64-property-8.s: Likewise.
232 * testsuite/gas/i386/x86-64-property-9.d: Likewise.
233 * testsuite/gas/i386/x86-64-property-9.s: Likewise.
235 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
237 * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
238 has_regymm, has_regzmm and has_regtmm. Add xstate.
239 (md_assemble): Set i.xstate from operand types in instruction
241 (build_modrm_byte): Updated.
242 (output_insn): Check i.xstate.
243 * testsuite/gas/i386/i386.exp: Run property-6 and
245 * testsuite/gas/i386/property-6.d: New file.
246 * testsuite/gas/i386/property-6.s: Updated.
247 * testsuite/gas/i386/x86-64-property-6.d: Likewise.
249 2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
251 * testsuite/gas/i386/property-5.d: Correct test name.
253 2020-07-10 Lili Cui <lili.cui@intel.com>
255 * NEWS: Mention support for Intel AMX instructions.
256 * config/tc-i386.c (i386_error): Add invalid_sib_address.
257 (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
258 (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
259 (match_simd_size): Add tmmword check.
260 (operand_type_match): Add tmmword.
261 (type_names): Add rTMM.
262 (i386_error): Add invalid_tmm_register_set.
263 (check_VecOperands): Handle invalid_sib_address and
264 invalid_tmm_register_set.
265 (match_template): Handle invalid_sib_address.
266 (build_modrm_byte): Handle non-vector SIB and zmmword.
267 (i386_index_check): Disallow RegIP for non-vector SIB.
268 (check_register): Handle zmmword.
269 * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
270 * testsuite/gas/i386/i386.exp: Add AMX new tests.
271 * testsuite/gas/i386/intel-regs.d: Add tmm.
272 * testsuite/gas/i386/intel-regs.s: Add tmm.
273 * testsuite/gas/i386/x86-64-amx-intel.d: New.
274 * testsuite/gas/i386/x86-64-amx-inval.l: New.
275 * testsuite/gas/i386/x86-64-amx-inval.s: New.
276 * testsuite/gas/i386/x86-64-amx.d: New.
277 * testsuite/gas/i386/x86-64-amx.s: New.
278 * testsuite/gas/i386/x86-64-amx-bad.d: New.
279 * testsuite/gas/i386/x86-64-amx-bad.s: New.
281 2020-07-10 Tom de Vries <tdevries@suse.de>
283 * testsuite/gas/elf/dwarf2-11.d: Update expected output from
284 readelf's line table decoding.
285 * testsuite/gas/elf/dwarf2-12.d: Likewise.
286 * testsuite/gas/elf/dwarf2-13.d: Likewise.
287 * testsuite/gas/elf/dwarf2-14.d: Likewise.
288 * testsuite/gas/elf/dwarf2-15.d: Likewise.
289 * testsuite/gas/elf/dwarf2-16.d: Likewise.
290 * testsuite/gas/elf/dwarf2-17.d: Likewise.
291 * testsuite/gas/elf/dwarf2-18.d: Likewise.
292 * testsuite/gas/elf/dwarf2-19.d: Likewise.
293 * testsuite/gas/elf/dwarf2-5.d: Likewise.
294 * testsuite/gas/elf/dwarf2-6.d: Likewise.
295 * testsuite/gas/elf/dwarf2-7.d: Likewise.
297 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
299 * config/tc-i386.c (output_insn): Set YMM/ZMM features for
300 VEX/EVEX vector instructions.
301 * testsuite/gas/i386/property-4.d: New file.
302 * testsuite/gas/i386/property-4.s: Likewise.
303 * testsuite/gas/i386/property-5.d: Likewise.
304 * testsuite/gas/i386/property-5.s: Likewise.
305 * testsuite/gas/i386/x86-64-property-4.d: Likewise.
306 * testsuite/gas/i386/x86-64-property-5.d: Likewise.
308 2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
310 * NEWS: Mention --enable-x86-used-note.
311 * configure.ac: Configure with --enable-x86-used-note by default
313 * configure: Regenerated.
315 2020-07-09 Alan Modra <amodra@gmail.com>
317 * config/obj-coff.h: Remove TE_PE support.
318 * config/tc-ppc.c: Likewise.
319 * config/tc-ppc.h: Likewise.
320 * configure.tgt: Remove powerpc PE and powerpc lynxos.
321 * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
323 * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
325 2020-07-08 Jan Beulich <jbeulich@suse.com>
327 * testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
329 * testsuite/gas/i386/i386.exp: Run new tests.
331 2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
333 * config/tc-arc.c (find_opcode_match): Add error messages.
334 * testsuite/gas/arc/add_s-err.s: Update test.
335 * testsuite/gas/arc/asm-errors.err: Likewise.
336 * testsuite/gas/arc/cpu-em-err.s: Likewise.
337 * testsuite/gas/arc/hregs-err.s: Likewise.
338 * testsuite/gas/arc/warn.s: Likewise.
340 2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
343 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
345 2020-07-07 Alan Modra <amodra@gmail.com>
347 * testsuite/gas/all/gas.exp: Use is_xcoff_format.
348 * testsuite/gas/ppc/ppc.exp: Likewise.
349 * testsuite/gas/all/weakref1l.d: Likewise.
351 2020-07-07 Nick Clifton <nickc@redhat.com>
353 * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
356 2020-07-06 Jan Beulich <jbeulich@suse.com>
358 * testsuite/gas/i386/x86-64-avx512bw-wig1.d,
359 testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
360 testsuite/gas/i386/x86-64-evex-wig1.d,
361 testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
364 2020-07-06 Jan Beulich <jbeulich@suse.com>
366 * testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
367 * testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
368 * testsuite/gas/i386/avx512f-opts-intel.d,
369 testsuite/gas/i386/avx512f-opts.d
370 testsuite/gas/i386/x86-64-avx512f-opts-intel.d
371 testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
373 2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
376 * config/tc-arm.c: Fix spelling mistake.
377 * config/tc-riscv.c: Likewise.
378 * config/tc-z80.c: Likewise.
379 * po/gas.pot: Regenerate.
381 2020-07-06 Nick Clifton <nickc@redhat.com>
383 * po/uk.po: Updated Ukranian translation.
385 2020-07-04 Nick Clifton <nickc@redhat.com>
387 * configure: Regenerate.
388 * po/gas.pot: Regenerate.
390 2020-07-04 Nick Clifton <nickc@redhat.com>
392 * version.m4: Change version number to 2.35.50.
393 * configure: Regenerate.
394 * po/bfd.pot: Regenerate.
396 2020-07-04 Nick Clifton <nickc@redhat.com>
398 Binutils 2.35 branch created.
400 2020-07-03 Alan Modra <amodra@gmail.com>
403 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
405 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
407 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
408 swap two source operands.
410 2020-07-02 Nick Clifton <nickc@redhat.com>
412 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
414 2020-07-02 Alex Coplan <alex.coplan@arm.com>
416 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
417 segfault on negative chars.
418 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
419 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
421 2020-07-02 Nick Clifton <nickc@redhat.com>
424 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
426 * testsuite/gas/ia64/unwind.d: Likewise.
427 * testsuite/gas/mmix/bspec-1.d: Likewise.
428 * testsuite/gas/mmix/bspec-2.d: Likewise.
429 * testsuite/gas/mmix/comment-1.d: Likewise.
430 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
432 2020-07-01 Alan Modra <amodra@gmail.com>
434 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
436 2020-07-01 Alan Modra <amodra@gmail.com>
438 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
439 in data sections, and mep.
441 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
443 * NEWS: Mention x86 NaCl target support removal.
444 * config/tc-i386.c: Remove x86 NaCl target support.
445 * config/tc-i386.h: Likewise.
446 * configure.tgt: Likewise.
447 * testsuite/gas/i386/i386.exp: Likewise.
448 * testsuite/gas/i386/iamcu-1.d: Likewise.
449 * testsuite/gas/i386/iamcu-2.d: Likewise.
450 * testsuite/gas/i386/iamcu-3.d: Likewise.
451 * testsuite/gas/i386/iamcu-4.d: Likewise.
452 * testsuite/gas/i386/iamcu-5.d: Likewise.
453 * testsuite/gas/i386/k1om.d: Likewise.
454 * testsuite/gas/i386/l1om.d: Likewise.
456 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
458 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
459 checking into riscv_csr_address.
460 (riscv_csr_version_check): Likewise.
461 (riscv_csr_address): New function. Return the suitable CSR address
462 after checking the ISA dependency and versions. Issue warnings if
463 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
464 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
465 priv spec versions for them.
466 (reg_csr_lookup_internal): Call riscv_csr_address to find the
467 suitable CSR address.
468 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
469 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
470 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
471 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
472 priv spec warnings here. These warnings are added by accident.
473 Remove them and only focus on the ISA dependency warnings.
474 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
475 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
476 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
477 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
478 than the privileged ones.
479 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
480 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
481 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
482 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
483 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
484 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
485 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
486 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
487 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
488 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
490 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
492 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
493 (md_assemble): Don't process ImmExt without operands.
495 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
498 * config/tc-mmix.c (md_assemble) <fixup for
499 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
500 Also, set its fx_no_overflow.
501 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
502 Similarly this fixup affects 4 bytes, not 8 and needs its
504 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
505 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
507 2020-06-29 Alan Modra <amodra@gmail.com>
509 * config/tc-s12z.c: Use C style comments.
510 * config/tc-z80.c: Likewise.
511 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
513 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
515 * config/tc-i386.c (md_assemble): Process ImmExt without
518 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
520 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
521 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
522 VECSIB256 and VECSIB512, respectively.
523 (build_modrm_byte): Replace vecsib with sib.
525 2020-06-26 Jan Beulich <jbeulich@suse.com>
527 * testsuite/gas/i386/nop-1-suffix.d: New.
528 * testsuite/gas/i386/i386.exp: Run new test.
530 2020-06-26 Pat Bernardi <bernardi@adacore.com>
532 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
533 (md_pseudo_table): Handle "gnu_attribute".
534 * doc/as.texi: Document GNU attribute for M68K.
536 2020-06-25 Nick Clifton <nickc@redhat.com>
539 * config/tc-arm.c (arm_force_relocation): Force resolution of
540 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
541 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
543 2020-06-25 Jan Beulich <jbeulich@suse.com>
545 * config/tc-i386.c (md_assemble): Move call to process_immext()
547 (process_operands): ... here.
549 2020-06-25 Jan Beulich <jbeulich@suse.com>
551 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
552 diagnostic when there is a sizing prefix. Switch to word/dword/
553 qword encoding when there is a sizing prefix and no (explicit or
555 (update_imm): Handle presence of a sizing prefix.
556 * testsuite/gas/i386/noreg16-data32.d,
557 testsuite/gas/i386/noreg32-data16.d,
558 testsuite/gas/i386/noreg32-data16.e,
559 testsuite/gas/i386/noreg64-data16.d,
560 testsuite/gas/i386/noreg64-data16.e,
561 testsuite/gas/i386/noreg64-rex64.d: New.
562 * testsuite/gas/i386/i386.exp: Run new tests.
563 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
564 Introduce and use pfx* macros.
565 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
567 * testsuite/gas/i386/noreg16.d: Adjust expectations.
569 2020-06-25 Jan Beulich <jbeulich@suse.com>
571 * testsuite/gas/i386/avx-16bit.d,
572 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
573 testsuite/gas/i386/avx512f-16bit.d,
574 testsuite/gas/i386/avx512f.d,
575 testsuite/gas/i386/evex-lig256.d,
576 testsuite/gas/i386/evex-lig512.d
577 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
578 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
579 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
580 testsuite/gas/i386/sse2-16bit.d,
581 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
584 2020-06-25 Jan Beulich <jbeulich@suse.com>
586 * config/tc-i386.c (md_assemble): Also reject explicit REX
587 prefixes with VEX and alike encoded insns. Zap consumed bits
589 (output_insn): Don't ignore REX prefix for VEX and alike
590 encodings; abort() instead if encountered.
591 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
593 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
594 * testsuite/gas/i386/x86-64-pseudos.d,
595 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
597 2020-06-25 Jan Beulich <jbeulich@suse.com>
599 * config/tc-i386.c (process_operands): Translate explicit REX
600 prefix into i.rex for SSE2AVX templates.
601 (set_rex_vrex): New helper.
602 (build_modrm_byte): Use it.
603 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
605 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
607 2020-06-25 Jan Beulich <jbeulich@suse.com>
609 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
610 templates when there's no data size prefix.
611 (md_assemble): Reject data size prefix also for legacy encoded
613 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
614 Uncomment previously not working line.
615 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
617 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
618 testsuite/gas/i386/sse2avx.d: Adjust expectations.
620 2020-06-25 Jan Beulich <jbeulich@suse.com>
622 * config/tc-i386.c (build_evex_prefix): Drop early setting of
625 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
627 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
628 explicit_priv_attr. It used to indicate CSR or priv instructions are
630 (riscv_is_priv_insn): Return True if it is a privileged instruction.
631 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
632 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
633 (riscv_write_out_attrs): Clarification of when to generate the elf
634 priv spec attributes.
635 * testsuite/gas/riscv/attribute-11.s: Add comments.
636 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
637 `priv_insn_<n>` to decide which priv instruction is expected to used.
639 * testsuite/gas/riscv/attribute-14a.d: Likewise.
640 * testsuite/gas/riscv/attribute-14b.d: Likewise.
641 * testsuite/gas/riscv/attribute-14c.d: Likewise.
642 * testsuite/gas/riscv/attribute-14d.d: Likewise.
643 * testsuite/gas/riscv/attribute-14e.d: Likewise.
645 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
647 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
648 (riscv_set_default_priv_spec): Get the priv spec version from the
649 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
651 2020-06-20 Alan Modra <amodra@gmail.com>
653 * configure.tgt: Set bfd_gas for all SH targets.
655 2020-06-18 Jan Beulich <jbeulich@suse.com>
657 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
658 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
661 2020-06-16 Lili Cui <lili.cui@intel.com>
663 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
664 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
665 * doc/c-i386.texi: Add avx512_vp2intersect.
667 2020-06-16 Jan Beulich <jbeulich@suse.com>
669 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
671 * testsuite/gas/i386/sse-check.s: Adjust comment.
672 * testsuite/gas/i386/sse-check-error.l,
673 testsuite/gas/i386/sse-check-warn.e,
674 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
677 2020-06-16 Alan Modra <amodra@gmail.com>
679 * config/tc-tic30.h: Remove OBJ_AOUT support.
680 * configure.tgt: Delete tic30-*-*aout* entry.
682 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
684 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
686 (elf32xtensa_abi): New declaration.
687 (option_abi_windowed, option_abi_call0): New enum constants.
688 (md_longopts): Add entries for --abi-windowed and --abi-call0.
689 (md_parse_option): Add handlers for --abi-windowed and
691 (xtensa_add_config_info): Use xtensa_abi_choice instead of
692 XSHAL_ABI to format ABI tag.
693 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
694 --abi-call0 to the list of options.
695 * doc/c-xtensa.texi: Add description for options --abi-windowed
697 * testsuite/gas/xtensa/abi-call0.d: New test definition.
698 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
699 * testsuite/gas/xtensa/abi.s: New test source.
701 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
704 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
706 * testsuite/gas/i386/tsxldtrk.s: Likewise.
707 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
708 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
710 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
712 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
713 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
714 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
716 2020-06-09 Seth Girvan <snth@snthhacks.com>
718 * doc/c-avr.texi: Improve wording.
720 2020-06-09 Jan Beulich <jbeulich@suse.com>
722 * testsuite/gas/i386/x86-64-pseudos-bad.s,
723 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
725 2020-06-09 Jan Beulich <jbeulich@suse.com>
727 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
729 * testsuite/gas/i386/prefix.d: Adjust expectations.
731 2020-06-09 Jan Beulich <jbeulich@suse.com>
733 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
734 with VEX/EVEX encoding tests.
735 * testsuite/gas/i386/prefix.d: Adjust expectations.
737 2020-06-09 Jan Beulich <jbeulich@suse.com>
739 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
741 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
742 * testsuite/gas/i386/noreg64.d: Adjust expectations.
743 * testsuite/gas/i386/noreg-intel64.d,
744 testsuite/gas/i386/noreg-intel64.l,
745 testsuite/gas/i386/noreg-intel64.s: New.
746 * testsuite/gas/i386/i386.exp: Run new tests.
748 2020-06-09 Jan Beulich <jbeulich@suse.com>
750 * config/tc-i386.c (vex_encoding_error): New enumerator.
751 (VEX_check_operands): Rename to VEX_check_encoding. Check
752 for vex_encoding_error. Move Imm4 handling ...
753 (check_VecOperands): ... here.
754 (match_template): Call VEX_check_encoding when there are no
755 operands. Split construct calling check_VecOperands and
756 VEX_check_encoding (when there are operands).
757 (check_register): Don't blindly set vex_encoding_evex.
758 * testsuite/gas/i386/pseudos-bad.s,
759 testsuite/gas/i386/pseudos-bad.l: New.
760 * testsuite/gas/i386/i386.exp: Run new test.
761 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
763 2020-06-08 Alex Coplan <alex.coplan@arm.com>
765 * config/tc-arm.c (insns): Add dfb.
766 * testsuite/gas/arm/dfb.d: New test.
767 * testsuite/gas/arm/dfb.s: Input for test.
769 2020-06-08 Nick Clifton <nickc@redhat.com>
771 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
773 2020-06-08 Jan Beulich <jbeulich@suse.com>
775 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
777 2020-06-08 Jan Beulich <jbeulich@suse.com>
779 * config/tc-i386.c (check_byte_reg): Drop dead conditional
782 2020-06-08 Jan Beulich <jbeulich@suse.com>
784 * config/tc-i386.c (check_register): Split RegTR handling, to
785 fail recognition also in 64-bit mode as well as with i586 or
786 i686 explicitly enabled.
787 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
788 * testsuite/gas/i386/x86_64-intel.d,
789 testsuite/gas/i386/x86_64.d: Adjust expectations.
791 2020-06-08 Jan Beulich <jbeulich@suse.com>
793 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
794 * testsuite/gas/cfi/cfi.exp: Run this test.
796 2020-06-08 Jan Beulich <jbeulich@suse.com>
798 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
799 check to %st(N) parsing logic.
800 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
802 2020-06-08 Jan Beulich <jbeulich@suse.com>
804 * config/tc-i386.c (bad_reg): New.
805 (check_VecOperations, i386_att_operand, i386_parse_name): Check
807 (check_register): New, broken out from ...
808 (parse_real_register): ... here. Call it.
809 (parse_register): Call it, and error upon failure.
810 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
811 testsuite/gas/i386/x86-64-equ-bad.s,
812 testsuite/gas/i386/x86-64-equ-bad.l: New.
813 * testsuite/gas/i386/i386.exp: Run new tests.
815 2020-06-06 Alan Modra <amodra@gmail.com>
817 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
818 * doc/c-ppc.texi: Likewise.
820 2020-06-06 Alan Modra <amodra@gmail.com>
822 * config/tc-ppc.c: Update throughout for reloc renaming.
824 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
826 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
829 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
831 * config/tc-riscv.c (explicit_csr): New static boolean.
832 Used to indicate CSR are explictly used.
833 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
834 (riscv_write_out_attrs): If we already have set elf priv
835 attributes, then generate them. Otherwise, don't generate
836 them when no CSR are used.
837 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
838 * testsuite/gas/riscv/attribute-02.d: Likewise.
839 * testsuite/gas/riscv/attribute-03.d: Likewise.
840 * testsuite/gas/riscv/attribute-04.d: Likewise.
841 * testsuite/gas/riscv/attribute-05.d: Likewise.
842 * testsuite/gas/riscv/attribute-06.d: Likewise.
843 * testsuite/gas/riscv/attribute-07.d: Likewise.
844 * testsuite/gas/riscv/attribute-08.d: Likewise.
845 * testsuite/gas/riscv/attribute-09.d: Likewise.
846 * testsuite/gas/riscv/attribute-10.d: Likewise.
847 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
848 * testsuite/gas/riscv/attribute-11.s: New testcase.
849 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
850 used, so we should output the ELF priv attributes.
851 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
852 used, so output the priv attributes according to the -mpriv-spec.
853 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
854 used, so ignore the -mpriv-spec setting.
856 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
858 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
860 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
861 endianness to cgen_get_insn_value and cgen_put_insn_value.
863 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
865 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
868 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
870 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
872 (md_assemble): Remove no longer needed hack.
874 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
876 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
878 (gas_cgen_md_apply_fix): Likewise.
879 (gas_cgen_md_apply_fix): Likewise.
880 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
882 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
885 2020-06-04 Alan Modra <amodra@gmail.com>
887 * testsuite/config/default.exp: Remove global directive outside
889 * testsuite/gas/mep/complex-relocs.exp: Likewise.
890 * testsuite/gas/microblaze/relax_size.exp: Likewise.
891 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
892 * testsuite/gas/mt/relocs.exp: Likewise.
893 * testsuite/gas/rx/rx.exp: Likewise.
895 2020-06-03 Stephen Casner <casner@acm.org>
897 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
899 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
900 Jim Wilson <jimw@sifive.com>
903 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
904 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
905 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
906 Move B before SB. Move J before UJ.
908 2020-06-01 Alex Coplan <alex.coplan@arm.com>
910 * write.c (relax_segment): Fix handling of negative offset when
911 relaxing an rs_org frag.
912 * testsuite/gas/aarch64/org-neg.d: New test.
913 * testsuite/gas/aarch64/org-neg.l: Error output for test.
914 * testsuite/gas/aarch64/org-neg.s: Input for test.
915 * testsuite/gas/arm/org-neg.d: New test.
916 * testsuite/gas/arm/org-neg.l: Error output for test.
917 * testsuite/gas/arm/org-neg.s: Input for test.
919 2020-05-28 Stephen Casner <casner@acm.org>
921 Fix unexpected failures in gas testsuite for pdp11-aout target.
922 These are caused by the PDP11's mix of little-endian octets in
923 shorts but shorts in big endian order for long or quad.
925 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
926 * testsuite/gas/all/gas.exp: Select alternate test scripts for
927 pdp11, skip octa test completely.
928 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
929 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
930 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
932 2020-05-28 Alex Coplan <alex.coplan@arm.com>
934 * frags.c (frag_grow): Fix comment.
936 2020-05-27 Stephen Casner <casner@acm.org>
939 * config/tc-pdp11.c (parse_reg): Distinguish register names from
940 symbols that begin with a register name.
941 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
942 * testsuite/gas/pdp11/pr26001.s: Likewise.
943 * testsuite/gas/pdp11/pr26001.d: Likewise.
945 2020-05-27 Simon Cook <simon.cook@embecosm.com>
947 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
948 pointer when creating struct riscv_csr_extra.
950 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
952 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
953 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
954 * testsuite/gas/i386/inval-avx512f.l: Updated.
956 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
958 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
959 load/store instruction variants with alignment hints.
960 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
961 instruction variants with alignment hints.
963 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
966 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
967 instead of R_XGATE_PCREL_X.
968 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
969 BFD_RELOC_XGATE_PCREL_X.
971 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
974 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
975 with &fragP->fr_literal[0].
977 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
980 * config/tc-vax.c (md_estimate_size_before_relax): Replace
981 fragP->fr_literal with &fragP->fr_literal[0].
982 (md_convert_frag): Likewise.
984 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
987 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
988 with &fragP->fr_literal[0].
990 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
993 * config/tc-crx.c (getreg_image): Change argument type to int.
994 (md_convert_frag): Replace fragP->fr_literal with
995 &fragP->fr_literal[0].
997 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
1000 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
1001 sprintf with memmove.
1003 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1005 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
1006 with &fragP->fr_literal[0].
1008 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1011 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
1012 2 overlapping strings.
1014 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1016 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
1017 with &fragP->fr_literal[0].
1019 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
1021 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
1022 with &fragp->fr_literal[0].
1023 * config/tc-microblaze.c (md_apply_fix): Likewise.
1024 * config/tc-sh.c (md_convert_frag): Likewise.
1026 2020-05-24 Jim Wilson <jimw@sifive.com>
1029 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
1030 asection to segT. New locals seg and subseg. Call subseg_set before
1031 fix_new_exp. Call subseg_set after loop to restore original values.
1033 2020-05-21 Alan Modra <amodra@gmail.com>
1035 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
1037 * config/obj-elf.c: Likewise.
1038 * config/tc-aarch64.c: Likewise.
1039 * config/tc-arm.c: Likewise.
1040 * config/tc-m68k.c: Likewise.
1041 * config/tc-nios2.c: Likewise.
1042 * config/tc-tic30.c: Likewise.
1043 * ecoff.c: Likewise.
1045 * stabs.c: Likewise.
1046 * symbols.c: Likewise.
1047 * testsuite/gas/all/test-gen.c: Likewise.
1049 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
1051 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
1052 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
1053 Static variables which are used to set the ISA extensions. You can
1054 use -march (or ELF build attributes) and -misa-spec to set them,
1056 (ext_version_hash): The hash table used to handle the extensions
1058 (init_ext_version_hash): Initialize the ext_version_hash according
1059 to riscv_ext_version_table.
1060 (riscv_get_default_ext_version): The callback function of
1061 riscv_parse_subset_t. According to the choosed ISA spec,
1062 get the default version for the specific extension.
1063 (riscv_set_arch): Set the callback function.
1064 (enum options, struct option md_longopts): Add new option -misa-spec.
1065 (md_parse_option): Do not call riscv_set_arch for -march. We will
1066 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
1067 to set default_isa_spec class.
1068 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
1069 ext_version_hash, and then call riscv_set_arch to set the architecture
1070 with versions according to default_arch_with_ext.
1071 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
1073 * testsuite/gas/riscv/attribute-03.d: Likewise.
1074 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
1075 already set it's version to 2p1 by march, so no need to use the default
1076 2p2 version. For m-ext, we do not set the version by -march and ELF arch
1077 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
1078 ISA spec 2p2, so set 0p0 to it.
1079 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
1080 zicsr is 2p0 according to ISA spec 20191213.
1081 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
1082 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
1083 You can set them by configure options --with-arch and
1084 --with-isa-spec, respectively.
1085 (riscv_set_default_isa_spec): New function used to set the
1087 (md_parse_option): Call riscv_set_default_isa_spec rather than
1088 call riscv_get_isa_spec_class directly.
1089 (riscv_after_parse_args): If the -isa-spec is not set, then we
1090 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
1091 calling riscv_set_default_isa_spec.
1092 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
1093 the --with-isa-spec may be set to different ISA spec.
1094 * testsuite/gas/riscv/attribute-02.d: Likewise.
1095 * testsuite/gas/riscv/attribute-03.d: Likewise.
1096 * testsuite/gas/riscv/attribute-04.d: Likewise.
1097 * testsuite/gas/riscv/attribute-05.d: Likewise.
1098 * testsuite/gas/riscv/attribute-06.d: Likewise.
1099 * testsuite/gas/riscv/attribute-07.d: Likewise.
1100 * configure.ac: Add configure options, --with-arch and
1102 * configure: Regenerated.
1103 * config.in: Regenerated.
1104 * config/tc-riscv.c (default_priv_spec): Static variable which is
1105 used to check if the CSR is valid for the chosen privilege spec. You
1106 can use -mpriv-spec to set it.
1107 (enum reg_class): We now get the CSR address from csr_extra_hash rather
1108 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
1109 (riscv_init_csr_hashes): Only need to initialize one hash table
1111 (riscv_csr_class_check): Change the return type to void. Don't check
1112 the ISA dependency if -mcsr-check isn't set.
1113 (riscv_csr_version_check): New function. Check and find the CSR address
1114 from csr_extra_hash, according to default_priv_spec. Report warning
1115 for the invalid CSR if -mcsr-check is set.
1116 (reg_csr_lookup_internal): Updated.
1117 (reg_lookup_internal): Likewise.
1118 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
1119 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
1120 (md_parse_option): Call riscv_set_default_priv_version to set
1122 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
1123 privilege spec to the newest one.
1124 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
1125 include/opcode/riscv.h.
1126 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
1127 to check the ISA dependency for CSR, so fix the spec version by adding
1129 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
1130 version warnings for the test case.
1131 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1132 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1133 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1134 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1135 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1136 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
1137 Check whether the CSR is valid when privilege version 1.9 is choosed.
1138 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
1139 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
1140 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
1141 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
1142 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
1143 Check whether the CSR is valid when privilege version 1.10 is choosed.
1144 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
1145 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
1146 Check whether the CSR is valid when privilege version 1.11 is choosed.
1147 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
1148 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
1149 setting. You can set it by configure option --with-priv-spec.
1150 (riscv_set_default_priv_spec): New function used to set the default
1152 (md_parse_option): Call riscv_set_default_priv_spec rather than
1153 call riscv_get_priv_spec_class directly.
1154 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
1155 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
1156 calling riscv_set_default_priv_spec.
1157 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
1158 the --with-priv-spec may be set to different privilege spec.
1159 * testsuite/gas/riscv/priv-reg.d: Likewise.
1160 * configure.ac: Add configure option --with-priv-spec.
1161 * configure: Regenerated.
1162 * config.in: Regenerated.
1163 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
1164 explicit_attr. Set it to TRUE if any ELF attribute is found.
1165 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
1166 the priv attributes are set.
1167 (md_assemble): Set the default_priv_spec according to the priv
1168 attributes when we start to assemble instruction.
1169 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
1170 riscv_write_out_attrs. Update the arch and priv attributes. If we
1171 don't set the corresponding ELF attributes, then try to output the
1173 (riscv_set_public_attributes): If any ELF attribute or -march-attr
1174 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
1175 to update the arch and priv attributes.
1176 (s_riscv_attribute): Make sure all arch and priv attributes are set
1177 before any instruction.
1178 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
1179 ELF attribute or -march-attr is set. If the priv attributes are not
1180 set, then try to update them by the default setting (-mpriv-spec or
1182 * testsuite/gas/riscv/attribute-02.d: Likewise.
1183 * testsuite/gas/riscv/attribute-03.d: Likewise.
1184 * testsuite/gas/riscv/attribute-04.d: Likewise.
1185 * testsuite/gas/riscv/attribute-06.d: Likewise.
1186 * testsuite/gas/riscv/attribute-07.d: Likewise.
1187 * testsuite/gas/riscv/attribute-08.d: Likewise.
1188 * testsuite/gas/riscv/attribute-09.d: Likewise.
1189 * testsuite/gas/riscv/attribute-10.d: Likewise.
1190 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
1191 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
1192 set by priv attributes must be supported.
1193 * testsuite/gas/riscv/attribute-05.s: Likewise.
1194 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
1195 priv attributes according to the -mpriv-spec option.
1196 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
1197 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
1198 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
1199 * testsuite/gas/riscv/priv-reg.d: Removed.
1200 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
1201 CSR according to the priv spec 1.9.
1202 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
1203 CSR according to the priv spec 1.9.1.
1204 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
1205 CSR according to the priv spec 1.10.
1206 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
1207 CSR according to the priv spec 1.11.
1208 * config/tc-riscv.c (md_show_usage): Add descriptions about
1209 the new GAS options.
1210 * doc/c-riscv.texi: Likewise.
1212 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
1214 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
1215 * testsuite/gas/ppc/power9.d: Likewise.
1216 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
1217 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
1218 sync, wait, waitrsv>: Add tests.
1219 * testsuite/gas/ppc/power10.d: Likewise.
1221 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
1224 * config/tc-arm.c : Add arm_ext_v8r feature.
1225 (it_fsm_post_encode): Check arm_ext_v8r feature.
1226 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
1228 2020-05-19 Alan Modra <amodra@gmail.com>
1230 * write.c (write_contents): Use bfd_get_filename rather than
1231 accessing bfd->filename directly. Use bfd_section_name rather
1232 than accessing section->name directly.
1234 2020-05-19 Alan Modra <amodra@gmail.com>
1236 * symbols.c (local_symbol_make): Init all of lsy_flags.
1238 2020-05-18 Alan Modra <amodra@gmail.com>
1240 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
1241 before looking at add_symbol->sy_flags.
1243 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
1245 * config/tc-i386.c: Not handle lret/iret.
1246 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
1247 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
1248 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
1249 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
1250 * testsuite/gas/i386/lfence-ret.s: Ditto.
1251 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
1252 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
1253 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
1254 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
1255 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
1256 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
1257 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
1259 2020-05-15 Alan Modra <amodra@gmail.com>
1260 Alex Coplan <alex.coplan@arm.com>
1262 * symbols.c (struct local_symbol): Update comment.
1263 (resolve_symbol_value): For resolved symbols equated to other
1264 symbols, verify that the referenced symbol is not a local_symbol
1265 before accessing sy_value. Don't leave symbol loops during
1266 finalize_syms resolution.
1267 * testsuite/gas/all/assign-bad-recursive.d: New test.
1268 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
1269 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
1270 * testsuite/gas/all/gas.exp: Run it.
1272 2020-05-14 Nick Clifton <nickc@redhat.com>
1274 * po/sv.po: Updated Swedish translation.
1276 2020-05-11 Alan Modra <amodra@gmail.com>
1278 * testsuite/gas/ppc/scalarquad.d,
1279 * testsuite/gas/ppc/scalarquad.s: New test.
1280 * testsuite/gas/ppc/ppc.exp: Run it.
1282 2020-05-11 Alan Modra <amodra@gmail.com>
1284 * testsuite/gas/ppc/rightmost.d,
1285 * testsuite/gas/ppc/rightmost.s: New test.
1286 * testsuite/gas/ppc/ppc.exp: Run it.
1288 2020-05-11 Alan Modra <amodra@gmail.com>
1290 * testsuite/gas/ppc/xvtlsbb.d,
1291 * testsuite/gas/ppc/xvtlsbb.s: New test.
1292 * testsuite/gas/ppc/ppc.exp: Run it.
1294 2020-05-11 Alan Modra <amodra@gmail.com>
1296 * testsuite/gas/ppc/stringop.d,
1297 * testsuite/gas/ppc/stringop.s: New test.
1298 * testsuite/gas/ppc/ppc.exp: Run it.
1300 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1302 * testsuite/gas/ppc/set_bool.d,
1303 * testsuite/gas/ppc/set_bool.s: New test.
1304 * testsuite/gas/ppc/ppc.exp: Run it.
1306 2020-05-11 Alan Modra <amodra@gmail.com>
1308 * testsuite/gas/ppc/bitmanip.d,
1309 * testsuite/gas/ppc/bitmanip.s: New test.
1310 * testsuite/gas/ppc/ppc.exp: Run it.
1312 2020-05-11 Alan Modra <amodra@gmail.com>
1314 * testsuite/gas/ppc/genpcv.d,
1315 * testsuite/gas/ppc/genpcv.s: New test.
1316 * testsuite/gas/ppc/ppc.exp: Run it.
1318 2020-05-11 Alan Modra <amodra@gmail.com>
1320 * testsuite/gas/ppc/maskmanip.d,
1321 * testsuite/gas/ppc/maskmanip.s: New test.
1322 * testsuite/gas/ppc/ppc.exp: Run it.
1324 2020-05-11 Alan Modra <amodra@gmail.com>
1325 Peter Bergner <bergner@linux.ibm.com>
1327 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
1328 (md_assemble): Check acc specified in correct operand.
1329 * testsuite/gas/ppc/outerprod.d,
1330 * testsuite/gas/ppc/outerprod.s,
1331 * testsuite/gas/ppc/vsx4.d,
1332 * testsuite/gas/ppc/vsx4.s: New tests.
1333 * testsuite/gas/ppc/ppc.exp: Run them.
1335 2020-05-11 Alan Modra <amodra@gmail.com>
1337 * testsuite/gas/ppc/simd_perm.d,
1338 * testsuite/gas/ppc/simd_perm.s: New test.
1339 * testsuite/gas/ppc/ppc.exp: Run it.
1341 2020-05-11 Alan Modra <amodra@gmail.com>
1343 * testsuite/gas/ppc/int128.d,
1344 * testsuite/gas/ppc/int128.s: New test.
1345 * testsuite/gas/ppc/ppc.exp: Run it.
1347 2020-05-11 Alan Modra <amodra@gmail.com>
1349 * testsuite/gas/ppc/vsx_32byte.d,
1350 * testsuite/gas/ppc/vsx_32byte.s: New test.
1351 * testsuite/gas/ppc/ppc.exp: Run it.
1353 2020-05-11 Alan Modra <amodra@gmail.com>
1355 * testsuite/gas/ppc/vec_mul.s,
1356 * testsuite/gas/ppc/vec_mul.d: New test.
1357 * testsuite/gas/ppc/ppc.exp: Run it.
1359 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1361 * testsuite/gas/ppc/byte_rev.d,
1362 * testsuite/gas/ppc/byte_rev.s: New test.
1363 * testsuite/gas/ppc/ppc.exp: Run it.
1365 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1367 * testsuite/gas/ppc/power10.d: Add paste. tests.
1368 * testsuite/gas/ppc/power10.s: Likewise.
1370 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
1372 * testsuite/gas/ppc/power10.s: New test.
1373 * testsuite/gas/ppc/power10.d: Likewise.
1374 * testsuite/gas/ppc/ppc.exp: Run it.
1376 2020-05-11 Alan Modra <amodra@gmail.com>
1378 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
1380 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
1381 place of -mfuture/-Mfuture.
1382 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
1383 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
1385 2020-05-06 Nick Clifton <nickc@redhat.com>
1387 * po/sv.po: Updated Swedish translation.
1389 2020-05-06 Nick Clifton <nickc@redhat.com>
1392 * doc/as.texi (Preprocessing): Replace cross reference to not
1393 existant document with a URL to the equivalent page in the GCC
1396 2020-05-05 Nick Clifton <nickc@redhat.com>
1398 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
1399 construction of a DWARF-5 directory name table.
1400 * testsuite/gas/elf/pr25917.d: Update expected output.
1402 2020-05-05 Gunther Nikl <gnikl@justmail.de>
1404 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
1405 (md_parse_option): Remove initialization of elf_flags.
1407 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
1410 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
1411 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
1412 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
1414 2020-05-04 Nick Clifton <nickc@redhat.com>
1417 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
1418 table's existence before looking at its entries.
1419 Also do not emit a default directory entry if there are no
1422 * testsuite/gas/elf/pr25917.s: New test source file.
1423 * testsuite/gas/elf/pr25917.d: New test driver.
1424 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
1426 2020-04-30 Alex Coplan <alex.coplan@arm.com>
1428 * config/tc-aarch64.c (fix_insn): Implement for
1429 AARCH64_OPND_UNDEFINED.
1430 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
1431 * testsuite/gas/aarch64/udf.s: New.
1432 * testsuite/gas/aarch64/udf.d: New.
1433 * testsuite/gas/aarch64/udf-invalid.s: New.
1434 * testsuite/gas/aarch64/udf-invalid.l: New.
1435 * testsuite/gas/aarch64/udf-invalid.d: New.
1437 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
1439 * config/tc-rx.c (elf_flags): Reset default value.
1440 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
1442 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
1444 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
1445 if it's not defined.
1446 (microarch_earliest): New static variable.
1447 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
1448 simcall opcode has mandatory parameter.
1449 (xg_init_global_config): Initialize microarch_earliest.
1451 2020-04-29 Nick Clifton <nickc@redhat.com>
1454 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
1455 IMM0_8S and add support for IMM0_8U.
1456 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
1457 unsigned 8-bit immediate.
1458 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
1459 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
1461 2020-04-27 Tamar Christina <tamar.christina@arm.com>
1463 * NEWS: Add news entry for big-obj.
1464 * config/tc-i386.c (i386_target_format): Support new format.
1465 * doc/c-i386.texi: Add i386 support.
1466 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
1467 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
1469 2020-04-27 Nick Clifton <nickc@redhat.com>
1472 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
1473 (assign_file_to_slot): New function. Fills in an entry in the
1475 (allocate_filenum): Use new function.
1476 (allocate_filename_to_slot): Use new function. If the specified
1477 slot entry is already in use, but was chosen automatically then
1478 reassign the automatic entry.
1480 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
1482 * config/tc-i386.c (lfence_before_ret_shl): New member.
1483 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
1485 (insert_after_load): Issue warning for REP CMPS/SCAS.
1486 (insert_before_before): Handle iret, Handle
1487 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
1488 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
1489 -mlfence-before-ret=[none/not/or/shl/yes].
1490 Enable -mlfence-before-ret=shl when
1491 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
1492 (md_show_usage): Ditto.
1493 * doc/c-i386.texi: Ditto.
1494 * testsuite/gas/i386/i386.exp: Add new testcases.
1495 * testsuite/gas/i386/lfence-load-b.d: New.
1496 * testsuite/gas/i386/lfence-load-b.e: New.
1497 * testsuite/gas/i386/lfence-load.d: Modified.
1498 * testsuite/gas/i386/lfence-load.e: New.
1499 * testsuite/gas/i386/lfence-load.s: Modified.
1500 * testsuite/gas/i386/lfence-ret-a.d: Modified.
1501 * testsuite/gas/i386/lfence-ret-b.d: Modified.
1502 * testsuite/gas/i386/lfence-ret-c.d: New.
1503 * testsuite/gas/i386/lfence-ret-d.d: New.
1504 * testsuite/gas/i386/lfence-ret.s: Modified.
1505 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
1506 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
1507 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
1508 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
1509 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
1510 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
1511 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
1512 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
1513 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
1514 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
1516 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
1519 * config/tc-xtensa.c (md_apply_fix): Replace
1520 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1521 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1522 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1523 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1524 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1526 2020-04-22 Alan Modra <amodra@gmail.com>
1528 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1529 symbol for ".symver .. remove".
1530 * doc/as.texi (.symver): Update.
1531 * testsuite/gas/symver/symver11.s: Make foo weak.
1532 * testsuite/gas/symver/symver11.d: Expect an error.
1533 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1535 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1537 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1539 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
1542 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1543 * testsuite/gas/m68k/operands.d: Update.
1544 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1546 2020-04-21 Tamar Christina <tamar.christina@arm.com>
1549 * testsuite/gas/arm/pr24753.d: New test.
1550 * testsuite/gas/arm/pr24753.s: New test.
1552 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1556 * NEWS: Mention .symver extension.
1557 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1559 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1560 add a version name. Add local, hidden and remove visibility
1562 (elf_frob_symbol): Handle the list of version names. Update the
1563 original symbol to local, hidden or remove it from the symbol
1565 (elf_frob_file_before_adjust): Handle the list of version names.
1566 * config/obj-elf.h (elf_visibility): New.
1567 (elf_versioned_name_list): Likewise.
1568 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1569 and visibility. Change versioned_name pointer to struct
1570 elf_versioned_name_list.
1571 * doc/as.texi: Update .symver directive.
1572 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1573 error checking tests.
1574 * testsuite/gas/symver/symver6.d: New file.
1575 * testsuite/gas/symver/symver7.d: Likewise.
1576 * testsuite/gas/symver/symver7.s: Likewise.
1577 * testsuite/gas/symver/symver8.d: Likewise.
1578 * testsuite/gas/symver/symver8.s: Likewise.
1579 * testsuite/gas/symver/symver9.s: Likewise.
1580 * testsuite/gas/symver/symver9a.d: Likewise.
1581 * testsuite/gas/symver/symver9b.d: Likewise.
1582 * testsuite/gas/symver/symver10.s: Likewise.
1583 * testsuite/gas/symver/symver10a.d: Likewise.
1584 * testsuite/gas/symver/symver10b.d: Likewise.
1585 * testsuite/gas/symver/symver11.d: Likewise.
1586 * testsuite/gas/symver/symver11.s: Likewise.
1587 * testsuite/gas/symver/symver12.d: Likewise.
1588 * testsuite/gas/symver/symver12.s: Likewise.
1589 * testsuite/gas/symver/symver13.d: Likewise.
1590 * testsuite/gas/symver/symver13.s: Likewise.
1591 * testsuite/gas/symver/symver14.d: Likewise.
1592 * testsuite/gas/symver/symver14.l: Likewise.
1593 * testsuite/gas/symver/symver15.d: Likewise.
1594 * testsuite/gas/symver/symver15.l: Likewise.
1595 * testsuite/gas/symver/symver6.l: Removed.
1596 * testsuite/gas/symver/symver6.s: Updated.
1598 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1600 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1602 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1603 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1604 * testsuite/gas/aarch64/system.d: Update.
1606 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1608 * testsuite/gas/aarch64/bti.d: Update -march option.
1609 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1610 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1611 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1612 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1614 2020-04-17 Alan Modra <amodra@gmail.com>
1616 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1618 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
1619 Nick Clifton <nickc@redhat.com>
1622 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1624 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1625 for the type-2 test.
1626 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1627 targets running this test.
1629 2020-02-16 David Faust <david.faust@oracle.com>
1631 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1632 * testsuite/gas/bpf/jump32.s: New file.
1633 * testsuite/gas/bpf/jump32.d: Likewise.
1635 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
1637 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1640 2020-04-08 Gunther Nikl <gnikl@justmail.de>
1642 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1643 (md_pcrel_from): Remove prototytpe.
1644 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1646 (md_pcrel_from_section): Remove duplicate prototype.
1647 * tc.h (md_pcrel_from_section): Add prototype.
1648 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1649 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1650 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1651 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1652 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1653 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1654 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1655 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1656 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1657 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1658 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1659 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1660 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1661 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1662 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1663 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1664 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1665 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1666 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1667 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1668 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1669 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1670 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1671 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1672 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1673 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1674 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1675 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1676 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1677 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1678 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1679 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1680 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1681 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1682 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1683 md_apply_fix3): Delete prototypes.
1685 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1687 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1690 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1692 * doc/c-z80.texi: Fix @xref warnings.
1694 2020-04-07 Lili Cui <lili.cui@intel.com>
1696 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1697 (cpu_noarch): Likewise.
1698 * doc/c-i386.texi: Document TSXLDTRK.
1699 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1700 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1701 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1702 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1704 2020-04-02 Lili Cui <lili.cui@intel.com>
1706 * config/tc-i386.c (cpu_arch): Add .serialize.
1707 (cpu_noarch): Likewise.
1708 * doc/c-i386.texi: Document serialize.
1709 * testsuite/gas/i386/i386.exp: Run serialize tests
1710 * testsuite/gas/i386/serialize.d: Likewise.
1711 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1712 * testsuite/gas/i386/serialize.s: Likewise.
1714 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1716 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1717 * testsuite/gas/elf/section12b.d: Likewise.
1718 * testsuite/gas/elf/section16a.d: Likewise.
1719 * testsuite/gas/elf/section16b.d: Likewise.
1721 2020-04-02 Gunther Nikl <gnikl@justmail.de>
1723 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1724 with a suppressed address register.
1726 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
1729 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1730 * testsuite/gas/i386/localpic.s: Add a test for relocation
1731 against local absolute symbol.
1732 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1733 * testsuite/gas/i386/localpic.d: Updated.
1734 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1735 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1737 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1740 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1741 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1742 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1743 testsuite/gas/i386/x86-64-jump.d.
1744 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1745 Incorporate changes to
1746 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1747 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1748 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1749 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1750 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1752 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
1756 * dwarf2dbg.c: Do not include "bignum.h".
1758 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
1760 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1761 * testsuite/gas/riscv/alias-csr.s: Likewise.
1762 * testsuite/gas/riscv/no-aliases-csr.d: Move this
1763 to priv-reg-pseudo-noalias.
1764 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
1765 * testsuite/gas/riscv/bad-csr.l: Likewise.
1766 * testsuite/gas/riscv/bad-csr.s: Likewise.
1767 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
1768 * testsuite/gas/riscv/satp.s: Likewise.
1769 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
1770 csr instruction, including alias-csr testcase.
1771 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
1772 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
1773 pseudo instruction with objdump -Mno-aliases.
1774 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
1775 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
1776 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
1777 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
1778 * testsuite/gas/riscv/priv-reg.s: Likewise.
1779 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1780 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1781 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1783 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
1785 * config/obj-coff.c (obj_coff_section): Set the bss flag on
1786 sections with the "b" attribute.
1788 2020-03-22 Alan Modra <amodra@gmail.com>
1790 * testsuite/gas/s12z/truncated.d: Update expected output.
1792 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1795 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
1796 * doc/c-z80.texi: Update documentation.
1798 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1803 Fix disassembling ED+A4/AC/B4/BC opcodes.
1804 Fix assembling lines containing colonless label and instruction
1805 with first operand inside parentheses.
1806 Fix registration of unsupported by target CPU registers.
1807 * config/tc-z80.c: See above.
1808 * config/tc-z80.h: See above.
1809 * testsuite/gas/z80/colonless.d: Update test.
1810 * testsuite/gas/z80/colonless.s: Likewise.
1811 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
1812 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
1813 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1814 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
1815 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
1816 * testsuite/gas/z80/unsup_regs.s: Likewise.
1817 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
1818 * testsuite/gas/z80/z80.exp: Likewise.
1819 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
1820 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
1821 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
1823 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
1826 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
1827 (parse_operands): Handle new operand codes.
1828 (do_neon_dyadic_long): Make shape check accept the scalar variants.
1829 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
1830 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
1831 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
1832 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
1833 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
1834 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
1835 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
1837 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1839 * NEWS: Mention x86 assembler options for CVE-2020-0551.
1841 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1843 * testsuite/gas/i386/i386.exp: Run new tests.
1844 * testsuite/gas/i386/lfence-byte.d: New file.
1845 * testsuite/gas/i386/lfence-byte.e: Likewise.
1846 * testsuite/gas/i386/lfence-byte.s: Likewise.
1847 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
1848 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
1849 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
1850 * testsuite/gas/i386/lfence-indbr.e: Likewise.
1851 * testsuite/gas/i386/lfence-indbr.s: Likewise.
1852 * testsuite/gas/i386/lfence-load.d: Likewise.
1853 * testsuite/gas/i386/lfence-load.s: Likewise.
1854 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
1855 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
1856 * testsuite/gas/i386/lfence-ret.s: Likewise.
1857 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
1858 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
1859 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
1860 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
1861 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
1862 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
1863 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
1864 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
1865 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
1866 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
1867 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
1868 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
1870 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1872 * config/tc-i386.c (lfence_after_load): New.
1873 (lfence_before_indirect_branch_kind): New.
1874 (lfence_before_indirect_branch): New.
1875 (lfence_before_ret_kind): New.
1876 (lfence_before_ret): New.
1879 (insert_lfence_after): New.
1880 (insert_lfence_before): New.
1881 (md_assemble): Call insert_lfence_before and insert_lfence_after.
1883 (OPTION_MLFENCE_AFTER_LOAD): New.
1884 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1885 (OPTION_MLFENCE_BEFORE_RET): New.
1886 (md_longopts): Add -mlfence-after-load=,
1887 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1888 (md_parse_option): Handle -mlfence-after-load=,
1889 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1890 (md_show_usage): Display -mlfence-after-load=,
1891 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1892 (i386_cons_align): New.
1893 * config/tc-i386.h (i386_cons_align): New.
1894 (md_cons_align): New.
1895 * doc/c-i386.texi: Document -mlfence-after-load=,
1896 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1898 2020-03-11 Nick Clifton <nickc@redhat.com>
1902 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1903 (DWARF2_FILE_SIZE_NAME): Default to -1.
1904 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1905 whichever is higher.
1906 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1907 (NUM_MD5_BYTES): Define.
1908 (struct file entry): Add md5 field.
1909 (get_filenum): Delete and replace with...
1910 (get_basename): New function.
1911 (get_directory_table_entry): New function.
1912 (allocate_filenum): New function.
1913 (allocate_filename_to_slot): New function.
1914 (dwarf2_where): Use new functions.
1915 (dwarf2_directive_filename): Add support for extended .file
1917 (dwarf2_directive_loc): Allow the use of file number zero with
1919 (out_file_list): Rename to...
1920 (out_dir_and_file_list): Add DWARF 5 support.
1921 (out_debug_line): Emit extra values into the section header for
1923 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1924 * doc/as.texi (.file): Update the description of this pseudo-op.
1925 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1926 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1927 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1928 * NEWS: Mention the new feature.
1930 2020-03-10 Alan Modra <amodra@gmail.com>
1932 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1933 to avoid signed overflow.
1934 * config/tc-mcore.c (md_assemble): Likewise.
1935 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1936 * config/tc-nds32.c (SET_ADDEND): Likewise.
1937 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1939 2020-03-09 Jan Beulich <jbeulich@suse.com>
1941 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1942 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1943 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1945 2020-03-07 Alan Modra <amodra@gmail.com>
1947 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
1950 2020-03-06 Nick Clifton <nickc@redhat.com>
1953 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
1954 0 if the dwarf_level is 5 or more. Complain if a filename follows
1956 * testsuite/gas/elf/dwarf-5-file0.s: New test.
1957 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
1958 * testsuite/gas/elf/elf.exp: Run the new test.
1961 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
1962 * doc/as.texi: Fix another typo.
1964 2020-03-06 Nick Clifton <nickc@redhat.com>
1967 * as.c (dwarf_level): Define.
1968 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
1969 (parse_args): Add support for the new options.
1970 as.h (dwarf_level): Prototype.
1971 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
1973 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
1974 (DWARF2_LINE_VERSION): Remove definition.
1975 * doc/as.texi: Document the new options.
1977 2020-03-06 Nick Clifton <nickc@redhat.com>
1980 * as.c (main): Allow matching input and outputs when they are
1983 2020-03-06 Jan Beulich <jbeulich@suse.com>
1985 * config/tc-i386.c (match_mem_size): Generalize broadcast special
1987 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
1988 one of byte/word/dword/qword is set alongside a SIMD register in
1989 a template's operand.
1991 2020-03-06 Jan Beulich <jbeulich@suse.com>
1993 * config/tc-i386.c (match_template): Extend code in logic
1994 rejecting certain suffixes in certain modes to also cover mask
1995 register use and VecSIB. Drop special casing of broadcast. Skip
1996 immediates in the check.
1998 2020-03-06 Jan Beulich <jbeulich@suse.com>
2000 * config/tc-i386.c (match_template): Fold duplicate code in
2001 logic rejecting certain suffixes in certain modes. Drop
2004 2020-03-06 Jan Beulich <jbeulich@suse.com>
2006 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
2007 alongside !norex64 ones.
2008 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
2009 with both 32- and 64-bit GPR operands.
2010 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
2011 32- and 64-bit GPR operands.
2012 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
2013 testsuite/gas/i386/x86-64-avx512bw.d,
2014 testsuite/gas/i386/x86-64-avx512f-intel.d,
2015 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
2017 2020-03-06 Jan Beulich <jbeulich@suse.com>
2019 * config/tc-i386.c (md_assemble): Drop use of rex64.
2020 (process_suffix): For REX.W for 64-bit CRC32.
2022 2020-03-06 Jan Beulich <jbeulich@suse.com>
2024 * config/tc-i386.c (i386_addressing_mode): For 32-bit
2025 addressing for MPX insns without base/index.
2026 * testsuite/gas/i386/mpx-16bit.s,
2027 * testsuite/gas/i386/mpx-16bit.d: New.
2028 * testsuite/gas/i386/i386.exp: Run new test.
2030 2020-03-06 Jan Beulich <jbeulich@suse.com>
2032 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
2033 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
2034 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
2035 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
2036 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
2037 as well as a BSWAP one.
2038 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
2039 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
2040 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
2041 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
2042 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
2043 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
2044 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
2045 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
2046 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
2047 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
2048 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
2049 testsuite/gas/i386/vmx.d: Adjust expectations.
2051 2020-03-06 Jan Beulich <jbeulich@suse.com>
2053 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
2054 from having their operands swapped.
2055 * testsuite/gas/i386/waitpkg.s,
2056 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
2057 3-operand cases as well as testing of 16-bit code generation.
2058 * testsuite/gas/i386/waitpkg.d,
2059 testsuite/gas/i386/waitpkg-intel.d,
2060 testsuite/gas/i386/x86-64-waitpkg.d,
2061 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
2063 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
2065 * config/tc-riscv.c (percent_op_utype): Support the modifier
2067 * doc/c-riscv.texi: Add documentation.
2068 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
2069 modifier %got_pcrel_hi.
2070 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
2071 * testsuite/gas/riscv/relax-reloc.d: Likewise.
2072 * testsuite/gas/riscv/relax-reloc.s: Likewise.
2074 * doc/c-riscv.texi (relocation modifiers): Add documentation.
2075 (RISC-V-Formats): Update the section name from "Instruction Formats"
2076 to "RISC-V Instruction Formats".
2078 2020-03-04 Alexandre Oliva <oliva@adacore.com>
2080 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
2081 detected in a section which does not have at least 4 byte
2083 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
2084 * testsuite/gas/arm/ldr-t.s: Likewise.
2085 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
2086 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
2087 disassembly, ignoring any NOPs that may have been inserted because
2088 of section alignment.
2089 * testsuite/gas/arm/ldr-t.d: Likewise.
2091 2020-03-04 Jan Beulich <jbeulich@suse.com>
2093 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
2094 * doc/c-i386.texi: Mention sev_es.
2095 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
2096 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
2098 * testsuite/gas/i386/arch-13-znver1.d,
2099 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
2101 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
2103 * config/tc-i386.c (match_template): Replace ignoresize and
2104 defaultsize with mnemonicsize.
2105 (process_suffix): Likewise.
2107 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2110 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
2111 instruction LD IY,(HL).
2112 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
2113 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
2114 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
2115 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
2117 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
2120 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
2121 x86-64-default-suffix-avx.
2122 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
2123 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
2124 * testsuite/gas/i386/noreg64.d: Updated.
2125 * testsuite/gas/i386/noreg64.l: Likewise.
2126 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
2127 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
2128 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
2130 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2133 * config/tc-z80.c (contains_register): Prevent an illegal memory
2134 access when checking an expression for a register name.
2136 2020-03-03 Alan Modra <amodra@gmail.com>
2138 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
2141 2020-03-02 Alan Modra <amodra@gmail.com>
2143 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
2144 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
2146 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
2147 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
2148 (s3_s_score_lcomm): Likewise.
2149 * config/tc-score7.c: Similarly.
2150 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
2152 2020-02-28 YunQiang Su <syq@debian.org>
2155 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
2156 to handle multi-labels.
2157 (has_label_name): New.
2159 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
2161 * config/tc-arm.c (enum pred_instruction_type): Remove
2162 NEUTRAL_IT_NO_VPT_INSN predication type.
2163 (cxn_handle_predication): Modify to require condition suffixes.
2164 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
2165 * testsuite/gas/arm/cde-scalar.s: Update test.
2166 * testsuite/gas/arm/cde-warnings.l: Update test.
2167 * testsuite/gas/arm/cde-warnings.s: Update test.
2169 2020-02-26 Alan Modra <amodra@gmail.com>
2171 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
2172 N_() on empty string.
2174 2020-02-26 Alan Modra <amodra@gmail.com>
2176 * read.c (read_a_source_file): Call strncpy with length one
2177 less than size of original_case_string.
2179 2020-02-26 Alan Modra <amodra@gmail.com>
2181 * config/obj-elf.c: Indent labels correctly.
2182 * config/obj-macho.c: Likewise.
2183 * config/tc-aarch64.c: Likewise.
2184 * config/tc-alpha.c: Likewise.
2185 * config/tc-arm.c: Likewise.
2186 * config/tc-cr16.c: Likewise.
2187 * config/tc-crx.c: Likewise.
2188 * config/tc-frv.c: Likewise.
2189 * config/tc-i386-intel.c: Likewise.
2190 * config/tc-i386.c: Likewise.
2191 * config/tc-ia64.c: Likewise.
2192 * config/tc-mn10200.c: Likewise.
2193 * config/tc-mn10300.c: Likewise.
2194 * config/tc-nds32.c: Likewise.
2195 * config/tc-riscv.c: Likewise.
2196 * config/tc-s12z.c: Likewise.
2197 * config/tc-xtensa.c: Likewise.
2198 * config/tc-z80.c: Likewise.
2200 * symbols.c: Likewise.
2201 * write.c: Likewise.
2203 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
2205 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
2206 we are assembling instruction with CSR. Call riscv_csr_read_only_check
2207 after parsing all arguments.
2208 (enum csr_insn_type): New enum is used to classify the CSR instruction.
2209 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
2210 are used to check if we write a read-only CSR by the CSR instruction.
2211 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
2212 all CSR for the read-only CSR checking.
2213 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
2214 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
2215 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
2216 all CSR instructions for the read-only CSR checking.
2217 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
2218 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
2220 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
2221 (riscv_opts): Initialize it.
2222 (reg_lookup_internal): Check the `riscv_opts.csr_check`
2223 before doing the CSR checking.
2224 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
2225 (md_longopts): Add mcsr-check and mno-csr-check.
2226 (md_parse_option): Handle new enum option values.
2227 (s_riscv_option): Handle new long options.
2228 * doc/c-riscv.texi: Add description for the new .option and assembler
2230 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
2232 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
2234 * config/tc-riscv.c (csr_extra_hash): New.
2235 (enum riscv_csr_class): New enum. Used to decide
2236 whether or not this CSR is legal in the current ISA string.
2237 (struct riscv_csr_extra): New structure to hold all extra information
2239 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
2240 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
2241 Call hash_reg_name to insert CSR address into reg_names_hash.
2242 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
2243 Decide whether the CSR is valid according to the csr_extra_hash.
2244 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
2245 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
2246 not a boolean. This is same as riscv_init_csr_hash, so keep the
2248 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
2249 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
2250 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
2251 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
2252 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
2253 f-ext CSR are not allowed.
2254 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
2255 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
2256 source file is `priv-reg.s`, and the ISA is rv64if, so the
2257 rv32-only CSR are not allowed.
2258 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
2260 2020-02-21 Alan Modra <amodra@gmail.com>
2262 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
2263 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
2265 2020-02-21 Alan Modra <amodra@gmail.com>
2268 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
2269 on section size adjustment, instead perform another write if
2270 exec header size is larger than section size.
2272 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
2274 * doc/c-riscv.texi: Add the doc entries for -march-attr/
2275 -mno-arch-attr command line options.
2277 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
2279 * testsuite/gas/riscv/c-add-addi.d: New testcase.
2280 * testsuite/gas/riscv/c-add-addi.s: Likewise.
2282 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
2285 * config/tc-z80.c (md_parse_option): Do not use an underscore
2286 prefix for local labels in SDCC compatability mode.
2287 (z80_start_line_hook): Remove SDCC dollar label support.
2288 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
2289 * testsuite/gas/z80/sdcc.s: Likewise.
2291 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
2294 * config/tc-z80.c: Add -march option.
2295 * doc/as.texi: Update Z80 documentation.
2296 * doc/c-z80.texi: Likewise.
2297 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
2298 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
2299 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
2300 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
2301 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
2302 * testsuite/gas/z80/gbz80_all.d: Likewise.
2303 * testsuite/gas/z80/r800_extra.d: Likewise.
2304 * testsuite/gas/z80/r800_ii8.d: Likewise.
2305 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
2306 * testsuite/gas/z80/sdcc.d: Likewise.
2307 * testsuite/gas/z80/z180.d: Likewise.
2308 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
2309 * testsuite/gas/z80/z80_doc.d: Likewise.
2310 * testsuite/gas/z80/z80_ii8.d: Likewise.
2311 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
2312 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
2313 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
2314 * testsuite/gas/z80/z80_sli.d: Likewise.
2315 * testsuite/gas/z80/z80n_all.d: Likewise.
2316 * testsuite/gas/z80/z80n_reloc.d: Likewise.
2318 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
2320 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
2321 with GNU_PROPERTY_X86_FEATURE_2_MMX.
2322 * testsuite/gas/i386/i386.exp: Run property-3 and
2324 * testsuite/gas/i386/property-3.d: New file.
2325 * testsuite/gas/i386/property-3.s: Likewise.
2326 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
2328 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
2330 * config/tc-i386.c (cpu_arch): Add .popcnt.
2331 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
2332 Add a tab before @samp{.sse4a}.
2334 2020-02-17 Jan Beulich <jbeulich@suse.com>
2336 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
2337 for AddrPrefixOpReg templates. Combine the two pieces of
2338 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
2341 2020-02-17 Jan Beulich <jbeulich@suse.com>
2344 * config/tc-i386.c (md_assemble): Also suppress operand
2345 swapping for MONITOR{,X} and MWAIT{,X}.
2346 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
2347 Add Intel syntax monitor/mwait tests.
2348 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
2349 Adjust expectations.
2350 *testsuite/gas/i386/sse3-intel.d,
2351 testsuite/gas/i386/x86-64-sse3-intel.d: New.
2352 * testsuite/gas/i386/i386.exp: Run new tests.
2354 2020-02-17 Jan Beulich <jbeulich@suse.com>
2357 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
2358 [XYZ]MMWord memory operand ambiguity recognition logic (largely
2360 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
2362 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
2363 * testsuite/gas/i386/avx512dq-inval.l,
2364 testsuite/gas/i386/inval-avx.l,
2365 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
2366 * testsuite/gas/i386/avx512vl-ambig.s,
2367 testsuite/gas/i386/avx512vl-ambig.l: New.
2368 * testsuite/gas/i386/i386.exp: Run new test.
2370 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
2372 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
2374 * doc/c-i386.texi: Document sse4a and nosse4a.
2376 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
2378 * doc/c-i386.texi: Remove the old movsx and movzx documentation
2381 2020-02-14 Jan Beulich <jbeulich@suse.com>
2384 * config/tc-i386.c (md_assemble): Move movsx/movzx special
2386 (process_suffix): ... here. Consider just the first operand
2388 (check_long_reg): Drop opcode 0x63 special case again.
2389 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
2390 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
2391 Move ambiguous operand size tests ...
2392 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2393 testsuite/gas/i386/noreg64.s: ... here.
2394 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
2395 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
2396 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2397 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
2398 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
2399 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2400 testsuite/gas/i386/x86-64-movsxd.d,
2401 testsuite/gas/i386/x86-64-movsxd-intel.d,
2402 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
2403 Adjust expectations.
2404 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
2405 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
2406 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
2407 * testsuite/gas/i386/i386.exp: Run new tests.
2409 2020-02-14 Jan Beulich <jbeulich@suse.com>
2411 * config/tc-i386.c (process_operands): Also skip segment
2412 override prefix emission if it matches an already present one.
2413 * testsuite/gas/i386/prefix32.s: Add double segment override
2415 * testsuite/gas/i386/prefix32.l: Adjust expectations.
2417 2020-02-14 Jan Beulich <jbeulich@suse.com>
2419 * config/tc-i386.c (process_operands): Drop ineffectual segment
2420 overrides when optimizing.
2421 * testsuite/gas/i386/lea-optimize.d: New.
2422 * testsuite/gas/i386/i386.exp: Run new test.
2424 2020-02-14 Jan Beulich <jbeulich@suse.com>
2426 * config/tc-i386.c (process_operands): Also check insn prefix
2427 for ineffectual segment override warning. Don't cover possible
2428 VEX/EVEX encoded insns there.
2429 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
2430 testsuite/gas/i386/lea.e: New.
2431 * testsuite/gas/i386/i386.exp: Run new test.
2433 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
2436 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
2439 2020-02-13 Fangrui Song <maskray@google.com>
2440 H.J. Lu <hongjiu.lu@intel.com>
2443 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
2444 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
2445 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
2446 * testsuite/gas/i386/relax-5.d: New file.
2447 * testsuite/gas/i386/relax-5.s: Likewise.
2448 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2449 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
2451 2020-02-13 Jan Beulich <jbeulich@suse.com>
2453 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
2456 2020-02-12 Jan Beulich <jbeulich@suse.com>
2458 * config/tc-i386.c (avx512): New (at file scope), moved from
2459 (check_VecOperands): ... here.
2460 (process_suffix): Add [XYZ]MMword operand size handling.
2461 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
2462 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
2464 * testsuite/gas/i386/avx512dq-inval.l,
2465 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
2467 2020-02-12 Jan Beulich <jbeulich@suse.com>
2470 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
2472 * config/tc-i386-intel.c (i386_intel_operand): Also handle
2473 CALL/JMP in O_tbyte_ptr case.
2474 * doc/c-i386.texi: Mention far call and full pointer load ISA
2476 * testsuite/gas/i386/x86-64-branch-3.s,
2477 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
2478 * testsuite/gas/i386/x86-64-branch-3.d,
2479 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
2480 * testsuite/gas/i386/x86-64-branch-5.l,
2481 testsuite/gas/i386/x86-64-branch-5.s: New.
2482 * testsuite/gas/i386/i386.exp: Run new test.
2484 2020-02-12 Jan Beulich <jbeulich@suse.com>
2487 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
2488 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
2489 64-bit-only warning.
2490 (check_word_reg): Consistently error on mismatching register
2492 * testsuite/gas/i386/general.s: Replace dword GPR with word one
2493 for movw. Replace suffix / GPR for orb.
2494 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
2495 byte GPRs as well as ones for inb/outb with a word accumulator.
2496 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
2497 testsuite/gas/i386/inval.l: Adjust expectations.
2499 2020-02-12 Jan Beulich <jbeulich@suse.com>
2501 * config/tc-i386.c (operand_type_register_match): Also fall
2502 through initial two if()-s when the template allows for a GPR
2503 operand. Adjust comment.
2505 2020-02-11 Jan Beulich <jbeulich@suse.com>
2507 (struct _i386_insn): New field "short_form".
2508 (optimize_encoding): Drop setting of shortform field.
2509 (process_suffix): Set i.short_form. Replace shortform use.
2510 (process_operands): Replace shortform use.
2512 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
2514 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
2515 loop initial declaration.
2517 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
2519 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2520 instructions that can have 5 arguments.
2521 (enum operand_parse_code): Add new operands.
2522 (parse_operands): Account for new operands.
2524 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2525 (neon_select_shape): Account for P suffix.
2526 (LOW1): Move macro to global position.
2527 (HI4): Move macro to global position.
2528 (vcx_assign_vec_d): New.
2529 (vcx_assign_vec_m): New.
2530 (vcx_assign_vec_n): New.
2531 (enum vcx_reg_type): New.
2532 (vcx_get_reg_type): New.
2533 (vcx_size_pos): New.
2535 (vcx_handle_shape): New.
2536 (vcx_ensure_register_in_range): New.
2537 (vcx_handle_register_arguments): New.
2538 (vcx_handle_insn_block): New.
2539 (vcx_handle_common_checks): New.
2543 * testsuite/gas/arm/cde-missing-fp.d: New test.
2544 * testsuite/gas/arm/cde-missing-fp.l: New test.
2545 * testsuite/gas/arm/cde-missing-mve.d: New test.
2546 * testsuite/gas/arm/cde-missing-mve.l: New test.
2547 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2548 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2549 * testsuite/gas/arm/cde-mve.s: New test.
2550 * testsuite/gas/arm/cde-warnings.l:
2551 * testsuite/gas/arm/cde-warnings.s:
2552 * testsuite/gas/arm/cde.d:
2553 * testsuite/gas/arm/cde.s:
2555 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2556 Matthew Malcomson <matthew.malcomson@arm.com>
2558 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2559 CDE coprocessor that can be enabled.
2560 (enum pred_instruction_type): New pred type.
2561 (BAD_NO_VPT): New error message.
2562 (BAD_CDE): New error message.
2563 (BAD_CDE_COPROC): New error message.
2564 (enum operand_parse_code): Add new immediate operands.
2565 (parse_operands): Account for new immediate operands.
2566 (check_cde_operand): New.
2567 (cde_coproc_enabled): New.
2568 (cde_coproc_pos): New.
2569 (cde_handle_coproc): New.
2570 (cxn_handle_predication): New.
2571 (do_custom_instruction_1): New.
2572 (do_custom_instruction_2): New.
2573 (do_custom_instruction_3): New.
2586 (handle_pred_state): Define new IT block behaviour.
2587 (insns): Add newn CX*{,d}{,a} instructions.
2588 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2589 Define new cdecp extension strings.
2590 * doc/c-arm.texi: Document new cdecp extension arguments.
2591 * testsuite/gas/arm/cde-scalar.d: New test.
2592 * testsuite/gas/arm/cde-scalar.s: New test.
2593 * testsuite/gas/arm/cde-warnings.d: New test.
2594 * testsuite/gas/arm/cde-warnings.l: New test.
2595 * testsuite/gas/arm/cde-warnings.s: New test.
2596 * testsuite/gas/arm/cde.d: New test.
2597 * testsuite/gas/arm/cde.s: New test.
2599 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
2602 * config/tc-i386.c (intel64): Renamed to ...
2604 (match_template): Accept Intel64 only instruction by default.
2605 (i386_displacement): Updated.
2606 (md_parse_option): Updated.
2607 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2608 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2609 -mamd64 to x86-64-sysenter-amd.
2610 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2612 2020-02-10 Alan Modra <amodra@gmail.com>
2614 * config/obj-elf.c (obj_elf_change_section): Error for section
2615 type, attr or entsize changes in assembly.
2616 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2617 * testsuite/gas/elf/section5.l: Update.
2619 2020-02-10 Alan Modra <amodra@gmail.com>
2621 * output-file.c (output_file_close): Do a normal close when
2622 flag_always_generate_output.
2623 * write.c (write_object_file): Don't stop output when
2624 flag_always_generate_output.
2626 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
2629 * config/tc-z80.c: Add -gbz80 command line option to generate code
2630 for the GameBoy Z80. Add support for generating DWARF.
2631 * config/tc-z80.h: Add support for DWARF debug information
2633 * doc/c-z80.texi: Document new command line option.
2634 * testsuite/gas/z80/gbz80_all.d: New file.
2635 * testsuite/gas/z80/gbz80_all.s: New file.
2636 * testsuite/gas/z80/z80.exp: Run the new tests.
2637 * testsuite/gas/z80/z80n_all.d: New file.
2638 * testsuite/gas/z80/z80n_all.s: New file.
2639 * testsuite/gas/z80/z80n_reloc.d: New file.
2641 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2644 * config/obj-elf.c (get_section): Also check
2645 linked_to_symbol_name.
2646 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2647 (obj_elf_parse_section_letters): Handle the 'o' flag.
2648 (build_group_lists): Renamed to ...
2649 (build_additional_section_info): This. Set elf_linked_to_section
2650 from map_head.linked_to_symbol_name.
2651 (elf_adjust_symtab): Updated.
2652 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2653 * doc/as.texi: Document the 'o' flag.
2654 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2655 * testsuite/gas/elf/section18.d: New file.
2656 * testsuite/gas/elf/section18.s: Likewise.
2657 * testsuite/gas/elf/section19.d: Likewise.
2658 * testsuite/gas/elf/section19.s: Likewise.
2659 * testsuite/gas/elf/section20.d: Likewise.
2660 * testsuite/gas/elf/section20.s: Likewise.
2661 * testsuite/gas/elf/section21.d: Likewise.
2662 * testsuite/gas/elf/section21.l: Likewise.
2663 * testsuite/gas/elf/section21.s: Likewise.
2665 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2667 * NEWS: Mention x86 assembler options to align branches for
2670 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2672 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2673 only for ELF targets.
2674 * testsuite/gas/i386/unique.d: Don't xfail.
2675 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2677 2020-02-06 Alan Modra <amodra@gmail.com>
2679 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2680 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2682 2020-02-06 Alan Modra <amodra@gmail.com>
2684 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2685 xfail, and rename test.
2686 * testsuite/gas/elf/section12b.d: Likewise.
2687 * testsuite/gas/elf/section16a.d: Likewise.
2688 * testsuite/gas/elf/section16b.d: Likewise.
2690 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2693 * config/obj-elf.c (section_match): Removed.
2694 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2696 (obj_elf_change_section): Replace info and group_name arguments
2697 with match_p. Also update the section ID and flags from match_p.
2698 (obj_elf_section): Handle "unique,N". Update call to
2699 obj_elf_change_section.
2700 * config/obj-elf.h (elf_section_match): New.
2701 (obj_elf_change_section): Updated.
2702 * config/tc-arm.c (start_unwind_section): Update call to
2703 obj_elf_change_section.
2704 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2705 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2706 (microblaze_s_sdata): Likewise.
2707 (microblaze_s_rdata): Likewise.
2708 (microblaze_s_bss): Likewise.
2709 * config/tc-mips.c (s_change_section): Likewise.
2710 * config/tc-msp430.c (msp430_profiler): Likewise.
2711 * config/tc-rx.c (parse_rx_section): Likewise.
2712 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2713 * doc/as.texi: Document "unique,N" in .section directive.
2714 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2715 * testsuite/gas/elf/section15.d: New file.
2716 * testsuite/gas/elf/section15.s: Likewise.
2717 * testsuite/gas/elf/section16.s: Likewise.
2718 * testsuite/gas/elf/section16a.d: Likewise.
2719 * testsuite/gas/elf/section16b.d: Likewise.
2720 * testsuite/gas/elf/section17.d: Likewise.
2721 * testsuite/gas/elf/section17.l: Likewise.
2722 * testsuite/gas/elf/section17.s: Likewise.
2723 * testsuite/gas/i386/unique.d: Likewise.
2724 * testsuite/gas/i386/unique.s: Likewise.
2725 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2726 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2728 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2730 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2732 2020-02-01 Anthony Green <green@moxielogic.com>
2734 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2736 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
2738 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2741 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2744 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2745 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2747 * testsuite/gas/arm/mve_dsp.d: New test.
2749 2020-01-31 Nick Clifton <nickc@redhat.com>
2751 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2752 rather than BFD_RELOC_NONE.
2754 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2756 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2757 to support VLDMIA instruction for MVE.
2758 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2759 instruction for MVE.
2760 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2761 instruction for MVE.
2762 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
2763 instruction for MVE.
2764 * testsuite/gas/arm/mve-ldst.d: New test.
2765 * testsuite/gas/arm/mve-ldst.s: Likewise.
2767 2020-01-31 Nick Clifton <nickc@redhat.com>
2769 * po/fr.po: Updated French translation.
2770 * po/ru.po: Updated Russian translation.
2772 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
2774 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
2776 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
2777 * testsuite/gas/aarch64/sve-movprfx_28.d,
2778 * testsuite/gas/aarch64/sve-movprfx_28.l,
2779 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
2781 2020-01-30 Jan Beulich <jbeulich@suse.com>
2783 * config/tc-i386.c (output_disp): Tighten base_opcode check.
2784 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
2785 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
2786 Adjust expectations.
2788 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
2790 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
2791 * testsuite/gas/bpf/alu-be.d: Likewise.
2792 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
2793 * testsuite/gas/bpf/alu32-be.d: Likewise.
2795 2020-01-30 Jan Beulich <jbeulich@suse.com>
2797 * testsuite/gas/i386/x86-64-branch-2.s,
2798 testsuite/gas/i386/x86-64-branch-4.s,
2799 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
2800 * testsuite/gas/i386/ilp32/x86-64-branch.d,
2801 testsuite/gas/i386/x86-64-branch-2.d,
2802 testsuite/gas/i386/x86-64-branch-4.l,
2803 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
2805 2020-01-30 Jan Beulich <jbeulich@suse.com>
2807 * config/tc-i386.c (process_suffix): .
2808 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
2809 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
2811 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
2813 testsuite/gas/i386/x86_64.s: Add RETF cases.
2814 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2815 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
2816 testsuite/gas/i386/x86-64-opcode.d,
2817 testsuite/gas/i386/x86-64-suffix-intel.d,
2818 testsuite/gas/i386/x86-64-suffix.d,
2819 testsuite/gas/i386/x86_64-intel.d
2820 testsuite/gas/i386/x86_64.d: Adjust expectations.
2821 * testsuite/gas/i386/x86-64-suffix.e,
2822 testsuite/gas/i386/x86_64.e: New.
2824 2020-01-30 Jan Beulich <jbeulich@suse.com>
2826 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
2829 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
2832 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
2834 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
2835 differences. Document movslq and movsxd.
2836 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
2837 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
2838 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
2839 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
2840 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
2841 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
2842 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
2843 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
2844 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
2845 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
2846 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
2848 2020-01-27 Alan Modra <amodra@gmail.com>
2850 * testsuite/gas/all/gas.exp: Replace case statements with switch
2852 * testsuite/gas/elf/elf.exp: Likewise.
2853 * testsuite/gas/macros/macros.exp: Likewise.
2854 * testsuite/lib/gas-defs.exp: Likewise.
2856 2020-01-27 Tamar Christina <tamar.christina@arm.com>
2859 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
2860 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
2862 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
2864 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
2865 s exts must be known, so rename *ok* to *fail*.
2866 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
2867 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
2868 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
2870 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
2871 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
2873 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
2876 * config/tc-i386.c (check_long_reg): Always disallow double word
2877 suffix in mnemonic with word general register.
2878 * testsuite/gas/i386/general.s: Replace word general register
2879 with double word general register for movl.
2880 * testsuite/gas/i386/inval.s: Add tests for movl with word general
2882 * testsuite/gas/i386/general.l: Updated.
2883 * testsuite/gas/i386/inval.l: Likewise.
2885 2020-01-22 Alan Modra <amodra@gmail.com>
2887 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2888 __tls_get_addr_desc and __tls_get_addr_opt.
2890 2020-01-21 Jan Beulich <jbeulich@suse.com>
2892 * testsuite/gas/i386/inval-crc32.s,
2893 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2894 * testsuite/gas/i386/inval-crc32.l,
2895 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2897 2020-01-21 Jan Beulich <jbeulich@suse.com>
2899 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2900 generic code path. Deal with No_lSuf being set in a template.
2901 * testsuite/gas/i386/inval-crc32.l,
2902 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2903 instead of error(s) when operand size is ambiguous.
2904 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2905 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2906 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2907 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2908 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2909 Adjust expectations.
2911 2020-01-21 Jan Beulich <jbeulich@suse.com>
2913 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2914 and an intel_syntax check. Re-write lack-of-suffix processing
2916 * doc/c-i386.texi: Document operand size defaults for suffix-
2917 less AT&T syntax insns.
2918 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2919 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2920 testsuite/gas/i386/x86-64-avx-scalar.s,
2921 testsuite/gas/i386/x86-64-avx.s,
2922 testsuite/gas/i386/x86-64-bundle.s,
2923 testsuite/gas/i386/x86-64-intel64.s,
2924 testsuite/gas/i386/x86-64-lock-1.s,
2925 testsuite/gas/i386/x86-64-opcode.s,
2926 testsuite/gas/i386/x86-64-sse2avx.s,
2927 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2928 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2929 testsuite/gas/i386/x86-64-nops.s,
2930 testsuite/gas/i386/x86-64-ptwrite.s,
2931 testsuite/gas/i386/x86-64-simd.s,
2932 testsuite/gas/i386/x86-64-sse-noavx.s,
2933 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2935 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2936 testsuite/gas/i386/noreg64.s: Add further tests.
2937 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2938 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2939 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2940 testsuite/gas/i386/sse-noavx.d,
2941 testsuite/gas/i386/x86-64-intel64.d,
2942 testsuite/gas/i386/x86-64-nops.d,
2943 testsuite/gas/i386/x86-64-opcode.d,
2944 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2945 testsuite/gas/i386/x86-64-ptwrite.d,
2946 testsuite/gas/i386/x86-64-simd-intel.d,
2947 testsuite/gas/i386/x86-64-simd-suffix.d,
2948 testsuite/gas/i386/x86-64-simd.d,
2949 testsuite/gas/i386/x86-64-sse-noavx.d
2950 testsuite/gas/i386/x86-64-suffix.d,
2951 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
2952 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
2953 testsuite/gas/i386/noreg64.l: New.
2954 * testsuite/gas/i386/i386.exp: Run new tests.
2956 2020-01-21 Jan Beulich <jbeulich@suse.com>
2958 * testsuite/gas/i386/avx512_bf16_vl.s,
2959 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
2960 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
2961 broadcast forms of VCVTNEPS2BF16.
2962 * testsuite/gas/i386/avx512_bf16_vl.d,
2963 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
2965 2020-01-20 Nick Clifton <nickc@redhat.com>
2967 * po/uk.po: Updated Ukranian translation.
2969 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
2972 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
2973 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
2975 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
2976 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
2977 R_X86_64_GOTPC32_TLSDESC relocation.
2979 2020-01-18 Nick Clifton <nickc@redhat.com>
2981 * configure: Regenerate.
2982 * po/gas.pot: Regenerate.
2984 2020-01-18 Nick Clifton <nickc@redhat.com>
2986 Binutils 2.34 branch created.
2988 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
2990 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
2991 with vex_encoding_vex.
2992 (parse_insn): Likewise.
2993 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
2994 and {vex3} documentation.
2995 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
2997 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
2999 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
3002 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
3003 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
3004 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
3005 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
3006 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
3007 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
3009 2020-01-16 Jan Beulich <jbeulich@suse.com>
3011 * config/tc-i386.c (match_template): Drop found_cpu_match local
3014 2020-01-16 Jan Beulich <jbeulich@suse.com>
3016 * testsuite/gas/i386/avx512dq-inval.l,
3017 testsuite/gas/i386/avx512dq-inval.s: New.
3018 * testsuite/gas/i386/i386.exp: Run new test.
3020 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
3022 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
3023 relocations when the target is 430X, except when extracting part of an
3025 (msp430_srcoperand): Adjust comment.
3026 Initialize the expp member of the msp430_operand_s struct as
3028 (msp430_dstoperand): Likewise.
3029 * testsuite/gas/msp430/msp430.exp: Run new test.
3030 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
3031 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
3033 2020-01-15 Alan Modra <amodra@gmail.com>
3035 * configure.tgt: Add sparc-*-freebsd case.
3037 2020-01-14 Lili Cui <lili.cui@intel.com>
3039 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
3040 * testsuite/gas/i386/align-branch-1b.d: Likewise.
3041 * testsuite/gas/i386/align-branch-1c.d: Likewise.
3042 * testsuite/gas/i386/align-branch-1d.d: Likewise.
3043 * testsuite/gas/i386/align-branch-1e.d: Likewise.
3044 * testsuite/gas/i386/align-branch-1f.d: Likewise.
3045 * testsuite/gas/i386/align-branch-1g.d: Likewise.
3046 * testsuite/gas/i386/align-branch-1h.d: Likewise.
3047 * testsuite/gas/i386/align-branch-1i.d: Likewise.
3048 * testsuite/gas/i386/align-branch-5.d: Likewise.
3049 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
3050 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
3051 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
3052 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
3053 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
3054 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
3055 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
3056 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
3057 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
3058 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
3059 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
3060 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
3062 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
3065 * config/tc-z80.c: Add support for half precision, single
3066 precision and double precision floating point values.
3067 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
3068 * doc/as.texi: Add new z80 command line options.
3069 * doc/c-z80.texi: Document new z80 command line options.
3070 * testsuite/gas/z80/ez80_pref_dis.s: New test.
3071 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
3072 * testsuite/gas/z80/z80.exp: Run the new test.
3073 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
3074 * testsuite/gas/z80/fp_zeda32.d: Likewise.
3075 * testsuite/gas/z80/strings.d: Update expected output.
3077 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
3079 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
3082 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
3084 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
3086 * config/tc-arc.h: Add header if/defs.
3087 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
3089 2020-01-13 Alan Modra <amodra@gmail.com>
3091 * testsuite/gas/wasm32/allinsn.d: Update expected output.
3093 2020-01-13 Alan Modra <amodra@gmail.com>
3095 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
3098 2020-01-10 Alan Modra <amodra@gmail.com>
3100 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
3101 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
3103 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3106 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
3108 (emit_ld_r_r): Likewise.
3109 (emit_ld_rr_m): Likewise.
3110 (emit_ld_rr_nn): Likewise.
3112 2020-01-09 Jan Beulich <jbeulich@suse.com>
3114 * config/tc-i386.c (optimize_encoding): Add
3115 is_any_vex_encoding() invocations. Drop respective
3116 i.tm.extension_opcode == None checks.
3118 2020-01-09 Jan Beulich <jbeulich@suse.com>
3120 * config/tc-i386.c (md_assemble): Check RegRex is clear during
3121 REX transformations. Correct comment indentation.
3123 2020-01-09 Jan Beulich <jbeulich@suse.com>
3125 * config/tc-i386.c (optimize_encoding): Generalize register
3126 transformation for TEST optimization.
3128 2020-01-09 Jan Beulich <jbeulich@suse.com>
3130 * testsuite/gas/i386/x86-64-sysenter-amd.s,
3131 testsuite/gas/i386/x86-64-sysenter-amd.d,
3132 testsuite/gas/i386/x86-64-sysenter-amd.l,
3133 testsuite/gas/i386/x86-64-sysenter-intel.d,
3134 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
3135 * testsuite/gas/i386/i386.exp: Run new tests.
3137 2020-01-08 Nick Clifton <nickc@redhat.com>
3140 * doc/as.texi (Align): Document the fact that all arguments can be
3143 (P2align): Likewise.
3145 2020-01-08 Nick Clifton <nickc@redhat.com>
3148 * config/obj-elf.c (obj_elf_section): Fail if the section name is
3149 already defined as a different symbol type.
3150 * testsuite/gas/elf/pr14891.s: New test source file.
3151 * testsuite/gas/elf/pr14891.d: New test driver.
3152 * testsuite/gas/elf/pr14891.s: New test expected error output.
3153 * testsuite/gas/elf/elf.exp: Run the new test.
3155 2020-01-08 Alan Modra <amodra@gmail.com>
3157 * config/tc-z8k.c (md_begin): Make idx unsigned.
3158 (get_specific): Likewise for this_index.
3160 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
3162 * onfig/tc-arc.c (parse_reloc_symbol): New function.
3163 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
3164 (md_operand): Set X_md to absent.
3165 (arc_parse_name): Check for X_md.
3167 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
3170 * as.h (TC_STRING_ESCAPES): Provide a default definition.
3171 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
3173 * read.c (next_char_of_string): Likewise.
3174 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
3175 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
3177 2020-01-03 Nick Clifton <nickc@redhat.com>
3179 * po/sv.po: Updated Swedish translation.
3181 2020-01-03 Jan Beulich <jbeulich@suse.com>
3183 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
3184 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3186 2020-01-03 Jan Beulich <jbeulich@suse.com>
3188 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
3189 by-element usdot. Add 64-bit form tests for by-element sudot.
3190 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
3192 2020-01-03 Jan Beulich <jbeulich@suse.com>
3194 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
3195 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
3197 2020-01-03 Jan Beulich <jbeulich@suse.com>
3199 * testsuite/gas/aarch64/f64mm.d,
3200 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
3202 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
3204 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
3205 support for assembler code generated by SDCC. Add new relocation
3206 types. Add z80-elf target support.
3207 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
3208 labels. Local labels starts from ".L".
3209 * NEWS: Mention the new support.
3210 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
3211 * testsuite/gas/all/fwdexp.s: Likewise.
3212 * testsuite/gas/all/cond.l: Likewise.
3213 * testsuite/gas/all/cond.s: Likewise.
3214 * testsuite/gas/all/fwdexp.d: Likewise.
3215 * testsuite/gas/all/fwdexp.s: Likewise.
3216 * testsuite/gas/elf/section2.e-mips: Likewise.
3217 * testsuite/gas/elf/section2.l: Likewise.
3218 * testsuite/gas/elf/section2.s: Likewise.
3219 * testsuite/gas/macros/app1.d: Likewise.
3220 * testsuite/gas/macros/app1.s: Likewise.
3221 * testsuite/gas/macros/app2.d: Likewise.
3222 * testsuite/gas/macros/app2.s: Likewise.
3223 * testsuite/gas/macros/app3.d: Likewise.
3224 * testsuite/gas/macros/app3.s: Likewise.
3225 * testsuite/gas/macros/app4.d: Likewise.
3226 * testsuite/gas/macros/app4.s: Likewise.
3227 * testsuite/gas/macros/app4b.s: Likewise.
3228 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
3229 * testsuite/gas/z80/z80.exp: Add new tests
3230 * testsuite/gas/z80/dollar.d: New file.
3231 * testsuite/gas/z80/dollar.s: New file.
3232 * testsuite/gas/z80/ez80_adl_all.d: New file.
3233 * testsuite/gas/z80/ez80_adl_all.s: New file.
3234 * testsuite/gas/z80/ez80_adl_suf.d: New file.
3235 * testsuite/gas/z80/ez80_isuf.s: New file.
3236 * testsuite/gas/z80/ez80_z80_all.d: New file.
3237 * testsuite/gas/z80/ez80_z80_all.s: New file.
3238 * testsuite/gas/z80/ez80_z80_suf.d: New file.
3239 * testsuite/gas/z80/r800_extra.d: New file.
3240 * testsuite/gas/z80/r800_extra.s: New file.
3241 * testsuite/gas/z80/r800_ii8.d: New file.
3242 * testsuite/gas/z80/r800_z80_doc.d: New file.
3243 * testsuite/gas/z80/z180.d: New file.
3244 * testsuite/gas/z80/z180.s: New file.
3245 * testsuite/gas/z80/z180_z80_doc.d: New file.
3246 * testsuite/gas/z80/z80_doc.d: New file.
3247 * testsuite/gas/z80/z80_doc.s: New file.
3248 * testsuite/gas/z80/z80_ii8.d: New file.
3249 * testsuite/gas/z80/z80_ii8.s: New file.
3250 * testsuite/gas/z80/z80_in_f_c.d: New file.
3251 * testsuite/gas/z80/z80_in_f_c.s: New file.
3252 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
3253 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
3254 * testsuite/gas/z80/z80_out_c_0.d: New file.
3255 * testsuite/gas/z80/z80_out_c_0.s: New file.
3256 * testsuite/gas/z80/z80_reloc.d: New file.
3257 * testsuite/gas/z80/z80_reloc.s: New file.
3258 * testsuite/gas/z80/z80_sli.d: New file.
3259 * testsuite/gas/z80/z80_sli.s: New file.
3261 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
3263 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
3266 2020-01-01 Alan Modra <amodra@gmail.com>
3268 Update year range in copyright notice of all files.
3270 For older changes see ChangeLog-2019
3272 Copyright (C) 2020 Free Software Foundation, Inc.
3274 Copying and distribution of this file, with or without modification,
3275 are permitted in any medium without royalty provided the copyright
3276 notice and this notice are preserved.
3282 version-control: never