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