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