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