1 2020-07-06 Nick Clifton <nickc@redhat.com>
3 * po/uk.po: Updated Ukranian translation.
5 2020-07-04 Nick Clifton <nickc@redhat.com>
7 * configure: Regenerate.
8 * po/gas.pot: Regenerate.
10 2020-07-04 Nick Clifton <nickc@redhat.com>
12 * version.m4: Change version number to 2.35.50.
13 * configure: Regenerate.
14 * po/bfd.pot: Regenerate.
16 2020-07-04 Nick Clifton <nickc@redhat.com>
18 Binutils 2.35 branch created.
20 2020-07-03 Alan Modra <amodra@gmail.com>
23 * testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
25 2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
27 * config/tc-i386.c (build_modrm_byte): Check vexswapsources to
28 swap two source operands.
30 2020-07-02 Nick Clifton <nickc@redhat.com>
32 * testsuite/gas/all/fill-1.d: Skip for MeP targets.
34 2020-07-02 Alex Coplan <alex.coplan@arm.com>
36 * config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
37 segfault on negative chars.
38 * testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
39 * testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
41 2020-07-02 Nick Clifton <nickc@redhat.com>
44 * testsuite/gas/ia64/group-2.d: Add -T option to readelf
46 * testsuite/gas/ia64/unwind.d: Likewise.
47 * testsuite/gas/mmix/bspec-1.d: Likewise.
48 * testsuite/gas/mmix/bspec-2.d: Likewise.
49 * testsuite/gas/mmix/comment-1.d: Likewise.
50 * testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
52 2020-07-01 Alan Modra <amodra@gmail.com>
54 * config/tc-xc16x.c (md_apply_fix): Add FIXME.
56 2020-07-01 Alan Modra <amodra@gmail.com>
58 * testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
59 in data sections, and mep.
61 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
63 * NEWS: Mention x86 NaCl target support removal.
64 * config/tc-i386.c: Remove x86 NaCl target support.
65 * config/tc-i386.h: Likewise.
66 * configure.tgt: Likewise.
67 * testsuite/gas/i386/i386.exp: Likewise.
68 * testsuite/gas/i386/iamcu-1.d: Likewise.
69 * testsuite/gas/i386/iamcu-2.d: Likewise.
70 * testsuite/gas/i386/iamcu-3.d: Likewise.
71 * testsuite/gas/i386/iamcu-4.d: Likewise.
72 * testsuite/gas/i386/iamcu-5.d: Likewise.
73 * testsuite/gas/i386/k1om.d: Likewise.
74 * testsuite/gas/i386/l1om.d: Likewise.
76 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
78 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
79 checking into riscv_csr_address.
80 (riscv_csr_version_check): Likewise.
81 (riscv_csr_address): New function. Return the suitable CSR address
82 after checking the ISA dependency and versions. Issue warnings if
83 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
84 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
85 priv spec versions for them.
86 (reg_csr_lookup_internal): Call riscv_csr_address to find the
88 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
89 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
90 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
91 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
92 priv spec warnings here. These warnings are added by accident.
93 Remove them and only focus on the ISA dependency warnings.
94 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
95 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
96 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
97 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
98 than the privileged ones.
99 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
100 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
101 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
102 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
103 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
104 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
105 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
106 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
107 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
108 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
110 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
112 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
113 (md_assemble): Don't process ImmExt without operands.
115 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
118 * config/tc-mmix.c (md_assemble) <fixup for
119 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
120 Also, set its fx_no_overflow.
121 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
122 Similarly this fixup affects 4 bytes, not 8 and needs its
124 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
125 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
127 2020-06-29 Alan Modra <amodra@gmail.com>
129 * config/tc-s12z.c: Use C style comments.
130 * config/tc-z80.c: Likewise.
131 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
133 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
135 * config/tc-i386.c (md_assemble): Process ImmExt without
138 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
140 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
141 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
142 VECSIB256 and VECSIB512, respectively.
143 (build_modrm_byte): Replace vecsib with sib.
145 2020-06-26 Jan Beulich <jbeulich@suse.com>
147 * testsuite/gas/i386/nop-1-suffix.d: New.
148 * testsuite/gas/i386/i386.exp: Run new test.
150 2020-06-26 Pat Bernardi <bernardi@adacore.com>
152 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
153 (md_pseudo_table): Handle "gnu_attribute".
154 * doc/as.texi: Document GNU attribute for M68K.
156 2020-06-25 Nick Clifton <nickc@redhat.com>
159 * config/tc-arm.c (arm_force_relocation): Force resolution of
160 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
161 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
163 2020-06-25 Jan Beulich <jbeulich@suse.com>
165 * config/tc-i386.c (md_assemble): Move call to process_immext()
167 (process_operands): ... here.
169 2020-06-25 Jan Beulich <jbeulich@suse.com>
171 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
172 diagnostic when there is a sizing prefix. Switch to word/dword/
173 qword encoding when there is a sizing prefix and no (explicit or
175 (update_imm): Handle presence of a sizing prefix.
176 * testsuite/gas/i386/noreg16-data32.d,
177 testsuite/gas/i386/noreg32-data16.d,
178 testsuite/gas/i386/noreg32-data16.e,
179 testsuite/gas/i386/noreg64-data16.d,
180 testsuite/gas/i386/noreg64-data16.e,
181 testsuite/gas/i386/noreg64-rex64.d: New.
182 * testsuite/gas/i386/i386.exp: Run new tests.
183 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
184 Introduce and use pfx* macros.
185 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
187 * testsuite/gas/i386/noreg16.d: Adjust expectations.
189 2020-06-25 Jan Beulich <jbeulich@suse.com>
191 * testsuite/gas/i386/avx-16bit.d,
192 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
193 testsuite/gas/i386/avx512f-16bit.d,
194 testsuite/gas/i386/avx512f.d,
195 testsuite/gas/i386/evex-lig256.d,
196 testsuite/gas/i386/evex-lig512.d
197 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
198 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
199 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
200 testsuite/gas/i386/sse2-16bit.d,
201 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
204 2020-06-25 Jan Beulich <jbeulich@suse.com>
206 * config/tc-i386.c (md_assemble): Also reject explicit REX
207 prefixes with VEX and alike encoded insns. Zap consumed bits
209 (output_insn): Don't ignore REX prefix for VEX and alike
210 encodings; abort() instead if encountered.
211 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
213 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
214 * testsuite/gas/i386/x86-64-pseudos.d,
215 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
217 2020-06-25 Jan Beulich <jbeulich@suse.com>
219 * config/tc-i386.c (process_operands): Translate explicit REX
220 prefix into i.rex for SSE2AVX templates.
221 (set_rex_vrex): New helper.
222 (build_modrm_byte): Use it.
223 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
225 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
227 2020-06-25 Jan Beulich <jbeulich@suse.com>
229 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
230 templates when there's no data size prefix.
231 (md_assemble): Reject data size prefix also for legacy encoded
233 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
234 Uncomment previously not working line.
235 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
237 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
238 testsuite/gas/i386/sse2avx.d: Adjust expectations.
240 2020-06-25 Jan Beulich <jbeulich@suse.com>
242 * config/tc-i386.c (build_evex_prefix): Drop early setting of
245 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
247 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
248 explicit_priv_attr. It used to indicate CSR or priv instructions are
250 (riscv_is_priv_insn): Return True if it is a privileged instruction.
251 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
252 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
253 (riscv_write_out_attrs): Clarification of when to generate the elf
254 priv spec attributes.
255 * testsuite/gas/riscv/attribute-11.s: Add comments.
256 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
257 `priv_insn_<n>` to decide which priv instruction is expected to used.
259 * testsuite/gas/riscv/attribute-14a.d: Likewise.
260 * testsuite/gas/riscv/attribute-14b.d: Likewise.
261 * testsuite/gas/riscv/attribute-14c.d: Likewise.
262 * testsuite/gas/riscv/attribute-14d.d: Likewise.
263 * testsuite/gas/riscv/attribute-14e.d: Likewise.
265 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
267 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
268 (riscv_set_default_priv_spec): Get the priv spec version from the
269 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
271 2020-06-20 Alan Modra <amodra@gmail.com>
273 * configure.tgt: Set bfd_gas for all SH targets.
275 2020-06-18 Jan Beulich <jbeulich@suse.com>
277 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
278 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
281 2020-06-16 Lili Cui <lili.cui@intel.com>
283 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
284 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
285 * doc/c-i386.texi: Add avx512_vp2intersect.
287 2020-06-16 Jan Beulich <jbeulich@suse.com>
289 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
291 * testsuite/gas/i386/sse-check.s: Adjust comment.
292 * testsuite/gas/i386/sse-check-error.l,
293 testsuite/gas/i386/sse-check-warn.e,
294 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
297 2020-06-16 Alan Modra <amodra@gmail.com>
299 * config/tc-tic30.h: Remove OBJ_AOUT support.
300 * configure.tgt: Delete tic30-*-*aout* entry.
302 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
304 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
306 (elf32xtensa_abi): New declaration.
307 (option_abi_windowed, option_abi_call0): New enum constants.
308 (md_longopts): Add entries for --abi-windowed and --abi-call0.
309 (md_parse_option): Add handlers for --abi-windowed and
311 (xtensa_add_config_info): Use xtensa_abi_choice instead of
312 XSHAL_ABI to format ABI tag.
313 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
314 --abi-call0 to the list of options.
315 * doc/c-xtensa.texi: Add description for options --abi-windowed
317 * testsuite/gas/xtensa/abi-call0.d: New test definition.
318 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
319 * testsuite/gas/xtensa/abi.s: New test source.
321 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
324 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
326 * testsuite/gas/i386/tsxldtrk.s: Likewise.
327 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
328 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
330 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
332 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
333 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
334 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
336 2020-06-09 Seth Girvan <snth@snthhacks.com>
338 * doc/c-avr.texi: Improve wording.
340 2020-06-09 Jan Beulich <jbeulich@suse.com>
342 * testsuite/gas/i386/x86-64-pseudos-bad.s,
343 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
345 2020-06-09 Jan Beulich <jbeulich@suse.com>
347 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
349 * testsuite/gas/i386/prefix.d: Adjust expectations.
351 2020-06-09 Jan Beulich <jbeulich@suse.com>
353 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
354 with VEX/EVEX encoding tests.
355 * testsuite/gas/i386/prefix.d: Adjust expectations.
357 2020-06-09 Jan Beulich <jbeulich@suse.com>
359 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
361 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
362 * testsuite/gas/i386/noreg64.d: Adjust expectations.
363 * testsuite/gas/i386/noreg-intel64.d,
364 testsuite/gas/i386/noreg-intel64.l,
365 testsuite/gas/i386/noreg-intel64.s: New.
366 * testsuite/gas/i386/i386.exp: Run new tests.
368 2020-06-09 Jan Beulich <jbeulich@suse.com>
370 * config/tc-i386.c (vex_encoding_error): New enumerator.
371 (VEX_check_operands): Rename to VEX_check_encoding. Check
372 for vex_encoding_error. Move Imm4 handling ...
373 (check_VecOperands): ... here.
374 (match_template): Call VEX_check_encoding when there are no
375 operands. Split construct calling check_VecOperands and
376 VEX_check_encoding (when there are operands).
377 (check_register): Don't blindly set vex_encoding_evex.
378 * testsuite/gas/i386/pseudos-bad.s,
379 testsuite/gas/i386/pseudos-bad.l: New.
380 * testsuite/gas/i386/i386.exp: Run new test.
381 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
383 2020-06-08 Alex Coplan <alex.coplan@arm.com>
385 * config/tc-arm.c (insns): Add dfb.
386 * testsuite/gas/arm/dfb.d: New test.
387 * testsuite/gas/arm/dfb.s: Input for test.
389 2020-06-08 Nick Clifton <nickc@redhat.com>
391 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
393 2020-06-08 Jan Beulich <jbeulich@suse.com>
395 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
397 2020-06-08 Jan Beulich <jbeulich@suse.com>
399 * config/tc-i386.c (check_byte_reg): Drop dead conditional
402 2020-06-08 Jan Beulich <jbeulich@suse.com>
404 * config/tc-i386.c (check_register): Split RegTR handling, to
405 fail recognition also in 64-bit mode as well as with i586 or
406 i686 explicitly enabled.
407 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
408 * testsuite/gas/i386/x86_64-intel.d,
409 testsuite/gas/i386/x86_64.d: Adjust expectations.
411 2020-06-08 Jan Beulich <jbeulich@suse.com>
413 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
414 * testsuite/gas/cfi/cfi.exp: Run this test.
416 2020-06-08 Jan Beulich <jbeulich@suse.com>
418 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
419 check to %st(N) parsing logic.
420 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
422 2020-06-08 Jan Beulich <jbeulich@suse.com>
424 * config/tc-i386.c (bad_reg): New.
425 (check_VecOperations, i386_att_operand, i386_parse_name): Check
427 (check_register): New, broken out from ...
428 (parse_real_register): ... here. Call it.
429 (parse_register): Call it, and error upon failure.
430 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
431 testsuite/gas/i386/x86-64-equ-bad.s,
432 testsuite/gas/i386/x86-64-equ-bad.l: New.
433 * testsuite/gas/i386/i386.exp: Run new tests.
435 2020-06-06 Alan Modra <amodra@gmail.com>
437 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
438 * doc/c-ppc.texi: Likewise.
440 2020-06-06 Alan Modra <amodra@gmail.com>
442 * config/tc-ppc.c: Update throughout for reloc renaming.
444 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
446 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
449 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
451 * config/tc-riscv.c (explicit_csr): New static boolean.
452 Used to indicate CSR are explictly used.
453 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
454 (riscv_write_out_attrs): If we already have set elf priv
455 attributes, then generate them. Otherwise, don't generate
456 them when no CSR are used.
457 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
458 * testsuite/gas/riscv/attribute-02.d: Likewise.
459 * testsuite/gas/riscv/attribute-03.d: Likewise.
460 * testsuite/gas/riscv/attribute-04.d: Likewise.
461 * testsuite/gas/riscv/attribute-05.d: Likewise.
462 * testsuite/gas/riscv/attribute-06.d: Likewise.
463 * testsuite/gas/riscv/attribute-07.d: Likewise.
464 * testsuite/gas/riscv/attribute-08.d: Likewise.
465 * testsuite/gas/riscv/attribute-09.d: Likewise.
466 * testsuite/gas/riscv/attribute-10.d: Likewise.
467 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
468 * testsuite/gas/riscv/attribute-11.s: New testcase.
469 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
470 used, so we should output the ELF priv attributes.
471 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
472 used, so output the priv attributes according to the -mpriv-spec.
473 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
474 used, so ignore the -mpriv-spec setting.
476 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
478 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
480 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
481 endianness to cgen_get_insn_value and cgen_put_insn_value.
483 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
485 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
488 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
490 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
492 (md_assemble): Remove no longer needed hack.
494 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
496 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
498 (gas_cgen_md_apply_fix): Likewise.
499 (gas_cgen_md_apply_fix): Likewise.
500 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
502 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
505 2020-06-04 Alan Modra <amodra@gmail.com>
507 * testsuite/config/default.exp: Remove global directive outside
509 * testsuite/gas/mep/complex-relocs.exp: Likewise.
510 * testsuite/gas/microblaze/relax_size.exp: Likewise.
511 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
512 * testsuite/gas/mt/relocs.exp: Likewise.
513 * testsuite/gas/rx/rx.exp: Likewise.
515 2020-06-03 Stephen Casner <casner@acm.org>
517 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
519 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
520 Jim Wilson <jimw@sifive.com>
523 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
524 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
525 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
526 Move B before SB. Move J before UJ.
528 2020-06-01 Alex Coplan <alex.coplan@arm.com>
530 * write.c (relax_segment): Fix handling of negative offset when
531 relaxing an rs_org frag.
532 * testsuite/gas/aarch64/org-neg.d: New test.
533 * testsuite/gas/aarch64/org-neg.l: Error output for test.
534 * testsuite/gas/aarch64/org-neg.s: Input for test.
535 * testsuite/gas/arm/org-neg.d: New test.
536 * testsuite/gas/arm/org-neg.l: Error output for test.
537 * testsuite/gas/arm/org-neg.s: Input for test.
539 2020-05-28 Stephen Casner <casner@acm.org>
541 Fix unexpected failures in gas testsuite for pdp11-aout target.
542 These are caused by the PDP11's mix of little-endian octets in
543 shorts but shorts in big endian order for long or quad.
545 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
546 * testsuite/gas/all/gas.exp: Select alternate test scripts for
547 pdp11, skip octa test completely.
548 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
549 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
550 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
552 2020-05-28 Alex Coplan <alex.coplan@arm.com>
554 * frags.c (frag_grow): Fix comment.
556 2020-05-27 Stephen Casner <casner@acm.org>
559 * config/tc-pdp11.c (parse_reg): Distinguish register names from
560 symbols that begin with a register name.
561 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
562 * testsuite/gas/pdp11/pr26001.s: Likewise.
563 * testsuite/gas/pdp11/pr26001.d: Likewise.
565 2020-05-27 Simon Cook <simon.cook@embecosm.com>
567 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
568 pointer when creating struct riscv_csr_extra.
570 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
572 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
573 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
574 * testsuite/gas/i386/inval-avx512f.l: Updated.
576 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
578 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
579 load/store instruction variants with alignment hints.
580 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
581 instruction variants with alignment hints.
583 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
586 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
587 instead of R_XGATE_PCREL_X.
588 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
589 BFD_RELOC_XGATE_PCREL_X.
591 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
594 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
595 with &fragP->fr_literal[0].
597 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
600 * config/tc-vax.c (md_estimate_size_before_relax): Replace
601 fragP->fr_literal with &fragP->fr_literal[0].
602 (md_convert_frag): Likewise.
604 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
607 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
608 with &fragP->fr_literal[0].
610 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
613 * config/tc-crx.c (getreg_image): Change argument type to int.
614 (md_convert_frag): Replace fragP->fr_literal with
615 &fragP->fr_literal[0].
617 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
620 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
621 sprintf with memmove.
623 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
625 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
626 with &fragP->fr_literal[0].
628 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
631 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
632 2 overlapping strings.
634 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
636 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
637 with &fragP->fr_literal[0].
639 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
641 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
642 with &fragp->fr_literal[0].
643 * config/tc-microblaze.c (md_apply_fix): Likewise.
644 * config/tc-sh.c (md_convert_frag): Likewise.
646 2020-05-24 Jim Wilson <jimw@sifive.com>
649 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
650 asection to segT. New locals seg and subseg. Call subseg_set before
651 fix_new_exp. Call subseg_set after loop to restore original values.
653 2020-05-21 Alan Modra <amodra@gmail.com>
655 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
657 * config/obj-elf.c: Likewise.
658 * config/tc-aarch64.c: Likewise.
659 * config/tc-arm.c: Likewise.
660 * config/tc-m68k.c: Likewise.
661 * config/tc-nios2.c: Likewise.
662 * config/tc-tic30.c: Likewise.
666 * symbols.c: Likewise.
667 * testsuite/gas/all/test-gen.c: Likewise.
669 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
671 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
672 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
673 Static variables which are used to set the ISA extensions. You can
674 use -march (or ELF build attributes) and -misa-spec to set them,
676 (ext_version_hash): The hash table used to handle the extensions
678 (init_ext_version_hash): Initialize the ext_version_hash according
679 to riscv_ext_version_table.
680 (riscv_get_default_ext_version): The callback function of
681 riscv_parse_subset_t. According to the choosed ISA spec,
682 get the default version for the specific extension.
683 (riscv_set_arch): Set the callback function.
684 (enum options, struct option md_longopts): Add new option -misa-spec.
685 (md_parse_option): Do not call riscv_set_arch for -march. We will
686 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
687 to set default_isa_spec class.
688 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
689 ext_version_hash, and then call riscv_set_arch to set the architecture
690 with versions according to default_arch_with_ext.
691 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
693 * testsuite/gas/riscv/attribute-03.d: Likewise.
694 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
695 already set it's version to 2p1 by march, so no need to use the default
696 2p2 version. For m-ext, we do not set the version by -march and ELF arch
697 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
698 ISA spec 2p2, so set 0p0 to it.
699 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
700 zicsr is 2p0 according to ISA spec 20191213.
701 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
702 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
703 You can set them by configure options --with-arch and
704 --with-isa-spec, respectively.
705 (riscv_set_default_isa_spec): New function used to set the
707 (md_parse_option): Call riscv_set_default_isa_spec rather than
708 call riscv_get_isa_spec_class directly.
709 (riscv_after_parse_args): If the -isa-spec is not set, then we
710 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
711 calling riscv_set_default_isa_spec.
712 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
713 the --with-isa-spec may be set to different ISA spec.
714 * testsuite/gas/riscv/attribute-02.d: Likewise.
715 * testsuite/gas/riscv/attribute-03.d: Likewise.
716 * testsuite/gas/riscv/attribute-04.d: Likewise.
717 * testsuite/gas/riscv/attribute-05.d: Likewise.
718 * testsuite/gas/riscv/attribute-06.d: Likewise.
719 * testsuite/gas/riscv/attribute-07.d: Likewise.
720 * configure.ac: Add configure options, --with-arch and
722 * configure: Regenerated.
723 * config.in: Regenerated.
724 * config/tc-riscv.c (default_priv_spec): Static variable which is
725 used to check if the CSR is valid for the chosen privilege spec. You
726 can use -mpriv-spec to set it.
727 (enum reg_class): We now get the CSR address from csr_extra_hash rather
728 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
729 (riscv_init_csr_hashes): Only need to initialize one hash table
731 (riscv_csr_class_check): Change the return type to void. Don't check
732 the ISA dependency if -mcsr-check isn't set.
733 (riscv_csr_version_check): New function. Check and find the CSR address
734 from csr_extra_hash, according to default_priv_spec. Report warning
735 for the invalid CSR if -mcsr-check is set.
736 (reg_csr_lookup_internal): Updated.
737 (reg_lookup_internal): Likewise.
738 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
739 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
740 (md_parse_option): Call riscv_set_default_priv_version to set
742 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
743 privilege spec to the newest one.
744 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
745 include/opcode/riscv.h.
746 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
747 to check the ISA dependency for CSR, so fix the spec version by adding
749 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
750 version warnings for the test case.
751 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
752 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
753 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
754 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
755 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
756 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
757 Check whether the CSR is valid when privilege version 1.9 is choosed.
758 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
759 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
760 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
761 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
762 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
763 Check whether the CSR is valid when privilege version 1.10 is choosed.
764 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
765 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
766 Check whether the CSR is valid when privilege version 1.11 is choosed.
767 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
768 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
769 setting. You can set it by configure option --with-priv-spec.
770 (riscv_set_default_priv_spec): New function used to set the default
772 (md_parse_option): Call riscv_set_default_priv_spec rather than
773 call riscv_get_priv_spec_class directly.
774 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
775 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
776 calling riscv_set_default_priv_spec.
777 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
778 the --with-priv-spec may be set to different privilege spec.
779 * testsuite/gas/riscv/priv-reg.d: Likewise.
780 * configure.ac: Add configure option --with-priv-spec.
781 * configure: Regenerated.
782 * config.in: Regenerated.
783 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
784 explicit_attr. Set it to TRUE if any ELF attribute is found.
785 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
786 the priv attributes are set.
787 (md_assemble): Set the default_priv_spec according to the priv
788 attributes when we start to assemble instruction.
789 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
790 riscv_write_out_attrs. Update the arch and priv attributes. If we
791 don't set the corresponding ELF attributes, then try to output the
793 (riscv_set_public_attributes): If any ELF attribute or -march-attr
794 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
795 to update the arch and priv attributes.
796 (s_riscv_attribute): Make sure all arch and priv attributes are set
797 before any instruction.
798 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
799 ELF attribute or -march-attr is set. If the priv attributes are not
800 set, then try to update them by the default setting (-mpriv-spec or
802 * testsuite/gas/riscv/attribute-02.d: Likewise.
803 * testsuite/gas/riscv/attribute-03.d: Likewise.
804 * testsuite/gas/riscv/attribute-04.d: Likewise.
805 * testsuite/gas/riscv/attribute-06.d: Likewise.
806 * testsuite/gas/riscv/attribute-07.d: Likewise.
807 * testsuite/gas/riscv/attribute-08.d: Likewise.
808 * testsuite/gas/riscv/attribute-09.d: Likewise.
809 * testsuite/gas/riscv/attribute-10.d: Likewise.
810 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
811 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
812 set by priv attributes must be supported.
813 * testsuite/gas/riscv/attribute-05.s: Likewise.
814 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
815 priv attributes according to the -mpriv-spec option.
816 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
817 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
818 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
819 * testsuite/gas/riscv/priv-reg.d: Removed.
820 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
821 CSR according to the priv spec 1.9.
822 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
823 CSR according to the priv spec 1.9.1.
824 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
825 CSR according to the priv spec 1.10.
826 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
827 CSR according to the priv spec 1.11.
828 * config/tc-riscv.c (md_show_usage): Add descriptions about
830 * doc/c-riscv.texi: Likewise.
832 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
834 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
835 * testsuite/gas/ppc/power9.d: Likewise.
836 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
837 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
838 sync, wait, waitrsv>: Add tests.
839 * testsuite/gas/ppc/power10.d: Likewise.
841 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
844 * config/tc-arm.c : Add arm_ext_v8r feature.
845 (it_fsm_post_encode): Check arm_ext_v8r feature.
846 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
848 2020-05-19 Alan Modra <amodra@gmail.com>
850 * write.c (write_contents): Use bfd_get_filename rather than
851 accessing bfd->filename directly. Use bfd_section_name rather
852 than accessing section->name directly.
854 2020-05-19 Alan Modra <amodra@gmail.com>
856 * symbols.c (local_symbol_make): Init all of lsy_flags.
858 2020-05-18 Alan Modra <amodra@gmail.com>
860 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
861 before looking at add_symbol->sy_flags.
863 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
865 * config/tc-i386.c: Not handle lret/iret.
866 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
867 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
868 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
869 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
870 * testsuite/gas/i386/lfence-ret.s: Ditto.
871 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
872 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
873 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
874 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
875 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
876 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
877 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
879 2020-05-15 Alan Modra <amodra@gmail.com>
880 Alex Coplan <alex.coplan@arm.com>
882 * symbols.c (struct local_symbol): Update comment.
883 (resolve_symbol_value): For resolved symbols equated to other
884 symbols, verify that the referenced symbol is not a local_symbol
885 before accessing sy_value. Don't leave symbol loops during
886 finalize_syms resolution.
887 * testsuite/gas/all/assign-bad-recursive.d: New test.
888 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
889 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
890 * testsuite/gas/all/gas.exp: Run it.
892 2020-05-14 Nick Clifton <nickc@redhat.com>
894 * po/sv.po: Updated Swedish translation.
896 2020-05-11 Alan Modra <amodra@gmail.com>
898 * testsuite/gas/ppc/scalarquad.d,
899 * testsuite/gas/ppc/scalarquad.s: New test.
900 * testsuite/gas/ppc/ppc.exp: Run it.
902 2020-05-11 Alan Modra <amodra@gmail.com>
904 * testsuite/gas/ppc/rightmost.d,
905 * testsuite/gas/ppc/rightmost.s: New test.
906 * testsuite/gas/ppc/ppc.exp: Run it.
908 2020-05-11 Alan Modra <amodra@gmail.com>
910 * testsuite/gas/ppc/xvtlsbb.d,
911 * testsuite/gas/ppc/xvtlsbb.s: New test.
912 * testsuite/gas/ppc/ppc.exp: Run it.
914 2020-05-11 Alan Modra <amodra@gmail.com>
916 * testsuite/gas/ppc/stringop.d,
917 * testsuite/gas/ppc/stringop.s: New test.
918 * testsuite/gas/ppc/ppc.exp: Run it.
920 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
922 * testsuite/gas/ppc/set_bool.d,
923 * testsuite/gas/ppc/set_bool.s: New test.
924 * testsuite/gas/ppc/ppc.exp: Run it.
926 2020-05-11 Alan Modra <amodra@gmail.com>
928 * testsuite/gas/ppc/bitmanip.d,
929 * testsuite/gas/ppc/bitmanip.s: New test.
930 * testsuite/gas/ppc/ppc.exp: Run it.
932 2020-05-11 Alan Modra <amodra@gmail.com>
934 * testsuite/gas/ppc/genpcv.d,
935 * testsuite/gas/ppc/genpcv.s: New test.
936 * testsuite/gas/ppc/ppc.exp: Run it.
938 2020-05-11 Alan Modra <amodra@gmail.com>
940 * testsuite/gas/ppc/maskmanip.d,
941 * testsuite/gas/ppc/maskmanip.s: New test.
942 * testsuite/gas/ppc/ppc.exp: Run it.
944 2020-05-11 Alan Modra <amodra@gmail.com>
945 Peter Bergner <bergner@linux.ibm.com>
947 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
948 (md_assemble): Check acc specified in correct operand.
949 * testsuite/gas/ppc/outerprod.d,
950 * testsuite/gas/ppc/outerprod.s,
951 * testsuite/gas/ppc/vsx4.d,
952 * testsuite/gas/ppc/vsx4.s: New tests.
953 * testsuite/gas/ppc/ppc.exp: Run them.
955 2020-05-11 Alan Modra <amodra@gmail.com>
957 * testsuite/gas/ppc/simd_perm.d,
958 * testsuite/gas/ppc/simd_perm.s: New test.
959 * testsuite/gas/ppc/ppc.exp: Run it.
961 2020-05-11 Alan Modra <amodra@gmail.com>
963 * testsuite/gas/ppc/int128.d,
964 * testsuite/gas/ppc/int128.s: New test.
965 * testsuite/gas/ppc/ppc.exp: Run it.
967 2020-05-11 Alan Modra <amodra@gmail.com>
969 * testsuite/gas/ppc/vsx_32byte.d,
970 * testsuite/gas/ppc/vsx_32byte.s: New test.
971 * testsuite/gas/ppc/ppc.exp: Run it.
973 2020-05-11 Alan Modra <amodra@gmail.com>
975 * testsuite/gas/ppc/vec_mul.s,
976 * testsuite/gas/ppc/vec_mul.d: New test.
977 * testsuite/gas/ppc/ppc.exp: Run it.
979 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
981 * testsuite/gas/ppc/byte_rev.d,
982 * testsuite/gas/ppc/byte_rev.s: New test.
983 * testsuite/gas/ppc/ppc.exp: Run it.
985 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
987 * testsuite/gas/ppc/power10.d: Add paste. tests.
988 * testsuite/gas/ppc/power10.s: Likewise.
990 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
992 * testsuite/gas/ppc/power10.s: New test.
993 * testsuite/gas/ppc/power10.d: Likewise.
994 * testsuite/gas/ppc/ppc.exp: Run it.
996 2020-05-11 Alan Modra <amodra@gmail.com>
998 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
1000 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
1001 place of -mfuture/-Mfuture.
1002 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
1003 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
1005 2020-05-06 Nick Clifton <nickc@redhat.com>
1007 * po/sv.po: Updated Swedish translation.
1009 2020-05-06 Nick Clifton <nickc@redhat.com>
1012 * doc/as.texi (Preprocessing): Replace cross reference to not
1013 existant document with a URL to the equivalent page in the GCC
1016 2020-05-05 Nick Clifton <nickc@redhat.com>
1018 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
1019 construction of a DWARF-5 directory name table.
1020 * testsuite/gas/elf/pr25917.d: Update expected output.
1022 2020-05-05 Gunther Nikl <gnikl@justmail.de>
1024 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
1025 (md_parse_option): Remove initialization of elf_flags.
1027 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
1030 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
1031 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
1032 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
1034 2020-05-04 Nick Clifton <nickc@redhat.com>
1037 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
1038 table's existence before looking at its entries.
1039 Also do not emit a default directory entry if there are no
1042 * testsuite/gas/elf/pr25917.s: New test source file.
1043 * testsuite/gas/elf/pr25917.d: New test driver.
1044 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
1046 2020-04-30 Alex Coplan <alex.coplan@arm.com>
1048 * config/tc-aarch64.c (fix_insn): Implement for
1049 AARCH64_OPND_UNDEFINED.
1050 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
1051 * testsuite/gas/aarch64/udf.s: New.
1052 * testsuite/gas/aarch64/udf.d: New.
1053 * testsuite/gas/aarch64/udf-invalid.s: New.
1054 * testsuite/gas/aarch64/udf-invalid.l: New.
1055 * testsuite/gas/aarch64/udf-invalid.d: New.
1057 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
1059 * config/tc-rx.c (elf_flags): Reset default value.
1060 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
1062 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
1064 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
1065 if it's not defined.
1066 (microarch_earliest): New static variable.
1067 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
1068 simcall opcode has mandatory parameter.
1069 (xg_init_global_config): Initialize microarch_earliest.
1071 2020-04-29 Nick Clifton <nickc@redhat.com>
1074 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
1075 IMM0_8S and add support for IMM0_8U.
1076 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
1077 unsigned 8-bit immediate.
1078 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
1079 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
1081 2020-04-27 Tamar Christina <tamar.christina@arm.com>
1083 * NEWS: Add news entry for big-obj.
1084 * config/tc-i386.c (i386_target_format): Support new format.
1085 * doc/c-i386.texi: Add i386 support.
1086 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
1087 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
1089 2020-04-27 Nick Clifton <nickc@redhat.com>
1092 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
1093 (assign_file_to_slot): New function. Fills in an entry in the
1095 (allocate_filenum): Use new function.
1096 (allocate_filename_to_slot): Use new function. If the specified
1097 slot entry is already in use, but was chosen automatically then
1098 reassign the automatic entry.
1100 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
1102 * config/tc-i386.c (lfence_before_ret_shl): New member.
1103 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
1105 (insert_after_load): Issue warning for REP CMPS/SCAS.
1106 (insert_before_before): Handle iret, Handle
1107 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
1108 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
1109 -mlfence-before-ret=[none/not/or/shl/yes].
1110 Enable -mlfence-before-ret=shl when
1111 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
1112 (md_show_usage): Ditto.
1113 * doc/c-i386.texi: Ditto.
1114 * testsuite/gas/i386/i386.exp: Add new testcases.
1115 * testsuite/gas/i386/lfence-load-b.d: New.
1116 * testsuite/gas/i386/lfence-load-b.e: New.
1117 * testsuite/gas/i386/lfence-load.d: Modified.
1118 * testsuite/gas/i386/lfence-load.e: New.
1119 * testsuite/gas/i386/lfence-load.s: Modified.
1120 * testsuite/gas/i386/lfence-ret-a.d: Modified.
1121 * testsuite/gas/i386/lfence-ret-b.d: Modified.
1122 * testsuite/gas/i386/lfence-ret-c.d: New.
1123 * testsuite/gas/i386/lfence-ret-d.d: New.
1124 * testsuite/gas/i386/lfence-ret.s: Modified.
1125 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
1126 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
1127 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
1128 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
1129 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
1130 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
1131 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
1132 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
1133 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
1134 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
1136 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
1139 * config/tc-xtensa.c (md_apply_fix): Replace
1140 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1141 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1142 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1143 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1144 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1146 2020-04-22 Alan Modra <amodra@gmail.com>
1148 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1149 symbol for ".symver .. remove".
1150 * doc/as.texi (.symver): Update.
1151 * testsuite/gas/symver/symver11.s: Make foo weak.
1152 * testsuite/gas/symver/symver11.d: Expect an error.
1153 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1155 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1157 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1159 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
1162 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1163 * testsuite/gas/m68k/operands.d: Update.
1164 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1166 2020-04-21 Tamar Christina <tamar.christina@arm.com>
1169 * testsuite/gas/arm/pr24753.d: New test.
1170 * testsuite/gas/arm/pr24753.s: New test.
1172 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1176 * NEWS: Mention .symver extension.
1177 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1179 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1180 add a version name. Add local, hidden and remove visibility
1182 (elf_frob_symbol): Handle the list of version names. Update the
1183 original symbol to local, hidden or remove it from the symbol
1185 (elf_frob_file_before_adjust): Handle the list of version names.
1186 * config/obj-elf.h (elf_visibility): New.
1187 (elf_versioned_name_list): Likewise.
1188 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1189 and visibility. Change versioned_name pointer to struct
1190 elf_versioned_name_list.
1191 * doc/as.texi: Update .symver directive.
1192 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1193 error checking tests.
1194 * testsuite/gas/symver/symver6.d: New file.
1195 * testsuite/gas/symver/symver7.d: Likewise.
1196 * testsuite/gas/symver/symver7.s: Likewise.
1197 * testsuite/gas/symver/symver8.d: Likewise.
1198 * testsuite/gas/symver/symver8.s: Likewise.
1199 * testsuite/gas/symver/symver9.s: Likewise.
1200 * testsuite/gas/symver/symver9a.d: Likewise.
1201 * testsuite/gas/symver/symver9b.d: Likewise.
1202 * testsuite/gas/symver/symver10.s: Likewise.
1203 * testsuite/gas/symver/symver10a.d: Likewise.
1204 * testsuite/gas/symver/symver10b.d: Likewise.
1205 * testsuite/gas/symver/symver11.d: Likewise.
1206 * testsuite/gas/symver/symver11.s: Likewise.
1207 * testsuite/gas/symver/symver12.d: Likewise.
1208 * testsuite/gas/symver/symver12.s: Likewise.
1209 * testsuite/gas/symver/symver13.d: Likewise.
1210 * testsuite/gas/symver/symver13.s: Likewise.
1211 * testsuite/gas/symver/symver14.d: Likewise.
1212 * testsuite/gas/symver/symver14.l: Likewise.
1213 * testsuite/gas/symver/symver15.d: Likewise.
1214 * testsuite/gas/symver/symver15.l: Likewise.
1215 * testsuite/gas/symver/symver6.l: Removed.
1216 * testsuite/gas/symver/symver6.s: Updated.
1218 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1220 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1222 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1223 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1224 * testsuite/gas/aarch64/system.d: Update.
1226 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1228 * testsuite/gas/aarch64/bti.d: Update -march option.
1229 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1230 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1231 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1232 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1234 2020-04-17 Alan Modra <amodra@gmail.com>
1236 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1238 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
1239 Nick Clifton <nickc@redhat.com>
1242 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1244 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1245 for the type-2 test.
1246 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1247 targets running this test.
1249 2020-02-16 David Faust <david.faust@oracle.com>
1251 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1252 * testsuite/gas/bpf/jump32.s: New file.
1253 * testsuite/gas/bpf/jump32.d: Likewise.
1255 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
1257 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1260 2020-04-08 Gunther Nikl <gnikl@justmail.de>
1262 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1263 (md_pcrel_from): Remove prototytpe.
1264 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1266 (md_pcrel_from_section): Remove duplicate prototype.
1267 * tc.h (md_pcrel_from_section): Add prototype.
1268 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1269 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1270 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1271 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1272 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1273 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1274 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1275 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1276 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1277 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1278 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1279 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1280 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1281 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1282 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1283 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1284 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1285 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1286 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1287 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1288 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1289 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1290 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1291 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1292 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1293 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1294 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1295 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1296 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1297 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1298 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1299 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1300 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1301 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1302 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1303 md_apply_fix3): Delete prototypes.
1305 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1307 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1310 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1312 * doc/c-z80.texi: Fix @xref warnings.
1314 2020-04-07 Lili Cui <lili.cui@intel.com>
1316 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1317 (cpu_noarch): Likewise.
1318 * doc/c-i386.texi: Document TSXLDTRK.
1319 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1320 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1321 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1322 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1324 2020-04-02 Lili Cui <lili.cui@intel.com>
1326 * config/tc-i386.c (cpu_arch): Add .serialize.
1327 (cpu_noarch): Likewise.
1328 * doc/c-i386.texi: Document serialize.
1329 * testsuite/gas/i386/i386.exp: Run serialize tests
1330 * testsuite/gas/i386/serialize.d: Likewise.
1331 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1332 * testsuite/gas/i386/serialize.s: Likewise.
1334 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1336 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1337 * testsuite/gas/elf/section12b.d: Likewise.
1338 * testsuite/gas/elf/section16a.d: Likewise.
1339 * testsuite/gas/elf/section16b.d: Likewise.
1341 2020-04-02 Gunther Nikl <gnikl@justmail.de>
1343 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1344 with a suppressed address register.
1346 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
1349 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1350 * testsuite/gas/i386/localpic.s: Add a test for relocation
1351 against local absolute symbol.
1352 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1353 * testsuite/gas/i386/localpic.d: Updated.
1354 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1355 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1357 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1360 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1361 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1362 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1363 testsuite/gas/i386/x86-64-jump.d.
1364 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1365 Incorporate changes to
1366 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1367 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1368 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1369 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1370 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1372 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
1376 * dwarf2dbg.c: Do not include "bignum.h".
1378 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
1380 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1381 * testsuite/gas/riscv/alias-csr.s: Likewise.
1382 * testsuite/gas/riscv/no-aliases-csr.d: Move this
1383 to priv-reg-pseudo-noalias.
1384 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
1385 * testsuite/gas/riscv/bad-csr.l: Likewise.
1386 * testsuite/gas/riscv/bad-csr.s: Likewise.
1387 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
1388 * testsuite/gas/riscv/satp.s: Likewise.
1389 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
1390 csr instruction, including alias-csr testcase.
1391 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
1392 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
1393 pseudo instruction with objdump -Mno-aliases.
1394 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
1395 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
1396 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
1397 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
1398 * testsuite/gas/riscv/priv-reg.s: Likewise.
1399 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1400 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1401 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1403 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
1405 * config/obj-coff.c (obj_coff_section): Set the bss flag on
1406 sections with the "b" attribute.
1408 2020-03-22 Alan Modra <amodra@gmail.com>
1410 * testsuite/gas/s12z/truncated.d: Update expected output.
1412 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1415 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
1416 * doc/c-z80.texi: Update documentation.
1418 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1423 Fix disassembling ED+A4/AC/B4/BC opcodes.
1424 Fix assembling lines containing colonless label and instruction
1425 with first operand inside parentheses.
1426 Fix registration of unsupported by target CPU registers.
1427 * config/tc-z80.c: See above.
1428 * config/tc-z80.h: See above.
1429 * testsuite/gas/z80/colonless.d: Update test.
1430 * testsuite/gas/z80/colonless.s: Likewise.
1431 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
1432 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
1433 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1434 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
1435 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
1436 * testsuite/gas/z80/unsup_regs.s: Likewise.
1437 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
1438 * testsuite/gas/z80/z80.exp: Likewise.
1439 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
1440 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
1441 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
1443 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
1446 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
1447 (parse_operands): Handle new operand codes.
1448 (do_neon_dyadic_long): Make shape check accept the scalar variants.
1449 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
1450 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
1451 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
1452 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
1453 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
1454 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
1455 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
1457 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1459 * NEWS: Mention x86 assembler options for CVE-2020-0551.
1461 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1463 * testsuite/gas/i386/i386.exp: Run new tests.
1464 * testsuite/gas/i386/lfence-byte.d: New file.
1465 * testsuite/gas/i386/lfence-byte.e: Likewise.
1466 * testsuite/gas/i386/lfence-byte.s: Likewise.
1467 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
1468 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
1469 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
1470 * testsuite/gas/i386/lfence-indbr.e: Likewise.
1471 * testsuite/gas/i386/lfence-indbr.s: Likewise.
1472 * testsuite/gas/i386/lfence-load.d: Likewise.
1473 * testsuite/gas/i386/lfence-load.s: Likewise.
1474 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
1475 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
1476 * testsuite/gas/i386/lfence-ret.s: Likewise.
1477 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
1478 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
1479 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
1480 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
1481 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
1482 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
1483 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
1484 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
1485 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
1486 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
1487 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
1488 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
1490 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1492 * config/tc-i386.c (lfence_after_load): New.
1493 (lfence_before_indirect_branch_kind): New.
1494 (lfence_before_indirect_branch): New.
1495 (lfence_before_ret_kind): New.
1496 (lfence_before_ret): New.
1499 (insert_lfence_after): New.
1500 (insert_lfence_before): New.
1501 (md_assemble): Call insert_lfence_before and insert_lfence_after.
1503 (OPTION_MLFENCE_AFTER_LOAD): New.
1504 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1505 (OPTION_MLFENCE_BEFORE_RET): New.
1506 (md_longopts): Add -mlfence-after-load=,
1507 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1508 (md_parse_option): Handle -mlfence-after-load=,
1509 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1510 (md_show_usage): Display -mlfence-after-load=,
1511 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1512 (i386_cons_align): New.
1513 * config/tc-i386.h (i386_cons_align): New.
1514 (md_cons_align): New.
1515 * doc/c-i386.texi: Document -mlfence-after-load=,
1516 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1518 2020-03-11 Nick Clifton <nickc@redhat.com>
1522 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1523 (DWARF2_FILE_SIZE_NAME): Default to -1.
1524 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1525 whichever is higher.
1526 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1527 (NUM_MD5_BYTES): Define.
1528 (struct file entry): Add md5 field.
1529 (get_filenum): Delete and replace with...
1530 (get_basename): New function.
1531 (get_directory_table_entry): New function.
1532 (allocate_filenum): New function.
1533 (allocate_filename_to_slot): New function.
1534 (dwarf2_where): Use new functions.
1535 (dwarf2_directive_filename): Add support for extended .file
1537 (dwarf2_directive_loc): Allow the use of file number zero with
1539 (out_file_list): Rename to...
1540 (out_dir_and_file_list): Add DWARF 5 support.
1541 (out_debug_line): Emit extra values into the section header for
1543 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1544 * doc/as.texi (.file): Update the description of this pseudo-op.
1545 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1546 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1547 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1548 * NEWS: Mention the new feature.
1550 2020-03-10 Alan Modra <amodra@gmail.com>
1552 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1553 to avoid signed overflow.
1554 * config/tc-mcore.c (md_assemble): Likewise.
1555 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1556 * config/tc-nds32.c (SET_ADDEND): Likewise.
1557 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1559 2020-03-09 Jan Beulich <jbeulich@suse.com>
1561 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1562 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1563 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1565 2020-03-07 Alan Modra <amodra@gmail.com>
1567 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
1570 2020-03-06 Nick Clifton <nickc@redhat.com>
1573 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
1574 0 if the dwarf_level is 5 or more. Complain if a filename follows
1576 * testsuite/gas/elf/dwarf-5-file0.s: New test.
1577 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
1578 * testsuite/gas/elf/elf.exp: Run the new test.
1581 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
1582 * doc/as.texi: Fix another typo.
1584 2020-03-06 Nick Clifton <nickc@redhat.com>
1587 * as.c (dwarf_level): Define.
1588 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
1589 (parse_args): Add support for the new options.
1590 as.h (dwarf_level): Prototype.
1591 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
1593 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
1594 (DWARF2_LINE_VERSION): Remove definition.
1595 * doc/as.texi: Document the new options.
1597 2020-03-06 Nick Clifton <nickc@redhat.com>
1600 * as.c (main): Allow matching input and outputs when they are
1603 2020-03-06 Jan Beulich <jbeulich@suse.com>
1605 * config/tc-i386.c (match_mem_size): Generalize broadcast special
1607 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
1608 one of byte/word/dword/qword is set alongside a SIMD register in
1609 a template's operand.
1611 2020-03-06 Jan Beulich <jbeulich@suse.com>
1613 * config/tc-i386.c (match_template): Extend code in logic
1614 rejecting certain suffixes in certain modes to also cover mask
1615 register use and VecSIB. Drop special casing of broadcast. Skip
1616 immediates in the check.
1618 2020-03-06 Jan Beulich <jbeulich@suse.com>
1620 * config/tc-i386.c (match_template): Fold duplicate code in
1621 logic rejecting certain suffixes in certain modes. Drop
1624 2020-03-06 Jan Beulich <jbeulich@suse.com>
1626 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
1627 alongside !norex64 ones.
1628 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
1629 with both 32- and 64-bit GPR operands.
1630 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
1631 32- and 64-bit GPR operands.
1632 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
1633 testsuite/gas/i386/x86-64-avx512bw.d,
1634 testsuite/gas/i386/x86-64-avx512f-intel.d,
1635 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
1637 2020-03-06 Jan Beulich <jbeulich@suse.com>
1639 * config/tc-i386.c (md_assemble): Drop use of rex64.
1640 (process_suffix): For REX.W for 64-bit CRC32.
1642 2020-03-06 Jan Beulich <jbeulich@suse.com>
1644 * config/tc-i386.c (i386_addressing_mode): For 32-bit
1645 addressing for MPX insns without base/index.
1646 * testsuite/gas/i386/mpx-16bit.s,
1647 * testsuite/gas/i386/mpx-16bit.d: New.
1648 * testsuite/gas/i386/i386.exp: Run new test.
1650 2020-03-06 Jan Beulich <jbeulich@suse.com>
1652 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
1653 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
1654 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
1655 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
1656 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
1657 as well as a BSWAP one.
1658 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
1659 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
1660 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
1661 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
1662 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
1663 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
1664 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
1665 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
1666 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
1667 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
1668 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
1669 testsuite/gas/i386/vmx.d: Adjust expectations.
1671 2020-03-06 Jan Beulich <jbeulich@suse.com>
1673 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
1674 from having their operands swapped.
1675 * testsuite/gas/i386/waitpkg.s,
1676 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
1677 3-operand cases as well as testing of 16-bit code generation.
1678 * testsuite/gas/i386/waitpkg.d,
1679 testsuite/gas/i386/waitpkg-intel.d,
1680 testsuite/gas/i386/x86-64-waitpkg.d,
1681 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
1683 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
1685 * config/tc-riscv.c (percent_op_utype): Support the modifier
1687 * doc/c-riscv.texi: Add documentation.
1688 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
1689 modifier %got_pcrel_hi.
1690 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
1691 * testsuite/gas/riscv/relax-reloc.d: Likewise.
1692 * testsuite/gas/riscv/relax-reloc.s: Likewise.
1694 * doc/c-riscv.texi (relocation modifiers): Add documentation.
1695 (RISC-V-Formats): Update the section name from "Instruction Formats"
1696 to "RISC-V Instruction Formats".
1698 2020-03-04 Alexandre Oliva <oliva@adacore.com>
1700 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
1701 detected in a section which does not have at least 4 byte
1703 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
1704 * testsuite/gas/arm/ldr-t.s: Likewise.
1705 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
1706 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
1707 disassembly, ignoring any NOPs that may have been inserted because
1708 of section alignment.
1709 * testsuite/gas/arm/ldr-t.d: Likewise.
1711 2020-03-04 Jan Beulich <jbeulich@suse.com>
1713 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
1714 * doc/c-i386.texi: Mention sev_es.
1715 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
1716 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
1718 * testsuite/gas/i386/arch-13-znver1.d,
1719 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
1721 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1723 * config/tc-i386.c (match_template): Replace ignoresize and
1724 defaultsize with mnemonicsize.
1725 (process_suffix): Likewise.
1727 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1730 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
1731 instruction LD IY,(HL).
1732 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
1733 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
1734 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
1735 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
1737 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1740 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
1741 x86-64-default-suffix-avx.
1742 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
1743 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
1744 * testsuite/gas/i386/noreg64.d: Updated.
1745 * testsuite/gas/i386/noreg64.l: Likewise.
1746 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
1747 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
1748 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
1750 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1753 * config/tc-z80.c (contains_register): Prevent an illegal memory
1754 access when checking an expression for a register name.
1756 2020-03-03 Alan Modra <amodra@gmail.com>
1758 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
1761 2020-03-02 Alan Modra <amodra@gmail.com>
1763 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
1764 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
1766 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
1767 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
1768 (s3_s_score_lcomm): Likewise.
1769 * config/tc-score7.c: Similarly.
1770 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
1772 2020-02-28 YunQiang Su <syq@debian.org>
1775 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
1776 to handle multi-labels.
1777 (has_label_name): New.
1779 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
1781 * config/tc-arm.c (enum pred_instruction_type): Remove
1782 NEUTRAL_IT_NO_VPT_INSN predication type.
1783 (cxn_handle_predication): Modify to require condition suffixes.
1784 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
1785 * testsuite/gas/arm/cde-scalar.s: Update test.
1786 * testsuite/gas/arm/cde-warnings.l: Update test.
1787 * testsuite/gas/arm/cde-warnings.s: Update test.
1789 2020-02-26 Alan Modra <amodra@gmail.com>
1791 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
1792 N_() on empty string.
1794 2020-02-26 Alan Modra <amodra@gmail.com>
1796 * read.c (read_a_source_file): Call strncpy with length one
1797 less than size of original_case_string.
1799 2020-02-26 Alan Modra <amodra@gmail.com>
1801 * config/obj-elf.c: Indent labels correctly.
1802 * config/obj-macho.c: Likewise.
1803 * config/tc-aarch64.c: Likewise.
1804 * config/tc-alpha.c: Likewise.
1805 * config/tc-arm.c: Likewise.
1806 * config/tc-cr16.c: Likewise.
1807 * config/tc-crx.c: Likewise.
1808 * config/tc-frv.c: Likewise.
1809 * config/tc-i386-intel.c: Likewise.
1810 * config/tc-i386.c: Likewise.
1811 * config/tc-ia64.c: Likewise.
1812 * config/tc-mn10200.c: Likewise.
1813 * config/tc-mn10300.c: Likewise.
1814 * config/tc-nds32.c: Likewise.
1815 * config/tc-riscv.c: Likewise.
1816 * config/tc-s12z.c: Likewise.
1817 * config/tc-xtensa.c: Likewise.
1818 * config/tc-z80.c: Likewise.
1820 * symbols.c: Likewise.
1821 * write.c: Likewise.
1823 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
1825 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
1826 we are assembling instruction with CSR. Call riscv_csr_read_only_check
1827 after parsing all arguments.
1828 (enum csr_insn_type): New enum is used to classify the CSR instruction.
1829 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
1830 are used to check if we write a read-only CSR by the CSR instruction.
1831 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
1832 all CSR for the read-only CSR checking.
1833 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1834 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1835 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
1836 all CSR instructions for the read-only CSR checking.
1837 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1838 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
1840 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
1841 (riscv_opts): Initialize it.
1842 (reg_lookup_internal): Check the `riscv_opts.csr_check`
1843 before doing the CSR checking.
1844 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
1845 (md_longopts): Add mcsr-check and mno-csr-check.
1846 (md_parse_option): Handle new enum option values.
1847 (s_riscv_option): Handle new long options.
1848 * doc/c-riscv.texi: Add description for the new .option and assembler
1850 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
1852 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1854 * config/tc-riscv.c (csr_extra_hash): New.
1855 (enum riscv_csr_class): New enum. Used to decide
1856 whether or not this CSR is legal in the current ISA string.
1857 (struct riscv_csr_extra): New structure to hold all extra information
1859 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
1860 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
1861 Call hash_reg_name to insert CSR address into reg_names_hash.
1862 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
1863 Decide whether the CSR is valid according to the csr_extra_hash.
1864 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
1865 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
1866 not a boolean. This is same as riscv_init_csr_hash, so keep the
1868 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
1869 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
1870 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
1871 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
1872 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
1873 f-ext CSR are not allowed.
1874 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
1875 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
1876 source file is `priv-reg.s`, and the ISA is rv64if, so the
1877 rv32-only CSR are not allowed.
1878 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1880 2020-02-21 Alan Modra <amodra@gmail.com>
1882 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
1883 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
1885 2020-02-21 Alan Modra <amodra@gmail.com>
1888 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
1889 on section size adjustment, instead perform another write if
1890 exec header size is larger than section size.
1892 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1894 * doc/c-riscv.texi: Add the doc entries for -march-attr/
1895 -mno-arch-attr command line options.
1897 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1899 * testsuite/gas/riscv/c-add-addi.d: New testcase.
1900 * testsuite/gas/riscv/c-add-addi.s: Likewise.
1902 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1905 * config/tc-z80.c (md_parse_option): Do not use an underscore
1906 prefix for local labels in SDCC compatability mode.
1907 (z80_start_line_hook): Remove SDCC dollar label support.
1908 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
1909 * testsuite/gas/z80/sdcc.s: Likewise.
1911 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1914 * config/tc-z80.c: Add -march option.
1915 * doc/as.texi: Update Z80 documentation.
1916 * doc/c-z80.texi: Likewise.
1917 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
1918 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
1919 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
1920 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1921 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
1922 * testsuite/gas/z80/gbz80_all.d: Likewise.
1923 * testsuite/gas/z80/r800_extra.d: Likewise.
1924 * testsuite/gas/z80/r800_ii8.d: Likewise.
1925 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
1926 * testsuite/gas/z80/sdcc.d: Likewise.
1927 * testsuite/gas/z80/z180.d: Likewise.
1928 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
1929 * testsuite/gas/z80/z80_doc.d: Likewise.
1930 * testsuite/gas/z80/z80_ii8.d: Likewise.
1931 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
1932 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
1933 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
1934 * testsuite/gas/z80/z80_sli.d: Likewise.
1935 * testsuite/gas/z80/z80n_all.d: Likewise.
1936 * testsuite/gas/z80/z80n_reloc.d: Likewise.
1938 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
1940 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
1941 with GNU_PROPERTY_X86_FEATURE_2_MMX.
1942 * testsuite/gas/i386/i386.exp: Run property-3 and
1944 * testsuite/gas/i386/property-3.d: New file.
1945 * testsuite/gas/i386/property-3.s: Likewise.
1946 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
1948 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
1950 * config/tc-i386.c (cpu_arch): Add .popcnt.
1951 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
1952 Add a tab before @samp{.sse4a}.
1954 2020-02-17 Jan Beulich <jbeulich@suse.com>
1956 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
1957 for AddrPrefixOpReg templates. Combine the two pieces of
1958 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
1961 2020-02-17 Jan Beulich <jbeulich@suse.com>
1964 * config/tc-i386.c (md_assemble): Also suppress operand
1965 swapping for MONITOR{,X} and MWAIT{,X}.
1966 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
1967 Add Intel syntax monitor/mwait tests.
1968 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
1969 Adjust expectations.
1970 *testsuite/gas/i386/sse3-intel.d,
1971 testsuite/gas/i386/x86-64-sse3-intel.d: New.
1972 * testsuite/gas/i386/i386.exp: Run new tests.
1974 2020-02-17 Jan Beulich <jbeulich@suse.com>
1977 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
1978 [XYZ]MMWord memory operand ambiguity recognition logic (largely
1980 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
1982 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
1983 * testsuite/gas/i386/avx512dq-inval.l,
1984 testsuite/gas/i386/inval-avx.l,
1985 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
1986 * testsuite/gas/i386/avx512vl-ambig.s,
1987 testsuite/gas/i386/avx512vl-ambig.l: New.
1988 * testsuite/gas/i386/i386.exp: Run new test.
1990 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
1992 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
1994 * doc/c-i386.texi: Document sse4a and nosse4a.
1996 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1998 * doc/c-i386.texi: Remove the old movsx and movzx documentation
2001 2020-02-14 Jan Beulich <jbeulich@suse.com>
2004 * config/tc-i386.c (md_assemble): Move movsx/movzx special
2006 (process_suffix): ... here. Consider just the first operand
2008 (check_long_reg): Drop opcode 0x63 special case again.
2009 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
2010 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
2011 Move ambiguous operand size tests ...
2012 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2013 testsuite/gas/i386/noreg64.s: ... here.
2014 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
2015 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
2016 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2017 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
2018 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
2019 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2020 testsuite/gas/i386/x86-64-movsxd.d,
2021 testsuite/gas/i386/x86-64-movsxd-intel.d,
2022 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
2023 Adjust expectations.
2024 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
2025 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
2026 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
2027 * testsuite/gas/i386/i386.exp: Run new tests.
2029 2020-02-14 Jan Beulich <jbeulich@suse.com>
2031 * config/tc-i386.c (process_operands): Also skip segment
2032 override prefix emission if it matches an already present one.
2033 * testsuite/gas/i386/prefix32.s: Add double segment override
2035 * testsuite/gas/i386/prefix32.l: Adjust expectations.
2037 2020-02-14 Jan Beulich <jbeulich@suse.com>
2039 * config/tc-i386.c (process_operands): Drop ineffectual segment
2040 overrides when optimizing.
2041 * testsuite/gas/i386/lea-optimize.d: New.
2042 * testsuite/gas/i386/i386.exp: Run new test.
2044 2020-02-14 Jan Beulich <jbeulich@suse.com>
2046 * config/tc-i386.c (process_operands): Also check insn prefix
2047 for ineffectual segment override warning. Don't cover possible
2048 VEX/EVEX encoded insns there.
2049 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
2050 testsuite/gas/i386/lea.e: New.
2051 * testsuite/gas/i386/i386.exp: Run new test.
2053 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
2056 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
2059 2020-02-13 Fangrui Song <maskray@google.com>
2060 H.J. Lu <hongjiu.lu@intel.com>
2063 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
2064 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
2065 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
2066 * testsuite/gas/i386/relax-5.d: New file.
2067 * testsuite/gas/i386/relax-5.s: Likewise.
2068 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2069 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
2071 2020-02-13 Jan Beulich <jbeulich@suse.com>
2073 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
2076 2020-02-12 Jan Beulich <jbeulich@suse.com>
2078 * config/tc-i386.c (avx512): New (at file scope), moved from
2079 (check_VecOperands): ... here.
2080 (process_suffix): Add [XYZ]MMword operand size handling.
2081 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
2082 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
2084 * testsuite/gas/i386/avx512dq-inval.l,
2085 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
2087 2020-02-12 Jan Beulich <jbeulich@suse.com>
2090 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
2092 * config/tc-i386-intel.c (i386_intel_operand): Also handle
2093 CALL/JMP in O_tbyte_ptr case.
2094 * doc/c-i386.texi: Mention far call and full pointer load ISA
2096 * testsuite/gas/i386/x86-64-branch-3.s,
2097 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
2098 * testsuite/gas/i386/x86-64-branch-3.d,
2099 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
2100 * testsuite/gas/i386/x86-64-branch-5.l,
2101 testsuite/gas/i386/x86-64-branch-5.s: New.
2102 * testsuite/gas/i386/i386.exp: Run new test.
2104 2020-02-12 Jan Beulich <jbeulich@suse.com>
2107 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
2108 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
2109 64-bit-only warning.
2110 (check_word_reg): Consistently error on mismatching register
2112 * testsuite/gas/i386/general.s: Replace dword GPR with word one
2113 for movw. Replace suffix / GPR for orb.
2114 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
2115 byte GPRs as well as ones for inb/outb with a word accumulator.
2116 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
2117 testsuite/gas/i386/inval.l: Adjust expectations.
2119 2020-02-12 Jan Beulich <jbeulich@suse.com>
2121 * config/tc-i386.c (operand_type_register_match): Also fall
2122 through initial two if()-s when the template allows for a GPR
2123 operand. Adjust comment.
2125 2020-02-11 Jan Beulich <jbeulich@suse.com>
2127 (struct _i386_insn): New field "short_form".
2128 (optimize_encoding): Drop setting of shortform field.
2129 (process_suffix): Set i.short_form. Replace shortform use.
2130 (process_operands): Replace shortform use.
2132 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
2134 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
2135 loop initial declaration.
2137 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
2139 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2140 instructions that can have 5 arguments.
2141 (enum operand_parse_code): Add new operands.
2142 (parse_operands): Account for new operands.
2144 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2145 (neon_select_shape): Account for P suffix.
2146 (LOW1): Move macro to global position.
2147 (HI4): Move macro to global position.
2148 (vcx_assign_vec_d): New.
2149 (vcx_assign_vec_m): New.
2150 (vcx_assign_vec_n): New.
2151 (enum vcx_reg_type): New.
2152 (vcx_get_reg_type): New.
2153 (vcx_size_pos): New.
2155 (vcx_handle_shape): New.
2156 (vcx_ensure_register_in_range): New.
2157 (vcx_handle_register_arguments): New.
2158 (vcx_handle_insn_block): New.
2159 (vcx_handle_common_checks): New.
2163 * testsuite/gas/arm/cde-missing-fp.d: New test.
2164 * testsuite/gas/arm/cde-missing-fp.l: New test.
2165 * testsuite/gas/arm/cde-missing-mve.d: New test.
2166 * testsuite/gas/arm/cde-missing-mve.l: New test.
2167 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2168 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2169 * testsuite/gas/arm/cde-mve.s: New test.
2170 * testsuite/gas/arm/cde-warnings.l:
2171 * testsuite/gas/arm/cde-warnings.s:
2172 * testsuite/gas/arm/cde.d:
2173 * testsuite/gas/arm/cde.s:
2175 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2176 Matthew Malcomson <matthew.malcomson@arm.com>
2178 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2179 CDE coprocessor that can be enabled.
2180 (enum pred_instruction_type): New pred type.
2181 (BAD_NO_VPT): New error message.
2182 (BAD_CDE): New error message.
2183 (BAD_CDE_COPROC): New error message.
2184 (enum operand_parse_code): Add new immediate operands.
2185 (parse_operands): Account for new immediate operands.
2186 (check_cde_operand): New.
2187 (cde_coproc_enabled): New.
2188 (cde_coproc_pos): New.
2189 (cde_handle_coproc): New.
2190 (cxn_handle_predication): New.
2191 (do_custom_instruction_1): New.
2192 (do_custom_instruction_2): New.
2193 (do_custom_instruction_3): New.
2206 (handle_pred_state): Define new IT block behaviour.
2207 (insns): Add newn CX*{,d}{,a} instructions.
2208 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2209 Define new cdecp extension strings.
2210 * doc/c-arm.texi: Document new cdecp extension arguments.
2211 * testsuite/gas/arm/cde-scalar.d: New test.
2212 * testsuite/gas/arm/cde-scalar.s: New test.
2213 * testsuite/gas/arm/cde-warnings.d: New test.
2214 * testsuite/gas/arm/cde-warnings.l: New test.
2215 * testsuite/gas/arm/cde-warnings.s: New test.
2216 * testsuite/gas/arm/cde.d: New test.
2217 * testsuite/gas/arm/cde.s: New test.
2219 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
2222 * config/tc-i386.c (intel64): Renamed to ...
2224 (match_template): Accept Intel64 only instruction by default.
2225 (i386_displacement): Updated.
2226 (md_parse_option): Updated.
2227 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2228 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2229 -mamd64 to x86-64-sysenter-amd.
2230 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2232 2020-02-10 Alan Modra <amodra@gmail.com>
2234 * config/obj-elf.c (obj_elf_change_section): Error for section
2235 type, attr or entsize changes in assembly.
2236 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2237 * testsuite/gas/elf/section5.l: Update.
2239 2020-02-10 Alan Modra <amodra@gmail.com>
2241 * output-file.c (output_file_close): Do a normal close when
2242 flag_always_generate_output.
2243 * write.c (write_object_file): Don't stop output when
2244 flag_always_generate_output.
2246 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
2249 * config/tc-z80.c: Add -gbz80 command line option to generate code
2250 for the GameBoy Z80. Add support for generating DWARF.
2251 * config/tc-z80.h: Add support for DWARF debug information
2253 * doc/c-z80.texi: Document new command line option.
2254 * testsuite/gas/z80/gbz80_all.d: New file.
2255 * testsuite/gas/z80/gbz80_all.s: New file.
2256 * testsuite/gas/z80/z80.exp: Run the new tests.
2257 * testsuite/gas/z80/z80n_all.d: New file.
2258 * testsuite/gas/z80/z80n_all.s: New file.
2259 * testsuite/gas/z80/z80n_reloc.d: New file.
2261 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2264 * config/obj-elf.c (get_section): Also check
2265 linked_to_symbol_name.
2266 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2267 (obj_elf_parse_section_letters): Handle the 'o' flag.
2268 (build_group_lists): Renamed to ...
2269 (build_additional_section_info): This. Set elf_linked_to_section
2270 from map_head.linked_to_symbol_name.
2271 (elf_adjust_symtab): Updated.
2272 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2273 * doc/as.texi: Document the 'o' flag.
2274 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2275 * testsuite/gas/elf/section18.d: New file.
2276 * testsuite/gas/elf/section18.s: Likewise.
2277 * testsuite/gas/elf/section19.d: Likewise.
2278 * testsuite/gas/elf/section19.s: Likewise.
2279 * testsuite/gas/elf/section20.d: Likewise.
2280 * testsuite/gas/elf/section20.s: Likewise.
2281 * testsuite/gas/elf/section21.d: Likewise.
2282 * testsuite/gas/elf/section21.l: Likewise.
2283 * testsuite/gas/elf/section21.s: Likewise.
2285 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2287 * NEWS: Mention x86 assembler options to align branches for
2290 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2292 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2293 only for ELF targets.
2294 * testsuite/gas/i386/unique.d: Don't xfail.
2295 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2297 2020-02-06 Alan Modra <amodra@gmail.com>
2299 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2300 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2302 2020-02-06 Alan Modra <amodra@gmail.com>
2304 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2305 xfail, and rename test.
2306 * testsuite/gas/elf/section12b.d: Likewise.
2307 * testsuite/gas/elf/section16a.d: Likewise.
2308 * testsuite/gas/elf/section16b.d: Likewise.
2310 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2313 * config/obj-elf.c (section_match): Removed.
2314 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2316 (obj_elf_change_section): Replace info and group_name arguments
2317 with match_p. Also update the section ID and flags from match_p.
2318 (obj_elf_section): Handle "unique,N". Update call to
2319 obj_elf_change_section.
2320 * config/obj-elf.h (elf_section_match): New.
2321 (obj_elf_change_section): Updated.
2322 * config/tc-arm.c (start_unwind_section): Update call to
2323 obj_elf_change_section.
2324 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2325 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2326 (microblaze_s_sdata): Likewise.
2327 (microblaze_s_rdata): Likewise.
2328 (microblaze_s_bss): Likewise.
2329 * config/tc-mips.c (s_change_section): Likewise.
2330 * config/tc-msp430.c (msp430_profiler): Likewise.
2331 * config/tc-rx.c (parse_rx_section): Likewise.
2332 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2333 * doc/as.texi: Document "unique,N" in .section directive.
2334 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2335 * testsuite/gas/elf/section15.d: New file.
2336 * testsuite/gas/elf/section15.s: Likewise.
2337 * testsuite/gas/elf/section16.s: Likewise.
2338 * testsuite/gas/elf/section16a.d: Likewise.
2339 * testsuite/gas/elf/section16b.d: Likewise.
2340 * testsuite/gas/elf/section17.d: Likewise.
2341 * testsuite/gas/elf/section17.l: Likewise.
2342 * testsuite/gas/elf/section17.s: Likewise.
2343 * testsuite/gas/i386/unique.d: Likewise.
2344 * testsuite/gas/i386/unique.s: Likewise.
2345 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2346 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2348 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2350 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2352 2020-02-01 Anthony Green <green@moxielogic.com>
2354 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2356 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
2358 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2361 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2364 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2365 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2367 * testsuite/gas/arm/mve_dsp.d: New test.
2369 2020-01-31 Nick Clifton <nickc@redhat.com>
2371 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2372 rather than BFD_RELOC_NONE.
2374 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2376 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2377 to support VLDMIA instruction for MVE.
2378 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2379 instruction for MVE.
2380 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2381 instruction for MVE.
2382 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
2383 instruction for MVE.
2384 * testsuite/gas/arm/mve-ldst.d: New test.
2385 * testsuite/gas/arm/mve-ldst.s: Likewise.
2387 2020-01-31 Nick Clifton <nickc@redhat.com>
2389 * po/fr.po: Updated French translation.
2390 * po/ru.po: Updated Russian translation.
2392 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
2394 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
2396 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
2397 * testsuite/gas/aarch64/sve-movprfx_28.d,
2398 * testsuite/gas/aarch64/sve-movprfx_28.l,
2399 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
2401 2020-01-30 Jan Beulich <jbeulich@suse.com>
2403 * config/tc-i386.c (output_disp): Tighten base_opcode check.
2404 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
2405 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
2406 Adjust expectations.
2408 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
2410 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
2411 * testsuite/gas/bpf/alu-be.d: Likewise.
2412 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
2413 * testsuite/gas/bpf/alu32-be.d: Likewise.
2415 2020-01-30 Jan Beulich <jbeulich@suse.com>
2417 * testsuite/gas/i386/x86-64-branch-2.s,
2418 testsuite/gas/i386/x86-64-branch-4.s,
2419 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
2420 * testsuite/gas/i386/ilp32/x86-64-branch.d,
2421 testsuite/gas/i386/x86-64-branch-2.d,
2422 testsuite/gas/i386/x86-64-branch-4.l,
2423 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
2425 2020-01-30 Jan Beulich <jbeulich@suse.com>
2427 * config/tc-i386.c (process_suffix): .
2428 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
2429 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
2431 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
2433 testsuite/gas/i386/x86_64.s: Add RETF cases.
2434 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2435 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
2436 testsuite/gas/i386/x86-64-opcode.d,
2437 testsuite/gas/i386/x86-64-suffix-intel.d,
2438 testsuite/gas/i386/x86-64-suffix.d,
2439 testsuite/gas/i386/x86_64-intel.d
2440 testsuite/gas/i386/x86_64.d: Adjust expectations.
2441 * testsuite/gas/i386/x86-64-suffix.e,
2442 testsuite/gas/i386/x86_64.e: New.
2444 2020-01-30 Jan Beulich <jbeulich@suse.com>
2446 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
2449 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
2452 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
2454 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
2455 differences. Document movslq and movsxd.
2456 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
2457 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
2458 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
2459 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
2460 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
2461 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
2462 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
2463 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
2464 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
2465 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
2466 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
2468 2020-01-27 Alan Modra <amodra@gmail.com>
2470 * testsuite/gas/all/gas.exp: Replace case statements with switch
2472 * testsuite/gas/elf/elf.exp: Likewise.
2473 * testsuite/gas/macros/macros.exp: Likewise.
2474 * testsuite/lib/gas-defs.exp: Likewise.
2476 2020-01-27 Tamar Christina <tamar.christina@arm.com>
2479 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
2480 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
2482 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
2484 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
2485 s exts must be known, so rename *ok* to *fail*.
2486 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
2487 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
2488 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
2490 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
2491 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
2493 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
2496 * config/tc-i386.c (check_long_reg): Always disallow double word
2497 suffix in mnemonic with word general register.
2498 * testsuite/gas/i386/general.s: Replace word general register
2499 with double word general register for movl.
2500 * testsuite/gas/i386/inval.s: Add tests for movl with word general
2502 * testsuite/gas/i386/general.l: Updated.
2503 * testsuite/gas/i386/inval.l: Likewise.
2505 2020-01-22 Alan Modra <amodra@gmail.com>
2507 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2508 __tls_get_addr_desc and __tls_get_addr_opt.
2510 2020-01-21 Jan Beulich <jbeulich@suse.com>
2512 * testsuite/gas/i386/inval-crc32.s,
2513 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2514 * testsuite/gas/i386/inval-crc32.l,
2515 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2517 2020-01-21 Jan Beulich <jbeulich@suse.com>
2519 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2520 generic code path. Deal with No_lSuf being set in a template.
2521 * testsuite/gas/i386/inval-crc32.l,
2522 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2523 instead of error(s) when operand size is ambiguous.
2524 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2525 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2526 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2527 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2528 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2529 Adjust expectations.
2531 2020-01-21 Jan Beulich <jbeulich@suse.com>
2533 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2534 and an intel_syntax check. Re-write lack-of-suffix processing
2536 * doc/c-i386.texi: Document operand size defaults for suffix-
2537 less AT&T syntax insns.
2538 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2539 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2540 testsuite/gas/i386/x86-64-avx-scalar.s,
2541 testsuite/gas/i386/x86-64-avx.s,
2542 testsuite/gas/i386/x86-64-bundle.s,
2543 testsuite/gas/i386/x86-64-intel64.s,
2544 testsuite/gas/i386/x86-64-lock-1.s,
2545 testsuite/gas/i386/x86-64-opcode.s,
2546 testsuite/gas/i386/x86-64-sse2avx.s,
2547 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2548 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2549 testsuite/gas/i386/x86-64-nops.s,
2550 testsuite/gas/i386/x86-64-ptwrite.s,
2551 testsuite/gas/i386/x86-64-simd.s,
2552 testsuite/gas/i386/x86-64-sse-noavx.s,
2553 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2555 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2556 testsuite/gas/i386/noreg64.s: Add further tests.
2557 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2558 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2559 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2560 testsuite/gas/i386/sse-noavx.d,
2561 testsuite/gas/i386/x86-64-intel64.d,
2562 testsuite/gas/i386/x86-64-nops.d,
2563 testsuite/gas/i386/x86-64-opcode.d,
2564 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2565 testsuite/gas/i386/x86-64-ptwrite.d,
2566 testsuite/gas/i386/x86-64-simd-intel.d,
2567 testsuite/gas/i386/x86-64-simd-suffix.d,
2568 testsuite/gas/i386/x86-64-simd.d,
2569 testsuite/gas/i386/x86-64-sse-noavx.d
2570 testsuite/gas/i386/x86-64-suffix.d,
2571 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
2572 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
2573 testsuite/gas/i386/noreg64.l: New.
2574 * testsuite/gas/i386/i386.exp: Run new tests.
2576 2020-01-21 Jan Beulich <jbeulich@suse.com>
2578 * testsuite/gas/i386/avx512_bf16_vl.s,
2579 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
2580 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
2581 broadcast forms of VCVTNEPS2BF16.
2582 * testsuite/gas/i386/avx512_bf16_vl.d,
2583 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
2585 2020-01-20 Nick Clifton <nickc@redhat.com>
2587 * po/uk.po: Updated Ukranian translation.
2589 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
2592 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
2593 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
2595 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
2596 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
2597 R_X86_64_GOTPC32_TLSDESC relocation.
2599 2020-01-18 Nick Clifton <nickc@redhat.com>
2601 * configure: Regenerate.
2602 * po/gas.pot: Regenerate.
2604 2020-01-18 Nick Clifton <nickc@redhat.com>
2606 Binutils 2.34 branch created.
2608 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
2610 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
2611 with vex_encoding_vex.
2612 (parse_insn): Likewise.
2613 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
2614 and {vex3} documentation.
2615 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
2617 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
2619 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2622 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
2623 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
2624 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
2625 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
2626 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
2627 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
2629 2020-01-16 Jan Beulich <jbeulich@suse.com>
2631 * config/tc-i386.c (match_template): Drop found_cpu_match local
2634 2020-01-16 Jan Beulich <jbeulich@suse.com>
2636 * testsuite/gas/i386/avx512dq-inval.l,
2637 testsuite/gas/i386/avx512dq-inval.s: New.
2638 * testsuite/gas/i386/i386.exp: Run new test.
2640 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2642 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
2643 relocations when the target is 430X, except when extracting part of an
2645 (msp430_srcoperand): Adjust comment.
2646 Initialize the expp member of the msp430_operand_s struct as
2648 (msp430_dstoperand): Likewise.
2649 * testsuite/gas/msp430/msp430.exp: Run new test.
2650 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
2651 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
2653 2020-01-15 Alan Modra <amodra@gmail.com>
2655 * configure.tgt: Add sparc-*-freebsd case.
2657 2020-01-14 Lili Cui <lili.cui@intel.com>
2659 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
2660 * testsuite/gas/i386/align-branch-1b.d: Likewise.
2661 * testsuite/gas/i386/align-branch-1c.d: Likewise.
2662 * testsuite/gas/i386/align-branch-1d.d: Likewise.
2663 * testsuite/gas/i386/align-branch-1e.d: Likewise.
2664 * testsuite/gas/i386/align-branch-1f.d: Likewise.
2665 * testsuite/gas/i386/align-branch-1g.d: Likewise.
2666 * testsuite/gas/i386/align-branch-1h.d: Likewise.
2667 * testsuite/gas/i386/align-branch-1i.d: Likewise.
2668 * testsuite/gas/i386/align-branch-5.d: Likewise.
2669 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
2670 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
2671 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
2672 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
2673 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
2674 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
2675 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
2676 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
2677 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
2678 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
2679 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
2680 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
2682 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
2685 * config/tc-z80.c: Add support for half precision, single
2686 precision and double precision floating point values.
2687 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
2688 * doc/as.texi: Add new z80 command line options.
2689 * doc/c-z80.texi: Document new z80 command line options.
2690 * testsuite/gas/z80/ez80_pref_dis.s: New test.
2691 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
2692 * testsuite/gas/z80/z80.exp: Run the new test.
2693 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
2694 * testsuite/gas/z80/fp_zeda32.d: Likewise.
2695 * testsuite/gas/z80/strings.d: Update expected output.
2697 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
2699 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
2702 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
2704 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
2706 * config/tc-arc.h: Add header if/defs.
2707 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
2709 2020-01-13 Alan Modra <amodra@gmail.com>
2711 * testsuite/gas/wasm32/allinsn.d: Update expected output.
2713 2020-01-13 Alan Modra <amodra@gmail.com>
2715 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
2718 2020-01-10 Alan Modra <amodra@gmail.com>
2720 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
2721 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
2723 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2726 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
2728 (emit_ld_r_r): Likewise.
2729 (emit_ld_rr_m): Likewise.
2730 (emit_ld_rr_nn): Likewise.
2732 2020-01-09 Jan Beulich <jbeulich@suse.com>
2734 * config/tc-i386.c (optimize_encoding): Add
2735 is_any_vex_encoding() invocations. Drop respective
2736 i.tm.extension_opcode == None checks.
2738 2020-01-09 Jan Beulich <jbeulich@suse.com>
2740 * config/tc-i386.c (md_assemble): Check RegRex is clear during
2741 REX transformations. Correct comment indentation.
2743 2020-01-09 Jan Beulich <jbeulich@suse.com>
2745 * config/tc-i386.c (optimize_encoding): Generalize register
2746 transformation for TEST optimization.
2748 2020-01-09 Jan Beulich <jbeulich@suse.com>
2750 * testsuite/gas/i386/x86-64-sysenter-amd.s,
2751 testsuite/gas/i386/x86-64-sysenter-amd.d,
2752 testsuite/gas/i386/x86-64-sysenter-amd.l,
2753 testsuite/gas/i386/x86-64-sysenter-intel.d,
2754 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
2755 * testsuite/gas/i386/i386.exp: Run new tests.
2757 2020-01-08 Nick Clifton <nickc@redhat.com>
2760 * doc/as.texi (Align): Document the fact that all arguments can be
2763 (P2align): Likewise.
2765 2020-01-08 Nick Clifton <nickc@redhat.com>
2768 * config/obj-elf.c (obj_elf_section): Fail if the section name is
2769 already defined as a different symbol type.
2770 * testsuite/gas/elf/pr14891.s: New test source file.
2771 * testsuite/gas/elf/pr14891.d: New test driver.
2772 * testsuite/gas/elf/pr14891.s: New test expected error output.
2773 * testsuite/gas/elf/elf.exp: Run the new test.
2775 2020-01-08 Alan Modra <amodra@gmail.com>
2777 * config/tc-z8k.c (md_begin): Make idx unsigned.
2778 (get_specific): Likewise for this_index.
2780 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
2782 * onfig/tc-arc.c (parse_reloc_symbol): New function.
2783 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
2784 (md_operand): Set X_md to absent.
2785 (arc_parse_name): Check for X_md.
2787 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2790 * as.h (TC_STRING_ESCAPES): Provide a default definition.
2791 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
2793 * read.c (next_char_of_string): Likewise.
2794 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
2795 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
2797 2020-01-03 Nick Clifton <nickc@redhat.com>
2799 * po/sv.po: Updated Swedish translation.
2801 2020-01-03 Jan Beulich <jbeulich@suse.com>
2803 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
2804 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2806 2020-01-03 Jan Beulich <jbeulich@suse.com>
2808 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
2809 by-element usdot. Add 64-bit form tests for by-element sudot.
2810 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
2812 2020-01-03 Jan Beulich <jbeulich@suse.com>
2814 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
2815 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2817 2020-01-03 Jan Beulich <jbeulich@suse.com>
2819 * testsuite/gas/aarch64/f64mm.d,
2820 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
2822 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
2824 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
2825 support for assembler code generated by SDCC. Add new relocation
2826 types. Add z80-elf target support.
2827 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
2828 labels. Local labels starts from ".L".
2829 * NEWS: Mention the new support.
2830 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
2831 * testsuite/gas/all/fwdexp.s: Likewise.
2832 * testsuite/gas/all/cond.l: Likewise.
2833 * testsuite/gas/all/cond.s: Likewise.
2834 * testsuite/gas/all/fwdexp.d: Likewise.
2835 * testsuite/gas/all/fwdexp.s: Likewise.
2836 * testsuite/gas/elf/section2.e-mips: Likewise.
2837 * testsuite/gas/elf/section2.l: Likewise.
2838 * testsuite/gas/elf/section2.s: Likewise.
2839 * testsuite/gas/macros/app1.d: Likewise.
2840 * testsuite/gas/macros/app1.s: Likewise.
2841 * testsuite/gas/macros/app2.d: Likewise.
2842 * testsuite/gas/macros/app2.s: Likewise.
2843 * testsuite/gas/macros/app3.d: Likewise.
2844 * testsuite/gas/macros/app3.s: Likewise.
2845 * testsuite/gas/macros/app4.d: Likewise.
2846 * testsuite/gas/macros/app4.s: Likewise.
2847 * testsuite/gas/macros/app4b.s: Likewise.
2848 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
2849 * testsuite/gas/z80/z80.exp: Add new tests
2850 * testsuite/gas/z80/dollar.d: New file.
2851 * testsuite/gas/z80/dollar.s: New file.
2852 * testsuite/gas/z80/ez80_adl_all.d: New file.
2853 * testsuite/gas/z80/ez80_adl_all.s: New file.
2854 * testsuite/gas/z80/ez80_adl_suf.d: New file.
2855 * testsuite/gas/z80/ez80_isuf.s: New file.
2856 * testsuite/gas/z80/ez80_z80_all.d: New file.
2857 * testsuite/gas/z80/ez80_z80_all.s: New file.
2858 * testsuite/gas/z80/ez80_z80_suf.d: New file.
2859 * testsuite/gas/z80/r800_extra.d: New file.
2860 * testsuite/gas/z80/r800_extra.s: New file.
2861 * testsuite/gas/z80/r800_ii8.d: New file.
2862 * testsuite/gas/z80/r800_z80_doc.d: New file.
2863 * testsuite/gas/z80/z180.d: New file.
2864 * testsuite/gas/z80/z180.s: New file.
2865 * testsuite/gas/z80/z180_z80_doc.d: New file.
2866 * testsuite/gas/z80/z80_doc.d: New file.
2867 * testsuite/gas/z80/z80_doc.s: New file.
2868 * testsuite/gas/z80/z80_ii8.d: New file.
2869 * testsuite/gas/z80/z80_ii8.s: New file.
2870 * testsuite/gas/z80/z80_in_f_c.d: New file.
2871 * testsuite/gas/z80/z80_in_f_c.s: New file.
2872 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
2873 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
2874 * testsuite/gas/z80/z80_out_c_0.d: New file.
2875 * testsuite/gas/z80/z80_out_c_0.s: New file.
2876 * testsuite/gas/z80/z80_reloc.d: New file.
2877 * testsuite/gas/z80/z80_reloc.s: New file.
2878 * testsuite/gas/z80/z80_sli.d: New file.
2879 * testsuite/gas/z80/z80_sli.s: New file.
2881 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
2883 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
2886 2020-01-01 Alan Modra <amodra@gmail.com>
2888 Update year range in copyright notice of all files.
2890 For older changes see ChangeLog-2019
2892 Copyright (C) 2020 Free Software Foundation, Inc.
2894 Copying and distribution of this file, with or without modification,
2895 are permitted in any medium without royalty provided the copyright
2896 notice and this notice are preserved.
2902 version-control: never