1 2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
3 * NEWS: Mention x86 NaCl target support removal.
4 * config/tc-i386.c: Remove x86 NaCl target support.
5 * config/tc-i386.h: Likewise.
6 * configure.tgt: Likewise.
7 * testsuite/gas/i386/i386.exp: Likewise.
8 * testsuite/gas/i386/iamcu-1.d: Likewise.
9 * testsuite/gas/i386/iamcu-2.d: Likewise.
10 * testsuite/gas/i386/iamcu-3.d: Likewise.
11 * testsuite/gas/i386/iamcu-4.d: Likewise.
12 * testsuite/gas/i386/iamcu-5.d: Likewise.
13 * testsuite/gas/i386/k1om.d: Likewise.
14 * testsuite/gas/i386/l1om.d: Likewise.
16 2020-06-30 Nelson Chu <nelson.chu@sifive.com>
18 * config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
19 checking into riscv_csr_address.
20 (riscv_csr_version_check): Likewise.
21 (riscv_csr_address): New function. Return the suitable CSR address
22 after checking the ISA dependency and versions. Issue warnings if
23 we find any conflict and -mcsr-check is set. CSR_CLASS_F and
24 CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
25 priv spec versions for them.
26 (reg_csr_lookup_internal): Call riscv_csr_address to find the
28 * testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
29 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
30 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
31 * testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
32 priv spec warnings here. These warnings are added by accident.
33 Remove them and only focus on the ISA dependency warnings.
34 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
35 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
36 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
37 dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
38 than the privileged ones.
39 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
40 * testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
41 * testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
42 * testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
43 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
44 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
45 * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
46 * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
47 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
48 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
50 2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
52 * tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
53 (md_assemble): Don't process ImmExt without operands.
55 2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
58 * config/tc-mmix.c (md_assemble) <fixup for
59 BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
60 Also, set its fx_no_overflow.
61 (md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
62 Similarly this fixup affects 4 bytes, not 8 and needs its
64 * config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
65 * testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
67 2020-06-29 Alan Modra <amodra@gmail.com>
69 * config/tc-s12z.c: Use C style comments.
70 * config/tc-z80.c: Likewise.
71 * config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
73 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
75 * config/tc-i386.c (md_assemble): Process ImmExt without
78 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
80 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
81 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
82 VECSIB256 and VECSIB512, respectively.
83 (build_modrm_byte): Replace vecsib with sib.
85 2020-06-26 Jan Beulich <jbeulich@suse.com>
87 * testsuite/gas/i386/nop-1-suffix.d: New.
88 * testsuite/gas/i386/i386.exp: Run new test.
90 2020-06-26 Pat Bernardi <bernardi@adacore.com>
92 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
93 (md_pseudo_table): Handle "gnu_attribute".
94 * doc/as.texi: Document GNU attribute for M68K.
96 2020-06-25 Nick Clifton <nickc@redhat.com>
99 * config/tc-arm.c (arm_force_relocation): Force resolution of
100 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
101 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
103 2020-06-25 Jan Beulich <jbeulich@suse.com>
105 * config/tc-i386.c (md_assemble): Move call to process_immext()
107 (process_operands): ... here.
109 2020-06-25 Jan Beulich <jbeulich@suse.com>
111 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
112 diagnostic when there is a sizing prefix. Switch to word/dword/
113 qword encoding when there is a sizing prefix and no (explicit or
115 (update_imm): Handle presence of a sizing prefix.
116 * testsuite/gas/i386/noreg16-data32.d,
117 testsuite/gas/i386/noreg32-data16.d,
118 testsuite/gas/i386/noreg32-data16.e,
119 testsuite/gas/i386/noreg64-data16.d,
120 testsuite/gas/i386/noreg64-data16.e,
121 testsuite/gas/i386/noreg64-rex64.d: New.
122 * testsuite/gas/i386/i386.exp: Run new tests.
123 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
124 Introduce and use pfx* macros.
125 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
127 * testsuite/gas/i386/noreg16.d: Adjust expectations.
129 2020-06-25 Jan Beulich <jbeulich@suse.com>
131 * testsuite/gas/i386/avx-16bit.d,
132 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
133 testsuite/gas/i386/avx512f-16bit.d,
134 testsuite/gas/i386/avx512f.d,
135 testsuite/gas/i386/evex-lig256.d,
136 testsuite/gas/i386/evex-lig512.d
137 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
138 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
139 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
140 testsuite/gas/i386/sse2-16bit.d,
141 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
144 2020-06-25 Jan Beulich <jbeulich@suse.com>
146 * config/tc-i386.c (md_assemble): Also reject explicit REX
147 prefixes with VEX and alike encoded insns. Zap consumed bits
149 (output_insn): Don't ignore REX prefix for VEX and alike
150 encodings; abort() instead if encountered.
151 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
153 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
154 * testsuite/gas/i386/x86-64-pseudos.d,
155 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
157 2020-06-25 Jan Beulich <jbeulich@suse.com>
159 * config/tc-i386.c (process_operands): Translate explicit REX
160 prefix into i.rex for SSE2AVX templates.
161 (set_rex_vrex): New helper.
162 (build_modrm_byte): Use it.
163 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
165 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
167 2020-06-25 Jan Beulich <jbeulich@suse.com>
169 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
170 templates when there's no data size prefix.
171 (md_assemble): Reject data size prefix also for legacy encoded
173 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
174 Uncomment previously not working line.
175 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
177 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
178 testsuite/gas/i386/sse2avx.d: Adjust expectations.
180 2020-06-25 Jan Beulich <jbeulich@suse.com>
182 * config/tc-i386.c (build_evex_prefix): Drop early setting of
185 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
187 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
188 explicit_priv_attr. It used to indicate CSR or priv instructions are
190 (riscv_is_priv_insn): Return True if it is a privileged instruction.
191 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
192 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
193 (riscv_write_out_attrs): Clarification of when to generate the elf
194 priv spec attributes.
195 * testsuite/gas/riscv/attribute-11.s: Add comments.
196 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
197 `priv_insn_<n>` to decide which priv instruction is expected to used.
199 * testsuite/gas/riscv/attribute-14a.d: Likewise.
200 * testsuite/gas/riscv/attribute-14b.d: Likewise.
201 * testsuite/gas/riscv/attribute-14c.d: Likewise.
202 * testsuite/gas/riscv/attribute-14d.d: Likewise.
203 * testsuite/gas/riscv/attribute-14e.d: Likewise.
205 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
207 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
208 (riscv_set_default_priv_spec): Get the priv spec version from the
209 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
211 2020-06-20 Alan Modra <amodra@gmail.com>
213 * configure.tgt: Set bfd_gas for all SH targets.
215 2020-06-18 Jan Beulich <jbeulich@suse.com>
217 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
218 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
221 2020-06-16 Lili Cui <lili.cui@intel.com>
223 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
224 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
225 * doc/c-i386.texi: Add avx512_vp2intersect.
227 2020-06-16 Jan Beulich <jbeulich@suse.com>
229 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
231 * testsuite/gas/i386/sse-check.s: Adjust comment.
232 * testsuite/gas/i386/sse-check-error.l,
233 testsuite/gas/i386/sse-check-warn.e,
234 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
237 2020-06-16 Alan Modra <amodra@gmail.com>
239 * config/tc-tic30.h: Remove OBJ_AOUT support.
240 * configure.tgt: Delete tic30-*-*aout* entry.
242 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
244 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
246 (elf32xtensa_abi): New declaration.
247 (option_abi_windowed, option_abi_call0): New enum constants.
248 (md_longopts): Add entries for --abi-windowed and --abi-call0.
249 (md_parse_option): Add handlers for --abi-windowed and
251 (xtensa_add_config_info): Use xtensa_abi_choice instead of
252 XSHAL_ABI to format ABI tag.
253 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
254 --abi-call0 to the list of options.
255 * doc/c-xtensa.texi: Add description for options --abi-windowed
257 * testsuite/gas/xtensa/abi-call0.d: New test definition.
258 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
259 * testsuite/gas/xtensa/abi.s: New test source.
261 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
264 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
266 * testsuite/gas/i386/tsxldtrk.s: Likewise.
267 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
268 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
270 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
272 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
273 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
274 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
276 2020-06-09 Seth Girvan <snth@snthhacks.com>
278 * doc/c-avr.texi: Improve wording.
280 2020-06-09 Jan Beulich <jbeulich@suse.com>
282 * testsuite/gas/i386/x86-64-pseudos-bad.s,
283 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
285 2020-06-09 Jan Beulich <jbeulich@suse.com>
287 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
289 * testsuite/gas/i386/prefix.d: Adjust expectations.
291 2020-06-09 Jan Beulich <jbeulich@suse.com>
293 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
294 with VEX/EVEX encoding tests.
295 * testsuite/gas/i386/prefix.d: Adjust expectations.
297 2020-06-09 Jan Beulich <jbeulich@suse.com>
299 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
301 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
302 * testsuite/gas/i386/noreg64.d: Adjust expectations.
303 * testsuite/gas/i386/noreg-intel64.d,
304 testsuite/gas/i386/noreg-intel64.l,
305 testsuite/gas/i386/noreg-intel64.s: New.
306 * testsuite/gas/i386/i386.exp: Run new tests.
308 2020-06-09 Jan Beulich <jbeulich@suse.com>
310 * config/tc-i386.c (vex_encoding_error): New enumerator.
311 (VEX_check_operands): Rename to VEX_check_encoding. Check
312 for vex_encoding_error. Move Imm4 handling ...
313 (check_VecOperands): ... here.
314 (match_template): Call VEX_check_encoding when there are no
315 operands. Split construct calling check_VecOperands and
316 VEX_check_encoding (when there are operands).
317 (check_register): Don't blindly set vex_encoding_evex.
318 * testsuite/gas/i386/pseudos-bad.s,
319 testsuite/gas/i386/pseudos-bad.l: New.
320 * testsuite/gas/i386/i386.exp: Run new test.
321 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
323 2020-06-08 Alex Coplan <alex.coplan@arm.com>
325 * config/tc-arm.c (insns): Add dfb.
326 * testsuite/gas/arm/dfb.d: New test.
327 * testsuite/gas/arm/dfb.s: Input for test.
329 2020-06-08 Nick Clifton <nickc@redhat.com>
331 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
333 2020-06-08 Jan Beulich <jbeulich@suse.com>
335 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
337 2020-06-08 Jan Beulich <jbeulich@suse.com>
339 * config/tc-i386.c (check_byte_reg): Drop dead conditional
342 2020-06-08 Jan Beulich <jbeulich@suse.com>
344 * config/tc-i386.c (check_register): Split RegTR handling, to
345 fail recognition also in 64-bit mode as well as with i586 or
346 i686 explicitly enabled.
347 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
348 * testsuite/gas/i386/x86_64-intel.d,
349 testsuite/gas/i386/x86_64.d: Adjust expectations.
351 2020-06-08 Jan Beulich <jbeulich@suse.com>
353 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
354 * testsuite/gas/cfi/cfi.exp: Run this test.
356 2020-06-08 Jan Beulich <jbeulich@suse.com>
358 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
359 check to %st(N) parsing logic.
360 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
362 2020-06-08 Jan Beulich <jbeulich@suse.com>
364 * config/tc-i386.c (bad_reg): New.
365 (check_VecOperations, i386_att_operand, i386_parse_name): Check
367 (check_register): New, broken out from ...
368 (parse_real_register): ... here. Call it.
369 (parse_register): Call it, and error upon failure.
370 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
371 testsuite/gas/i386/x86-64-equ-bad.s,
372 testsuite/gas/i386/x86-64-equ-bad.l: New.
373 * testsuite/gas/i386/i386.exp: Run new tests.
375 2020-06-06 Alan Modra <amodra@gmail.com>
377 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
378 * doc/c-ppc.texi: Likewise.
380 2020-06-06 Alan Modra <amodra@gmail.com>
382 * config/tc-ppc.c: Update throughout for reloc renaming.
384 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
386 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
389 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
391 * config/tc-riscv.c (explicit_csr): New static boolean.
392 Used to indicate CSR are explictly used.
393 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
394 (riscv_write_out_attrs): If we already have set elf priv
395 attributes, then generate them. Otherwise, don't generate
396 them when no CSR are used.
397 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
398 * testsuite/gas/riscv/attribute-02.d: Likewise.
399 * testsuite/gas/riscv/attribute-03.d: Likewise.
400 * testsuite/gas/riscv/attribute-04.d: Likewise.
401 * testsuite/gas/riscv/attribute-05.d: Likewise.
402 * testsuite/gas/riscv/attribute-06.d: Likewise.
403 * testsuite/gas/riscv/attribute-07.d: Likewise.
404 * testsuite/gas/riscv/attribute-08.d: Likewise.
405 * testsuite/gas/riscv/attribute-09.d: Likewise.
406 * testsuite/gas/riscv/attribute-10.d: Likewise.
407 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
408 * testsuite/gas/riscv/attribute-11.s: New testcase.
409 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
410 used, so we should output the ELF priv attributes.
411 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
412 used, so output the priv attributes according to the -mpriv-spec.
413 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
414 used, so ignore the -mpriv-spec setting.
416 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
418 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
420 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
421 endianness to cgen_get_insn_value and cgen_put_insn_value.
423 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
425 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
428 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
430 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
432 (md_assemble): Remove no longer needed hack.
434 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
436 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
438 (gas_cgen_md_apply_fix): Likewise.
439 (gas_cgen_md_apply_fix): Likewise.
440 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
442 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
445 2020-06-04 Alan Modra <amodra@gmail.com>
447 * testsuite/config/default.exp: Remove global directive outside
449 * testsuite/gas/mep/complex-relocs.exp: Likewise.
450 * testsuite/gas/microblaze/relax_size.exp: Likewise.
451 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
452 * testsuite/gas/mt/relocs.exp: Likewise.
453 * testsuite/gas/rx/rx.exp: Likewise.
455 2020-06-03 Stephen Casner <casner@acm.org>
457 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
459 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
460 Jim Wilson <jimw@sifive.com>
463 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
464 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
465 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
466 Move B before SB. Move J before UJ.
468 2020-06-01 Alex Coplan <alex.coplan@arm.com>
470 * write.c (relax_segment): Fix handling of negative offset when
471 relaxing an rs_org frag.
472 * testsuite/gas/aarch64/org-neg.d: New test.
473 * testsuite/gas/aarch64/org-neg.l: Error output for test.
474 * testsuite/gas/aarch64/org-neg.s: Input for test.
475 * testsuite/gas/arm/org-neg.d: New test.
476 * testsuite/gas/arm/org-neg.l: Error output for test.
477 * testsuite/gas/arm/org-neg.s: Input for test.
479 2020-05-28 Stephen Casner <casner@acm.org>
481 Fix unexpected failures in gas testsuite for pdp11-aout target.
482 These are caused by the PDP11's mix of little-endian octets in
483 shorts but shorts in big endian order for long or quad.
485 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
486 * testsuite/gas/all/gas.exp: Select alternate test scripts for
487 pdp11, skip octa test completely.
488 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
489 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
490 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
492 2020-05-28 Alex Coplan <alex.coplan@arm.com>
494 * frags.c (frag_grow): Fix comment.
496 2020-05-27 Stephen Casner <casner@acm.org>
499 * config/tc-pdp11.c (parse_reg): Distinguish register names from
500 symbols that begin with a register name.
501 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
502 * testsuite/gas/pdp11/pr26001.s: Likewise.
503 * testsuite/gas/pdp11/pr26001.d: Likewise.
505 2020-05-27 Simon Cook <simon.cook@embecosm.com>
507 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
508 pointer when creating struct riscv_csr_extra.
510 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
512 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
513 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
514 * testsuite/gas/i386/inval-avx512f.l: Updated.
516 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
518 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
519 load/store instruction variants with alignment hints.
520 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
521 instruction variants with alignment hints.
523 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
526 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
527 instead of R_XGATE_PCREL_X.
528 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
529 BFD_RELOC_XGATE_PCREL_X.
531 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
534 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
535 with &fragP->fr_literal[0].
537 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
540 * config/tc-vax.c (md_estimate_size_before_relax): Replace
541 fragP->fr_literal with &fragP->fr_literal[0].
542 (md_convert_frag): Likewise.
544 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
547 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
548 with &fragP->fr_literal[0].
550 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
553 * config/tc-crx.c (getreg_image): Change argument type to int.
554 (md_convert_frag): Replace fragP->fr_literal with
555 &fragP->fr_literal[0].
557 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
560 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
561 sprintf with memmove.
563 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
565 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
566 with &fragP->fr_literal[0].
568 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
571 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
572 2 overlapping strings.
574 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
576 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
577 with &fragP->fr_literal[0].
579 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
581 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
582 with &fragp->fr_literal[0].
583 * config/tc-microblaze.c (md_apply_fix): Likewise.
584 * config/tc-sh.c (md_convert_frag): Likewise.
586 2020-05-24 Jim Wilson <jimw@sifive.com>
589 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
590 asection to segT. New locals seg and subseg. Call subseg_set before
591 fix_new_exp. Call subseg_set after loop to restore original values.
593 2020-05-21 Alan Modra <amodra@gmail.com>
595 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
597 * config/obj-elf.c: Likewise.
598 * config/tc-aarch64.c: Likewise.
599 * config/tc-arm.c: Likewise.
600 * config/tc-m68k.c: Likewise.
601 * config/tc-nios2.c: Likewise.
602 * config/tc-tic30.c: Likewise.
606 * symbols.c: Likewise.
607 * testsuite/gas/all/test-gen.c: Likewise.
609 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
611 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
612 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
613 Static variables which are used to set the ISA extensions. You can
614 use -march (or ELF build attributes) and -misa-spec to set them,
616 (ext_version_hash): The hash table used to handle the extensions
618 (init_ext_version_hash): Initialize the ext_version_hash according
619 to riscv_ext_version_table.
620 (riscv_get_default_ext_version): The callback function of
621 riscv_parse_subset_t. According to the choosed ISA spec,
622 get the default version for the specific extension.
623 (riscv_set_arch): Set the callback function.
624 (enum options, struct option md_longopts): Add new option -misa-spec.
625 (md_parse_option): Do not call riscv_set_arch for -march. We will
626 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
627 to set default_isa_spec class.
628 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
629 ext_version_hash, and then call riscv_set_arch to set the architecture
630 with versions according to default_arch_with_ext.
631 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
633 * testsuite/gas/riscv/attribute-03.d: Likewise.
634 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
635 already set it's version to 2p1 by march, so no need to use the default
636 2p2 version. For m-ext, we do not set the version by -march and ELF arch
637 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
638 ISA spec 2p2, so set 0p0 to it.
639 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
640 zicsr is 2p0 according to ISA spec 20191213.
641 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
642 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
643 You can set them by configure options --with-arch and
644 --with-isa-spec, respectively.
645 (riscv_set_default_isa_spec): New function used to set the
647 (md_parse_option): Call riscv_set_default_isa_spec rather than
648 call riscv_get_isa_spec_class directly.
649 (riscv_after_parse_args): If the -isa-spec is not set, then we
650 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
651 calling riscv_set_default_isa_spec.
652 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
653 the --with-isa-spec may be set to different ISA spec.
654 * testsuite/gas/riscv/attribute-02.d: Likewise.
655 * testsuite/gas/riscv/attribute-03.d: Likewise.
656 * testsuite/gas/riscv/attribute-04.d: Likewise.
657 * testsuite/gas/riscv/attribute-05.d: Likewise.
658 * testsuite/gas/riscv/attribute-06.d: Likewise.
659 * testsuite/gas/riscv/attribute-07.d: Likewise.
660 * configure.ac: Add configure options, --with-arch and
662 * configure: Regenerated.
663 * config.in: Regenerated.
664 * config/tc-riscv.c (default_priv_spec): Static variable which is
665 used to check if the CSR is valid for the chosen privilege spec. You
666 can use -mpriv-spec to set it.
667 (enum reg_class): We now get the CSR address from csr_extra_hash rather
668 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
669 (riscv_init_csr_hashes): Only need to initialize one hash table
671 (riscv_csr_class_check): Change the return type to void. Don't check
672 the ISA dependency if -mcsr-check isn't set.
673 (riscv_csr_version_check): New function. Check and find the CSR address
674 from csr_extra_hash, according to default_priv_spec. Report warning
675 for the invalid CSR if -mcsr-check is set.
676 (reg_csr_lookup_internal): Updated.
677 (reg_lookup_internal): Likewise.
678 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
679 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
680 (md_parse_option): Call riscv_set_default_priv_version to set
682 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
683 privilege spec to the newest one.
684 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
685 include/opcode/riscv.h.
686 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
687 to check the ISA dependency for CSR, so fix the spec version by adding
689 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
690 version warnings for the test case.
691 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
692 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
693 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
694 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
695 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
696 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
697 Check whether the CSR is valid when privilege version 1.9 is choosed.
698 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
699 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
700 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
701 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
702 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
703 Check whether the CSR is valid when privilege version 1.10 is choosed.
704 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
705 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
706 Check whether the CSR is valid when privilege version 1.11 is choosed.
707 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
708 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
709 setting. You can set it by configure option --with-priv-spec.
710 (riscv_set_default_priv_spec): New function used to set the default
712 (md_parse_option): Call riscv_set_default_priv_spec rather than
713 call riscv_get_priv_spec_class directly.
714 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
715 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
716 calling riscv_set_default_priv_spec.
717 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
718 the --with-priv-spec may be set to different privilege spec.
719 * testsuite/gas/riscv/priv-reg.d: Likewise.
720 * configure.ac: Add configure option --with-priv-spec.
721 * configure: Regenerated.
722 * config.in: Regenerated.
723 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
724 explicit_attr. Set it to TRUE if any ELF attribute is found.
725 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
726 the priv attributes are set.
727 (md_assemble): Set the default_priv_spec according to the priv
728 attributes when we start to assemble instruction.
729 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
730 riscv_write_out_attrs. Update the arch and priv attributes. If we
731 don't set the corresponding ELF attributes, then try to output the
733 (riscv_set_public_attributes): If any ELF attribute or -march-attr
734 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
735 to update the arch and priv attributes.
736 (s_riscv_attribute): Make sure all arch and priv attributes are set
737 before any instruction.
738 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
739 ELF attribute or -march-attr is set. If the priv attributes are not
740 set, then try to update them by the default setting (-mpriv-spec or
742 * testsuite/gas/riscv/attribute-02.d: Likewise.
743 * testsuite/gas/riscv/attribute-03.d: Likewise.
744 * testsuite/gas/riscv/attribute-04.d: Likewise.
745 * testsuite/gas/riscv/attribute-06.d: Likewise.
746 * testsuite/gas/riscv/attribute-07.d: Likewise.
747 * testsuite/gas/riscv/attribute-08.d: Likewise.
748 * testsuite/gas/riscv/attribute-09.d: Likewise.
749 * testsuite/gas/riscv/attribute-10.d: Likewise.
750 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
751 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
752 set by priv attributes must be supported.
753 * testsuite/gas/riscv/attribute-05.s: Likewise.
754 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
755 priv attributes according to the -mpriv-spec option.
756 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
757 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
758 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
759 * testsuite/gas/riscv/priv-reg.d: Removed.
760 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
761 CSR according to the priv spec 1.9.
762 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
763 CSR according to the priv spec 1.9.1.
764 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
765 CSR according to the priv spec 1.10.
766 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
767 CSR according to the priv spec 1.11.
768 * config/tc-riscv.c (md_show_usage): Add descriptions about
770 * doc/c-riscv.texi: Likewise.
772 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
774 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
775 * testsuite/gas/ppc/power9.d: Likewise.
776 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
777 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
778 sync, wait, waitrsv>: Add tests.
779 * testsuite/gas/ppc/power10.d: Likewise.
781 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
784 * config/tc-arm.c : Add arm_ext_v8r feature.
785 (it_fsm_post_encode): Check arm_ext_v8r feature.
786 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
788 2020-05-19 Alan Modra <amodra@gmail.com>
790 * write.c (write_contents): Use bfd_get_filename rather than
791 accessing bfd->filename directly. Use bfd_section_name rather
792 than accessing section->name directly.
794 2020-05-19 Alan Modra <amodra@gmail.com>
796 * symbols.c (local_symbol_make): Init all of lsy_flags.
798 2020-05-18 Alan Modra <amodra@gmail.com>
800 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
801 before looking at add_symbol->sy_flags.
803 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
805 * config/tc-i386.c: Not handle lret/iret.
806 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
807 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
808 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
809 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
810 * testsuite/gas/i386/lfence-ret.s: Ditto.
811 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
812 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
813 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
814 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
815 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
816 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
817 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
819 2020-05-15 Alan Modra <amodra@gmail.com>
820 Alex Coplan <alex.coplan@arm.com>
822 * symbols.c (struct local_symbol): Update comment.
823 (resolve_symbol_value): For resolved symbols equated to other
824 symbols, verify that the referenced symbol is not a local_symbol
825 before accessing sy_value. Don't leave symbol loops during
826 finalize_syms resolution.
827 * testsuite/gas/all/assign-bad-recursive.d: New test.
828 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
829 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
830 * testsuite/gas/all/gas.exp: Run it.
832 2020-05-14 Nick Clifton <nickc@redhat.com>
834 * po/sv.po: Updated Swedish translation.
836 2020-05-11 Alan Modra <amodra@gmail.com>
838 * testsuite/gas/ppc/scalarquad.d,
839 * testsuite/gas/ppc/scalarquad.s: New test.
840 * testsuite/gas/ppc/ppc.exp: Run it.
842 2020-05-11 Alan Modra <amodra@gmail.com>
844 * testsuite/gas/ppc/rightmost.d,
845 * testsuite/gas/ppc/rightmost.s: New test.
846 * testsuite/gas/ppc/ppc.exp: Run it.
848 2020-05-11 Alan Modra <amodra@gmail.com>
850 * testsuite/gas/ppc/xvtlsbb.d,
851 * testsuite/gas/ppc/xvtlsbb.s: New test.
852 * testsuite/gas/ppc/ppc.exp: Run it.
854 2020-05-11 Alan Modra <amodra@gmail.com>
856 * testsuite/gas/ppc/stringop.d,
857 * testsuite/gas/ppc/stringop.s: New test.
858 * testsuite/gas/ppc/ppc.exp: Run it.
860 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
862 * testsuite/gas/ppc/set_bool.d,
863 * testsuite/gas/ppc/set_bool.s: New test.
864 * testsuite/gas/ppc/ppc.exp: Run it.
866 2020-05-11 Alan Modra <amodra@gmail.com>
868 * testsuite/gas/ppc/bitmanip.d,
869 * testsuite/gas/ppc/bitmanip.s: New test.
870 * testsuite/gas/ppc/ppc.exp: Run it.
872 2020-05-11 Alan Modra <amodra@gmail.com>
874 * testsuite/gas/ppc/genpcv.d,
875 * testsuite/gas/ppc/genpcv.s: New test.
876 * testsuite/gas/ppc/ppc.exp: Run it.
878 2020-05-11 Alan Modra <amodra@gmail.com>
880 * testsuite/gas/ppc/maskmanip.d,
881 * testsuite/gas/ppc/maskmanip.s: New test.
882 * testsuite/gas/ppc/ppc.exp: Run it.
884 2020-05-11 Alan Modra <amodra@gmail.com>
885 Peter Bergner <bergner@linux.ibm.com>
887 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
888 (md_assemble): Check acc specified in correct operand.
889 * testsuite/gas/ppc/outerprod.d,
890 * testsuite/gas/ppc/outerprod.s,
891 * testsuite/gas/ppc/vsx4.d,
892 * testsuite/gas/ppc/vsx4.s: New tests.
893 * testsuite/gas/ppc/ppc.exp: Run them.
895 2020-05-11 Alan Modra <amodra@gmail.com>
897 * testsuite/gas/ppc/simd_perm.d,
898 * testsuite/gas/ppc/simd_perm.s: New test.
899 * testsuite/gas/ppc/ppc.exp: Run it.
901 2020-05-11 Alan Modra <amodra@gmail.com>
903 * testsuite/gas/ppc/int128.d,
904 * testsuite/gas/ppc/int128.s: New test.
905 * testsuite/gas/ppc/ppc.exp: Run it.
907 2020-05-11 Alan Modra <amodra@gmail.com>
909 * testsuite/gas/ppc/vsx_32byte.d,
910 * testsuite/gas/ppc/vsx_32byte.s: New test.
911 * testsuite/gas/ppc/ppc.exp: Run it.
913 2020-05-11 Alan Modra <amodra@gmail.com>
915 * testsuite/gas/ppc/vec_mul.s,
916 * testsuite/gas/ppc/vec_mul.d: New test.
917 * testsuite/gas/ppc/ppc.exp: Run it.
919 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
921 * testsuite/gas/ppc/byte_rev.d,
922 * testsuite/gas/ppc/byte_rev.s: New test.
923 * testsuite/gas/ppc/ppc.exp: Run it.
925 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
927 * testsuite/gas/ppc/power10.d: Add paste. tests.
928 * testsuite/gas/ppc/power10.s: Likewise.
930 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
932 * testsuite/gas/ppc/power10.s: New test.
933 * testsuite/gas/ppc/power10.d: Likewise.
934 * testsuite/gas/ppc/ppc.exp: Run it.
936 2020-05-11 Alan Modra <amodra@gmail.com>
938 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
940 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
941 place of -mfuture/-Mfuture.
942 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
943 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
945 2020-05-06 Nick Clifton <nickc@redhat.com>
947 * po/sv.po: Updated Swedish translation.
949 2020-05-06 Nick Clifton <nickc@redhat.com>
952 * doc/as.texi (Preprocessing): Replace cross reference to not
953 existant document with a URL to the equivalent page in the GCC
956 2020-05-05 Nick Clifton <nickc@redhat.com>
958 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
959 construction of a DWARF-5 directory name table.
960 * testsuite/gas/elf/pr25917.d: Update expected output.
962 2020-05-05 Gunther Nikl <gnikl@justmail.de>
964 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
965 (md_parse_option): Remove initialization of elf_flags.
967 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
970 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
971 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
972 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
974 2020-05-04 Nick Clifton <nickc@redhat.com>
977 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
978 table's existence before looking at its entries.
979 Also do not emit a default directory entry if there are no
982 * testsuite/gas/elf/pr25917.s: New test source file.
983 * testsuite/gas/elf/pr25917.d: New test driver.
984 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
986 2020-04-30 Alex Coplan <alex.coplan@arm.com>
988 * config/tc-aarch64.c (fix_insn): Implement for
989 AARCH64_OPND_UNDEFINED.
990 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
991 * testsuite/gas/aarch64/udf.s: New.
992 * testsuite/gas/aarch64/udf.d: New.
993 * testsuite/gas/aarch64/udf-invalid.s: New.
994 * testsuite/gas/aarch64/udf-invalid.l: New.
995 * testsuite/gas/aarch64/udf-invalid.d: New.
997 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
999 * config/tc-rx.c (elf_flags): Reset default value.
1000 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
1002 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
1004 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
1005 if it's not defined.
1006 (microarch_earliest): New static variable.
1007 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
1008 simcall opcode has mandatory parameter.
1009 (xg_init_global_config): Initialize microarch_earliest.
1011 2020-04-29 Nick Clifton <nickc@redhat.com>
1014 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
1015 IMM0_8S and add support for IMM0_8U.
1016 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
1017 unsigned 8-bit immediate.
1018 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
1019 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
1021 2020-04-27 Tamar Christina <tamar.christina@arm.com>
1023 * NEWS: Add news entry for big-obj.
1024 * config/tc-i386.c (i386_target_format): Support new format.
1025 * doc/c-i386.texi: Add i386 support.
1026 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
1027 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
1029 2020-04-27 Nick Clifton <nickc@redhat.com>
1032 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
1033 (assign_file_to_slot): New function. Fills in an entry in the
1035 (allocate_filenum): Use new function.
1036 (allocate_filename_to_slot): Use new function. If the specified
1037 slot entry is already in use, but was chosen automatically then
1038 reassign the automatic entry.
1040 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
1042 * config/tc-i386.c (lfence_before_ret_shl): New member.
1043 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
1045 (insert_after_load): Issue warning for REP CMPS/SCAS.
1046 (insert_before_before): Handle iret, Handle
1047 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
1048 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
1049 -mlfence-before-ret=[none/not/or/shl/yes].
1050 Enable -mlfence-before-ret=shl when
1051 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
1052 (md_show_usage): Ditto.
1053 * doc/c-i386.texi: Ditto.
1054 * testsuite/gas/i386/i386.exp: Add new testcases.
1055 * testsuite/gas/i386/lfence-load-b.d: New.
1056 * testsuite/gas/i386/lfence-load-b.e: New.
1057 * testsuite/gas/i386/lfence-load.d: Modified.
1058 * testsuite/gas/i386/lfence-load.e: New.
1059 * testsuite/gas/i386/lfence-load.s: Modified.
1060 * testsuite/gas/i386/lfence-ret-a.d: Modified.
1061 * testsuite/gas/i386/lfence-ret-b.d: Modified.
1062 * testsuite/gas/i386/lfence-ret-c.d: New.
1063 * testsuite/gas/i386/lfence-ret-d.d: New.
1064 * testsuite/gas/i386/lfence-ret.s: Modified.
1065 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
1066 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
1067 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
1068 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
1069 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
1070 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
1071 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
1072 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
1073 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
1074 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
1076 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
1079 * config/tc-xtensa.c (md_apply_fix): Replace
1080 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1081 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1082 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1083 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1084 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1086 2020-04-22 Alan Modra <amodra@gmail.com>
1088 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1089 symbol for ".symver .. remove".
1090 * doc/as.texi (.symver): Update.
1091 * testsuite/gas/symver/symver11.s: Make foo weak.
1092 * testsuite/gas/symver/symver11.d: Expect an error.
1093 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1095 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1097 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1099 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
1102 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1103 * testsuite/gas/m68k/operands.d: Update.
1104 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1106 2020-04-21 Tamar Christina <tamar.christina@arm.com>
1109 * testsuite/gas/arm/pr24753.d: New test.
1110 * testsuite/gas/arm/pr24753.s: New test.
1112 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1116 * NEWS: Mention .symver extension.
1117 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1119 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1120 add a version name. Add local, hidden and remove visibility
1122 (elf_frob_symbol): Handle the list of version names. Update the
1123 original symbol to local, hidden or remove it from the symbol
1125 (elf_frob_file_before_adjust): Handle the list of version names.
1126 * config/obj-elf.h (elf_visibility): New.
1127 (elf_versioned_name_list): Likewise.
1128 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1129 and visibility. Change versioned_name pointer to struct
1130 elf_versioned_name_list.
1131 * doc/as.texi: Update .symver directive.
1132 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1133 error checking tests.
1134 * testsuite/gas/symver/symver6.d: New file.
1135 * testsuite/gas/symver/symver7.d: Likewise.
1136 * testsuite/gas/symver/symver7.s: Likewise.
1137 * testsuite/gas/symver/symver8.d: Likewise.
1138 * testsuite/gas/symver/symver8.s: Likewise.
1139 * testsuite/gas/symver/symver9.s: Likewise.
1140 * testsuite/gas/symver/symver9a.d: Likewise.
1141 * testsuite/gas/symver/symver9b.d: Likewise.
1142 * testsuite/gas/symver/symver10.s: Likewise.
1143 * testsuite/gas/symver/symver10a.d: Likewise.
1144 * testsuite/gas/symver/symver10b.d: Likewise.
1145 * testsuite/gas/symver/symver11.d: Likewise.
1146 * testsuite/gas/symver/symver11.s: Likewise.
1147 * testsuite/gas/symver/symver12.d: Likewise.
1148 * testsuite/gas/symver/symver12.s: Likewise.
1149 * testsuite/gas/symver/symver13.d: Likewise.
1150 * testsuite/gas/symver/symver13.s: Likewise.
1151 * testsuite/gas/symver/symver14.d: Likewise.
1152 * testsuite/gas/symver/symver14.l: Likewise.
1153 * testsuite/gas/symver/symver15.d: Likewise.
1154 * testsuite/gas/symver/symver15.l: Likewise.
1155 * testsuite/gas/symver/symver6.l: Removed.
1156 * testsuite/gas/symver/symver6.s: Updated.
1158 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1160 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1162 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1163 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1164 * testsuite/gas/aarch64/system.d: Update.
1166 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1168 * testsuite/gas/aarch64/bti.d: Update -march option.
1169 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1170 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1171 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1172 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1174 2020-04-17 Alan Modra <amodra@gmail.com>
1176 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1178 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
1179 Nick Clifton <nickc@redhat.com>
1182 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1184 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1185 for the type-2 test.
1186 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1187 targets running this test.
1189 2020-02-16 David Faust <david.faust@oracle.com>
1191 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1192 * testsuite/gas/bpf/jump32.s: New file.
1193 * testsuite/gas/bpf/jump32.d: Likewise.
1195 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
1197 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1200 2020-04-08 Gunther Nikl <gnikl@justmail.de>
1202 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1203 (md_pcrel_from): Remove prototytpe.
1204 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1206 (md_pcrel_from_section): Remove duplicate prototype.
1207 * tc.h (md_pcrel_from_section): Add prototype.
1208 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1209 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1210 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1211 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1212 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1213 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1214 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1215 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1216 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1217 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1218 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1219 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1220 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1221 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1222 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1223 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1224 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1225 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1226 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1227 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1228 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1229 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1230 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1231 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1232 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1233 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1234 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1235 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1236 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1237 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1238 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1239 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1240 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1241 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1242 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1243 md_apply_fix3): Delete prototypes.
1245 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1247 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1250 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1252 * doc/c-z80.texi: Fix @xref warnings.
1254 2020-04-07 Lili Cui <lili.cui@intel.com>
1256 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1257 (cpu_noarch): Likewise.
1258 * doc/c-i386.texi: Document TSXLDTRK.
1259 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1260 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1261 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1262 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1264 2020-04-02 Lili Cui <lili.cui@intel.com>
1266 * config/tc-i386.c (cpu_arch): Add .serialize.
1267 (cpu_noarch): Likewise.
1268 * doc/c-i386.texi: Document serialize.
1269 * testsuite/gas/i386/i386.exp: Run serialize tests
1270 * testsuite/gas/i386/serialize.d: Likewise.
1271 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1272 * testsuite/gas/i386/serialize.s: Likewise.
1274 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1276 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1277 * testsuite/gas/elf/section12b.d: Likewise.
1278 * testsuite/gas/elf/section16a.d: Likewise.
1279 * testsuite/gas/elf/section16b.d: Likewise.
1281 2020-04-02 Gunther Nikl <gnikl@justmail.de>
1283 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1284 with a suppressed address register.
1286 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
1289 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1290 * testsuite/gas/i386/localpic.s: Add a test for relocation
1291 against local absolute symbol.
1292 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1293 * testsuite/gas/i386/localpic.d: Updated.
1294 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1295 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1297 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1300 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1301 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1302 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1303 testsuite/gas/i386/x86-64-jump.d.
1304 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1305 Incorporate changes to
1306 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1307 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1308 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1309 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1310 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1312 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
1316 * dwarf2dbg.c: Do not include "bignum.h".
1318 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
1320 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1321 * testsuite/gas/riscv/alias-csr.s: Likewise.
1322 * testsuite/gas/riscv/no-aliases-csr.d: Move this
1323 to priv-reg-pseudo-noalias.
1324 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
1325 * testsuite/gas/riscv/bad-csr.l: Likewise.
1326 * testsuite/gas/riscv/bad-csr.s: Likewise.
1327 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
1328 * testsuite/gas/riscv/satp.s: Likewise.
1329 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
1330 csr instruction, including alias-csr testcase.
1331 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
1332 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
1333 pseudo instruction with objdump -Mno-aliases.
1334 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
1335 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
1336 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
1337 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
1338 * testsuite/gas/riscv/priv-reg.s: Likewise.
1339 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1340 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1341 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1343 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
1345 * config/obj-coff.c (obj_coff_section): Set the bss flag on
1346 sections with the "b" attribute.
1348 2020-03-22 Alan Modra <amodra@gmail.com>
1350 * testsuite/gas/s12z/truncated.d: Update expected output.
1352 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1355 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
1356 * doc/c-z80.texi: Update documentation.
1358 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1363 Fix disassembling ED+A4/AC/B4/BC opcodes.
1364 Fix assembling lines containing colonless label and instruction
1365 with first operand inside parentheses.
1366 Fix registration of unsupported by target CPU registers.
1367 * config/tc-z80.c: See above.
1368 * config/tc-z80.h: See above.
1369 * testsuite/gas/z80/colonless.d: Update test.
1370 * testsuite/gas/z80/colonless.s: Likewise.
1371 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
1372 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
1373 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1374 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
1375 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
1376 * testsuite/gas/z80/unsup_regs.s: Likewise.
1377 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
1378 * testsuite/gas/z80/z80.exp: Likewise.
1379 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
1380 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
1381 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
1383 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
1386 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
1387 (parse_operands): Handle new operand codes.
1388 (do_neon_dyadic_long): Make shape check accept the scalar variants.
1389 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
1390 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
1391 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
1392 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
1393 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
1394 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
1395 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
1397 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1399 * NEWS: Mention x86 assembler options for CVE-2020-0551.
1401 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1403 * testsuite/gas/i386/i386.exp: Run new tests.
1404 * testsuite/gas/i386/lfence-byte.d: New file.
1405 * testsuite/gas/i386/lfence-byte.e: Likewise.
1406 * testsuite/gas/i386/lfence-byte.s: Likewise.
1407 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
1408 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
1409 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
1410 * testsuite/gas/i386/lfence-indbr.e: Likewise.
1411 * testsuite/gas/i386/lfence-indbr.s: Likewise.
1412 * testsuite/gas/i386/lfence-load.d: Likewise.
1413 * testsuite/gas/i386/lfence-load.s: Likewise.
1414 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
1415 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
1416 * testsuite/gas/i386/lfence-ret.s: Likewise.
1417 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
1418 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
1419 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
1420 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
1421 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
1422 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
1423 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
1424 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
1425 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
1426 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
1427 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
1428 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
1430 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1432 * config/tc-i386.c (lfence_after_load): New.
1433 (lfence_before_indirect_branch_kind): New.
1434 (lfence_before_indirect_branch): New.
1435 (lfence_before_ret_kind): New.
1436 (lfence_before_ret): New.
1439 (insert_lfence_after): New.
1440 (insert_lfence_before): New.
1441 (md_assemble): Call insert_lfence_before and insert_lfence_after.
1443 (OPTION_MLFENCE_AFTER_LOAD): New.
1444 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1445 (OPTION_MLFENCE_BEFORE_RET): New.
1446 (md_longopts): Add -mlfence-after-load=,
1447 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1448 (md_parse_option): Handle -mlfence-after-load=,
1449 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1450 (md_show_usage): Display -mlfence-after-load=,
1451 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1452 (i386_cons_align): New.
1453 * config/tc-i386.h (i386_cons_align): New.
1454 (md_cons_align): New.
1455 * doc/c-i386.texi: Document -mlfence-after-load=,
1456 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1458 2020-03-11 Nick Clifton <nickc@redhat.com>
1462 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1463 (DWARF2_FILE_SIZE_NAME): Default to -1.
1464 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1465 whichever is higher.
1466 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1467 (NUM_MD5_BYTES): Define.
1468 (struct file entry): Add md5 field.
1469 (get_filenum): Delete and replace with...
1470 (get_basename): New function.
1471 (get_directory_table_entry): New function.
1472 (allocate_filenum): New function.
1473 (allocate_filename_to_slot): New function.
1474 (dwarf2_where): Use new functions.
1475 (dwarf2_directive_filename): Add support for extended .file
1477 (dwarf2_directive_loc): Allow the use of file number zero with
1479 (out_file_list): Rename to...
1480 (out_dir_and_file_list): Add DWARF 5 support.
1481 (out_debug_line): Emit extra values into the section header for
1483 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1484 * doc/as.texi (.file): Update the description of this pseudo-op.
1485 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1486 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1487 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1488 * NEWS: Mention the new feature.
1490 2020-03-10 Alan Modra <amodra@gmail.com>
1492 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1493 to avoid signed overflow.
1494 * config/tc-mcore.c (md_assemble): Likewise.
1495 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1496 * config/tc-nds32.c (SET_ADDEND): Likewise.
1497 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1499 2020-03-09 Jan Beulich <jbeulich@suse.com>
1501 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1502 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1503 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1505 2020-03-07 Alan Modra <amodra@gmail.com>
1507 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
1510 2020-03-06 Nick Clifton <nickc@redhat.com>
1513 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
1514 0 if the dwarf_level is 5 or more. Complain if a filename follows
1516 * testsuite/gas/elf/dwarf-5-file0.s: New test.
1517 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
1518 * testsuite/gas/elf/elf.exp: Run the new test.
1521 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
1522 * doc/as.texi: Fix another typo.
1524 2020-03-06 Nick Clifton <nickc@redhat.com>
1527 * as.c (dwarf_level): Define.
1528 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
1529 (parse_args): Add support for the new options.
1530 as.h (dwarf_level): Prototype.
1531 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
1533 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
1534 (DWARF2_LINE_VERSION): Remove definition.
1535 * doc/as.texi: Document the new options.
1537 2020-03-06 Nick Clifton <nickc@redhat.com>
1540 * as.c (main): Allow matching input and outputs when they are
1543 2020-03-06 Jan Beulich <jbeulich@suse.com>
1545 * config/tc-i386.c (match_mem_size): Generalize broadcast special
1547 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
1548 one of byte/word/dword/qword is set alongside a SIMD register in
1549 a template's operand.
1551 2020-03-06 Jan Beulich <jbeulich@suse.com>
1553 * config/tc-i386.c (match_template): Extend code in logic
1554 rejecting certain suffixes in certain modes to also cover mask
1555 register use and VecSIB. Drop special casing of broadcast. Skip
1556 immediates in the check.
1558 2020-03-06 Jan Beulich <jbeulich@suse.com>
1560 * config/tc-i386.c (match_template): Fold duplicate code in
1561 logic rejecting certain suffixes in certain modes. Drop
1564 2020-03-06 Jan Beulich <jbeulich@suse.com>
1566 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
1567 alongside !norex64 ones.
1568 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
1569 with both 32- and 64-bit GPR operands.
1570 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
1571 32- and 64-bit GPR operands.
1572 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
1573 testsuite/gas/i386/x86-64-avx512bw.d,
1574 testsuite/gas/i386/x86-64-avx512f-intel.d,
1575 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
1577 2020-03-06 Jan Beulich <jbeulich@suse.com>
1579 * config/tc-i386.c (md_assemble): Drop use of rex64.
1580 (process_suffix): For REX.W for 64-bit CRC32.
1582 2020-03-06 Jan Beulich <jbeulich@suse.com>
1584 * config/tc-i386.c (i386_addressing_mode): For 32-bit
1585 addressing for MPX insns without base/index.
1586 * testsuite/gas/i386/mpx-16bit.s,
1587 * testsuite/gas/i386/mpx-16bit.d: New.
1588 * testsuite/gas/i386/i386.exp: Run new test.
1590 2020-03-06 Jan Beulich <jbeulich@suse.com>
1592 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
1593 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
1594 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
1595 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
1596 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
1597 as well as a BSWAP one.
1598 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
1599 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
1600 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
1601 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
1602 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
1603 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
1604 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
1605 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
1606 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
1607 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
1608 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
1609 testsuite/gas/i386/vmx.d: Adjust expectations.
1611 2020-03-06 Jan Beulich <jbeulich@suse.com>
1613 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
1614 from having their operands swapped.
1615 * testsuite/gas/i386/waitpkg.s,
1616 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
1617 3-operand cases as well as testing of 16-bit code generation.
1618 * testsuite/gas/i386/waitpkg.d,
1619 testsuite/gas/i386/waitpkg-intel.d,
1620 testsuite/gas/i386/x86-64-waitpkg.d,
1621 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
1623 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
1625 * config/tc-riscv.c (percent_op_utype): Support the modifier
1627 * doc/c-riscv.texi: Add documentation.
1628 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
1629 modifier %got_pcrel_hi.
1630 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
1631 * testsuite/gas/riscv/relax-reloc.d: Likewise.
1632 * testsuite/gas/riscv/relax-reloc.s: Likewise.
1634 * doc/c-riscv.texi (relocation modifiers): Add documentation.
1635 (RISC-V-Formats): Update the section name from "Instruction Formats"
1636 to "RISC-V Instruction Formats".
1638 2020-03-04 Alexandre Oliva <oliva@adacore.com>
1640 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
1641 detected in a section which does not have at least 4 byte
1643 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
1644 * testsuite/gas/arm/ldr-t.s: Likewise.
1645 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
1646 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
1647 disassembly, ignoring any NOPs that may have been inserted because
1648 of section alignment.
1649 * testsuite/gas/arm/ldr-t.d: Likewise.
1651 2020-03-04 Jan Beulich <jbeulich@suse.com>
1653 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
1654 * doc/c-i386.texi: Mention sev_es.
1655 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
1656 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
1658 * testsuite/gas/i386/arch-13-znver1.d,
1659 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
1661 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1663 * config/tc-i386.c (match_template): Replace ignoresize and
1664 defaultsize with mnemonicsize.
1665 (process_suffix): Likewise.
1667 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1670 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
1671 instruction LD IY,(HL).
1672 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
1673 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
1674 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
1675 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
1677 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1680 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
1681 x86-64-default-suffix-avx.
1682 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
1683 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
1684 * testsuite/gas/i386/noreg64.d: Updated.
1685 * testsuite/gas/i386/noreg64.l: Likewise.
1686 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
1687 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
1688 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
1690 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1693 * config/tc-z80.c (contains_register): Prevent an illegal memory
1694 access when checking an expression for a register name.
1696 2020-03-03 Alan Modra <amodra@gmail.com>
1698 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
1701 2020-03-02 Alan Modra <amodra@gmail.com>
1703 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
1704 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
1706 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
1707 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
1708 (s3_s_score_lcomm): Likewise.
1709 * config/tc-score7.c: Similarly.
1710 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
1712 2020-02-28 YunQiang Su <syq@debian.org>
1715 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
1716 to handle multi-labels.
1717 (has_label_name): New.
1719 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
1721 * config/tc-arm.c (enum pred_instruction_type): Remove
1722 NEUTRAL_IT_NO_VPT_INSN predication type.
1723 (cxn_handle_predication): Modify to require condition suffixes.
1724 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
1725 * testsuite/gas/arm/cde-scalar.s: Update test.
1726 * testsuite/gas/arm/cde-warnings.l: Update test.
1727 * testsuite/gas/arm/cde-warnings.s: Update test.
1729 2020-02-26 Alan Modra <amodra@gmail.com>
1731 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
1732 N_() on empty string.
1734 2020-02-26 Alan Modra <amodra@gmail.com>
1736 * read.c (read_a_source_file): Call strncpy with length one
1737 less than size of original_case_string.
1739 2020-02-26 Alan Modra <amodra@gmail.com>
1741 * config/obj-elf.c: Indent labels correctly.
1742 * config/obj-macho.c: Likewise.
1743 * config/tc-aarch64.c: Likewise.
1744 * config/tc-alpha.c: Likewise.
1745 * config/tc-arm.c: Likewise.
1746 * config/tc-cr16.c: Likewise.
1747 * config/tc-crx.c: Likewise.
1748 * config/tc-frv.c: Likewise.
1749 * config/tc-i386-intel.c: Likewise.
1750 * config/tc-i386.c: Likewise.
1751 * config/tc-ia64.c: Likewise.
1752 * config/tc-mn10200.c: Likewise.
1753 * config/tc-mn10300.c: Likewise.
1754 * config/tc-nds32.c: Likewise.
1755 * config/tc-riscv.c: Likewise.
1756 * config/tc-s12z.c: Likewise.
1757 * config/tc-xtensa.c: Likewise.
1758 * config/tc-z80.c: Likewise.
1760 * symbols.c: Likewise.
1761 * write.c: Likewise.
1763 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
1765 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
1766 we are assembling instruction with CSR. Call riscv_csr_read_only_check
1767 after parsing all arguments.
1768 (enum csr_insn_type): New enum is used to classify the CSR instruction.
1769 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
1770 are used to check if we write a read-only CSR by the CSR instruction.
1771 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
1772 all CSR for the read-only CSR checking.
1773 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1774 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1775 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
1776 all CSR instructions for the read-only CSR checking.
1777 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1778 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
1780 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
1781 (riscv_opts): Initialize it.
1782 (reg_lookup_internal): Check the `riscv_opts.csr_check`
1783 before doing the CSR checking.
1784 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
1785 (md_longopts): Add mcsr-check and mno-csr-check.
1786 (md_parse_option): Handle new enum option values.
1787 (s_riscv_option): Handle new long options.
1788 * doc/c-riscv.texi: Add description for the new .option and assembler
1790 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
1792 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1794 * config/tc-riscv.c (csr_extra_hash): New.
1795 (enum riscv_csr_class): New enum. Used to decide
1796 whether or not this CSR is legal in the current ISA string.
1797 (struct riscv_csr_extra): New structure to hold all extra information
1799 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
1800 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
1801 Call hash_reg_name to insert CSR address into reg_names_hash.
1802 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
1803 Decide whether the CSR is valid according to the csr_extra_hash.
1804 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
1805 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
1806 not a boolean. This is same as riscv_init_csr_hash, so keep the
1808 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
1809 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
1810 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
1811 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
1812 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
1813 f-ext CSR are not allowed.
1814 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
1815 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
1816 source file is `priv-reg.s`, and the ISA is rv64if, so the
1817 rv32-only CSR are not allowed.
1818 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1820 2020-02-21 Alan Modra <amodra@gmail.com>
1822 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
1823 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
1825 2020-02-21 Alan Modra <amodra@gmail.com>
1828 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
1829 on section size adjustment, instead perform another write if
1830 exec header size is larger than section size.
1832 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1834 * doc/c-riscv.texi: Add the doc entries for -march-attr/
1835 -mno-arch-attr command line options.
1837 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1839 * testsuite/gas/riscv/c-add-addi.d: New testcase.
1840 * testsuite/gas/riscv/c-add-addi.s: Likewise.
1842 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1845 * config/tc-z80.c (md_parse_option): Do not use an underscore
1846 prefix for local labels in SDCC compatability mode.
1847 (z80_start_line_hook): Remove SDCC dollar label support.
1848 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
1849 * testsuite/gas/z80/sdcc.s: Likewise.
1851 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1854 * config/tc-z80.c: Add -march option.
1855 * doc/as.texi: Update Z80 documentation.
1856 * doc/c-z80.texi: Likewise.
1857 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
1858 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
1859 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
1860 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1861 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
1862 * testsuite/gas/z80/gbz80_all.d: Likewise.
1863 * testsuite/gas/z80/r800_extra.d: Likewise.
1864 * testsuite/gas/z80/r800_ii8.d: Likewise.
1865 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
1866 * testsuite/gas/z80/sdcc.d: Likewise.
1867 * testsuite/gas/z80/z180.d: Likewise.
1868 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
1869 * testsuite/gas/z80/z80_doc.d: Likewise.
1870 * testsuite/gas/z80/z80_ii8.d: Likewise.
1871 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
1872 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
1873 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
1874 * testsuite/gas/z80/z80_sli.d: Likewise.
1875 * testsuite/gas/z80/z80n_all.d: Likewise.
1876 * testsuite/gas/z80/z80n_reloc.d: Likewise.
1878 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
1880 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
1881 with GNU_PROPERTY_X86_FEATURE_2_MMX.
1882 * testsuite/gas/i386/i386.exp: Run property-3 and
1884 * testsuite/gas/i386/property-3.d: New file.
1885 * testsuite/gas/i386/property-3.s: Likewise.
1886 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
1888 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
1890 * config/tc-i386.c (cpu_arch): Add .popcnt.
1891 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
1892 Add a tab before @samp{.sse4a}.
1894 2020-02-17 Jan Beulich <jbeulich@suse.com>
1896 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
1897 for AddrPrefixOpReg templates. Combine the two pieces of
1898 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
1901 2020-02-17 Jan Beulich <jbeulich@suse.com>
1904 * config/tc-i386.c (md_assemble): Also suppress operand
1905 swapping for MONITOR{,X} and MWAIT{,X}.
1906 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
1907 Add Intel syntax monitor/mwait tests.
1908 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
1909 Adjust expectations.
1910 *testsuite/gas/i386/sse3-intel.d,
1911 testsuite/gas/i386/x86-64-sse3-intel.d: New.
1912 * testsuite/gas/i386/i386.exp: Run new tests.
1914 2020-02-17 Jan Beulich <jbeulich@suse.com>
1917 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
1918 [XYZ]MMWord memory operand ambiguity recognition logic (largely
1920 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
1922 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
1923 * testsuite/gas/i386/avx512dq-inval.l,
1924 testsuite/gas/i386/inval-avx.l,
1925 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
1926 * testsuite/gas/i386/avx512vl-ambig.s,
1927 testsuite/gas/i386/avx512vl-ambig.l: New.
1928 * testsuite/gas/i386/i386.exp: Run new test.
1930 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
1932 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
1934 * doc/c-i386.texi: Document sse4a and nosse4a.
1936 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1938 * doc/c-i386.texi: Remove the old movsx and movzx documentation
1941 2020-02-14 Jan Beulich <jbeulich@suse.com>
1944 * config/tc-i386.c (md_assemble): Move movsx/movzx special
1946 (process_suffix): ... here. Consider just the first operand
1948 (check_long_reg): Drop opcode 0x63 special case again.
1949 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
1950 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
1951 Move ambiguous operand size tests ...
1952 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1953 testsuite/gas/i386/noreg64.s: ... here.
1954 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
1955 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
1956 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1957 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
1958 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
1959 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1960 testsuite/gas/i386/x86-64-movsxd.d,
1961 testsuite/gas/i386/x86-64-movsxd-intel.d,
1962 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
1963 Adjust expectations.
1964 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
1965 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
1966 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
1967 * testsuite/gas/i386/i386.exp: Run new tests.
1969 2020-02-14 Jan Beulich <jbeulich@suse.com>
1971 * config/tc-i386.c (process_operands): Also skip segment
1972 override prefix emission if it matches an already present one.
1973 * testsuite/gas/i386/prefix32.s: Add double segment override
1975 * testsuite/gas/i386/prefix32.l: Adjust expectations.
1977 2020-02-14 Jan Beulich <jbeulich@suse.com>
1979 * config/tc-i386.c (process_operands): Drop ineffectual segment
1980 overrides when optimizing.
1981 * testsuite/gas/i386/lea-optimize.d: New.
1982 * testsuite/gas/i386/i386.exp: Run new test.
1984 2020-02-14 Jan Beulich <jbeulich@suse.com>
1986 * config/tc-i386.c (process_operands): Also check insn prefix
1987 for ineffectual segment override warning. Don't cover possible
1988 VEX/EVEX encoded insns there.
1989 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
1990 testsuite/gas/i386/lea.e: New.
1991 * testsuite/gas/i386/i386.exp: Run new test.
1993 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1996 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
1999 2020-02-13 Fangrui Song <maskray@google.com>
2000 H.J. Lu <hongjiu.lu@intel.com>
2003 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
2004 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
2005 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
2006 * testsuite/gas/i386/relax-5.d: New file.
2007 * testsuite/gas/i386/relax-5.s: Likewise.
2008 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
2009 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
2011 2020-02-13 Jan Beulich <jbeulich@suse.com>
2013 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
2016 2020-02-12 Jan Beulich <jbeulich@suse.com>
2018 * config/tc-i386.c (avx512): New (at file scope), moved from
2019 (check_VecOperands): ... here.
2020 (process_suffix): Add [XYZ]MMword operand size handling.
2021 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
2022 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
2024 * testsuite/gas/i386/avx512dq-inval.l,
2025 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
2027 2020-02-12 Jan Beulich <jbeulich@suse.com>
2030 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
2032 * config/tc-i386-intel.c (i386_intel_operand): Also handle
2033 CALL/JMP in O_tbyte_ptr case.
2034 * doc/c-i386.texi: Mention far call and full pointer load ISA
2036 * testsuite/gas/i386/x86-64-branch-3.s,
2037 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
2038 * testsuite/gas/i386/x86-64-branch-3.d,
2039 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
2040 * testsuite/gas/i386/x86-64-branch-5.l,
2041 testsuite/gas/i386/x86-64-branch-5.s: New.
2042 * testsuite/gas/i386/i386.exp: Run new test.
2044 2020-02-12 Jan Beulich <jbeulich@suse.com>
2047 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
2048 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
2049 64-bit-only warning.
2050 (check_word_reg): Consistently error on mismatching register
2052 * testsuite/gas/i386/general.s: Replace dword GPR with word one
2053 for movw. Replace suffix / GPR for orb.
2054 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
2055 byte GPRs as well as ones for inb/outb with a word accumulator.
2056 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
2057 testsuite/gas/i386/inval.l: Adjust expectations.
2059 2020-02-12 Jan Beulich <jbeulich@suse.com>
2061 * config/tc-i386.c (operand_type_register_match): Also fall
2062 through initial two if()-s when the template allows for a GPR
2063 operand. Adjust comment.
2065 2020-02-11 Jan Beulich <jbeulich@suse.com>
2067 (struct _i386_insn): New field "short_form".
2068 (optimize_encoding): Drop setting of shortform field.
2069 (process_suffix): Set i.short_form. Replace shortform use.
2070 (process_operands): Replace shortform use.
2072 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
2074 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
2075 loop initial declaration.
2077 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
2079 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2080 instructions that can have 5 arguments.
2081 (enum operand_parse_code): Add new operands.
2082 (parse_operands): Account for new operands.
2084 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2085 (neon_select_shape): Account for P suffix.
2086 (LOW1): Move macro to global position.
2087 (HI4): Move macro to global position.
2088 (vcx_assign_vec_d): New.
2089 (vcx_assign_vec_m): New.
2090 (vcx_assign_vec_n): New.
2091 (enum vcx_reg_type): New.
2092 (vcx_get_reg_type): New.
2093 (vcx_size_pos): New.
2095 (vcx_handle_shape): New.
2096 (vcx_ensure_register_in_range): New.
2097 (vcx_handle_register_arguments): New.
2098 (vcx_handle_insn_block): New.
2099 (vcx_handle_common_checks): New.
2103 * testsuite/gas/arm/cde-missing-fp.d: New test.
2104 * testsuite/gas/arm/cde-missing-fp.l: New test.
2105 * testsuite/gas/arm/cde-missing-mve.d: New test.
2106 * testsuite/gas/arm/cde-missing-mve.l: New test.
2107 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2108 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2109 * testsuite/gas/arm/cde-mve.s: New test.
2110 * testsuite/gas/arm/cde-warnings.l:
2111 * testsuite/gas/arm/cde-warnings.s:
2112 * testsuite/gas/arm/cde.d:
2113 * testsuite/gas/arm/cde.s:
2115 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2116 Matthew Malcomson <matthew.malcomson@arm.com>
2118 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2119 CDE coprocessor that can be enabled.
2120 (enum pred_instruction_type): New pred type.
2121 (BAD_NO_VPT): New error message.
2122 (BAD_CDE): New error message.
2123 (BAD_CDE_COPROC): New error message.
2124 (enum operand_parse_code): Add new immediate operands.
2125 (parse_operands): Account for new immediate operands.
2126 (check_cde_operand): New.
2127 (cde_coproc_enabled): New.
2128 (cde_coproc_pos): New.
2129 (cde_handle_coproc): New.
2130 (cxn_handle_predication): New.
2131 (do_custom_instruction_1): New.
2132 (do_custom_instruction_2): New.
2133 (do_custom_instruction_3): New.
2146 (handle_pred_state): Define new IT block behaviour.
2147 (insns): Add newn CX*{,d}{,a} instructions.
2148 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2149 Define new cdecp extension strings.
2150 * doc/c-arm.texi: Document new cdecp extension arguments.
2151 * testsuite/gas/arm/cde-scalar.d: New test.
2152 * testsuite/gas/arm/cde-scalar.s: New test.
2153 * testsuite/gas/arm/cde-warnings.d: New test.
2154 * testsuite/gas/arm/cde-warnings.l: New test.
2155 * testsuite/gas/arm/cde-warnings.s: New test.
2156 * testsuite/gas/arm/cde.d: New test.
2157 * testsuite/gas/arm/cde.s: New test.
2159 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
2162 * config/tc-i386.c (intel64): Renamed to ...
2164 (match_template): Accept Intel64 only instruction by default.
2165 (i386_displacement): Updated.
2166 (md_parse_option): Updated.
2167 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2168 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2169 -mamd64 to x86-64-sysenter-amd.
2170 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2172 2020-02-10 Alan Modra <amodra@gmail.com>
2174 * config/obj-elf.c (obj_elf_change_section): Error for section
2175 type, attr or entsize changes in assembly.
2176 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2177 * testsuite/gas/elf/section5.l: Update.
2179 2020-02-10 Alan Modra <amodra@gmail.com>
2181 * output-file.c (output_file_close): Do a normal close when
2182 flag_always_generate_output.
2183 * write.c (write_object_file): Don't stop output when
2184 flag_always_generate_output.
2186 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
2189 * config/tc-z80.c: Add -gbz80 command line option to generate code
2190 for the GameBoy Z80. Add support for generating DWARF.
2191 * config/tc-z80.h: Add support for DWARF debug information
2193 * doc/c-z80.texi: Document new command line option.
2194 * testsuite/gas/z80/gbz80_all.d: New file.
2195 * testsuite/gas/z80/gbz80_all.s: New file.
2196 * testsuite/gas/z80/z80.exp: Run the new tests.
2197 * testsuite/gas/z80/z80n_all.d: New file.
2198 * testsuite/gas/z80/z80n_all.s: New file.
2199 * testsuite/gas/z80/z80n_reloc.d: New file.
2201 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2204 * config/obj-elf.c (get_section): Also check
2205 linked_to_symbol_name.
2206 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2207 (obj_elf_parse_section_letters): Handle the 'o' flag.
2208 (build_group_lists): Renamed to ...
2209 (build_additional_section_info): This. Set elf_linked_to_section
2210 from map_head.linked_to_symbol_name.
2211 (elf_adjust_symtab): Updated.
2212 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2213 * doc/as.texi: Document the 'o' flag.
2214 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2215 * testsuite/gas/elf/section18.d: New file.
2216 * testsuite/gas/elf/section18.s: Likewise.
2217 * testsuite/gas/elf/section19.d: Likewise.
2218 * testsuite/gas/elf/section19.s: Likewise.
2219 * testsuite/gas/elf/section20.d: Likewise.
2220 * testsuite/gas/elf/section20.s: Likewise.
2221 * testsuite/gas/elf/section21.d: Likewise.
2222 * testsuite/gas/elf/section21.l: Likewise.
2223 * testsuite/gas/elf/section21.s: Likewise.
2225 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2227 * NEWS: Mention x86 assembler options to align branches for
2230 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2232 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2233 only for ELF targets.
2234 * testsuite/gas/i386/unique.d: Don't xfail.
2235 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2237 2020-02-06 Alan Modra <amodra@gmail.com>
2239 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2240 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2242 2020-02-06 Alan Modra <amodra@gmail.com>
2244 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2245 xfail, and rename test.
2246 * testsuite/gas/elf/section12b.d: Likewise.
2247 * testsuite/gas/elf/section16a.d: Likewise.
2248 * testsuite/gas/elf/section16b.d: Likewise.
2250 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2253 * config/obj-elf.c (section_match): Removed.
2254 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2256 (obj_elf_change_section): Replace info and group_name arguments
2257 with match_p. Also update the section ID and flags from match_p.
2258 (obj_elf_section): Handle "unique,N". Update call to
2259 obj_elf_change_section.
2260 * config/obj-elf.h (elf_section_match): New.
2261 (obj_elf_change_section): Updated.
2262 * config/tc-arm.c (start_unwind_section): Update call to
2263 obj_elf_change_section.
2264 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2265 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2266 (microblaze_s_sdata): Likewise.
2267 (microblaze_s_rdata): Likewise.
2268 (microblaze_s_bss): Likewise.
2269 * config/tc-mips.c (s_change_section): Likewise.
2270 * config/tc-msp430.c (msp430_profiler): Likewise.
2271 * config/tc-rx.c (parse_rx_section): Likewise.
2272 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2273 * doc/as.texi: Document "unique,N" in .section directive.
2274 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2275 * testsuite/gas/elf/section15.d: New file.
2276 * testsuite/gas/elf/section15.s: Likewise.
2277 * testsuite/gas/elf/section16.s: Likewise.
2278 * testsuite/gas/elf/section16a.d: Likewise.
2279 * testsuite/gas/elf/section16b.d: Likewise.
2280 * testsuite/gas/elf/section17.d: Likewise.
2281 * testsuite/gas/elf/section17.l: Likewise.
2282 * testsuite/gas/elf/section17.s: Likewise.
2283 * testsuite/gas/i386/unique.d: Likewise.
2284 * testsuite/gas/i386/unique.s: Likewise.
2285 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2286 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2288 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2290 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2292 2020-02-01 Anthony Green <green@moxielogic.com>
2294 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2296 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
2298 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2301 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2304 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2305 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2307 * testsuite/gas/arm/mve_dsp.d: New test.
2309 2020-01-31 Nick Clifton <nickc@redhat.com>
2311 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2312 rather than BFD_RELOC_NONE.
2314 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2316 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2317 to support VLDMIA instruction for MVE.
2318 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2319 instruction for MVE.
2320 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2321 instruction for MVE.
2322 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
2323 instruction for MVE.
2324 * testsuite/gas/arm/mve-ldst.d: New test.
2325 * testsuite/gas/arm/mve-ldst.s: Likewise.
2327 2020-01-31 Nick Clifton <nickc@redhat.com>
2329 * po/fr.po: Updated French translation.
2330 * po/ru.po: Updated Russian translation.
2332 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
2334 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
2336 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
2337 * testsuite/gas/aarch64/sve-movprfx_28.d,
2338 * testsuite/gas/aarch64/sve-movprfx_28.l,
2339 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
2341 2020-01-30 Jan Beulich <jbeulich@suse.com>
2343 * config/tc-i386.c (output_disp): Tighten base_opcode check.
2344 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
2345 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
2346 Adjust expectations.
2348 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
2350 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
2351 * testsuite/gas/bpf/alu-be.d: Likewise.
2352 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
2353 * testsuite/gas/bpf/alu32-be.d: Likewise.
2355 2020-01-30 Jan Beulich <jbeulich@suse.com>
2357 * testsuite/gas/i386/x86-64-branch-2.s,
2358 testsuite/gas/i386/x86-64-branch-4.s,
2359 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
2360 * testsuite/gas/i386/ilp32/x86-64-branch.d,
2361 testsuite/gas/i386/x86-64-branch-2.d,
2362 testsuite/gas/i386/x86-64-branch-4.l,
2363 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
2365 2020-01-30 Jan Beulich <jbeulich@suse.com>
2367 * config/tc-i386.c (process_suffix): .
2368 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
2369 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
2371 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
2373 testsuite/gas/i386/x86_64.s: Add RETF cases.
2374 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2375 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
2376 testsuite/gas/i386/x86-64-opcode.d,
2377 testsuite/gas/i386/x86-64-suffix-intel.d,
2378 testsuite/gas/i386/x86-64-suffix.d,
2379 testsuite/gas/i386/x86_64-intel.d
2380 testsuite/gas/i386/x86_64.d: Adjust expectations.
2381 * testsuite/gas/i386/x86-64-suffix.e,
2382 testsuite/gas/i386/x86_64.e: New.
2384 2020-01-30 Jan Beulich <jbeulich@suse.com>
2386 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
2389 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
2392 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
2394 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
2395 differences. Document movslq and movsxd.
2396 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
2397 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
2398 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
2399 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
2400 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
2401 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
2402 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
2403 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
2404 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
2405 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
2406 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
2408 2020-01-27 Alan Modra <amodra@gmail.com>
2410 * testsuite/gas/all/gas.exp: Replace case statements with switch
2412 * testsuite/gas/elf/elf.exp: Likewise.
2413 * testsuite/gas/macros/macros.exp: Likewise.
2414 * testsuite/lib/gas-defs.exp: Likewise.
2416 2020-01-27 Tamar Christina <tamar.christina@arm.com>
2419 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
2420 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
2422 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
2424 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
2425 s exts must be known, so rename *ok* to *fail*.
2426 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
2427 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
2428 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
2430 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
2431 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
2433 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
2436 * config/tc-i386.c (check_long_reg): Always disallow double word
2437 suffix in mnemonic with word general register.
2438 * testsuite/gas/i386/general.s: Replace word general register
2439 with double word general register for movl.
2440 * testsuite/gas/i386/inval.s: Add tests for movl with word general
2442 * testsuite/gas/i386/general.l: Updated.
2443 * testsuite/gas/i386/inval.l: Likewise.
2445 2020-01-22 Alan Modra <amodra@gmail.com>
2447 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2448 __tls_get_addr_desc and __tls_get_addr_opt.
2450 2020-01-21 Jan Beulich <jbeulich@suse.com>
2452 * testsuite/gas/i386/inval-crc32.s,
2453 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2454 * testsuite/gas/i386/inval-crc32.l,
2455 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2457 2020-01-21 Jan Beulich <jbeulich@suse.com>
2459 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2460 generic code path. Deal with No_lSuf being set in a template.
2461 * testsuite/gas/i386/inval-crc32.l,
2462 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2463 instead of error(s) when operand size is ambiguous.
2464 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2465 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2466 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2467 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2468 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2469 Adjust expectations.
2471 2020-01-21 Jan Beulich <jbeulich@suse.com>
2473 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2474 and an intel_syntax check. Re-write lack-of-suffix processing
2476 * doc/c-i386.texi: Document operand size defaults for suffix-
2477 less AT&T syntax insns.
2478 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2479 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2480 testsuite/gas/i386/x86-64-avx-scalar.s,
2481 testsuite/gas/i386/x86-64-avx.s,
2482 testsuite/gas/i386/x86-64-bundle.s,
2483 testsuite/gas/i386/x86-64-intel64.s,
2484 testsuite/gas/i386/x86-64-lock-1.s,
2485 testsuite/gas/i386/x86-64-opcode.s,
2486 testsuite/gas/i386/x86-64-sse2avx.s,
2487 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2488 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2489 testsuite/gas/i386/x86-64-nops.s,
2490 testsuite/gas/i386/x86-64-ptwrite.s,
2491 testsuite/gas/i386/x86-64-simd.s,
2492 testsuite/gas/i386/x86-64-sse-noavx.s,
2493 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2495 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2496 testsuite/gas/i386/noreg64.s: Add further tests.
2497 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2498 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2499 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2500 testsuite/gas/i386/sse-noavx.d,
2501 testsuite/gas/i386/x86-64-intel64.d,
2502 testsuite/gas/i386/x86-64-nops.d,
2503 testsuite/gas/i386/x86-64-opcode.d,
2504 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2505 testsuite/gas/i386/x86-64-ptwrite.d,
2506 testsuite/gas/i386/x86-64-simd-intel.d,
2507 testsuite/gas/i386/x86-64-simd-suffix.d,
2508 testsuite/gas/i386/x86-64-simd.d,
2509 testsuite/gas/i386/x86-64-sse-noavx.d
2510 testsuite/gas/i386/x86-64-suffix.d,
2511 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
2512 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
2513 testsuite/gas/i386/noreg64.l: New.
2514 * testsuite/gas/i386/i386.exp: Run new tests.
2516 2020-01-21 Jan Beulich <jbeulich@suse.com>
2518 * testsuite/gas/i386/avx512_bf16_vl.s,
2519 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
2520 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
2521 broadcast forms of VCVTNEPS2BF16.
2522 * testsuite/gas/i386/avx512_bf16_vl.d,
2523 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
2525 2020-01-20 Nick Clifton <nickc@redhat.com>
2527 * po/uk.po: Updated Ukranian translation.
2529 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
2532 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
2533 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
2535 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
2536 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
2537 R_X86_64_GOTPC32_TLSDESC relocation.
2539 2020-01-18 Nick Clifton <nickc@redhat.com>
2541 * configure: Regenerate.
2542 * po/gas.pot: Regenerate.
2544 2020-01-18 Nick Clifton <nickc@redhat.com>
2546 Binutils 2.34 branch created.
2548 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
2550 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
2551 with vex_encoding_vex.
2552 (parse_insn): Likewise.
2553 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
2554 and {vex3} documentation.
2555 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
2557 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
2559 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2562 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
2563 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
2564 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
2565 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
2566 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
2567 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
2569 2020-01-16 Jan Beulich <jbeulich@suse.com>
2571 * config/tc-i386.c (match_template): Drop found_cpu_match local
2574 2020-01-16 Jan Beulich <jbeulich@suse.com>
2576 * testsuite/gas/i386/avx512dq-inval.l,
2577 testsuite/gas/i386/avx512dq-inval.s: New.
2578 * testsuite/gas/i386/i386.exp: Run new test.
2580 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2582 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
2583 relocations when the target is 430X, except when extracting part of an
2585 (msp430_srcoperand): Adjust comment.
2586 Initialize the expp member of the msp430_operand_s struct as
2588 (msp430_dstoperand): Likewise.
2589 * testsuite/gas/msp430/msp430.exp: Run new test.
2590 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
2591 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
2593 2020-01-15 Alan Modra <amodra@gmail.com>
2595 * configure.tgt: Add sparc-*-freebsd case.
2597 2020-01-14 Lili Cui <lili.cui@intel.com>
2599 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
2600 * testsuite/gas/i386/align-branch-1b.d: Likewise.
2601 * testsuite/gas/i386/align-branch-1c.d: Likewise.
2602 * testsuite/gas/i386/align-branch-1d.d: Likewise.
2603 * testsuite/gas/i386/align-branch-1e.d: Likewise.
2604 * testsuite/gas/i386/align-branch-1f.d: Likewise.
2605 * testsuite/gas/i386/align-branch-1g.d: Likewise.
2606 * testsuite/gas/i386/align-branch-1h.d: Likewise.
2607 * testsuite/gas/i386/align-branch-1i.d: Likewise.
2608 * testsuite/gas/i386/align-branch-5.d: Likewise.
2609 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
2610 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
2611 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
2612 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
2613 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
2614 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
2615 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
2616 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
2617 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
2618 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
2619 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
2620 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
2622 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
2625 * config/tc-z80.c: Add support for half precision, single
2626 precision and double precision floating point values.
2627 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
2628 * doc/as.texi: Add new z80 command line options.
2629 * doc/c-z80.texi: Document new z80 command line options.
2630 * testsuite/gas/z80/ez80_pref_dis.s: New test.
2631 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
2632 * testsuite/gas/z80/z80.exp: Run the new test.
2633 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
2634 * testsuite/gas/z80/fp_zeda32.d: Likewise.
2635 * testsuite/gas/z80/strings.d: Update expected output.
2637 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
2639 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
2642 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
2644 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
2646 * config/tc-arc.h: Add header if/defs.
2647 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
2649 2020-01-13 Alan Modra <amodra@gmail.com>
2651 * testsuite/gas/wasm32/allinsn.d: Update expected output.
2653 2020-01-13 Alan Modra <amodra@gmail.com>
2655 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
2658 2020-01-10 Alan Modra <amodra@gmail.com>
2660 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
2661 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
2663 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2666 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
2668 (emit_ld_r_r): Likewise.
2669 (emit_ld_rr_m): Likewise.
2670 (emit_ld_rr_nn): Likewise.
2672 2020-01-09 Jan Beulich <jbeulich@suse.com>
2674 * config/tc-i386.c (optimize_encoding): Add
2675 is_any_vex_encoding() invocations. Drop respective
2676 i.tm.extension_opcode == None checks.
2678 2020-01-09 Jan Beulich <jbeulich@suse.com>
2680 * config/tc-i386.c (md_assemble): Check RegRex is clear during
2681 REX transformations. Correct comment indentation.
2683 2020-01-09 Jan Beulich <jbeulich@suse.com>
2685 * config/tc-i386.c (optimize_encoding): Generalize register
2686 transformation for TEST optimization.
2688 2020-01-09 Jan Beulich <jbeulich@suse.com>
2690 * testsuite/gas/i386/x86-64-sysenter-amd.s,
2691 testsuite/gas/i386/x86-64-sysenter-amd.d,
2692 testsuite/gas/i386/x86-64-sysenter-amd.l,
2693 testsuite/gas/i386/x86-64-sysenter-intel.d,
2694 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
2695 * testsuite/gas/i386/i386.exp: Run new tests.
2697 2020-01-08 Nick Clifton <nickc@redhat.com>
2700 * doc/as.texi (Align): Document the fact that all arguments can be
2703 (P2align): Likewise.
2705 2020-01-08 Nick Clifton <nickc@redhat.com>
2708 * config/obj-elf.c (obj_elf_section): Fail if the section name is
2709 already defined as a different symbol type.
2710 * testsuite/gas/elf/pr14891.s: New test source file.
2711 * testsuite/gas/elf/pr14891.d: New test driver.
2712 * testsuite/gas/elf/pr14891.s: New test expected error output.
2713 * testsuite/gas/elf/elf.exp: Run the new test.
2715 2020-01-08 Alan Modra <amodra@gmail.com>
2717 * config/tc-z8k.c (md_begin): Make idx unsigned.
2718 (get_specific): Likewise for this_index.
2720 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
2722 * onfig/tc-arc.c (parse_reloc_symbol): New function.
2723 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
2724 (md_operand): Set X_md to absent.
2725 (arc_parse_name): Check for X_md.
2727 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2730 * as.h (TC_STRING_ESCAPES): Provide a default definition.
2731 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
2733 * read.c (next_char_of_string): Likewise.
2734 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
2735 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
2737 2020-01-03 Nick Clifton <nickc@redhat.com>
2739 * po/sv.po: Updated Swedish translation.
2741 2020-01-03 Jan Beulich <jbeulich@suse.com>
2743 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
2744 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2746 2020-01-03 Jan Beulich <jbeulich@suse.com>
2748 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
2749 by-element usdot. Add 64-bit form tests for by-element sudot.
2750 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
2752 2020-01-03 Jan Beulich <jbeulich@suse.com>
2754 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
2755 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2757 2020-01-03 Jan Beulich <jbeulich@suse.com>
2759 * testsuite/gas/aarch64/f64mm.d,
2760 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
2762 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
2764 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
2765 support for assembler code generated by SDCC. Add new relocation
2766 types. Add z80-elf target support.
2767 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
2768 labels. Local labels starts from ".L".
2769 * NEWS: Mention the new support.
2770 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
2771 * testsuite/gas/all/fwdexp.s: Likewise.
2772 * testsuite/gas/all/cond.l: Likewise.
2773 * testsuite/gas/all/cond.s: Likewise.
2774 * testsuite/gas/all/fwdexp.d: Likewise.
2775 * testsuite/gas/all/fwdexp.s: Likewise.
2776 * testsuite/gas/elf/section2.e-mips: Likewise.
2777 * testsuite/gas/elf/section2.l: Likewise.
2778 * testsuite/gas/elf/section2.s: Likewise.
2779 * testsuite/gas/macros/app1.d: Likewise.
2780 * testsuite/gas/macros/app1.s: Likewise.
2781 * testsuite/gas/macros/app2.d: Likewise.
2782 * testsuite/gas/macros/app2.s: Likewise.
2783 * testsuite/gas/macros/app3.d: Likewise.
2784 * testsuite/gas/macros/app3.s: Likewise.
2785 * testsuite/gas/macros/app4.d: Likewise.
2786 * testsuite/gas/macros/app4.s: Likewise.
2787 * testsuite/gas/macros/app4b.s: Likewise.
2788 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
2789 * testsuite/gas/z80/z80.exp: Add new tests
2790 * testsuite/gas/z80/dollar.d: New file.
2791 * testsuite/gas/z80/dollar.s: New file.
2792 * testsuite/gas/z80/ez80_adl_all.d: New file.
2793 * testsuite/gas/z80/ez80_adl_all.s: New file.
2794 * testsuite/gas/z80/ez80_adl_suf.d: New file.
2795 * testsuite/gas/z80/ez80_isuf.s: New file.
2796 * testsuite/gas/z80/ez80_z80_all.d: New file.
2797 * testsuite/gas/z80/ez80_z80_all.s: New file.
2798 * testsuite/gas/z80/ez80_z80_suf.d: New file.
2799 * testsuite/gas/z80/r800_extra.d: New file.
2800 * testsuite/gas/z80/r800_extra.s: New file.
2801 * testsuite/gas/z80/r800_ii8.d: New file.
2802 * testsuite/gas/z80/r800_z80_doc.d: New file.
2803 * testsuite/gas/z80/z180.d: New file.
2804 * testsuite/gas/z80/z180.s: New file.
2805 * testsuite/gas/z80/z180_z80_doc.d: New file.
2806 * testsuite/gas/z80/z80_doc.d: New file.
2807 * testsuite/gas/z80/z80_doc.s: New file.
2808 * testsuite/gas/z80/z80_ii8.d: New file.
2809 * testsuite/gas/z80/z80_ii8.s: New file.
2810 * testsuite/gas/z80/z80_in_f_c.d: New file.
2811 * testsuite/gas/z80/z80_in_f_c.s: New file.
2812 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
2813 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
2814 * testsuite/gas/z80/z80_out_c_0.d: New file.
2815 * testsuite/gas/z80/z80_out_c_0.s: New file.
2816 * testsuite/gas/z80/z80_reloc.d: New file.
2817 * testsuite/gas/z80/z80_reloc.s: New file.
2818 * testsuite/gas/z80/z80_sli.d: New file.
2819 * testsuite/gas/z80/z80_sli.s: New file.
2821 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
2823 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
2826 2020-01-01 Alan Modra <amodra@gmail.com>
2828 Update year range in copyright notice of all files.
2830 For older changes see ChangeLog-2019
2832 Copyright (C) 2020 Free Software Foundation, Inc.
2834 Copying and distribution of this file, with or without modification,
2835 are permitted in any medium without royalty provided the copyright
2836 notice and this notice are preserved.
2842 version-control: never