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