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