1 2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
3 * config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
4 Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
5 VECSIB256 and VECSIB512, respectively.
6 (build_modrm_byte): Replace vecsib with sib.
8 2020-06-26 Jan Beulich <jbeulich@suse.com>
10 * testsuite/gas/i386/nop-1-suffix.d: New.
11 * testsuite/gas/i386/i386.exp: Run new test.
13 2020-06-26 Pat Bernardi <bernardi@adacore.com>
15 * config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
16 (md_pseudo_table): Handle "gnu_attribute".
17 * doc/as.texi: Document GNU attribute for M68K.
19 2020-06-25 Nick Clifton <nickc@redhat.com>
22 * config/tc-arm.c (arm_force_relocation): Force resolution of
23 BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
24 * testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
26 2020-06-25 Jan Beulich <jbeulich@suse.com>
28 * config/tc-i386.c (md_assemble): Move call to process_immext()
30 (process_operands): ... here.
32 2020-06-25 Jan Beulich <jbeulich@suse.com>
34 * config/tc-i386.c (process_suffix): Skip ambiguous operand size
35 diagnostic when there is a sizing prefix. Switch to word/dword/
36 qword encoding when there is a sizing prefix and no (explicit or
38 (update_imm): Handle presence of a sizing prefix.
39 * testsuite/gas/i386/noreg16-data32.d,
40 testsuite/gas/i386/noreg32-data16.d,
41 testsuite/gas/i386/noreg32-data16.e,
42 testsuite/gas/i386/noreg64-data16.d,
43 testsuite/gas/i386/noreg64-data16.e,
44 testsuite/gas/i386/noreg64-rex64.d: New.
45 * testsuite/gas/i386/i386.exp: Run new tests.
46 * testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
47 Introduce and use pfx* macros.
48 * testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
50 * testsuite/gas/i386/noreg16.d: Adjust expectations.
52 2020-06-25 Jan Beulich <jbeulich@suse.com>
54 * testsuite/gas/i386/avx-16bit.d,
55 testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
56 testsuite/gas/i386/avx512f-16bit.d,
57 testsuite/gas/i386/avx512f.d,
58 testsuite/gas/i386/evex-lig256.d,
59 testsuite/gas/i386/evex-lig512.d
60 testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
61 testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
62 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
63 testsuite/gas/i386/sse2-16bit.d,
64 testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
67 2020-06-25 Jan Beulich <jbeulich@suse.com>
69 * config/tc-i386.c (md_assemble): Also reject explicit REX
70 prefixes with VEX and alike encoded insns. Zap consumed bits
72 (output_insn): Don't ignore REX prefix for VEX and alike
73 encodings; abort() instead if encountered.
74 * testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
76 * testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
77 * testsuite/gas/i386/x86-64-pseudos.d,
78 testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
80 2020-06-25 Jan Beulich <jbeulich@suse.com>
82 * config/tc-i386.c (process_operands): Translate explicit REX
83 prefix into i.rex for SSE2AVX templates.
84 (set_rex_vrex): New helper.
85 (build_modrm_byte): Use it.
86 * testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
88 * testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
90 2020-06-25 Jan Beulich <jbeulich@suse.com>
92 * config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
93 templates when there's no data size prefix.
94 (md_assemble): Reject data size prefix also for legacy encoded
96 * testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
97 Uncomment previously not working line.
98 * testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
100 * testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
101 testsuite/gas/i386/sse2avx.d: Adjust expectations.
103 2020-06-25 Jan Beulich <jbeulich@suse.com>
105 * config/tc-i386.c (build_evex_prefix): Drop early setting of
108 2020-06-23 Nelson Chu <nelson.chu@sifive.com>
110 * config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
111 explicit_priv_attr. It used to indicate CSR or priv instructions are
113 (riscv_is_priv_insn): Return True if it is a privileged instruction.
114 (riscv_ip): Call riscv_is_priv_insn to check whether the instruction
115 is privileged or not. If it is, then set explicit_priv_attr to TRUE.
116 (riscv_write_out_attrs): Clarification of when to generate the elf
117 priv spec attributes.
118 * testsuite/gas/riscv/attribute-11.s: Add comments.
119 * testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
120 `priv_insn_<n>` to decide which priv instruction is expected to used.
122 * testsuite/gas/riscv/attribute-14a.d: Likewise.
123 * testsuite/gas/riscv/attribute-14b.d: Likewise.
124 * testsuite/gas/riscv/attribute-14c.d: Likewise.
125 * testsuite/gas/riscv/attribute-14d.d: Likewise.
126 * testsuite/gas/riscv/attribute-14e.d: Likewise.
128 2020-06-22 Nelson Chu <nelson.chu@sifive.com>
130 * config/tc-riscv.c (buf_size, buf): Remove the unused variables.
131 (riscv_set_default_priv_spec): Get the priv spec version from the
132 priv spec attributes by riscv_get_priv_spec_class_from_numbers.
134 2020-06-20 Alan Modra <amodra@gmail.com>
136 * configure.tgt: Set bfd_gas for all SH targets.
138 2020-06-18 Jan Beulich <jbeulich@suse.com>
140 * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
141 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
144 2020-06-16 Lili Cui <lili.cui@intel.com>
146 * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
147 cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
148 * doc/c-i386.texi: Add avx512_vp2intersect.
150 2020-06-16 Jan Beulich <jbeulich@suse.com>
152 * config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
154 * testsuite/gas/i386/sse-check.s: Adjust comment.
155 * testsuite/gas/i386/sse-check-error.l,
156 testsuite/gas/i386/sse-check-warn.e,
157 testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
160 2020-06-16 Alan Modra <amodra@gmail.com>
162 * config/tc-tic30.h: Remove OBJ_AOUT support.
163 * configure.tgt: Delete tic30-*-*aout* entry.
165 2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
167 * config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
169 (elf32xtensa_abi): New declaration.
170 (option_abi_windowed, option_abi_call0): New enum constants.
171 (md_longopts): Add entries for --abi-windowed and --abi-call0.
172 (md_parse_option): Add handlers for --abi-windowed and
174 (xtensa_add_config_info): Use xtensa_abi_choice instead of
175 XSHAL_ABI to format ABI tag.
176 * doc/as.texi (Target Xtensa options): Add --abi-windowed and
177 --abi-call0 to the list of options.
178 * doc/c-xtensa.texi: Add description for options --abi-windowed
180 * testsuite/gas/xtensa/abi-call0.d: New test definition.
181 * testsuite/gas/xtensa/abi-windowed.d: New test definition.
182 * testsuite/gas/xtensa/abi.s: New test source.
184 2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
187 * testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
189 * testsuite/gas/i386/tsxldtrk.s: Likewise.
190 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
191 * testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
193 2020-06-12 Nelson Chu <nelson.chu@sifive.com>
195 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
196 * testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
197 * testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
199 2020-06-09 Seth Girvan <snth@snthhacks.com>
201 * doc/c-avr.texi: Improve wording.
203 2020-06-09 Jan Beulich <jbeulich@suse.com>
205 * testsuite/gas/i386/x86-64-pseudos-bad.s,
206 testsuite/gas/i386/x86-64-pseudos-bad.l: New.
208 2020-06-09 Jan Beulich <jbeulich@suse.com>
210 * testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
212 * testsuite/gas/i386/prefix.d: Adjust expectations.
214 2020-06-09 Jan Beulich <jbeulich@suse.com>
216 * testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
217 with VEX/EVEX encoding tests.
218 * testsuite/gas/i386/prefix.d: Adjust expectations.
220 2020-06-09 Jan Beulich <jbeulich@suse.com>
222 * config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
224 * testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
225 * testsuite/gas/i386/noreg64.d: Adjust expectations.
226 * testsuite/gas/i386/noreg-intel64.d,
227 testsuite/gas/i386/noreg-intel64.l,
228 testsuite/gas/i386/noreg-intel64.s: New.
229 * testsuite/gas/i386/i386.exp: Run new tests.
231 2020-06-09 Jan Beulich <jbeulich@suse.com>
233 * config/tc-i386.c (vex_encoding_error): New enumerator.
234 (VEX_check_operands): Rename to VEX_check_encoding. Check
235 for vex_encoding_error. Move Imm4 handling ...
236 (check_VecOperands): ... here.
237 (match_template): Call VEX_check_encoding when there are no
238 operands. Split construct calling check_VecOperands and
239 VEX_check_encoding (when there are operands).
240 (check_register): Don't blindly set vex_encoding_evex.
241 * testsuite/gas/i386/pseudos-bad.s,
242 testsuite/gas/i386/pseudos-bad.l: New.
243 * testsuite/gas/i386/i386.exp: Run new test.
244 * testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
246 2020-06-08 Alex Coplan <alex.coplan@arm.com>
248 * config/tc-arm.c (insns): Add dfb.
249 * testsuite/gas/arm/dfb.d: New test.
250 * testsuite/gas/arm/dfb.s: Input for test.
252 2020-06-08 Nick Clifton <nickc@redhat.com>
254 * testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
256 2020-06-08 Jan Beulich <jbeulich@suse.com>
258 * config/tc-i386.c (pi): Add checks for RegMask and RegBND.
260 2020-06-08 Jan Beulich <jbeulich@suse.com>
262 * config/tc-i386.c (check_byte_reg): Drop dead conditional
265 2020-06-08 Jan Beulich <jbeulich@suse.com>
267 * config/tc-i386.c (check_register): Split RegTR handling, to
268 fail recognition also in 64-bit mode as well as with i586 or
269 i686 explicitly enabled.
270 * testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
271 * testsuite/gas/i386/x86_64-intel.d,
272 testsuite/gas/i386/x86_64.d: Adjust expectations.
274 2020-06-08 Jan Beulich <jbeulich@suse.com>
276 * testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
277 * testsuite/gas/cfi/cfi.exp: Run this test.
279 2020-06-08 Jan Beulich <jbeulich@suse.com>
281 * config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
282 check to %st(N) parsing logic.
283 * testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
285 2020-06-08 Jan Beulich <jbeulich@suse.com>
287 * config/tc-i386.c (bad_reg): New.
288 (check_VecOperations, i386_att_operand, i386_parse_name): Check
290 (check_register): New, broken out from ...
291 (parse_real_register): ... here. Call it.
292 (parse_register): Call it, and error upon failure.
293 * testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
294 testsuite/gas/i386/x86-64-equ-bad.s,
295 testsuite/gas/i386/x86-64-equ-bad.l: New.
296 * testsuite/gas/i386/i386.exp: Run new tests.
298 2020-06-06 Alan Modra <amodra@gmail.com>
300 * config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
301 * doc/c-ppc.texi: Likewise.
303 2020-06-06 Alan Modra <amodra@gmail.com>
305 * config/tc-ppc.c: Update throughout for reloc renaming.
307 2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
309 * config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
312 2020-06-05 Nelson Chu <nelson.chu@sifive.com>
314 * config/tc-riscv.c (explicit_csr): New static boolean.
315 Used to indicate CSR are explictly used.
316 (riscv_ip): Set explicit_csr to TRUE if any CSR is used.
317 (riscv_write_out_attrs): If we already have set elf priv
318 attributes, then generate them. Otherwise, don't generate
319 them when no CSR are used.
320 * testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
321 * testsuite/gas/riscv/attribute-02.d: Likewise.
322 * testsuite/gas/riscv/attribute-03.d: Likewise.
323 * testsuite/gas/riscv/attribute-04.d: Likewise.
324 * testsuite/gas/riscv/attribute-05.d: Likewise.
325 * testsuite/gas/riscv/attribute-06.d: Likewise.
326 * testsuite/gas/riscv/attribute-07.d: Likewise.
327 * testsuite/gas/riscv/attribute-08.d: Likewise.
328 * testsuite/gas/riscv/attribute-09.d: Likewise.
329 * testsuite/gas/riscv/attribute-10.d: Likewise.
330 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
331 * testsuite/gas/riscv/attribute-11.s: New testcase.
332 * testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
333 used, so we should output the ELF priv attributes.
334 * testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
335 used, so output the priv attributes according to the -mpriv-spec.
336 * testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
337 used, so ignore the -mpriv-spec setting.
339 2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
341 * config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
343 * config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
344 endianness to cgen_get_insn_value and cgen_put_insn_value.
346 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
348 * config/tc-bpf.c (md_apply_fix): Simplify and avoid using
351 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
353 * config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
355 (md_assemble): Remove no longer needed hack.
357 2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
359 * cgen.c (gas_cgen_finish_insn): Pass the endianness to
361 (gas_cgen_md_apply_fix): Likewise.
362 (gas_cgen_md_apply_fix): Likewise.
363 * config/tc-bpf.c (md_apply_fix): Pass data endianness to
365 * config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
368 2020-06-04 Alan Modra <amodra@gmail.com>
370 * testsuite/config/default.exp: Remove global directive outside
372 * testsuite/gas/mep/complex-relocs.exp: Likewise.
373 * testsuite/gas/microblaze/relax_size.exp: Likewise.
374 * testsuite/gas/microblaze/reloc_sym.exp: Likewise.
375 * testsuite/gas/mt/relocs.exp: Likewise.
376 * testsuite/gas/rx/rx.exp: Likewise.
378 2020-06-03 Stephen Casner <casner@acm.org>
380 * doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
382 2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
383 Jim Wilson <jimw@sifive.com>
386 * doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
387 simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
388 formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
389 Move B before SB. Move J before UJ.
391 2020-06-01 Alex Coplan <alex.coplan@arm.com>
393 * write.c (relax_segment): Fix handling of negative offset when
394 relaxing an rs_org frag.
395 * testsuite/gas/aarch64/org-neg.d: New test.
396 * testsuite/gas/aarch64/org-neg.l: Error output for test.
397 * testsuite/gas/aarch64/org-neg.s: Input for test.
398 * testsuite/gas/arm/org-neg.d: New test.
399 * testsuite/gas/arm/org-neg.l: Error output for test.
400 * testsuite/gas/arm/org-neg.s: Input for test.
402 2020-05-28 Stephen Casner <casner@acm.org>
404 Fix unexpected failures in gas testsuite for pdp11-aout target.
405 These are caused by the PDP11's mix of little-endian octets in
406 shorts but shorts in big endian order for long or quad.
408 * config/tc-pdp11.c (md_number_to_chars): Implement .quad
409 * testsuite/gas/all/gas.exp: Select alternate test scripts for
410 pdp11, skip octa test completely.
411 * testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
412 * testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
413 * testsuite/gas/all/cond-pdp11.l: Match different octet order.
415 2020-05-28 Alex Coplan <alex.coplan@arm.com>
417 * frags.c (frag_grow): Fix comment.
419 2020-05-27 Stephen Casner <casner@acm.org>
422 * config/tc-pdp11.c (parse_reg): Distinguish register names from
423 symbols that begin with a register name.
424 * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
425 * testsuite/gas/pdp11/pr26001.s: Likewise.
426 * testsuite/gas/pdp11/pr26001.d: Likewise.
428 2020-05-27 Simon Cook <simon.cook@embecosm.com>
430 * config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
431 pointer when creating struct riscv_csr_extra.
433 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
435 * testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
436 * testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
437 * testsuite/gas/i386/inval-avx512f.l: Updated.
439 2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
441 * testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
442 load/store instruction variants with alignment hints.
443 * testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
444 instruction variants with alignment hints.
446 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
449 * config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
450 instead of R_XGATE_PCREL_X.
451 (xgate_parse_operand): Replace R_XGATE_PCREL_X with
452 BFD_RELOC_XGATE_PCREL_X.
454 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
457 * config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
458 with &fragP->fr_literal[0].
460 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
463 * config/tc-vax.c (md_estimate_size_before_relax): Replace
464 fragP->fr_literal with &fragP->fr_literal[0].
465 (md_convert_frag): Likewise.
467 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
470 * config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
471 with &fragP->fr_literal[0].
473 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
476 * config/tc-crx.c (getreg_image): Change argument type to int.
477 (md_convert_frag): Replace fragP->fr_literal with
478 &fragP->fr_literal[0].
480 2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
483 * onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
484 sprintf with memmove.
486 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
488 * config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
489 with &fragP->fr_literal[0].
491 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
494 * config/tc-cr16.c (md_assemble): Use memmove to concatenate
495 2 overlapping strings.
497 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
499 * config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
500 with &fragP->fr_literal[0].
502 2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
504 * config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
505 with &fragp->fr_literal[0].
506 * config/tc-microblaze.c (md_apply_fix): Likewise.
507 * config/tc-sh.c (md_convert_frag): Likewise.
509 2020-05-24 Jim Wilson <jimw@sifive.com>
512 * config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
513 asection to segT. New locals seg and subseg. Call subseg_set before
514 fix_new_exp. Call subseg_set after loop to restore original values.
516 2020-05-21 Alan Modra <amodra@gmail.com>
518 * atof-generic.c: Replace "if (x) free (x)" with "free (x)"
520 * config/obj-elf.c: Likewise.
521 * config/tc-aarch64.c: Likewise.
522 * config/tc-arm.c: Likewise.
523 * config/tc-m68k.c: Likewise.
524 * config/tc-nios2.c: Likewise.
525 * config/tc-tic30.c: Likewise.
529 * symbols.c: Likewise.
530 * testsuite/gas/all/test-gen.c: Likewise.
532 2020-05-20 Nelson Chu <nelson.chu@sifive.com>
534 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
535 * config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
536 Static variables which are used to set the ISA extensions. You can
537 use -march (or ELF build attributes) and -misa-spec to set them,
539 (ext_version_hash): The hash table used to handle the extensions
541 (init_ext_version_hash): Initialize the ext_version_hash according
542 to riscv_ext_version_table.
543 (riscv_get_default_ext_version): The callback function of
544 riscv_parse_subset_t. According to the choosed ISA spec,
545 get the default version for the specific extension.
546 (riscv_set_arch): Set the callback function.
547 (enum options, struct option md_longopts): Add new option -misa-spec.
548 (md_parse_option): Do not call riscv_set_arch for -march. We will
549 call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
550 to set default_isa_spec class.
551 (riscv_after_parse_args): Call init_ext_version_hash to initialize the
552 ext_version_hash, and then call riscv_set_arch to set the architecture
553 with versions according to default_arch_with_ext.
554 * testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
556 * testsuite/gas/riscv/attribute-03.d: Likewise.
557 * testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
558 already set it's version to 2p1 by march, so no need to use the default
559 2p2 version. For m-ext, we do not set the version by -march and ELF arch
560 attribute, so set the default 2p0 to it. For zicsr, it is not defined in
561 ISA spec 2p2, so set 0p0 to it.
562 * testsuite/gas/riscv/attribute-10.d: New testcase. The version of
563 zicsr is 2p0 according to ISA spec 20191213.
564 * config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
565 (DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
566 You can set them by configure options --with-arch and
567 --with-isa-spec, respectively.
568 (riscv_set_default_isa_spec): New function used to set the
570 (md_parse_option): Call riscv_set_default_isa_spec rather than
571 call riscv_get_isa_spec_class directly.
572 (riscv_after_parse_args): If the -isa-spec is not set, then we
573 set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
574 calling riscv_set_default_isa_spec.
575 * testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
576 the --with-isa-spec may be set to different ISA spec.
577 * testsuite/gas/riscv/attribute-02.d: Likewise.
578 * testsuite/gas/riscv/attribute-03.d: Likewise.
579 * testsuite/gas/riscv/attribute-04.d: Likewise.
580 * testsuite/gas/riscv/attribute-05.d: Likewise.
581 * testsuite/gas/riscv/attribute-06.d: Likewise.
582 * testsuite/gas/riscv/attribute-07.d: Likewise.
583 * configure.ac: Add configure options, --with-arch and
585 * configure: Regenerated.
586 * config.in: Regenerated.
587 * config/tc-riscv.c (default_priv_spec): Static variable which is
588 used to check if the CSR is valid for the chosen privilege spec. You
589 can use -mpriv-spec to set it.
590 (enum reg_class): We now get the CSR address from csr_extra_hash rather
591 than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
592 (riscv_init_csr_hashes): Only need to initialize one hash table
594 (riscv_csr_class_check): Change the return type to void. Don't check
595 the ISA dependency if -mcsr-check isn't set.
596 (riscv_csr_version_check): New function. Check and find the CSR address
597 from csr_extra_hash, according to default_priv_spec. Report warning
598 for the invalid CSR if -mcsr-check is set.
599 (reg_csr_lookup_internal): Updated.
600 (reg_lookup_internal): Likewise.
601 (md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
602 (enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
603 (md_parse_option): Call riscv_set_default_priv_version to set
605 (riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
606 privilege spec to the newest one.
607 (enum riscv_csr_class, struct riscv_csr_extra): Move them to
608 include/opcode/riscv.h.
609 * testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
610 to check the ISA dependency for CSR, so fix the spec version by adding
612 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
613 version warnings for the test case.
614 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
615 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
616 * gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
617 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
618 * gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
619 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
620 Check whether the CSR is valid when privilege version 1.9 is choosed.
621 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
622 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
623 Check whether the CSR is valid when privilege version 1.9.1 is choosed.
624 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
625 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
626 Check whether the CSR is valid when privilege version 1.10 is choosed.
627 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
628 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
629 Check whether the CSR is valid when privilege version 1.11 is choosed.
630 * gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
631 * config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
632 setting. You can set it by configure option --with-priv-spec.
633 (riscv_set_default_priv_spec): New function used to set the default
635 (md_parse_option): Call riscv_set_default_priv_spec rather than
636 call riscv_get_priv_spec_class directly.
637 (riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
638 default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
639 calling riscv_set_default_priv_spec.
640 * testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
641 the --with-priv-spec may be set to different privilege spec.
642 * testsuite/gas/riscv/priv-reg.d: Likewise.
643 * configure.ac: Add configure option --with-priv-spec.
644 * configure: Regenerated.
645 * config.in: Regenerated.
646 * config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
647 explicit_attr. Set it to TRUE if any ELF attribute is found.
648 (riscv_set_default_priv_spec): Try to set the default_priv_spec if
649 the priv attributes are set.
650 (md_assemble): Set the default_priv_spec according to the priv
651 attributes when we start to assemble instruction.
652 (riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
653 riscv_write_out_attrs. Update the arch and priv attributes. If we
654 don't set the corresponding ELF attributes, then try to output the
656 (riscv_set_public_attributes): If any ELF attribute or -march-attr
657 options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
658 to update the arch and priv attributes.
659 (s_riscv_attribute): Make sure all arch and priv attributes are set
660 before any instruction.
661 * testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
662 ELF attribute or -march-attr is set. If the priv attributes are not
663 set, then try to update them by the default setting (-mpriv-spec or
665 * testsuite/gas/riscv/attribute-02.d: Likewise.
666 * testsuite/gas/riscv/attribute-03.d: Likewise.
667 * testsuite/gas/riscv/attribute-04.d: Likewise.
668 * testsuite/gas/riscv/attribute-06.d: Likewise.
669 * testsuite/gas/riscv/attribute-07.d: Likewise.
670 * testsuite/gas/riscv/attribute-08.d: Likewise.
671 * testsuite/gas/riscv/attribute-09.d: Likewise.
672 * testsuite/gas/riscv/attribute-10.d: Likewise.
673 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
674 * testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
675 set by priv attributes must be supported.
676 * testsuite/gas/riscv/attribute-05.s: Likewise.
677 * testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
678 priv attributes according to the -mpriv-spec option.
679 * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
680 * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
681 * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
682 * testsuite/gas/riscv/priv-reg.d: Removed.
683 * testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
684 CSR according to the priv spec 1.9.
685 * testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
686 CSR according to the priv spec 1.9.1.
687 * testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
688 CSR according to the priv spec 1.10.
689 * testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
690 CSR according to the priv spec 1.11.
691 * config/tc-riscv.c (md_show_usage): Add descriptions about
693 * doc/c-riscv.texi: Likewise.
695 2020-05-19 Peter Bergner <bergner@linux.ibm.com>
697 * testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
698 * testsuite/gas/ppc/power9.d: Likewise.
699 * testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
700 pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
701 sync, wait, waitrsv>: Add tests.
702 * testsuite/gas/ppc/power10.d: Likewise.
704 2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
707 * config/tc-arm.c : Add arm_ext_v8r feature.
708 (it_fsm_post_encode): Check arm_ext_v8r feature.
709 (get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
711 2020-05-19 Alan Modra <amodra@gmail.com>
713 * write.c (write_contents): Use bfd_get_filename rather than
714 accessing bfd->filename directly. Use bfd_section_name rather
715 than accessing section->name directly.
717 2020-05-19 Alan Modra <amodra@gmail.com>
719 * symbols.c (local_symbol_make): Init all of lsy_flags.
721 2020-05-18 Alan Modra <amodra@gmail.com>
723 * symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
724 before looking at add_symbol->sy_flags.
726 2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
728 * config/tc-i386.c: Not handle lret/iret.
729 * testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
730 * testsuite/gas/i386/lfence-ret-b.d: Ditto.
731 * testsuite/gas/i386/lfence-ret-c.d: Ditto.
732 * testsuite/gas/i386/lfence-ret-d.d: Ditto.
733 * testsuite/gas/i386/lfence-ret.s: Ditto.
734 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
735 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
736 * testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
737 * testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
738 * testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
739 * testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
740 * testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
742 2020-05-15 Alan Modra <amodra@gmail.com>
743 Alex Coplan <alex.coplan@arm.com>
745 * symbols.c (struct local_symbol): Update comment.
746 (resolve_symbol_value): For resolved symbols equated to other
747 symbols, verify that the referenced symbol is not a local_symbol
748 before accessing sy_value. Don't leave symbol loops during
749 finalize_syms resolution.
750 * testsuite/gas/all/assign-bad-recursive.d: New test.
751 * testsuite/gas/all/assign-bad-recursive.l: Error output for test.
752 * testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
753 * testsuite/gas/all/gas.exp: Run it.
755 2020-05-14 Nick Clifton <nickc@redhat.com>
757 * po/sv.po: Updated Swedish translation.
759 2020-05-11 Alan Modra <amodra@gmail.com>
761 * testsuite/gas/ppc/scalarquad.d,
762 * testsuite/gas/ppc/scalarquad.s: New test.
763 * testsuite/gas/ppc/ppc.exp: Run it.
765 2020-05-11 Alan Modra <amodra@gmail.com>
767 * testsuite/gas/ppc/rightmost.d,
768 * testsuite/gas/ppc/rightmost.s: New test.
769 * testsuite/gas/ppc/ppc.exp: Run it.
771 2020-05-11 Alan Modra <amodra@gmail.com>
773 * testsuite/gas/ppc/xvtlsbb.d,
774 * testsuite/gas/ppc/xvtlsbb.s: New test.
775 * testsuite/gas/ppc/ppc.exp: Run it.
777 2020-05-11 Alan Modra <amodra@gmail.com>
779 * testsuite/gas/ppc/stringop.d,
780 * testsuite/gas/ppc/stringop.s: New test.
781 * testsuite/gas/ppc/ppc.exp: Run it.
783 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
785 * testsuite/gas/ppc/set_bool.d,
786 * testsuite/gas/ppc/set_bool.s: New test.
787 * testsuite/gas/ppc/ppc.exp: Run it.
789 2020-05-11 Alan Modra <amodra@gmail.com>
791 * testsuite/gas/ppc/bitmanip.d,
792 * testsuite/gas/ppc/bitmanip.s: New test.
793 * testsuite/gas/ppc/ppc.exp: Run it.
795 2020-05-11 Alan Modra <amodra@gmail.com>
797 * testsuite/gas/ppc/genpcv.d,
798 * testsuite/gas/ppc/genpcv.s: New test.
799 * testsuite/gas/ppc/ppc.exp: Run it.
801 2020-05-11 Alan Modra <amodra@gmail.com>
803 * testsuite/gas/ppc/maskmanip.d,
804 * testsuite/gas/ppc/maskmanip.s: New test.
805 * testsuite/gas/ppc/ppc.exp: Run it.
807 2020-05-11 Alan Modra <amodra@gmail.com>
808 Peter Bergner <bergner@linux.ibm.com>
810 * config/tc-ppc.c (pre_defined_registers): Add accumulators.
811 (md_assemble): Check acc specified in correct operand.
812 * testsuite/gas/ppc/outerprod.d,
813 * testsuite/gas/ppc/outerprod.s,
814 * testsuite/gas/ppc/vsx4.d,
815 * testsuite/gas/ppc/vsx4.s: New tests.
816 * testsuite/gas/ppc/ppc.exp: Run them.
818 2020-05-11 Alan Modra <amodra@gmail.com>
820 * testsuite/gas/ppc/simd_perm.d,
821 * testsuite/gas/ppc/simd_perm.s: New test.
822 * testsuite/gas/ppc/ppc.exp: Run it.
824 2020-05-11 Alan Modra <amodra@gmail.com>
826 * testsuite/gas/ppc/int128.d,
827 * testsuite/gas/ppc/int128.s: New test.
828 * testsuite/gas/ppc/ppc.exp: Run it.
830 2020-05-11 Alan Modra <amodra@gmail.com>
832 * testsuite/gas/ppc/vsx_32byte.d,
833 * testsuite/gas/ppc/vsx_32byte.s: New test.
834 * testsuite/gas/ppc/ppc.exp: Run it.
836 2020-05-11 Alan Modra <amodra@gmail.com>
838 * testsuite/gas/ppc/vec_mul.s,
839 * testsuite/gas/ppc/vec_mul.d: New test.
840 * testsuite/gas/ppc/ppc.exp: Run it.
842 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
844 * testsuite/gas/ppc/byte_rev.d,
845 * testsuite/gas/ppc/byte_rev.s: New test.
846 * testsuite/gas/ppc/ppc.exp: Run it.
848 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
850 * testsuite/gas/ppc/power10.d: Add paste. tests.
851 * testsuite/gas/ppc/power10.s: Likewise.
853 2020-05-11 Peter Bergner <bergner@linux.ibm.com>
855 * testsuite/gas/ppc/power10.s: New test.
856 * testsuite/gas/ppc/power10.d: Likewise.
857 * testsuite/gas/ppc/ppc.exp: Run it.
859 2020-05-11 Alan Modra <amodra@gmail.com>
861 * config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
863 * testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
864 place of -mfuture/-Mfuture.
865 * testsuite/gas/ppc/prefix-pcrel.d: Likewise.
866 * testsuite/gas/ppc/prefix-reloc.d: Likewise.
868 2020-05-06 Nick Clifton <nickc@redhat.com>
870 * po/sv.po: Updated Swedish translation.
872 2020-05-06 Nick Clifton <nickc@redhat.com>
875 * doc/as.texi (Preprocessing): Replace cross reference to not
876 existant document with a URL to the equivalent page in the GCC
879 2020-05-05 Nick Clifton <nickc@redhat.com>
881 * dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
882 construction of a DWARF-5 directory name table.
883 * testsuite/gas/elf/pr25917.d: Update expected output.
885 2020-05-05 Gunther Nikl <gnikl@justmail.de>
887 * config/tc-rx.c (elf_flags): Initialize for non-linux targets.
888 (md_parse_option): Remove initialization of elf_flags.
890 2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
893 * config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
894 * testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
895 * testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
897 2020-05-04 Nick Clifton <nickc@redhat.com>
900 * dwarf2dbg.c (out_dir_and_file_list): Check for the directory
901 table's existence before looking at its entries.
902 Also do not emit a default directory entry if there are no
905 * testsuite/gas/elf/pr25917.s: New test source file.
906 * testsuite/gas/elf/pr25917.d: New test driver.
907 * testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
909 2020-04-30 Alex Coplan <alex.coplan@arm.com>
911 * config/tc-aarch64.c (fix_insn): Implement for
912 AARCH64_OPND_UNDEFINED.
913 (parse_operands): Implement for AARCH64_OPND_UNDEFINED.
914 * testsuite/gas/aarch64/udf.s: New.
915 * testsuite/gas/aarch64/udf.d: New.
916 * testsuite/gas/aarch64/udf-invalid.s: New.
917 * testsuite/gas/aarch64/udf-invalid.l: New.
918 * testsuite/gas/aarch64/udf-invalid.d: New.
920 2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
922 * config/tc-rx.c (elf_flags): Reset default value.
923 (md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
925 2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
927 * config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
929 (microarch_earliest): New static variable.
930 (xg_translate_idioms): Translate "simcall" to "simcall 0" when
931 simcall opcode has mandatory parameter.
932 (xg_init_global_config): Initialize microarch_earliest.
934 2020-04-29 Nick Clifton <nickc@redhat.com>
937 * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
938 IMM0_8S and add support for IMM0_8U.
939 * testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
940 unsigned 8-bit immediate.
941 * testsuite/gas/sh/sh4a.d: Extended expected disassembly.
942 * testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
944 2020-04-27 Tamar Christina <tamar.christina@arm.com>
946 * NEWS: Add news entry for big-obj.
947 * config/tc-i386.c (i386_target_format): Support new format.
948 * doc/c-i386.texi: Add i386 support.
949 * testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
950 * testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
952 2020-04-27 Nick Clifton <nickc@redhat.com>
955 * dwarf2dbg.c (struct file_entry): Add auto_assigned field.
956 (assign_file_to_slot): New function. Fills in an entry in the
958 (allocate_filenum): Use new function.
959 (allocate_filename_to_slot): Use new function. If the specified
960 slot entry is already in use, but was chosen automatically then
961 reassign the automatic entry.
963 2020-04-26 Hongtao Liu <hongtao.liu@intel.com
965 * config/tc-i386.c (lfence_before_ret_shl): New member.
966 (load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
968 (insert_after_load): Issue warning for REP CMPS/SCAS.
969 (insert_before_before): Handle iret, Handle
970 -mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
971 (md_parse_option): Change -mlfence-before-ret=[none|not|or] to
972 -mlfence-before-ret=[none/not/or/shl/yes].
973 Enable -mlfence-before-ret=shl when
974 -mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
975 (md_show_usage): Ditto.
976 * doc/c-i386.texi: Ditto.
977 * testsuite/gas/i386/i386.exp: Add new testcases.
978 * testsuite/gas/i386/lfence-load-b.d: New.
979 * testsuite/gas/i386/lfence-load-b.e: New.
980 * testsuite/gas/i386/lfence-load.d: Modified.
981 * testsuite/gas/i386/lfence-load.e: New.
982 * testsuite/gas/i386/lfence-load.s: Modified.
983 * testsuite/gas/i386/lfence-ret-a.d: Modified.
984 * testsuite/gas/i386/lfence-ret-b.d: Modified.
985 * testsuite/gas/i386/lfence-ret-c.d: New.
986 * testsuite/gas/i386/lfence-ret-d.d: New.
987 * testsuite/gas/i386/lfence-ret.s: Modified.
988 * testsuite/gas/i386/x86-64-lfence-load-b.d: New.
989 * testsuite/gas/i386/x86-64-lfence-load.d: Modified.
990 * testsuite/gas/i386/x86-64-lfence-load.s: Modified.
991 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
992 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
993 * testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
994 * testsuite/gas/i386/x86-64-lfence-ret-d.d: New
995 * testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
996 * testsuite/gas/i386/x86-64-lfence-ret.e: New.
997 * testsuite/gas/i386/x86-64-lfence-ret.s: New.
999 2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
1002 * config/tc-xtensa.c (md_apply_fix): Replace
1003 BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
1004 BFD_RELOC_XTENSA_PDIFF{8,16,32} and
1005 BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
1006 * testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
1007 with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
1009 2020-04-22 Alan Modra <amodra@gmail.com>
1011 * config/obj-elf.c (elf_frob_symbol): Unconditionally remove
1012 symbol for ".symver .. remove".
1013 * doc/as.texi (.symver): Update.
1014 * testsuite/gas/symver/symver11.s: Make foo weak.
1015 * testsuite/gas/symver/symver11.d: Expect an error.
1016 * testsuite/gas/symver/symver7.d: Allow other random symbols.
1018 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1020 * testsuite/gas/symver/symver11.s: Add ".balign 8".
1022 2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
1025 * testsuite/gas/m68k/operands.s: Add tests for cmpi.
1026 * testsuite/gas/m68k/operands.d: Update.
1027 * testsuite/gas/m68k/op68000.d: Update for new error messages.
1029 2020-04-21 Tamar Christina <tamar.christina@arm.com>
1032 * testsuite/gas/arm/pr24753.d: New test.
1033 * testsuite/gas/arm/pr24753.s: New test.
1035 2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
1039 * NEWS: Mention .symver extension.
1040 * config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
1042 (obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
1043 add a version name. Add local, hidden and remove visibility
1045 (elf_frob_symbol): Handle the list of version names. Update the
1046 original symbol to local, hidden or remove it from the symbol
1048 (elf_frob_file_before_adjust): Handle the list of version names.
1049 * config/obj-elf.h (elf_visibility): New.
1050 (elf_versioned_name_list): Likewise.
1051 (elf_obj_sy): Change local to bitfield. Add rename, bad_version
1052 and visibility. Change versioned_name pointer to struct
1053 elf_versioned_name_list.
1054 * doc/as.texi: Update .symver directive.
1055 * testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
1056 error checking tests.
1057 * testsuite/gas/symver/symver6.d: New file.
1058 * testsuite/gas/symver/symver7.d: Likewise.
1059 * testsuite/gas/symver/symver7.s: Likewise.
1060 * testsuite/gas/symver/symver8.d: Likewise.
1061 * testsuite/gas/symver/symver8.s: Likewise.
1062 * testsuite/gas/symver/symver9.s: Likewise.
1063 * testsuite/gas/symver/symver9a.d: Likewise.
1064 * testsuite/gas/symver/symver9b.d: Likewise.
1065 * testsuite/gas/symver/symver10.s: Likewise.
1066 * testsuite/gas/symver/symver10a.d: Likewise.
1067 * testsuite/gas/symver/symver10b.d: Likewise.
1068 * testsuite/gas/symver/symver11.d: Likewise.
1069 * testsuite/gas/symver/symver11.s: Likewise.
1070 * testsuite/gas/symver/symver12.d: Likewise.
1071 * testsuite/gas/symver/symver12.s: Likewise.
1072 * testsuite/gas/symver/symver13.d: Likewise.
1073 * testsuite/gas/symver/symver13.s: Likewise.
1074 * testsuite/gas/symver/symver14.d: Likewise.
1075 * testsuite/gas/symver/symver14.l: Likewise.
1076 * testsuite/gas/symver/symver15.d: Likewise.
1077 * testsuite/gas/symver/symver15.l: Likewise.
1078 * testsuite/gas/symver/symver6.l: Removed.
1079 * testsuite/gas/symver/symver6.s: Updated.
1081 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1083 * config/tc-aarch64.c (parse_barrier_psb): Update error messages
1085 * testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
1086 * testsuite/gas/aarch64/system-2.s: Add new tsb tests.
1087 * testsuite/gas/aarch64/system.d: Update.
1089 2020-04-20 Sudakshina Das <sudi.das@arm.com>
1091 * testsuite/gas/aarch64/bti.d: Update -march option.
1092 * testsuite/gas/aarch64/illegal-bti.d: Remove.
1093 * testsuite/gas/aarch64/illegal-bti.l: Remove.
1094 * testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
1095 * testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
1097 2020-04-17 Alan Modra <amodra@gmail.com>
1099 * config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
1101 2020-04-16 Gagan Singh Sidhu <broly@mac.com>
1102 Nick Clifton <nickc@redhat.com>
1105 * config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
1107 * testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
1108 for the type-2 test.
1109 * testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
1110 targets running this test.
1112 2020-02-16 David Faust <david.faust@oracle.com>
1114 * testsuite/gas/bpf/bpf.exp: Run jump32 tests.
1115 * testsuite/gas/bpf/jump32.s: New file.
1116 * testsuite/gas/bpf/jump32.d: Likewise.
1118 2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
1120 * doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
1123 2020-04-08 Gunther Nikl <gnikl@justmail.de>
1125 * config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
1126 (md_pcrel_from): Remove prototytpe.
1127 * config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
1129 (md_pcrel_from_section): Remove duplicate prototype.
1130 * tc.h (md_pcrel_from_section): Add prototype.
1131 * config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
1132 * config/tc-arc.h (md_pcrel_from_section): Likewise.
1133 * config/tc-arm.h (md_pcrel_from_section): Likewise.
1134 * config/tc-avr.h (md_pcrel_from_section): Likewise.
1135 * config/tc-bfin.h (md_pcrel_from_section): Likewise.
1136 * config/tc-bpf.h (md_pcrel_from_section): Likewise.
1137 * config/tc-csky.h (md_pcrel_from_section): Likewise.
1138 * config/tc-d10v.h (md_pcrel_from_section): Likewise.
1139 * config/tc-d30v.h (md_pcrel_from_section): Likewise.
1140 * config/tc-epiphany.h (md_pcrel_from_section): Likewise.
1141 * config/tc-fr30.h (md_pcrel_from_section): Likewise.
1142 * config/tc-frv.h (md_pcrel_from_section): Likewise.
1143 * config/tc-iq2000.h (md_pcrel_from_section): Likewise.
1144 * config/tc-lm32.h (md_pcrel_from_section): Likewise.
1145 * config/tc-m32c.h (md_pcrel_from_section): Likewise.
1146 * config/tc-m32r.h (md_pcrel_from_section): Likewise.
1147 * config/tc-mcore.h (md_pcrel_from_section): Likewise.
1148 * config/tc-mep.h (md_pcrel_from_section): Likewise.
1149 * config/tc-metag.h (md_pcrel_from_section): Likewise.
1150 * config/tc-microblaze.h (md_pcrel_from_section): Likewise.
1151 * config/tc-mmix.h (md_pcrel_from_section): Likewise.
1152 * config/tc-moxie.h (md_pcrel_from_section): Likewise.
1153 * config/tc-msp430.h (md_pcrel_from_section): Likewise.
1154 * config/tc-mt.h (md_pcrel_from_section): Likewise.
1155 * config/tc-or1k.h (md_pcrel_from_section): Likewise.
1156 * config/tc-ppc.h (md_pcrel_from_section): Likewise.
1157 * config/tc-rl78.h (md_pcrel_from_section): Likewise.
1158 * config/tc-rx.h (md_pcrel_from_section): Likewise.
1159 * config/tc-s390.h (md_pcrel_from_section): Likewise.
1160 * config/tc-sh.h (md_pcrel_from_section): Likewise.
1161 * config/tc-xc16x.h (md_pcrel_from_section): Likewise.
1162 * config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
1163 * config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
1164 md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
1165 md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
1166 md_apply_fix3): Delete prototypes.
1168 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1170 * NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
1173 2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
1175 * doc/c-z80.texi: Fix @xref warnings.
1177 2020-04-07 Lili Cui <lili.cui@intel.com>
1179 * config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
1180 (cpu_noarch): Likewise.
1181 * doc/c-i386.texi: Document TSXLDTRK.
1182 * testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
1183 * testsuite/gas/i386/tsxldtrk.d: Likewise.
1184 * testsuite/gas/i386/tsxldtrk.s: Likewise.
1185 * testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
1187 2020-04-02 Lili Cui <lili.cui@intel.com>
1189 * config/tc-i386.c (cpu_arch): Add .serialize.
1190 (cpu_noarch): Likewise.
1191 * doc/c-i386.texi: Document serialize.
1192 * testsuite/gas/i386/i386.exp: Run serialize tests
1193 * testsuite/gas/i386/serialize.d: Likewise.
1194 * testsuite/gas/i386/x86-64-serialize.d: Likewise.
1195 * testsuite/gas/i386/serialize.s: Likewise.
1197 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1199 * testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
1200 * testsuite/gas/elf/section12b.d: Likewise.
1201 * testsuite/gas/elf/section16a.d: Likewise.
1202 * testsuite/gas/elf/section16b.d: Likewise.
1204 2020-04-02 Gunther Nikl <gnikl@justmail.de>
1206 * config/tc-m68k.c (m68k_ip): Fix range check for index register
1207 with a suppressed address register.
1209 2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
1212 * config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
1213 * testsuite/gas/i386/localpic.s: Add a test for relocation
1214 against local absolute symbol.
1215 * testsuite/gas/i386/x86-64-localpic.s: Likewise.
1216 * testsuite/gas/i386/localpic.d: Updated.
1217 * testsuite/gas/i386/x86-64-localpic.d: Likewise.
1218 * testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
1220 2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1223 * testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
1224 * testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
1225 * testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
1226 testsuite/gas/i386/x86-64-jump.d.
1227 * gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
1228 Incorporate changes to
1229 gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
1230 * testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
1231 changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
1232 * testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
1233 * testsuite/gas/i386/x86-64-branch-3.d: Likewise.
1235 2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
1239 * dwarf2dbg.c: Do not include "bignum.h".
1241 2020-03-30 Nelson Chu <nelson.chu@sifive.com>
1243 * testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
1244 * testsuite/gas/riscv/alias-csr.s: Likewise.
1245 * testsuite/gas/riscv/no-aliases-csr.d: Move this
1246 to priv-reg-pseudo-noalias.
1247 * testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
1248 * testsuite/gas/riscv/bad-csr.l: Likewise.
1249 * testsuite/gas/riscv/bad-csr.s: Likewise.
1250 * testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
1251 * testsuite/gas/riscv/satp.s: Likewise.
1252 * testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
1253 csr instruction, including alias-csr testcase.
1254 * testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
1255 * testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
1256 pseudo instruction with objdump -Mno-aliases.
1257 * testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
1258 * testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
1259 * testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
1260 * testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
1261 * testsuite/gas/riscv/priv-reg.s: Likewise.
1262 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1263 * testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
1264 * testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
1266 2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
1268 * config/obj-coff.c (obj_coff_section): Set the bss flag on
1269 sections with the "b" attribute.
1271 2020-03-22 Alan Modra <amodra@gmail.com>
1273 * testsuite/gas/s12z/truncated.d: Update expected output.
1275 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1278 * config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
1279 * doc/c-z80.texi: Update documentation.
1281 2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
1286 Fix disassembling ED+A4/AC/B4/BC opcodes.
1287 Fix assembling lines containing colonless label and instruction
1288 with first operand inside parentheses.
1289 Fix registration of unsupported by target CPU registers.
1290 * config/tc-z80.c: See above.
1291 * config/tc-z80.h: See above.
1292 * testsuite/gas/z80/colonless.d: Update test.
1293 * testsuite/gas/z80/colonless.s: Likewise.
1294 * testsuite/gas/z80/ez80_adl_all.d: Likewise.
1295 * testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
1296 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1297 * testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
1298 * testsuite/gas/z80/r800_unsup_regs.d: Likewise.
1299 * testsuite/gas/z80/unsup_regs.s: Likewise.
1300 * testsuite/gas/z80/z180_unsup_regs.d: Likewise.
1301 * testsuite/gas/z80/z80.exp: Likewise.
1302 * testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
1303 * testsuite/gas/z80/z80_unsup_regs.d: Likewise.
1304 * testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
1306 2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
1309 * config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
1310 (parse_operands): Handle new operand codes.
1311 (do_neon_dyadic_long): Make shape check accept the scalar variants.
1312 (asm_opcode_insns): Fix operand codes for vaddl and vsubl.
1313 * testsuite/gas/arm/mve-vaddsub-it.s: New test.
1314 * testsuite/gas/arm/mve-vaddsub-it.d: New test.
1315 * testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
1316 * testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
1317 * testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
1318 * testsuite/gas/arm/nomve-vaddsub-it.d: New test.
1320 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1322 * NEWS: Mention x86 assembler options for CVE-2020-0551.
1324 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1326 * testsuite/gas/i386/i386.exp: Run new tests.
1327 * testsuite/gas/i386/lfence-byte.d: New file.
1328 * testsuite/gas/i386/lfence-byte.e: Likewise.
1329 * testsuite/gas/i386/lfence-byte.s: Likewise.
1330 * testsuite/gas/i386/lfence-indbr-a.d: Likewise.
1331 * testsuite/gas/i386/lfence-indbr-b.d: Likewise.
1332 * testsuite/gas/i386/lfence-indbr-c.d: Likewise.
1333 * testsuite/gas/i386/lfence-indbr.e: Likewise.
1334 * testsuite/gas/i386/lfence-indbr.s: Likewise.
1335 * testsuite/gas/i386/lfence-load.d: Likewise.
1336 * testsuite/gas/i386/lfence-load.s: Likewise.
1337 * testsuite/gas/i386/lfence-ret-a.d: Likewise.
1338 * testsuite/gas/i386/lfence-ret-b.d: Likewise.
1339 * testsuite/gas/i386/lfence-ret.s: Likewise.
1340 * testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
1341 * testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
1342 * testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
1343 * testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
1344 * testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
1345 * testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
1346 * testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
1347 * testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
1348 * testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
1349 * testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
1350 * testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
1351 * testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
1353 2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
1355 * config/tc-i386.c (lfence_after_load): New.
1356 (lfence_before_indirect_branch_kind): New.
1357 (lfence_before_indirect_branch): New.
1358 (lfence_before_ret_kind): New.
1359 (lfence_before_ret): New.
1362 (insert_lfence_after): New.
1363 (insert_lfence_before): New.
1364 (md_assemble): Call insert_lfence_before and insert_lfence_after.
1366 (OPTION_MLFENCE_AFTER_LOAD): New.
1367 (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
1368 (OPTION_MLFENCE_BEFORE_RET): New.
1369 (md_longopts): Add -mlfence-after-load=,
1370 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1371 (md_parse_option): Handle -mlfence-after-load=,
1372 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1373 (md_show_usage): Display -mlfence-after-load=,
1374 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1375 (i386_cons_align): New.
1376 * config/tc-i386.h (i386_cons_align): New.
1377 (md_cons_align): New.
1378 * doc/c-i386.texi: Document -mlfence-after-load=,
1379 -mlfence-before-indirect-branch= and -mlfence-before-ret=.
1381 2020-03-11 Nick Clifton <nickc@redhat.com>
1385 * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
1386 (DWARF2_FILE_SIZE_NAME): Default to -1.
1387 (DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
1388 whichever is higher.
1389 (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
1390 (NUM_MD5_BYTES): Define.
1391 (struct file entry): Add md5 field.
1392 (get_filenum): Delete and replace with...
1393 (get_basename): New function.
1394 (get_directory_table_entry): New function.
1395 (allocate_filenum): New function.
1396 (allocate_filename_to_slot): New function.
1397 (dwarf2_where): Use new functions.
1398 (dwarf2_directive_filename): Add support for extended .file
1400 (dwarf2_directive_loc): Allow the use of file number zero with
1402 (out_file_list): Rename to...
1403 (out_dir_and_file_list): Add DWARF 5 support.
1404 (out_debug_line): Emit extra values into the section header for
1406 (out_debug_str): Allow for file 0 to be used with DWARF 5.
1407 * doc/as.texi (.file): Update the description of this pseudo-op.
1408 * testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
1409 * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
1410 * testsuite/gas/lns/lns-diag-1.l: Update expected error message.
1411 * NEWS: Mention the new feature.
1413 2020-03-10 Alan Modra <amodra@gmail.com>
1415 * config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
1416 to avoid signed overflow.
1417 * config/tc-mcore.c (md_assemble): Likewise.
1418 * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
1419 * config/tc-nds32.c (SET_ADDEND): Likewise.
1420 * config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
1422 2020-03-09 Jan Beulich <jbeulich@suse.com>
1424 * testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
1425 * testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
1426 testsuite/gas/i386/avx-intel.d: Adjust expectations.
1428 2020-03-07 Alan Modra <amodra@gmail.com>
1430 * testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
1433 2020-03-06 Nick Clifton <nickc@redhat.com>
1436 * dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
1437 0 if the dwarf_level is 5 or more. Complain if a filename follows
1439 * testsuite/gas/elf/dwarf-5-file0.s: New test.
1440 * testsuite/gas/elf/dwarf-5-file0.d: New test driver.
1441 * testsuite/gas/elf/elf.exp: Run the new test.
1444 * config/tc-ia64.h (DWARF2_VERISION): Fix typo.
1445 * doc/as.texi: Fix another typo.
1447 2020-03-06 Nick Clifton <nickc@redhat.com>
1450 * as.c (dwarf_level): Define.
1451 (show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
1452 (parse_args): Add support for the new options.
1453 as.h (dwarf_level): Prototype.
1454 * dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
1456 * config/tc-ia64.h (DWARF2_VERISION): Update definition.
1457 (DWARF2_LINE_VERSION): Remove definition.
1458 * doc/as.texi: Document the new options.
1460 2020-03-06 Nick Clifton <nickc@redhat.com>
1463 * as.c (main): Allow matching input and outputs when they are
1466 2020-03-06 Jan Beulich <jbeulich@suse.com>
1468 * config/tc-i386.c (match_mem_size): Generalize broadcast special
1470 (check_VecOperands): Zap xmmword/ymmword/zmmword when more than
1471 one of byte/word/dword/qword is set alongside a SIMD register in
1472 a template's operand.
1474 2020-03-06 Jan Beulich <jbeulich@suse.com>
1476 * config/tc-i386.c (match_template): Extend code in logic
1477 rejecting certain suffixes in certain modes to also cover mask
1478 register use and VecSIB. Drop special casing of broadcast. Skip
1479 immediates in the check.
1481 2020-03-06 Jan Beulich <jbeulich@suse.com>
1483 * config/tc-i386.c (match_template): Fold duplicate code in
1484 logic rejecting certain suffixes in certain modes. Drop
1487 2020-03-06 Jan Beulich <jbeulich@suse.com>
1489 * config/tc-i386.c (process_suffix): Exlucde !vexw insns
1490 alongside !norex64 ones.
1491 * testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
1492 with both 32- and 64-bit GPR operands.
1493 * testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
1494 32- and 64-bit GPR operands.
1495 * testsuite/gas/i386/x86-64-avx512bw-intel.d,
1496 testsuite/gas/i386/x86-64-avx512bw.d,
1497 testsuite/gas/i386/x86-64-avx512f-intel.d,
1498 testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
1500 2020-03-06 Jan Beulich <jbeulich@suse.com>
1502 * config/tc-i386.c (md_assemble): Drop use of rex64.
1503 (process_suffix): For REX.W for 64-bit CRC32.
1505 2020-03-06 Jan Beulich <jbeulich@suse.com>
1507 * config/tc-i386.c (i386_addressing_mode): For 32-bit
1508 addressing for MPX insns without base/index.
1509 * testsuite/gas/i386/mpx-16bit.s,
1510 * testsuite/gas/i386/mpx-16bit.d: New.
1511 * testsuite/gas/i386/i386.exp: Run new test.
1513 2020-03-06 Jan Beulich <jbeulich@suse.com>
1515 * testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
1516 testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
1517 testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
1518 testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
1519 * testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
1520 as well as a BSWAP one.
1521 * testsuite/gas/i386/rdpid.s: Add 16-bit case.
1522 * testsuite/gas/i386/sse2-16bit.s: Cover more insns.
1523 * testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
1524 testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
1525 testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
1526 testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
1527 testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
1528 testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
1529 testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
1530 testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
1531 testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
1532 testsuite/gas/i386/vmx.d: Adjust expectations.
1534 2020-03-06 Jan Beulich <jbeulich@suse.com>
1536 * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
1537 from having their operands swapped.
1538 * testsuite/gas/i386/waitpkg.s,
1539 testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
1540 3-operand cases as well as testing of 16-bit code generation.
1541 * testsuite/gas/i386/waitpkg.d,
1542 testsuite/gas/i386/waitpkg-intel.d,
1543 testsuite/gas/i386/x86-64-waitpkg.d,
1544 testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
1546 2020-03-04 Nelson Chu <nelson.chu@sifive.com>
1548 * config/tc-riscv.c (percent_op_utype): Support the modifier
1550 * doc/c-riscv.texi: Add documentation.
1551 * testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
1552 modifier %got_pcrel_hi.
1553 * testsuite/gas/riscv/no-relax-reloc.s: Likewise.
1554 * testsuite/gas/riscv/relax-reloc.d: Likewise.
1555 * testsuite/gas/riscv/relax-reloc.s: Likewise.
1557 * doc/c-riscv.texi (relocation modifiers): Add documentation.
1558 (RISC-V-Formats): Update the section name from "Instruction Formats"
1559 to "RISC-V Instruction Formats".
1561 2020-03-04 Alexandre Oliva <oliva@adacore.com>
1563 * config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
1564 detected in a section which does not have at least 4 byte
1566 * testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
1567 * testsuite/gas/arm/ldr-t.s: Likewise.
1568 * testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
1569 * testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
1570 disassembly, ignoring any NOPs that may have been inserted because
1571 of section alignment.
1572 * testsuite/gas/arm/ldr-t.d: Likewise.
1574 2020-03-04 Jan Beulich <jbeulich@suse.com>
1576 * config/tc-i386.c (cpu_arch): Add .sev_es entry.
1577 * doc/c-i386.texi: Mention sev_es.
1578 * testsuite/gas/i386/arch-13.s: Add SEV-ES case.
1579 * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
1581 * testsuite/gas/i386/arch-13-znver1.d,
1582 testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
1584 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1586 * config/tc-i386.c (match_template): Replace ignoresize and
1587 defaultsize with mnemonicsize.
1588 (process_suffix): Likewise.
1590 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1593 * config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
1594 instruction LD IY,(HL).
1595 * testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
1596 * testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
1597 * testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
1598 * testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
1600 2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
1603 * testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
1604 x86-64-default-suffix-avx.
1605 * testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
1606 vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
1607 * testsuite/gas/i386/noreg64.d: Updated.
1608 * testsuite/gas/i386/noreg64.l: Likewise.
1609 * testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
1610 * testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
1611 * testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
1613 2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
1616 * config/tc-z80.c (contains_register): Prevent an illegal memory
1617 access when checking an expression for a register name.
1619 2020-03-03 Alan Modra <amodra@gmail.com>
1621 * config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
1624 2020-03-02 Alan Modra <amodra@gmail.com>
1626 * config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
1627 * config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
1629 * config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
1630 (s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
1631 (s3_s_score_lcomm): Likewise.
1632 * config/tc-score7.c: Similarly.
1633 * read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
1635 2020-02-28 YunQiang Su <syq@debian.org>
1638 * config/tc-mips.c (fix_loongson3_llsc): Compare label value
1639 to handle multi-labels.
1640 (has_label_name): New.
1642 2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
1644 * config/tc-arm.c (enum pred_instruction_type): Remove
1645 NEUTRAL_IT_NO_VPT_INSN predication type.
1646 (cxn_handle_predication): Modify to require condition suffixes.
1647 (handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
1648 * testsuite/gas/arm/cde-scalar.s: Update test.
1649 * testsuite/gas/arm/cde-warnings.l: Update test.
1650 * testsuite/gas/arm/cde-warnings.s: Update test.
1652 2020-02-26 Alan Modra <amodra@gmail.com>
1654 * config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
1655 N_() on empty string.
1657 2020-02-26 Alan Modra <amodra@gmail.com>
1659 * read.c (read_a_source_file): Call strncpy with length one
1660 less than size of original_case_string.
1662 2020-02-26 Alan Modra <amodra@gmail.com>
1664 * config/obj-elf.c: Indent labels correctly.
1665 * config/obj-macho.c: Likewise.
1666 * config/tc-aarch64.c: Likewise.
1667 * config/tc-alpha.c: Likewise.
1668 * config/tc-arm.c: Likewise.
1669 * config/tc-cr16.c: Likewise.
1670 * config/tc-crx.c: Likewise.
1671 * config/tc-frv.c: Likewise.
1672 * config/tc-i386-intel.c: Likewise.
1673 * config/tc-i386.c: Likewise.
1674 * config/tc-ia64.c: Likewise.
1675 * config/tc-mn10200.c: Likewise.
1676 * config/tc-mn10300.c: Likewise.
1677 * config/tc-nds32.c: Likewise.
1678 * config/tc-riscv.c: Likewise.
1679 * config/tc-s12z.c: Likewise.
1680 * config/tc-xtensa.c: Likewise.
1681 * config/tc-z80.c: Likewise.
1683 * symbols.c: Likewise.
1684 * write.c: Likewise.
1686 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
1688 * config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
1689 we are assembling instruction with CSR. Call riscv_csr_read_only_check
1690 after parsing all arguments.
1691 (enum csr_insn_type): New enum is used to classify the CSR instruction.
1692 (riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
1693 are used to check if we write a read-only CSR by the CSR instruction.
1694 * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
1695 all CSR for the read-only CSR checking.
1696 * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
1697 * testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
1698 * testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
1699 all CSR instructions for the read-only CSR checking.
1700 * testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
1701 * testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
1703 * config/tc-riscv.c (struct riscv_set_options): New field csr_check.
1704 (riscv_opts): Initialize it.
1705 (reg_lookup_internal): Check the `riscv_opts.csr_check`
1706 before doing the CSR checking.
1707 (enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
1708 (md_longopts): Add mcsr-check and mno-csr-check.
1709 (md_parse_option): Handle new enum option values.
1710 (s_riscv_option): Handle new long options.
1711 * doc/c-riscv.texi: Add description for the new .option and assembler
1713 * testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
1715 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
1717 * config/tc-riscv.c (csr_extra_hash): New.
1718 (enum riscv_csr_class): New enum. Used to decide
1719 whether or not this CSR is legal in the current ISA string.
1720 (struct riscv_csr_extra): New structure to hold all extra information
1722 (riscv_init_csr_hashes): New. According to the DECLARE_CSR and
1723 DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
1724 Call hash_reg_name to insert CSR address into reg_names_hash.
1725 (reg_csr_lookup_internal, riscv_csr_class_check): New functions.
1726 Decide whether the CSR is valid according to the csr_extra_hash.
1727 (reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
1728 (init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
1729 not a boolean. This is same as riscv_init_csr_hash, so keep the
1731 (md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
1732 * testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
1733 * testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
1734 * testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
1735 file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
1736 f-ext CSR are not allowed.
1737 * testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
1738 * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
1739 source file is `priv-reg.s`, and the ISA is rv64if, so the
1740 rv32-only CSR are not allowed.
1741 * testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
1743 2020-02-21 Alan Modra <amodra@gmail.com>
1745 * config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
1746 (tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
1748 2020-02-21 Alan Modra <amodra@gmail.com>
1751 * config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
1752 on section size adjustment, instead perform another write if
1753 exec header size is larger than section size.
1755 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1757 * doc/c-riscv.texi: Add the doc entries for -march-attr/
1758 -mno-arch-attr command line options.
1760 2020-02-19 Nelson Chu <nelson.chu@sifive.com>
1762 * testsuite/gas/riscv/c-add-addi.d: New testcase.
1763 * testsuite/gas/riscv/c-add-addi.s: Likewise.
1765 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1768 * config/tc-z80.c (md_parse_option): Do not use an underscore
1769 prefix for local labels in SDCC compatability mode.
1770 (z80_start_line_hook): Remove SDCC dollar label support.
1771 * testsuite/gas/z80/sdcc.d: Update expected disassembly.
1772 * testsuite/gas/z80/sdcc.s: Likewise.
1774 2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
1777 * config/tc-z80.c: Add -march option.
1778 * doc/as.texi: Update Z80 documentation.
1779 * doc/c-z80.texi: Likewise.
1780 * testsuite/gas/z80/ez80_adl_all.d: Update command line.
1781 * testsuite/gas/z80/ez80_adl_suf.d: Likewise.
1782 * testsuite/gas/z80/ez80_pref_dis.d: Likewise.
1783 * testsuite/gas/z80/ez80_z80_all.d: Likewise.
1784 * testsuite/gas/z80/ez80_z80_suf.d: Likewise.
1785 * testsuite/gas/z80/gbz80_all.d: Likewise.
1786 * testsuite/gas/z80/r800_extra.d: Likewise.
1787 * testsuite/gas/z80/r800_ii8.d: Likewise.
1788 * testsuite/gas/z80/r800_z80_doc.d: Likewise.
1789 * testsuite/gas/z80/sdcc.d: Likewise.
1790 * testsuite/gas/z80/z180.d: Likewise.
1791 * testsuite/gas/z80/z180_z80_doc.d: Likewise.
1792 * testsuite/gas/z80/z80_doc.d: Likewise.
1793 * testsuite/gas/z80/z80_ii8.d: Likewise.
1794 * testsuite/gas/z80/z80_in_f_c.d: Likewise.
1795 * testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
1796 * testsuite/gas/z80/z80_out_c_0.d: Likewise.
1797 * testsuite/gas/z80/z80_sli.d: Likewise.
1798 * testsuite/gas/z80/z80n_all.d: Likewise.
1799 * testsuite/gas/z80/z80n_reloc.d: Likewise.
1801 2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
1803 * config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
1804 with GNU_PROPERTY_X86_FEATURE_2_MMX.
1805 * testsuite/gas/i386/i386.exp: Run property-3 and
1807 * testsuite/gas/i386/property-3.d: New file.
1808 * testsuite/gas/i386/property-3.s: Likewise.
1809 * testsuite/gas/i386/x86-64-property-3.d: Likewise.
1811 2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
1813 * config/tc-i386.c (cpu_arch): Add .popcnt.
1814 * doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
1815 Add a tab before @samp{.sse4a}.
1817 2020-02-17 Jan Beulich <jbeulich@suse.com>
1819 * config/tc-i386.c (process_suffix): Don't try to guess a suffix
1820 for AddrPrefixOpReg templates. Combine the two pieces of
1821 addrprefixopreg handling. Reject 16-bit address reg in 64-bit
1824 2020-02-17 Jan Beulich <jbeulich@suse.com>
1827 * config/tc-i386.c (md_assemble): Also suppress operand
1828 swapping for MONITOR{,X} and MWAIT{,X}.
1829 * testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
1830 Add Intel syntax monitor/mwait tests.
1831 * testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
1832 Adjust expectations.
1833 *testsuite/gas/i386/sse3-intel.d,
1834 testsuite/gas/i386/x86-64-sse3-intel.d: New.
1835 * testsuite/gas/i386/i386.exp: Run new tests.
1837 2020-02-17 Jan Beulich <jbeulich@suse.com>
1840 * config/tc-i386.c (process_suffix): Re-work Intel-syntax
1841 [XYZ]MMWord memory operand ambiguity recognition logic (largely
1843 * testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
1845 * testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
1846 * testsuite/gas/i386/avx512dq-inval.l,
1847 testsuite/gas/i386/inval-avx.l,
1848 testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
1849 * testsuite/gas/i386/avx512vl-ambig.s,
1850 testsuite/gas/i386/avx512vl-ambig.l: New.
1851 * testsuite/gas/i386/i386.exp: Run new test.
1853 2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
1855 * config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
1857 * doc/c-i386.texi: Document sse4a and nosse4a.
1859 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1861 * doc/c-i386.texi: Remove the old movsx and movzx documentation
1864 2020-02-14 Jan Beulich <jbeulich@suse.com>
1867 * config/tc-i386.c (md_assemble): Move movsx/movzx special
1869 (process_suffix): ... here. Consider just the first operand
1871 (check_long_reg): Drop opcode 0x63 special case again.
1872 * testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
1873 testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
1874 Move ambiguous operand size tests ...
1875 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
1876 testsuite/gas/i386/noreg64.s: ... here.
1877 * testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
1878 testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
1879 testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
1880 testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
1881 testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
1882 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
1883 testsuite/gas/i386/x86-64-movsxd.d,
1884 testsuite/gas/i386/x86-64-movsxd-intel.d,
1885 testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
1886 Adjust expectations.
1887 * testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
1888 testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
1889 testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
1890 * testsuite/gas/i386/i386.exp: Run new tests.
1892 2020-02-14 Jan Beulich <jbeulich@suse.com>
1894 * config/tc-i386.c (process_operands): Also skip segment
1895 override prefix emission if it matches an already present one.
1896 * testsuite/gas/i386/prefix32.s: Add double segment override
1898 * testsuite/gas/i386/prefix32.l: Adjust expectations.
1900 2020-02-14 Jan Beulich <jbeulich@suse.com>
1902 * config/tc-i386.c (process_operands): Drop ineffectual segment
1903 overrides when optimizing.
1904 * testsuite/gas/i386/lea-optimize.d: New.
1905 * testsuite/gas/i386/i386.exp: Run new test.
1907 2020-02-14 Jan Beulich <jbeulich@suse.com>
1909 * config/tc-i386.c (process_operands): Also check insn prefix
1910 for ineffectual segment override warning. Don't cover possible
1911 VEX/EVEX encoded insns there.
1912 * testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
1913 testsuite/gas/i386/lea.e: New.
1914 * testsuite/gas/i386/i386.exp: Run new test.
1916 2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
1919 * doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
1922 2020-02-13 Fangrui Song <maskray@google.com>
1923 H.J. Lu <hongjiu.lu@intel.com>
1926 * config/tc-i386.c (tc_i386_fix_adjustable): Don't check
1927 BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
1928 * testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
1929 * testsuite/gas/i386/relax-5.d: New file.
1930 * testsuite/gas/i386/relax-5.s: Likewise.
1931 * testsuite/gas/i386/x86-64-relax-4.d: Likewise.
1932 * testsuite/gas/i386/x86-64-relax-4.s: Likewise.
1934 2020-02-13 Jan Beulich <jbeulich@suse.com>
1936 * config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
1939 2020-02-12 Jan Beulich <jbeulich@suse.com>
1941 * config/tc-i386.c (avx512): New (at file scope), moved from
1942 (check_VecOperands): ... here.
1943 (process_suffix): Add [XYZ]MMword operand size handling.
1944 * testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
1945 * testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
1947 * testsuite/gas/i386/avx512dq-inval.l,
1948 testsuite/gas/i386/noavx512-2.l: Adjust expectations.
1950 2020-02-12 Jan Beulich <jbeulich@suse.com>
1953 * config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
1955 * config/tc-i386-intel.c (i386_intel_operand): Also handle
1956 CALL/JMP in O_tbyte_ptr case.
1957 * doc/c-i386.texi: Mention far call and full pointer load ISA
1959 * testsuite/gas/i386/x86-64-branch-3.s,
1960 testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
1961 * testsuite/gas/i386/x86-64-branch-3.d,
1962 testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
1963 * testsuite/gas/i386/x86-64-branch-5.l,
1964 testsuite/gas/i386/x86-64-branch-5.s: New.
1965 * testsuite/gas/i386/i386.exp: Run new test.
1967 2020-02-12 Jan Beulich <jbeulich@suse.com>
1970 * config/tc-i386.c (REGISTER_WARNINGS): Delete.
1971 (check_byte_reg): Skip only source operand of CRC32. Drop Non-
1972 64-bit-only warning.
1973 (check_word_reg): Consistently error on mismatching register
1975 * testsuite/gas/i386/general.s: Replace dword GPR with word one
1976 for movw. Replace suffix / GPR for orb.
1977 * testsuite/gas/i386/inval.s: Add tests for movw with dword and
1978 byte GPRs as well as ones for inb/outb with a word accumulator.
1979 * testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
1980 testsuite/gas/i386/inval.l: Adjust expectations.
1982 2020-02-12 Jan Beulich <jbeulich@suse.com>
1984 * config/tc-i386.c (operand_type_register_match): Also fall
1985 through initial two if()-s when the template allows for a GPR
1986 operand. Adjust comment.
1988 2020-02-11 Jan Beulich <jbeulich@suse.com>
1990 (struct _i386_insn): New field "short_form".
1991 (optimize_encoding): Drop setting of shortform field.
1992 (process_suffix): Set i.short_form. Replace shortform use.
1993 (process_operands): Replace shortform use.
1995 2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
1997 * config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
1998 loop initial declaration.
2000 2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
2002 * config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
2003 instructions that can have 5 arguments.
2004 (enum operand_parse_code): Add new operands.
2005 (parse_operands): Account for new operands.
2007 (enum neon_shape_el): Introduce P suffixes for coprocessor.
2008 (neon_select_shape): Account for P suffix.
2009 (LOW1): Move macro to global position.
2010 (HI4): Move macro to global position.
2011 (vcx_assign_vec_d): New.
2012 (vcx_assign_vec_m): New.
2013 (vcx_assign_vec_n): New.
2014 (enum vcx_reg_type): New.
2015 (vcx_get_reg_type): New.
2016 (vcx_size_pos): New.
2018 (vcx_handle_shape): New.
2019 (vcx_ensure_register_in_range): New.
2020 (vcx_handle_register_arguments): New.
2021 (vcx_handle_insn_block): New.
2022 (vcx_handle_common_checks): New.
2026 * testsuite/gas/arm/cde-missing-fp.d: New test.
2027 * testsuite/gas/arm/cde-missing-fp.l: New test.
2028 * testsuite/gas/arm/cde-missing-mve.d: New test.
2029 * testsuite/gas/arm/cde-missing-mve.l: New test.
2030 * testsuite/gas/arm/cde-mve-or-neon.d: New test.
2031 * testsuite/gas/arm/cde-mve-or-neon.s: New test.
2032 * testsuite/gas/arm/cde-mve.s: New test.
2033 * testsuite/gas/arm/cde-warnings.l:
2034 * testsuite/gas/arm/cde-warnings.s:
2035 * testsuite/gas/arm/cde.d:
2036 * testsuite/gas/arm/cde.s:
2038 2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
2039 Matthew Malcomson <matthew.malcomson@arm.com>
2041 * config/tc-arm.c (arm_ext_cde*): New feature sets for each
2042 CDE coprocessor that can be enabled.
2043 (enum pred_instruction_type): New pred type.
2044 (BAD_NO_VPT): New error message.
2045 (BAD_CDE): New error message.
2046 (BAD_CDE_COPROC): New error message.
2047 (enum operand_parse_code): Add new immediate operands.
2048 (parse_operands): Account for new immediate operands.
2049 (check_cde_operand): New.
2050 (cde_coproc_enabled): New.
2051 (cde_coproc_pos): New.
2052 (cde_handle_coproc): New.
2053 (cxn_handle_predication): New.
2054 (do_custom_instruction_1): New.
2055 (do_custom_instruction_2): New.
2056 (do_custom_instruction_3): New.
2069 (handle_pred_state): Define new IT block behaviour.
2070 (insns): Add newn CX*{,d}{,a} instructions.
2071 (CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
2072 Define new cdecp extension strings.
2073 * doc/c-arm.texi: Document new cdecp extension arguments.
2074 * testsuite/gas/arm/cde-scalar.d: New test.
2075 * testsuite/gas/arm/cde-scalar.s: New test.
2076 * testsuite/gas/arm/cde-warnings.d: New test.
2077 * testsuite/gas/arm/cde-warnings.l: New test.
2078 * testsuite/gas/arm/cde-warnings.s: New test.
2079 * testsuite/gas/arm/cde.d: New test.
2080 * testsuite/gas/arm/cde.s: New test.
2082 2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
2085 * config/tc-i386.c (intel64): Renamed to ...
2087 (match_template): Accept Intel64 only instruction by default.
2088 (i386_displacement): Updated.
2089 (md_parse_option): Updated.
2090 * c-i386.texi: Update -mamd64/-mintel64 documentation.
2091 * testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
2092 -mamd64 to x86-64-sysenter-amd.
2093 * testsuite/gas/i386/x86-64-sysenter.d: New file.
2095 2020-02-10 Alan Modra <amodra@gmail.com>
2097 * config/obj-elf.c (obj_elf_change_section): Error for section
2098 type, attr or entsize changes in assembly.
2099 * testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
2100 * testsuite/gas/elf/section5.l: Update.
2102 2020-02-10 Alan Modra <amodra@gmail.com>
2104 * output-file.c (output_file_close): Do a normal close when
2105 flag_always_generate_output.
2106 * write.c (write_object_file): Don't stop output when
2107 flag_always_generate_output.
2109 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
2112 * config/tc-z80.c: Add -gbz80 command line option to generate code
2113 for the GameBoy Z80. Add support for generating DWARF.
2114 * config/tc-z80.h: Add support for DWARF debug information
2116 * doc/c-z80.texi: Document new command line option.
2117 * testsuite/gas/z80/gbz80_all.d: New file.
2118 * testsuite/gas/z80/gbz80_all.s: New file.
2119 * testsuite/gas/z80/z80.exp: Run the new tests.
2120 * testsuite/gas/z80/z80n_all.d: New file.
2121 * testsuite/gas/z80/z80n_all.s: New file.
2122 * testsuite/gas/z80/z80n_reloc.d: New file.
2124 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2127 * config/obj-elf.c (get_section): Also check
2128 linked_to_symbol_name.
2129 (obj_elf_change_section): Also set map_head.linked_to_symbol_name.
2130 (obj_elf_parse_section_letters): Handle the 'o' flag.
2131 (build_group_lists): Renamed to ...
2132 (build_additional_section_info): This. Set elf_linked_to_section
2133 from map_head.linked_to_symbol_name.
2134 (elf_adjust_symtab): Updated.
2135 * config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
2136 * doc/as.texi: Document the 'o' flag.
2137 * testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
2138 * testsuite/gas/elf/section18.d: New file.
2139 * testsuite/gas/elf/section18.s: Likewise.
2140 * testsuite/gas/elf/section19.d: Likewise.
2141 * testsuite/gas/elf/section19.s: Likewise.
2142 * testsuite/gas/elf/section20.d: Likewise.
2143 * testsuite/gas/elf/section20.s: Likewise.
2144 * testsuite/gas/elf/section21.d: Likewise.
2145 * testsuite/gas/elf/section21.l: Likewise.
2146 * testsuite/gas/elf/section21.s: Likewise.
2148 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2150 * NEWS: Mention x86 assembler options to align branches for
2153 2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
2155 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
2156 only for ELF targets.
2157 * testsuite/gas/i386/unique.d: Don't xfail.
2158 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2160 2020-02-06 Alan Modra <amodra@gmail.com>
2162 * testsuite/gas/i386/unique.d: xfail for non-elf targets.
2163 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2165 2020-02-06 Alan Modra <amodra@gmail.com>
2167 * testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
2168 xfail, and rename test.
2169 * testsuite/gas/elf/section12b.d: Likewise.
2170 * testsuite/gas/elf/section16a.d: Likewise.
2171 * testsuite/gas/elf/section16b.d: Likewise.
2173 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2176 * config/obj-elf.c (section_match): Removed.
2177 (get_section): Also match SEC_ASSEMBLER_SECTION_ID and
2179 (obj_elf_change_section): Replace info and group_name arguments
2180 with match_p. Also update the section ID and flags from match_p.
2181 (obj_elf_section): Handle "unique,N". Update call to
2182 obj_elf_change_section.
2183 * config/obj-elf.h (elf_section_match): New.
2184 (obj_elf_change_section): Updated.
2185 * config/tc-arm.c (start_unwind_section): Update call to
2186 obj_elf_change_section.
2187 * config/tc-ia64.c (obj_elf_vms_common): Likewise.
2188 * config/tc-microblaze.c (microblaze_s_data): Likewise.
2189 (microblaze_s_sdata): Likewise.
2190 (microblaze_s_rdata): Likewise.
2191 (microblaze_s_bss): Likewise.
2192 * config/tc-mips.c (s_change_section): Likewise.
2193 * config/tc-msp430.c (msp430_profiler): Likewise.
2194 * config/tc-rx.c (parse_rx_section): Likewise.
2195 * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
2196 * doc/as.texi: Document "unique,N" in .section directive.
2197 * testsuite/gas/elf/elf.exp: Run "unique,N" tests.
2198 * testsuite/gas/elf/section15.d: New file.
2199 * testsuite/gas/elf/section15.s: Likewise.
2200 * testsuite/gas/elf/section16.s: Likewise.
2201 * testsuite/gas/elf/section16a.d: Likewise.
2202 * testsuite/gas/elf/section16b.d: Likewise.
2203 * testsuite/gas/elf/section17.d: Likewise.
2204 * testsuite/gas/elf/section17.l: Likewise.
2205 * testsuite/gas/elf/section17.s: Likewise.
2206 * testsuite/gas/i386/unique.d: Likewise.
2207 * testsuite/gas/i386/unique.s: Likewise.
2208 * testsuite/gas/i386/x86-64-unique.d: Likewise.
2209 * testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
2211 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
2213 * testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
2215 2020-02-01 Anthony Green <green@moxielogic.com>
2217 * config/tc-moxie.c (md_begin): Don't force big-endian mode.
2219 2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
2221 * config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
2224 2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
2227 * config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
2228 (armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
2230 * testsuite/gas/arm/mve_dsp.d: New test.
2232 2020-01-31 Nick Clifton <nickc@redhat.com>
2234 * config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
2235 rather than BFD_RELOC_NONE.
2237 2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
2239 * config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
2240 to support VLDMIA instruction for MVE.
2241 (fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
2242 instruction for MVE.
2243 (fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
2244 instruction for MVE.
2245 (fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
2246 instruction for MVE.
2247 * testsuite/gas/arm/mve-ldst.d: New test.
2248 * testsuite/gas/arm/mve-ldst.s: Likewise.
2250 2020-01-31 Nick Clifton <nickc@redhat.com>
2252 * po/fr.po: Updated French translation.
2253 * po/ru.po: Updated Russian translation.
2255 2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
2257 * testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
2259 * testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
2260 * testsuite/gas/aarch64/sve-movprfx_28.d,
2261 * testsuite/gas/aarch64/sve-movprfx_28.l,
2262 * testsuite/gas/aarch64/sve-movprfx_28.s: New test.
2264 2020-01-30 Jan Beulich <jbeulich@suse.com>
2266 * config/tc-i386.c (output_disp): Tighten base_opcode check.
2267 * testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
2268 * testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
2269 Adjust expectations.
2271 2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
2273 * testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
2274 * testsuite/gas/bpf/alu-be.d: Likewise.
2275 * testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
2276 * testsuite/gas/bpf/alu32-be.d: Likewise.
2278 2020-01-30 Jan Beulich <jbeulich@suse.com>
2280 * testsuite/gas/i386/x86-64-branch-2.s,
2281 testsuite/gas/i386/x86-64-branch-4.s,
2282 testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
2283 * testsuite/gas/i386/ilp32/x86-64-branch.d,
2284 testsuite/gas/i386/x86-64-branch-2.d,
2285 testsuite/gas/i386/x86-64-branch-4.l,
2286 testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
2288 2020-01-30 Jan Beulich <jbeulich@suse.com>
2290 * config/tc-i386.c (process_suffix): .
2291 testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
2292 testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
2294 testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
2296 testsuite/gas/i386/x86_64.s: Add RETF cases.
2297 * testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
2298 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
2299 testsuite/gas/i386/x86-64-opcode.d,
2300 testsuite/gas/i386/x86-64-suffix-intel.d,
2301 testsuite/gas/i386/x86-64-suffix.d,
2302 testsuite/gas/i386/x86_64-intel.d
2303 testsuite/gas/i386/x86_64.d: Adjust expectations.
2304 * testsuite/gas/i386/x86-64-suffix.e,
2305 testsuite/gas/i386/x86_64.e: New.
2307 2020-01-30 Jan Beulich <jbeulich@suse.com>
2309 * config/tc-i386.c (process_suffix): Redo and move FLDENV et al
2312 2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
2315 * config/tc-i386.c (check_long_reg): Also convert to QWORD for
2317 * doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
2318 differences. Document movslq and movsxd.
2319 * testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
2320 * testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
2321 * testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
2322 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
2323 * testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
2324 * testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
2325 * testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
2326 * testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
2327 * testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
2328 * testsuite/gas/i386/x86-64-movsxd.d: Likewise.
2329 * testsuite/gas/i386/x86-64-movsxd.s: Likewise.
2331 2020-01-27 Alan Modra <amodra@gmail.com>
2333 * testsuite/gas/all/gas.exp: Replace case statements with switch
2335 * testsuite/gas/elf/elf.exp: Likewise.
2336 * testsuite/gas/macros/macros.exp: Likewise.
2337 * testsuite/lib/gas-defs.exp: Likewise.
2339 2020-01-27 Tamar Christina <tamar.christina@arm.com>
2342 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
2343 * testsuite/gas/aarch64/armv8_4-a.s: Likewise.
2345 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
2347 * testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
2348 s exts must be known, so rename *ok* to *fail*.
2349 * testsuite/gas/riscv/march-ok-sx.d: Likewise.
2350 * testsuite/gas/riscv/march-ok-s-with-version: Likewise.
2351 * testsuite/gas/riscv/march-fail-s.l: Expected error messages for
2353 * testsuite/gas/riscv/march-fail-sx.l: Likewise.
2354 * testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
2356 2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
2359 * config/tc-i386.c (check_long_reg): Always disallow double word
2360 suffix in mnemonic with word general register.
2361 * testsuite/gas/i386/general.s: Replace word general register
2362 with double word general register for movl.
2363 * testsuite/gas/i386/inval.s: Add tests for movl with word general
2365 * testsuite/gas/i386/general.l: Updated.
2366 * testsuite/gas/i386/inval.l: Likewise.
2368 2020-01-22 Alan Modra <amodra@gmail.com>
2370 * config/tc-ppc.c (parse_tls_arg): Handle tls arg for
2371 __tls_get_addr_desc and __tls_get_addr_opt.
2373 2020-01-21 Jan Beulich <jbeulich@suse.com>
2375 * testsuite/gas/i386/inval-crc32.s,
2376 testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
2377 * testsuite/gas/i386/inval-crc32.l,
2378 testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
2380 2020-01-21 Jan Beulich <jbeulich@suse.com>
2382 * config/tc-i386.c (process_suffix): Merge CRC32 handling into
2383 generic code path. Deal with No_lSuf being set in a template.
2384 * testsuite/gas/i386/inval-crc32.l,
2385 testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
2386 instead of error(s) when operand size is ambiguous.
2387 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2388 testsuite/gas/i386/noreg64.s: Add CRC32 tests.
2389 * testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
2390 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
2391 testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
2392 Adjust expectations.
2394 2020-01-21 Jan Beulich <jbeulich@suse.com>
2396 * config/tc-i386.c (process_suffix): Drop SYSRET special case
2397 and an intel_syntax check. Re-write lack-of-suffix processing
2399 * doc/c-i386.texi: Document operand size defaults for suffix-
2400 less AT&T syntax insns.
2401 * testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
2402 testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
2403 testsuite/gas/i386/x86-64-avx-scalar.s,
2404 testsuite/gas/i386/x86-64-avx.s,
2405 testsuite/gas/i386/x86-64-bundle.s,
2406 testsuite/gas/i386/x86-64-intel64.s,
2407 testsuite/gas/i386/x86-64-lock-1.s,
2408 testsuite/gas/i386/x86-64-opcode.s,
2409 testsuite/gas/i386/x86-64-sse2avx.s,
2410 testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
2411 * testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
2412 testsuite/gas/i386/x86-64-nops.s,
2413 testsuite/gas/i386/x86-64-ptwrite.s,
2414 testsuite/gas/i386/x86-64-simd.s,
2415 testsuite/gas/i386/x86-64-sse-noavx.s,
2416 testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
2418 * testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
2419 testsuite/gas/i386/noreg64.s: Add further tests.
2420 * testsuite/gas/i386/ilp32/x86-64-nops.d,
2421 testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
2422 testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
2423 testsuite/gas/i386/sse-noavx.d,
2424 testsuite/gas/i386/x86-64-intel64.d,
2425 testsuite/gas/i386/x86-64-nops.d,
2426 testsuite/gas/i386/x86-64-opcode.d,
2427 testsuite/gas/i386/x86-64-ptwrite-intel.d,
2428 testsuite/gas/i386/x86-64-ptwrite.d,
2429 testsuite/gas/i386/x86-64-simd-intel.d,
2430 testsuite/gas/i386/x86-64-simd-suffix.d,
2431 testsuite/gas/i386/x86-64-simd.d,
2432 testsuite/gas/i386/x86-64-sse-noavx.d
2433 testsuite/gas/i386/x86-64-suffix.d,
2434 testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
2435 * testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
2436 testsuite/gas/i386/noreg64.l: New.
2437 * testsuite/gas/i386/i386.exp: Run new tests.
2439 2020-01-21 Jan Beulich <jbeulich@suse.com>
2441 * testsuite/gas/i386/avx512_bf16_vl.s,
2442 testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
2443 of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
2444 broadcast forms of VCVTNEPS2BF16.
2445 * testsuite/gas/i386/avx512_bf16_vl.d,
2446 testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
2448 2020-01-20 Nick Clifton <nickc@redhat.com>
2450 * po/uk.po: Updated Ukranian translation.
2452 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
2455 * config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
2456 for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
2458 * testsuite/gas/i386/ilp32/x32-tls.d: Updated.
2459 * testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
2460 R_X86_64_GOTPC32_TLSDESC relocation.
2462 2020-01-18 Nick Clifton <nickc@redhat.com>
2464 * configure: Regenerate.
2465 * po/gas.pot: Regenerate.
2467 2020-01-18 Nick Clifton <nickc@redhat.com>
2469 Binutils 2.34 branch created.
2471 2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
2473 * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
2474 with vex_encoding_vex.
2475 (parse_insn): Likewise.
2476 * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
2477 and {vex3} documentation.
2478 * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
2480 * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
2482 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
2485 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
2486 (armv8_1m_main_ext_table): Use CORE_HIGH for mve.
2487 * testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
2488 * testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
2489 * testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
2490 * testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
2492 2020-01-16 Jan Beulich <jbeulich@suse.com>
2494 * config/tc-i386.c (match_template): Drop found_cpu_match local
2497 2020-01-16 Jan Beulich <jbeulich@suse.com>
2499 * testsuite/gas/i386/avx512dq-inval.l,
2500 testsuite/gas/i386/avx512dq-inval.s: New.
2501 * testsuite/gas/i386/i386.exp: Run new test.
2503 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
2505 * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
2506 relocations when the target is 430X, except when extracting part of an
2508 (msp430_srcoperand): Adjust comment.
2509 Initialize the expp member of the msp430_operand_s struct as
2511 (msp430_dstoperand): Likewise.
2512 * testsuite/gas/msp430/msp430.exp: Run new test.
2513 * testsuite/gas/msp430/reloc-lo-430x.d: New test.
2514 * testsuite/gas/msp430/reloc-lo-430x.s: New test.
2516 2020-01-15 Alan Modra <amodra@gmail.com>
2518 * configure.tgt: Add sparc-*-freebsd case.
2520 2020-01-14 Lili Cui <lili.cui@intel.com>
2522 * testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
2523 * testsuite/gas/i386/align-branch-1b.d: Likewise.
2524 * testsuite/gas/i386/align-branch-1c.d: Likewise.
2525 * testsuite/gas/i386/align-branch-1d.d: Likewise.
2526 * testsuite/gas/i386/align-branch-1e.d: Likewise.
2527 * testsuite/gas/i386/align-branch-1f.d: Likewise.
2528 * testsuite/gas/i386/align-branch-1g.d: Likewise.
2529 * testsuite/gas/i386/align-branch-1h.d: Likewise.
2530 * testsuite/gas/i386/align-branch-1i.d: Likewise.
2531 * testsuite/gas/i386/align-branch-5.d: Likewise.
2532 * testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
2533 * testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
2534 * testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
2535 * testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
2536 * testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
2537 * testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
2538 * testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
2539 * testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
2540 * testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
2541 * testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
2542 * testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
2543 x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
2545 2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
2548 * config/tc-z80.c: Add support for half precision, single
2549 precision and double precision floating point values.
2550 * config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
2551 * doc/as.texi: Add new z80 command line options.
2552 * doc/c-z80.texi: Document new z80 command line options.
2553 * testsuite/gas/z80/ez80_pref_dis.s: New test.
2554 * testsuite/gas/z80/ez80_pref_dis.d: New test driver.
2555 * testsuite/gas/z80/z80.exp: Run the new test.
2556 * testsuite/gas/z80/fp_math48.d: Use correct command line option.
2557 * testsuite/gas/z80/fp_zeda32.d: Likewise.
2558 * testsuite/gas/z80/strings.d: Update expected output.
2560 2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
2562 * config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
2565 2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
2567 * config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
2569 * config/tc-arc.h: Add header if/defs.
2570 * testsuite/gas/arc/pseudos.d: Improve matching pattern.
2572 2020-01-13 Alan Modra <amodra@gmail.com>
2574 * testsuite/gas/wasm32/allinsn.d: Update expected output.
2576 2020-01-13 Alan Modra <amodra@gmail.com>
2578 * config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
2581 2020-01-10 Alan Modra <amodra@gmail.com>
2583 * testsuite/gas/elf/pr14891.s: Don't start directives in first column.
2584 * testsuite/gas/elf/pr21661.d: Don't run on hpux.
2586 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2589 * config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
2591 (emit_ld_r_r): Likewise.
2592 (emit_ld_rr_m): Likewise.
2593 (emit_ld_rr_nn): Likewise.
2595 2020-01-09 Jan Beulich <jbeulich@suse.com>
2597 * config/tc-i386.c (optimize_encoding): Add
2598 is_any_vex_encoding() invocations. Drop respective
2599 i.tm.extension_opcode == None checks.
2601 2020-01-09 Jan Beulich <jbeulich@suse.com>
2603 * config/tc-i386.c (md_assemble): Check RegRex is clear during
2604 REX transformations. Correct comment indentation.
2606 2020-01-09 Jan Beulich <jbeulich@suse.com>
2608 * config/tc-i386.c (optimize_encoding): Generalize register
2609 transformation for TEST optimization.
2611 2020-01-09 Jan Beulich <jbeulich@suse.com>
2613 * testsuite/gas/i386/x86-64-sysenter-amd.s,
2614 testsuite/gas/i386/x86-64-sysenter-amd.d,
2615 testsuite/gas/i386/x86-64-sysenter-amd.l,
2616 testsuite/gas/i386/x86-64-sysenter-intel.d,
2617 testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
2618 * testsuite/gas/i386/i386.exp: Run new tests.
2620 2020-01-08 Nick Clifton <nickc@redhat.com>
2623 * doc/as.texi (Align): Document the fact that all arguments can be
2626 (P2align): Likewise.
2628 2020-01-08 Nick Clifton <nickc@redhat.com>
2631 * config/obj-elf.c (obj_elf_section): Fail if the section name is
2632 already defined as a different symbol type.
2633 * testsuite/gas/elf/pr14891.s: New test source file.
2634 * testsuite/gas/elf/pr14891.d: New test driver.
2635 * testsuite/gas/elf/pr14891.s: New test expected error output.
2636 * testsuite/gas/elf/elf.exp: Run the new test.
2638 2020-01-08 Alan Modra <amodra@gmail.com>
2640 * config/tc-z8k.c (md_begin): Make idx unsigned.
2641 (get_specific): Likewise for this_index.
2643 2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
2645 * onfig/tc-arc.c (parse_reloc_symbol): New function.
2646 (tokenize_arguments): Clean up, use parse_reloc_symbol function.
2647 (md_operand): Set X_md to absent.
2648 (arc_parse_name): Check for X_md.
2650 2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
2653 * as.h (TC_STRING_ESCAPES): Provide a default definition.
2654 * app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
2656 * read.c (next_char_of_string): Likewise.
2657 * config/tc-ppc.h (TC_STRING_ESCAPES): Define.
2658 * config/tc-z80.h (TC_STRING_ESCAPES): Define.
2660 2020-01-03 Nick Clifton <nickc@redhat.com>
2662 * po/sv.po: Updated Swedish translation.
2664 2020-01-03 Jan Beulich <jbeulich@suse.com>
2666 * testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
2667 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2669 2020-01-03 Jan Beulich <jbeulich@suse.com>
2671 * testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
2672 by-element usdot. Add 64-bit form tests for by-element sudot.
2673 * testsuite/gas/aarch64/i8mm.d: Adjust expectations.
2675 2020-01-03 Jan Beulich <jbeulich@suse.com>
2677 * testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
2678 * testsuite/gas/aarch64/f64mm.d: Adjust expectations.
2680 2020-01-03 Jan Beulich <jbeulich@suse.com>
2682 * testsuite/gas/aarch64/f64mm.d,
2683 testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
2685 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
2687 * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
2688 support for assembler code generated by SDCC. Add new relocation
2689 types. Add z80-elf target support.
2690 * config/tc-z80.h: Add z80-elf target support. Enable dollar local
2691 labels. Local labels starts from ".L".
2692 * NEWS: Mention the new support.
2693 * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
2694 * testsuite/gas/all/fwdexp.s: Likewise.
2695 * testsuite/gas/all/cond.l: Likewise.
2696 * testsuite/gas/all/cond.s: Likewise.
2697 * testsuite/gas/all/fwdexp.d: Likewise.
2698 * testsuite/gas/all/fwdexp.s: Likewise.
2699 * testsuite/gas/elf/section2.e-mips: Likewise.
2700 * testsuite/gas/elf/section2.l: Likewise.
2701 * testsuite/gas/elf/section2.s: Likewise.
2702 * testsuite/gas/macros/app1.d: Likewise.
2703 * testsuite/gas/macros/app1.s: Likewise.
2704 * testsuite/gas/macros/app2.d: Likewise.
2705 * testsuite/gas/macros/app2.s: Likewise.
2706 * testsuite/gas/macros/app3.d: Likewise.
2707 * testsuite/gas/macros/app3.s: Likewise.
2708 * testsuite/gas/macros/app4.d: Likewise.
2709 * testsuite/gas/macros/app4.s: Likewise.
2710 * testsuite/gas/macros/app4b.s: Likewise.
2711 * testsuite/gas/z80/suffix.d: Fix failure on ELF target.
2712 * testsuite/gas/z80/z80.exp: Add new tests
2713 * testsuite/gas/z80/dollar.d: New file.
2714 * testsuite/gas/z80/dollar.s: New file.
2715 * testsuite/gas/z80/ez80_adl_all.d: New file.
2716 * testsuite/gas/z80/ez80_adl_all.s: New file.
2717 * testsuite/gas/z80/ez80_adl_suf.d: New file.
2718 * testsuite/gas/z80/ez80_isuf.s: New file.
2719 * testsuite/gas/z80/ez80_z80_all.d: New file.
2720 * testsuite/gas/z80/ez80_z80_all.s: New file.
2721 * testsuite/gas/z80/ez80_z80_suf.d: New file.
2722 * testsuite/gas/z80/r800_extra.d: New file.
2723 * testsuite/gas/z80/r800_extra.s: New file.
2724 * testsuite/gas/z80/r800_ii8.d: New file.
2725 * testsuite/gas/z80/r800_z80_doc.d: New file.
2726 * testsuite/gas/z80/z180.d: New file.
2727 * testsuite/gas/z80/z180.s: New file.
2728 * testsuite/gas/z80/z180_z80_doc.d: New file.
2729 * testsuite/gas/z80/z80_doc.d: New file.
2730 * testsuite/gas/z80/z80_doc.s: New file.
2731 * testsuite/gas/z80/z80_ii8.d: New file.
2732 * testsuite/gas/z80/z80_ii8.s: New file.
2733 * testsuite/gas/z80/z80_in_f_c.d: New file.
2734 * testsuite/gas/z80/z80_in_f_c.s: New file.
2735 * testsuite/gas/z80/z80_op_ii_ld.d: New file.
2736 * testsuite/gas/z80/z80_op_ii_ld.s: New file.
2737 * testsuite/gas/z80/z80_out_c_0.d: New file.
2738 * testsuite/gas/z80/z80_out_c_0.s: New file.
2739 * testsuite/gas/z80/z80_reloc.d: New file.
2740 * testsuite/gas/z80/z80_reloc.s: New file.
2741 * testsuite/gas/z80/z80_sli.d: New file.
2742 * testsuite/gas/z80/z80_sli.s: New file.
2744 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
2746 * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
2749 2020-01-01 Alan Modra <amodra@gmail.com>
2751 Update year range in copyright notice of all files.
2753 For older changes see ChangeLog-2019
2755 Copyright (C) 2020 Free Software Foundation, Inc.
2757 Copying and distribution of this file, with or without modification,
2758 are permitted in any medium without royalty provided the copyright
2759 notice and this notice are preserved.
2765 version-control: never