x86: limit ImmExt abuse
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 2019-07-01 Jan Beulich <jbeulich@suse.com>
2
3 * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
4 insns. Move PadLock special case of prefix emission to 3-byte
5 long base opcode handling.
6 (i386_index_check): Check for CpuPadLock instead of ImmExt.
7
8 2019-07-01 Jan Beulich <jbeulich@suse.com>
9
10 * config/tc-i386.c (optimize_encoding): Handle AND / OR with
11 both operands being the same register.
12 * doc/c-i386.texi: Update -O2 documentation.
13 * testsuite/gas/i386/optimize-2.s,
14 testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
15 with both operands being the same register.
16 * testsuite/gas/i386/optimize-2.d,
17 testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
18 * testsuite/gas/i386/optimize-2b.d,
19 testsuite/gas/i386/x86-64-optimize-3b.d: New.
20 * testsuite/gas/i386/i386.exp: Run new test.
21
22 2019-07-01 Jan Beulich <jbeulich@suse.com>
23
24 * config/tc-i386.c (commutative): New.
25 (build_vex_prefix): Handle commutative case.
26 (optimize_encoding): Set commutative flag when appropriate.
27 * doc/c-i386.texi: Update -O2 documentation.
28 * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
29 output.
30 * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
31 numbered source operands.
32 * testsuite/gas/i386/x86-64-optimize-2.d,
33 testsuite/gas/i386/x86-64-optimize-2b.d,
34 testsuite/gas/i386/x86-64-optimize-3.d,
35 testsuite/gas/i386/x86-64-optimize-5.d,
36 testsuite/gas/i386/x86-64-optimize-6.d,
37 testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
38 * testsuite/gas/i386/x86-64-avx-swap-2.d,
39 testsuite/gas/i386/x86-64-avx-swap-2.s: New.
40 * testsuite/gas/i386/i386.exp: Run new test.
41
42 2019-07-01 Jan Beulich <jbeulich@suse.com>
43
44 * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
45 (check_VecOperands): Simplify static rounding / SAE checking.
46
47 2019-07-01 Jan Beulich <jbeulich@suse.com>
48
49 * config/tc-i386.c (optimize_encoding): Make j unsigned. Handle
50 vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}. Also check/
51 clear broadcast. Eliminate a loop.
52 * doc/c-i386.texi: Update -O1 documentation.
53 * testsuite/gas/i386/optimize-1.s,
54 testsuite/gas/i386/optimize-2.s,
55 testsuite/gas/i386/optimize-3.s,
56 testsuite/gas/i386/optimize-5.s,
57 testsuite/gas/i386/x86-64-optimize-2.s,
58 testsuite/gas/i386/x86-64-optimize-3.s,
59 testsuite/gas/i386/x86-64-optimize-4.s,
60 testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
61 vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
62 testsuite/gas/i386/optimize-1.d,
63 testsuite/gas/i386/optimize-1a.d,
64 testsuite/gas/i386/optimize-2.d,
65 testsuite/gas/i386/optimize-3.d,
66 testsuite/gas/i386/optimize-4.d,
67 testsuite/gas/i386/optimize-5.d,
68 testsuite/gas/i386/x86-64-optimize-2.d,
69 testsuite/gas/i386/x86-64-optimize-2a.d,
70 testsuite/gas/i386/x86-64-optimize-2b.d,
71 testsuite/gas/i386/x86-64-optimize-3.d,
72 testsuite/gas/i386/x86-64-optimize-4.d,
73 testsuite/gas/i386/x86-64-optimize-5.d,
74 testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
75
76 2019-07-01 Jan Beulich <jbeulich@suse.com>
77
78 * testsuite/gas/i386/avx512f_vpclmulqdq.s,
79 testsuite/gas/i386/avx512vl_vpclmulqdq.s,
80 testsuite/gas/i386/vpclmulqdq.s,
81 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
82 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
83 * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
84 high 16 [xy]mm registers.
85 * testsuite/gas/i386/avx512f_vpclmulqdq.d,
86 testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
87 testsuite/gas/i386/avx512vl_vpclmulqdq.d,
88 testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
89 testsuite/gas/i386/vpclmulqdq.d,
90 testsuite/gas/i386/vpclmulqdq-intel.d,
91 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
92 testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
93 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
94 testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
95 testsuite/gas/i386/x86-64-vpclmulqdq.d,
96 testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
97 expectations.
98
99 2019-07-01 Jan Beulich <jbeulich@suse.com>
100
101 * tc-i386.c (output_disp, output_imm): Use encoding_length.
102
103 2019-07-01 Jan Beulich <jbeulich@suse.com>
104
105 * tc-i386.c (encoding_length): New.
106 (output_insn): Use it.
107 * testsuite/gas/i386/oversized16.l,
108 testsuite/gas/i386/oversized16.s,
109 testsuite/gas/i386/oversized64.l,
110 testsuite/gas/i386/oversized64.s: New.
111 * testsuite/gas/i386/i386.exp: Run new tests.
112
113 2019-06-27 H.J. Lu <hongjiu.lu@intel.com>
114
115 PR binutils/24719
116 * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
117 with invalid vector length.
118 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
119 * testsuite/gas/i386/disassem.d: Updated.
120 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
121
122 2019-06-27 Barnaby Wilk s<barnaby.wilks@arm.com>
123
124 * config/tc-arm.c (do_smc): Add range check for immediate operand.
125 (do_t_smc): Add range check for immediate operand. Remove
126 obsolete immediate encoding.
127 (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
128 * testsuite/gas/arm/arch6zk.d: Fix test.
129 * testsuite/gas/arm/arch6zk.s: Fix test.
130 * testsuite/gas/arm/smc-bad.d: New test.
131 * testsuite/gas/arm/smc-bad.l: New test.
132 * testsuite/gas/arm/smc-bad.s: New test.
133 * testsuite/gas/arm/thumb32.d: Fix test.
134 * testsuite/gas/arm/thumb32.s: Fix test.
135
136 2019-06-27 Jan Beulich <jbeulich@suse.com>
137
138 config/tc-i386.c (md_assemble): Check for protected mode
139 incapable processor before encoding VEX and alike insns.
140 * testsuite/gas/i386/inval-16.s: For 80186 architecture.
141 * testsuite/gas/i386/inval-16.l: Adjust expectations.
142 * testsuite/gas/i386/avx-16bit.d,
143 testsuite/gas/i386/avx-16bit.s,
144 testsuite/gas/i386/avx512f-16bit.d,
145 testsuite/gas/i386/avx512f-16bit.s,
146 testsuite/gas/i386/bmi-16bit.d,
147 testsuite/gas/i386/bmi-16bit.s,
148 testsuite/gas/i386/bmi2-16bit.d,
149 testsuite/gas/i386/bmi2-16bit.s,
150 testsuite/gas/i386/lwp-16bit.d,
151 testsuite/gas/i386/lwp-16bit.s: New
152 testsuite/gas/i386/i386.exp: Run new tests.
153
154 2019-06-26 Jim Wilson <jimw@sifive.com>
155
156 * testsuite/gas/xstormy16/allinsn.sh: Change first line to
157 #!/bin/bash and make it executable.
158 * testsuite/gas/xstormy16/gcc.sh: Likewise.
159
160 2019-06-26 Lili Cui <lili.cui@intel.com>
161
162 * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
163 syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
164 Intel syntax.
165
166 2019-06-25 Faraz Shahbazker <fshahbazker@wavecomp.com>
167
168 * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
169 respect to MTC1 and use $0 for either part where possible.
170 * testsuite/gas/mips/li-d.s: Add test cases for non-zero
171 words in double precision constants.
172 * testsuite/gas/mips/li-d.d: Update reference output.
173 * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
174 * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
175 * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
176
177 2019-06-25 Jan Beulich <jbeulich@suse.com>
178
179 * tc-i386.c (acc32, acc64): Delete.
180 (pi): Make first parameter pinter-to-const.
181 (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
182 (pt): Use operand_type_equal().
183 (match_template): Replace use of acc32.
184 (process_suffix): Replace use of acc64.
185
186 2019-06-25 Jan Beulich <jbeulich@suse.com>
187
188 * doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
189 use.
190
191 2019-06-25 Jan Beulich <jbeulich@suse.com>
192
193 * tc-i386.c (process_suffix): Use is_any_vex_encoding().
194
195 2019-06-25 Jan Beulich <jbeulich@suse.com>
196
197 * testsuite/gas/i386/sse2-16bit.d,
198 testsuite/gas/i386/sse2-16bit.s: New.
199 testsuite/gas/i386/i386.exp: Run new test.
200
201 2019-06-25 Jan Beulich <jbeulich@suse.com>
202
203 * config/tc-i386.c (optimize_encoding): Also handle ANDQ with
204 immediatie fitting in 7 bits.
205 * testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
206 7- and 8-bit immediates.
207 * testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
208
209 2019-06-25 Jan Beulich <jbeulich@suse.com>
210
211 * testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
212 tests.
213 * testsuite/gas/i386/xmmword.l: Adjust expectations.
214
215 2019-06-25 Alan Modra <amodra@gmail.com>
216
217 * config/tc-ppc.c (ppc_handle_align): Add parentheses.
218
219 2019-06-25 Alan Modra <amodra@gmail.com>
220
221 * config/tc-ppc.h (ppc_nop_select): Declare.
222 (NOP_OPCODE): Define.
223 * config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
224 (ppc_nop_encoding_for_rs_align_code): New enum.
225 (ppc_nop_select): New function.
226 (ppc_handle_align): Don't use ppc_cpu here. Get nop type from frag.
227 * testsuite/gas/ppc/groupnop.d,
228 * testsuite/gas/ppc/groupnop.s: New test.
229 * testsuite/gas/ppc/ppc.exp: Run it.
230
231 2019-06-19 H.J. Lu <hongjiu.lu@intel.com>
232
233 PR binutils/24700
234 * testsuite/gas/i386/disassem.s: Add test for vbroadcasti32x8
235 with invalid vector length.
236 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
237 * testsuite/gas/i386/disassem.d: Updated.
238 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
239
240 2019-06-17 H.J. Lu <hongjiu.lu@intel.com>
241
242 PR binutils/24691
243 * testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
244 invalid vector length.
245 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
246 * testsuite/gas/i386/disassem.d: Updated.
247 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
248
249 2019-06-14 Alan Modra <amodra@gmail.com>
250
251 * Makefile.in: Regenerate.
252 * configure: Regenerate.
253 * doc/Makefile.in: Regenerate.
254
255 2019-06-12 Peter Bergner <bergner@linux.ibm.com>
256
257 * testsuite/gas/ppc/power9.d: Delete ldmx tests.
258 * testsuite/gas/ppc/power9.s: Likewise.
259
260 2019-06-06 Lili Cui <lili.cui@intel.com>
261
262 * config/tc-i386.c (cpu_arch): Add .enqcmd.
263 (cpu_noarch): Add noenqcmd.
264 * doc/c-i386.texi: Document noenqcmd.
265
266 2019-06-05 H.J. Lu <hongjiu.lu@intel.com>
267
268 PR binutils/24633
269 * testsuite/gas/i386/disassem.s: Add tests for invalid vector
270 lengths for EVEX vextractfXX and vinsertfXX.
271 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
272 * testsuite/gas/i386/disassem.d: Updated.
273 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
274
275 2019-06-04 H.J. Lu <hongjiu.lu@intel.com>
276
277 PR binutils/24626
278 * testsuite/gas/i386/disassem.s: Add tests for reserved VEX.vvvv
279 and EVEX.vvvv.
280 * testsuite/gas/i386/x86-64-disassem.s: Likewise.
281 * testsuite/gas/i386/disassem.d: Updated.
282 * testsuite/gas/i386/x86-64-disassem.d: Likewise.
283
284 2019-06-04 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
285 Lili Cui <lili.cui@intel.com>
286
287 * config/tc-i386.c (cpu_arch): Add .avx512_vp2intersect.
288 (cpu_noarch): Likewise.
289 * doc/c-i386.texi: Document avx512_vp2intersect.
290 * testsuite/gas/i386/i386.exp: Run vp2intersect tests.
291 * testsuite/gas/i386/vp2intersect-intel.d: New test.
292 * testsuite/gas/i386/vp2intersect.d: Likewise.
293 * testsuite/gas/i386/vp2intersect.s: Likewise.
294 * testsuite/gas/i386/vp2intersect-inval-bcast.l: Likewise.
295 * testsuite/gas/i386/vp2intersect-inval-bcast.s: Likewise.
296 * testsuite/gas/i386/x86-64-vp2intersect-intel.d: Likewise.
297 * testsuite/gas/i386/x86-64-vp2intersect.d: Likewise.
298 * testsuite/gas/i386/x86-64-vp2intersect.s: Likewise.
299 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.l: Likewise.
300 * testsuite/gas/i386/x86-64-vp2intersect-inval-bcast.s: Likewise.
301
302 2019-06-04 Xuepeng Guo <xuepeng.guo@intel.com>
303 Lili Cui <lili.cui@intel.com>
304
305 * doc/c-i386.texi: Document enqcmd.
306 * testsuite/gas/i386/enqcmd-intel.d: New file.
307 * testsuite/gas/i386/enqcmd-inval.l: Likewise.
308 * testsuite/gas/i386/enqcmd-inval.s: Likewise.
309 * testsuite/gas/i386/enqcmd.d: Likewise.
310 * testsuite/gas/i386/enqcmd.s: Likewise.
311 * testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
312 * testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
313 * testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
314 * testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
315 * testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
316 * testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
317 enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
318 and x86-64-enqcmd.
319
320 2019-05-30 Jim Wilson <jimw@sifive.com>
321
322 * config/tc-riscv.c (riscv_ip) <'u'>: Move O_constant check inside if
323 statement. Delete O_symbol and O_constant check after if statement.
324 * testsuite/gas/riscv/auipc-parsing.s: Test lui with missing %hi.
325 * testsuite/gas/riscv/auipc-parsing.l: Update.
326
327 2019-05-28 H.J. Lu <hongjiu.lu@intel.com>
328
329 PR gas/24625
330 * testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
331 instructions with invalid broadcast.
332 * testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
333 * testsuite/gas/i386/inval-avx512f.l: Updated.
334 * testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
335
336 2019-05-27 Alan Modra <amodra@gmail.com>
337
338 * config/tc-ppc.c (is_ppc64_target): New function.
339 (md_show_usage): Split up usage message. Don't show -a64 when
340 unsupported.
341 testsuite/gas/ppc/ppc.exp (supports_ppc64): New.
342 (prefix-reloc): Only run for ppc64.
343
344 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
345
346 * config/tc-aarch64.c (aarch64_elf_copy_symbol_attributes): Define.
347 * config/tc-aarch64.h (aarch64_elf_copy_symbol_attributes): Declare.
348 (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
349 * testsuite/gas/aarch64/symbol-variant_pcs-3.d: New test.
350 * testsuite/gas/aarch64/symbol-variant_pcs-3.s: New test.
351
352 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
353
354 * config/tc-aarch64.c (s_variant_pcs): New function.
355 * doc/c-aarch64.texi: Document .variant_pcs.
356 * testsuite/gas/aarch64/symbol-variant_pcs-1.d: New test.
357 * testsuite/gas/aarch64/symbol-variant_pcs-1.s: New test.
358 * testsuite/gas/aarch64/symbol-variant_pcs-2.d: New test.
359 * testsuite/gas/aarch64/symbol-variant_pcs-2.s: New test.
360
361 2019-05-24 Alan Modra <amodra@gmail.com>
362
363 * po/POTFILES.in: Regenerate.
364
365 2019-05-24 Alan Modra <amodra@gmail.com>
366
367 * config/tc-ppc.c (ppc_elf_suffix): Support @pcrel, @got@pcrel,
368 @plt@pcrel, @higher34, @highera34, @highest34, and @highesta34.
369 (fixup_size): Handle new powerxx relocs.
370 (md_assemble): Warn for @pcrel on non-prefix insns.
371 Accept @l, @h and @ha on prefix insns, and infer reloc without
372 any @ suffix. Translate powerxx relocs to suit DQ and DS field
373 instructions. Include operand tests as well as opcode test to
374 translate BFD_RELOC_HI16_S to BFD_RELOC_PPC_16DX_HA.
375 (ppc_fix_adjustable): Return false for pcrel GOT and PLT relocs.
376 (md_apply_fix): Handle new powerxx relocs.
377 * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Accept
378 BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34,
379 BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34,
380 BFD_RELOC_PPC64_D34, and BFD_RELOC_PPC64_D28.
381 * testsuite/gas/ppc/prefix-reloc.d,
382 * testsuite/gas/ppc/prefix-reloc.s: New test.
383 * testsuite/gas/ppc/ppc.exp: Run it.
384
385 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
386 Alan Modra <amodra@gmail.com>
387
388 * config/tc-ppc.c (ppc_insert_operand): Only sign extend fields that
389 are 32-bits or smaller.
390 * messages.c (as_internal_value_out_of_range): Do not truncate
391 variables and use BFD_VMA_FMT to print them.
392 * testsuite/gas/ppc/prefix-pcrel.s,
393 * testsuite/gas/ppc/prefix-pcrel.d: New test.
394 * testsuite/gas/ppc/ppc.exp: Run it.
395
396 2019-05-24 Peter Bergner <bergner@linux.ibm.com>
397 Alan Modra <amodra@gmail.com>
398
399 * config/tc-ppc.c (ppc_setup_opcodes): Handle prefix_opcodes.
400 (struct insn_label_list): New.
401 (insn_labels, free_insn_labels): New variables.
402 (ppc_record_label, ppc_clear_labels, ppc_start_line_hook): New funcs.
403 (ppc_frob_label, ppc_new_dot_label): Move functions earlier in file
404 and call ppc_record_label.
405 (md_assemble): Handle 64-bit prefix instructions. Align labels
406 that are on the same line as a prefix instruction.
407 * config/tc-ppc.h (tc_frob_label, ppc_frob_label): Move to
408 later in the file.
409 (md_start_line_hook): Define.
410 (ppc_start_line_hook): Declare.
411 * testsuite/gas/ppc/prefix-align.d,
412 * testsuite/gas/ppc/prefix-align.s: New test.
413 * testsuite/gas/ppc/ppc.exp: Run new test.
414
415 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
416
417 * configure.ac: Handle bpf-*-* targets.
418 * configure.tgt (generic_target): Likewise.
419 * configure: Regenerate.
420 * Makefile.am (TARGET_CPU_CFILES): Add tc-bpf.c.
421 (TARGET_CPU_HFILES): Add tc-bpf.h.
422 * Makefile.in: Regenerated.
423 * config/tc-bpf.c: New file.
424 * config/tc-bpf.h: Likewise.
425 * doc/Makefile.am (CPU_DOCS): Add c-bpf.texi.
426 * doc/Makefile.in: Regenerated.
427 * doc/all.texi: set BPF.
428 * doc/as.texi: Add eBPF contents.
429 * doc/c-bpf.texi: New file.
430 * testsuite/gas/bpf/alu.d: New file.
431 * testsuite/gas/bpf/mem-be.d: Likewise.
432 * testsuite/gas/bpf/mem.s: Likewise.
433 * testsuite/gas/bpf/mem.d: Likewise.
434 * testsuite/gas/bpf/lddw-be.d: Likewise.
435 * testsuite/gas/bpf/lddw.s: Likewise.
436 * testsuite/gas/bpf/lddw.d: Likewise.
437 * testsuite/gas/bpf/jump-be.d: Likewise.
438 * testsuite/gas/bpf/jump.s: Likewise.
439 * testsuite/gas/bpf/jump.d: Likewise.
440 * testsuite/gas/bpf/exit-be.d: Likewise.
441 * testsuite/gas/bpf/exit.s: Likewise.
442 * testsuite/gas/bpf/exit.d: Likewise.
443 * testsuite/gas/bpf/call-be.d: Likewise.
444 * testsuite/gas/bpf/call.s: Likewise.
445 * testsuite/gas/bpf/call.d: Likewise.
446 * testsuite/gas/bpf/bpf.exp: Likewise.
447 * testsuite/gas/bpf/atomic-be.d: Likewise.
448 * testsuite/gas/bpf/atomic.s: Likewise.
449 * testsuite/gas/bpf/atomic.d: Likewise.
450 * testsuite/gas/bpf/alu-be.d: Likewise.
451 * testsuite/gas/bpf/alu32-be.d: Likewise.
452 * testsuite/gas/bpf/alu32.s: Likewise.
453 * testsuite/gas/bpf/alu32.d: Likewise.
454 * testsuite/gas/bpf/alu.s: Likewise.
455 * testsuite/gas/all/gas.exp: Introduce a nop_type for eBPF.
456 * testsuite/gas/all/org-1.s: Support nop_type 6.
457 * testsuite/gas/all/org-1.l: Updated to reflect changes in
458 org-1.s.
459
460 2019-05-22 John Darrington <john@darrington.wattle.id.au>
461
462 * config/tc-s12z.c (s12z_strtol): New function. (md_show_usage): Update.
463 (md_parse_option): new case OPTION_DOLLAR_HEX. (s12z_init_after_args):
464 (<global>): Use s12z_strtol instead of strtol.
465 * doc/c-s12z.texi (S12Z Options): Document new option -mdollar-hex.
466 * testsuite/gas/s12z/dollar-hex.d: New file.
467 * testsuite/gas/s12z/dollar-hex.s: New file.
468 * testsuite/gas/s12z/s12z.exp: Add them.
469
470 2019-05-21 Sudakshina Das <sudi.das@arm.com>
471
472 * config/tc-arm.c (parse_operands): Update case OP_RVC to
473 parse p0 and P0.
474 (do_vmrs): Add checks for valid operands with respect to
475 cpu and fpu options.
476 (do_vmsr): Likewise.
477 (reg_names): New reg_names for FPSCR_nzcvqc, VPR, FPCXT_NS
478 and FPCXT_S.
479 * testsuite/gas/arm/armv8_1-m-spec-reg.d: New.
480 * testsuite/gas/arm/armv8_1-m-spec-reg.s: New.
481 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.d: New.
482 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.d: New.
483 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.d: New.
484 * testsuite/gas/arm/armv8_1-m-spec-reg-bad1.l: New.
485 * testsuite/gas/arm/armv8_1-m-spec-reg-bad2.l: New.
486 * testsuite/gas/arm/armv8_1-m-spec-reg-bad3.l: New.
487 * testsuite/gas/arm/vfp1xD.d: Updated to allow new valid values.
488 * testsuite/gas/arm/vfp1xD_t2.d: Likewise.
489
490 2019-05-21 Sudakshina Das <sudi.das@arm.com>
491
492 * config/tc-arm.c (TOGGLE_BIT): New.
493 (T16_32_TAB): New entries for cinc, cinv, cneg, csinc,
494 csinv, csneg, cset, csetm and csel.
495 (operand_parse_code): New OP_RR_ZR.
496 (parse_operand): Handle case for OP_RR_ZR.
497 (do_t_cond): New.
498 (insns): New instructions for cinc, cinv, cneg, csinc,
499 csinv, csneg, cset, csetm, csel.
500 * testsuite/gas/arm/armv8_1-m-cond-bad.d: New test.
501 * testsuite/gas/arm/armv8_1-m-cond-bad.l: New test.
502 * testsuite/gas/arm/armv8_1-m-cond-bad.s: New test.
503 * testsuite/gas/arm/armv8_1-m-cond.d: New test.
504 * testsuite/gas/arm/armv8_1-m-cond.s: New test.
505
506 2019-05-21 Sudakshina Das <sudi.das@arm.com>
507
508 * config/tc-arm.c (operand_parse_code): New entries for
509 OP_RRnpcsp_I32 (register or integer operands).
510 (do_mve_scalar_shift): New.
511 (insns): New instructions for asrl, lsll, lsrl, sqrshrl, sqrshr, sqshl
512 sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll, uqshl, urshrl and urshr.
513 * testsuite/gas/arm/mve-shift.d: New.
514 * testsuite/gas/arm/mve-shift.s: New.
515 * testsuite/gas/arm/mve-shift-bad.d: New.
516 * testsuite/gas/arm/mve-shift-bad.s: New.
517 * testsuite/gas/arm/mve-shift-bad.l: New.
518
519 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
520
521 * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
522 * testsuite/gas/mips/r6-reg-constraints.s: this and add test
523 case for DAUI.
524 * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
525 * testsuite/gas/mips/r6-reg-constraints.l: this and add test
526 for DAUI.
527 * testsuite/gas/mips/mips.exp: Rename test from
528 r6-branch-constraints to r6-reg-constraints.
529
530 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
531
532 PR 24559
533 * config/tc-arm.c (move_or_literal_pool): Set size_req to 0 for MOVW
534 replacement.
535 * testsuite/gas/arm/load-pseudo.s: New test input.
536 * testsuite/gas/arm/m0-load-pseudo.d: New test.
537 * testsuite/gas/arm/m23-load-pseudo.d: New test.
538 * testsuite/gas/arm/m33-load-pseudo.d: New test.
539
540 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
541
542 * testsuite/gas/arm/armv8_1-m-bf.d: Allow different branch target naming
543 conventions.
544 * testsuite/gas/arm/armv8_1-m-bfl.d: Likewise.
545 * testsuite/gas/arm/armv8_1-m-bfcsel.d: Likewise.
546 * testsuite/gas/arm/armv8_1-m-loloop.d: Likewise.
547 * testsuite/gas/arm/armv8_1-m-bf-rel.d: Skip for vxworks.
548 * testsuite/gas/arm/armv8_1-m-bf-rela.d: New test.
549 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: Skip for vxworks.
550 * testsuite/gas/arm/armv8_1-m-bfl-rela.d: New test.
551
552 2019-05-21 John Darrington <john@darrington.wattle.id.au>
553
554 * expr.c (literal_prefix_dollar_hex): New variable.
555 (operand)[case '$']: Use the new variable instead of the old macro.
556 Also, move this instance of "case '$'" next to the other one, and
557 enable it only in the complementary proprocessor case.
558 * expr.h (literal_prefix_dollar_hex): Declare it.
559 * config/tc-epiphany.c (md_begin): Assign literal_prefix_dollar_hex.
560 * config/tc-ip2k.c: ditto
561 * config/tc-mt.c: ditto
562 * config/tc-epiphany.h (LITERAL_PREFIXDOLLAR_HEX): Remove macro definition.
563 * config/tc-ip2k.h: ditto
564 * config/tc-mt.h: ditto
565
566 2019-05-20 Faraz Shahbazker <fshahbazker@wavecomp.com>
567
568 PR 14798
569 * config/tc-mips.c (s_mips_globl): Only treat symbols that are
570 not explicitly labelled as BSF_OBJECTs for IRIX targets.
571 * testsuite/gas/mips/pr14798.s: New test source.
572 * testsuite/gas/mips/pr14798-irix.d: New test.
573 * testsuite/gas/mips/pr14798.d: Likewise.
574 * testsuite/gas/mips/mips.exp: Run the new tests.
575
576 2019-05-17 John Darrington <john@darrington.wattle.id.au>
577
578 * doc/c-arm.texi (ARM Options): Remove "(r)" and "(tm)"
579 * doc/c-bfin.texi (Blackfin Syntax): Remove "(r)"
580
581 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
582
583 * config/tc-arm.c (check_simd_pred_availability): Refactor.
584 (do_neon_dyadic_i_su): Refactor use of check_simd_pred_availability.
585 (do_neon_dyadic_i64_su): Likewise.
586 (do_neon_shl): Likewise.
587 (do_neon_qshl): Likewise.
588 (do_neon_rshl): Likewise.
589 (do_neon_logic): Likewise.
590 (do_neon_dyadic_if_su): Likewise.
591 (do_neon_addsub_if_i): Likewise.
592 (do_neon_mac_maybe_scalar): Likewise.
593 (do_neon_fmac): Likewise.
594 (do_neon_mul): Likewise.
595 (do_neon_qdmulh): Likewise.
596 (do_neon_qrdmlah): Likewise.
597 (do_neon_abs_neg): Likewise.
598 (do_neon_sli): Likewise.
599 (do_neon_sri): Likewise.
600 (do_neon_qshlu_imm): Likewise.
601 (do_neon_cvt_1): Likewise.
602 (do_neon_cvttb_1): Likewise.
603 (do_neon_mvn): Likewise.
604 (do_neon_rev): Likewise.
605 (do_neon_dup): Likewise.
606 (do_neon_mov): Likewise.
607 (do_neon_rshift_round_imm): Likewise.
608 (do_neon_sat_abs_neg): Likewise.
609 (do_neon_cls): Likewise.
610 (do_neon_clz): Likewise.
611 (do_vmaxnm): Likewise.
612 (do_vrint_1): Likewise.
613 (do_vcmla): Likewise.
614 (do_vcadd): Likewise.
615
616 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
617
618 * NEWS: Mention Armv8.1-M Mainline and MVE.
619
620 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
621
622 * testsuite/gas/arm/mve-tailpredloop.d: New test.
623 * testsuite/gas/arm/mve-tailpredloop.s: New test.
624 * testsuite/gas/arm/mve-vabav.d: New test.
625 * testsuite/gas/arm/mve-vabav.s: New test.
626 * testsuite/gas/arm/mve-vabd.d: New test.
627 * testsuite/gas/arm/mve-vabd.s: New test.
628 * testsuite/gas/arm/mve-vabsneg.d: New test.
629 * testsuite/gas/arm/mve-vabsneg.s: New test.
630 * testsuite/gas/arm/mve-vadc.d: New test.
631 * testsuite/gas/arm/mve-vadc.s: New test.
632 * testsuite/gas/arm/mve-vaddlv.d: New test.
633 * testsuite/gas/arm/mve-vaddlv.s: New test.
634 * testsuite/gas/arm/mve-vaddsub.d: New test.
635 * testsuite/gas/arm/mve-vaddsub.s: New test.
636 * testsuite/gas/arm/mve-vaddv.d: New test.
637 * testsuite/gas/arm/mve-vaddv.s: New test.
638 * testsuite/gas/arm/mve-vand.d: New test.
639 * testsuite/gas/arm/mve-vand.s: New test.
640 * testsuite/gas/arm/mve-vbic.d: New test.
641 * testsuite/gas/arm/mve-vbic.s: New test.
642 * testsuite/gas/arm/mve-vbrsr.d: New test.
643 * testsuite/gas/arm/mve-vbrsr.s: New test.
644 * testsuite/gas/arm/mve-vcadd.d: New test.
645 * testsuite/gas/arm/mve-vcadd.s: New test.
646 * testsuite/gas/arm/mve-vcls.d: New test.
647 * testsuite/gas/arm/mve-vcls.s: New test.
648 * testsuite/gas/arm/mve-vclz.d: New test.
649 * testsuite/gas/arm/mve-vclz.s: New test.
650 * testsuite/gas/arm/mve-vcmla.d: New test.
651 * testsuite/gas/arm/mve-vcmla.s: New test.
652 * testsuite/gas/arm/mve-vcmp.d: New test.
653 * testsuite/gas/arm/mve-vcmp.s: New test.
654 * testsuite/gas/arm/mve-vcmul.d: New test.
655 * testsuite/gas/arm/mve-vcmul.s: New test.
656 * testsuite/gas/arm/mve-vcvt-1.d: New test.
657 * testsuite/gas/arm/mve-vcvt-1.s: New test.
658 * testsuite/gas/arm/mve-vcvt-2.d: New test.
659 * testsuite/gas/arm/mve-vcvt-2.s: New test.
660 * testsuite/gas/arm/mve-vcvt-3.d: New test.
661 * testsuite/gas/arm/mve-vcvt-3.s: New test.
662 * testsuite/gas/arm/mve-vcvt-4.d: New test.
663 * testsuite/gas/arm/mve-vcvt-4.s: New test.
664 * testsuite/gas/arm/mve-vddup.d: New test.
665 * testsuite/gas/arm/mve-vddup.s: New test.
666 * testsuite/gas/arm/mve-vdup.d: New test.
667 * testsuite/gas/arm/mve-vdup.s: New test.
668 * testsuite/gas/arm/mve-veor.d: New test.
669 * testsuite/gas/arm/mve-veor.s: New test.
670 * testsuite/gas/arm/mve-vfma-vfms.d: New test.
671 * testsuite/gas/arm/mve-vfma-vfms.s: New test.
672 * testsuite/gas/arm/mve-vfmas.d: New test.
673 * testsuite/gas/arm/mve-vfmas.s: New test.
674 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.d: New test.
675 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd.s: New test.
676 * testsuite/gas/arm/mve-vhcadd.d: New test.
677 * testsuite/gas/arm/mve-vhcadd.s: New test.
678 * testsuite/gas/arm/mve-vmax-vmin.d: New test.
679 * testsuite/gas/arm/mve-vmax-vmin.s: New test.
680 * testsuite/gas/arm/mve-vmaxa-vmina.d: New test.
681 * testsuite/gas/arm/mve-vmaxa-vmina.s: New test.
682 * testsuite/gas/arm/mve-vmaxnm-vminnm.d: New test.
683 * testsuite/gas/arm/mve-vmaxnm-vminnm.s: New test.
684 * testsuite/gas/arm/mve-vmaxnma-vminnma.s: New test.
685 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.d: New test.
686 * testsuite/gas/arm/mve-vmaxnmv-vminnmv.s: New test.
687 * testsuite/gas/arm/mve-vmaxv-vminv.d: New test.
688 * testsuite/gas/arm/mve-vmaxv-vminv.s: New test.
689 * testsuite/gas/arm/mve-vmla.d: New test.
690 * testsuite/gas/arm/mve-vmla.s: New test.
691 * testsuite/gas/arm/mve-vmladav.d: New test.
692 * testsuite/gas/arm/mve-vmladav.s: New test.
693 * testsuite/gas/arm/mve-vmlaldav.d: New test.
694 * testsuite/gas/arm/mve-vmlaldav.s: New test.
695 * testsuite/gas/arm/mve-vmlalv.d: New test.
696 * testsuite/gas/arm/mve-vmlalv.s: New test.
697 * testsuite/gas/arm/mve-vmlas.d: New test.
698 * testsuite/gas/arm/mve-vmlas.s: New test.
699 * testsuite/gas/arm/mve-vmlav.d: New test.
700 * testsuite/gas/arm/mve-vmlav.s: New test.
701 * testsuite/gas/arm/mve-vmlsdav.d: New test.
702 * testsuite/gas/arm/mve-vmlsdav.s: New test.
703 * testsuite/gas/arm/mve-vmlsldav.d: New test.
704 * testsuite/gas/arm/mve-vmlsldav.s: New test.
705 * testsuite/gas/arm/mve-vmov-1.d: New test.
706 * testsuite/gas/arm/mve-vmov-1.s: New test.
707 * testsuite/gas/arm/mve-vmov-2.d: New test.
708 * testsuite/gas/arm/mve-vmov-2.s: New test.
709 * testsuite/gas/arm/mve-vmul.d: New test.
710 * testsuite/gas/arm/mve-vmul.s: New test.
711 * testsuite/gas/arm/mve-vmulh.d: New test.
712 * testsuite/gas/arm/mve-vmulh.s: New test.
713 * testsuite/gas/arm/mve-vmullbt.d: New test.
714 * testsuite/gas/arm/mve-vmullbt.s: New test.
715 * testsuite/gas/arm/mve-vmvn.d: New test.
716 * testsuite/gas/arm/mve-vmvn.s: New test.
717 * testsuite/gas/arm/mve-vorn.d: New test.
718 * testsuite/gas/arm/mve-vorn.s: New test.
719 * testsuite/gas/arm/mve-vorr.d: New test.
720 * testsuite/gas/arm/mve-vorr.s: New test.
721 * testsuite/gas/arm/mve-vpnot.d: New test.
722 * testsuite/gas/arm/mve-vpnot.s: New test.
723 * testsuite/gas/arm/mve-vpsel.d: New test.
724 * testsuite/gas/arm/mve-vpsel.s: New test.
725 * testsuite/gas/arm/mve-vpt.d: New test.
726 * testsuite/gas/arm/mve-vpt.s: New test.
727 * testsuite/gas/arm/mve-vqabsneg.s: New test.
728 * testsuite/gas/arm/mve-vqaddsub.d: New test.
729 * testsuite/gas/arm/mve-vqaddsub.s: New test.
730 * testsuite/gas/arm/mve-vqdmladh.d: New test.
731 * testsuite/gas/arm/mve-vqdmladh.s: New test.
732 * testsuite/gas/arm/mve-vqdmlah.d: New test.
733 * testsuite/gas/arm/mve-vqdmlah.s: New test.
734 * testsuite/gas/arm/mve-vqdmlash.d: New test.
735 * testsuite/gas/arm/mve-vqdmlash.s: New test.
736 * testsuite/gas/arm/mve-vqdmlsdh.d: New test.
737 * testsuite/gas/arm/mve-vqdmlsdh.s: New test.
738 * testsuite/gas/arm/mve-vqdmulh.d: New test.
739 * testsuite/gas/arm/mve-vqdmulh.s: New test.
740 * testsuite/gas/arm/mve-vqdmull.d: New test.
741 * testsuite/gas/arm/mve-vqdmull.s: New test.
742 * testsuite/gas/arm/mve-vqmovn.d: New test.
743 * testsuite/gas/arm/mve-vqmovn.s: New test.
744 * testsuite/gas/arm/mve-vqrshl.d: New test.
745 * testsuite/gas/arm/mve-vqrshl.s: New test.
746 * testsuite/gas/arm/mve-vqrshrn.d: New test.
747 * testsuite/gas/arm/mve-vqrshrn.s: New test.
748 * testsuite/gas/arm/mve-vqshl.d: New test.
749 * testsuite/gas/arm/mve-vqshl.s: New test.
750 * testsuite/gas/arm/mve-vrev.d: New test.
751 * testsuite/gas/arm/mve-vrev.s: New test.
752 * testsuite/gas/arm/mve-vrint.d: New test.
753 * testsuite/gas/arm/mve-vrint.s: New test.
754 * testsuite/gas/arm/mve-vrmlaldavh.d: New test.
755 * testsuite/gas/arm/mve-vrmlaldavh.s: New test.
756 * testsuite/gas/arm/mve-vrshl.d: New test.
757 * testsuite/gas/arm/mve-vrshl.s: New test.
758 * testsuite/gas/arm/mve-vsbc.d: New test.
759 * testsuite/gas/arm/mve-vsbc.s: New test.
760 * testsuite/gas/arm/mve-vshl.d: New test.
761 * testsuite/gas/arm/mve-vshl.s: New test.
762 * testsuite/gas/arm/mve-vshlc.d: New test.
763 * testsuite/gas/arm/mve-vshlc.s: New test.
764 * testsuite/gas/arm/mve-vshll.d: New test.
765 * testsuite/gas/arm/mve-vshll.s: New test.
766 * testsuite/gas/arm/mve-vshr.d: New test.
767 * testsuite/gas/arm/mve-vshr.s: New test.
768 * testsuite/gas/arm/mve-vshrn.d: New test.
769 * testsuite/gas/arm/mve-vshrn.s: New test.
770 * testsuite/gas/arm/mve-vsli.d: New test.
771 * testsuite/gas/arm/mve-vsli.s: New test.
772 * testsuite/gas/arm/mve-vsri.d: New test.
773 * testsuite/gas/arm/mve-vsri.s: New test.
774 * testsuite/gas/arm/mve-vstld.d: New test.
775 * testsuite/gas/arm/mve-vstld.s: New test.
776 * testsuite/gas/arm/mve-vstrldr-1.d: New test.
777 * testsuite/gas/arm/mve-vstrldr-1.s: New test.
778 * testsuite/gas/arm/mve-vstrldr-2.d: New test.
779 * testsuite/gas/arm/mve-vstrldr-2.s: New test.
780 * testsuite/gas/arm/mve-vstrldr-3.d: New test.
781 * testsuite/gas/arm/mve-vstrldr-3.s: New test.
782
783 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
784
785 * config/tc-arm.c (T16_32_TAB): Add new instructions.
786 (do_t_loloop): Changed to handle tail predication variants.
787 (md_apply_fix): Likewise.
788 (insns): Add entries for MVE mnemonics.
789 * testsuite/gas/arm/mve-tailpredloop-bad.d: New test.
790 * testsuite/gas/arm/mve-tailpredloop-bad.l: New test.
791 * testsuite/gas/arm/mve-tailpredloop-bad.s: New test.
792 * testsuite/gas/arm/mve-tailpredloop.d: New test.
793
794 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
795
796 * config/tc-arm.c (do_mve_vshll): New encoding function.
797 (do_mve_vshlc): Likewise.
798 (insns): Add entries for MVE mnemonics.
799 * testsuite/gas/arm/mve-vshlc-bad.d: New test.
800 * testsuite/gas/arm/mve-vshlc-bad.l: New test.
801 * testsuite/gas/arm/mve-vshlc-bad.s: New test.
802 * testsuite/gas/arm/mve-vshll-bad.d: New test.
803 * testsuite/gas/arm/mve-vshll-bad.l: New test.
804 * testsuite/gas/arm/mve-vshll-bad.s: New test.
805
806 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
807
808 * config/tc-arm.c (enum operand_parse_code): Add new operand.
809 (parse_operands): Handle new operand.
810 (do_neon_shl_imm): Accept MVE variants.
811 (do_neon_shl): Likewise.
812 (do_neon_qshl_imm): Likewise.
813 (do_neon_qshl): Likewise.
814 (do_neon_qshlu_imm): Likewise.
815 (insns): Likewise.
816 * testsuite/gas/arm/mve-vqshl-bad.d: New test.
817 * testsuite/gas/arm/mve-vqshl-bad.l: New test.
818 * testsuite/gas/arm/mve-vqshl-bad.s: New test.
819 * testsuite/gas/arm/mve-vshl-bad.d: New test.
820 * testsuite/gas/arm/mve-vshl-bad.l: New test.
821 * testsuite/gas/arm/mve-vshl-bad.s: New test.
822
823 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
824
825 * config/tc-arm.c (do_neon_sli): Accept MVE variants.
826 (do_neon_sri): Likewise.
827 (do_neon_rev): Likewise.
828 (do_neon_rshift_round_imm): Likewise.
829 (insns): Likewise.
830 * testsuite/gas/arm/mve-vrev-bad.d: New test.
831 * testsuite/gas/arm/mve-vrev-bad.l: New test.
832 * testsuite/gas/arm/mve-vrev-bad.s: New test.
833 * testsuite/gas/arm/mve-vshr-bad.d: New test.
834 * testsuite/gas/arm/mve-vshr-bad.l: New test.
835 * testsuite/gas/arm/mve-vshr-bad.s: New test.
836 * testsuite/gas/arm/mve-vsli-bad.d: New test.
837 * testsuite/gas/arm/mve-vsli-bad.l: New test.
838 * testsuite/gas/arm/mve-vsli-bad.s: New test.
839 * testsuite/gas/arm/mve-vsri-bad.d: New test.
840 * testsuite/gas/arm/mve-vsri-bad.l: New test.
841 * testsuite/gas/arm/mve-vsri-bad.s: New test.
842
843 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
844
845 * config/tc-arm.c (do_vrint_1): Accept MVE variants.
846 (insns): Change entries to accept MVE variants.
847 * testsuite/gas/arm/mve-vrint-bad.d: New test.
848 * testsuite/gas/arm/mve-vrint-bad.l: New test.
849 * testsuite/gas/arm/mve-vrint-bad.s: New test.
850
851 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
852
853 * config/tc-arm.c (M_MNEM_vshrnt, M_MNEM_vshrnb, M_MNEM_vrshrnt,
854 M_MNEM_vqshrnt, M_MNEM_vqshrnb, M_MNEM_vqshrunt, M_MNEM_vqshrunb,
855 M_MNEM_vrshrnb, M_MNEM_vqrshrnt, M_MNEM_vqrshrnb, M_MNEM_vqrshrunt,
856 M_MNEM_vqrshrunb): New instruction encodings.
857 (do_mve_vshrn): New encoding function.
858 (insns): Add entries for MVE mnemonics.
859 * testsuite/gas/arm/mve-vqrshrn-bad.d: New test.
860 * testsuite/gas/arm/mve-vqrshrn-bad.l: New test.
861 * testsuite/gas/arm/mve-vqrshrn-bad.s: New test.
862 * testsuite/gas/arm/mve-vshrn-bad.d: New test.
863 * testsuite/gas/arm/mve-vshrn-bad.l: New test.
864 * testsuite/gas/arm/mve-vshrn-bad.s: New test.
865
866 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
867
868 * config/tc-arm.c (M_MNEM_vqmovnt, M_MNEM_vqmovnb,
869 M_MNEM_vqmovunt, M_MNEM_vqmovunb): New instruction encodings.
870 (do_mve_vqmovn): New encoding function.
871 (do_neon_rshl): Change to accepte MVE variants.
872 (insns): Change entries and add new for MVE mnemonics.
873 * testsuite/gas/arm/mve-vqmovn-bad.d: New test.
874 * testsuite/gas/arm/mve-vqmovn-bad.l: New test.
875 * testsuite/gas/arm/mve-vqmovn-bad.s: New test.
876 * testsuite/gas/arm/mve-vqrshl-bad.d: New test.
877 * testsuite/gas/arm/mve-vqrshl-bad.l: New test.
878 * testsuite/gas/arm/mve-vqrshl-bad.s: New test.
879 * testsuite/gas/arm/mve-vrshl-bad.d: New test.
880 * testsuite/gas/arm/mve-vrshl-bad.l: New test.
881 * testsuite/gas/arm/mve-vrshl-bad.s: New test.
882
883 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
884
885 * config/tc-arm.c (enum operand_parse_code): Add new operand.
886 (parse_operands): Handle new operand.
887 (do_mve_vqdmull): New encoding function.
888 (insns): Add entry for MVE mnemonics.
889 * testsuite/gas/arm/mve-vqdmull-bad.d: New test.
890 * testsuite/gas/arm/mve-vqdmull-bad.l: New test.
891 * testsuite/gas/arm/mve-vqdmull-bad.s: New test.
892
893 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
894
895 * config/tc-arm.c (enum operand_parse_code): Add new operand.
896 (parse_operands): Handle new operand.
897 (mve_encode_qqr): Handle new instructions.
898 (do_neon_qdmulh): Add support for MVE variants.
899 (do_neon_qrdmlah): Likewise.
900 (do_mve_vqdmlah): New encoding function.
901 (insns): Change entries and add new entries for MVE mnemonics.
902 * testsuite/gas/arm/mve-vqdmulh-bad.d: New test.
903 * testsuite/gas/arm/mve-vqdmulh-bad.l: New test.
904 * testsuite/gas/arm/mve-vqdmulh-bad.s: New test.
905
906 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
907
908 * config/tc-arm.c (do_mve_vqdmladh): New encoding function.
909 (insns): Add entries for MVE mnemonics.
910 * testsuite/gas/arm/mve-vqdmladh-bad.d: New test.
911 * testsuite/gas/arm/mve-vqdmladh-bad.l: New test.
912 * testsuite/gas/arm/mve-vqdmladh-bad.s: New test.
913 * testsuite/gas/arm/mve-vqdmlsdh-bad.d: New test.
914 * testsuite/gas/arm/mve-vqdmlsdh-bad.l: New test.
915 * testsuite/gas/arm/mve-vqdmlsdh-bad.s: New test.
916
917 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
918
919 * config/tc-arm.c (do_mve_vpsel): New encoding function.
920 (do_mve_vpnot): Likewise.
921 (insns): Add entries for MVE mnemonics.
922 * testsuite/gas/arm/mve-vpnot-bad.d: New test.
923 * testsuite/gas/arm/mve-vpnot-bad.l: New test.
924 * testsuite/gas/arm/mve-vpnot-bad.s: New test.
925 * testsuite/gas/arm/mve-vpsel-bad.d: New test.
926 * testsuite/gas/arm/mve-vpsel-bad.l: New test.
927 * testsuite/gas/arm/mve-vpsel-bad.s: New test.
928
929 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
930
931 * config/tc-arm.c (do_neon_mvn): Change to accept MVE variants.
932 (do_neon_sat_abs_neg): Likewise.
933 (insns): Likewise.
934 * testsuite/gas/arm/mve-vmvn-bad.d: New test.
935 * testsuite/gas/arm/mve-vmvn-bad.l: New test.
936 * testsuite/gas/arm/mve-vmvn-bad.s: New test.
937 * testsuite/gas/arm/mve-vqabsneg-bad.d: New test.
938 * testsuite/gas/arm/mve-vqabsneg-bad.l: New test.
939 * testsuite/gas/arm/mve-vqabsneg-bad.s: New test.
940
941 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
942
943 * config/tc-arm.c (do_mve_vmlas): New encoding function.
944 (do_mve_vmulh): Likewise.
945 (insns): Add entries for MVE mnemonics.
946 * testsuite/gas/arm/mve-vmlas-bad.d: New test.
947 * testsuite/gas/arm/mve-vmlas-bad.l: New test.
948 * testsuite/gas/arm/mve-vmlas-bad.s: New test.
949 * testsuite/gas/arm/mve-vmulh-bad.d: New test.
950 * testsuite/gas/arm/mve-vmulh-bad.l: New test.
951 * testsuite/gas/arm/mve-vmulh-bad.s: New test.
952
953 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
954
955 * config/tc-arm.c (enum operand_parse_code): New operand.
956 (parse_operands): Handle new operand.
957 (mve_encode_qqr): Handle new instructions.
958 (do_neon_dyadic_i64_su): Accept MVE variants.
959 (neon_dyadic_misc): Likewise.
960 (do_neon_mac_maybe_scalar): Likewise.
961 (do_neon_mul): Likewise.
962 (insns): Change to accept MVE variants.
963 * testsuite/gas/arm/mve-vmla-bad.d: New test.
964 * testsuite/gas/arm/mve-vmla-bad.l: New test.
965 * testsuite/gas/arm/mve-vmla-bad.s: New test.
966 * testsuite/gas/arm/mve-vmul-bad-1.d: New test.
967 * testsuite/gas/arm/mve-vmul-bad-1.l: New test.
968 * testsuite/gas/arm/mve-vmul-bad-1.s: New test.
969 * testsuite/gas/arm/mve-vmul-bad-2.d: New test.
970 * testsuite/gas/arm/mve-vmul-bad-2.l: New test.
971 * testsuite/gas/arm/mve-vmul-bad-2.s: New test.
972 * testsuite/gas/arm/mve-vqaddsub-bad.d: New test.
973 * testsuite/gas/arm/mve-vqaddsub-bad.l: New test.
974 * testsuite/gas/arm/mve-vqaddsub-bad.s: New test.
975
976 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
977
978 * config/tc-arm.c (M_MNEM_vmlaldav, M_MNEM_vmlaldava,
979 M_MNEM_vmlaldavx, M_MNEM_vmlaldavax, M_MNEM_vmlsldav,
980 M_MNEM_vmlsldava, M_MNEM_vmlsldavx, M_MNEM_vmlsldavax,
981 M_MNEM_vrmlaldavhx, M_MNEM_vrmlaldavhax, M_MNEM_vrmlsldavh,
982 M_MNEM_vrmlsldavha, M_MNEM_vrmlsldavhx, M_MNEM_vrmlsldavhax): New
983 instruction encodings.
984 (NEON_SHAPE_DEF): New shape
985 (mve_encode_rrqq): New encoding helper function.
986 (do_mve_vmlaldav): New encoding function.
987 (do_mve_vrmlaldavh): New encoding function.
988 (insns): Add entries for MVE mnemonics.
989 * testsuite/gas/arm/mve-vmlaldav-bad.d: New test.
990 * testsuite/gas/arm/mve-vmlaldav-bad.l: New test.
991 * testsuite/gas/arm/mve-vmlaldav-bad.s: New test.
992 * testsuite/gas/arm/mve-vmlalv-bad.d: New test.
993 * testsuite/gas/arm/mve-vmlalv-bad.l: New test.
994 * testsuite/gas/arm/mve-vmlalv-bad.s: New test.
995 * testsuite/gas/arm/mve-vmlsldav-bad.d: New test.
996 * testsuite/gas/arm/mve-vmlsldav-bad.l: New test.
997 * testsuite/gas/arm/mve-vmlsldav-bad.s: New test.
998 * testsuite/gas/arm/mve-vrmlaldavh-bad.d: New test.
999 * testsuite/gas/arm/mve-vrmlaldavh-bad.l: New test.
1000 * testsuite/gas/arm/mve-vrmlaldavh-bad.s: New test.
1001
1002 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1003
1004 * config/tc-arm.c (M_MNEM_vmaxv, M_MNEM_vmaxav, M_MNEM_vminv,
1005 M_MNEM_vminav): New instruction encodings.
1006 (do_mve_vmaxv): New encoding function.
1007 (insns): Add entries for new MVE mnemonics.
1008 * testsuite/gas/arm/mve-vmaxv-vminv-bad.d: New test.
1009 * testsuite/gas/arm/mve-vmaxv-vminv-bad.l: New test.
1010 * testsuite/gas/arm/mve-vmaxv-vminv-bad.s: New test.
1011
1012 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1013
1014 * config/tc-arm.c (do_mve_vmaxnmv): New encoding function.
1015 (insns): Add entries for new mnemonics.
1016 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.d: New test.
1017 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.l: New test.
1018 * testsuite/gas/arm/mve-vmaxnmv-vminnmv-bad.s: New test.
1019
1020 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1021
1022 * config/tc-arm.c (do_mve_vmaxa_vmina): New encoding function.
1023 (do_mve_vmaxnma_vminnma): Likewise.
1024 (do_neon_dyadic_if_su): Change to support MVE variants.
1025 (do_vmaxnm): Likewise.
1026 (insns): Change to accept MVE variants and add new.
1027 * testsuite/gas/arm/mve-vmax-vmin-bad.d: New test.
1028 * testsuite/gas/arm/mve-vmax-vmin-bad.l: New test.
1029 * testsuite/gas/arm/mve-vmax-vmin-bad.s: New test.
1030 * testsuite/gas/arm/mve-vmaxa-vmina-bad.d: New test.
1031 * testsuite/gas/arm/mve-vmaxa-vmina-bad.l: New test.
1032 * testsuite/gas/arm/mve-vmaxa-vmina-bad.s: New test.
1033 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.d: New test.
1034 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.l: New test.
1035 * testsuite/gas/arm/mve-vmaxnm-vminnm-bad.s: New test.
1036 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.d: New test.
1037 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.l: New test.
1038 * testsuite/gas/arm/mve-vmaxnma-vminnma-bad.s: New test.
1039
1040 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1041
1042 * config/tc-arm.c (enum operand_parse_code): New operand.
1043 (parse_operands): Handle new operand.
1044 (mve_encode_qqr): Change to support new instructions.
1045 (enum vfp_or_neon_is_neon_bits): Moved.
1046 (vfp_or_neon_is_neon): Moved.
1047 (check_simd_pred_availability): Moved.
1048 (do_neon_dyadic_i_su): Changed to support MVE variants.
1049 (neon_dyadic_misc): Changed mve_encode_qqr call.
1050 (do_mve_vbrsr): Likewise.
1051 (do_mve_vhcadd): New encoding function.
1052 (insns): Change existing to accept MVE variants and add new.
1053 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.d: New test.
1054 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.l: New test.
1055 * testsuite/gas/arm/mve-vhadd-vhsub-vrhadd-bad.s: New test.
1056 * testsuite/gas/arm/mve-vhcadd-bad.d: New test.
1057 * testsuite/gas/arm/mve-vhcadd-bad.l: New test.
1058 * testsuite/gas/arm/mve-vhcadd-bad.s: New test.
1059
1060 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1061
1062 * config/tc-arm.c (do_neon_fmac): Change to support MVE variants.
1063 (insns): Change to accept MVE variants.
1064 * testsuite/gas/arm/mve-vfma-vfms-bad.d: New test.
1065 * testsuite/gas/arm/mve-vfma-vfms-bad.l: New test.
1066 * testsuite/gas/arm/mve-vfma-vfms-bad.s: New test.
1067
1068 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1069
1070 * config/tc-arm.c (M_MNEM_vddup, M_MNEM_vdwdup, M_MNEM_vidup,
1071 M_MNEM_viwdup): New instruction encodings.
1072 (NEON_SHAPE_DEF): New shapes.
1073 (do_mve_viddup): New encoding function.
1074 (do_neon_dup): Change to support new MVE variants.
1075 (insns): Change existing to accept MVE variants and add new.
1076 * testsuite/gas/arm/mve-vddup-bad.d: New test.
1077 * testsuite/gas/arm/mve-vddup-bad.l: New test.
1078 * testsuite/gas/arm/mve-vddup-bad.s: New test.
1079 * testsuite/gas/arm/mve-vdup-bad.d: New test.
1080 * testsuite/gas/arm/mve-vdup-bad.l: New test.
1081 * testsuite/gas/arm/mve-vdup-bad.s: New test.
1082 * testsuite/gas/arm/mve-vidup-bad.d: New test.
1083 * testsuite/gas/arm/mve-vidup-bad.l: New test.
1084 * testsuite/gas/arm/mve-vidup-bad.s: New test.
1085
1086 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1087
1088 * config/tc-arm.c (do_mve_vfmas): New encoding function.
1089 (do_neon_cls): Change to support MVE variants.
1090 (do_neon_clz): Change to support MVE variants.
1091 (insns): Change to support MVE variants and add new.
1092 * testsuite/gas/arm/mve-vcls-bad.d: New test.
1093 * testsuite/gas/arm/mve-vcls-bad.l: New test.
1094 * testsuite/gas/arm/mve-vcls-bad.s: New test.
1095 * testsuite/gas/arm/mve-vclz-bad.d: New test.
1096 * testsuite/gas/arm/mve-vclz-bad.l: New test.
1097 * testsuite/gas/arm/mve-vclz-bad.s: New test.
1098 * testsuite/gas/arm/mve-vfmas-bad.d: New test.
1099 * testsuite/gas/arm/mve-vfmas-bad.l: New test.
1100 * testsuite/gas/arm/mve-vfmas-bad.s: New test.
1101
1102 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1103
1104 * config/tc-arm.c (enum operand_parse_code): New operands.
1105 (parse_operands): Handle new operands.
1106 (do_mve_vcmul): New encoding function.
1107 (do_vcmla): Change to support MVE variants.
1108 (do_vcadd): Change to support MVE variants.
1109 (insns): Change existing to support MVE variants and add new.
1110 * testsuite/gas/arm/mve-vcadd-bad-1.d: New test.
1111 * testsuite/gas/arm/mve-vcadd-bad-1.l: New test.
1112 * testsuite/gas/arm/mve-vcadd-bad-1.s: New test.
1113 * testsuite/gas/arm/mve-vcadd-bad-2.d: New test.
1114 * testsuite/gas/arm/mve-vcadd-bad-2.l: New test.
1115 * testsuite/gas/arm/mve-vcadd-bad-2.s: New test.
1116 * testsuite/gas/arm/mve-vcmla-bad-1.d: New test.
1117 * testsuite/gas/arm/mve-vcmla-bad-1.l: New test.
1118 * testsuite/gas/arm/mve-vcmla-bad-1.s: New test.
1119 * testsuite/gas/arm/mve-vcmla-bad-2.d: New test.
1120 * testsuite/gas/arm/mve-vcmla-bad-2.l: New test.
1121 * testsuite/gas/arm/mve-vcmla-bad-2.s: New test.
1122 * testsuite/gas/arm/mve-vcmul-bad-1.d: New test.
1123 * testsuite/gas/arm/mve-vcmul-bad-1.l: New test.
1124 * testsuite/gas/arm/mve-vcmul-bad-1.s: New test.
1125 * testsuite/gas/arm/mve-vcmul-bad-2.d: New test.
1126 * testsuite/gas/arm/mve-vcmul-bad-2.l: New test.
1127 * testsuite/gas/arm/mve-vcmul-bad-2.s: New test.
1128
1129 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1130
1131 * config/tc-arm.c (enum operand_parse_code): New operands.
1132 (parse_operands): Handle new operands.
1133 (enum vfp_or_neon_is_neon_bits): Moved
1134 (vfp_or_neon_is_neon): Moved
1135 (check_simd_pred_availability): Moved.
1136 (do_neon_logic): Change to accept MVE variants.
1137 (insns): Changed to accept MVE variants.
1138 * testsuite/gas/arm/mve-vand-bad.d: New test.
1139 * testsuite/gas/arm/mve-vand-bad.l: New test.
1140 * testsuite/gas/arm/mve-vand-bad.s: New test.
1141 * testsuite/gas/arm/mve-vbic-bad.d: New test.
1142 * testsuite/gas/arm/mve-vbic-bad.l: New test.
1143 * testsuite/gas/arm/mve-vbic-bad.s: New test.
1144 * testsuite/gas/arm/mve-veor-bad.d: New test.
1145 * testsuite/gas/arm/mve-veor-bad.l: New test.
1146 * testsuite/gas/arm/mve-veor-bad.s: New test.
1147 * testsuite/gas/arm/mve-vorn-bad.d: New test.
1148 * testsuite/gas/arm/mve-vorn-bad.l: New test.
1149 * testsuite/gas/arm/mve-vorn-bad.s: New test.
1150 * testsuite/gas/arm/mve-vorr-bad.d: New test.
1151 * testsuite/gas/arm/mve-vorr-bad.l: New test.
1152 * testsuite/gas/arm/mve-vorr-bad.s: New test.
1153
1154 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1155
1156 * config/tc-arm.c (M_MNEM_vaddlv, M_MNEM_vaddlva, M_MNEM_vaddv,
1157 M_MNEM_vaddva): New instruction encodings.
1158 (mve_encode_rq): New encoding helper function.
1159 (do_mve_vaddlv): New encoding function.
1160 (do_mve_vaddv): New encoding function.
1161 * testsuite/gas/arm/mve-vaddlv-bad.d: New test.
1162 * testsuite/gas/arm/mve-vaddlv-bad.l: New test.
1163 * testsuite/gas/arm/mve-vaddlv-bad.s: New test.
1164 * testsuite/gas/arm/mve-vaddv-bad.d: New test.
1165 * testsuite/gas/arm/mve-vaddv-bad.l: New test.
1166 * testsuite/gas/arm/mve-vaddv-bad.s: New test.
1167
1168 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1169
1170 * config/tc-arm.c (M_MNEM_vadc, M_MNEM_vadci, M_MNEM_vbrsr):
1171 New instruction encodings.
1172 (do_mve_vadc): New encoding instruction.
1173 (do_mve_vbrsr): Likewise.
1174 (do_mve_vsbc): Likewise.
1175 * testsuite/gas/arm/mve-vadc-bad.d: New test.
1176 * testsuite/gas/arm/mve-vadc-bad.l: New test.
1177 * testsuite/gas/arm/mve-vadc-bad.s: New test.
1178 * testsuite/gas/arm/mve-vbrsr-bad.d: New test.
1179 * testsuite/gas/arm/mve-vbrsr-bad.l: New test.
1180 * testsuite/gas/arm/mve-vbrsr-bad.s: New test.
1181 * testsuite/gas/arm/mve-vsbc-bad.d: New test.
1182 * testsuite/gas/arm/mve-vsbc-bad.l: New test.
1183 * testsuite/gas/arm/mve-vsbc-bad.s: New test.
1184
1185 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1186
1187 * config/tc-arm.c (MVE_BAD_QREG): New error message.
1188 (enum operand_parse_code): Define new operand.
1189 (parse_operands): Handle new operand.
1190 (do_mve_vpt): Change for VPT blocks.
1191 (NEON_SHAPE_DEF): New shape.
1192 (neon_logbits): Moved.
1193 (LOW4): Moved
1194 (HI1): Moved
1195 (mve_get_vcmp_vpt_cond): New function to translate vpt conditions.
1196 (do_mve_vcmp): New encoding function.
1197 (do_vfp_nsyn_cmp): Changed to support MVE variants.
1198 (insns): Change to support MVE variants of vcmp and add vpt.
1199 * testsuite/gas/arm/mve-vcmp-bad-1.d: New test.
1200 * testsuite/gas/arm/mve-vcmp-bad-1.l: New test.
1201 * testsuite/gas/arm/mve-vcmp-bad-1.s: New test.
1202 * testsuite/gas/arm/mve-vcmp-bad-2.d: New test.
1203 * testsuite/gas/arm/mve-vcmp-bad-2.l: New test.
1204 * testsuite/gas/arm/mve-vcmp-bad-2.s: New test.
1205 * testsuite/gas/arm/mve-vpt-bad-1.d: New test.
1206 * testsuite/gas/arm/mve-vpt-bad-1.l: New test.
1207 * testsuite/gas/arm/mve-vpt-bad-1.s: New test.
1208 * testsuite/gas/arm/mve-vpt-bad-2.d: New test.
1209 * testsuite/gas/arm/mve-vpt-bad-2.l: New test.
1210 * testsuite/gas/arm/mve-vpt-bad-2.s: New test.
1211
1212 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1213
1214 * config/tc-arm.c (struct arm_it): Expand isscalar field to be able to
1215 distinguish between types of scalar.
1216 (parse_typed_reg_or_scalar): Change to accept MVE scalar variants.
1217 (parse_scalar): Likewise.
1218 (parse_neon_mov): Accept MVE variant.
1219 (po_scalar_or_goto): Make use reg_type.
1220 (parse_operands): Change uses of po_scalar_or_goto.
1221 (do_vfp_sp_monadic): Change to accept MVE variants.
1222 (do_vfp_reg_from_sp): Likewise.
1223 (do_vfp_sp_from_reg): Likewise.
1224 (do_vfp_dp_rd_rm): Likewise.
1225 (do_vfp_dp_rd_rn_rm): Likewise.
1226 (do_vfp_dp_rm_rd_rn): Likewise.
1227 (M_MNEM_vmovlt, M_MNEM_vmovlb, M_MNEM_vmovnt, M_MNEM_vmovnb): New
1228 instruction encodings.
1229 (NEON_SHAPE_DEF): New shape.
1230 (do_mve_mov): New encoding fuction.
1231 (do_mve_movn): Likewise.
1232 (do_mve_movl): Likewise.
1233 (do_neon_mov): Change to accept MVE variants.
1234 (mcCE): New MACRO.
1235 (insns): Accept new MVE variants and instructions.
1236 * testsuite/gas/arm/mve-vmov-bad-1.d: New test.
1237 * testsuite/gas/arm/mve-vmov-bad-1.l: New test.
1238 * testsuite/gas/arm/mve-vmov-bad-1.s: New test.
1239 * testsuite/gas/arm/mve-vmov-bad-2.d: New test.
1240 * testsuite/gas/arm/mve-vmov-bad-2.l: New test.
1241 * testsuite/gas/arm/mve-vmov-bad-2.s: New test.
1242
1243 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1244
1245 * config/tc-arm.c (enum operand_parse_code): Add new operand.
1246 (parse_operands): Handle new operand.
1247 (do_neon_cvt_1): Handle MVE variants.
1248 (do_neon_cvttb_1): Likewise.
1249 (insns): Accept MVE variants.
1250 * testsuite/gas/arm/mve-vcvt-bad-1.d: New test.
1251 * testsuite/gas/arm/mve-vcvt-bad-1.l: New test.
1252 * testsuite/gas/arm/mve-vcvt-bad-1.s: New test.
1253 * testsuite/gas/arm/mve-vcvt-bad-2.d: New test.
1254 * testsuite/gas/arm/mve-vcvt-bad-2.l: New test.
1255 * testsuite/gas/arm/mve-vcvt-bad-2.s: New test.
1256 * testsuite/gas/arm/mve-vcvt-bad-3.d: New test.
1257 * testsuite/gas/arm/mve-vcvt-bad-3.l: New test.
1258 * testsuite/gas/arm/mve-vcvt-bad-3.s: New test.
1259 * testsuite/gas/arm/mve-vcvt-bad-4.d: New test.
1260 * testsuite/gas/arm/mve-vcvt-bad-4.l: New test.
1261 * testsuite/gas/arm/mve-vcvt-bad-4.s: New test.
1262 * testsuite/gas/arm/mve-vcvt-bad.d: New test.
1263 * testsuite/gas/arm/mve-vcvt-bad.l: New test.
1264 * testsuite/gas/arm/mve-vcvt-bad.s: New test.
1265
1266 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1267
1268 * config/tc-arm.c (struct arm_it): Make immisreg field larger to hold
1269 type of register.
1270 (enum shift_kind): Add SHIFT_UXTW shift kind.
1271 (enum parse_shift_mode): Add SHIFT_UXTW_IMMEDIATE shift mode.
1272 (parse_shift): Handle new shift type.
1273 (parse_address_main): Accept new addressing modes.
1274 (M_MNEM_vstrb, M_MNEM_vstrh, M_MNEM_vstrw, M_MNEM_vstrd,
1275 M_MNEM_vldrb, M_MNEM_vldrh, M_MNEM_vldrw, M_MNEM_vldrd): New
1276 instruction encodings.
1277 (do_mve_vstr_vldr_QI): New encoding functions.
1278 (do_mve_vstr_vldr_RQ): Likewise.
1279 (do_mve_vstr_vldr_RI): Likewise.
1280 (do_mve_vstr_vldr): Likewise.
1281 * testsuite/gas/arm/mve-vldr-bad-1.d: New test.
1282 * testsuite/gas/arm/mve-vldr-bad-1.l: New test.
1283 * testsuite/gas/arm/mve-vldr-bad-1.s: New test.
1284 * testsuite/gas/arm/mve-vldr-bad-2.d: New test.
1285 * testsuite/gas/arm/mve-vldr-bad-2.l: New test.
1286 * testsuite/gas/arm/mve-vldr-bad-2.s: New test.
1287 * testsuite/gas/arm/mve-vldr-bad-3.d: New test.
1288 * testsuite/gas/arm/mve-vldr-bad-3.l: New test.
1289 * testsuite/gas/arm/mve-vldr-bad-3.s: New test.
1290 * testsuite/gas/arm/mve-vstr-bad-1.d: New test.
1291 * testsuite/gas/arm/mve-vstr-bad-1.l: New test.
1292 * testsuite/gas/arm/mve-vstr-bad-1.s: New test.
1293 * testsuite/gas/arm/mve-vstr-bad-2.d: New test.
1294 * testsuite/gas/arm/mve-vstr-bad-2.l: New test.
1295 * testsuite/gas/arm/mve-vstr-bad-2.s: New test.
1296 * testsuite/gas/arm/mve-vstr-bad-3.d: New test.
1297 * testsuite/gas/arm/mve-vstr-bad-3.l: New test.
1298 * testsuite/gas/arm/mve-vstr-bad-3.s: New test.
1299
1300 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1301
1302 * config/tc-arm.c (enum it_instruction_type): Add MVE_UNPREDICABLE_INSN.
1303 (BAD_EL_TYPE): New error message.
1304 (parse_neon_el_struct_list): Adapt to be able to accept MVE variant.
1305 (parse_address_main): Likewise.
1306 (group_reloc_type): Add GROUP_MVE.
1307 (enum operand_parse_code): Add new operands.
1308 (parse_operands): Handle new operands.
1309 (M_MNEM_vst20, M_MNEM_vst21, M_MNEM_vst40, M_MNEM_vst41, M_MNEM_vst42,
1310 M_MNEM_vst43, M_MNEM_vld20, M_MNEM_vld21, M_MNEM_vld40, M_MNEM_vld41,
1311 M_MNEM_vld42, M_MNEM_vld43): New encodings.
1312 (do_mve_vst_vld): New encoding function.
1313 (do_neon_ld_st_interleave): Use BAD_EL_TYPE.
1314 (it_fsm_pre_encode): Handle new it_instruction_type
1315 (handle_pred_state): Likewise.
1316 * testsuite/gas/arm/mve-vstld-bad.d: New test.
1317 * testsuite/gas/arm/mve-vstld-bad.l: New test.
1318 * testsuite/gas/arm/mve-vstld-bad.s: New test.
1319
1320 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1321
1322 * config/tc-arm.c (BAD_MVE_AUTO): New error message.
1323 (BAD_MVE_SRCDEST): Likewise.
1324 (mark_feature_used): Diagnose MVE only instructions when in
1325 auto-detection mode or -march=all.
1326 (enum operand_parse_code): Define new operand.
1327 (parse_operands): Handle new operand.
1328 (M_MNEM_vmullt, M_MNEM_vmullb): New encodings.
1329 (mve_encode_qqq): New encoding helper function.
1330 (do_mve_vmull): New encoding function.
1331 (insns): Handle new instructions.
1332 * testsuite/gas/arm/mve-vmullbt-bad.d: New test.
1333 * testsuite/gas/arm/mve-vmullbt-bad.l: New test.
1334 * testsuite/gas/arm/mve-vmullbt-bad.s: New test.
1335
1336 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1337
1338 * config/tc-arm.c (struct asm_opcode): Make avalue a full int.
1339 (BAD_ODD, BAD_EVEN, BAD_SIMD_TYPE): New errors.
1340 (enum operand_parse_code): Handle new operands.
1341 (parse_operands): Likewise.
1342 (M_MNEM_vabav, M_MNEM_vmladav, M_MNEM_vmladava, M_MNEM_vmladavx,
1343 M_MNEM_vmladavax, M_MNEM_vmlsdav, M_MNEM_vmlsdava, M_MNEM_vmlsdavx,
1344 M_MNEM_vmlsdavax): Define new encodings.
1345 (NEON_SHAPE_DEF): Add new shape.
1346 (neon_check_type): Use BAD_SIMD_TYPE.
1347 (mve_encode_rqq): New encoding helper function.
1348 (do_mve_vabav, do_mve_vmladav): New encoding functions.
1349 (mCEF): New MACRO.
1350 * testsuite/gas/arm/mve-vabav-bad.d: New test.
1351 * testsuite/gas/arm/mve-vabav-bad.l: New test.
1352 * testsuite/gas/arm/mve-vabav-bad.s: New test.
1353 * testsuite/gas/arm/mve-vmladav-bad.d: New test.
1354 * testsuite/gas/arm/mve-vmladav-bad.l: New test.
1355 * testsuite/gas/arm/mve-vmladav-bad.s: New test.
1356 * testsuite/gas/arm/mve-vmlav-bad.d: New test.
1357 * testsuite/gas/arm/mve-vmlav-bad.l: New test.
1358 * testsuite/gas/arm/mve-vmlav-bad.s: New test.
1359 * testsuite/gas/arm/mve-vmlsdav-bad.d: New test.
1360 * testsuite/gas/arm/mve-vmlsdav-bad.l: New test.
1361 * testsuite/gas/arm/mve-vmlsdav-bad.s: New test.
1362
1363 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1364
1365 * config/tc-arm.c (do_neon_abs_neg): Make it accept MVE variant.
1366 (insns): Change vabs and vneg entries to accept MVE variants.
1367 * testsuite/gas/arm/mve-vabsneg-bad-1.d: New test.
1368 * testsuite/gas/arm/mve-vabsneg-bad-1.l: New test.
1369 * testsuite/gas/arm/mve-vabsneg-bad-1.s: New test.
1370 * testsuite/gas/arm/mve-vabsneg-bad-2.d: New test.
1371 * testsuite/gas/arm/mve-vabsneg-bad-2.l: New test.
1372 * testsuite/gas/arm/mve-vabsneg-bad-2.s: New test.
1373
1374 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1375
1376 * config/tc-arm.c (enum it_instruction_type): Rename to...
1377 (enum pred_instruction_type): ... this. Include VPT types.
1378 (it_insn_type): Rename to ...
1379 (pred_insn_type): .. this.
1380 (arm_it): Change comment.
1381 (enum arm_reg_type): Add new value.
1382 (reg_expected_msgs): New entry.
1383 (asm_opcode): Add mayBeVecPred member.
1384 (BAD_SYNTAX, BAD_NOT_VPT, BAD_OUT_VPT, BAD_VPT_COND, MVE_NOT_IT,
1385 MVE_NOT_VPT, MVE_BAD_PC, MVE_BAD_SP): New diagnostic MACROS.
1386 (arm_vcond_hsh): New table for vector condition codes.
1387 (now_it): Rename to ...
1388 (now_pred): ... this.
1389 (now_it_compatible): Rename to ...
1390 (now_pred_compatible): ... this.
1391 (in_it_block): Rename to ...
1392 (in_pred_block): ... this.
1393 (handle_it_state): Rename to ...
1394 (handle_pred_state): ... this. And change it to accept VPT blocks.
1395 (set_it_insn_type): Rename to ...
1396 (set_pred_insn_type): ... this.
1397 (set_it_insn_type_nonvoid): Rename to ...
1398 (set_pred_insn_type_nonvoid): ... this.
1399 (set_it_insn_type_last): Rename to ...
1400 (set_pred_insn_type_last): ... this.
1401 (record_feature_use): Moved.
1402 (mark_feature_used): Likewise.
1403 (parse_typed_reg_or_scalar): Add new case for REG_TYPE_MQ.
1404 (emit_insn): Use renamed functions and variables.
1405 (enum operand_parse_code): Add new operands.
1406 (parse_operands): Handle new operands.
1407 (do_scalar_fp16_v82_encode): Change predication detection.
1408 (do_it): Use renamed functions and variables.
1409 (do_t_add_sub): Likewise.
1410 (do_t_arit3): Likewise.
1411 (do_t_arit3c): Likewise.
1412 (do_t_blx): Likewise.
1413 (do_t_branch): Likewise.
1414 (do_t_bkpt_hlt1): Likewise.
1415 (do_t_branch23): Likewise.
1416 (do_t_bx): Likewise.
1417 (do_t_bxj): Likewise.
1418 (do_t_cond): Likewise.
1419 (do_t_csdb): Likewise.
1420 (do_t_cps): Likewise.
1421 (do_t_cpsi): Likewise.
1422 (do_t_cbz): Likewise.
1423 (do_t_it): Likewise.
1424 (do_mve_vpt): New function to handle VPT blocks.
1425 (encode_thumb2_multi): Use renamed functions and variables.
1426 (do_t_ldst): Use renamed functions and variables.
1427 (do_t_mov_cmp): Likewise.
1428 (do_t_mvn_tst): Likewise.
1429 (do_t_mul): Likewise.
1430 (do_t_nop): Likewise.
1431 (do_t_neg): Likewise.
1432 (do_t_rsb): Likewise.
1433 (do_t_setend): Likewise.
1434 (do_t_shift): Likewise.
1435 (do_t_smc): Likewise.
1436 (do_t_tb): Likewise.
1437 (do_t_udf): Likewise.
1438 (do_t_loloop): Likewise.
1439 (do_neon_cvt_1): Likewise.
1440 (do_vfp_nsyn_cvt_fpv8): Likewise.
1441 (do_vsel): Likewise.
1442 (do_vmaxnm): Likewise.
1443 (do_vrint_1): Likewise.
1444 (do_crypto_2op_1): Likewise.
1445 (do_crypto_3op_1): Likewise.
1446 (do_crc32_1): Likewise.
1447 (it_fsm_pre_encode): Likewise.
1448 (it_fsm_post_encode): Likewise.
1449 (force_automatic_it_block_close): Likewise.
1450 (check_it_blocks_finished): Likewise.
1451 (check_pred_blocks_finished): Likewise.
1452 (arm_cleanup): Likewise.
1453 (now_it_add_mask): Rename to ...
1454 (now_pred_add_mask): ... this. And use new variables and functions.
1455 (NEON_ENC_TAB): Add entries for vabdl, vaddl and vsubl.
1456 (N_I_MVE, N_F_MVE, N_SU_MVE): New MACROs.
1457 (neon_check_type): Generalize error message.
1458 (mve_encode_qqr): New MVE generic encoding function.
1459 (neon_dyadic_misc): Change to accept MVE variants.
1460 (do_neon_dyadic_if_su): Likewise.
1461 (do_neon_addsub_if_i): Likewise.
1462 (do_neon_dyadic_long): Likewise.
1463 (vfp_or_neon_is_neon): Add extra checks.
1464 (check_simd_pred_availability): Helper function to check SIMD
1465 instruction availability with respect to predication.
1466 (enum opcode_tag): New suffix value.
1467 (opcode_lookup): Change to handle VPT blocks.
1468 (new_automatic_it_block): Rename to ...
1469 (close_automatic_it_block): ...this.
1470 (TxCE, TxC3, TxC3w, TUE, TUEc, TUF, CE, C3, ToC, ToU,
1471 toC, toU, CL, cCE, cCL, C3E, xCM_, UE, UF, NUF, nUF,
1472 NCE_tag, NCE, NCEF, nCE_tag, nCE, nCEF): Add default value for new
1473 field.
1474 (mCEF, mnCEF, mnCE, MNUF, mnUF, mToC, MNCE, MNCEF): New MACROs.
1475 (insns): Redefine vadd, vsub, cabd, vabdl, vaddl, vsubl to accept MVE
1476 variants. Add entries for vscclrm, and vpst.
1477 (md_begin): Add arm_vcond_hsh initialization.
1478 * config/tc-arm.h (enum it_state): Rename to...
1479 (enum pred_state): ...this.
1480 (struct current_it): Rename to...
1481 (struct current_pred): ...this.
1482 (enum pred_type): New enum.
1483 (struct arm_segment_info_type): Use current_pred.
1484 * testsuite/gas/arm/armv8_3-a-fp-bad.l: Update error message.
1485 * testsuite/gas/arm/armv8_3-a-simd-bad.l: Update error message.
1486 * testsuite/gas/arm/dotprod-illegal.l: Update error message.
1487 * testsuite/gas/arm/mve-vaddsubabd-bad-1.d: New test.
1488 * testsuite/gas/arm/mve-vaddsubabd-bad-1.l: New test.
1489 * testsuite/gas/arm/mve-vaddsubabd-bad-1.s: New test.
1490 * testsuite/gas/arm/mve-vaddsubabd-bad-2.d: New test.
1491 * testsuite/gas/arm/mve-vaddsubabd-bad-2.l: New test.
1492 * testsuite/gas/arm/mve-vaddsubabd-bad-2.s: New test.
1493 * testsuite/gas/arm/mve-vpst-bad.d: New test.
1494 * testsuite/gas/arm/mve-vpst-bad.l: New test.
1495 * testsuite/gas/arm/mve-vpst-bad.s: New test.
1496 * testsuite/gas/arm/neon-ldst-es-bad.l: Updated error message.
1497
1498 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1499
1500 * config/tc-arm.c (mve_ext, mve_fp_ext): New features.
1501 (armv8_1m_main_ext_table): Add new extensions.
1502 (aeabi_set_public_attributes): Translate new features to new build attributes.
1503 (arm_convert_symbolic_attribute): Add Tag_MVE_arch.
1504 * doc/c-arm.texi: Document new extensions and new build attribute.
1505
1506 2019-05-15 John Darrington <john@darrington.wattle.id.au>
1507
1508 * config/tc-s12z.c (register_prefix): New variable. (md_show_usage,
1509 md_parse_option): parse the new option.
1510 (lex_reg_name): Scan the prefix if one is set.
1511 * doc/c-s12z.texi (S12Z-Opts): Document the new option.
1512 * testsuite/gas/s12z/reg-prefix.d: New file.
1513 * testsuite/gas/s12z/reg-prefix.s: New file.
1514 * testsuite/gas/s12z/s12z.exp: Add them.
1515
1516 2019-05-14 John Darrington <john@darrington.wattle.id.au>
1517
1518 * doc/as.texi (Machine Dependencies): Fix misaligned menu entry.
1519
1520 2019-05-15 Alan Modra <amodra@gmail.com>
1521
1522 * config/tc-csky.c (md_convert_frag): Initialise trailing
1523 padding for COND_JUMP_PIC.
1524
1525 2019-05-15 Alan Modra <amodra@gmail.com>
1526
1527 * dwarf2dbg.c: Whitespace fixes.
1528 (get_filenum): Don't strdup "file". Adjust error message.
1529 (dwarf2_directive_filename): Use an unsigned type for "num".
1530 Catch truncation of file number and overflow of get_filenum
1531 XRESIZEVEC multiplication. Delete dead code.
1532
1533 2019-05-15 Alan Modra <amodra@gmail.com>
1534
1535 PR 24538
1536 * config/tc-tic54x.c (tic54x_start_line_hook): Do skip end of line
1537 chars in setting endp.
1538
1539 2019-05-14 Nick Clifton <nickc@redhat.com>
1540
1541 PR 24538
1542 * config/tc-i386-intel.c (i386_intel_simplify_register): Reject
1543 illegal register numbers.
1544
1545 2019-05-10 Nick Clifton <nickc@redhat.com>
1546
1547 PR 24538
1548 * macro.c (get_any_string): Increase size of buffer used to hold
1549 decimal value of expression result.
1550 * dw2gencfi.c (get_debugseg_name): Handle an empty name.
1551 * dwarf2dbg.c (get_filenum): Catch integer wraparound when
1552 extending allocate file array.
1553 (dwarf2_directive_filename): Add extra checks of the computed file
1554 number.
1555 * config/tc-arm.c (arm_tc_equal_in_insn): Insert copy of name into
1556 warning hash table.
1557 (s_arm_eabi_attribute): Check for obj_elf_vendor_attribute
1558 returning -1.
1559 * config/tc-i386.c (i386_output_nops): Catch an attempt to
1560 generate nops of negative lengths.
1561 * as.h (MAX_LITTLENUMS): Move definition to here from...
1562 * config/atof-ieee.c: ...here.
1563 * config/tc-aarch64.c: ...here.
1564 * config/tc-arc.c: ...here.
1565 * config/tc-arm.c: ...here.
1566 * config/tc-epiphany.c: ...here.
1567 * config/tc-i386.c: ...here.
1568 * config/tc-ia64.c: ...here. (And correct the value).
1569 * config/tc-m32c.c: ...here.
1570 * config/tc-m32r.c: ...here.
1571 * config/tc-metag.c: ...here.
1572 * config/tc-microblaze.c: ...here.
1573 * config/tc-nds32.c: ...here.
1574 * config/tc-or1k.c: ...here.
1575 * config/tc-score.c: ...here.
1576 * config/tc-score7.c: ...here.
1577 * config/tc-tic4x.c: ...here.
1578 * config/tc-tilegx.c: ...here.
1579 * config/tc-tilepro.c: ...here.
1580 * config/tc-visium.c: ...here.
1581 * config/tc-sh.c (md_assemble): Add check for an instruction with
1582 no opcodes.
1583 * config/tc-mips.c (mips_lookup_insn): Add check for very short
1584 instruction name.
1585 * config/tc-tic54x.c: Use unsigned chars to access is_end_of_line
1586 array.
1587 (tic54x_start_line_hook): Check for an empty line.
1588 (next_line_shows_parallel): Do not walk off the end of the string.
1589 (tic54x_macro_start): Check for too much macro nesting.
1590 (tic54x_start_label): Add label_start parameter. Use this
1591 parameter to check the first character of the label.
1592
1593 * config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Pass
1594 line_start variable to tic54x_start_label.
1595
1596 2019-05-10 Faraz Shahbazker <fshahbazker@wavecomp.com>
1597
1598 * config/tc-mips.c (macro) <M_ADD_I, M_SUB_I, M_DADD_I, M_DSUB_I>:
1599 Add expansions for MIPS r6.
1600 * testsuite/gas/mips/add.s: Enable tests for R6.
1601 * testsuite/gas/mips/daddi.s: Annotate to test DADD for R6.
1602 * testsuite/gas/mips/mipsr6@add.d: Likewise.
1603 * gas/testsuite/gas/mips/mipsr6@dadd.d: New test.
1604 * gas/testsuite/gas/mips/mips.exp: Run the new test.
1605
1606 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1607
1608 * testsuite/gas/aarch64/sve2.d: Remove file format restriction.
1609
1610 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1611
1612 * testsuite/gas/aarch64/illegal-sve2-aes.d: New test.
1613 * testsuite/gas/aarch64/illegal-sve2-bitperm.d: New test.
1614 * testsuite/gas/aarch64/illegal-sve2-sha3.d: Test new instructions.
1615 * testsuite/gas/aarch64/illegal-sve2-sm4.d: Test new instructions.
1616 * testsuite/gas/aarch64/illegal-sve2-sve1ext.d: Test new instructions.
1617 * testsuite/gas/aarch64/illegal-sve2-sve1ext.l: Test new instructions.
1618 * testsuite/gas/aarch64/illegal-sve2.d: Test new instructions.
1619 * testsuite/gas/aarch64/illegal-sve2.l: Test new instructions.
1620 * testsuite/gas/aarch64/illegal-sve2.s: Test new instructions.
1621 * testsuite/gas/aarch64/sve1-extended-sve2.s: New test.
1622 * testsuite/gas/aarch64/sve2.d: Test new instructions.
1623 * testsuite/gas/aarch64/sve2.s: Test new instructions.
1624
1625 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1626
1627 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHLIMM_UNPRED_22
1628 operand.
1629
1630 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1631
1632 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm4_11_INDEX
1633 operand.
1634
1635 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1636
1637 * config/tc-aarch64.c (parse_operands): Handle new SVE_SHRIMM_UNPRED_22
1638 operand.
1639
1640 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1641
1642 * config/tc-aarch64.c (REG_ZR): Macro specifying zero register.
1643 (parse_address_main): Account for new addressing mode [Zn.S, Xm].
1644 (parse_operands): Handle new SVE_ADDR_ZX operand.
1645
1646 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1647
1648 * config/tc-aarch64.c (parse_operands): Handle new SVE_Zm3_11_INDEX
1649 operand.
1650
1651 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1652
1653 * config/tc-aarch64.c (parse_operands): Handle new SVE_IMM_ROT3 operand.
1654
1655 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
1656
1657 * config/tc-aarch64.c: Add command line architecture feature flags
1658 "sve2", "sve2-sm4", "sve2-aes", "sve2-sha3", "bitperm".
1659 * doc/c-aarch64.texi: Document new architecture feature flags.
1660
1661 2019-05-08 Alan Modra <amodra@gmail.com>
1662
1663 * testsuite/gas/elf/dwarf2-1.s,
1664 * testsuite/gas/elf/dwarf2-2.s,
1665 * testsuite/gas/elf/dwarf2-5.s,
1666 * testsuite/gas/elf/dwarf2-7.s,
1667 * testsuite/gas/elf/dwarf2-8.s,
1668 * testsuite/gas/elf/dwarf2-9.s,
1669 * testsuite/gas/elf/dwarf2-10.s,
1670 * testsuite/gas/elf/dwarf2-11.s,
1671 * testsuite/gas/elf/dwarf2-12.s,
1672 * testsuite/gas/elf/dwarf2-13.s,
1673 * testsuite/gas/elf/dwarf2-14.s,
1674 * testsuite/gas/elf/dwarf2-15.s,
1675 * testsuite/gas/elf/dwarf2-16.s,
1676 * testsuite/gas/elf/dwarf2-17.s,
1677 * testsuite/gas/elf/dwarf2-18.s,
1678 * testsuite/gas/elf/dwarf2-19.s: Double size of align and simulated
1679 instructions.
1680 * testsuite/gas/elf/dwarf2-1.d,
1681 * testsuite/gas/elf/dwarf2-2.d,
1682 * testsuite/gas/elf/dwarf2-5.d,
1683 * testsuite/gas/elf/dwarf2-7.d,
1684 * testsuite/gas/elf/dwarf2-8.d,
1685 * testsuite/gas/elf/dwarf2-9.d,
1686 * testsuite/gas/elf/dwarf2-10.d,
1687 * testsuite/gas/elf/dwarf2-11.d,
1688 * testsuite/gas/elf/dwarf2-12.d,
1689 * testsuite/gas/elf/dwarf2-13.d,
1690 * testsuite/gas/elf/dwarf2-14.d,
1691 * testsuite/gas/elf/dwarf2-15.d,
1692 * testsuite/gas/elf/dwarf2-16.d,
1693 * testsuite/gas/elf/dwarf2-17.d,
1694 * testsuite/gas/elf/dwarf2-18.d,
1695 * testsuite/gas/elf/dwarf2-19.d: Use xfail rather than notarget.
1696 Remove avr, pru, tile, xtensa from xfails. Update expected output.
1697 * testsuite/gas/elf/elf.exp: Sort targets.
1698 (dump_opts): Pass {as -mno-relax} for riscv, {as -mno-link-relax}
1699 for avr and pru, and {as --no-link-relax} for xtensa to dwarf tests.
1700 * testsuite/gas/elf/section2.e-miwmmxt: Delete unused file.
1701
1702 2019-05-08 Alan Modra <amodra@gmail.com>
1703
1704 * config/tc-xtensa.c (opt_linkrelax): New variable.
1705 (md_parse_option): Set it here.
1706 (md_begin): Copy opt_linkrelax to linkrelax.
1707
1708 2019-05-07 Alexandre Oliva <aoliva@redhat.com>
1709
1710 * testsuite/gas/elf/dwarf2-18.d: Xfail mep-*.
1711 * testsuite/gas/elf/dwarf2-19.d: Likewise.
1712
1713 2019-05-07 Alan Modra <amodra@gmail.com>
1714
1715 * symbols.c (use_complex_relocs_for): Formatting. Factor out
1716 X_add_symbol tests.
1717
1718 2019-05-06 Andrew Bennett <andrew.bennett@imgtec.com>
1719 Faraz Shahbazker <fshahbazker@wavecomp.com>
1720
1721 * config/tc-mips.c (mips_set_ase): Handle ASE_EVA_R6.
1722 (macro) <M_LLWPE_AB, M_SCWPE_AB>: New cases.
1723 (mips_after_parse_args): Translate EVA to EVA_R6.
1724 * testsuite/gas/mips/ase-errors-1.s: Add new instructions.
1725 * testsuite/gas/mips/eva.s: Likewise.
1726 * testsuite/gas/mips/ase-errors-1.l: Check errors for
1727 new instructions.
1728 * testsuite/gas/mips/mipsr6@eva.d: Check new test cases.
1729
1730 2019-05-06 Alan Modra <amodra@gmail.com>
1731
1732 * symbols.c (symbol_relc_make_sym): Do not access sym->sy_value
1733 directly.
1734
1735 2019-05-06 Alan Modra <amodra@gmail.com>
1736
1737 * config/tc-ppc.c (ppc_fix_adjustable): Exclude all GOT and PLT
1738 relocs, and VLE sdarel relocs.
1739 * testsuite/gas/ppc/power4.d: Adjust.
1740
1741 2019-05-05 Alexandre Oliva <aoliva@redhat.com>
1742
1743 * dwarf2dbg.c (set_or_check_view): Skip heads when assigning
1744 views of prior locs.
1745 (dwarf2_gen_line_info_1): Skip heads.
1746 (size_inc_line_addr, emit_inc_line_addr): Drop
1747 DW_LNS_advance_pc for zero addr delta.
1748 (dwarf2_finish): Assign views for heads of segments.
1749 * testsuite/gas/elf/dwarf2-19.d: New.
1750 * testsuite/gas/elf/dwarf2-19.s: New.
1751 * testsuite/gas/elf/elf.exp: Test it.
1752
1753 2019-05-04 Alan Modra <amodra@gmail.com>
1754
1755 * config/tc-m32c.c (insn_size): Delete static var.
1756 (md_begin): Don't set it.
1757 (m32c_md_end): Delete.
1758 (md_assemble): Add insn_size auto var.
1759 * config/tc-m32c.h (md_end): Don't define.
1760 (m32c_md_end): Delete.
1761 (NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
1762 * testsuite/gas/all/align.d: Remove m32c from notarget list.
1763 * testsuite/gas/all/incbin.d: Likewise.
1764 * testsuite/gas/elf/dwarf2-11.d: Likewise.
1765 * testsuite/gas/macros/semi.d: Likewise.
1766 * testsuite/gas/all/gas.exp (do_comment): Similarly.
1767
1768 2019-05-02 H.J. Lu <hongjiu.lu@intel.com>
1769
1770 PR gas/24485
1771 * config/tc-i386.c (process_suffix): Issue a warning to IRET
1772 without a suffix for .code16gcc.
1773 * testsuite/gas/i386/jump16.s: Add tests for iretX.
1774 * testsuite/gas/i386/jump16.d: Updated.
1775 * testsuite/gas/i386/jump16.e: New file.
1776
1777 2019-05-01 Sudakshina Das <sudi.das@arm.com>
1778
1779 * config/tc-aarch64.c (parse_operands): Add case for
1780 AARCH64_OPND_TME_UIMM16.
1781 (aarch64_features): Add "tme".
1782 * doc/c-aarch64.texi: Document the same.
1783 * testsuite/gas/aarch64/tme-invalid.d: New test.
1784 * testsuite/gas/aarch64/tme-invalid.l: New test.
1785 * testsuite/gas/aarch64/tme-invalid.s: New test.
1786 * testsuite/gas/aarch64/tme.d: New test.
1787 * testsuite/gas/aarch64/tme.s: New test.
1788
1789 2019-04-29 John Darrington <john@darrington.wattle.id.au>
1790
1791 * testsuite/gas/s12z/truncated.d: New file.
1792 * testsuite/gas/s12z/truncated.s: New file.
1793 * testsuite/gas/s12z/s12z.exp: Add new test.
1794
1795 2019-04-26 Andrew Bennett <andrew.bennett@imgtec.com>
1796 Faraz Shahbazker <fshahbazker@wavecomp.com>
1797
1798 * config/tc-mips.c (macro) <M_LLWP_AB, M_LLDP_AB, M_SCWP_AB,
1799 M_SCDP_AB>: New cases and expansions for paired instructions.
1800 * testsuite/gas/mips/llpscp-32.s: New test source.
1801 * testsuite/gas/mips/llpscp-64.s: Likewise.
1802 * testsuite/gas/mips/llpscp-32.d: New test.
1803 * testsuite/gas/mips/llpscp-64.d: Likewise.
1804 * testsuite/gas/mips/mips.exp: Run the new tests.
1805 * testsuite/gas/mips/r6.s: Add new instructions to test source.
1806 * testsuite/gas/mips/r6-64.s: Likewise.
1807 * testsuite/gas/mips/r6-64-n32.d: Check new instructions.
1808 * testsuite/gas/mips/r6-64-n64.d: Likewise.
1809 * testsuite/gas/mips/r6-n32.d: Likewise.
1810 * testsuite/gas/mips/r6-n64.d: Likwwise.
1811 * testsuite/gas/mips/r6.d: Likewise.
1812
1813 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
1814
1815 PR gas/24485
1816 * config/tc-i386.c (process_suffix): Don't add DATA_PREFIX_OPCODE
1817 to IRET for .code16gcc.
1818 * testsuite/gas/i386/jump16.s: Add IRET tests.
1819 * testsuite/gas/i386/jump16.d: Updated.
1820
1821 2019-04-25 Alexandre Oliva <aoliva@redhat.com>
1822 Alan Modra <amodra@gmail.com>
1823
1824 PR gas/24444
1825 * frags.c (frag_gtoffset_p): New.
1826 * frags.h (frag_gtoffset_p): Declare it.
1827 * expr.c (resolve_expression): Use it.
1828
1829 2019-04-24 Alan Modra <amodra@gmail.com>
1830
1831 PR 24444
1832 * symbols.c (resolve_symbol_value): When handling symbols
1833 marked as sy_flags.resolved, return correct value for the
1834 case of expression symbols left as an O_symbol expression.
1835 Merge O_symbol code handling undefined and common symbols with
1836 code handling special cases of expression symbols. Use
1837 seg_left to test for undefined and common symbols. Don't
1838 leave an O_symbol expression when X_add_symbol resolves to
1839 the absolute_section. Init final_val later.
1840 * testsuite/gas/mmix/basep-7.d: Adjust expected output.
1841
1842 2019-04-24 John Darrington <john@darrington.wattle.id.au>
1843
1844 * testsuite/gas/s12z/bit-manip-invalid.s: Extend test for BSET
1845 and BCLR instructions with an invalid mode.
1846 * testsuite/gas/s12z/bit-manip-invalid.d: ditto.
1847
1848 2019-04-19 Nick Clifton <nickc@redhat.com>
1849
1850 PR 24464
1851 * config/tc-rx.h (md_relax_frag): Pass the max_iterations variable
1852 to the relaxation function.
1853 * config/tc-rx.c (rx_relax_frag): Add new parameter - the maximum
1854 number of iterations. Make sure that our internal iteration limit
1855 does not exceed this external iteration limit.
1856
1857 2019-04-18 Matthew Fortune <matthew.fortune@mips.com>
1858
1859 * config/tc-mips.c (match_non_zero_reg_operand): Update
1860 warning message.
1861 * testsuite/gas/mips/r6-branch-constraints.l: Likewise.
1862
1863 2019-04-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1864
1865 * config/tc-msp430.c (msp430_make_init_symbols): Define
1866 __crt0_run_{preinit,init,fini}_array symbols if
1867 .{preinit,init,fini}_array sections exist.
1868 * testsuite/gas/msp430/fini-array.d: New test.
1869 * testsuite/gas/msp430/init-array.d: New test.
1870 * testsuite/gas/msp430/preinit-array.d: New test.
1871 * testsuite/gas/msp430/fini-array.s: New test source.
1872 * testsuite/gas/msp430/init-array.s: New test source.
1873 * testsuite/gas/msp430/preinit-array.s: New test source.
1874 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
1875
1876 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1877
1878 * config/tc-msp430.c (msp430_make_init_symbols): Define __crt0_init_bss
1879 symbol when .lower.bss or .either.bss sections exist.
1880 Define __crt0_movedata when .lower.data or .either.data sections exist.
1881 * testsuite/gas/msp430/either-data-bss-sym.d: New test.
1882 * testsuite/gas/msp430/low-data-bss-sym.d: New test.
1883 * testsuite/gas/msp430/either-data-bss-sym.s: New test source.
1884 * testsuite/gas/msp430/low-data-bss-sym.s: New test source.
1885 * testsuite/gas/msp430/msp430.exp: Run new tests.
1886 Enable large code model when running -mdata-region={upper,either}
1887 tests.
1888
1889 2019-04-17 Jozef Lawrynowicz <jozef.l@mittosystems.com>
1890
1891 * config/tc-msp430.c (options): New OPTION_UNKNOWN_INTR_NOPS,
1892 OPTION_NO_UNKNOWN_INTR_NOPS and do_unknown_interrupt_nops.
1893 (md_parse_option): Handle OPTION_UNKNOWN_INTR_NOPS and
1894 OPTION_NO_UNKNOWN_INTR_NOPS by setting do_unknown_interrupt_nops
1895 accordingly.
1896 (md_show_usage): Likewise.
1897 (md_shortopts): Add "mu" for OPTION_UNKNOWN_INTR_NOPS and
1898 "mU" for OPTION_NO_UNKNOWN_INTR_NOPS.
1899 (md_longopts): Likewise.
1900 (warn_eint_nop): Update comment.
1901 (warn_unsure_interrupt): Don't warn if prev_insn_is_nop or
1902 prev_insn_is_dint or we are assembling for 430 ISA.
1903 (msp430_operands): Only call warn_unsure_interrupt if
1904 do_unknown_interrupt_nops == TRUE.
1905 * testsuite/gas/msp430/nop-unknown-intr.s: New test source file.
1906 * testsuite/gas/msp430/nop-unknown-intr-430.d: New test.
1907 * testsuite/gas/msp430/nop-unknown-intr-430x.d: New test.
1908 * testsuite/gas/msp430/nop-unknown-intr-430x-ignore.d: New test.
1909 * testsuite/gas/msp430/nop-unknown-intr-430.l: Warning output for new
1910 test.
1911 * testsuite/gas/msp430/nop-unknown-intr-430x.l: Likewise.
1912 * testsuite/gas/msp430/msp430.exp: Add new tests to driver.
1913
1914 2019-04-16 Alan Modra <amodra@gmail.com>
1915
1916 * testsuite/gas/all/weakref1.d: xfail nds32.
1917
1918 2019-04-16 Alan Modra <amodra@gmail.com>
1919
1920 * testsuite/gas/all/gas.exp: Remove ns32k xfails.
1921 * testsuite/gas/all/weakref1u.d: Don't run for ns32k-*-*.
1922
1923 2019-04-16 Alan Modra <amodra@gmail.com>
1924
1925 * write.h: Don't include bit_fix.h.
1926 (struct fix): Rearrange some fields. Delete fx_im_disp and
1927 fx_bit_fixP. Use bitfields for fx_size and fx_pcrel_adjust.
1928 * write.c (fix_new_internal): Don't init fx_im_disp and fx_bit_fixP.
1929 (fixup_segment): Don't exclude overflow checks on fx_bit_fixP.
1930 (print_fixup): Don't print im_disp.
1931 * config/tc-cris.c (md_apply_fix): Remove tests of fx_bit_fixP
1932 and fx_im_disp.
1933 * config/tc-dlx.c (md_apply_fix): Remove wrong debug code. Set
1934 fx_no_overflow when fx_bit_fixP.
1935 * config/tc-dlx.h: Include bit_fix.h.
1936 (TC_FIX_TYPE, tc_fix_data, TC_INIT_FIX_DATA): Define.
1937 * config/tc-ns32k.c (fix_new_ns32k, fix_new_ns32k_exp): Set
1938 fx_no_overflow when bit_fixP.
1939 * config/tc-ns32k.h (TC_FIX_TYPE): Add fx_bit_fixP and fx_im_disp.
1940 (fix_im_disp, fix_bit_fixP): Adjust to suit.
1941 (TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
1942
1943 2019-04-16 Alan Modra <amodra@gmail.com>
1944
1945 * write.h (struct fix <fx_where>): Make unsigned.
1946 (fix_new, fix_at_start, fix_new_exp): Adjust prototypes.
1947 * write.c (fix_new, fix_new_exp, fix_at_start): Make "where" and
1948 "size" parameters unsigned long.
1949 (fix_new_internal): Likewise. Adjust error format string to suit.
1950 * config/tc-mips.c (md_convert_frag): Remove cast of fx_where.
1951 * config/tc-sparc.c (md_apply_fix): Likewise.
1952 * config/tc-score.c (s3_convert_frag): Adjust for unsigned fx_where.
1953 * config/tc-score7.c (s7_convert_frag): Likewise.
1954
1955 2019-04-16 Alan Modra <amodra@gmail.com>
1956
1957 * frags.h (struct frag <fr_fix>): Use unsigned type.
1958 * frags.c (frag_new): Assert that current size exceeds
1959 old_frags_var_max_size.
1960 * ehopt.c (get_cie_info): Adjust for unsigned fr_fix.
1961 * listing.c (calc_hex): Likewise.
1962 * write.c (cvt_frag_to_fill, write_relocs): Likewise.
1963 * config/tc-arc.c (md_convert_frag): Likewise.
1964 * config/tc-avr.c (avr_patch_gccisr_frag): Likewise.
1965 * config/tc-mips.c (md_convert_frag): Likewise.
1966 * config/tc-rl78.c (md_convert_frag): Likewise.
1967 * config/tc-rx.c (md_convert_frag): Likewise.
1968 * config/tc-sparc.c (md_apply_fix): Likewise.
1969 * config/tc-xtensa.c (next_instrs_are_b_retw): Likewise.
1970 (unrelaxed_frag_min_insn_count, unrelaxed_frag_has_b_j): Likewise.
1971
1972 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1973
1974 * config/tc-arm.c (parse_sys_vldr_vstr): New function.
1975 (OP_VLDR): New enum operand_parse_code enumerator.
1976 (parse_operands): Add logic for OP_VLDR.
1977 (do_t_vldr_vstr_sysreg): New function.
1978 (do_vldr_vstr): Likewise.
1979 (insns): Guard VLDR and VSTR by arm_ext_v4t for Thumb mode.
1980 (md_apply_fix): Add bound check for VLDR and VSTR co-processor offset.
1981 Add masking logic for BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM relocation.
1982 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add examples of bad
1983 uses of VLDR and VSTR.
1984 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error messages for
1985 above bad uses.
1986 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add examples of VLDR and
1987 VSTR valid uses.
1988 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add disassembly for the
1989 above examples.
1990
1991 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1992
1993 * config/tc-arm.c (arm_typed_reg_parse): Fix typo in comment.
1994 (enum reg_list_els): New REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1995 enumerators.
1996 (parse_vfp_reg_list): Add new partial_match parameter. Set
1997 *partial_match to TRUE if at least one element in the register list has
1998 matched. Add support for REGLIST_VFP_S_VPR and REGLIST_VFP_D_VPR
1999 register lists which expect VPR as last element in the list.
2000 (s_arm_unwind_save_vfp_armv6): Adapt call to parse_vfp_reg_list to new
2001 prototype.
2002 (s_arm_unwind_save_vfp): Likewise.
2003 (enum operand_parse_code): New OP_VRSDVLST enumerator.
2004 (parse_operands): Adapt call to parse_vfp_reg_list to new prototype.
2005 Handle new OP_VRSDVLST case.
2006 (do_t_vscclrm): New function.
2007 (insns): New entry for VSCCLRM instruction.
2008 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Add invalid VSCCLRM
2009 instructions.
2010 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Add error expectations
2011 for above instructions.
2012 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Add tests for VSCCLRM
2013 instruction.
2014 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Add expected disassembly
2015 for above instructions.
2016
2017 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
2018
2019 * config/tc-arm.c (enum reg_list_els): Define earlier and add
2020 REGLIST_RN and REGLIST_CLRM enumerators.
2021 (parse_reg_list): Add etype parameter to distinguish between regular
2022 core register list and CLRM register list. Add logic to
2023 recognize CLRM register list.
2024 (parse_vfp_reg_list): Assert type is not for core register list.
2025 (s_arm_unwind_save_core): Update call to parse_reg_list to new
2026 prototype.
2027 (enum operand_parse_code): Declare OP_CLRMLST enumerator.
2028 (parse_operands): Update call to parse_reg_list to new prototype. Add
2029 logic for OP_CLRMLST.
2030 (encode_thumb2_ldmstm): Rename into ...
2031 (encode_thumb2_multi): This. Add do_io parameter. Add logic to
2032 encode CLRM and guard LDM/STM only code by do_io.
2033 (do_t_ldmstm): Adapt to use encode_thumb2_multi.
2034 (do_t_push_pop): Likewise.
2035 (do_t_clrm): New function.
2036 (insns): Define CLRM.
2037 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.d: New file.
2038 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.l: Likewise.
2039 * testsuite/gas/arm/archv8m_1m-cmse-main-bad.s: Likewise.
2040 * testsuite/gas/arm/archv8m_1m-cmse-main.d: Likewise.
2041 * testsuite/gas/arm/archv8m_1m-cmse-main.s: Likewise.
2042
2043 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2044 Andre Vieira <andre.simoesdiasvieira@arm.com>
2045
2046 * config/tc-arm.c (operand_parse_code): Add OP_LR and OP_oLR
2047 for the LR operand and optional LR operand.
2048 (parse_operands): Add switch cases for OP_LR and OP_oLR for
2049 both type checking and value checking.
2050 (encode_thumb32_addr_mode): New entries for DLS, WLS and LE.
2051 (v8_1_loop_reloc): New helper function for handling labels
2052 for the low overhead loop instructions.
2053 (do_t_loloop): New function to encode DLS, WLS and LE.
2054 (insns): New entries for WLS, DLS and LE.
2055 (md_pcrel_from_section): New switch case
2056 for BFD_RELOC_ARM_THUMB_LOOP12.
2057 (md_appdy_fix): Likewise.
2058 (tc_gen_reloc): Likewise.
2059 * testsuite/gas/arm/armv8_1-m-tloop.s: New.
2060 * testsuite/gas/arm/armv8_1-m-tloop.d: New.
2061 * testsuite/gas/arm/armv8_1-m-tloop-bad.s: New.
2062 * testsuite/gas/arm/armv8_1-m-tloop-bad.d: New.
2063 * testsuite/gas/arm/armv8_1-m-tloop-bad.l: New.
2064
2065 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2066 Andre Vieira <andre.simoesdiasvieira@arm.com>
2067
2068 * config/tc-arm.c (T16_32_TAB): New entriy for bfcsel.
2069 (do_t_v8_1_branch): New switch case for bfcsel.
2070 (toU): Define.
2071 (insns): New instruction for bfcsel.
2072 (md_pcrel_from_section): New switch case
2073 for BFD_RELOC_THUMB_PCREL_BFCSEL.
2074 (md_appdy_fix): Likewise
2075 (tc_gen_reloc): Likewise.
2076 * testsuite/gas/arm/armv8_1-m-bfcsel.d: New.
2077 * testsuite/gas/arm/armv8_1-m-bfcsel.s: New.
2078
2079 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2080
2081 * config/tc-arm.c (md_pcrel_from_section): New switch case for
2082 BFD_RELOC_ARM_THUMB_BF13.
2083 (md_appdy_fix): Likewise.
2084 (tc_gen_reloc): Likewise.
2085
2086 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2087 Andre Vieira <andre.simoesdiasvieira@arm.com>
2088
2089 * config/tc-arm.c (T16_32_TAB): New entrie for bfl.
2090 (do_t_v8_1_branch): New switch case for bfl.
2091 (insns): New instruction for bfl.
2092 * testsuite/gas/arm/armv8_1-m-bfl.d: New.
2093 * testsuite/gas/arm/armv8_1-m-bfl.s: New.
2094 * testsuite/gas/arm/armv8_1-m-bfl-bad.s: New.
2095 * testsuite/gas/arm/armv8_1-m-bfl-bad.d: New.
2096 * testsuite/gas/arm/armv8_1-m-bfl-bad.l: New.
2097 * testsuite/gas/arm/armv8_1-m-bfl-rel.d: New.
2098 * testsuite/gas/arm/armv8_1-m-bfl-rel.s: New.
2099
2100 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2101
2102 * config/tc-arm.c (md_pcrel_from_section): New switch case for
2103 BFD_RELOC_ARM_THUMB_BF19.
2104 (md_appdy_fix): Likewise.
2105 (tc_gen_reloc): Likewise.
2106
2107 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2108
2109 * config/tc-arm.c (T16_32_TAB): New entries for bfx and bflx.
2110 (do_t_v8_1_branch): New switch cases for bfx and bflx.
2111 (insns): New instruction for bfx and bflx.
2112 * testsuite/gas/arm/armv8_1-m-bf-exchange.d: New.
2113 * testsuite/gas/arm/armv8_1-m-bf-exchange.s: New.
2114 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.s: New
2115 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.l: New
2116 * testsuite/gas/arm/armv8_1-m-bf-exchange-bad.d: New
2117
2118 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2119 Andre Vieira <andre.simoesdiasvieira@arm.com>
2120
2121 * config/tc-arm.c (T16_32_TAB): New entries for bf.
2122 (do_t_branch_future): New.
2123 (insns): New instruction for bf.
2124 * testsuite/gas/arm/armv8_1-m-bf.d: New.
2125 * testsuite/gas/arm/armv8_1-m-bf.s: New.
2126 * testsuite/gas/arm/armv8_1-m-bf-bad.s: New.
2127 * testsuite/gas/arm/armv8_1-m-bf-bad.l: New.
2128 * testsuite/gas/arm/armv8_1-m-bf-bad.d: New.
2129 * testsuite/gas/arm/armv8_1-m-bf-rel.d: New.
2130 * testsuite/gas/arm/armv8_1-m-bf-rel.s: New.
2131
2132 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2133
2134 * config/tc-arm.c (md_pcrel_from_section): New switch case for
2135 BFD_RELOC_ARM_THUMB_BF17.
2136 (md_appdy_fix): Likewise.
2137 (tc_gen_reloc): Likewise.
2138
2139 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2140
2141 * config/tc-arm.c (ARM_IT_MAX_RELOCS): New macro.
2142 (arm_it): Member reloc renamed relocs and updated to an array.
2143 Rest: Replace all occurrences of reloc to relocs[0].
2144
2145 2019-04-15 Sudakshina Das <sudi.das@arm.com>
2146
2147 * config/tc-arm.c (md_pcrel_from_section): New switch case
2148 for BFD_RELOC_THUMB_PCREL_BRANCH5.
2149 (v8_1_branch_value_check): New function to check branch
2150 offsets.
2151 (md_appdy_fix): New switch case for
2152 BFD_RELOC_THUMB_PCREL_BRANCH5.
2153 (tc_gen_reloc): Likewise.
2154
2155 2019-04-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
2156
2157 * config/tc-arm.c (do_neon_movhf): Remove fp-armv8 check.
2158 (armv8_1m_main_ext_table): New extension table.
2159 (arm_archs): Use the new extension table.
2160 * doc/c-arm.texi: Add missing arch and document new extensions.
2161 * testsuite/gas/arm/armv8.1-m.main-fp.d: New.
2162 * testsuite/gas/arm/armv8.1-m.main-fp-dp.d: New.
2163 * testsuite/gas/arm/armv8.1-m.main-hp.d: New.
2164
2165 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
2166
2167 * config/tc-arm.c (cpu_arch_ver): Add entry for Armv8.1-M Mainline
2168 Tag_CPU_arch build attribute value. Reindent.
2169 (get_aeabi_cpu_arch_from_fset): Update assert.
2170 (aeabi_set_public_attributes): Update assert for Tag_DIV_use logic.
2171 * testsuite/gas/arm/attr-march-armv8_1-m.main.d: New test.
2172
2173 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
2174
2175 * config/tc-mips.c (mips_cpu_info_table): Add i6500. Update
2176 default ASEs for i6400.
2177 * doc/c-mips.texi (-march): Document i6500.
2178 * testsuite/gas/mips/elf_mach_i6400.d: New test.
2179 * testsuite/gas/mips/elf_mach_i6500.d: New test.
2180 * testsuite/gas/mips/mips.exp: Run the new tests.
2181
2182 2019-04-09 Matthew Fortune <matthew.fortune@mips.com>
2183
2184 * config/tc-mips.c (mips_set_options) <init_ase>: New field.
2185 (file_mips_opts, mips_opts) <init_ase>: Initialize new field.
2186 (file_mips_check_options): Propagate initial ASE settings.
2187 (mips_after_parse_args, parse_code_option): Track the initial
2188 ASE settings for a CPU.
2189 (s_mipsset): Restore the initial ASE settings when reverting
2190 to the default arch.
2191 * testsuite/gas/mips/elf_mach_p6600.d: New test.
2192 * testsuite/gas/mips/mips.exp: Run the new test.
2193
2194 2019-04-12 John Darrington <john@darrington.wattle.id.au>
2195
2196 config/tc-s12z.h: Remove definition of macro TC_M68K
2197
2198 2019-04-01 John Darrington <john@darrington.wattle.id.au>
2199
2200 config/tc-s12z.c: Use bfd_boolean where appropriate.
2201
2202 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
2203
2204 * testsuite/gas/xtensa/loop-relax-2.d: New test definition.
2205 * testsuite/gas/xtensa/loop-relax.d: New test definition.
2206 * testsuite/gas/xtensa/loop-relax.s: New test source.
2207 * testsuite/gas/xtensa/text-section-literals-1a.d: New test
2208 definition.
2209 * testsuite/gas/xtensa/text-section-literals-2.d: New test
2210 definition.
2211 * testsuite/gas/xtensa/text-section-literals-2.s: New test
2212 source.
2213 * testsuite/gas/xtensa/text-section-literals-2a.d: New test
2214 definition.
2215 * testsuite/gas/xtensa/text-section-literals-3.d: New test
2216 definition.
2217 * testsuite/gas/xtensa/text-section-literals-3.s: New test
2218 source.
2219 * testsuite/gas/xtensa/text-section-literals-4.d: New test
2220 definition.
2221 * testsuite/gas/xtensa/text-section-literals-4.s: New test
2222 source.
2223 * testsuite/gas/xtensa/text-section-literals-4a.d: New test
2224 definition.
2225
2226 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
2227
2228 * testsuite/gas/xtensa/all.exp: Remove all expect-based
2229 tests and all explicit run_dump_test / run_list_test
2230 invocations. Add run_dump_tests for all .d files in the
2231 test subdirectory.
2232 * testsuite/gas/xtensa/entry_align.d: New test definition.
2233 * testsuite/gas/xtensa/entry_align.l: New test output.
2234 * testsuite/gas/xtensa/entry_misalign.d: New test definition.
2235 * testsuite/gas/xtensa/entry_misalign2.d: New test definition.
2236 * testsuite/gas/xtensa/j_too_far.d: New test definition.
2237 * testsuite/gas/xtensa/j_too_far.l: New test output.
2238 * testsuite/gas/xtensa/loop_align.d: New test definition.
2239 * testsuite/gas/xtensa/loop_misalign.d: New test definition.
2240 * testsuite/gas/xtensa/trampoline-2.d: New test definition.
2241 * testsuite/gas/xtensa/trampoline-2.l: Remove empty output.
2242 * testsuite/gas/xtensa/xtensa-err.exp: Use positive logic.
2243
2244 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
2245
2246 * config/tc-xtensa.c (xtensa_literal_pseudo): Drop code that has
2247 no effect.
2248 (get_literal_pool_location): Only search for the literal pool
2249 when auto litpools is used, otherwise take one recorded in the
2250 tc_segment_info_data.
2251 (xtensa_assign_litpool_addresses): New function.
2252 (xtensa_move_literals): Don't duplicate 'literal pool location
2253 required...' error message. Call xtensa_assign_litpool_addresses.
2254
2255 2019-04-11 Max Filippov <jcmvbkbc@gmail.com>
2256
2257 * config/tc-xtensa.c (xtensa_is_init_fini): Add declaration.
2258 (xtensa_mark_literal_pool_location): Don't add fill frag to literal
2259 section that records literal pool location.
2260 (md_begin): Call xtensa_mark_literal_pool_location when text
2261 section literals or auto litpools are used.
2262 (xtensa_elf_section_change_hook): Call
2263 xtensa_mark_literal_pool_location when text section literals or
2264 auto litpools are used, there's no literal pool location defined
2265 for the current section and it's not .init or .fini.
2266 * testsuite/gas/xtensa/auto-litpools-first1.d: Fix up addresses.
2267 * testsuite/gas/xtensa/auto-litpools-first2.d: Likewise.
2268 * testsuite/gas/xtensa/auto-litpools.d: Likewise.
2269
2270 2019-04-11 Sudakshina Das <sudi.das@arm.com>
2271
2272 * config/tc-aarch64.c (process_omitted_operand): Add case for
2273 AARCH64_OPND_Rt_SP.
2274 (parse_operands): Likewise.
2275 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
2276 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2277 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2278 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2279
2280 2019-04-11 Sudakshina Das <sudi.das@arm.com>
2281
2282 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
2283 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2284 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2285 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2286
2287 2019-04-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2288
2289 * config/tc-i386.c (need_plt32_p) [TE_SOLARIS]: Return FALSE.
2290 * testsuite/gas/i386/solaris/solaris.exp: New driver.
2291 * testsuite/gas/i386/solaris/reloc64.d,
2292 testsuite/gas/i386/solaris/x86-64-jump.d,
2293 testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
2294 testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d,
2295 testsuite/gas/i386/solaris/x86-64-nop-3.d,
2296 testsuite/gas/i386/solaris/x86-64-nop-4.d,
2297 testsuite/gas/i386/solaris/x86-64-nop-5.d,
2298 testsuite/gas/i386/solaris/x86-64-relax-2.d,
2299 testsuite/gas/i386/solaris/x86-64-relax-3.d: New tests.
2300 * testsuite/gas/i386/reloc64.d,
2301 testsuite/gas/i386/x86-64-jump.d,
2302 testsuite/gas/i386/x86-64-mpx-branch-1.d,
2303 testsuite/gas/i386/x86-64-mpx-branch-2.d,
2304 testsuite/gas/i386/x86-64-nop-3.d,
2305 testsuite/gas/i386/x86-64-nop-4.d,
2306 testsuite/gas/i386/x86-64-nop-5.d,
2307 testsuite/gas/i386/x86-64-relax-2.d,
2308 testsuite/gas/i386/x86-64-relax-3.d: Skip on *-*-solaris*.
2309
2310 2019-04-10 Alan Modra <amodra@gmail.com>
2311
2312 * config/te-cloudabi.h: New file.
2313 * config/tc-aarch64.c (aarch64_after_parse_args): Use TE_CLOUDABI
2314 rather than TARGET_OS to select cloudabi.
2315 * config/tc-i386.h (ELF_TARGET_FORMAT64): Define for TE_CLOUDABI.
2316 * configure.tgt (*-*-cloudabi*): Set em=cloudabi.
2317
2318 2019-04-09 Robert Suchanek <robert.suchanek@mips.com>
2319
2320 * testsuite/gas/mips/mips.exp: Run hwr-names test.
2321 * testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
2322 the SEL field.
2323 * testsuite/gas/mips/mipsr6@hwr-names.d: New file.
2324
2325 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
2326
2327 * config/tc-i386.c (output_insn): Support
2328 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
2329 * testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
2330 * testsuite/gas/i386/property-2.d: Updated.
2331 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
2332
2333 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
2334
2335 * configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
2336 * testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
2337 check.
2338
2339 2019-04-05 H.J. Lu <hongjiu.lu@intel.com>
2340
2341 * testsuite/gas/i386/i386.exp: Run -mx86-used-note=yes tests.
2342 * testsuite/gas/i386/property-2.d: New file.
2343 * testsuite/gas/i386/property-2.s: Likewise.
2344 * testsuite/gas/i386/x86-64-property-2.d: Likewise.
2345
2346 2019-04-05 Xuepeng Guo <xuepeng.guo@intel.com>
2347
2348 * config/tc-i386.c (cpu_arch): Add .avx512_bf16.
2349 (cpu_noarch): Add noavx512_bf16.
2350 * doc/c-i386.texi: Document avx512_bf16.
2351 * testsuite/gas/i386/avx512_bf16.d: New file.
2352 * testsuite/gas/i386/avx512_bf16.s: Likewise.
2353 * testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
2354 * testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
2355 * testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
2356 * testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
2357 * testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
2358 * testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
2359 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
2360 * testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
2361 * testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
2362 * testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
2363 * testsuite/gas/i386/i386.exp: Add BF16 related tests.
2364
2365 2019-04-05 Alan Modra <amodra@gmail.com>
2366
2367 * testsuite/gas/ppc/bc.s,
2368 * testsuite/gas/ppc/bcat.d,
2369 * testsuite/gas/ppc/bcaterr.d,
2370 * testsuite/gas/ppc/bcaterr.l,
2371 * testsuite/gas/ppc/bcy.d,
2372 * testsuite/gas/ppc/bcyerr.d,
2373 * testsuite/gas/ppc/bcyerr.l: New tests.
2374 * testsuite/gas/ppc/ppc.exp: Run them.
2375
2376 2019-04-05 Alan Modra <amodra@gmail.com>
2377
2378 * testsuite/gas/ppc/476.d: Remove trailing spaces.
2379 * testsuite/gas/ppc/a2.d: Likewise.
2380 * testsuite/gas/ppc/booke.d: Likewise.
2381 * testsuite/gas/ppc/booke_xcoff.d: Likewise.
2382 * testsuite/gas/ppc/e500.d: Likewise.
2383 * testsuite/gas/ppc/e500mc.d: Likewise.
2384 * testsuite/gas/ppc/e6500.d: Likewise.
2385 * testsuite/gas/ppc/htm.d: Likewise.
2386 * testsuite/gas/ppc/power6.d: Likewise.
2387 * testsuite/gas/ppc/power8.d: Likewise.
2388 * testsuite/gas/ppc/power9.d: Likewise.
2389 * testsuite/gas/ppc/vle.d: Likewise.
2390
2391 2019-04-04 Peter Bergner <bergner@linux.ibm.com>
2392
2393 PR gas/24349
2394 * testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
2395 btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
2396 bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
2397 bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
2398 bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
2399 bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
2400 bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
2401 bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
2402 bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
2403 beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
2404 bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
2405 buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
2406 bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
2407 bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
2408 bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
2409 bttarl+): Add tests of extended mnemonics.
2410 * testsuite/gas/ppc/power8.d: Likewise. Update previous bctar tests
2411 to expect new extended mnemonics.
2412 * testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
2413 to not use illegal BO value. Use a more convenient BI value.
2414 * testsuite/gas/ppc/a2.d: Update tests for new expect output.
2415
2416 2019-04-03 Max Filippov <jcmvbkbc@gmail.com>
2417
2418 * config/tc-xtensa.c (convert_frag_immed): Drop
2419 convert_frag_immed_finish_loop invocation.
2420 (convert_frag_immed_finish_loop): Drop declaration and
2421 definition.
2422 * config/xtensa-relax.c (widen_spec_list): Replace loop
2423 widening that uses addi/addmi with widening that uses l32r
2424 and const16.
2425
2426 2019-04-01 Andre Vieira <andre.simoesdiasvieira@arm.com>
2427
2428 * config/tc-arm.c (arm_ext_table): New struct type.
2429 (arm_arch_option_table): Add new 'arm_ext_table' field.
2430 (ARM_EXT,ARM_ADD,ARM_REMOVE, ALL_FP): New macros.
2431 (armv5te_ext_table, armv7ve_ext_table, armv7a_ext_table,
2432 armv7r_ext_table, armv7em_ext_table, armv8a_ext_table,
2433 armv81a_ext_table, armv82a_ext_table, armv84a_ext_table,
2434 armv85a_ext_table, armv8m_main_ext_table,
2435 armv8r_ext_table): New architecture extension tables.
2436 (ARM_ARCH_OPT): Add new default field.
2437 (ARM_ARCH_OPT2): New macro.
2438 (arm_archs): Extend some architectures with the new architecture
2439 extension tables mentioned above.
2440 (arm_extensions): Add DEPRECATED comment with instructions to
2441 use new table.
2442 (arm_parse_extension): Change to use new extension tables.
2443 (arm_parse_cpu): Don't change existing behavior.
2444 (arm_parse_arch): Change to use new extension tables.
2445 * doc/c-arm.texi: Document new architecture extensions.
2446 * testsuite/gas/arm/attr-mfpu-neon-fp16.d: Change test to use new
2447 extension option rather than -mfpu and change expected behaviour to
2448 sane outputs.
2449 * testsuite/gas/arm/armv8-2-fp16-scalar-bad-ext.d: New.
2450 * testsuite/gas/arm/armv8-2-fp16-scalar-ext.d: New.
2451 * testsuite/gas/arm/armv8-2-fp16-scalar-thumb-ext.d: New.
2452 * testsuite/gas/arm/armv8-2-fp16-simd-ext.d: New.
2453 * testsuite/gas/arm/armv8-2-fp16-simd-thumb-ext.d: New.
2454 * testsuite/gas/arm/armv8-2-fp16-simd-warning-ext.d: New.
2455 * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb-ext.d: New.
2456 * testsuite/gas/arm/armv8_2+rdma-ext.d: New.
2457 * testsuite/gas/arm/armv8_2-a-fp16-thumb2-ext.d: New.
2458 * testsuite/gas/arm/armv8_2-a-fp16_ext.d: New.
2459 * testsuite/gas/arm/armv8_3-a-fp-bad-ext.d: New.
2460 * testsuite/gas/arm/armv8_3-a-fp-ext.d: New.
2461 * testsuite/gas/arm/armv8_3-a-fp16-ext.d: New.
2462 * testsuite/gas/arm/armv8_3-a-simd-bad-ext.d: New.
2463 * testsuite/gas/arm/armv8_4-a-fp16-ext.d: New.
2464 * testsuite/gas/arm/armv8m.main+fp.d: New.
2465 * testsuite/gas/arm/armv8m.main+fp.dp.d: New.
2466 * testsuite/gas/arm/attr-ext-fpv5-d16.d: New.
2467 * testsuite/gas/arm/attr-ext-fpv5.d: New.
2468 * testsuite/gas/arm/attr-ext-idiv.d: New.
2469 * testsuite/gas/arm/attr-ext-mp.d: New.
2470 * testsuite/gas/arm/attr-ext-neon-fp16.d: New.
2471 * testsuite/gas/arm/attr-ext-neon-vfpv3.d: New.
2472 * testsuite/gas/arm/attr-ext-neon-vfpv4.d: New.
2473 * testsuite/gas/arm/attr-ext-sec.d: New.
2474 * testsuite/gas/arm/attr-ext-vfpv3-d16-fp16.d: New.
2475 * testsuite/gas/arm/attr-ext-vfpv3-d16.d: New.
2476 * testsuite/gas/arm/attr-ext-vfpv3-fp16.d: New.
2477 * testsuite/gas/arm/attr-ext-vfpv3.d: New.
2478 * testsuite/gas/arm/attr-ext-vfpv3xd-fp.d: New.
2479 * testsuite/gas/arm/attr-ext-vfpv3xd.d: New.
2480 * testsuite/gas/arm/attr-ext-vfpv4-d16.d: New.
2481 * testsuite/gas/arm/attr-ext-vfpv4-sp-d16.d: New.
2482 * testsuite/gas/arm/attr-ext-vfpv4.d: New.
2483 * testsuite/gas/arm/dotprod-mandatory-ext.d: New.
2484 * testsuite/gas/arm/fpv5-d16.s: New.
2485 * testsuite/gas/arm/fpv5-sp-d16.s: New.
2486
2487 2019-03-28 Alan Modra <amodra@gmail.com>
2488
2489 PR 24390
2490 * testsuite/gas/ppc/476.d: Update mtfsb*.
2491 * testsuite/gas/ppc/a2.d: Likewise.
2492
2493 2019-03-21 Alan Modra <amodra@gmail.com>
2494
2495 * emul.h (struct emulation): Delete strip_underscore.
2496 * emul-target.h (emul_strip_underscore): Don't define.
2497 (emul_struct_name): Update initialization.
2498
2499 2019-03-21 Alan Modra <amodra@gmail.com>
2500
2501 * config/tc-d10v.c (md_apply_fix): Apply BFD_RELOC_8.
2502 * config/tc-pdp11.c (md_apply_fix): Likewise.
2503 * config/tc-d30v.c (md_apply_fix): Don't emit errors for BFD_RELOC_8,
2504 BFD_RELOC_16, and BFD_RELOC_64.
2505 * testsuite/gas/all/gas.exp: Move target exclusions for forward
2506 test, but not cr16, to..
2507 * testsuite/gas/all/forward.d: ..here, with explanation. Remove
2508 d10v, d30v, and pdp11 xfails.
2509
2510 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2511
2512 * config/tc-i386.c (optimize_encoding): Don't check AVX for
2513 EVEX vector load/store optimization. Check both operands for
2514 ZMM register. Update EVEX vector load/store opcode check.
2515 Choose EVEX Disp8 over VEX Disp32.
2516 * testsuite/gas/i386/optimize-1.d: Updated.
2517 * testsuite/gas/i386/optimize-1a.d: Likewise.
2518 * testsuite/gas/i386/optimize-2.d: Likewise.
2519 * testsuite/gas/i386/optimize-4.d: Likewise.
2520 * testsuite/gas/i386/optimize-5.d: Likewise.
2521 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
2522 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
2523 * testsuite/gas/i386/x86-64-optimize-2b.d: Likewise.
2524 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2525 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
2526 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
2527 * testsuite/gas/i386/optimize-1.s: Add ZMM register load
2528 test.
2529 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
2530
2531 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2532
2533 PR gas/24352
2534 * config/tc-i386.c (optimize_encoding): Check only
2535 cpu_arch_flags.bitfield.cpuavx512vl.
2536 * testsuite/gas/i386/i386.exp: Run x86-64-optimize-2b.
2537 * testsuite/gas/i386/x86-64-optimize-2.d: Revert the last
2538 change.
2539 * testsuite/gas/i386/x86-64-optimize-2b.d: New file.
2540 * testsuite/gas/i386/x86-64-optimize-2b.s: Likewise.
2541
2542 2019-03-19 H.J. Lu <hongjiu.lu@intel.com>
2543
2544 PR gas/24359
2545 * testsuite/gas/i386/i386.exp: Change optimize-6a, optimize-7,
2546 x86-64-optimize-7a and x86-64-optimize-8 tests to run_list_test.
2547 Remove optimize-6c and x86-64-optimize-7c tests.
2548 * testsuite/gas/i386/noavx-3.l: Updated.
2549 * testsuite/gas/i386/noavx-4.d: Likewise.
2550 * testsuite/gas/i386/noavx-5.d: Likewise.
2551 * testsuite/gas/i386/noavx-3.s: Add AVX512F tests.
2552 * testsuite/gas/i386/noavx-4.s: Remove AVX512F tests.
2553 * testsuite/gas/i386/nosse-5.s: Likewise.
2554 * testsuite/gas/i386/optimize-6a.d: Removed.
2555 * testsuite/gas/i386/optimize-6c.d: Likewise.
2556 * testsuite/gas/i386/optimize-7.d: Likewise.
2557 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
2558 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
2559 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
2560 * testsuite/gas/i386/optimize-6a.l: New file.
2561 * testsuite/gas/i386/optimize-6a.s: Likewise.
2562 * testsuite/gas/i386/optimize-7.l: Likewise.
2563 * testsuite/gas/i386/x86-64-optimize-7a.l: Likewise.
2564 * testsuite/gas/i386/x86-64-optimize-7a.s: Likewise.
2565 * testsuite/gas/i386/x86-64-optimize-8.l: Likewise.
2566
2567 2019-03-18 Alan Modra <amodra@gmail.com>
2568
2569 * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp.
2570 * as.c (macro_expr): Likewise.
2571 * macro.c (buffer_and_nest): Likewise.
2572 * read.c (temp_ilp): Remove FIXME.
2573
2574 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2575
2576 * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler.
2577 * testsuite/gas/i386/avx512bw-intel.d: Likewise.
2578 * testsuite/gas/i386/avx512bw.d: Likewise.
2579 * testsuite/gas/i386/avx512f-intel.d: Likewise.
2580 * testsuite/gas/i386/avx512f.d: Likewise.
2581 * testsuite/gas/i386/disp32.d: Likewise.
2582 * testsuite/gas/i386/intel-regs.d: Likewise.
2583 * testsuite/gas/i386/pseudos.d: Likewise.
2584 * testsuite/gas/i386/x86-64-disp32.d: Likewise.
2585 * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
2586
2587 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2588
2589 PR gas/24348
2590 * config/tc-i386.c (optimize_encoding): Encode 128-bit and
2591 256-bit EVEX vector register load/store instructions as VEX
2592 vector register load/store instructions for -O1.
2593 * doc/c-i386.texi: Update -O1 documentation.
2594 * testsuite/gas/i386/i386.exp: Run PR gas/24348 tests.
2595 * testsuite/gas/i386/optimize-1.s: Add tests for EVEX vector
2596 load/store instructions.
2597 * testsuite/gas/i386/optimize-2.s: Likewise.
2598 * testsuite/gas/i386/optimize-3.s: Likewise.
2599 * testsuite/gas/i386/optimize-5.s: Likewise.
2600 * testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
2601 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
2602 * testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
2603 * testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
2604 * testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
2605 * testsuite/gas/i386/optimize-1.d: Updated.
2606 * testsuite/gas/i386/optimize-2.d: Likewise.
2607 * testsuite/gas/i386/optimize-3.d: Likewise.
2608 * testsuite/gas/i386/optimize-4.d: Likewise.
2609 * testsuite/gas/i386/optimize-5.d: Likewise.
2610 * testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
2611 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2612 * testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
2613 * testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
2614 * testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
2615 * testsuite/gas/i386/optimize-7.d: New file.
2616 * testsuite/gas/i386/optimize-7.s: Likewise.
2617 * testsuite/gas/i386/x86-64-optimize-8.d: Likewise.
2618 * testsuite/gas/i386/x86-64-optimize-8.s: Likewise.
2619
2620 2019-03-18 H.J. Lu <hongjiu.lu@intel.com>
2621
2622 * config/tc-i386.c (optimize_encoding): Encode 256-bit/512-bit
2623 VEX/EVEX vector register clearing instructions with 128-bit VEX
2624 vector register clearing instructions at -O1.
2625 * doc/c-i386.texi: Update -O1 and -O2 documentation.
2626 * testsuite/gas/i386/i386.exp: Run optimize-1a and
2627 x86-64-optimize-2a.
2628 * testsuite/gas/i386/optimize-1a.d: New file.
2629 * testsuite/gas/i386/x86-64-optimize-2a.d: Likewise.
2630
2631 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
2632
2633 PR gas/24353
2634 * config/tc-i386.c: Include <limits.h> if it exists and try
2635 including <sys/param.h> if we have it.
2636 (INT_MAX): Define if not defined.
2637 (md_parse_option): Set optimize to INT_MAX for -Os.
2638 * testsuite/gas/i386/optimize-2.s: Add a test.
2639 * testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
2640 * testsuite/gas/i386/optimize-2.d: Updated.
2641 * testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
2642
2643 2019-03-17 H.J. Lu <hongjiu.lu@intel.com>
2644
2645 PR gas/24352
2646 * config/tc-i386.c (optimize_encoding): Encode 512-bit EVEX
2647 with 128-bit VEX encoding only when AVX is enabled and with
2648 128-bit EVEX encoding only when AVX512VL is enabled.
2649 * testsuite/gas/i386/i386.exp: Run PR gas/24352 tests.
2650 * testsuite/gas/i386/optimize-6.s: New file.
2651 * testsuite/gas/i386/optimize-6a.d: Likewise.
2652 * testsuite/gas/i386/optimize-6b.d: Likewise.
2653 * testsuite/gas/i386/optimize-6c.d: Likewise.
2654 * testsuite/gas/i386/x86-64-optimize-7.s: Likewise.
2655 * testsuite/gas/i386/x86-64-optimize-7a.d: Likewise.
2656 * testsuite/gas/i386/x86-64-optimize-7b.d: Likewise.
2657 * testsuite/gas/i386/x86-64-optimize-7c.d: Likewise.
2658 * testsuite/gas/i386/x86-64-optimize-2.d: Updated.
2659
2660 2019-03-15 Li Hao <li.hao296@zte.com.cn>
2661
2662 PR 24308
2663 * config/tc-i386.c (parse_insn): Check mnemp before using it to
2664 determine if a suffix can be trimmed.
2665
2666 2019-03-13 Christian Eggers <ceggers@gmx.de>
2667
2668 * dwarf2dbg.c (out_set_addr): Align relocation within .debug_line.
2669
2670 2019-03-13 Christian Eggers <ceggers@gmx.de>
2671
2672 * dwarf2dbg.c (out_debug_line): Pad size of .debug_line section.
2673
2674 2019-03-13 Christian Eggers <ceggers@gmx.de>
2675
2676 * dwarf2dbg.c (out_debug_str): Use octets for .debug_string pointers.
2677
2678 2019-03-13 Christian Eggers <ceggers@gmx.de>
2679
2680 * dwarf2dbg.c (out_debug_line): Use octets for .debug_line prologue.
2681
2682 2019-03-13 Christian Eggers <ceggers@gmx.de>
2683
2684 * dwarf2dbg.c (out_debug_line): Use octets for dwarf2 headers.
2685 (out_debug_aranges, out_debug_info): Likewise.
2686
2687 2019-03-13 Christian Eggers <ceggers@gmx.de>
2688
2689 * symbols.h (symbol_temp_new_now_octets): Declare.
2690 (symbol_set_value_now_octets, symbol_octets_p): Declare.
2691 * symbols.c (struct symbol_flags): New member sy_octets.
2692 (symbol_temp_new_now_octets): New function.
2693 (resolve_symbol_value): Return octets instead of bytes if
2694 sy_octets is set.
2695 (symbol_set_value_now_octets): New function.
2696 (symbol_octets_p): New function.
2697
2698 2019-03-13 Christian Eggers <ceggers@gmx.de>
2699
2700 * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset.
2701
2702 2019-03-12 Andreas Krebbel <krebbel@linux.ibm.com>
2703
2704 * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes.
2705 * testsuite/gas/s390/zarch-arch13.d: Likewise.
2706
2707 2019-02-27 Matthew Malcomson <matthew.malcomson@arm.com>
2708
2709 * testsuite/gas/aarch64/dotproduct.d: Use multiple "as" lines.
2710 * testsuite/gas/aarch64/dotproduct_armv8_4.d: Remove.
2711 * testsuite/gas/aarch64/dotproduct_armv8_4.s: Remove.
2712 * testsuite/gas/aarch64/illegal-dotproduct.d: Use multiple "as"
2713 lines.
2714 * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: Remove.
2715 * testsuite/gas/aarch64/ldst-rcpc.d: Use multiple "as" lines.
2716
2717 2019-02-24 Alan Modra <amodra@gmail.com>
2718
2719 * config/tc-ppc.c (parse_tls_arg): Wrap in #ifdef OBJ_ELF.
2720
2721 2019-02-24 Alan Modra <amodra@gmail.com>
2722
2723 PR 24144
2724 * config/obj-aout.c (obj_aout_frob_file_before_fix): Write to end
2725 of section to ensure file contents cover aligned section size.
2726
2727 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2728
2729 * config/tc-arm.c (arm_cpus): Add neoverse-n1.
2730 * doc/c-arm.texi (-mcpu): Document neoverse-n1 value.
2731
2732 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2733
2734 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-e1.
2735 * doc/c-aarch64.texi (-mcpu): Document neoverse-e1 value.
2736
2737 2019-02-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2738
2739 * config/tc-aarch64.c (aarch64_cpus): Add neoverse-n1.
2740 * doc/c-aarch64.texi (-mcpu): Document neoverse-n1 value.
2741
2742 2019-02-19 Paul Hua <paul.hua.gm@gmail.com>
2743
2744 * NEWS: Mention -m[no-]fix-loongson3-llsc.
2745 * configure.ac: Add --enable-mips-fix-loongson3-llsc.
2746 Define DEFAULT_MIPS_FIX_LOONGSON3_LLSC.
2747 * config.in: Regenerated.
2748 * configure: Likewise.
2749 * config/tc-mips.c (sync_insn, mips_fix_loongson3_llsc):
2750 New variables.
2751 (options): New OPTION_FIX_LOONGSON3_LLSC,
2752 OPTION_NO_FIX_LOONGSON3_LLSC.
2753 (md_longopts): Add -m[no-]fix-loongson3-llsc.
2754 (md_begin): Initialize sync insn.
2755 (fix_loongson3_llsc): New.
2756 (append_insn): Call fix_loongson3_llsc.
2757 (md_parse_option): Handle OPTION_FIX_LOONGSON3_LLSC,
2758 OPTION_NO_FIX_LOONGSON3_LLSC.
2759 (md_show_usage): Display -m[no-]fix-loongson3-llsc.
2760 * doc/c-mips.texi: Document -m[no-]fix-loongson3-llsc,
2761 --enable-mips-fix-loongson3-llsc=[yes|no].
2762
2763 2019-02-10 H.J. Lu <hongjiu.lu@intel.com>
2764
2765 PR gas/24165
2766 * frags.c (frag_var_init): Pass max_chars to TC_FRAG_INIT as
2767 max_bytes.
2768 * config/tc-aarch64.h (TC_FRAG_INIT): Add and pass max_bytes to
2769 aarch64_init_frag.
2770 * /config/tc-arm.h (TC_FRAG_INIT): And and pass max_bytes to
2771 arm_init_frag.
2772 * config/tc-avr.h (TC_FRAG_INIT): And and ignore max_bytes.
2773 * config/tc-ia64.h (TC_FRAG_INIT): Likewise.
2774 * config/tc-mmix.h (TC_FRAG_INIT): Likewise.
2775 * config/tc-nds32.h (TC_FRAG_INIT): Likewise.
2776 * config/tc-ns32k.h (TC_FRAG_INIT): Likewise.
2777 * config/tc-rl78.h (TC_FRAG_INIT): Likewise.
2778 * config/tc-rx.h (TC_FRAG_INIT): Likewise.
2779 * config/tc-score.h (TC_FRAG_INIT): Likewise.
2780 * config/tc-tic54x.h (TC_FRAG_INIT): Likewise.
2781 * config/tc-tic6x.h (TC_FRAG_INIT): Likewise.
2782 * config/tc-xtensa.h (TC_FRAG_INIT): Likewise.
2783 * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Set to
2784 (alignment ? ((1 << alignment) - 1) : 1)
2785 (i386_tc_frag_data): Add max_bytes.
2786 (TC_FRAG_INIT): Add and track max_bytes.
2787 (HANDLE_ALIGN): Replace MAX_MEM_FOR_RS_ALIGN_CODE with
2788 fragP->tc_frag_data.max_bytes.
2789 * doc/internals.texi: Update TC_FRAG_TYPE with max_bytes.
2790
2791 2019-02-08 Jim Wilson <jimw@sifive.com>
2792
2793 * config/tc-riscv.c (validate_riscv_insn) <'C'>: Add 'z' support.
2794 (riscv_ip) <'C'>: Add 'z' support.
2795
2796 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2797
2798 * config/tc-arm.c (insns): Redefine THUMB_VARIANT and ARM_VARIANT for
2799 hlt to armv1.
2800 * testsuite/gas/arm/armv8a-automatic-hlt.d: Update TAGs
2801 * testsuite/gas/arm/hlt.d: New test.
2802 * testsuite/gas/arm/hlt.s: New test.
2803
2804 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2805
2806 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.d: New test.
2807 * testsuite/gas/aarch64/undefined_advsimd_armv8_3.s: New test.
2808
2809 2019-02-07 Tamar Christina <tamar.christina@arm.com>
2810
2811 PR binutils/23212
2812 * testsuite/gas/aarch64/undefined_by_elem_sz_l.s: New test.
2813 * testsuite/gas/aarch64/undefined_by_elem_sz_l.d: New test.
2814
2815 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2816
2817 * config/tc-visium.c (md_assemble) <mode_cad>: Align instruction on
2818 64-bit boundaries for the GR6.
2819 * testsuite/gas/visium/allinsn_gr6.s: Tweak.
2820 * testsuite/gas/visium/allinsn_gr6.d: Likewise.
2821 * testsuite/gas/visium/bra-1.d: New test.
2822 * testsuite/gas/visium/bra-1.s: Likewise.
2823 * testsuite/gas/visium/visium.exp: Run bra-1 test.
2824
2825 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2826
2827 * config/tc-s12z.c (lex_imm): Add new argument exp_o.
2828 (emit_reloc): New function.
2829 (md_apply_fix): [BFD_RELOC_S12Z_OPR] Recognise that it
2830 can be either 2 bytes or 3 bytes long.
2831 * testsuite/gas/s12z/mov-imm-reloc.d: New file.
2832 * testsuite/gas/s12z/mov-imm-reloc.s: New file.
2833 * testsuite/gas/s12z/s12z.exp: Add them.
2834
2835 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2836
2837 * config/tc-s12z.c (md_apply_fix): Fix incorrect limits.
2838 * testsuite/gas/s12z/pc-rel-bad.d: New file.
2839 * testsuite/gas/s12z/pc-rel-bad.l: New file.
2840 * testsuite/gas/s12z/pc-rel-bad.s: New file.
2841 * testsuite/gas/s12z/pc-rel-good.d: New file.
2842 * testsuite/gas/s12z/pc-rel-good.s: New file.
2843 * testsuite/gas/s12z/s12z.exp: Add them.
2844
2845 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2846
2847 * config/tc-s12z.c (tfr): Emit warning if operands are the same.
2848 * testsuite/gas/s12z/exg.d: New test case.
2849 * testsuite/gas/s12z/exg.l: New file.
2850
2851 2019-01-31 John Darrington <john@darrington.wattle.id.au>
2852
2853 * config/tc-s12z.c (lex_opr): Add a parameter to indicate whether
2854 immediate mode operands should be permitted.
2855 * testsuite/s12z/imm-dest.d: New file.
2856 * testsuite/s12z/imm-dest.l: New file.
2857 * testsuite/s12z/imm-dest.s: New file.
2858 * testsuite/s12z/s12z.exp: Add them.
2859
2860 2019-01-31 Andreas Krebbel <krebbel@linux.ibm.com>
2861
2862 * config/tc-s390.c (s390_parse_cpu): New entry for arch13.
2863 * doc/c-s390.texi: Document arch13 march option.
2864 * testsuite/gas/s390/s390.exp: Run the arch13 related tests.
2865 * testsuite/gas/s390/zarch-arch13.d: New test.
2866 * testsuite/gas/s390/zarch-arch13.s: New test.
2867 * testsuite/gas/s390/zarch-z13.d: Expect the renamed mnemonics
2868 also for z13.
2869
2870 2019-01-31 Alan Modra <amodra@gmail.com>
2871
2872 * config/tc-alpha.c (md_apply_fix): Correct range checks for
2873 BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BSR.
2874 * config/tc-arm.c (md_apply_fix): Use llabs rather than abs.
2875 * config/tc-csky.c (get_macro_reg_vals): Pass s to csky_show_error.
2876
2877 2019-01-28 Max Filippov <jcmvbkbc@gmail.com>
2878
2879 * config/tc-xtensa.c (md_apply_fix): Mark fixups for constant
2880 symbols as done in md_apply_fix.
2881 * testsuite/gas/all/forward.d: Don't XFAIL for xtensa.
2882
2883 2019-01-28 Nick Clifton <nickc@redhat.com>
2884
2885 * po/fr.po: Updated French translation.
2886 * po/ru.po: Updated Russian translation.
2887
2888 2019-01-28 Alan Modra <amodra@gmail.com>
2889
2890 * configure.ac (ac_checking): Set from bfd/development.sh
2891 development variable.
2892 * configure: Regenerate.
2893
2894 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2895
2896 * config/tc-aarch64.c (warn_unpredictable_ldst): Exempt
2897 stg, st2g, stzg and stz2g from Xt == Xn with writeback warning.
2898 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Change tests for
2899 stg, stzg, st2g and stz2g.
2900 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2901 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2902 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2903
2904 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2905
2906 * testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for stzgm.
2907 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2908 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2909 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2910
2911 2019-01-25 Sudakshina Das <sudi.das@arm.com>
2912 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2913
2914 * config/tc-aarch64.c (parse_address_main): Remove support for
2915 [base]! address expression.
2916 (parse_operands): Remove support for AARCH64_OPND_ADDR_SIMPLE_2.
2917 (warn_unpredictable_ldst): Remove support for ldstgv_indexed.
2918 * testsuite/gas/aarch64/armv8_5-a-memtag.d: Remove tests for ldgv
2919 and stgv.
2920 * testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
2921 * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
2922 * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
2923
2924 2019-01-25 Wu Heng <wu.heng@zte.com.cn>
2925
2926 PR gas/23940
2927 * macro.c (getstring): Check array bound before accessing.
2928
2929 2019-01-25 Alan Modra <amodra@gmail.com>
2930
2931 PR 20902
2932 PR 24125
2933 * read.c (stringer): Delete assertion.
2934
2935 2019-01-21 Nick Clifton <nickc@redhat.com>
2936
2937 * po/uk.po: Updated Ukranian translation.
2938
2939 2019-01-19 Nick Clifton <nickc@redhat.com>
2940
2941 * config.in: Regenerate.
2942 * configure: Regenerate.
2943 * po/gas.pot: Regenerate.
2944
2945 2018-06-24 Nick Clifton <nickc@redhat.com>
2946
2947 2.32 branch created.
2948
2949 2019-01-17 Tamar Christina <tamar.christina@arm.com>
2950
2951 * testsuite/gas/arm/archv6t2-1-pe.d: New test.
2952 * testsuite/gas/arm/archv6t2-1.d: Skip pe.
2953 * testsuite/gas/arm/csdb.d: Skip pe.
2954 * testsuite/gas/arm/sb-thumb1-pe.d: New test.
2955 * testsuite/gas/arm/sb-thumb1.d: Skip pe.
2956 * testsuite/gas/arm/sb-thumb2-pe.d: New test.
2957 * testsuite/gas/arm/sb-thumb2.d: Skip pe.
2958 * testsuite/gas/arm/udf.d: Skip pe.
2959
2960 2019-01-16 Kito Cheng <kito@andestech.com>
2961
2962 * testsuite/gas/riscv/attribute-empty.d: New.
2963
2964 2019-01-16 Kito Cheng <kito@andestech.com>
2965 Nelson Chu <nelson@andestech.com>
2966
2967 * config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
2968 (riscv_set_options): Add `arch_attr` field.
2969 (riscv_opts): Set default value for arch_attr.
2970 (riscv_write_out_arch_attr): New.
2971 (riscv_set_public_attributes): Likewise.
2972 (riscv_md_end): Likewise.
2973 (riscv_convert_symbolic_attribute): Likewise.
2974 (s_riscv_attribute): Likewise.
2975 (explicit_arch_attr): Likewise.
2976 (riscv_pseudo_table): Add .attribute to the table.
2977 (options): Add OPTION_ARCH_ATTR and OPTION_NO_ARCH_ATTR
2978 enumeration constants.
2979 (md_longopts): Add `march-attr' and `mno-arch-attr' options.
2980 (md_parse_option): Handle the new options.
2981 (md_show_usage): Document the `march-attr' option.
2982 * config/tc-riscv.h (md_end): Define as riscv_md_end
2983 (riscv_md_end): Declare.
2984 (CONVERT_SYMBOLIC_ATTRIBUTE): Define as
2985 riscv_convert_symbolic_attribute.
2986 (riscv_convert_symbolic_attribute): Declare.
2987 (start_assemble): Declare.
2988 * testsuite/gas/elf/elf.exp: Adjust test case for section2.e.
2989 * testsuite/gas/elf/section2.e-riscv: New.
2990 * testsuite/gas/riscv/attribute-01.d: New test
2991 * testsuite/gas/riscv/attribute-02.d: Likewise.
2992 * testsuite/gas/riscv/attribute-03.d: Likewise.
2993 * testsuite/gas/riscv/attribute-04.d: Likewise.
2994 * testsuite/gas/riscv/attribute-04.s: Likewise.
2995 * testsuite/gas/riscv/attribute-05.d: Likewise.
2996 * testsuite/gas/riscv/attribute-05.s: Likewise.
2997 * testsuite/gas/riscv/attribute-06.d: Likewise.
2998 * testsuite/gas/riscv/attribute-06.s: Likewise.
2999 * testsuite/gas/riscv/attribute-07.d: Likewise.
3000 * testsuite/gas/riscv/attribute-07.s: Likewise.
3001 * testsuite/gas/riscv/attribute-08.d: Likewise.
3002 * testsuite/gas/riscv/attribute-08.s: Likewise.
3003 * testsuite/gas/riscv/attribute-unknown.d: Likewise.
3004 * testsuite/gas/riscv/attribute-unknown.s: Likewise.
3005 * testsuite/gas/riscv/empty.l: Likewise.
3006 * doc/c-riscv.texi (.attribute): Add documentation.
3007 * configure.ac (--enable-default-riscv-attribute): New options.
3008 * configure: Re-generate.
3009 * config.in: Re-generate.
3010
3011 2019-01-16 John Darrington <john@darrington.wattle.id.au>
3012
3013 * config/tc-s12z.c (lex_reg_name): Compare the length of the strings
3014 before the contents.
3015 * testsuite/gas/s12z/labels.d: New file.
3016 * testsuite/gas/s12z/labels.s: New file.
3017 * testsuite/gas/s12z/s12z.exp: Add them.
3018 * config/tc-s12z.c (tfr): Change as_bad to as_warn.
3019 Also fix message typo and semantics.
3020 * config/tc-s12z.c (emit_opr): Emit BFD_RELOC_S12Z_OPR instead of
3021 BFD_RELOC_24.
3022 * testsuite/gas/s12z/opr-indirect-expr.d: Expect R_S12Z_OPR instead
3023 of R_S12Z_EXT24.
3024
3025 2019-01-14 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
3026
3027 * config/tc-arm.c (arm_ext_v6k_v6t2): Define.
3028 (insns) [ARM_VARIANT]: Modified.
3029 (insns) [THUMB_VARIANT]: To implement few ARMv6K instructions
3030 in ARMv6T2 as well.
3031 * testsuite/gas/arm/archv6t2-1.d: New test.
3032 * testsuite/gas/arm/archv6t2-1.s: Likewise.
3033 * testsuite/gas/arm/archv6t2-2.d: Likewise.
3034
3035 2019-01-11 Alan Modra <amodra@gmail.com>
3036
3037 PR 23963
3038 * testsuite/gas/m68hc11/lbranch-dwarf2.d: Adjust for PR23963 change.
3039 * testsuite/gas/m68hc11/opers12-dwarf2.d: Likewise.
3040
3041 2019-01-10 Nick Clifton <nickc@redhat.com>
3042
3043 PR 23963
3044 * testsuite/gas/mips/mips16-branch-absolute-1.d: Adjust for the
3045 fact that control characters are now displayed as escape
3046 sequences.
3047 * testsuite/gas/mips/mips16-e.d: Likewise.
3048 * testsuite/gas/mips/mips16-pcrel-0.d: Likewise.
3049 * testsuite/gas/mips/mips16-pcrel-1.d: Likewise.
3050 * testsuite/gas/mips/mips16-pcrel-delay-0.d: Likewise.
3051 * testsuite/gas/mips/mips16-pcrel-delay-1.d: Likewise.
3052 * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
3053 * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
3054 * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
3055 * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
3056 * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: Likewise.
3057 * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: Likewise.
3058 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: Likewise.
3059 * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: Likewise.
3060 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: Likewise.
3061 * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: Likewise.
3062 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d:
3063 Likewise.
3064 * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d:
3065 Likewise.
3066 * testsuite/gas/mips/mipsel16-e.d: Likewise.
3067 * testsuite/gas/mips/mipsr6@msa.d: Likewise.
3068 * testsuite/gas/mips/mipsr6@relax-swap3.d: Likewise.
3069 * testsuite/gas/mips/r6-64-n32.d: Likewise.
3070 * testsuite/gas/mips/r6-64-n64.d: Likewise.
3071 * testsuite/gas/mips/r6-n32.d: Likewise.
3072 * testsuite/gas/mips/r6-n64.d: Likewise.
3073 * testsuite/gas/mips/r6.d: Likewise.
3074 * testsuite/gas/mips/tmips16-e.d: Likewise.
3075 * testsuite/gas/mips/tmipsel16-e.d: Likewise.
3076 * testsuite/gas/mn10300/relax.d: Likewise.
3077
3078 2019-01-09 John Darrington <john@darrington.wattle.id.au>
3079
3080 * testsuite/gas/s12z/jsr.s: New case.
3081 * testsuite/gas/s12z/jsr.d: New case.
3082
3083 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
3084
3085 * configure: Regenerate.
3086
3087 2019-01-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
3088
3089 * config/tc-aarch64.c (aarch64_cpus): Add ares.
3090 * doc/c-aarch64.texi (-mcpu): Document ares value.
3091
3092 2019-01-08 Alan Modra <amodra@gmail.com>
3093
3094 * testsuite/gas/rx/rx.exp: Create generated test source in
3095 current directory.
3096 * testsuite/gas/rx/Xtod.d, * testsuite/gas/rx/abs.d,
3097 * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d,
3098 * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d,
3099 * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bfmov.d,
3100 * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d,
3101 * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d,
3102 * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d,
3103 * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d,
3104 * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dabs.d,
3105 * testsuite/gas/rx/dadd.d, * testsuite/gas/rx/dbt.d,
3106 * testsuite/gas/rx/dcmp.d, * testsuite/gas/rx/ddiv.d,
3107 * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d,
3108 * testsuite/gas/rx/dmov.d, * testsuite/gas/rx/dmul.d,
3109 * testsuite/gas/rx/dneg.d, * testsuite/gas/rx/dpopm.d,
3110 * testsuite/gas/rx/dpushm.d, * testsuite/gas/rx/dround.d,
3111 * testsuite/gas/rx/dsqrt.d, * testsuite/gas/rx/dsub.d,
3112 * testsuite/gas/rx/dtoX.d, * testsuite/gas/rx/emaca.d,
3113 * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d,
3114 * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d,
3115 * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d,
3116 * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d,
3117 * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d,
3118 * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d,
3119 * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d,
3120 * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d,
3121 * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d,
3122 * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d,
3123 * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d,
3124 * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d,
3125 * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d,
3126 * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d,
3127 * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d,
3128 * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d,
3129 * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d,
3130 * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d,
3131 * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d,
3132 * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvfdc.d,
3133 * testsuite/gas/rx/mvfdr.d, * testsuite/gas/rx/mvtacgu.d,
3134 * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d,
3135 * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d,
3136 * testsuite/gas/rx/mvtdc.d, * testsuite/gas/rx/neg.d,
3137 * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d,
3138 * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d,
3139 * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d,
3140 * testsuite/gas/rx/popm.d, * testsuite/gas/rx/push.d,
3141 * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d,
3142 * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d,
3143 * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d,
3144 * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d,
3145 * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d,
3146 * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d,
3147 * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d,
3148 * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d,
3149 * testsuite/gas/rx/rstr.d, * testsuite/gas/rx/rte.d,
3150 * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d,
3151 * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d,
3152 * testsuite/gas/rx/satr.d, * testsuite/gas/rx/save.d,
3153 * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d,
3154 * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d,
3155 * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d,
3156 * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d,
3157 * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d,
3158 * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d,
3159 * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d,
3160 * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d,
3161 * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d,
3162 * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d,
3163 * testsuite/gas/rx/xor.d: Add #source line.
3164
3165 2019-01-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
3166
3167 * config/tc-arm.c (arm_cpus): Add ares.
3168 * doc/c-arm.texi (-mcpu): Document ares value.
3169
3170 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
3171
3172 * config/rx-defs.h (rx_cpu_types): Add type RXV3 and RXV3FPU.
3173 (rx_bfield): Add prototype.
3174 (rx_post): Likewise.
3175 * config/rx-parse.y: Add v3 instructions and Double FPU registers.
3176 (DSIZE): Define.
3177 (POST): Define.
3178 (rx_check_v3): New. check v3 type.
3179 (rx_check_dfpu): New. check have double support.
3180 (double_condition_table): New. dcmp<cond> contiditon.
3181 (check_condition): Multiple condition support.
3182 (rx_lex): RXv3 instructions support.
3183 Add parse dcmp<cond> instruction and Double FPU registers.
3184 (immediate): Disable optimize in dmov #imm case.
3185 (displacement): Add double displacement in dmov instraction.
3186 * config/tc-rx.c (rx_use_conventional_section_names):
3187 Invert default value in rx-*-linux target.
3188 (cpu_type): Add additional ELF flags.
3189 (cpu_type_list): Add RXv3.
3190 (md_parse_option): Refer elf_flags from cpu_type_list.
3191 (md_show_usage): Add rxv3 and rxv3-dfpu.
3192 (rx_bytesT): Add post byte.
3193 (rx_bfield): New. generate bfmov / bfmovz "imm" field.
3194 (rx_post): New. Set instruction post byte.
3195 (md_assemble): Add post byte.
3196 doc/c-rx.texi: Add cpu types.
3197 * testsuite/gas/rx/Xtod.d: New.
3198 * testsuite/gas/rx/Xtod.sm: New.
3199 * testsuite/gas/rx/bfmov.d: New.
3200 * testsuite/gas/rx/bfmov.sm: New.
3201 * testsuite/gas/rx/dabs.d: New.
3202 * testsuite/gas/rx/dabs.sm: New.
3203 * testsuite/gas/rx/dadd.d: New.
3204 * testsuite/gas/rx/dadd.sm: New.
3205 * testsuite/gas/rx/dcmp.d: New.
3206 * testsuite/gas/rx/dcmp.sm: New.
3207 * testsuite/gas/rx/ddiv.d: New.
3208 * testsuite/gas/rx/ddiv.sm: New.
3209 * testsuite/gas/rx/dmov.d: New.
3210 * testsuite/gas/rx/dmov.sm: New.
3211 * testsuite/gas/rx/dmul.d: New.
3212 * testsuite/gas/rx/dmul.sm: New.
3213 * testsuite/gas/rx/dneg.d: New.
3214 * testsuite/gas/rx/dneg.sm: New.
3215 * testsuite/gas/rx/dpopm.d: New.
3216 * testsuite/gas/rx/dpopm.sm: New.
3217 * testsuite/gas/rx/dpushm.d: New.
3218 * testsuite/gas/rx/dpushm.sm: New.
3219 * testsuite/gas/rx/dround.d: New.
3220 * testsuite/gas/rx/dround.sm: New.
3221 * testsuite/gas/rx/dsqrt.d: New.
3222 * testsuite/gas/rx/dsqrt.sm: New.
3223 * testsuite/gas/rx/dsub.d: New.
3224 * testsuite/gas/rx/dsub.sm: New.
3225 * testsuite/gas/rx/dtoX.d: New.
3226 * testsuite/gas/rx/dtoX.sm: New.
3227 * testsuite/gas/rx/macros.inc: Add double FPU registers.
3228 * testsuite/gas/rx/mvfdc.d: New.
3229 * testsuite/gas/rx/mvfdc.sm: New.
3230 * testsuite/gas/rx/mvfdr.d: New.
3231 * testsuite/gas/rx/mvfdr.sm: New.
3232 * testsuite/gas/rx/mvtdc.d: New.
3233 * testsuite/gas/rx/mvtdc.sm: New.
3234 * testsuite/gas/rx/rstr.d: New.
3235 * testsuite/gas/rx/rstr.sm: New.
3236 * testsuite/gas/rx/rx.exp: Use rxv3-dfpu option.
3237 * testsuite/gas/rx/save.d: New.
3238 * testsuite/gas/rx/save.sm: New.
3239 * testsuite/gas/rx/xor.d: New.
3240 * testsuite/gas/rx/xor.sm: Add pattern.
3241
3242 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
3243
3244 PR 24010
3245 * macro.c (get_any_string): Check for end of input whilst scanning
3246 for separators.
3247
3248 2019-01-04 Wu Heng <wu.heng@zte.com.cn>
3249
3250 PR 24009
3251 * read.c (stringer): Fix handling of missing '>' character at end
3252 of <...> sequence.
3253
3254 2019-01-01 Alan Modra <amodra@gmail.com>
3255
3256 Update year range in copyright notice of all files.
3257
3258 For older changes see ChangeLog-2018
3259 \f
3260 Copyright (C) 2019 Free Software Foundation, Inc.
3261
3262 Copying and distribution of this file, with or without modification,
3263 are permitted in any medium without royalty provided the copyright
3264 notice and this notice are preserved.
3265
3266 Local Variables:
3267 mode: change-log
3268 left-margin: 8
3269 fill-column: 74
3270 version-control: never
3271 End:
This page took 0.101465 seconds and 4 git commands to generate.