[ARM] Rework selection of feature bits to base build attributes on
[external/binutils.git] / gas / ChangeLog
1 2017-06-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>
2
3         * config/tc-arm.c (aeabi_set_public_attributes): Populate flags from
4         feature bits used or selected_cpu depending on whether a CPU was
5         selected by the user.
6
7 2017-06-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>
8
9         * config/tc-arm.c (aeabi_set_public_attributes): Test *mcpu_ext_opt to
10         decide whether to set Tag_DSP_extension build attribute value.  Remove
11         now useless arm_arch variable.
12
13 2017-06-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>
14
15         * config/tc-arm.c (dyn_mcpu_ext_opt): New static variable.
16         (dyn_march_ext_opt): Likewise.
17         (md_begin): Copy extension feature bits alongside architecture ones.
18         Merge extensions feature bits in selected_cpu and cpu_variant if there
19         is some.
20         (arm_parse_extension): Pass architecture and extension feature bits in
21         separate parameters, with architecture bits being read only.  Update
22         **opt_p directly rather than *ext_set and initialize it if needed.
23         (arm_parse_cpu): Stop merging architecture and extension feature bits
24         and instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them
25         respectively.  Adapt to change in parameters of arm_parse_extension.
26         (arm_parse_arch): Adapt to change in parameters of arm_parse_extension.
27         (aeabi_set_attribute_string): Make function static.
28         (arm_md_post_relax): New function.
29         (s_arm_cpu): Stop merging architecture and extension feature bits and
30         instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them
31         respectively.  Merge extension feature bits in cpu_variant
32         if there is any.
33         (s_arm_arch): Reset extension feature bit.  Set selected_cpu from
34         *mcpu_cpu_opt and cpu_variant from selected_cpu and *mfpu_opt for
35         consistency with s_arm_cpu.
36         (s_arm_arch_extension): Update *dyn_mcpu_ext_opt rather than
37         selected_cpu, allocating it before hand if needed.  Set selected_cpu
38         from it and then cpu_variant.
39         (s_arm_fpu): Merge *mcpu_ext_opt feature bits if any in cpu_variant.
40         * config/tc-arm.h (md_post_relax_hook): Set to arm_md_post_relax.
41         (aeabi_set_public_attributes): Delete external declaration.
42         (arm_md_post_relax): Declare externally.
43
44 2017-06-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>
45
46         * config/tc-arm.c (struct arm_cpu_option_table): New ext field.
47         (ARM_CPU_OPT): Add parameter to set new ext field and reorder canonical
48         name field just after the name field.
49         (arm_cpus): Move extension feature bit from value field to ext field,
50         reorder parameter according to changes in ARM_CPU_OPT and reindent.
51         (arm_parse_cpu): Point mcpu_cpu_opt to a bitfield merging the value and
52         ext field from the selected arm_cpus entry.
53         (s_arm_cpu): Likewise.
54
55 2017-06-21  James Greenhalgh  <james.greenhalgh@arm.com>
56
57         * config/tc-aarch64.c (aarch64_cpus): Add cortex-a55 and cortex-a75.
58         * doc/c-aarch64.texi (-mcpu): Document cortex-a55 and cortex-a75.
59
60 2017-06-15  H.J. Lu  <hongjiu.lu@intel.com>
61
62         PR binutils/21594
63         * testsuite/gas/i386/mpx.s: Add 2 tests with invalid bnd
64         register.
65         * testsuite/gas/i386/x86-64-mpx.s: Likewise.
66         * testsuite/gas/i386/mpx.d: Updated.
67         * testsuite/gas/i386/x86-64-mpx.d: Likewise.
68
69 2017-06-14  Max Filippov  <jcmvbkbc@gmail.com>
70
71         * config/tc-xtensa.c (density_supported, xtensa_fetch_width,
72         absolute_literals_supported): Leave definitions uninitialized.
73         (directive_state): Leave entries for directive_density and
74         directive_absolute_literals initialized to false.
75         (xg_init_global_config, xtensa_init): New functions.
76         * config/tc-xtensa.h (TARGET_BYTES_BIG_ENDIAN): Define as 0.
77         (HOST_SPECIAL_INIT): New definition.
78         (xtensa_init): New declaration.
79
80 2017-06-07  Michael Collison  <michael.collison@arm.com>
81
82         * config/tc-aarch64.c (reg_entry_reg_names): Add IP0,
83         IP1, FP, and LR as register aliases of register 16, 17, 29
84         and 30 respectively.
85         * testsuite/gas/aarch64/diagnostic.l: Remove diagnostic
86         prohibiting register 'lr' which is now an alias.
87         * testsuite/gas/aarch64/diagnostic.s: Remove instruction
88         utilizing register 'lr' which is now an alias.
89
90 2017-06-06  Jiong Wang  <jiong.wang@arm.com>
91
92         * config/tc-arm.c (reject_bad_reg): Allow REG_SP on ARMv8-A.
93         (parse_operands): Allow REG_SP for OP_oRRnpcsp and OP_RRnpcsp on
94         ARMv8-A.
95         (do_co_reg): Allow REG_SP for Rd on ARMv8-A.
96         (do_t_add_sub): Likewise.
97         (do_t_mov_cmp): Likewise.
98         (do_t_tb): Likewise.
99         * testsuite/gas/arm/ld-sp-warn.l: Delete the warning on REG_SP as Rt for
100         ldrsb.
101         * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: New test.
102         * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.l: New test.
103         * testsuite/gas/arm/sp-pc-validations-bad-t.d: Specifies -march=armv7-a.
104         * testsuite/gas/arm/sp-pc-validations-bad-t.s: Remove ".arch armv7-a".
105         * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d: New test.
106         * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.l: New test.
107         * testsuite/gas/arm/sp-usage-thumb2-relax-on-v8.d: New test.
108         * testsuite/gas/arm/sp-usage-thumb2-relax.s: New test.
109         * testsuite/gas/arm/strex-bad-t.d: Specifies -march=armv7-a.
110
111 2017-06-05  Jim Wilson  <jim.wilson@linaro.org>
112
113         * config/tc-arm.c (arm_cpus): Delete falkor and qdf24xx entries.
114         * doc/c-arm.texi (-mcpu): Likewise.
115
116 2017-05-30  Anton Kolesov  <anton.kolesov@synopsys.com>
117
118         * config/tc-arc.c (cpu_types): Include arc-cpu.def
119
120 2017-05-23  H.J. Lu  <hongjiu.lu@intel.com>
121
122         * gas/testsuite/gas/i386/notrackbad.l: Updated for non-ELF
123         targets.
124         * gas/testsuite/gas/i386/x86-64-notrackbad.l: Likewise.
125
126 2017-05-23  Claudiu Zissulescu <claziss@synopsys.com>
127
128         * config/tc-arc.c (md_apply_fix): Use as_bad_where.
129         (assemble_insn): Use as_bad.
130
131 2017-05-22  H.J. Lu  <hongjiu.lu@intel.com>
132
133         * config/tc-i386.c (REX_PREFIX): Changed to 7.
134         (NOTRACK_PREFIX): New.
135         (MAX_PREFIXES): Changed to 8.
136         (_i386_insn): Add notrack_prefix.
137         (PREFIX_GROUP): Add PREFIX_DS.
138         (add_prefix): Return PREFIX_DS for DS_PREFIX_OPCODE.
139         (md_assemble): Check if NOTRACK prefix is supported.
140         (parse_insn): Set notrack_prefix and issue an error for
141         other prefixes after NOTRACK prefix.
142         * testsuite/gas/i386/i386.exp: Run tests for NOTRACK prefix.
143         * testsuite/gas/i386/notrack-intel.d: New file.
144         * testsuite/gas/i386/notrack.d: Likewise.
145         * testsuite/gas/i386/notrack.s: Likewise.
146         * testsuite/gas/i386/notrackbad.l: Likewise.
147         * testsuite/gas/i386/notrackbad.s: Likewise.
148         * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise.
149         * testsuite/gas/i386/x86-64-notrack.d: Likewise.
150         * testsuite/gas/i386/x86-64-notrack.s: Likewise.
151         * testsuite/gas/i386/x86-64-notrackbad.l: Likewise.
152         * testsuite/gas/i386/x86-64-notrackbad.s: Likewise.
153
154 2017-05-22  Jiong Wang <jiong.wang@arm.com>
155
156         * configure.tgt: Set "arch" to "aarch64" if ${cpu} equals "aarch64".
157         Recognize the new triplet name aarch64*-linux-gnu_ilp32.
158         * configure.ac: Output DEFAULT_ARCH macro for AArch64.
159         * configure: Regenerate.
160         * config/tc-aarch64.h (aarch64_after_parse_args): New declaration.
161         (md_after_parse_args): New define.
162         * config/tc-aarch64.c (aarch64_abi_type): New enumeration
163         AARCH64_ABI_NONE.
164         (DEFAULT_ARCH): New define.
165         (aarch64_abi): Set default value to AARCH64_ABI_NONE.
166         (aarch64_after_parse_args): New function.
167
168 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
169
170         * config/tc-sparc.c (sparc_arch_table): Entries for `sparc6',
171         `v9m8' and `v8plusm8'.
172         (sparc_md_end): Handle SPARC_OPCODE_ARCH_M8.
173         (get_hwcap_name): Support the M8 hardware capabilities.
174         (sparc_ip): Handle new operand types.
175         * doc/c-sparc.texi (Sparc-Opts): Document -Av9m8, -Av8plusm8 and
176         -Asparc6, and the corresponding -xarch aliases.
177         * testsuite/gas/sparc/sparc6.s: New file.
178         * testsuite/gas/sparc/sparc6.d: Likewise.
179         * testsuite/gas/sparc/sparc6-diag.s: Likewise.
180         * testsuite/gas/sparc/sparc6-diag.l: Likewise.
181         * testsuite/gas/sparc/fpcmpshl.s: Likewise.
182         * testsuite/gas/sparc/fpcmpshl.d: Likewise.
183         * testsuite/gas/sparc/fpcmpshl-diag.s: Likewise.
184         * testsuite/gas/sparc/fpcmpshl-diag.l: Likewise.
185         * testsuite/gas/sparc/ldm-stm.s: Likewise.
186         * testsuite/gas/sparc/ldm-stm.d: Likewise.
187         * testsuite/gas/sparc/ldm-stm-diag.s: Likewise.
188         * testsuite/gas/sparc/ldm-stm-diag.l: Likewise.
189         * testsuite/gas/sparc/ldmf-stmf.s: Likewise.
190         * testsuite/gas/sparc/ldmf-stmf.d: Likewise.
191         * testsuite/gas/sparc/ldmf-stmf-diag.s: Likewise.
192         * testsuite/gas/sparc/ldmf-stmf-diag.l: Likewise.
193         * testsuite/gas/sparc/on.s: Likewise.
194         * testsuite/gas/sparc/on.d: Likewise.
195         * testsuite/gas/sparc/on-diag.s: Likewise.
196         * testsuite/gas/sparc/on-diag.l: Likewise.
197         * testsuite/gas/sparc/rle.s: Likewise.
198         * testsuite/gas/sparc/rle.d: Likewise.
199         * testsuite/gas/sparc/sparc.exp (gas_64_check): Run new tests.
200         * testsuite/gas/sparc/rdasr.s: Add test for RDENTROPY.
201         * testsuite/gas/sparc/rdasr.d: Likewise.
202
203 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
204
205         * testsuite/gas/sparc/call-relax.d: Support 32-bit targets.
206         * testsuite/gas/sparc/sparc.exp (gas_64_check): Use -64 to
207         run asi-bump-warn.
208
209 2017-05-19  Georg-Johann Lay  <avr@gjlay.de>
210
211         PR ld/21472
212         * config/tc-avr.c (mcu_types): Add entries for: attiny416,
213         attiny417, attiny816, attiny817.
214
215 2017-05-18  Alan Modra  <amodra@gmail.com>
216
217         * config/tc-aarch64.c: Don't compare booleans against TRUE or FALSE.
218         * config/tc-hppa.c: Likewise.
219         * config/tc-mips.c: Likewise.
220         * config/tc-score7.c: Likewise.
221
222 2017-05-16  Alan Modra  <amodra@gmail.com>
223
224         * write.c (GENERIC_FORCE_RELOCATION_LOCAL): Define.
225         (TC_FORCE_RELOCATION_LOCAL): Use it.
226         (GENERIC_FORCE_RELOCATION_SUB_SAME): Define.
227         (TC_FORCE_RELOCATION_SUB_SAME): Use it.
228         * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL,
229         TC_FORCE_RELOCATION_SUB_SAME): Use GENERIC defines.
230         * config/tc-aarch64.h: Similarly.
231         * config/tc-avr.h: Similarly.
232         * config/tc-cris.h: Similarly.
233         * config/tc-i386.h: Similarly.
234         * config/tc-i960.h: Similarly.
235         * config/tc-ia64.h: Similarly.
236         * config/tc-microblaze.h: Similarly.
237         * config/tc-mips.h: Similarly.
238         * config/tc-msp430.h: Similarly.
239         * config/tc-nds32.h: Similarly.
240         * config/tc-pru.h: Similarly.
241         * config/tc-riscv.h: Similarly.
242         * config/tc-rl78.h: Similarly.
243         * config/tc-s390.h: Similarly.
244         * config/tc-sh.h: Similarly.
245         * config/tc-sh64.h: Similarly.
246         * config/tc-sparc.h: Similarly.
247         * config/tc-xtensa.h: Similarly.
248         * config/tc-mn10300.h: Similarly.
249         (GENERIC_FORCE_RELOCATION_LOCAL): Define.
250         * config/tc-msp430.c (msp430_force_relocation_local): Modify to
251         be addition to rather than replacement of standard
252         TC_FORCE_RELOCATION_LOCAL.
253
254 2017-05-15  Nick Clifton  <nickc@redhat.com>
255
256         PR gas/21458
257         * config/tc-arm.c (do_adr): If the ADR involves a thumb function
258         symbol, ensure that the T bit will be set.
259         (do_adrl): Likewise.
260         (do_t_adr): Likewise.
261         * testsuite/gas/arm/pr21458.s: New test.
262         * testsuite/gas/arm/pr21458.d: New test driver.
263
264 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
265
266         * testsuite/gas/mips/mips16-pcrel-1.d: Remove `-mips3' from `as'
267         flags.
268         * testsuite/gas/mips/mips16-pcrel-pic-1.d: Likewise.
269         * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise.
270         * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise.
271         * testsuite/gas/mips/mips16-pcrel-n64-0.d: Likewise.
272         * testsuite/gas/mips/mips16-pcrel-n64-1.d: Likewise.
273         * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise.
274         * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise.
275         * testsuite/gas/mips/mips16-pcrel-reloc-4.d: Likewise.
276         * testsuite/gas/mips/mips16-pcrel-reloc-5.d: Likewise.
277         * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Likewise.
278         * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Likewise.
279         * testsuite/gas/mips/mips16-pcrel-addend-4.d: Likewise.
280         * testsuite/gas/mips/mips16-pcrel-addend-5.d: Likewise.
281         * testsuite/gas/mips/mips16-pcrel-addend-6.d: Likewise.
282         * testsuite/gas/mips/mips16-pcrel-addend-7.d: Likewise.
283         * testsuite/gas/mips/mips16-pcrel-addend-9.d: Likewise.
284         * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: Likewise.
285         * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: Likewise.
286         * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: Likewise.
287         * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d:
288         Likewise.
289         * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d:
290         Likewise.
291         * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: Likewise.
292         * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: Likewise.
293         * testsuite/gas/mips/mips16-pcrel-absolute-2.d: Likewise.
294         * testsuite/gas/mips/mips16-pcrel-absolute-3.d: Likewise.
295         * testsuite/gas/mips/mips16-pcrel-absolute-6.d: Likewise.
296         * testsuite/gas/mips/mips16-pcrel-absolute-7.d: Likewise.
297         * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: Likewise.
298         * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: Likewise.
299         * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: Likewise.
300         * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: Likewise.
301         * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: Likewise.
302         * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d:
303         Likewise.
304         * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d:
305         Likewise.
306         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d:
307         Likewise.
308         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d:
309         Likewise.
310         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d:
311         Likewise.
312         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d:
313         Likewise.
314         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d:
315         Likewise.
316         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d:
317         Likewise.
318         * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: New test.
319         * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: New test.
320         * testsuite/gas/mips/mips16e2@mips16-pcrel-2.d: New test.
321         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: New test.
322         * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: New test.
323         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d: New
324         test.
325         * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d: New
326         test.
327         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: New test.
328         * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: New test.
329         * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-2.d: New test.
330         * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-3.d: New test.
331         * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-6.d: New test.
332         * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-7.d: New test.
333         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-2.d: New test.
334         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-3.d: New test.
335         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-6.d: New test.
336         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-7.d: New test.
337         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-8.d: New test.
338         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-9.d: New test.
339         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d: New
340         test.
341         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d: New
342         test.
343         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-8.d:
344         New test.
345         * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-9.d:
346         New test.
347         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute.d: New test.
348         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-1.d: New
349         test.
350         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-2.d: New
351         test.
352         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-3.d: New
353         test.
354         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-4.d: New
355         test.
356         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-5.d: New
357         test.
358         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-6.d: New
359         test.
360         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-7.d: New
361         test.
362         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-4.d: New
363         test.
364         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-6.d: New
365         test.
366         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-4.d: New
367         test.
368         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-6.d: New
369         test.
370         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-4.d:
371         New test.
372         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-6.d:
373         New test.
374         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-4.d:
375         New test.
376         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-6.d:
377         New test.
378         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d:
379         New test.
380         * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d:
381         New test.
382         * testsuite/gas/mips/mips16-pcrel-1.l: Adjust line numbers.
383         * testsuite/gas/mips/mips16-pcrel-1.s: Adjust for alignment
384         preservation between MIPS16 and MIPS16e2 code.
385         * testsuite/gas/mips/mips.exp: Run MIPS16 relaxation tests over
386         all MIPS16 architectures.
387
388 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
389
390         * testsuite/gas/mips/mips16e2.d: New test.
391         * testsuite/gas/mips/mips16e2-mt.d: New test.
392         * testsuite/gas/mips/mips16e2-sub.d: New test.
393         * testsuite/gas/mips/mips16e2@mips16e2-sub.d: New test.
394         * testsuite/gas/mips/mips16e2-mt-sub.d: New test.
395         * testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d: New test.
396         * testsuite/gas/mips/mips16e2-hilo.d: New test.
397         * testsuite/gas/mips/mips16e2-hilo-n32.d: New test.
398         * testsuite/gas/mips/mips16e2-reloc-error.d: New test.
399         * testsuite/gas/mips/mips16e2-imm-error.d: New test.
400         * testsuite/gas/mips/elf_ase_mips16e2.d: New test.
401         * testsuite/gas/mips/elf_ase_mips16e2-2.d: New test.
402         * testsuite/gas/mips/elf-rel9-mips16e2.d: New test.
403         * testsuite/gas/mips/mips16e2-lui.d: New test.
404         * testsuite/gas/mips/mips16e2@mips32r2-sync.d: New test.
405         * testsuite/gas/mips/mips16e2@mips32r2-sync-1.d: New test.
406         * testsuite/gas/mips/mips16e2@lui-2.d: New test.
407         * testsuite/gas/mips/mips16e2-reloc-error.l: New stderr output.
408         * testsuite/gas/mips/mips16e2-imm-error.l: New stderr output.
409         * testsuite/gas/mips/mips16e2@lui-2.l: New stderr output.
410         * testsuite/gas/mips/mips16e2.s: New test source.
411         * testsuite/gas/mips/mips16e2-mt.s: New test source.
412         * testsuite/gas/mips/mips16e2-sub.s: New test source.
413         * testsuite/gas/mips/mips16e2-mt-sub.s: New test source.
414         * testsuite/gas/mips/mips16e2-hilo.s: New test source.
415         * testsuite/gas/mips/mips16e2-reloc-error.s: New test source.
416         * testsuite/gas/mips/mips16e2-imm-error.s: New test source.
417         * testsuite/gas/mips/elf-rel9-mips16e2.s: New test source.
418         * testsuite/gas/mips/mips16e2-lui.s: New test source.
419         * testsuite/gas/mips/mips.exp: Expand `mips32r2-sync',
420         `mips32r2-sync-1', `lui-1' and `lui-2' tests across MIPS16e2
421         architectures.  Run the new tests.
422
423 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
424
425         * testsuite/gas/mips/mips.exp (run_dump_test_arch): Add
426         `mips16e2@' prefix.
427         (run_list_test_arch): Likewise.
428         (mips16e2-32, mips16e2-64): New architectures.
429         * testsuite/gas/mips/mips16e2-32@mips16-macro.d: New test.
430         * testsuite/gas/mips/mips16e2-32@mips16-macro-t.d: New test.
431         * testsuite/gas/mips/mips16e2-32@mips16-macro-e.d: New test.
432         * testsuite/gas/mips/mips16e2-32@mips16-insn-t.d: New test.
433         * testsuite/gas/mips/mips16e2-32@mips16-insn-e.d: New test.
434         * testsuite/gas/mips/mips16e2-32@mips16e-64.d: New test.
435         * testsuite/gas/mips/mips16e2-32@mips16-sub.d: New test.
436         * testsuite/gas/mips/mips16e2-32@mips16e-64-sub.d: New test.
437         * testsuite/gas/mips/mips16e2@relax-swap3.d: New test.
438         * testsuite/gas/mips/mips16-32@mips16-asmacro.d: Remove `source'
439         tag.  Add `-I$srcdir/$subdir' to `as' flags.
440         * testsuite/gas/mips/mips16-64@mips16-asmacro.d: Likewise.
441         * testsuite/gas/mips/mips16e2-32@mips16-macro.l: New stderr
442         output.
443         * testsuite/gas/mips/mips16e2-32@mips16-macro-t.l: New stderr
444         output.
445         * testsuite/gas/mips/mips16e2-32@mips16-macro-e.l: New stderr
446         output.
447         * testsuite/gas/mips/mips16e2-32@mips16-insn-t.l: New stderr
448         output.
449         * testsuite/gas/mips/mips16e2-32@mips16-insn-e.l: New stderr
450         output.
451         * testsuite/gas/mips/mips16-sub.s: Add `.set nomips16e2'.
452         * testsuite/gas/mips/mips16e-sub.s: Likewise.
453         * testsuite/gas/mips/mips16e-64-sub.s: Likewise.
454         * testsuite/gas/mips/mips16-asmacro.s: Remove `.set mips32'.
455         * testsuite/gas/mips/mips16-32@mips16-asmacro.s: New test
456         source.
457         * testsuite/gas/mips/mips16-64@mips16-asmacro.s: New test
458         source.
459
460 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
461             Matthew Fortune  <matthew.fortune@imgtec.com>
462             Andrew Bennett  <andrew.bennett@imgtec.com>
463
464         * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `e2' flag.
465         (RELAX_MIPS16_E2): New macro.
466         (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO)
467         (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT)
468         (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT)
469         (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED)
470         (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED)
471         (RELAX_MIPS16_MARK_ALWAYS_EXTENDED)
472         (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED, RELAX_MIPS16_MACRO)
473         (RELAX_MIPS16_MARK_MACRO, RELAX_MIPS16_CLEAR_MACRO): Shift bits.
474         (mips16_immed_extend): New prototype.
475         (options): Add OPTION_MIPS16E2 and OPTION_NO_MIPS16E2 enum
476         values.
477         (md_longopts): Add "mmips16e2" and "mno-mips16e2" options.
478         (mips_ases): Add "mips16e2" entry.
479         (mips_set_ase): Handle MIPS16e2 ASE.
480         (insn_insert_operand): Explicitly handle immediates with MIPS16
481         instructions that require 32-bit encoding.
482         (is_opcode_valid_16): Pass enabled ASE bitmask on to
483         `opcode_is_member'.
484         (validate_mips_insn): Explicitly handle immediates with MIPS16
485         instructions that require 32-bit encoding.
486         (operand_reg_mask) <OP_REG28>: Add handler.
487         (match_reg28_operand): New function.
488         (match_operand) <OP_REG28>: Add handler.
489         (append_insn): Pass ASE_MIPS16E2 setting to RELAX_MIPS16_ENCODE.
490         (match_mips16_insn): Handle MIPS16 instructions that require
491         32-bit encoding and `V' and `u' operand codes.
492         (mips16_ip): Allow any characters except from `.' in opcodes.
493         (mips16_immed_extend): Handle 9-bit immediates.  Do not shuffle
494         immediates whose width is not one of these listed.
495         (md_estimate_size_before_relax): Handle MIPS16e2 relaxation.
496         (mips_relax_frag): Likewise.
497         (md_convert_frag): Likewise.
498         (mips_convert_ase_flags): Handle MIPS16e2 ASE.
499
500         * doc/as.texinfo (Target MIPS options): Add `-mmips16e2' and
501         `-mno-mips16e2' options.
502         (-mmips16e2, -mno-mips16e2): New options.
503         * doc/c-mips.texi (MIPS Options): Add `-mmips16e2' and
504         `-mno-mips16e2' options.
505         (MIPS ASE Instruction Generation Overrides): Add `.set mips16e2'
506         and `.set nomips16e2'.
507
508 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
509
510         * config/tc-mips.c (match_int_operand): Call
511         `match_out_of_range' before returning failure for 0x8000-0xffff
512         values conditionally allowed.
513
514 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
515
516         * config/tc-mips.c (match_int_operand): Call
517         `match_not_constant' before returning failure for a non-constant
518         16-bit immediate conditionally allowed.
519
520 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
521
522         * config/tc-mips.c (match_const_int): Call `match_out_of_range'
523         rather than `match_not_constant' for unrelocated operands
524         retrieved as an `O_big' expression.
525         (match_int_operand): Call `match_out_of_range' for relocatable
526         operands retrieved as an `O_big' expression.
527         (match_mips16_insn): Call `match_out_of_range' for relaxable
528         operands retrieved as an `O_big' expression.
529         * testsuite/gas/mips/addiu-error.d: New test.
530         * testsuite/gas/mips/mips16@addiu-error.d: New test.
531         * testsuite/gas/mips/micromips@addiu-error.d: New test.
532         * testsuite/gas/mips/break-error.d: New test.
533         * testsuite/gas/mips/lui-1.l: Adjust error message.
534         * testsuite/gas/mips/addiu-error.l: New stderr output.
535         * testsuite/gas/mips/mips16@addiu-error.l: New stderr output.
536         * testsuite/gas/mips/micromips@addiu-error.l: New stderr output.
537         * testsuite/gas/mips/break-error.l: New stderr output.
538         * testsuite/gas/mips/addiu-error.s: New test source.
539         * testsuite/gas/mips/break-error.s: New test source.
540         * testsuite/gas/mips/mips.exp: Run the new tests.
541
542 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
543
544         * config/tc-mips.c (match_mips16_insn): Remove the explicit
545         OT_INTEGER check before the `match_expression' call.
546         * testsuite/gas/mips/mips16-insn-e.l: Adjust messages.
547         * testsuite/gas/mips/mips16-32@mips16-insn-e.l: Likewise.
548         * testsuite/gas/mips/mips16-64@mips16-insn-e.l: Likewise.
549         * testsuite/gas/mips/mips16e-32@mips16-insn-e.l: Likewise.
550         * testsuite/gas/mips/mips16-reg-error.d: New test.
551         * testsuite/gas/mips/mips16-reg-error.l: New stderr output.
552         * testsuite/gas/mips/mips16-reg-error.s: New test source.
553         * testsuite/gas/mips/mips.exp: Run the new test.
554
555 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
556
557         * config/tc-mips.c (match_mips16_insn): Call
558         `match_not_constant' for a disallowed relocation operation.
559         * testsuite/gas/mips/mips16-reloc-error.d: New test.
560         * testsuite/gas/mips/mips16-reloc-error.l: New stderr output.
561         * testsuite/gas/mips/mips16-reloc-error.s: New test source.
562         * testsuite/gas/mips/mips.exp: Run the new test.
563
564 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
565
566         * testsuite/gas/mips/lui-1.d: New test.
567         * testsuite/gas/mips/lui-2.d: New test.
568         * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests
569         into the new tests.
570
571 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
572
573         * config/tc-mips.c (match_const_int): Update description.
574
575 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
576
577         * doc/as.texinfo (-mips16, -no-mips16): Refer to `.module
578         mips16' rather than `.set mips16'.
579         (-mmicromips, -mno-micromips): Refer to `.module micromips' and
580         `.module nomicromips' rather than `.set micromips' and `.set
581         nomicromips'.
582         (-msmartmips, -mno-smartmips): Refer to `.module smartmips'
583         rather than `.set smartmips'.
584         * doc/c-mips.texi (MIPS Options): Refer to `.module mips16',
585         `.module micromips', `.module nomicromips' and `.module
586         smartmips' rather than `.set mips16', `.set micromips', `.set
587         nomicromips' and `.set smartmips' respectively.
588
589 2017-05-12  Maciej W. Rozycki  <macro@imgtec.com>
590             Matthew Fortune  <matthew.fortune@imgtec.com>
591
592         * config/tc-mips.c (mips_percent_op): Add "%gprel".
593         (mips16_percent_op): Add "%gp_rel".
594         * testsuite/gas/mips/elf-rel8.s:: Add `%gprel' forms.
595         * testsuite/gas/mips/elf-rel8-mips16.s: Add `%gp_rel' forms.
596         * testsuite/gas/mips/elf-rel8.d: Adjust accordingly.
597         * testsuite/gas/mips/elf-rel8-mips16.d: Likewise.
598
599 2017-05-12  Maciej W. Rozycki  <macro@imgtec.com>
600
601         * testsuite/gas/mips/mips16.d: Adjust BREAK disassembly.
602         * testsuite/gas/mips/mips16-64@mips16.d: Likewise.
603         * testsuite/gas/mips/mips16-64.d: Likewise.
604         * testsuite/gas/mips/mips16-64@mips16-64.d: Likewise.
605         * testsuite/gas/mips/mips16-macro.d: Likewise.
606         * testsuite/gas/mips/mips16-64@mips16-macro.d: Likewise.
607         * testsuite/gas/mips/mips16-sub.d: Likewise.
608         * testsuite/gas/mips/mips16-32@mips16-sub.d: Likewise.
609
610 2017-05-11  Maciej W. Rozycki  <macro@imgtec.com>
611
612         * testsuite/gas/mips/mips32r2-sync-1.d: New test.
613         * testsuite/gas/mips/micromips@mips32r2-sync-1.d: New test.
614         * testsuite/gas/mips/mips.exp: Run the new tests.
615
616 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
617
618         * testsuite/gas/mips/isa-override-2.d: New test.
619         * testsuite/gas/mips/mips1@isa-override-2.d: New test.
620         * testsuite/gas/mips/r3000@isa-override-2.d: New test.
621         * testsuite/gas/mips/r3900@isa-override-2.d: New test.
622         * testsuite/gas/mips/mips2@isa-override-2.d: New test.
623         * testsuite/gas/mips/mips32@isa-override-2.d: New test.
624         * testsuite/gas/mips/mips32r2@isa-override-2.d: New test.
625         * testsuite/gas/mips/mips32r3@isa-override-2.d: New test.
626         * testsuite/gas/mips/mips32r5@isa-override-2.d: New test.
627         * testsuite/gas/mips/mips32r6@isa-override-2.d: New test.
628         * testsuite/gas/mips/octeon3@isa-override-2.d: New test.
629         * testsuite/gas/mips/r3000@isa-override-2.l: Remove list test.
630         * testsuite/gas/mips/mips1@isa-override-2.s: Remove test source.
631         * testsuite/gas/mips/r3000@isa-override-2.s: Remove test source.
632         * testsuite/gas/mips/r3900@isa-override-2.s: Remove test source.
633         * testsuite/gas/mips/mips2@isa-override-2.s: Remove test source.
634         * testsuite/gas/mips/mips32@isa-override-2.s: Remove test
635         source.
636         * testsuite/gas/mips/mips32r2@isa-override-2.s: Remove test
637         source.
638         * testsuite/gas/mips/mips32r3@isa-override-2.s: Remove test
639         source.
640         * testsuite/gas/mips/mips32r5@isa-override-2.s: Remove test
641         source.
642         * testsuite/gas/mips/mips32r6@isa-override-2.s: Remove test
643         source.
644         * testsuite/gas/mips/octeon3@isa-override-2.s: Remove test
645         source.
646         * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests
647         into the new tests.
648
649 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
650
651         * testsuite/gas/mips/mips16e-sub.d: Correct test name.
652         * testsuite/gas/mips/mips16-32@mips16e-sub.d: Likewise.
653         * testsuite/gas/mips/mips16-64@mips16e-sub.d: Likewise.
654         * testsuite/gas/mips/mips16e-64-sub.d: Likewise.
655         * testsuite/gas/mips/mips16-32@mips16e-64-sub.d: Likewise.
656         * testsuite/gas/mips/mips16-64@mips16e-64-sub.d: Likewise.
657         * testsuite/gas/mips/mips16e-32@mips16e-64-sub.d: Likewise.
658
659 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
660
661         * testsuite/gas/mips/mips16-macro.l: Remove list test.
662
663 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
664
665         * testsuite/gas/mips/r3900@ecoff@ld.d: Remove test.
666         * testsuite/gas/mips/mips2@ecoff@ld.d: Remove test.
667         * testsuite/gas/mips/mips32@ecoff@ld.d: Remove test.
668         * testsuite/gas/mips/mips32r2@ecoff@ld.d: Remove test.
669         * testsuite/gas/mips/r3900@ecoff@ld-forward.d: Remove test.
670         * testsuite/gas/mips/mips2@ecoff@ld-forward.d: Remove test.
671         * testsuite/gas/mips/mips32@ecoff@ld-forward.d: Remove test.
672         * testsuite/gas/mips/mips32r2@ecoff@ld-forward.d: Remove test.
673         * testsuite/gas/mips/mips1@ecoff@sd.d: Remove test.
674         * testsuite/gas/mips/r3000@ecoff@sd.d: Remove test.
675         * testsuite/gas/mips/r3900@ecoff@sd.d: Remove test.
676         * testsuite/gas/mips/mips2@ecoff@sd.d: Remove test.
677         * testsuite/gas/mips/mips32@ecoff@sd.d: Remove test.
678         * testsuite/gas/mips/mips32r2@ecoff@sd.d: Remove test.
679         * testsuite/gas/mips/mips1@ecoff@sd-forward.d: Remove test.
680         * testsuite/gas/mips/r3000@ecoff@sd-forward.d: Remove test.
681         * testsuite/gas/mips/r3900@ecoff@sd-forward.d: Remove test.
682         * testsuite/gas/mips/mips2@ecoff@sd-forward.d: Remove test.
683         * testsuite/gas/mips/mips32@ecoff@sd-forward.d: Remove test.
684         * testsuite/gas/mips/mips32r2@ecoff@sd-forward.d: Remove test.
685
686 2017-05-10  Claudiu Zissulescu  <claziss@synopsys.com>
687
688         * testsuite/gas/arc/attr-arc600.d: New file.
689         * testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise.
690         * testsuite/gas/arc/attr-arc600_norm.d: Likewise.
691         * testsuite/gas/arc/attr-arc601.d: Likewise.
692         * testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise.
693         * testsuite/gas/arc/attr-arc601_mul64.d: Likewise.
694         * testsuite/gas/arc/attr-arc601_norm.d: Likewise.
695         * testsuite/gas/arc/attr-arc700.d: Likewise.
696         * testsuite/gas/arc/attr-arcem.d: Likewise.
697         * testsuite/gas/arc/attr-archs.d: Likewise.
698         * testsuite/gas/arc/attr-autodetect-1.d: Likewise.
699         * testsuite/gas/arc/attr-autodetect-1.s: Likewise.
700         * testsuite/gas/arc/attr-cpu-a601.d: Likewise.
701         * testsuite/gas/arc/attr-cpu-a601.s: Likewise.
702         * testsuite/gas/arc/attr-cpu-a700.d: Likewise.
703         * testsuite/gas/arc/attr-cpu-a700.s: Likewise.
704         * testsuite/gas/arc/attr-cpu-em.d: Likewise.
705         * testsuite/gas/arc/attr-cpu-em.s: Likewise.
706         * testsuite/gas/arc/attr-cpu-hs.d: Likewise.
707         * testsuite/gas/arc/attr-cpu-hs.s: Likewise.
708         * testsuite/gas/arc/attr-em.d: Likewise.
709         * testsuite/gas/arc/attr-em4.d: Likewise.
710         * testsuite/gas/arc/attr-em4_dmips.d: Likewise.
711         * testsuite/gas/arc/attr-em4_fpuda.d: Likewise.
712         * testsuite/gas/arc/attr-em4_fpus.d: Likewise.
713         * testsuite/gas/arc/attr-hs.d: Likewise.
714         * testsuite/gas/arc/attr-hs34.d: Likewise.
715         * testsuite/gas/arc/attr-hs38.d: Likewise.
716         * testsuite/gas/arc/attr-hs38_linux.d: Likewise.
717         * testsuite/gas/arc/attr-mul64.d: Likewise.
718         * testsuite/gas/arc/attr-name.d: Likewise.
719         * testsuite/gas/arc/attr-name.s: Likewise.
720         * testsuite/gas/arc/attr-nps400.d: Likewise.
721         * testsuite/gas/arc/attr-override-mcpu.d: Likewise.
722         * testsuite/gas/arc/attr-override-mcpu.s
723         * testsuite/gas/arc/attr-quarkse_em.d: Likewise.
724         * testsuite/gas/arc/blank.s: Likewise.
725         * testsuite/gas/elf/section2.e-arc: Likewise.
726         * testsuite/gas/arc/cpu-pseudop-1.d: Update test.
727         * testsuite/gas/arc/cpu-pseudop-2.d: Likewise.
728         * testsuite/gas/arc/nps400-0.d: Likewise.
729         * testsuite/gas/elf/elf.exp: Set target_machine for ARC.
730         * config/tc-arc.c (opcode/arc-attrs.h): Include.
731         (ARC_GET_FLAG, ARC_SET_FLAG, streq): Define.
732         (arc_attribute): Declare new function.
733         (md_pseudo_table): Add arc_attribute.
734         (cpu_types): Rename default cpu features.
735         (selected_cpu): Set the default OSABI flag.
736         (mpy_option): New variable.
737         (pic_option): Likewise.
738         (sda_option): Likewise.
739         (tls_option): Likewise.
740         (feature_type, feature_list): Remove.
741         (arc_initial_eflag): Likewise.
742         (attributes_set_explicitly): New variable.
743         (arc_check_feature): Check also for the conflicting features.
744         (arc_select_cpu): Refactor assignment of selected_cpu.eflags.
745         (arc_option): Remove setting of private flags and architecture.
746         (check_cpu_feature): Refactor feature names.
747         (autodetect_attributes): New function.
748         (assemble_tokens): Use above function.
749         (md_parse_option): Refactor feature names.
750         (arc_attribute): New function.
751         (arc_set_attribute_int): Likewise.
752         (arc_set_attribute_string): Likewise.
753         (arc_stralloc): Likewise.
754         (arc_set_public_attributes): Likewise.
755         (arc_md_end): Likewise.
756         (arc_copy_symbol_attributes): Likewise.
757         (rc_convert_symbolic_attribute): Likewise.
758         * config/tc-arc.h (md_end): Define.
759         (CONVERT_SYMBOLIC_ATTRIBUTE): Likewise.
760         (TC_COPY_SYMBOL_ATTRIBUTES): Likewise.
761         * doc/c-arc.texi: Document ARC object attributes.
762
763 2017-05-03  Maciej W. Rozycki  <macro@imgtec.com>
764
765         * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `pic', `sym32' and
766         `nomacro' flags.
767         (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO):
768         New macros.
769         (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT)
770         (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT)
771         (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED)
772         (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED)
773         (RELAX_MIPS16_MARK_ALWAYS_EXTENDED)
774         (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): Shift bits.
775         (RELAX_MIPS16_MACRO, RELAX_MIPS16_MARK_MACRO)
776         (RELAX_MIPS16_CLEAR_MACRO): New macros.
777         (append_insn): Pass `mips_pic', HAVE_32BIT_SYMBOLS and
778         `mips_opts.warn_about_macros' settings to RELAX_MIPS16_ENCODE.
779         (mips16_macro_frag): New function.
780         (md_estimate_size_before_relax): Handle HI16/LO16 relaxation.
781         (mips_relax_frag): Likewise.
782         (md_convert_frag): Likewise.
783
784         * testsuite/gas/mips/mips16@relax-swap3.d: Remove error output,
785         add dump patterns.
786         * testsuite/gas/mips/mips16e@relax-swap3.d: New test
787         subarchitecture.
788         * testsuite/gas/mips/micromips@relax-swap3.d: Remove trailing
789         NOP padding.
790         * testsuite/gas/mips/mips16-pcrel-reloc-2.d: Remove error
791         output, add dump patterns.
792         * testsuite/gas/mips/mips16-pcrel-reloc-3.d: Remove error
793         output, add dump patterns.
794         * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Remove error
795         output, add dump patterns.
796         * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Remove error
797         output, add dump patterns.
798         * testsuite/gas/mips/mips16-pcrel-addend-2.d: Remove error
799         output, add dump patterns.
800         * testsuite/gas/mips/mips16-pcrel-addend-3.d: Remove error
801         output, add dump patterns.
802         * testsuite/gas/mips/mips16-pcrel-absolute.d: Remove error
803         output, add dump patterns.
804         * testsuite/gas/mips/mips16-pcrel-absolute-1.d: Remove error
805         output, add dump patterns.
806         * testsuite/gas/mips/mips16@relax-swap3.l: Remove file.
807         * testsuite/gas/mips/mips16-pcrel-reloc-2.l: Remove file.
808         * testsuite/gas/mips/mips16-pcrel-reloc-3.l: Remove file.
809         * testsuite/gas/mips/mips16-pcrel-reloc-6.l: Remove file.
810         * testsuite/gas/mips/mips16-pcrel-reloc-7.l: Remove file.
811         * testsuite/gas/mips/mips16-pcrel-addend-2.l: Remove file.
812         * testsuite/gas/mips/mips16-pcrel-addend-3.l: Remove file.
813         * testsuite/gas/mips/mips16-pcrel-absolute.l: Remove file.
814         * testsuite/gas/mips/mips16-pcrel-absolute-1.l: Remove file.
815         * testsuite/gas/mips/relax-swap3.s: Adjust trailing padding.
816
817         * testsuite/gas/mips/mips16-pcrel-0.d: New test.
818         * testsuite/gas/mips/mips16-pcrel-1.d: New test.
819         * testsuite/gas/mips/mips16-pcrel-2.d: New test.
820         * testsuite/gas/mips/mips16-pcrel-3.d: New test.
821         * testsuite/gas/mips/mips16-pcrel-4.d: New test.
822         * testsuite/gas/mips/mips16-pcrel-5.d: New test.
823         * testsuite/gas/mips/mips16-pcrel-pic-0.d: New test.
824         * testsuite/gas/mips/mips16-pcrel-pic-1.d: New test.
825         * testsuite/gas/mips/mips16-pcrel-n32-0.d: New test.
826         * testsuite/gas/mips/mips16-pcrel-n32-1.d: New test.
827         * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: New test.
828         * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: New test.
829         * testsuite/gas/mips/mips16-pcrel-n64-0.d: New test.
830         * testsuite/gas/mips/mips16-pcrel-n64-1.d: New test.
831         * testsuite/gas/mips/mips16-pcrel-delay-0.d: New test.
832         * testsuite/gas/mips/mips16-pcrel-delay-1.d: New test.
833         * testsuite/gas/mips/mips16-pcrel-addend-4.d: New test.
834         * testsuite/gas/mips/mips16-pcrel-addend-5.d: New test.
835         * testsuite/gas/mips/mips16-pcrel-addend-6.d: New test.
836         * testsuite/gas/mips/mips16-pcrel-addend-7.d: New test.
837         * testsuite/gas/mips/mips16-pcrel-addend-8.d: New test.
838         * testsuite/gas/mips/mips16-pcrel-addend-9.d: New test.
839         * testsuite/gas/mips/mips16-pcrel-addend-pic-8.d: New test.
840         * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: New test.
841         * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: New test.
842         * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: New test.
843         * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: New test.
844         * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: New test.
845         * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: New test.
846         * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: New test.
847         * testsuite/gas/mips/mips16-pcrel-absolute-2.d: New test.
848         * testsuite/gas/mips/mips16-pcrel-absolute-3.d: New test.
849         * testsuite/gas/mips/mips16-pcrel-absolute-4.d: New test.
850         * testsuite/gas/mips/mips16-pcrel-absolute-5.d: New test.
851         * testsuite/gas/mips/mips16-pcrel-absolute-6.d: New test.
852         * testsuite/gas/mips/mips16-pcrel-absolute-7.d: New test.
853         * testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d: New test.
854         * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: New test.
855         * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: New test.
856         * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: New test.
857         * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: New test.
858         * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: New test.
859         * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: New
860         test.
861         * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: New
862         test.
863         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d: New
864         test.
865         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d: New
866         test.
867         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d: New
868         test.
869         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d: New
870         test.
871         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d:
872         New test.
873         * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d:
874         New test.
875         * testsuite/gas/mips/mips16-pcrel-0.l: New stderr output.
876         * testsuite/gas/mips/mips16-pcrel-1.l: New stderr output.
877         * testsuite/gas/mips/mips16-pcrel-2.l: New stderr output.
878         * testsuite/gas/mips/mips16-pcrel-3.l: New stderr output.
879         * testsuite/gas/mips/mips16-pcrel-4.l: New stderr output.
880         * testsuite/gas/mips/mips16-pcrel-5.l: New stderr output.
881         * testsuite/gas/mips/mips16-pcrel-delay-0.l: New stderr output.
882         * testsuite/gas/mips/mips16-pcrel-delay-1.l: New stderr output.
883         * testsuite/gas/mips/mips16-pcrel-addend-8.l: New stderr output.
884         * testsuite/gas/mips/mips16-pcrel-addend-9.l: New stderr output.
885         * testsuite/gas/mips/mips16-pcrel-absolute-4.l: New stderr
886         output.
887         * testsuite/gas/mips/mips16-pcrel-absolute-6.l: New stderr
888         output.
889         * testsuite/gas/mips/mips16-pcrel-0.s: New test source.
890         * testsuite/gas/mips/mips16-pcrel-1.s: New test source.
891         * testsuite/gas/mips/mips16-pcrel-2.s: New test source.
892         * testsuite/gas/mips/mips16-pcrel-3.s: New test source.
893         * testsuite/gas/mips/mips16-pcrel-4.s: New test source.
894         * testsuite/gas/mips/mips16-pcrel-5.s: New test source.
895         * testsuite/gas/mips/mips16-pcrel-delay-0.s: New test source.
896         * testsuite/gas/mips/mips16-pcrel-delay-1.s: New test source.
897         * testsuite/gas/mips/mips16-pcrel-addend-4.s: New test source.
898         * testsuite/gas/mips/mips16-pcrel-addend-5.s: New test source.
899         * testsuite/gas/mips/mips16-pcrel-addend-6.s: New test source.
900         * testsuite/gas/mips/mips16-pcrel-addend-7.s: New test source.
901         * testsuite/gas/mips/mips16-pcrel-addend-8.s: New test source.
902         * testsuite/gas/mips/mips16-pcrel-addend-9.s: New test source.
903         * testsuite/gas/mips/mips16-pcrel-absolute-2.s: New test.
904         * testsuite/gas/mips/mips16-pcrel-absolute-3.s: New test.
905         * testsuite/gas/mips/mips16-pcrel-absolute-4.s: New test.
906         * testsuite/gas/mips/mips16-pcrel-absolute-5.s: New test.
907         * testsuite/gas/mips/mips16-pcrel-absolute-6.s: New test.
908         * testsuite/gas/mips/mips16-pcrel-absolute-7.s: New test.
909         * testsuite/gas/mips/mips.exp: Run the new tests.
910
911 2017-05-03  Nick Clifton  <nickc@redhat.com>
912
913         PR gas/20941
914         * symbols.c (snapshot_symbol): Handle the case where
915         resolve_expression returns a local symbol.
916
917 2017-05-02  Maciej W. Rozycki  <macro@imgtec.com>
918
919         * config/tc-mips.c (append_insn): Call `symbol_append' for any
920         expression symbol created for MIPS16 relaxation.
921         (match_mips16_insn): Don't encode a constant value as an
922         immediate with a PC-relative operand.
923
924         * testsuite/gas/mips/mips16-pcrel-absolute-1.d: New test.
925         * testsuite/gas/mips/mips16-branch-absolute-1.d: New test.
926         * testsuite/gas/mips/mips16-branch-absolute-2.d: New test.
927         * testsuite/gas/mips/mips16-branch-absolute-addend-1.d: New
928         test.
929         * testsuite/gas/mips/mips16-branch-absolute-n32-1.d: New test.
930         * testsuite/gas/mips/mips16-branch-absolute-n32-2.d: New test.
931         * testsuite/gas/mips/mips16-branch-absolute-addend-n32-1.d: New
932         test.
933         * testsuite/gas/mips/mips16-branch-absolute-n64-1.d: New test.
934         * testsuite/gas/mips/mips16-branch-absolute-n64-2.d: New test.
935         * testsuite/gas/mips/mips16-branch-absolute-addend-n64-1.d: New
936         test.
937         * testsuite/gas/mips/mips16-pcrel-absolute-1.l: New stderr
938         output.
939         * testsuite/gas/mips/mips16-pcrel-absolute-1.s: New test source.
940         * testsuite/gas/mips/mips16-branch-absolute-1.s: New test
941         source.
942         * testsuite/gas/mips/mips16-branch-absolute-2.s: New test
943         source.
944         * testsuite/gas/mips/mips16-branch-absolute-addend-1.s: New test
945         source.
946         * testsuite/gas/mips/mips.exp: Run the new tests.
947
948 2017-04-27  Maciej W. Rozycki  <macro@imgtec.com>
949
950         * config/tc-mips.c (mips16_pcrel_val): New function, factored
951         out from...
952         (mips16_extended_frag): ... here.
953         (md_convert_frag): Use `mips16_pcrel_val' rather than repeated
954         code in MIPS16 relaxation, with `stretch' hardcoded to 0.
955
956 2017-04-27  Maciej W. Rozycki  <macro@imgtec.com>
957
958         * config/tc-mips.c (RELAX_MIPS16_LONG_BRANCH): Rename to...
959         (RELAX_MIPS16_ALWAYS_EXTENDED): ... this.
960         (RELAX_MIPS16_MARK_LONG_BRANCH): Rename to...
961         (RELAX_MIPS16_MARK_ALWAYS_EXTENDED): ... this.
962         (RELAX_MIPS16_CLEAR_LONG_BRANCH): Rename to...
963         (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): ... this.
964         (mips16_extended_frag): Adjust accordingly.
965
966 2017-04-27  Alan Modra  <amodra@gmail.com>
967
968         * symbols.c (S_FORCE_RELOC): Separate section and symbol tests.
969
970 2017-04-26  Maciej W. Rozycki  <macro@imgtec.com>
971
972         * config/tc-mips.c (RELAX_ENCODE): Add `PIC' flag.
973         (RELAX_PIC): New macro.
974         (RELAX_USE_SECOND, RELAX_SECOND_LONGER, RELAX_NOMACRO)
975         (RELAX_DELAY_SLOT, RELAX_DELAY_SLOT_16BIT)
976         (RELAX_DELAY_SLOT_SIZE_FIRST, RELAX_DELAY_SLOT_SIZE_SECOND):
977         Shift bits.
978         (RELAX_BRANCH_ENCODE): Add `pic' flag.
979         (RELAX_BRANCH_UNCOND, RELAX_BRANCH_LIKELY, RELAX_BRANCH_LINK)
980         (RELAX_BRANCH_TOOFAR): Shift bits.
981         (RELAX_BRANCH_PIC): New macro.
982         (RELAX_MICROMIPS_ENCODE): Add `pic' flag.
983         (RELAX_MICROMIPS_PIC): New macro.
984         (RELAX_MICROMIPS_UNCOND, RELAX_MICROMIPS_COMPACT)
985         (RELAX_MICROMIPS_LINK, RELAX_MICROMIPS_NODS)
986         (RELAX_MICROMIPS_RELAX32): Shift bits.
987         (relax_close_frag): Pass `mips_pic' setting to RELAX_ENCODE.
988         (append_insn): Pass `mips_pic' setting to RELAX_BRANCH_ENCODE
989         and RELAX_MICROMIPS_ENCODE, and record it in `fx_tcbit2' of the
990         first fixup created.
991         (md_apply_fix) <BFD_RELOC_16_PCREL_S2>: Use `fx_tcbit2' of the
992         fixup processed rather than `mips_pic' in choosing to relax an
993         out of range branch to a jump.
994         (relaxed_branch_length): Use the `pic' flag of the relaxed frag
995         rather than `mips_pic'.
996         (relaxed_micromips_32bit_branch_length): Likewise.
997         (md_estimate_size_before_relax): Likewise.
998         (md_convert_frag): Likewise.
999
1000         * testsuite/gas/mips/option-pic-relax-0.d: New test.
1001         * testsuite/gas/mips/option-pic-relax-1.d: New test.
1002         * testsuite/gas/mips/option-pic-relax-2.d: New test.
1003         * testsuite/gas/mips/option-pic-relax-3.d: New test.
1004         * testsuite/gas/mips/option-pic-relax-3a.d: New test.
1005         * testsuite/gas/mips/option-pic-relax-4.d: New test.
1006         * testsuite/gas/mips/option-pic-relax-5.d: New test.
1007         * testsuite/gas/mips/option-pic-relax-2.l: New stderr output.
1008         * testsuite/gas/mips/option-pic-relax-3.l: New stderr output.
1009         * testsuite/gas/mips/option-pic-relax-4.l: New stderr output.
1010         * testsuite/gas/mips/option-pic-relax-5.l: New stderr output.
1011         * testsuite/gas/mips/option-pic-relax-0.s: New test source.
1012         * testsuite/gas/mips/option-pic-relax-1.s: New test source.
1013         * testsuite/gas/mips/option-pic-relax-2.s: New test source.
1014         * testsuite/gas/mips/option-pic-relax-3.s: New test source.
1015         * testsuite/gas/mips/option-pic-relax-4.s: New test source.
1016         * testsuite/gas/mips/option-pic-relax-5.s: New test source.
1017         * testsuite/gas/mips/mips.exp: Run the new tests.
1018
1019 2017-04-25  Claudiu Zissulescu  <claziss@synopsys.com>
1020
1021         * testsuite/gas/arc/leave_enter.d: Update test.
1022         * testsuite/gas/arc/leave_enter.s: Likewise.
1023
1024 2017-04-25  Claudiu Zissulescu  <claziss@synopsys.com>
1025
1026         * testsuite/gas/arc/b.d: Update test.
1027         * testsuite/gas/arc/noargs_hs.d: Likewise.
1028
1029 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
1030
1031         * config/tc-mips.c (md_convert_frag): Correct
1032         BFD_RELOC_MIPS16_16_PCREL_S1 fixup size.
1033         * testsuite/gas/mips/mips16-branch-addend-4.d: New test.
1034         * testsuite/gas/mips/mips16-branch-addend-5.d: New test.
1035         * testsuite/gas/mips/mips16-branch-addend-5.l: New stderr
1036         output.
1037         * testsuite/gas/mips/mips16-branch-addend-4.s: New test source.
1038         * testsuite/gas/mips/mips16-branch-addend-5.s: New test source.
1039         * testsuite/gas/mips/mips.exp: Run the new tests.
1040
1041 2017-04-25  Jose E. Marchesi  <jose.marchesi@oracle.com>
1042
1043         PR gas/21407
1044         * config/tc-sparc.c (md_apply_fix): Do not transform `call'
1045         instructions into branch instructions in fixups generating
1046         additional relocations.
1047         * testsuite/gas/sparc/call-relax.s: New file.
1048         * testsuite/gas/sparc/call-relax.d: Likewise.
1049         * testsuite/gas/sparc/call-relax-aout.d: Likewise.
1050         * testsuite/gas/sparc/sparc.exp: Test call-relax and call-relax-aout.
1051
1052 2017-04-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1053
1054         * config/tc-arm.c (move_or_literal_pool): Remove code generating MOVS.
1055         Forbid MOV.W and MOVW if destination is SP or PC.
1056         * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.s: Explain
1057         expectation of LDR not generating a MOVS for low registers and small
1058         constants.  Add tests of MOVW generation.
1059         * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d: Update
1060         expected disassembly.
1061
1062 2017-04-22  Alan Modra  <amodra@gmail.com>
1063
1064         * testsuite/gas/ppc/vle.s: Format.  Add se_rfgi and e_sc.
1065         * testsuite/gas/ppc/vle.d: Update.
1066
1067 2017-04-21  Nick Clifton  <nickc@redhat.com>
1068
1069         PR binutils/21380
1070         * testsuite/gas/aarch64/illegal-3.s: New file.
1071         * testsuite/gas/aarch64/illegal-3.d: New file.
1072
1073 2017-04-11  Alan Modra  <amodra@gmail.com>
1074
1075         * config/tc-ppc.c (md_show_usage): Delete mention of -mhtm.
1076         * testsuite/gas/ppc/htm.d: Pass -mpower8 and -Mpower8.
1077
1078 2017-04-10  Max Filippov  <jcmvbkbc@gmail.com>
1079
1080         * config/tc-xtensa.c (xtensa_maybe_create_literal_pool_frag):
1081         Initialize lps->frag_count with auto_litpool_limit.
1082         (xg_promote_candidate_litpool): New function.
1083         (xtensa_move_literals): Extract candidate litpool promotion code
1084         into separate function. Call it for all possible found
1085         candidates.
1086         (xtensa_switch_to_literal_fragment): Drop 'recursive' flag and
1087         call to xtensa_mark_literal_pool_location that it guards.
1088         Replace it with call to xtensa_maybe_create_literal_pool_frag.
1089         Initialize pool_location with created literal pool candidate.
1090         * testsuite/gas/xtensa/all.exp: Add new tests.
1091         * testsuite/gas/xtensa/auto-litpools-first1.d: New test results.
1092         * testsuite/gas/xtensa/auto-litpools-first1.s: New test.
1093         * testsuite/gas/xtensa/auto-litpools-first2.d: New test results.
1094         * testsuite/gas/xtensa/auto-litpools-first2.s: New test.
1095         * testsuite/gas/xtensa/auto-litpools.d: Fix offsets changed due
1096         to additional jump instruction.
1097
1098 2017-04-07  Alan Modra  <amodra@gmail.com>
1099
1100         * testsuite/gas/ppc/altivec2.s: Delete E6500 vector insns.
1101         * testsuite/gas/ppc/altivec2.d: Adjust to suit.
1102
1103 2017-04-07  Alan Modra  <amodra@gmail.com>
1104
1105         * testsuite/gas/elf/section12a.d: Don't expect alignment of 1
1106         for .mbind.text.
1107
1108 2017-04-06  Pip Cet  <pipcet@gmail.com>
1109
1110         * testsuite/gas/wasm32/allinsn.d: Adjust test for disassembler
1111         changes.
1112         * testsuite/gas/wasm32/disass.d: New test.
1113         * testsuite/gas/wasm32/disass.s: New test.
1114         * testsuite/gas/wasm32/disass-2.d: New test.
1115         * testsuite/gas/wasm32/disass-2.s: New test.
1116         * testsuite/gas/wasm32/reloc.d: Adjust test for changed reloc
1117         names.
1118         * testsuite/gas/wasm32/reloc.s: Update test for changed assembler
1119         syntax.
1120         * testsuite/gas/wasm32/wasm32.exp: Run new tests.  Expect allinsn
1121         test to succeed.
1122
1123 2017-04-04  H.J. Lu  <hongjiu.lu@intel.com>
1124
1125         * NEWS: Mention support for ELF SHF_GNU_MBIND.
1126         * config/obj-elf.c (section_match): New.
1127         (get_section): Match both sh_info and group name.
1128         (obj_elf_change_section): Add argument for sh_info.  Pass both
1129         sh_info and group name to get_section. Issue an error for
1130         SHF_GNU_MBIND section without SHF_ALLOC.  Set sh_info.
1131         (obj_elf_parse_section_letters): Set SHF_GNU_MBIND for 'd'.
1132         (obj_elf_section): Support SHF_GNU_MBIND section info.
1133         * config/obj-elf.h (obj_elf_change_section): Add argument for
1134         sh_info.
1135         * config/tc-arm.c (start_unwind_section): Pass 0 as sh_info to
1136         obj_elf_change_section.
1137         * config/tc-ia64.c (obj_elf_vms_common): Likewise.
1138         * config/tc-microblaze.c (microblaze_s_data): Likewise.
1139         (microblaze_s_sdata): Likewise.
1140         (microblaze_s_rdata): Likewise.
1141         (microblaze_s_bss): Likewise.
1142         * config/tc-mips.c (s_change_section): Likewise.
1143         * config/tc-msp430.c (msp430_profiler): Likewise.
1144         * config/tc-rx.c (parse_rx_section): Likewise.
1145         * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
1146         * doc/as.texinfo: Document 'd' for SHF_GNU_MBIND.
1147         * testsuite/gas/elf/elf.exp: Run section12a, section12b and
1148         section13.
1149         * testsuite/gas/elf/section10.d: Updated.
1150         * testsuite/gas/elf/section10.s: Likewise.
1151         * testsuite/gas/elf/section12.s: New file.
1152         * testsuite/gas/elf/section12a.d: Likewise.
1153         * testsuite/gas/elf/section12b.d: Likewise.
1154         * testsuite/gas/elf/section13.l: Likewise.
1155         * testsuite/gas/elf/section13.d: Likewise.
1156         * testsuite/gas/elf/section13.s: Likewise.
1157
1158 2017-04-03  Palmer Dabbelt  <palmer@dabbelt.com>
1159
1160         * config/tc-riscv.c (riscv_clear_subsets): Cast argument to free to
1161         avoid const warnings.
1162
1163 2017-03-30  Palmer Dabbelt  <palmer@dabbelt.com>
1164
1165         * config/tc-riscv.c (riscv_clear_subsets): New function.
1166         (riscv_add_subset): Call riscv_clear_subsets and riscv_set_rvc to
1167         clear RVC when it's been previously set.
1168
1169 2017-03-31  Nick Clifton  <nickc@redhat.com>
1170
1171         PR gas/21333
1172         * config/tc-s390.c (tc_s390_fix_adjustable): Allow non pc-relative
1173         fixups in mergeable sections to be adjusted.
1174
1175 2017-03-30  Pip Cet  <pipcet@gmail.com>
1176
1177         * config/tc-wasm32.h: New file: Add WebAssembly assembler target.
1178         * config/tc-wasm32.c: New file: Add WebAssembly assembler target.
1179         * Makefile.am: Add WebAssembly assembler target.
1180         * configure.tgt: Add WebAssembly assembler target.
1181         * doc/c-wasm32.texi: New file: Start documenting WebAssembly
1182         assembler.
1183         * doc/all.texi: Define WASM32.
1184         * doc/as.texinfo: Add WebAssembly entries.
1185         * NEWS: Mention the new support.
1186         * Makefile.in: Regenerate.
1187         * po/gas.pot: Regenerate.
1188         * po/POTFILES.in: Regenerate.
1189         * testsuite/gas/wasm32: New directory.
1190         * testsuite/gas/wasm32/allinsn.d: New file.
1191         * testsuite/gas/wasm32/allinsn.s: New file.
1192         * testsuite/gas/wasm32/illegal.l: New file.
1193         * testsuite/gas/wasm32/illegal.s: New file.
1194         * testsuite/gas/wasm32/illegal-2.l: New file.
1195         * testsuite/gas/wasm32/illegal-2.s: New file.
1196         * testsuite/gas/wasm32/illegal-3.l: New file.
1197         * testsuite/gas/wasm32/illegal-3.s: New file.
1198         * testsuite/gas/wasm32/illegal-4.l: New file.
1199         * testsuite/gas/wasm32/illegal-4.s: New file.
1200         * testsuite/gas/wasm32/illegal-5.l: New file.
1201         * testsuite/gas/wasm32/illegal-5.s: New file.
1202         * testsuite/gas/wasm32/illegal-6.l: New file.
1203         * testsuite/gas/wasm32/illegal-6.s: New file.
1204         * testsuite/gas/wasm32/illegal-7.l: New file.
1205         * testsuite/gas/wasm32/illegal-7.s: New file.
1206         * testsuite/gas/wasm32/illegal-8.l: New file.
1207         * testsuite/gas/wasm32/illegal-8.s: New file.
1208         * testsuite/gas/wasm32/illegal-9.l: New file.
1209         * testsuite/gas/wasm32/illegal-9.s: New file.
1210         * testsuite/gas/wasm32/illegal-10.l: New file.
1211         * testsuite/gas/wasm32/illegal-10.s: New file.
1212         * testsuite/gas/wasm32/illegal-11.l: New file.
1213         * testsuite/gas/wasm32/illegal-11.s: New file.
1214         * testsuite/gas/wasm32/illegal-12.l: New file.
1215         * testsuite/gas/wasm32/illegal-12.s: New file.
1216         * testsuite/gas/wasm32/illegal-13.l: New file.
1217         * testsuite/gas/wasm32/illegal-13.s: New file.
1218         * testsuite/gas/wasm32/illegal-14.l: New file.
1219         * testsuite/gas/wasm32/illegal-14.s: New file.
1220         * testsuite/gas/wasm32/illegal-15.l: New file.
1221         * testsuite/gas/wasm32/illegal-15.s: New file.
1222         * testsuite/gas/wasm32/illegal-16.l: New file.
1223         * testsuite/gas/wasm32/illegal-16.s: New file.
1224         * testsuite/gas/wasm32/illegal-17.l: New file.
1225         * testsuite/gas/wasm32/illegal-17.s: New file.
1226         * testsuite/gas/wasm32/illegal-18.l: New file.
1227         * testsuite/gas/wasm32/illegal-18.s: New file.
1228         * testsuite/gas/wasm32/illegal-19.l: New file.
1229         * testsuite/gas/wasm32/illegal-19.s: New file.
1230         * testsuite/gas/wasm32/illegal-20.l: New file.
1231         * testsuite/gas/wasm32/illegal-20.s: New file.
1232         * testsuite/gas/wasm32/illegal-21.l: New file.
1233         * testsuite/gas/wasm32/illegal-21.s: New file.
1234         * testsuite/gas/wasm32/illegal-22.l: New file.
1235         * testsuite/gas/wasm32/illegal-22.s: New file.
1236         * testsuite/gas/wasm32/illegal-24.l: New file.
1237         * testsuite/gas/wasm32/illegal-24.s: New file.
1238         * testsuite/gas/wasm32/illegal-25.l: New file.
1239         * testsuite/gas/wasm32/illegal-25.s: New file.
1240         * testsuite/gas/wasm32/reloc.d: New file.
1241         * testsuite/gas/wasm32/reloc.s: New file.
1242         * testsuite/gas/wasm32/wasm32.exp: New tests for WebAssembly
1243         architecture.
1244
1245 2017-03-29  Alan Modra  <amodra@gmail.com>
1246
1247         * config/tc-ppc.c (md_parse_option): Reject -mraw.
1248
1249 2017-03-27  Alan Modra  <amodra@gmail.com>
1250
1251         PR 21303
1252         * testsuite/gas/ppc/pr21303.d,
1253         * testsuite/gas/ppc/pr21303.s: New test
1254         * testsuite/gas/ppc/ppc.exp: Run it.
1255
1256 2017-03-27  Rinat Zelig  <rinat@mellanox.com>
1257
1258         * testsuite/gas/arc/nps400-12.s: New file.
1259         * testsuite/gas/arc/nps400-12.d: New file.
1260
1261 2017-03-24  Thomas preud'homme  <thomas.preudhomme@arm.com>
1262
1263         * config/tc-arm.: (md_begin): Set selected_cpu from *mcpu_cpu_opt when
1264         CPU_DEFAULT is defined.
1265
1266 2017-03-21  Palmer Dabbbelt  <palmer@dabbelt.com>
1267
1268         * config/tc-riscv.c (md_show_usage): Remode defuct -m32, -m64,
1269         -msoft-float, -mhard-float, -mno-rvc, and -mrvc options; and don't
1270         print an invalid default ISA string.
1271         * doc/c-riscv.texi (OPTIONS): Add -fpic and -fno-pic options.
1272
1273 2017-03-22  Max Filippov  <jcmvbkbc@gmail.com>
1274
1275         * config/tc-xtensa.c (xtensa_relax_frag): Change fx_size of the
1276         reassigned fixup to size of jump instruction (3) and fx_r_type
1277         to BFD_RELOC_XTENSA_SLOT0_OP, as there's only one slot.
1278         (add_jump_to_trampoline): Search
1279         origfrag->tc_frag_data.slot_symbols for the slot with non-NULL
1280         symbol and use that slot instead of slot 0.
1281
1282 2017-03-21  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
1283
1284         * config/tc-s390.c (s390_parse_cpu): Remove S390_INSTR_FLAG_VX2
1285         from cpu_table.  Remove vx2, and novx2 from cpu_flags.
1286
1287 2017-03-21  Rinat Zelig  <rinat@mellanox.com>
1288
1289         * testsuite/gas/arc/nps400-11.s: New file.
1290         * testsuite/gas/arc/nps400-11.d: New file.
1291
1292 2017-03-20  Nick Clifton  <nickc@redhat.com>
1293
1294         * doc/as.texinfo (2byte): Note that if no expressions are present
1295         the directive does nothing.  Emphasize that the output is
1296         unaligned, and that this can have an effect on the relocations
1297         generated.
1298         (4byte): Simplify description.  Refer back to the 2byte
1299         description.
1300         (8byte): Likewise.
1301
1302 2017-03-20  Richard Earnshaw  <rearnsha@arm.com>
1303
1304         * config/tc-arm.c (arm_fpus): Note entires that should not be
1305         documented.
1306         * doc/c-arm.texi (-mfpu): Add missing FPU entries for neon-vfpv3 and
1307         neon-fp16.  Fix spelling error.
1308
1309 2017-03-20  Richard Earnshaw  <rearnsha@arm.com>
1310
1311         * config/tc-arm.c (arm_fpus): Add neon-vfpv3 as an alias for neon.
1312
1313 2017-03-16  Rinat Zelig  <rinat@mellanox.com>
1314
1315         * config/tc-arc.c (assemble_insn): Only handle ".t" and ".nt"
1316         specially for ARCv2.
1317
1318 2017-03-14  Kito Cheng  <kito.cheng@gmail.com>
1319
1320         * config/tc-riscv.c (validate_riscv_insn): Add 'o' RVC immediate
1321         encoding format, which can accept 0-valued immediates.
1322         (riscv_ip): Likewise.
1323
1324 2017-03-15  Nick Clifton  <nickc@redhat.com>
1325
1326         * config/tc-riscv.c (riscv_pre_output_hook): Fix compile time
1327         warning about discarding a const qualifier.
1328
1329 2017-03-02  Kuan-Lin Chen  <rufus@andestech.com>
1330
1331         * config/tc-riscv.h (HWARD2_USE_FIXED_ADVANCE_PC): New define.
1332
1333 2017-03-02  Kuan-Lin Chen  <rufus@andestech.com>
1334
1335         * config/tc-riscv.c (md_apply_fix): Set fx_frag and
1336         fx_next->fx_frag for CFA_advance_loc relocations.
1337
1338 2017-03-02  Kuan-Lin Chen  <rufus@andestech.com>
1339
1340         * config/tc-riscv.c (md_apply_fix): Compute the correct offsets
1341         for CFA relocations.
1342
1343 2017-03-13  Nick Clifton  <nickc@redhat.com>
1344
1345         PR binutils/21202
1346         * config/tc-aarch64.c (reloc_table): Rename
1347         BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC to
1348         BFD_RELOC_AARCH64_TLSDESC_LD64_LO12.  Rname
1349         BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC to
1350         BFD_RELOC_AARCH64_TLSDESC_ADD_LO12.
1351         (md_apply_fix): Likewise.
1352         (aarch64_force_relocation): Likewise.
1353         * testsuite/gas/aarch64/tls.d: Update regexp.
1354
1355 2017-03-10  Tobin C. Harding  <me@tobin.cc>
1356             Nick Clifton  <nickc@redhat.com>
1357
1358         * doc/as.texinfo (2byte): Tidy up wording.  Add note that
1359         overlarge values will produce a warning message and be trunacted.
1360         (4byte): Likewise.
1361
1362 2017-03-09  H.J. Lu  <hongjiu.lu@intel.com>
1363
1364         * config/tc-i386.c (_i386_insn): Add dir_encoding and
1365         vec_encoding.  Remove swap_operand and need_vrex.
1366         (extra_symbol_chars): Add '}'.
1367         (md_begin): Mark '}' with LEX_BEGIN_NAME.  Allow '}' in
1368         mnemonic.
1369         (build_vex_prefix): Don't use 2-byte VEX encoding with
1370         {vex3}.  Check dir_encoding and load.
1371         (parse_insn): Check pseudo prefixes.  Set dir_encoding.
1372         (VEX_check_operands): Likewise.
1373         (match_template): Check dir_encoding and load.
1374         (parse_real_register): Set vec_encoding instead of need_vrex.
1375         (parse_register): Likewise.
1376         * doc/c-i386.texi: Document {disp8}, {disp32}, {load}, {store},
1377         {vex2}, {vex3} and {evex}.  Remove ".s", ".d8" and ".d32"
1378         * testsuite/gas/i386/i386.exp: Run pseudos and x86-64-pseudos.
1379         * testsuite/gas/i386/pseudos.d: New file.
1380         * testsuite/gas/i386/pseudos.s: Likewise.
1381         * testsuite/gas/i386/x86-64-pseudos.d: Likewise.
1382         * testsuite/gas/i386/x86-64-pseudos.s: Likewise.
1383
1384 2017-03-08  Peter Bergner <bergner@vnet.ibm.com>
1385
1386         * testsuite/gas/ppc/altivec2.d (as): Use the -mpower8 option.
1387         (objdump): Use the -Mpower8 option.
1388
1389 2017-03-08  Peter Bergner <bergner@vnet.ibm.com>
1390
1391         * testsuite/gas/ppc/power9.d <lnia> New test.
1392         * testsuite/gas/ppc/power9.s: Likewise.
1393
1394 2017-03-07  Alan Modra  <amodra@gmail.com>
1395
1396         * doc/as.texinfo (2byte, 4byte, 8byte): Correct @section placement.
1397
1398 2017-03-07  Tobin C. Harding  <me@tobin.cc>
1399             Alan Modra  <amodra@gmail.com>
1400
1401         * doc/as.texinfo (2byte, 4byte, 8byte): Document.
1402         * doc/c-arm.texi (2byte, 4byte, 8byte): Omit if ELF.
1403
1404 2017-03-06  H.J. Lu  <hongjiu.lu@intel.com>
1405
1406         * config/tc-i386.c (cpu_arch): Add .cet.
1407         * doc/c-i386.texi: Document cet.
1408         * testsuite/gas/i386/cet-intel.d: New file.
1409         * testsuite/gas/i386/cet.d: Likewise.
1410         * testsuite/gas/i386/cet.s: Likewise.
1411         * testsuite/gas/i386/x86-64-cet-intel.d: Likewise.
1412         * testsuite/gas/i386/x86-64-cet.d: Likewise.
1413         * testsuite/gas/i386/x86-64-cet.s: Likewise.
1414         * testsuite/gas/i386/i386.exp: Run Intel CET tests.
1415
1416 2017-03-06  H.J. Lu  <hongjiu.lu@intel.com>
1417
1418         * testsuite/gas/i386/x86-64-mpx-inval-2.s: Force a good alignment.
1419         * testsuite/gas/i386/x86-64-mpx-inval-2.l: Expect [0-9A-F]+.
1420
1421 2017-03-06  Alan Modra  <amodra@gmail.com>
1422
1423         * dw2gencfi.c (encoding_size): Return unsigned int.
1424         (emit_expr_encoded): Assert size matches reloc bitsize.
1425         (output_fde): Use unsigned for offset_size and addr_size.  Set
1426         addr_size earlier and use in place of constant 4 and uses of
1427         DWARF2_FDE_RELOC_SIZE.  Assert it matches reloc bitsize.
1428
1429 2017-03-06  Alan Modra  <amodra@gmail.com>
1430
1431         * dw2gencfi.c: Wrap overlong lines.  Add parens for emacs
1432         auto reformat.  Formatting and whitespace fixes.
1433
1434 2017-03-05  Mark Wielaard  <mark@klomp.org>
1435
1436         * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_strp instead of
1437         DW_FORM_string for DW_AT_name, DW_AT_comp_dir and DW_AT_producer.
1438         (out_debug_info): Accept symbols to name, comp_dir and producer in
1439         the .debug_str section and emit those offsets not full strings.
1440         (out_debug_str): New function that outputs the strings for name,
1441         comp_dir and producer in .debug_str and generates symbols to those
1442         strings.
1443         (out_debug_line): Create a .debug_str section if necessary and call
1444         out_debug_str before calling out_debug_info.
1445         * testsuite/gas/aarch64/dwarf.d: Add extra section symbol to expected
1446         output.
1447
1448 2017-03-02  Maciej W. Rozycki  <macro@imgtec.com>
1449
1450         * write.c (relax_segment) <rs_org>: Only bail out if the fixed
1451         part of the frag has overrun the location requested.
1452
1453         * testsuite/gas/all/org-1.d: New test.
1454         * testsuite/gas/all/org-2.d: New test.
1455         * testsuite/gas/all/org-3.d: New test.
1456         * testsuite/gas/all/org-4.d: New test.
1457         * testsuite/gas/all/org-5.d: New test.
1458         * testsuite/gas/all/org-6.d: New test.
1459         * testsuite/gas/all/org-1.l: New stderr output.
1460         * testsuite/gas/all/org-2.l: New stderr output.
1461         * testsuite/gas/all/org-3.l: New stderr output.
1462         * testsuite/gas/all/org-1.s: New test source.
1463         * testsuite/gas/all/org-2.s: New test source.
1464         * testsuite/gas/all/org-3.s: New test source.
1465         * testsuite/gas/all/org-4.s: New test source.
1466         * testsuite/gas/all/org-5.s: New test source.
1467         * testsuite/gas/all/org-6.s: New test source.
1468         * testsuite/gas/all/gas.exp: Run the new tests.
1469
1470         * testsuite/gas/mips/org-1.d: New test.
1471         * testsuite/gas/mips/org-2.d: New test.
1472         * testsuite/gas/mips/org-3.d: New test.
1473         * testsuite/gas/mips/org-4.d: New test.
1474         * testsuite/gas/mips/org-5.d: New test.
1475         * testsuite/gas/mips/org-6.d: New test.
1476         * testsuite/gas/mips/org-7.d: New test.
1477         * testsuite/gas/mips/org-8.d: New test.
1478         * testsuite/gas/mips/org-9.d: New test.
1479         * testsuite/gas/mips/org-10.d: New test.
1480         * testsuite/gas/mips/org-11.d: New test.
1481         * testsuite/gas/mips/org-12.d: New test.
1482         * testsuite/gas/mips/org-1.l: New stderr output.
1483         * testsuite/gas/mips/org-4.l: New stderr output.
1484         * testsuite/gas/mips/org-5.l: New stderr output.
1485         * testsuite/gas/mips/org-6.l: New stderr output.
1486         * testsuite/gas/mips/org-10.l: New stderr output.
1487         * testsuite/gas/mips/org-1.s: New test source.
1488         * testsuite/gas/mips/org-2.s: New test source.
1489         * testsuite/gas/mips/org-3.s: New test source.
1490         * testsuite/gas/mips/org-4.s: New test source.
1491         * testsuite/gas/mips/org-5.s: New test source.
1492         * testsuite/gas/mips/org-6.s: New test source.
1493         * testsuite/gas/mips/org-7.s: New test source.
1494         * testsuite/gas/mips/org-8.s: New test source.
1495         * testsuite/gas/mips/org-9.s: New test source.
1496         * testsuite/gas/mips/org-10.s: New test source.
1497         * testsuite/gas/mips/org-11.s: New test source.
1498         * testsuite/gas/mips/org-12.s: New test source.
1499         * testsuite/gas/mips/mips.exp: Run the new tests.
1500
1501 2017-03-01  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1502
1503         * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc.
1504
1505 2017-02-28  Jan Beulich  <jbeulich@suse.com>
1506
1507         * testsuite/gas/i386/x86-64-avx.s: Add suffixed variants of
1508         VPCMPESTR{I,M}.
1509         * testsuite/gas/i386/x86-64-sse2avx.s: Likewise.
1510         * testsuite/gas/i386/x86-64-sse4_2.s: Add suffixed variants
1511         of PCMPESTR{I,M}.
1512         * testsuite/gas/i386/ilp32/x86-64-avx-intel.d: Likewise.
1513         * testsuite/gas/i386/ilp32/x86-64-avx.d: Likewise.
1514         * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Likewise.
1515         * testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d: Likewise.
1516         * testsuite/gas/i386/ilp32/x86-64-sse4_2.d: Likewise.
1517         * testsuite/gas/i386/x86-64-avx-intel.d: Likewise.
1518         * testsuite/gas/i386/x86-64-avx.d: Likewise.
1519         * testsuite/gas/i386/x86-64-sse2avx.d: Likewise.
1520         * testsuite/gas/i386/x86-64-sse4_2-intel.d: Likewise.
1521         * testsuite/gas/i386/x86-64-sse4_2.d: Likewise.
1522
1523 2017-02-28  Alan Modra  <amodra@gmail.com>
1524
1525         * config/tc-nios2.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
1526
1527 2017-02-28  Alan Modra  <amodra@gmail.com>
1528
1529         * config/tc-ppc.c (md_assemble): Use BFD_RELOC_PPC_16DX_HA for addpcis.
1530         (md_apply_fix): Remove fx_subsy check.  Move code converting to
1531         pcrel reloc earlier and handle BFD_RELOC_PPC_16DX_HA.  Remove code
1532         emiiting errors on seeing fx_pcrel set on unexpected relocs, as
1533         that is done now by the generic code via..
1534         * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): ..this. Define.
1535         (TC_VALIDATE_FIX_SUB): Define.
1536
1537 2017-02-28  Maciej W. Rozycki  <macro@imgtec.com>
1538
1539         * testsuite/gas/mips/jalr4.s: Add `jalr $0, $25' instructions.
1540         * testsuite/gas/mips/jalr4.d: Adjust accordingly.  Remove MIPSr6
1541         encoding patterns.
1542         * testsuite/gas/mips/jalr4-n64.d: Likewise.
1543         * testsuite/gas/mips/mipsr6@jalr4.d: New test.
1544         * testsuite/gas/mips/mipsr6@jalr4-n32.d: New test.
1545         * testsuite/gas/mips/mipsr6@jalr4-n64.d: New test.
1546
1547 2017-02-25  Alan Modra  <amodra@gmail.com>
1548
1549         * testsuite/gas/elf/strtab.s: Don't put directives on first
1550         column or continuation with labels not in first column.
1551
1552 2017-02-24  Richard Sandiford  <richard.sandiford@arm.com>
1553
1554         * doc/c-aarch64.texi: Document that sve implies fp16, simd and compnum.
1555         * config/tc-aarch64.c (parse_vector_type_for_operand): Allow .q
1556         to be used with SVE registers.
1557         (parse_operands): Handle new SVE operands.
1558         (aarch64_features): Make "sve" require F16 rather than FP.  Also
1559         require COMPNUM.
1560         * testsuite/gas/aarch64/sve.s: Add tests for new instructions.
1561         Include compnum tests.
1562         * testsuite/gas/aarch64/sve.d: Update accordingly.
1563         * testsuite/gas/aarch64/sve-invalid.s: Add tests for new instructions.
1564         * testsuite/gas/aarch64/sve-invalid.l: Update accordingly.  Also
1565         update expected output for new FMOV and MOV alternatives.
1566
1567 2017-02-24  Richard Sandiford  <richard.sandiford@arm.com>
1568
1569         * doc/c-aarch64.texi: Add a "compnum" entry.
1570         * config/tc-aarch64.c (aarch64_features): Likewise,
1571         * testsuite/gas/aarch64/advsimd-compnum.s: New test.
1572         * testsuite/gas/aarch64/advsimd-compnum.d: Likewise.
1573
1574 2017-02-24  Jan Beulich  <jbeulich@suse.com>
1575
1576         * testsuite/gas/i386/opcode.s: Add alternative TEST forms.
1577         * testsuite/gas/i386/x86-64-opcode.s: Likewise.
1578         * testsuite/gas/i386/opcode.d: Adjust accordingly.
1579         * testsuite/gas/i386/opcode-intel.d: Likewise.
1580         * testsuite/gas/i386/x86-64-opcode.d: Likewise.
1581         * testsuite/gas/i386/ilp32/x86-64-opcode.d: Likewise.
1582
1583 2017-02-24  Sheldon Lobo  <sheldon.lobo@oracle.com>
1584
1585         Test cases for the architecture level aware SPARC ASI work.
1586         * gas/testsuite/gas/sparc/sparc.exp: 2 new tests
1587         * gas/testsuite/gas/sparc/asi-bump-warn.s: New test
1588         * gas/testsuite/gas/sparc/asi-bump-warn.l: Likewise
1589         * gas/testsuite/gas/sparc/asi-arch-error.s: Likewise
1590         * gas/testsuite/gas/sparc/asi-arch-error.l: Likewise
1591
1592 2017-02-23  Maciej W. Rozycki  <macro@imgtec.com>
1593
1594         * testsuite/gas/mips/jalr4.d: New test.
1595         * testsuite/gas/mips/jalr4-n32.d: New test.
1596         * testsuite/gas/mips/jalr4-n64.d: New test.
1597         * testsuite/gas/mips/jalr4.s: New test source.
1598         * testsuite/gas/mips/mips.exp: Run the new tests.
1599
1600 2017-02-23  Sheldon Lobo <sheldon.lobo@oracle.com>
1601
1602         Add support for associating SPARC ASIs with an architecture level.
1603         * config/tc-sparc.c (parse_sparc_asi): New encode SPARC ASIs.
1604
1605 2017-02-23  Jan Beulich  <jbeulich@suse.com>
1606
1607         * testsuite/gas/all/err-sizeof.s: Don't use sums or differences
1608         of symbols as expression.
1609
1610 2017-02-23  Jan Beulich  <jbeulich@suse.com>
1611
1612         * gas/testsuite/gas/i386/x86-64-mpx-inval-2.d: Add 32- and 16-
1613         bit GPR forms of BNDCL, BNDCU, and BNDCN. Add RSP-as-index
1614         Intel syntax forms of BNDMK, BNDSTX, and BNDLDX.
1615         * gas/testsuite/gas/i386/x86-64-mpx-inval-2.l: Adjust.
1616
1617 2017-02-22  Maciej W. Rozycki  <macro@imgtec.com>
1618
1619         * ecoff.c (ecoff_directive_end) [md_flush_pending_output]: Call
1620         `md_flush_pending_output'.
1621         * config/tc-mips.c (s_mips_end) [md_flush_pending_output]: Call
1622         `md_flush_pending_output' unconditionally.
1623         * testsuite/gas/mips/debug-label-end-1.d: New test.
1624         * testsuite/gas/mips/debug-label-end-2.d: New test.
1625         * testsuite/gas/mips/debug-label-end-3.d: New test.
1626         * testsuite/gas/mips/debug-label-end.s: New test source.
1627         * testsuite/gas/mips/mips.exp: Run the new tests.
1628
1629 2017-02-22  Hans-Peter Nilsson  <hp@axis.com>
1630
1631         * testsuite/gas/all/err-sizeof.s: Include cris*-*-* in the list of
1632         targets yielding an error message matching "too complex".
1633
1634 2017-02-22  Nick Clifton  <nickc@redhat.com>
1635
1636         * testsuite/gas/arm/vcmp-noprefix-imm.d: Skip for non-ELF targets.
1637
1638 2017-02-21  Jan Beulich  <jbeulich@suse.com>
1639
1640         * expr.c (operand): Handle missing operand to .startof.() and
1641         .sizeof.().
1642         * testsuite/gas/all/err-sizeof.s: New.
1643
1644 2017-02-20  Alan Modra  <amodra@gmail.com>
1645
1646         PR 21118
1647         * NEWS: Revise powerpc register check.
1648         * config/tc-ppc.c (ppc_optimize_expr, md_assemble): Make "invalid
1649         register expression" a warning.
1650
1651 2017-02-17  Maciej W. Rozycki  <macro@imgtec.com>
1652
1653         * ecoff.c (ecoff_directive_ent, add_procedure): Handle `.aent'.
1654         * config/obj-ecoff.c (obj_pseudo_table): Add "aent" entry.
1655         * config/obj-elf.c (ecoff_debug_pseudo_table): Likewise.
1656         * testsuite/gas/mips/aent-2.d: New test.
1657         * testsuite/gas/mips/aent-mdebug.d: New test.
1658         * testsuite/gas/mips/aent-mdebug-2.d: New test.
1659         * testsuite/gas/mips/mips.exp: Run the new tests.
1660
1661 2017-02-15  Richard Sandiford  <richard.sandiford@arm.com>
1662
1663         * testsuite/gas/aarch64/sve-sysreg.s,
1664         testsuite/gas/aarch64/sve-sysreg.d,
1665         testsuite/gas/aarch64/sve-sysreg-invalid.d,
1666         testsuite/gas/aarch64/sve-sysreg-invalid.l: New tests.
1667
1668 2017-02-15  Richard Sandiford  <richard.sandiford@arm.com>
1669
1670         * doc/c-aarch64.texi: Fix sve entry.
1671
1672 2017-02-15  Claudiu Zissulescu  <claziss@synopsys.com>
1673
1674         * config/tc-arc.c (md_convert_frag): Remove @pcl relocation
1675         information from input expression.
1676         (assemble_insn): Make sure pcrel is correctly set.
1677         (arc_pcrel_adjust): Compensate for PCL rounding.
1678         * testsuite/gas/arc/relax-add01.d: New file.
1679         * testsuite/gas/arc/relax-add01.s: Likewise.
1680         * testsuite/gas/arc/relax-add02.d: Likewise.
1681         * testsuite/gas/arc/relax-add02.s: Likewise.
1682         * testsuite/gas/arc/relax-add03.d: Likewise.
1683         * testsuite/gas/arc/relax-add03.s: Likewise.
1684         * testsuite/gas/arc/relax-add04.d: Likewise.
1685         * testsuite/gas/arc/relax-add04.s: Likewise.
1686         * testsuite/gas/arc/relax-ld01.d: Likewise.
1687         * testsuite/gas/arc/relax-ld01.s: Likewise.
1688         * testsuite/gas/arc/relax-ld02.d: Likewise.
1689         * testsuite/gas/arc/relax-ld02.s: Likewise.
1690         * testsuite/gas/arc/relax-mov01.d: Likewise.
1691         * testsuite/gas/arc/relax-mov01.s: Likewise.
1692         * testsuite/gas/arc/relax-mov02.d: Likewise.
1693         * testsuite/gas/arc/relax-mov02.s: Likewise.
1694         * testsuite/gas/arc/relax-mpy01.d: Likewise.
1695         * testsuite/gas/arc/relax-mpy01.s: Likewise.
1696         * testsuite/gas/arc/relax-sub01.d: Likewise.
1697         * testsuite/gas/arc/relax-sub01.s: Likewise.
1698         * testsuite/gas/arc/relax-sub02.d: Likewise.
1699         * testsuite/gas/arc/relax-sub02.s: Likewise.
1700         * testsuite/gas/arc/relax-sub03.d: Likewise.
1701         * testsuite/gas/arc/relax-sub03.s: Likewise.
1702         * testsuite/gas/arc/relax-sub04.d: Likewise.
1703         * testsuite/gas/arc/relax-sub04.s: Likewise.
1704
1705 2017-02-09  Vineet Gupta <vgupta@synopsys.com>
1706
1707         * testsuite/gas/arc/st.d: Update for 0xe having a name now
1708
1709 2017-02-14  Alan Modra  <amodra@gmail.com>
1710
1711         PR 21118
1712         * NEWS: Mention powerpc register checks.
1713         * config/tc-ppc.c (struct pd_reg): Make value a short.  Add flags.
1714         (pre_defined_registers): Delete fpscr and pmr entries.  Set
1715         register type in flags.
1716         (cr_names): Set type in flags.
1717         (reg_name_search): Return pointer to struct pd_reg rather than value.
1718         (register_name): Adjust to suit.  Set X_md from flags.
1719         (ppc_parse_name): Likewise.
1720         (ppc_optimize_expr): New function.
1721         (md_assemble): Verify expresion reg flags match operand.
1722         * config/tc-ppc.h (md_optimize_expr): Define.
1723         (ppc_optimize_expr): Declare.
1724
1725 2017-02-14  Alan Modra  <amodra@gmail.com>
1726
1727         * testsuite/gas/ppc/cell.s: Correct invalid registers.
1728         * testsuite/gas/ppc/vle-simple-1.s: Likewise.
1729         * testsuite/gas/ppc/vle-simple-2.s: Likewise.
1730
1731 2017-02-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1732
1733         * config/tc-arm.c (parse_ifimm_zero): Make prefix optional in unified
1734         syntax.
1735         * testsuite/gas/arm/vcmp-noprefix-imm.d: New file.
1736         * testsuite/gas/arm/vcmp-noprefix-imm.s: New file.
1737
1738 2017-02-10  Nicholas Piggin  <npiggin@gmail.com>
1739
1740         * testsuite/gas/ppc/power9.d <scv, rfscv>: New tests.
1741
1742 2017-02-02  Maciej W. Rozycki  <macro@imgtec.com>
1743
1744         * doc/as.texinfo (Overview): Select MIPS options for man page
1745         inclusion.
1746
1747 2017-01-30  Maciej W. Rozycki  <macro@imgtec.com>
1748
1749         * config/tc-mips.c (mips_ignore_branch_isa): New variable.
1750         (options): Add OPTION_IGNORE_BRANCH_ISA and
1751         OPTION_NO_IGNORE_BRANCH_ISA enum values.
1752         (md_longopts): Add "mignore-branch-isa" and
1753         "mno-ignore-branch-isa" options.
1754         (md_parse_option): Handle OPTION_IGNORE_BRANCH_ISA and
1755         OPTION_NO_IGNORE_BRANCH_ISA.
1756         (fix_bad_cross_mode_branch_p): Return FALSE if
1757         `mips_ignore_branch_isa' has been set.
1758         (md_show_usage): Add `-mignore-branch-isa' and
1759         `-mno-ignore-branch-isa'.
1760
1761         * doc/as.texinfo (Target MIPS options): Add
1762         `-mignore-branch-isa' and `-mno-ignore-branch-isa' options.
1763         (-mignore-branch-isa, -mno-ignore-branch-isa): New options.
1764         * doc/c-mips.texi (MIPS Options): Add `-mignore-branch-isa' and
1765         `-mno-ignore-branch-isa' options.
1766
1767         * testsuite/gas/mips/branch-local-ignore-2.d: New test.
1768         * testsuite/gas/mips/branch-local-ignore-3.d: New test.
1769         * testsuite/gas/mips/branch-local-ignore-n32-2.d: New test.
1770         * testsuite/gas/mips/branch-local-ignore-n32-3.d: New test.
1771         * testsuite/gas/mips/branch-local-ignore-n64-2.d: New test.
1772         * testsuite/gas/mips/branch-local-ignore-n64-3.d: New test.
1773         * testsuite/gas/mips/mips.exp: Run the new tests.
1774
1775 2017-01-30  Maciej W. Rozycki  <macro@imgtec.com>
1776
1777         * testsuite/gas/mips/branch-local-2.d: New test.
1778         * testsuite/gas/mips/branch-local-3.d: New test.
1779         * testsuite/gas/mips/branch-local-n32-2.d: New test.
1780         * testsuite/gas/mips/branch-local-n32-3.d: New test.
1781         * testsuite/gas/mips/branch-local-n64-2.d: New test.
1782         * testsuite/gas/mips/branch-local-n64-3.d: New test.
1783         * testsuite/gas/mips/mips.exp: Fold corresponding list tests
1784         into the new tests.
1785
1786 2017-01-27  Alexis Deruell  <alexis.deruelle@gmail.com>
1787
1788         PR 21056
1789         * testsuite/gas/tic6x/insns16-parallel.s: New test case.
1790         * testsuite/gas/tic6x/insns16-parallel.d: New test driver.
1791
1792 2017-01-25  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1793
1794         * configure.tgt (aarch64*-*-rtems*): Remove.
1795         (bfin-*-rtems*): Likewise.
1796         (h8300-*-rtems*): Likewise.
1797         (i386-*-rtems*): Likewise.
1798         (m32c-*-rtems*): Likewise.
1799         (m32r-*-rtems*): Likewise.
1800         (m68k-*-rtems*): Likewise.
1801         (mips-*-rtems*): Likewise.
1802         (nios2-*-rtems*): Likewise.
1803         (ppc-*-rtems*): Likewise.
1804         (sh-*-rtems*): Likewise.
1805         (sparc64-*-rtems*): Likewise.
1806         (sparc-*-rtems*): Likewise.
1807         (*-*-rtems*) Use ELF format.
1808
1809 2017-01-25  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1810
1811         * configure.tgt (arm-*-rtems*): Move to (arm-*-eabi*).
1812
1813 2017-01-25  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1814
1815         * configure.tgt (sh-*-rtemscoff*): Remove.
1816
1817 2017-01-24  Sebastian Huber <sebastian.huber@embedded-brains.de>
1818
1819         * configure.tgt (riscv*-*-*): Remove em=linux.
1820
1821 2017-01-23  Sebastian Rasmussen  <sebras@gmail.com>
1822
1823         PR gas/21072
1824         * asintl.h: Fix spelling mistakes and typos.
1825         * atof-generic.c: Likewise.
1826         * bit_fix.h: Likewise.
1827         * config/atof-ieee.c: Likewise.
1828         * config/bfin-defs.h: Likewise.
1829         * config/bfin-parse.y: Likewise.
1830         * config/obj-coff-seh.h: Likewise.
1831         * config/obj-coff.c: Likewise.
1832         * config/obj-evax.c: Likewise.
1833         * config/obj-macho.c: Likewise.
1834         * config/rx-parse.y: Likewise.
1835         * config/tc-aarch64.c: Likewise.
1836         * config/tc-alpha.c: Likewise.
1837         * config/tc-arc.c: Likewise.
1838         * config/tc-arm.c: Likewise.
1839         * config/tc-avr.c: Likewise.
1840         * config/tc-bfin.c: Likewise.
1841         * config/tc-cr16.c: Likewise.
1842         * config/tc-cris.c: Likewise.
1843         * config/tc-crx.c: Likewise.
1844         * config/tc-d10v.c: Likewise.
1845         * config/tc-d30v.c: Likewise.
1846         * config/tc-dlx.c: Likewise.
1847         * config/tc-epiphany.c: Likewise.
1848         * config/tc-frv.c: Likewise.
1849         * config/tc-hppa.c: Likewise.
1850         * config/tc-i370.c: Likewise.
1851         * config/tc-i386-intel.c: Likewise.
1852         * config/tc-i386.c: Likewise.
1853         * config/tc-i960.c: Likewise.
1854         * config/tc-ia64.c: Likewise.
1855         * config/tc-m32r.c: Likewise.
1856         * config/tc-m68hc11.c: Likewise.
1857         * config/tc-m68k.c: Likewise.
1858         * config/tc-mcore.c: Likewise.
1859         * config/tc-mep.c: Likewise.
1860         * config/tc-mep.h: Likewise.
1861         * config/tc-metag.c: Likewise.
1862         * config/tc-microblaze.c: Likewise.
1863         * config/tc-mips.c: Likewise.
1864         * config/tc-mmix.c: Likewise.
1865         * config/tc-mn10200.c: Likewise.
1866         * config/tc-mn10300.c: Likewise.
1867         * config/tc-msp430.c: Likewise.
1868         * config/tc-msp430.h: Likewise.
1869         * config/tc-nds32.c: Likewise.
1870         * config/tc-nds32.h: Likewise.
1871         * config/tc-nios2.c: Likewise.
1872         * config/tc-nios2.h: Likewise.
1873         * config/tc-ns32k.c: Likewise.
1874         * config/tc-pdp11.c: Likewise.
1875         * config/tc-ppc.c: Likewise.
1876         * config/tc-pru.c: Likewise.
1877         * config/tc-rx.c: Likewise.
1878         * config/tc-s390.c: Likewise.
1879         * config/tc-score.c: Likewise.
1880         * config/tc-score7.c: Likewise.
1881         * config/tc-sh.c: Likewise.
1882         * config/tc-sh64.c: Likewise.
1883         * config/tc-sparc.c: Likewise.
1884         * config/tc-tic4x.c: Likewise.
1885         * config/tc-tic54x.c: Likewise.
1886         * config/tc-v850.c: Likewise.
1887         * config/tc-vax.c: Likewise.
1888         * config/tc-visium.c: Likewise.
1889         * config/tc-xgate.c: Likewise.
1890         * config/tc-xtensa.c: Likewise.
1891         * config/tc-z80.c: Likewise.
1892         * config/tc-z8k.c: Likewise.
1893         * config/te-vms.c: Likewise.
1894         * config/xtensa-relax.c: Likewise.
1895         * doc/as.texinfo: Likewise.
1896         * doc/c-arm.texi: Likewise.
1897         * doc/c-hppa.texi: Likewise.
1898         * doc/c-i370.texi: Likewise.
1899         * doc/c-i386.texi: Likewise.
1900         * doc/c-m32r.texi: Likewise.
1901         * doc/c-m68k.texi: Likewise.
1902         * doc/c-mmix.texi: Likewise.
1903         * doc/c-msp430.texi: Likewise.
1904         * doc/c-nds32.texi: Likewise.
1905         * doc/c-ns32k.texi: Likewise.
1906         * doc/c-riscv.texi: Likewise.
1907         * doc/c-rx.texi: Likewise.
1908         * doc/c-s390.texi: Likewise.
1909         * doc/c-tic6x.texi: Likewise.
1910         * doc/c-tilegx.texi: Likewise.
1911         * doc/c-tilepro.texi: Likewise.
1912         * doc/c-v850.texi: Likewise.
1913         * doc/c-xgate.texi: Likewise.
1914         * doc/c-xtensa.texi: Likewise.
1915         * dwarf2dbg.c: Likewise.
1916         * ecoff.c: Likewise.
1917         * itbl-ops.c: Likewise.
1918         * listing.c: Likewise.
1919         * macro.c: Likewise.
1920         * po/gas.pot: Likewise.
1921         * read.c: Likewise.
1922         * struc-symbol.h: Likewise.
1923         * symbols.h: Likewise.
1924         * testsuite/gas/arc/relocs-errors.err: Likewise.
1925         * write.c: Likewise.
1926
1927 2017-01-23  Nick Clifton  <nickc@redhat.com>
1928
1929         * po/sv.po: Updated Swedish translation.
1930
1931 2017-01-20  Nick Clifton  <nickc@redhat.com>
1932
1933         * config/tc-i386.c (parse_operands): Check for operand overflow
1934         before setting the unspecified bit.
1935
1936 2017-01-18  Maciej W. Rozycki  <macro@imgtec.com>
1937
1938         PR gas/20649
1939         * config/tc-mips.c (pic_need_relax): Don't check for linkonce
1940         symbols, remove the `segtype' parameter.
1941         (mips_frob_file, md_estimate_size_before_relax): Adjust
1942         accordingly.
1943         (s_is_linkonce): Add an explanatory comment.
1944         * testsuite/gas/mips/comdat-reloc.d: New test.
1945         * testsuite/gas/mips/comdat-reloc.s: New test source.
1946         * testsuite/gas/mips/mips.exp: Run the new test.
1947
1948 2017-01-18  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1949
1950         * testsuite/gas/arm/armv8_3-a-simd.s: Add vcmla tests.
1951         * testsuite/gas/arm/armv8_3-a-simd.d: Update.
1952
1953 2017-01-18  Bernhard Rosenkranzer  <bero@lindev.ch>
1954
1955         PR 21059
1956         * config/bfin-lex.l: Support processing with flex 2.6.3.
1957         * itbl-lex.l: Likewise.
1958
1959 2017-01-18  Nathan Sidwell  <nathan@acm.org>
1960
1961         * as.h (gas_assert): Use abort.
1962         (as_assert): Remove.
1963         (signal_init): Declare.
1964         * as.c (main): Call signal_init.
1965         * messages.c: #include <signal.h>
1966         (as_assert): Delete.
1967         (as_abort): Allow NULL FILE.
1968         (signal_crash): New.
1969         (signal_init): Register fatal signal handlers.
1970         * configure.ac: Check for strsignal.
1971         * config.in: Rebuilt.
1972         * configure: Rebuilt.
1973
1974 2017-01-17  Nick Clifton  <nickc@redhat.com>
1975
1976         * po/sv.po: Updated Swedish translation.
1977
1978 2017-01-12  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1979
1980         * config/tc-i386.c (cpu_arch): Add .avx512_vpopcntdq.
1981         (cpu_noarch): Add noavx512_vpopcntdq.
1982         * doc/c-i386.texi: Document avx512_vpopcntdq, noavx512_vpopcntdq.
1983         * testsuite/gas/i386/i386.exp: Run AVX512_VPOPCNTDQ tests.
1984         * testsuite/gas/i386/avx512_vpopcntdqd-intel.d: New file.
1985         * testsuite/gas/i386/avx512_vpopcntdqd.d: Ditto.
1986         * testsuite/gas/i386/avx512_vpopcntdqd.s: Ditto.
1987         * testsuite/gas/i386/x86-64-avx512_vpopcntdqd-intel.d: Ditto.
1988         * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.d: Ditto.
1989         * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.s: Ditto.
1990
1991 2017-01-12  Nick Clifton  <nickc@redhat.com>
1992
1993         * read.c (temp_ilp): New function.  Installs a temporary input
1994         line pointer.
1995         (restore_ilp): New function.  Restores the original input line
1996         pointer.
1997         * read.h (temp_ilp): Prototype.
1998         (restore_ilp): Prototype.
1999         * stabs.c (dot_func_p): Use bfd_boolean type.
2000         (generate_asm_file): Use temp_ilp and restore_ilp.
2001         (stabs_generate_asm_lineno): Likewise.
2002         (stabs_generate_asm_endfunc): Likewise.
2003
2004 2017-01-11  Jeremy Soller  <jackpot51@gmail.com>
2005
2006         * configure.tgt: Add entry for i386-redox.
2007
2008 2017-01-10  Nick Clifton  <nickc@redhat.com>
2009
2010         * po/sv.po: Updated Swedish translation.
2011
2012 2017-01-10  Tristan Gingold  <gingold@adacore.com>
2013
2014         * testsuite/gas/all/sleb128-8.d: Adjust test.
2015         * testsuite/gas/all/gas.exp (test_cond): Likewise.
2016
2017 2017-01-10  Tristan Gingold  <gingold@adacore.com>
2018
2019         * read.c (emit_leb128_expr): Extended unsigned big number for
2020         sleb128.
2021         * testsuite/gas/all/gas.exp (test_cond): Add sleb128-8 test.
2022         * testsuite/gas/all/sleb128.d: New test.
2023         * testsuite/gas/all/sleb128.s: New test source.
2024
2025 2017-01-09  Andrew Waterman <andrew@sifive.com>
2026
2027         * config/tc-riscv.c (append_insn): Don't eagerly apply relocations
2028         against constants.
2029         (md_apply_fix): Mark relocations against constants as "done."
2030
2031 2017-01-09  Andrew Waterman <andrew@sifive.com>
2032
2033         * config/tc-riscv.c (append_insn): Don't eagerly apply relocations
2034         against constants.
2035         (md_apply_fix): Mark relocations against constants as "done."
2036
2037 2017-01-09  Palmer Dabbelt <palmer@dabbelt.com>
2038             Kito Cheng <kito.cheng@gmail.com>
2039
2040         * emulparams/elf32lriscv-defs.sh (INITIAL_READONLY_SECTIONS):
2041         Removed.
2042         (SDATA_START_SYMBOLS): Likewise.
2043
2044 2017-01-09  Nick Clifton  <nickc@redhat.com>
2045
2046         * po/sv.po: New Swedish translation.
2047         * configure.ac (ALL_LINGUAS): Add sv.
2048         * configure: Regenerate.
2049
2050 2017-01-09  Andrew Waterman <andrew@sifive.com>
2051
2052         * config/tc-riscv.c (relaxed_branch_length): Use the long
2053         sequence when the target is a weak symbol.
2054
2055 2017-01-04  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2056
2057         * config/tc-aarch64.c (aarch64_features): Add rcpc.
2058         * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc.
2059         * testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Rename to ...
2060         * testsuite/gas/aarch64/ldst-rcpc.d: This.
2061         * testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Rename to ...
2062         * testsuite/gas/aarch64/ldst-rcpc.s: This.
2063         * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: New test.
2064
2065 2017-01-04  Norm Jacobs  <norm.jacobs@oracle.com>
2066
2067         PR gas/20992
2068         * configure.tgt: Treat sparcv9 as sparc64.
2069
2070 2017-01-03  Kito Cheng  <kito.cheng@gmail.com>
2071
2072         * config/tc-riscv.c (riscv_set_arch): Whitelist the "q" ISA
2073         extension.
2074         (riscv_after_parse_args): Set FLOAT_ABI_QUAD when the Q ISA is
2075         enabled and no other ABI is specified.
2076
2077 2017-01-03  Dimitar Dimitrov  <dimitar@dinux.eu>
2078
2079         * config/tc-pru.c (md_number_to_chars): Fix parameter to be
2080         valueT, as declared in tc.h.
2081         (md_apply_fix): Fix to work on 32-bit hosts.
2082
2083 2017-01-02  Alan Modra  <amodra@gmail.com>
2084
2085         Update year range in copyright notice of all files.
2086
2087 For older changes see ChangeLog-2016
2088 \f
2089 Copyright (C) 2017 Free Software Foundation, Inc.
2090
2091 Copying and distribution of this file, with or without modification,
2092 are permitted in any medium without royalty provided the copyright
2093 notice and this notice are preserved.
2094
2095 Local Variables:
2096 mode: change-log
2097 left-margin: 8
2098 fill-column: 74
2099 version-control: never
2100 End: