aboutsummaryrefslogtreecommitdiff
path: root/gas
AgeCommit message (Collapse)AuthorFilesLines
2018-09-20gas: Update expected outputs of "readelf -wL"H.J. Lu12-70/+86
Update expected outputs of "readelf -wL" for commit 17f6ade235fc96b4e572b5251b344d426c5f1cd5 Author: John Darrington <john@darrington.wattle.id.au> Date: Wed Sep 19 19:56:29 2018 +0200 binutils --dwarf=decodedline: Add display of is_stmt flag which adds display of is_stmt flag. PR binutils/23695 * testsuite/gas/elf/dwarf2-11.d: Update expected outputs of "readelf -wL". * testsuite/gas/elf/dwarf2-12.d: Likewise. * testsuite/gas/elf/dwarf2-13.d: Likewise. * testsuite/gas/elf/dwarf2-14.d: Likewise. * testsuite/gas/elf/dwarf2-15.d: Likewise. * testsuite/gas/elf/dwarf2-16.d: Likewise. * testsuite/gas/elf/dwarf2-17.d: Likewise. * testsuite/gas/elf/dwarf2-18.d: Likewise. * testsuite/gas/elf/dwarf2-5.d: Likewise. * testsuite/gas/elf/dwarf2-6.d: Likewise. * testsuite/gas/elf/dwarf2-7.d: Likewise.
2018-09-20S12Z/GAS: Correct a signed vs unsigned comparison error with GCC 4.1Maciej W. Rozycki2-11/+18
Fix a build error: cc1: warnings being treated as errors .../gas/config/tc-s12z.c: In function 'lex_opr': .../gas/config/tc-s12z.c:617: warning: comparison between signed and unsigned .../gas/config/tc-s12z.c:624: warning: comparison between signed and unsigned make[4]: *** [config/tc-s12z.o] Error 1 observed with GCC 4.1.2 with the `s12z-elf' target. Here we have a constant assembly instruction operand, whose value is within the 24-bit unsigned range, to be placed in a machine instruction such as to use the least space-consuming encoding. So the sign of that value does not matter, because signed values are out of range and are not supposed to appear here, and we only have this warning here because the `X_add_number' member of `struct expressionS' is of the `offsetT' type, which is signed. Use an auxiliary variable of an unsigned data type then, observing that both `offsetT' and `valueT' have the same width, as they correspond to `bfd_signed_vma' and `bfd_vma' respectively. gas/ * config/tc-s12z.c (lex_opr): Use an auxiliary unsigned variable in encoding a constant operand.
2018-09-20PPC/GAS: Correct a signed vs unsigned comparison error with GCC 4.1Maciej W. Rozycki2-1/+6
Fix a build error: cc1: warnings being treated as errors .../gas/config/tc-ppc.c: In function 'ppc_dwsect': .../gas/config/tc-ppc.c:4091: warning: comparison between signed and unsigned make[4]: *** [config/tc-ppc.o] Error 1 observed with GCC 4.1.2 with the `powerpc-beos' target. Here `flag' identifies the type of a DWARF section, as used with the the first operand to the `.dwsect' pseudo-op, and has no notion of a sign, or for that matter being arithmetic in the first place[1]. We already handle this correctly with the `flag' member of the `xcoff_dwsect_name' structure, however not in the local variable used in GAS to hold the parsed value of said `.dwsect' pseudo-op's operand. Use an unsigned data type in GAS then too, observing that both `offsetT' and `valueT' have the same width, as they correspond to `bfd_signed_vma' and `bfd_vma' respectively. References: [1] "AIX Version 7.2: Assembler Language Reference", IBM Corporation 2015, 2018, Section ".dwsect pseudo-op", pp. 531-532 gas/ * config/tc-ppc.c (ppc_dwsect): Use `valueT' rather than `offsetT' as the type of `flag'.
2018-09-20ARC: Fix build errors with large constants and C89Maciej W. Rozycki2-2/+7
Fix build errors: cc1: warnings being treated as errors In file included from .../opcodes/arc-opc.c:2630: .../opcodes/arc-nps400-tbl.h:38: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:38: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:41: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:41: warning: integer constant is too large for 'long' type [...] .../opcodes/arc-nps400-tbl.h:712: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:712: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:715: warning: integer constant is too large for 'long' type .../opcodes/arc-nps400-tbl.h:715: warning: integer constant is too large for 'long' type make[4]: *** [arc-opc.lo] Error 1 and: cc1: warnings being treated as errors .../gas/config/tc-arc.c: In function 'md_number_to_chars_midend': .../gas/config/tc-arc.c:802: warning: integer constant is too large for 'long' type .../gas/config/tc-arc.c:810: warning: integer constant is too large for 'long' type make[4]: *** [config/tc-arc.o] Error 1 observed with GCC 4.1.2 and presumably other C89 compilers with the `arc-elf' and `arc-linux-gnu' targets, caused by the use of constants the values of which are outside the range of the `int' type (or the `long' type if it is of the same with). In the C89 language standard such constants are not implicitly converted to a wider type and an explicit suffix is required for such constants. Add a `ull' suffix then as with such constants used in other ports. gas/ * config/tc-arc.c (md_number_to_chars_midend): Append `ull' to large constants. opcodes/ * arc-nps400-tbl.h: Append `ull' to large constants throughout.
2018-09-20Andes Technology has good news for you, we plan to update the nds32 port of ↵Nick Clifton15-1643/+3027
binutils on upstream! We have not only removed all unsupported and obsolete code, but also supported lost of new features, including better link-time relaxations and TLS implementations. Besides, the files generated by the newly assembler and linker usually get higher performance and more optimized code size. ld * emultempl/nds32elf.em (hyper_relax): New variable. (nds32_elf_create_output_section_statements): the parameters of bfd_elf32_nds32_set_target_option (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Add new option --mhyper-relax. * emultempl/nds32elf.em (nds32_elf_after_open): Updated. * emultempl/nds32elf.em (tls_desc_trampoline): New variable. * (nds32_elf_create_output_section_statements): Updated. * (nds32_elf_after_parse): Disable relaxations when PIC is enable. * (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Add new option --m[no-]tlsdesc-trampoline. include * elf/nds32.h: Remove the unused target features. * dis-asm.h (disassemble_init_nds32): Declared. * elf/nds32.h (E_NDS32_NULL): Removed. (E_NDS32_HAS_DSP_INST, E_NDS32_HAS_ZOL): New. * opcode/nds32.h: Ident. (N32_SUB6, INSN_LW): New macros. (enum n32_opcodes): Updated. * elf/nds32.h: Doc fixes. * elf/nds32.h: Add R_NDS32_LSI. * elf/nds32.h: Add new relocations for TLS. gas * config/tc-nds32.c: Remove the unused target features. (nds32_relax_relocs, md_pseudo_table, nds32_elf_record_fixup_exp, nds32_set_elf_flags_by_insn, nds32_insert_relax_entry, nds32_apply_fix): Likewise. (nds32_no_ex9_begin): Removed. * config/tc-nds32.c (add_mapping_symbol_for_align, make_mapping_symbol, add_mapping_symbol): New functions. * config/tc-nds32.h (enum mstate): New. (nds32_segment_info_type): Likewise. * configure.ac (--enable-dsp-ext, --enable-zol-ext): New options. * config.in: Regenerated. * configure: Regenerated. * config/tc-nds32.c (nds32_dx_regs): Set the value according to the configuration. (nds32_perf_ext, nds32_perf_ext2, nds32_string_ext, nds32_audio_ext): Likewise. (nds32_dsp_ext): New variable. Set the value according to the configuration. (nds32_zol_ext): Likewise. (asm_desc, nds32_pseudo_opcode_table): Make them static. (nds32_set_elf_flags_by_insn): Updated. (nds32_check_insn_available): Updated. (nds32_str_tolower): New function. * config/tc-nds32.c (relax_table): Updated. (md_begin): Updated. (md_assemble): Use XNEW macro to allocate space for `insn.info', and then remember to free it. (md_section_align): Cast (-1) to ValueT. (nds32_get_align): Cast (~0U) to addressT. (nds32_relax_branch_instructions): Updated. (md_convert_frag): Add new local variable `final_r_type'. (invalid_prev_frag): Add new bfd_boolean parameter `relax'. All callers changed. * config/tc-nds32.c (struct nds32_relocs_pattern): Add `insn' field. (struct nds32_hint_map): Add `option_list' field. (struct suffix_name, suffix_table): Remove the unused `pic' field. (do_pseudo_b, do_pseudo_bal): Remove the suffix checking. (do_pseudo_la_internal, do_pseudo_pushpopm): Indent. (relax_hint_bias, relax_hint_id_current): New static variables. (reset_bias, relax_hint_begin): New variables. (nds_itoa): New function. (CLEAN_REG, GET_OPCODE): New macros. (struct relax_hint_id): New. (nds32_relax_hint): For .relax_hint directive, we can use `begin' and `end' to mark the relax pattern without giving exactly id number. (nds32_elf_append_relax_relocs): Handle the case that the .relax_hint directives are attached to pseudo instruction. (nds32_elf_save_pseudo_pattern): Change the second parameter from instruction's opcode to byte code. (nds32_elf_build_relax_relation): Add new bfd_boolean parameter `pseudo_hint'. (nds32_lookup_pseudo_opcode): Fix the overflow issue. (enum nds32_insn_type): Add N32_RELAX_ALU1 and N32_RELAX_16BIT. (nds32_elf_record_fixup_exp, relax_ls_table, hint_map, nds32_find_reloc_table, nds32_match_hint_insn, nds32_parse_name): Updated. * config/tc-nds32.h (MAX_RELAX_NUM): Extend it to 6. (enum nds32_relax_hint_type): Merge NDS32_RELAX_HINT_LA and NDS32_RELAX_HINT_LS into NDS32_RELAX_HINT_LALS. Add NDS32_RELAX_HINT_LA_PLT, NDS32_RELAX_HINT_LA_GOT and NDS32_RELAX_HINT_LA_GOTOFF. * config/tc-nds32.h (relax_ls_table): Add floating load/store to gp relax pattern. (hint_map, nds32_find_reloc_table): Likewise. * configure.ac: Define NDS32_LINUX_TOOLCHAIN. * configure: Regenerated. * config.in: Regenerated. * config/tc-nds32.h (enum nds32_ramp): Updated. (enum nds32_relax_hint_type): Likewise. * config/tc-nds32.c: Include "errno.h" and "limits.h". (relax_ls_table): Add TLS relax patterns. (nds32_elf_append_relax_relocs): Attach BFD_RELOC_NDS32_GROUP on each instructions of TLS patterns. (nds32_elf_record_fixup_exp): Updated. (nds32_apply_fix): Likewise. (suffix_table): Add TLSDESC suffix. binutils* testsuite/binutils-all/objcopy.exp: Set the unsupported reloc number from 215 to 255 for NDS32. bfd * elf32-nds32.c (nds32_elf_relax_loadstore): Remove the unused target features. (bfd_elf32_nds32_set_target_option): Remove the unused parameters. (nds32_elf_relax_piclo12, nds32_elf_relax_letlslo12, nds32_elf_relax_letlsadd, nds32_elf_relax_letlsls, nds32_elf_relax_pltgot_suff, nds32_elf_relax_got_suff nds32_elf_relax_gotoff_suff, calculate_plt_memory_address, calculate_plt_offset, calculate_got_memory_address, nds32_elf_check_dup_relocs): Removed. All callers changed. * elf32-nds32.h: Remove the unused macros and defines. (elf_nds32_link_hash_table): Remove the unused variable. (bfd_elf32_nds32_set_target_option): Update prototype. (nds32_elf_ex9_init): Removed. * elf32-nds32.c (nds32_convert_32_to_16): Updated. * elf32-nds32.c (HOWTO2, HOWTO3): Define new HOWTO macros to initialize array nds32_elf_howto_table in any order without lots of EMPTY_HOWTO. (nds32_reloc_map): Updated. * reloc.c: Add BFD_RELOC_NDS32_LSI. * bfd-in2.h: Regenerated. * bfd/libbfd.h: Regenerated. * elf32-nds32.c (nds32_elf_relax_howto_table): Add R_NDS32_LSI. (nds32_reloc_map): Likewise. (nds32_elf_relax_flsi): New function. (nds32_elf_relax_section): Support floating load/store relaxation. * elf32-nds32.c (NDS32_GUARD_SEC_P, elf32_nds32_local_gp_offset): New macro. (struct elf_nds32_link_hash_entry): New `offset_to_gp' field. (struct elf_nds32_obj_tdata): New `offset_to_gp' and `hdr_size' fields. (elf32_nds32_allocate_local_sym_info, nds32_elf_relax_guard, nds32_elf_is_target_special_symbol, nds32_elf_maybe_function_sym): New functions. (nds32_info_to_howto_rel): Add BFD_ASSERT. (bfd_elf32_bfd_reloc_type_table_lookup, nds32_elf_link_hash_newfunc, nds32_elf_link_hash_table_create, nds32_elf_relocate_section, nds32_elf_relax_loadstore, nds32_elf_relax_lo12, nds32_relax_adjust_label, bfd_elf32_nds32_set_target_option, nds32_fag_mark_relax): Updated. (nds32_elf_final_sda_base): Improve it to find the better gp value. (insert_nds32_elf_blank): Must consider `len' when inserting blanks. * elf32-nds32.h (bfd_elf32_nds32_set_target_option): Update prototype. (struct elf_nds32_link_hash_table): Add new variable `hyper_relax'. * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): New function. (create_got_section): Likewise. (allocate_dynrelocs, nds32_elf_size_dynamic_sections, nds32_elf_relocate_section, nds32_elf_finish_dynamic_symbol): Updated. (nds32_elf_check_relocs): Fix the issue that the shared library may has TEXTREL entry in the dynamic section. (nds32_elf_create_dynamic_sections): Enable to call readonly_dynrelocs since the TEXTREL issue is fixed in the nds32_elf_check_relocs. (nds32_elf_finish_dynamic_sections): Update and add DT_RELASZ dynamic entry. (calculate_offset): Remove the unused parameter `pic_ext_target' and related codes. All callers changed. (elf_backend_dtrel_excludes_plt): Disable it temporarily since it will cause some errors for our test cases. * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Allow to link the generic object. * reloc.c: Add TLS relocations. * libbfd.h: Regenerated. * bfd-in2.h: Regenerated. * elf32-nds32.h (struct section_id_list_t): New. (elf32_nds32_lookup_section_id, elf32_nds32_check_relax_group, elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model): New prototypes. (elf32_nds32_compute_jump_table_size, elf32_nds32_local_tlsdesc_gotent): New macro. (nds32_insertion_sort, bfd_elf32_nds32_set_target_option, elf_nds32_link_hash_table): Updated. * elf32-nds32.c (enum elf_nds32_tls_type): New. (struct elf32_nds32_relax_group_t, struct relax_group_list_t): New. (elf32_nds32_add_dynreloc, patch_tls_desc_to_ie, get_tls_type, fls, ones32, list_insert, list_insert_sibling, dump_chain, elf32_nds32_check_relax_group, elf32_nds32_lookup_section_id, elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model): New functions. (elf_nds32_obj_tdata): Add new fields. (elf32_nds32_relax_group_ptr, nds32_elf_local_tlsdesc_gotent): New macros. (nds32_elf_howto_table): Add TLS relocations. (nds32_reloc_map): Likewise. (nds32_elf_copy_indirect_symbol, nds32_elf_size_dynamic_sections, nds32_elf_finish_dynamic_symbol, elf32_nds32_allocate_local_sym_info, nds32_elf_relocate_section, bfd_elf32_nds32_set_target_option, nds32_elf_check_relocs, allocate_dynrelocs): Updated. (nds32_elf_relax_section): Call nds32_elf_unify_tls_model. (dtpoff_base): Rename it to `gottpof' and then update it. opcodes * nds32-asm.c (operand_fields): Remove the unused fields. (nds32_opcodes): Remove the unused instructions. * nds32-dis.c (nds32_ex9_info): Removed. (nds32_parse_opcode): Updated. (print_insn_nds32): Likewise. * nds32-asm.c (config.h, stdlib.h, string.h): New includes. (LEX_SET_FIELD, LEX_GET_FIELD): Update defines. (nds32_asm_init, build_operand_hash_table, build_keyword_hash_table, build_opcode_hash_table): New functions. (nds32_keyword_table, nds32_keyword_count_table, nds32_field_table, nds32_opcode_table): New. (hw_ktabs): Declare it to a pointer rather than an array. (build_hash_table): Removed. * nds32-asm.h (enum): Add SYN_INPUT, SYN_OUTPUT, SYN_LOPT, SYN_ROPT and upadte HW_GPR and HW_INT. * nds32-dis.c (keywords): Remove const. (match_field): New function. (nds32_parse_opcode): Updated. * disassemble.c (disassemble_init_for_target): Add disassemble_init_nds32. * nds32-dis.c (eum map_type): New. (nds32_private_data): Likewise. (get_mapping_symbol_type, is_mapping_symbol, nds32_symbol_is_valid, nds32_add_opcode_hash_table, disassemble_init_nds32): New functions. (print_insn_nds32): Updated. * nds32-asm.c (parse_aext_reg): Add new parameter. (parse_re, parse_re2, parse_aext_reg): Only reduced registers are allowed to use. All callers changed. * nds32-asm.c (keyword_usr, keyword_sr): Updated. (operand_fields): Add new fields. (nds32_opcodes): Add new instructions. (keyword_aridxi_mx): New keyword. * nds32-asm.h (enum): Add NASM_ATTR_DSP_ISAEXT, HW_AEXT_ARIDXI_MX and NASM_ATTR_ZOL. (ALU2_1, ALU2_2, ALU2_3): New macros. * nds32-dis.c (nds32_filter_unknown_insn): Updated.
2018-09-18Fix Aarch64 bug in warning filtering.Tamar Christina2-1/+6
This fixes a small bug with the warning filtering code, which when a line has generated a warning and a template decode error (due to the way templates are resolved) which would not have been emitted and warnings are being suppressed with -W it would erroneously emit the error. I have no testcase for this because the only places we generate warnings during encoding/decoding now is using msr/mrs and system registers. They don't have a template that would trigger this. However an upcoming patch series will have tests in it which would expose this bug. gas/ChangeLog: * config/tc-aarch64.c (output_operand_error_report): Apply filtering to current instead of head message.
2018-09-17RISC-V: bge[u] should get higher priority than ble[u].Jim Wilson3-0/+23
2018-09-17 Kito Cheng <kito@andestech.com> gas/ * testsuite/gas/riscv/bge.d: New. * testsuite/gas/riscv/bge.s: Likewise. opcodes/ * riscv-opc.c (riscv_opcodes): Adjust the order of ble and bleu.
2018-09-17x86: Set EVex=2 on EVEX.128 only vmovd and vmovqH.J. Lu6-0/+79
EVEX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64", "VMOVD r64/m64, xmm2", "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2" can only be encoded with EVEX.128. Set EVex=2 on EVEX.128 only vmovd and vmovq. gas/ PR gas/23670 * testsuite/gas/i386/evex-lig-2.d: New file. * testsuite/gas/i386/evex-lig-2.s: Likewise. * testsuite/gas/i386/x86-64-evex-lig-2.d: Likewise. * testsuite/gas/i386/x86-64-evex-lig-2.s: Likewise. * testsuite/gas/i386/i386.exp: Run evex-lig-2 and x86-64-evex-lig-2. opcodes/ PR gas/23670 * i386-dis-evex.h (evex_table): Use EVEX_LEN_0F6E_P_2, EVEX_LEN_0F7E_P_1, EVEX_LEN_0F7E_P_2 and EVEX_LEN_0FD6_P_2. (EVEX_LEN_0F6E_P_2): New EVEX_LEN_TABLE entry. (EVEX_LEN_0F7E_P_1): Likewise. (EVEX_LEN_0F7E_P_2): Likewise. (EVEX_LEN_0FD6_P_2): Likewise. * i386-dis.c (USE_EVEX_LEN_TABLE): New. (EVEX_LEN_TABLE): Likewise. (EVEX_LEN_0F6E_P_2): New enum. (EVEX_LEN_0F7E_P_1): Likewise. (EVEX_LEN_0F7E_P_2): Likewise. (EVEX_LEN_0FD6_P_2): Likewise. (evex_len_table): New. (get_valid_dis386): Handle USE_EVEX_LEN_TABLE. * i386-opc.tbl: Set EVex=2 on EVEX.128 only vmovd and vmovq. * i386-tbl.h: Regenerated.
2018-09-17x86: Set Vex=1 on VEX.128 only vmovd and vmovqH.J. Lu12-336/+131
AVX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64" and "VMOVD r64/m64, xmm2" can only be encoded with VEX.128. Set Vex=1 on VEX.128 only vmovd and vmovq. gas/ PR gas/23665 * testsuite/gas/i386/avx-scalar.s: Remove vmovq and vmovd tests. * testsuite/gas/i386/x86-64-avx-scalar.s: Likewise. * testsuite/gas/i386/avx-scalar-intel.d: Updated. * testsuite/gas/i386/avx-scalar.d: Likewise. * testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise. * testsuite/gas/i386/x86-64-avx-scalar.d: Likewise. * testsuite/gas/i386/i386.exp: Run avx-scalar2 and x86-64-avx-scalar2. * testsuite/gas/i386/avx-scalar-2.d: New file. * testsuite/gas/i386/avx-scalar-2.s: Likewise. * testsuite/gas/i386/x86-64-avx-scalar-2.d: Likewise. * testsuite/gas/i386/x86-64-avx-scalar-2.s: Likewise. opcodes/ PR gas/23665 * i386-dis.c (vex_len_table): Update VEX_LEN_0F6E_P_2 and VEX_LEN_0F7E_P_2 entries. * i386-opc.tbl: Set Vex=1 on VEX.128 only vmovd and vmovq. * i386-tbl.h: Regenerated.
2018-09-17x86: Add -mvexwig=[0|1] option to assemblerH.J. Lu13-11/+1545
Add -mvexwig=[0|1] option to x86 assembler to control how the assembler should encode the VEX.W bit in WIG VEX instructions. * gas/NEWS: Mention -mvexwig=[0|1] option. * config/tc-i386.c (vexwig): New. (build_vex_prefix): Set the VEX.W bit for -mvexwig=1 for WIG VEX instructions. (OPTION_MVEXWIG): New. (md_longopts): Add -mvexwig=. (md_parse_option): Handle OPTION_MVEXWIG. (md_show_usage): Show -mvexwig=[0|1]. * doc/c-i386.texi: Document -mvexwig=[0|1]. * testsuite/gas/i386/avx-wig.d: New file. * testsuite/gas/i386/avx-wig.s: Likewise. * testsuite/gas/i386/avx2-wig.d: Likewise. * testsuite/gas/i386/avx2-wig.s: Likewise. * testsuite/gas/i386/x86-64-avx-wig.d: Likewise. * testsuite/gas/i386/x86-64-avx-wig.s: Likewise. * testsuite/gas/i386/x86-64-avx2-wig.d: Likewise. * testsuite/gas/i386/x86-64-avx2-wig.s: Likewise. * testsuite/gas/i386/i386.exp: Run avx-wig, avx2-wig, x86-64-avx-wig and x86-64-avx2-wig.
2018-09-17Remove bogus notarget in gas teststuiteAlan Modra15-18/+20
* testsuite/gas/arm/arch7.d: Delete notarget. * testsuite/gas/arm/arch7a-mp.d: Likewise. * testsuite/gas/arm/arch7em.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-5.d: Likewise. * testsuite/gas/arm/barrier.d: Likewise. * testsuite/gas/arm/bignum1.d: Likewise. * testsuite/gas/arm/thumb32.d: Likewise. * testsuite/gas/elf/dwarf2-1.d: Likewise. * testsuite/gas/elf/dwarf2-2.d: Likewise. * testsuite/gas/elf/dwarf2-4.d: Likewise. * testsuite/gas/elf/group2.d: Likewise. * testsuite/gas/arm/mapshort-elf.d: Only notarget pe and wince. * testsuite/gas/elf/dwarf2-3.d: Delete notarget, xfail ft32 and h8300. * testsuite/gas/elf/dwarf2-6.d: Delete notarget, xfail a few.
2018-09-17A few hppa testcase tidiesAlan Modra4-16/+11
binutils/ * testsuite/lib/binutils-common.exp (is_som_format): New proc. (run_dump_test): Correct target test for alternate .comm syntax. (get_standard_section_names): Handle som format. * testsuite/lib/utils-lib.exp (default_binutils_assemble_flags): Correct target test for alternate .comm syntax. gas/ * testsuite/gas/all/gas.exp (redef3): Don't xfail for hppa. (octa): Run for hppa. * testsuite/gas/elf/elf.exp (common1, common2): Likewise. * testsuite/gas/elf/symver.d: Delete notarget. ld/ * testsuite/ld-elf/comm-data5.d: Remove notarget for hppa. * testsuite/ld-scripts/defined6.d: Likewise.
2018-09-17Ensure that binutils test names are unique.Nick Clifton8-7/+19
binutils* testsuite/binutils-all/compress.exp: Rename second "objcopy zlib-gnu compress debug sections 3" test to "objcopy zlib-gabi compress debug sections 3" and use gabi object files instead of gnu object files. * testsuite/binutils-all/objcopy.exp: Add suffix to the names of the "ELF group" tests. * testsuite/binutils-all/readelf.exp (proc readelf_find_size): Add an iteration parameter and include it in the name of the test. Update callers to include an iteration count. gas * testuite/gas/elf/group0a.d: Add extra details to the test name. * testuite/gas/elf/group0b.d: Likewise. * testuite/gas/elf/group1a.d: Likewise. * testuite/gas/elf/group1b.d: Likewise. * testuite/gas/elf/group0b.d: Likewise. * testuite/gas/elf/section9.d: Likewise. * testuite/gas/i386/ilp32/lns/lns-common-1.d: Likewise. * testuite/gas/i386/ilp32/lns/lns-duplicate-1.d: Likewise. ld * testuite/ld/ld-elf/audit.exp: Differentiate the names of the two "Run with shared with --audit" tests. * testuite/ld/ld-elf/compress.exp: Differentiate the zlib compressed debug output test names. * testuite/ld/ld-i386/tlspie1.d: Add extra details to the test name. * testuite/ld/ld-i386/tlspie2.d: Likewise. * testuite/ld/ld-size/size.exp: Add missing escapes to the end of lines in the size-3e test. * testuite/ld/ld-unique/unique.exp: Differentiate the names of the two "Checking unique PIC object" tests. * testuite/ld/ld-x86-64/tlspie1.d: Add extra details to the test name.
2018-09-15x86: Set Vex=1 on VEX.128 only vmovqH.J. Lu5-32/+40
AVX "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2" can only be encoded with VEX.128. Set Vex=1 on VEX.128 only vmovq and update assembler tests. gas/ PR gas/23665 * testsuite/gas/i386/avx-scalar-intel.d: Updated. * testsuite/gas/i386/avx-scalar.d: Likewise. * testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise. * testsuite/gas/i386/x86-64-avx-scalar.d: Likewise. opcodes/ PR gas/23665 * i386-dis.c (vex_len_table): Update VEX_LEN_0F7E_P_1 and VEX_LEN_0FD6_P_2 entries. * i386-opc.tbl: Set Vex=1 on VEX.128 only vmovq. * i386-tbl.h: Regenerated.
2018-09-15Consolidate run_dump_testAlan Modra3-496/+8
This merges the three versions of run_dump_test. Improved warning handling versus the old gas version shows up a number of tests that need their disassembly updating: arm-linuxeabi +FAIL: ARM v1 instructions arm-linuxeabi +FAIL: Accepted v8-a with ARMv8.1 AdvSIMD. arm-linuxeabi +FAIL: bl local instructions for v4t. arm-linuxeabi +FAIL: UDF and some that now fail due to detecting assembly warnings: h8300-elf +FAIL: binutils-all/strip-13 h8300-elf +FAIL: binutils-all/strip-14 h8300-elf +FAIL: binutils-all/strip-15 I've generally kept the union of all run_dump_test features, except that the ld target aliases "cfi" and "shared" have disappeared, as has the binutils substitution of $srcdir as $scrdir/$subdir. binutils/ * testsuite/binutils-all/add-symbol.d: Add "section_subst: no". * testsuite/binutils-all/elfedit.exp: Don't set tempfile or copyfile. * testsuite/binutils-all/symbols-1.d, * testsuite/binutils-all/symbols-2.d, * testsuite/binutils-all/symbols-3.d, * testsuite/binutils-all/symbols-4.d: Quote '*' and '!'. * testsuite/binutils-all/add-empty-section.d, * testsuite/binutils-all/add-section.d, * testsuite/binutils-all/elfedit.exp, * testsuite/binutils-all/note-1.d, * testsuite/binutils-all/pr23633.d: Add $subdir after $srcdir. * testsuite/config/default.exp (AS, ASFLAGS): Define. * testsuite/config/hppa.sed: Handle all common symbols. * testsuite/lib/binutils-common.exp (run_dump_test): New proc, merged from three other versions. (slurp_options, file_contents, set_file_contents): Likewise. (big_or_little_endian, get_standard_section_names): Likewise. * testsuite/lib/utils-lib.exp (run_dump_test): Delete. (slurp_options, proc file_contents): Delete. (get_standard_section_names): Delete. gas/ * testsuite/config/default.exp: Make tmpdir. * testsuite/lib/gas-defs.exp (run_dump_test): Delete. (get_standard_section_names, slurp_options): Delete. ld/ * testsuite/ld-d10v/reloc-007.d, * testsuite/ld-d10v/reloc-008.d, * testsuite/ld-d10v/reloc-015.d, * testsuite/ld-d10v/reloc-016.d: Remove "error:". * testsuite/ld-elf/eh-frame-hdr.d, * testsuite/ld-elf/eh5.d, * testsuite/ld-gc/personality.d: Replace "cfi" and "shared" in target list with appropriate proc. * testsuite/ld-elf/frame.exp: Use check_shared_lib_support rather than "istarget shared". * testsuite/lib/ld-lib.exp (proc big_or_little_endian): Delete. (run_dump_test, slurp_options, file_contents): Delete. (set_file_contents, istarget): Delete.
2018-09-15run_dump_test replace PROG with DUMPPROG in gas and ldAlan Modra33-54/+90
To be compatible with the binutils version, that uses PROG for the tool under test and DUMPPROG for the dump tool. gas/ * testsuite/gas/mips/aent-2.d, * testsuite/gas/mips/aent-mdebug-2.d, * testsuite/gas/mips/attr-gnu-4-0.d, * testsuite/gas/mips/attr-gnu-4-1.d, * testsuite/gas/mips/attr-gnu-4-2.d, * testsuite/gas/mips/attr-gnu-4-3.d, * testsuite/gas/mips/attr-gnu-4-5.d, * testsuite/gas/mips/attr-gnu-4-6.d, * testsuite/gas/mips/attr-gnu-4-7.d, * testsuite/gas/mips/attr-none-double.d, * testsuite/gas/mips/attr-none-o32-fp64-nooddspreg.d, * testsuite/gas/mips/attr-none-o32-fp64.d, * testsuite/gas/mips/attr-none-o32-fpxx.d, * testsuite/gas/mips/attr-none-single-float.d, * testsuite/gas/mips/attr-none-soft-float.d, * testsuite/gas/mips/elf-rel27.d, * testsuite/gas/mips/loc-swap-2.d, * testsuite/gas/mips/loc-swap-3.d, * testsuite/gas/mips/loc-swap.d, * testsuite/gas/mips/micromips@loc-swap-2.d, * testsuite/gas/mips/micromips@loc-swap.d, * testsuite/gas/mips/micromips@stabs-symbol-type.d, * testsuite/gas/mips/mips16-intermix.d, * testsuite/gas/mips/mips16@loc-swap-2.d, * testsuite/gas/mips/mips16@loc-swap.d, * testsuite/gas/mips/mips16@stabs-symbol-type.d, * testsuite/gas/mips/mips16e@loc-swap.d, * testsuite/gas/mips/no-odd-spreg.d, * testsuite/gas/mips/odd-spreg.d, * testsuite/gas/mips/r6-attr-none-double.d, * testsuite/gas/mips/stabs-symbol-type.d, * testsuite/lib/gas-defs.exp (run_dump_test): Replace PROG with DUMPPROG. ld/ * testsuite/lib/ld-lib.exp (run_dump_test): Replace PROG with DUMPPROG.
2018-09-15gas testuite fixes: don't match dump.oAlan Modra246-253/+503
The consolidated run_dump_test will use object file names based on the source file name, like the current ld version. * testsuite/gas/elf/symver.d, * testsuite/gas/ft32/insn.d, * testsuite/gas/ft32/insnsc.d, * testsuite/gas/i386/ilp32/elf/symver.d, * testsuite/gas/lm32/csr.d, * testsuite/gas/lm32/insn.d, * testsuite/gas/m68hc11/9s12x-exg-sex-tfr.d, * testsuite/gas/m68hc11/9s12x-mov.d, * testsuite/gas/m68hc11/hexprefix.d, * testsuite/gas/m68hc11/insns9s12x.d, * testsuite/gas/m68hc11/insns9s12xg.d, * testsuite/gas/mep/dj1.be.d, * testsuite/gas/mep/dj1.le.d, * testsuite/gas/mips/set-arch.d, * testsuite/gas/mips/tls-o32.d, * testsuite/gas/nios2/branch-r2.d, * testsuite/gas/nios2/branch.d, * testsuite/gas/pdp11/absreloc.d, * testsuite/gas/pdp11/opcode.d, * testsuite/gas/pdp11/pr14480.d, * testsuite/gas/pdp11/pr23481.d, * testsuite/gas/ppc/xcoff-dwsect-1-32.d, * testsuite/gas/ppc/xcoff-dwsect-1-64.d, * testsuite/gas/rx/abs.d, * testsuite/gas/rx/adc.d, * testsuite/gas/rx/add.d, * testsuite/gas/rx/and.d, * testsuite/gas/rx/bclr.d, * testsuite/gas/rx/bcnd.d, * testsuite/gas/rx/bmcnd.d, * testsuite/gas/rx/bnot.d, * testsuite/gas/rx/bra.d, * testsuite/gas/rx/brk.d, * testsuite/gas/rx/bset.d, * testsuite/gas/rx/bsr.d, * testsuite/gas/rx/btst.d, * testsuite/gas/rx/clrpsw.d, * testsuite/gas/rx/cmp.d, * testsuite/gas/rx/dbt.d, * testsuite/gas/rx/div.d, * testsuite/gas/rx/divu.d, * testsuite/gas/rx/emaca.d, * testsuite/gas/rx/emsba.d, * testsuite/gas/rx/emul.d, * testsuite/gas/rx/emula.d, * testsuite/gas/rx/emulu.d, * testsuite/gas/rx/fadd.d, * testsuite/gas/rx/fcmp.d, * testsuite/gas/rx/fdiv.d, * testsuite/gas/rx/fmul.d, * testsuite/gas/rx/fsqrt.d, * testsuite/gas/rx/fsub.d, * testsuite/gas/rx/ftoi.d, * testsuite/gas/rx/ftou.d, * testsuite/gas/rx/gprel.d, * testsuite/gas/rx/int.d, * testsuite/gas/rx/itof.d, * testsuite/gas/rx/jmp.d, * testsuite/gas/rx/jsr.d, * testsuite/gas/rx/machi.d, * testsuite/gas/rx/maclh.d, * testsuite/gas/rx/maclo.d, * testsuite/gas/rx/max.d, * testsuite/gas/rx/min.d, * testsuite/gas/rx/mov.d, * testsuite/gas/rx/movco.d, * testsuite/gas/rx/movli.d, * testsuite/gas/rx/movu.d, * testsuite/gas/rx/msbhi.d, * testsuite/gas/rx/msblh.d, * testsuite/gas/rx/msblo.d, * testsuite/gas/rx/mul.d, * testsuite/gas/rx/mulhi.d, * testsuite/gas/rx/mullh.d, * testsuite/gas/rx/mullo.d, * testsuite/gas/rx/mvfacgu.d, * testsuite/gas/rx/mvfachi.d, * testsuite/gas/rx/mvfaclo.d, * testsuite/gas/rx/mvfacmi.d, * testsuite/gas/rx/mvfc.d, * testsuite/gas/rx/mvfcp.d, * testsuite/gas/rx/mvtacgu.d, * testsuite/gas/rx/mvtachi.d, * testsuite/gas/rx/mvtaclo.d, * testsuite/gas/rx/mvtc.d, * testsuite/gas/rx/mvtcp.d, * testsuite/gas/rx/neg.d, * testsuite/gas/rx/nop.d, * testsuite/gas/rx/not.d, * testsuite/gas/rx/opecp.d, * testsuite/gas/rx/or.d, * testsuite/gas/rx/pop.d, * testsuite/gas/rx/popc.d, * testsuite/gas/rx/popm.d, * testsuite/gas/rx/pr19665.d, * testsuite/gas/rx/pr22737.d, * testsuite/gas/rx/push.d, * testsuite/gas/rx/pushc.d, * testsuite/gas/rx/pushm.d, * testsuite/gas/rx/r-bcc.d, * testsuite/gas/rx/r-bra.d, * testsuite/gas/rx/racl.d, * testsuite/gas/rx/racw.d, * testsuite/gas/rx/rdacl.d, * testsuite/gas/rx/rdacw.d, * testsuite/gas/rx/revl.d, * testsuite/gas/rx/revw.d, * testsuite/gas/rx/rmpa.d, * testsuite/gas/rx/rolc.d, * testsuite/gas/rx/rorc.d, * testsuite/gas/rx/rotl.d, * testsuite/gas/rx/rotr.d, * testsuite/gas/rx/round.d, * testsuite/gas/rx/rte.d, * testsuite/gas/rx/rtfi.d, * testsuite/gas/rx/rts.d, * testsuite/gas/rx/rtsd.d, * testsuite/gas/rx/sat.d, * testsuite/gas/rx/satr.d, * testsuite/gas/rx/sbb.d, * testsuite/gas/rx/sccnd.d, * testsuite/gas/rx/scmpu.d, * testsuite/gas/rx/setpsw.d, * testsuite/gas/rx/shar.d, * testsuite/gas/rx/shll.d, * testsuite/gas/rx/shlr.d, * testsuite/gas/rx/smovb.d, * testsuite/gas/rx/smovf.d, * testsuite/gas/rx/smovu.d, * testsuite/gas/rx/sstr.d, * testsuite/gas/rx/stnz.d, * testsuite/gas/rx/stz.d, * testsuite/gas/rx/sub.d, * testsuite/gas/rx/suntil.d, * testsuite/gas/rx/swhile.d, * testsuite/gas/rx/tst.d, * testsuite/gas/rx/utof.d, * testsuite/gas/rx/wait.d, * testsuite/gas/rx/xchg.d, * testsuite/gas/rx/xor.d, * testsuite/gas/s12z/abs.d, * testsuite/gas/s12z/adc-imm.d, * testsuite/gas/s12z/adc-opr.d, * testsuite/gas/s12z/add-imm.d, * testsuite/gas/s12z/add-opr.d, * testsuite/gas/s12z/and-imm.d, * testsuite/gas/s12z/and-opr.d, * testsuite/gas/s12z/and-or-cc.d, * testsuite/gas/s12z/bfext-special.d, * testsuite/gas/s12z/bfext.d, * testsuite/gas/s12z/bit-manip.d, * testsuite/gas/s12z/bit.d, * testsuite/gas/s12z/bra-expression-defined.d, * testsuite/gas/s12z/bra-expression-undef.d, * testsuite/gas/s12z/bra.d, * testsuite/gas/s12z/brclr-symbols.d, * testsuite/gas/s12z/brset-clr-opr-imm-rel.d, * testsuite/gas/s12z/brset-clr-opr-reg-rel.d, * testsuite/gas/s12z/brset-clr-reg-imm-rel.d, * testsuite/gas/s12z/brset-clr-reg-reg-rel.d, * testsuite/gas/s12z/clb.d, * testsuite/gas/s12z/clr-opr.d, * testsuite/gas/s12z/clr.d, * testsuite/gas/s12z/cmp-imm.d, * testsuite/gas/s12z/cmp-opr-inc.d, * testsuite/gas/s12z/cmp-opr-rdirect.d, * testsuite/gas/s12z/cmp-opr-reg.d, * testsuite/gas/s12z/cmp-opr-rindirect.d, * testsuite/gas/s12z/cmp-opr-sxe4.d, * testsuite/gas/s12z/cmp-opr-xys.d, * testsuite/gas/s12z/cmp-s-imm.d, * testsuite/gas/s12z/cmp-s-opr.d, * testsuite/gas/s12z/cmp-xy.d, * testsuite/gas/s12z/com-opr.d, * testsuite/gas/s12z/complex-shifts.d, * testsuite/gas/s12z/db-tb-cc-opr.d, * testsuite/gas/s12z/db-tb-cc-reg.d, * testsuite/gas/s12z/dbCC.d, * testsuite/gas/s12z/dec-opr.d, * testsuite/gas/s12z/dec.d, * testsuite/gas/s12z/div.d, * testsuite/gas/s12z/eor.d, * testsuite/gas/s12z/exg.d, * testsuite/gas/s12z/ext24-ld-xy.d, * testsuite/gas/s12z/inc-opr.d, * testsuite/gas/s12z/inc.d, * testsuite/gas/s12z/inh.d, * testsuite/gas/s12z/jmp.d, * testsuite/gas/s12z/jsr.d, * testsuite/gas/s12z/ld-imm-page2.d, * testsuite/gas/s12z/ld-imm.d, * testsuite/gas/s12z/ld-immu18.d, * testsuite/gas/s12z/ld-large-direct.d, * testsuite/gas/s12z/ld-opr.d, * testsuite/gas/s12z/ld-s-opr.d, * testsuite/gas/s12z/ld-small-direct.d, * testsuite/gas/s12z/lea-immu18.d, * testsuite/gas/s12z/lea.d, * testsuite/gas/s12z/mac.d, * testsuite/gas/s12z/min-max.d, * testsuite/gas/s12z/mod.d, * testsuite/gas/s12z/mov.d, * testsuite/gas/s12z/mul-imm.d, * testsuite/gas/s12z/mul-opr-opr.d, * testsuite/gas/s12z/mul-opr.d, * testsuite/gas/s12z/mul-reg.d, * testsuite/gas/s12z/mul.d, * testsuite/gas/s12z/neg-opr.d, * testsuite/gas/s12z/not-so-simple-shifts.d, * testsuite/gas/s12z/opr-18u.d, * testsuite/gas/s12z/opr-expr.d, * testsuite/gas/s12z/opr-ext-18.d, * testsuite/gas/s12z/opr-idx-24-reg.d, * testsuite/gas/s12z/opr-idx3-reg.d, * testsuite/gas/s12z/opr-idx3-xysp-24.d, * testsuite/gas/s12z/opr-indirect-expr.d, * testsuite/gas/s12z/opr-symbol.d, * testsuite/gas/s12z/or-imm.d, * testsuite/gas/s12z/or-opr.d, * testsuite/gas/s12z/p2-mul.d, * testsuite/gas/s12z/page2-inh.d, * testsuite/gas/s12z/psh-pul.d, * testsuite/gas/s12z/qmul.d, * testsuite/gas/s12z/rotate.d, * testsuite/gas/s12z/sat.d, * testsuite/gas/s12z/sbc-imm.d, * testsuite/gas/s12z/sbc-opr.d, * testsuite/gas/s12z/shift.d, * testsuite/gas/s12z/simple-shift.d, * testsuite/gas/s12z/single-ops.d, * testsuite/gas/s12z/specd6.d, * testsuite/gas/s12z/st-large-direct.d, * testsuite/gas/s12z/st-opr.d, * testsuite/gas/s12z/st-s-opr.d, * testsuite/gas/s12z/st-small-direct.d, * testsuite/gas/s12z/st-xy.d, * testsuite/gas/s12z/sub-imm.d, * testsuite/gas/s12z/sub-opr.d, * testsuite/gas/s12z/tfr.d, * testsuite/gas/s12z/trap.d, * testsuite/gas/sh/fdpic.d, * testsuite/gas/sh/sh2a-pic.d, * testsuite/gas/sh/sh2a.d: Don't match object file name. * testsuite/gas/wasm32/disass-2.d, * testsuite/gas/wasm32/disass.d: Likewise, and tidy regexps.
2018-09-15gas run_dump_test rename stderr and error-outputAlan Modra427-448/+877
Use warning_output and error_output, like the ld version of run_dump_test. Note that some tests used the wrong option, and this went undetected since the gas version of run_dump_test doesn't properly check tool error status. This patch corrects wrong options, in preparation for a later patch that will check error status. * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d, * testsuite/gas/aarch64/armv8_2-a-illegal.d, * testsuite/gas/aarch64/armv8_4-a-illegal.d, * testsuite/gas/aarch64/armv8_4-a-registers-illegal.d, * testsuite/gas/aarch64/deprecated.d, * testsuite/gas/aarch64/diagnostic.d, * testsuite/gas/aarch64/illegal-2.d, * testsuite/gas/aarch64/illegal-by-element.d, * testsuite/gas/aarch64/illegal-crypto-nofp.d, * testsuite/gas/aarch64/illegal-fcmla.d, * testsuite/gas/aarch64/illegal-fjcvtzs.d, * testsuite/gas/aarch64/illegal-fp16-nofp.d, * testsuite/gas/aarch64/illegal-ldapr.d, * testsuite/gas/aarch64/illegal-ldraa.d, * testsuite/gas/aarch64/illegal-lse.d, * testsuite/gas/aarch64/illegal-nofp-armv8_3.d, * testsuite/gas/aarch64/illegal-nofp16.d, * testsuite/gas/aarch64/illegal-ras-1.d, * testsuite/gas/aarch64/illegal-sysreg-2.d, * testsuite/gas/aarch64/illegal-sysreg-3.d, * testsuite/gas/aarch64/illegal.d, * testsuite/gas/aarch64/legacy_reg_names.d, * testsuite/gas/aarch64/pan-illegal.d, * testsuite/gas/aarch64/pr22529.d, * testsuite/gas/aarch64/rm-simd-ext.d, * testsuite/gas/aarch64/sve-invalid.d, * testsuite/gas/aarch64/sve-reg-diagnostic.d, * testsuite/gas/aarch64/sve-sysreg-invalid.d, * testsuite/gas/aarch64/sysreg-diagnostic.d, * testsuite/gas/aarch64/verbose-error.d, * testsuite/gas/all/byte.d, * testsuite/gas/all/org-1.d, * testsuite/gas/all/org-2.d, * testsuite/gas/all/org-3.d, * testsuite/gas/all/sleb128-9.d, * testsuite/gas/arc/asm-errors-2.d, * testsuite/gas/arc/asm-errors-3.d, * testsuite/gas/arc/asm-errors.d, * testsuite/gas/arc/attr-rf16.d, * testsuite/gas/arc/relocs-errors.d, * testsuite/gas/arc/textinsn-errors.d, * testsuite/gas/arm/addsw-bad.d, * testsuite/gas/arm/addthumb2err.d, * testsuite/gas/arm/adr-invalid.d, * testsuite/gas/arm/arch7em-bad-1.d, * testsuite/gas/arm/arch7em-bad-2.d, * testsuite/gas/arm/arch7em-bad-3.d, * testsuite/gas/arm/arch7m-bad.d, * testsuite/gas/arm/archv6s-m-bad.d, * testsuite/gas/arm/archv6t2-bad.d, * testsuite/gas/arm/arm-idiv-bad.d, * testsuite/gas/arm/arm-it-bad-2.d, * testsuite/gas/arm/arm-it-bad-3.d, * testsuite/gas/arm/arm-it-bad.d, * testsuite/gas/arm/arm3-bad.d, * testsuite/gas/arm/arm7-bad.d, * testsuite/gas/arm/armv1-bad.d, * testsuite/gas/arm/armv1.d, * testsuite/gas/arm/armv2-mp-bad.d, * testsuite/gas/arm/armv8-2-fp16-scalar-bad.d, * testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb.d, * testsuite/gas/arm/armv8-2-fp16-simd-warning.d, * testsuite/gas/arm/armv8-a+rdma-warning.d, * testsuite/gas/arm/armv8-a-bad.d, * testsuite/gas/arm/armv8-a-it-bad.d, * testsuite/gas/arm/armv8-r-bad.d, * testsuite/gas/arm/armv8-r-it-bad.d, * testsuite/gas/arm/armv8_2-a-fp16-illegal.d, * testsuite/gas/arm/armv8_3-a-fp-bad.d, * testsuite/gas/arm/armv8_3-a-simd-bad.d, * testsuite/gas/arm/barrier-bad-thumb.d, * testsuite/gas/arm/barrier-bad.d, * testsuite/gas/arm/bl-local-v4t.d, * testsuite/gas/arm/blx-bl-convert.d, * testsuite/gas/arm/blx-local.d, * testsuite/gas/arm/branch-reloc.d, * testsuite/gas/arm/copro-arm_v2plus-arm_v1.d, * testsuite/gas/arm/copro-arm_v5plus-arm_v4.d, * testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d, * testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d, * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d, * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d, * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d, * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d, * testsuite/gas/arm/crc32-armv8-a-bad.d, * testsuite/gas/arm/crc32-armv8-r-bad.d, * testsuite/gas/arm/depr-swp.d, * testsuite/gas/arm/dest-unpredictable.d, * testsuite/gas/arm/dotprod-illegal.d, * testsuite/gas/arm/dotprod-legacy-arch.d, * testsuite/gas/arm/forbid-armv7-idiv-ext.d, * testsuite/gas/arm/group-reloc-alu-encoding-bad.d, * testsuite/gas/arm/group-reloc-alu-parsing-bad.d, * testsuite/gas/arm/group-reloc-ldc-encoding-bad.d, * testsuite/gas/arm/group-reloc-ldc-parsing-bad.d, * testsuite/gas/arm/group-reloc-ldr-encoding-bad.d, * testsuite/gas/arm/group-reloc-ldr-parsing-bad.d, * testsuite/gas/arm/group-reloc-ldrs-encoding-bad.d, * testsuite/gas/arm/group-reloc-ldrs-parsing-bad.d, * testsuite/gas/arm/insn-error-a.d, * testsuite/gas/arm/insn-error-t.d, * testsuite/gas/arm/inst-po-2.d, * testsuite/gas/arm/iwmmxt-bad.d, * testsuite/gas/arm/iwmmxt-bad2.d, * testsuite/gas/arm/ld-sp-warn-cortex-m3.d, * testsuite/gas/arm/ld-sp-warn-cortex-m4.d, * testsuite/gas/arm/ld-sp-warn-v7.d, * testsuite/gas/arm/ld-sp-warn-v7a.d, * testsuite/gas/arm/ld-sp-warn-v7em.d, * testsuite/gas/arm/ld-sp-warn-v7m.d, * testsuite/gas/arm/ld-sp-warn-v7r.d, * testsuite/gas/arm/ld-sp-warn.d, * testsuite/gas/arm/ldgesb-bad.d, * testsuite/gas/arm/ldgesh-bad.d, * testsuite/gas/arm/ldr-bad.d, * testsuite/gas/arm/ldr-t-bad.d, * testsuite/gas/arm/ldrd-unpredictable.d, * testsuite/gas/arm/ldsgeb.d, * testsuite/gas/arm/ldsgeh.d, * testsuite/gas/arm/missing.d, * testsuite/gas/arm/mrs-msr-arm-v7-a-bad.d, * testsuite/gas/arm/mrs-msr-thumb-v7-m-bad.d, * testsuite/gas/arm/msr-imm-bad.d, * testsuite/gas/arm/msr-reg-bad.d, * testsuite/gas/arm/mul-overlap.d, * testsuite/gas/arm/neon-addressing-bad.d, * testsuite/gas/arm/neon-cond-bad.d, * testsuite/gas/arm/neon-ldst-align-bad.d, * testsuite/gas/arm/neon-ldst-es-bad.d, * testsuite/gas/arm/neon-suffix-bad.d, * testsuite/gas/arm/neon-vmov-bad.d, * testsuite/gas/arm/noarm.d, * testsuite/gas/arm/pr18256.d, * testsuite/gas/arm/pr18347.d, * testsuite/gas/arm/pr20429.d, * testsuite/gas/arm/pr22773.d, * testsuite/gas/arm/r15-bad.d, * testsuite/gas/arm/reloc-bad.d, * testsuite/gas/arm/req.d, * testsuite/gas/arm/shift-bad-pc.d, * testsuite/gas/arm/shift-bad.d, * testsuite/gas/arm/simd_by_scalar_low_regbank.d, * testsuite/gas/arm/simd_by_scalar_low_regbank_thumb.d, * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d, * testsuite/gas/arm/sp-pc-validations-bad-t.d, * testsuite/gas/arm/sp-pc-validations-bad.d, * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d, * testsuite/gas/arm/srs-arm.d, * testsuite/gas/arm/srs-t2.d, * testsuite/gas/arm/strex-bad-t.d, * testsuite/gas/arm/t16-bad.d, * testsuite/gas/arm/thumb-b-bad.d, * testsuite/gas/arm/thumb-w-bad.d, * testsuite/gas/arm/thumb2_bad_reg.d, * testsuite/gas/arm/thumb2_it_bad.d, * testsuite/gas/arm/thumb2_it_bad_auto.d, * testsuite/gas/arm/thumb2_ldmstm_bad.d, * testsuite/gas/arm/thumb2_ldstd_unpredictable.d, * testsuite/gas/arm/thumb2_mul-bad.d, * testsuite/gas/arm/thumb2_str-bad.d, * testsuite/gas/arm/thumb32.d, * testsuite/gas/arm/udf-bad.d, * testsuite/gas/arm/udf.d, * testsuite/gas/arm/undefined.d, * testsuite/gas/arm/undefined_coff.d, * testsuite/gas/arm/vcmp-zero-bad.d, * testsuite/gas/arm/vcvt-bad.d, * testsuite/gas/arm/vfp-bad.d, * testsuite/gas/arm/vfp-bad_t2.d, * testsuite/gas/arm/vfpv3-d16-bad.d, * testsuite/gas/arm/vldm-thumb-bad.d, * testsuite/gas/arm/vldmw-arm-bad.d, * testsuite/gas/arm/vldmw-thumb-bad.d, * testsuite/gas/arm/vstr-arm-bad.d, * testsuite/gas/arm/vstr-thumb-bad.d, * testsuite/gas/arm/weakdef-2.d, * testsuite/gas/avr/pr21621.d, * testsuite/gas/elf/bad-bss.d, * testsuite/gas/elf/bad-group.d, * testsuite/gas/elf/bad-group.err, * testsuite/gas/elf/bad-section-flag.d, * testsuite/gas/elf/bad-section-flag.err, * testsuite/gas/elf/bad-size.d, * testsuite/gas/elf/bad-size.err, * testsuite/gas/elf/common1.d, * testsuite/gas/elf/common2.d, * testsuite/gas/elf/common5a.d, * testsuite/gas/elf/common5b.d, * testsuite/gas/elf/common5c.d, * testsuite/gas/elf/common5d.d, * testsuite/gas/elf/dwarf2-10.d, * testsuite/gas/elf/dwarf2-8.d, * testsuite/gas/elf/dwarf2-9.d, * testsuite/gas/elf/pr21661.d, * testsuite/gas/elf/pseudo.d, * testsuite/gas/elf/section13.d, * testsuite/gas/i386/bad-size.d, * testsuite/gas/i386/bundle-bad.d, * testsuite/gas/i386/ilp32/x86-64-sse-check-warn.d, * testsuite/gas/i386/intel-intel.d, * testsuite/gas/i386/intel.d, * testsuite/gas/i386/intelok.d, * testsuite/gas/i386/mpx-add-bnd-prefix.d, * testsuite/gas/i386/sse-check-warn.d, * testsuite/gas/i386/string-ok.d, * testsuite/gas/i386/vgather-check-warn.d, * testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d, * testsuite/gas/i386/x86-64-sse-check-warn.d, * testsuite/gas/i386/x86-64-vgather-check-warn.d, * testsuite/gas/mips/addiu-error.d, * testsuite/gas/mips/branch-extern-3.d, * testsuite/gas/mips/branch-extern-4.d, * testsuite/gas/mips/branch-local-2.d, * testsuite/gas/mips/branch-local-3.d, * testsuite/gas/mips/branch-local-5.d, * testsuite/gas/mips/branch-local-6.d, * testsuite/gas/mips/branch-local-n32-2.d, * testsuite/gas/mips/branch-local-n32-3.d, * testsuite/gas/mips/branch-local-n32-5.d, * testsuite/gas/mips/branch-local-n32-6.d, * testsuite/gas/mips/branch-local-n64-2.d, * testsuite/gas/mips/branch-local-n64-3.d, * testsuite/gas/mips/branch-local-n64-5.d, * testsuite/gas/mips/branch-local-n64-6.d, * testsuite/gas/mips/branch-section-3.d, * testsuite/gas/mips/branch-section-4.d, * testsuite/gas/mips/branch-weak-3.d, * testsuite/gas/mips/branch-weak-4.d, * testsuite/gas/mips/break-error.d, * testsuite/gas/mips/crc-err.d, * testsuite/gas/mips/crc64-err.d, * testsuite/gas/mips/ginv-err.d, * testsuite/gas/mips/interaptiv-mr2@isa-override-1.d, * testsuite/gas/mips/interaptiv-mr2@isa-override-2.d, * testsuite/gas/mips/isa-override-2.d, * testsuite/gas/mips/lui-1.d, * testsuite/gas/mips/lui-2.d, * testsuite/gas/mips/macro-warn-1-n32.d, * testsuite/gas/mips/macro-warn-1.d, * testsuite/gas/mips/macro-warn-2.d, * testsuite/gas/mips/macro-warn-3.d, * testsuite/gas/mips/macro-warn-4.d, * testsuite/gas/mips/micromips-branch-delay.d, * testsuite/gas/mips/micromips-branch-relax-insn32-pic.d, * testsuite/gas/mips/micromips-branch-relax-insn32.d, * testsuite/gas/mips/micromips-branch-relax-pic.d, * testsuite/gas/mips/micromips-branch-relax.d, * testsuite/gas/mips/micromips-compact.d, * testsuite/gas/mips/micromips-insn32.d, * testsuite/gas/mips/micromips-noinsn32.d, * testsuite/gas/mips/micromips-size-1.d, * testsuite/gas/mips/micromips-trap.d, * testsuite/gas/mips/micromips-warn-branch-delay.d, * testsuite/gas/mips/micromips.d, * testsuite/gas/mips/micromips@addiu-error.d, * testsuite/gas/mips/micromips@mips5-fp.d, * testsuite/gas/mips/micromips@msa-relax.d, * testsuite/gas/mips/micromips@relax-at.d, * testsuite/gas/mips/micromips@relax-offset.d, * testsuite/gas/mips/micromips@relax.d, * testsuite/gas/mips/mips-gp32-fp64-pic.d, * testsuite/gas/mips/mips-gp32-fp64.d, * testsuite/gas/mips/mips-gp64-fp32-pic.d, * testsuite/gas/mips/mips-gp64-fp32.d, * testsuite/gas/mips/mips-gp64-fp64.d, * testsuite/gas/mips/mips16-32@mips16-insn-e.d, * testsuite/gas/mips/mips16-32@mips16-insn-t.d, * testsuite/gas/mips/mips16-32@mips16-macro-e.d, * testsuite/gas/mips/mips16-32@mips16-macro-t.d, * testsuite/gas/mips/mips16-32@mips16-macro.d, * testsuite/gas/mips/mips16-64@mips16-insn-e.d, * testsuite/gas/mips/mips16-64@mips16-insn-t.d, * testsuite/gas/mips/mips16-absolute-reloc-2.d, * testsuite/gas/mips/mips16-absolute-reloc-3.d, * testsuite/gas/mips/mips16-branch-addend-5.d, * testsuite/gas/mips/mips16-branch-unextended-1.d, * testsuite/gas/mips/mips16-branch-unextended-2.d, * testsuite/gas/mips/mips16-insn-e.d, * testsuite/gas/mips/mips16-insn-t.d, * testsuite/gas/mips/mips16-jal-t.d, * testsuite/gas/mips/mips16-macro-e.d, * testsuite/gas/mips/mips16-macro-t.d, * testsuite/gas/mips/mips16-pcrel-2.d, * testsuite/gas/mips/mips16-pcrel-3.d, * testsuite/gas/mips/mips16-pcrel-4.d, * testsuite/gas/mips/mips16-pcrel-5.d, * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d, * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d, * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d, * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d, * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d, * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d, * testsuite/gas/mips/mips16-pcrel-addend-pic-8.d, * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d, * testsuite/gas/mips/mips16-pcrel-delay-0.d, * testsuite/gas/mips/mips16-pcrel-delay-1.d, * testsuite/gas/mips/mips16-pcrel-n64-0.d, * testsuite/gas/mips/mips16-pcrel-n64-1.d, * testsuite/gas/mips/mips16-pcrel-pic-0.d, * testsuite/gas/mips/mips16-pcrel-pic-1.d, * testsuite/gas/mips/mips16-reg-error.d, * testsuite/gas/mips/mips16-relax-unextended-1.d, * testsuite/gas/mips/mips16-relax-unextended-2.d, * testsuite/gas/mips/mips16-reloc-error.d, * testsuite/gas/mips/mips16-sdrasp.d, * testsuite/gas/mips/mips16@addiu-error.d, * testsuite/gas/mips/mips16e-32@mips16-insn-e.d, * testsuite/gas/mips/mips16e-32@mips16-insn-t.d, * testsuite/gas/mips/mips16e-32@mips16-macro-e.d, * testsuite/gas/mips/mips16e-32@mips16-macro-t.d, * testsuite/gas/mips/mips16e-32@mips16-macro.d, * testsuite/gas/mips/mips16e-32@mips16e-64.d, * testsuite/gas/mips/mips16e2-32@mips16-insn-e.d, * testsuite/gas/mips/mips16e2-32@mips16-insn-t.d, * testsuite/gas/mips/mips16e2-32@mips16-macro-e.d, * testsuite/gas/mips/mips16e2-32@mips16-macro-t.d, * testsuite/gas/mips/mips16e2-32@mips16-macro.d, * testsuite/gas/mips/mips16e2-32@mips16e-64.d, * testsuite/gas/mips/mips16e2-copy-err.d, * testsuite/gas/mips/mips16e2-imm-error.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d, * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d, * testsuite/gas/mips/mips16e2-mt-err.d, * testsuite/gas/mips/mips16e2-reloc-error.d, * testsuite/gas/mips/mips16e2@lui-2.d, * testsuite/gas/mips/mips16e2@mips16-pcrel-2.d, * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d, * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d, * testsuite/gas/mips/mips1@isa-override-2.d, * testsuite/gas/mips/mips1@relax-offset.d, * testsuite/gas/mips/mips2@isa-override-2.d, * testsuite/gas/mips/mips32-mt.d, * testsuite/gas/mips/mips32@isa-override-2.d, * testsuite/gas/mips/mips32r2@isa-override-2.d, * testsuite/gas/mips/mips32r3@isa-override-2.d, * testsuite/gas/mips/mips32r5@isa-override-2.d, * testsuite/gas/mips/mips32r6@isa-override-2.d, * testsuite/gas/mips/mips5-fp.d, * testsuite/gas/mips/mips64-mips3d-incl.d, * testsuite/gas/mips/mips64-mips3d.d, * testsuite/gas/mips/mipsr6@mips5-fp.d, * testsuite/gas/mips/msa-relax.d, * testsuite/gas/mips/octeon3@isa-override-1.d, * testsuite/gas/mips/octeon3@isa-override-2.d, * testsuite/gas/mips/option-pic-relax-2.d, * testsuite/gas/mips/option-pic-relax-3.d, * testsuite/gas/mips/option-pic-relax-4.d, * testsuite/gas/mips/option-pic-relax-5.d, * testsuite/gas/mips/org-1.d, * testsuite/gas/mips/org-10.d, * testsuite/gas/mips/org-4.d, * testsuite/gas/mips/org-5.d, * testsuite/gas/mips/org-6.d, * testsuite/gas/mips/r3000@isa-override-2.d, * testsuite/gas/mips/r3000@relax-offset.d, * testsuite/gas/mips/r3900@isa-override-2.d, * testsuite/gas/mips/r3900@relax-offset.d, * testsuite/gas/mips/reginfo-2-n32.d, * testsuite/gas/mips/reginfo-2.d, * testsuite/gas/mips/relax-at.d, * testsuite/gas/mips/relax-offset.d, * testsuite/gas/mips/relax-swap1-mips1.d, * testsuite/gas/mips/relax-swap1-mips2.d, * testsuite/gas/mips/relax-swap2.d, * testsuite/gas/mips/relax.d, * testsuite/gas/mips/save-err.d, * testsuite/gas/mips/set-arch.d, * testsuite/gas/mips/xpa-err.d, * testsuite/gas/mips/xpa-virt-err.d, * testsuite/gas/msp430/bad.d, * testsuite/gas/msp430/errata_warns.d, * testsuite/gas/msp430/pr22133.d, * testsuite/gas/ppc/lsp-checks.d, * testsuite/gas/ppc/misalign.d, * testsuite/gas/ppc/spe2-checks.d, * testsuite/gas/riscv/bad-csr.d, * testsuite/gas/riscv/c-addi16sp-fail.d, * testsuite/gas/riscv/c-addi4spn-fail.d, * testsuite/gas/riscv/c-fld-fsd-fail.d, * testsuite/gas/riscv/c-lui-fail.d, * testsuite/gas/riscv/c-nonzero-imm.d, * testsuite/gas/riscv/c-nonzero-reg.d, * testsuite/gas/riscv/fence-fail.d, * testsuite/gas/riscv/lla64-fail.d, * testsuite/gas/riscv/rouding-fail.d, * testsuite/gas/sh/pcrel-hms.d, * testsuite/gas/sh/pcrel.d, * testsuite/gas/sparc/dcti-couples-v8.d, * testsuite/gas/sparc/dcti-couples-v9c.d, * testsuite/gas/tic6x/arch-invalid-1.d, * testsuite/gas/tic6x/arch-invalid-2.d, * testsuite/gas/tic6x/dir-junk.d, * testsuite/gas/tic6x/insns-bad-1.d, * testsuite/gas/tic6x/insns-bad-2.d, * testsuite/gas/tic6x/parallel-bad-1.d, * testsuite/gas/tic6x/parallel-bad-2.d, * testsuite/gas/tic6x/parallel-bad-3.d, * testsuite/gas/tic6x/parallel-bad-4.d, * testsuite/gas/tic6x/predicate-bad-1.d, * testsuite/gas/tic6x/predicate-bad-2.d, * testsuite/gas/tic6x/predicate-bad-3.d, * testsuite/gas/tic6x/reloc-bad-1.d, * testsuite/gas/tic6x/reloc-bad-2.d, * testsuite/gas/tic6x/reloc-bad-3.d, * testsuite/gas/tic6x/reloc-bad-4.d, * testsuite/gas/tic6x/reloc-bad-5.d, * testsuite/gas/tic6x/reloc-bad-6.d, * testsuite/gas/tic6x/resource-func-unit-1.d, * testsuite/gas/tic6x/resource-func-unit-2.d, * testsuite/gas/tic6x/sploop-bad-1.d, * testsuite/gas/tic6x/sploop-bad-2.d, * testsuite/gas/tic6x/sploop-bad-3.d, * testsuite/gas/tic6x/sploop-bad-4.d, * testsuite/gas/tic6x/sploop-bad-5.d, * testsuite/gas/tic6x/sploop-bad-6.d, * testsuite/gas/tic6x/sploop-bad-7.d, * testsuite/gas/tic6x/unwind-bad-1.d, * testsuite/gas/tic6x/unwind-bad-2.d, * testsuite/lib/gas-defs.exp (run_dump_tests): Replace stderr and error-output with warning_output and error_output. (slurp_options): Accept underscore rather than dash.
2018-09-15gas run_dump_test rename not-target and not-skipAlan Modra151-169/+323
Use notarget and noskip, like the ld testsuite. * testsuite/gas/aarch64/codealign.d, * testsuite/gas/aarch64/litpool.d, * testsuite/gas/aarch64/mapmisc.d, * testsuite/gas/aarch64/mapping.d, * testsuite/gas/aarch64/mapping2.d, * testsuite/gas/aarch64/mapping3.d, * testsuite/gas/aarch64/mapping4.d, * testsuite/gas/all/align.d, * testsuite/gas/all/fill-1.d, * testsuite/gas/all/incbin.d, * testsuite/gas/all/redef2.d, * testsuite/gas/all/redef3.d, * testsuite/gas/all/relax.d, * testsuite/gas/all/sleb128-2.d, * testsuite/gas/all/sleb128-4.d, * testsuite/gas/all/sleb128-5.d, * testsuite/gas/all/sleb128-7.d, * testsuite/gas/all/sleb128-9.d, * testsuite/gas/all/weakref1.d, * testsuite/gas/all/weakref1g.d, * testsuite/gas/all/weakref1l.d, * testsuite/gas/all/weakref1u.d, * testsuite/gas/all/weakref1w.d, * testsuite/gas/arm/abs12.d, * testsuite/gas/arm/arch4t.d, * testsuite/gas/arm/arch7.d, * testsuite/gas/arm/arch7a-mp.d, * testsuite/gas/arm/arch7em.d, * testsuite/gas/arm/archv8m-main-dsp-5.d, * testsuite/gas/arm/armv8a-automatic-hlt.d, * testsuite/gas/arm/armv8a-automatic-lda.d, * testsuite/gas/arm/attr-syntax.d, * testsuite/gas/arm/automatic-bw.d, * testsuite/gas/arm/automatic-cbz.d, * testsuite/gas/arm/automatic-clrex.d, * testsuite/gas/arm/automatic-lda.d, * testsuite/gas/arm/automatic-ldaex.d, * testsuite/gas/arm/automatic-ldaexb.d, * testsuite/gas/arm/automatic-ldrex.d, * testsuite/gas/arm/automatic-ldrexd.d, * testsuite/gas/arm/automatic-movw.d, * testsuite/gas/arm/automatic-sdiv.d, * testsuite/gas/arm/automatic-strexb.d, * testsuite/gas/arm/barrier-thumb.d, * testsuite/gas/arm/barrier.d, * testsuite/gas/arm/bignum1.d, * testsuite/gas/arm/blx-bad.d, * testsuite/gas/arm/blx-local.s, * testsuite/gas/arm/crc32-armv8-a-bad.d, * testsuite/gas/arm/crc32-armv8-a.d, * testsuite/gas/arm/crc32-armv8-r-bad.d, * testsuite/gas/arm/crc32-armv8-r.d, * testsuite/gas/arm/eabi_attr_1.d, * testsuite/gas/arm/fp-save.d, * testsuite/gas/arm/local_function.d, * testsuite/gas/arm/local_label_coff.d, * testsuite/gas/arm/local_label_wince.d, * testsuite/gas/arm/mapping.d, * testsuite/gas/arm/mapping2.d, * testsuite/gas/arm/mapping3.d, * testsuite/gas/arm/mapping4.d, * testsuite/gas/arm/mapshort-elf.d, * testsuite/gas/arm/mask_1-armv8-a.d, * testsuite/gas/arm/mask_1-armv8-r.d, * testsuite/gas/arm/mrs-msr-thumb-v6t2.d, * testsuite/gas/arm/mrs-msr-thumb-v7-m.d, * testsuite/gas/arm/mrs-msr-thumb-v7e-m.d, * testsuite/gas/arm/nomapping.d, * testsuite/gas/arm/pic.d, * testsuite/gas/arm/pic_vxworks.d, * testsuite/gas/arm/plt-1.d, * testsuite/gas/arm/reloc-bad.d, * testsuite/gas/arm/reloc-fdpic.d, * testsuite/gas/arm/t2-branch-global.d, * testsuite/gas/arm/thumb.d, * testsuite/gas/arm/thumb2_ldr_immediate_armv6.d, * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d, * testsuite/gas/arm/thumb2_pool.d, * testsuite/gas/arm/thumb2_vpool.d, * testsuite/gas/arm/thumb2_vpool_be.d, * testsuite/gas/arm/thumb32.d, * testsuite/gas/arm/thumbver.d, * testsuite/gas/arm/tls.d, * testsuite/gas/arm/tls_vxworks.d, * testsuite/gas/arm/undefined_coff.d, * testsuite/gas/arm/unwind.d, * testsuite/gas/arm/unwind_vxworks.d, * testsuite/gas/arm/v4bx.d, * testsuite/gas/arm/vfma1.d, * testsuite/gas/arm/vldm-arm.d, * testsuite/gas/arm/weakdef-1.d, * testsuite/gas/arm/weakdef-2.d, * testsuite/gas/arm/wince.d, * testsuite/gas/arm/wince_inst.d, * testsuite/gas/elf/bignums.d, * testsuite/gas/elf/common5a.d, * testsuite/gas/elf/common5b.d, * testsuite/gas/elf/common5c.d, * testsuite/gas/elf/common5d.d, * testsuite/gas/elf/dwarf2-1.d, * testsuite/gas/elf/dwarf2-10.d, * testsuite/gas/elf/dwarf2-11.d, * testsuite/gas/elf/dwarf2-12.d, * testsuite/gas/elf/dwarf2-13.d, * testsuite/gas/elf/dwarf2-14.d, * testsuite/gas/elf/dwarf2-15.d, * testsuite/gas/elf/dwarf2-16.d, * testsuite/gas/elf/dwarf2-17.d, * testsuite/gas/elf/dwarf2-18.d, * testsuite/gas/elf/dwarf2-2.d, * testsuite/gas/elf/dwarf2-3.d, * testsuite/gas/elf/dwarf2-4.d, * testsuite/gas/elf/dwarf2-5.d, * testsuite/gas/elf/dwarf2-6.d, * testsuite/gas/elf/dwarf2-7.d, * testsuite/gas/elf/dwarf2-8.d, * testsuite/gas/elf/dwarf2-9.d, * testsuite/gas/elf/group0c.d, * testsuite/gas/elf/group1a.d, * testsuite/gas/elf/group2.d, * testsuite/gas/elf/groupautoa.d, * testsuite/gas/elf/ifunc-1.d, * testsuite/gas/elf/section11.d, * testsuite/gas/elf/section4.d, * testsuite/gas/elf/section7.d, * testsuite/gas/elf/syms.d, * testsuite/gas/elf/symver.d, * testsuite/gas/i386/iamcu-1.d, * testsuite/gas/i386/iamcu-2.d, * testsuite/gas/i386/iamcu-3.d, * testsuite/gas/i386/iamcu-4.d, * testsuite/gas/i386/iamcu-5.d, * testsuite/gas/i386/ilp32/rex.d, * testsuite/gas/i386/k1om.d, * testsuite/gas/i386/l1om.d, * testsuite/gas/i386/rex.d, * testsuite/gas/mach-o/sections-3.d, * testsuite/gas/macros/irp.d, * testsuite/gas/macros/repeat.d, * testsuite/gas/macros/rept.d, * testsuite/gas/macros/semi.d, * testsuite/gas/macros/test2.d, * testsuite/gas/macros/test3.d, * testsuite/gas/macros/vararg.d, * testsuite/gas/mips/jal-svr4pic-local.d, * testsuite/gas/mips/micromips@jal-svr4pic-local.d, * testsuite/gas/mips/mips1@jal-svr4pic-local.d, * testsuite/gas/mips/r3000@jal-svr4pic-local.d, * testsuite/gas/ppc/machine.d, * testsuite/lib/gas-defs.exp (run_dump_test): Replace not-target and not-skip with notarget and noskip.
2018-09-15Remove run_dump_test support for objcopy as a dump programAlan Modra4-28/+24
We have three copies of run_dump_test in the testsuite. This is a first step towards consolidating them. A few tests use objcopy to convert to verilog or srec output, then check that output is as expected. Those tests can just as easily use objdump, keeping the set of dump programs (addr2line, nm, objdump, readelf, size) separate from utilities under test. That in turn makes auto-detecting the dump program possible in more places. binutils/ * testsuite/binutils-all/group-7a.d, * testsuite/binutils-all/group-7b.d, * testsuite/binutils-all/group-7c.d, * testsuite/binutils-all/symbols-1.d, * testsuite/binutils-all/symbols-2.d, * testsuite/binutils-all/symbols-3.d, * testsuite/binutils-all/symbols-4.d: Remove DUMPPROG. gas/ * testsuite/gas/mri/char.d: Don't objcopy to srec, objdump instead. * testsuite/gas/mri/float.d: Likewise. * testsuite/lib/gas-defs.exp (run_dump_test): Remove support for objcopy as a dump tool. ld/ * testsuite/ld-elf/interleave-0.d, * testsuite/ld-elf/interleave-4.d: Don't objcopy to srec, objdump instead. * testsuite/ld-gc/all-debug-sections.d, * testsuite/ld-scripts/provide-4.d, * testsuite/ld-scripts/provide-5.d, * testsuite/ld-scripts/provide-6.d, * testsuite/ld-scripts/provide-7.d, * testsuite/ld-scripts/provide-8.d, * testsuite/ld-scripts/segment-start.d: Remove PROG, specify nm instead. * testsuite/lib/ld-lib.exp (run_dump_test): Remove support for objcopy as a dump tool.
2018-09-14x86: Check non-WIG EVEX instruction encoding with -mevexwig=1H.J. Lu6-0/+68
Verify that -mevexwig=1 has no impact on non-WIG EVEX instruction encoding. PR gas/23642 * testsuite/gas/i386/evex-wig2.d: New file. * testsuite/gas/i386/evex-wig2.s: Likewise. * testsuite/gas/i386/x86-64-evex-wig2.d: Likewise. * testsuite/gas/i386/x86-64-evex-wig2.s: Likewise. * testsuite/gas/i386/i386.exp: Run evex-wig2 and x86-64-evex-wig2.
2018-09-14x86: Support VEX/EVEX WIG encodingH.J. Lu2-17/+21
Add VEXWIG, defined as 3, to indicate that the VEX.W/EVEX.W bit is ignored by such VEX/EVEX instructions, aka WIG instructions. Set VexW=3 on VEX/EVEX WIG instructions. Update assembler to check VEXWIG when setting the VEX.W bit. gas/ PR gas/23642 * config/tc-i386.c (build_vex_prefix): Check VEXWIG when setting the VEX.W bit. (build_evex_prefix): Check VEXWIG when setting the EVEX.W bit. opcodes/ PR gas/23642 * i386-opc.h (VEXWIG): New. * i386-opc.tbl: Set VexW=3 on VEX/EVEX WIG instructions. * i386-tbl.h: Regenerated.
2018-09-14x86: Handle unsupported static rounding in vcvt[u]si2sd in 32-bit modeH.J. Lu2-2/+7
Update x86 disassembler to handle the unsupported static rounding in vcvt[u]si2sd in 32-bit mode. gas/ PR binutils/23655 * testsuite/gas/i386/evex.d: Updated. opcodes/ PR binutils/23655 * i386-dis-evex.h: Replace EXxEVexR with EXxEVexR64 for vcvtsi2sd%LQ and vcvtusi2sd%LQ. * i386-dis.c (EXxEVexR64): New. (evex_rounding_64_mode): Likewise. (OP_Rounding): Handle evex_rounding_64_mode.
2018-09-14x86: Properly decode EVEX.W in vcvt[u]si2s[sd] in 32-bit modeH.J. Lu4-0/+35
Update x86 disassembler to ignore the EVEX.W bit in EVEX vcvt[u]si2s[sd] instructions in 32-bit mode. gas/ PR binutils/23655 * testsuite/gas/i386/evex.d: New file. * testsuite/gas/i386/evex.s: Likewise. * testsuite/gas/i386/i386.exp: Run evex. opcodes/ PR binutils/23655 * i386-dis-evex.h (evex_table): Replace Eq with Edqa for vcvtsi2ss%LQ, vcvtsi2sd%LQ, vcvtusi2ss%LQ and vcvtusi2sd%LQ. * i386-dis.c (Edqa): New. (dqa_mode): Likewise. (intel_operand_size): Handle dqa_mode as m_mode. (OP_E_register): Handle dqa_mode as dq_mode. (OP_E_memory): Set shift for dqa_mode based on address_mode.
2018-09-14csky: Support PC relative diff relocationLifang Xia3-0/+18
Define DIFF_EXPR_OK to Support PC relative diff relocation, and add CKCORE_PCREL32 relocation process bfd/ * elf32-csky.c (csky_elf_howto_table): Fill special_function of R_CKCORE_PCREL32. (csky_elf_relocate_section): Add R_CKCORE_PCREL32 process. gas/ * config/tc-csky.c (md_apply_fix): Transmit BFD_RELOC_32_PCREL to BFD_RELOC_CKCORE_PCREL32. (tc_gen_reloc): Trasmit BFD_RELOC_CKCORE_ADDR32 to BFD_RELOC_CKCORE_PCREL32 while pc-relative. * config/tc-csky.h (DIFF_EXPR_OK): Define to enable PC relative diff relocs.
2018-09-14x86: fold CRC32 templatesJan Beulich2-11/+12
Just like other insns having byte and word forms, these can also make use of the W modifier, which at the same time allows simplifying some other code a little bit.
2018-09-13x86: Swap destination/source to encode VEX only if possibleH.J. Lu2-3/+9
When encoding VEX, we can swap destination and source only if there are more than 1 register operand. * config/tc-i386.c (build_vex_prefix): Swap destination and source only if there are more than 1 register operand.
2018-09-13x86: also allow D on 3-operand insnsJan Beulich2-19/+29
For now this is just for VMOVS{D,S}.
2018-09-13x86: use D attribute also for SIMD templatesJan Beulich6-9/+126
Various moves come in load and store forms, and just like on the GPR and FPU sides there would better be only one pattern. In some cases this is not feasible because the opcodes are too different, but quite a few cases follow a similar standard scheme. Introduce Opcode_SIMD_FloatD and Opcode_SIMD_IntD, generalize handling in operand_size_match() (reverse operand handling there simply needs to match "straight" operand one), and fix a long standing, but so far only latent bug with when to zap found_reverse_match. Also once again drop IgnoreSize where pointlessly applied to templates touched anyway as well as *word when redundant with Reg*.
2018-09-13x86: fold ILP32 output of "opts" testsJan Beulich5-1296/+12
The output is identical to that of the LP64 tests. No need to fully spell this out twice.
2018-09-13x86: improve operand reversalJan Beulich6-11/+970
In quite a few cases the .s suffix or {load} / {store} prefixes did not work as intended, or produced errors when they're supposed to be ignored when it is not possible to carry out the request. The change here re-purposes(?) the .s suffix to no longer mean "store" (if that's what 's' did stand for), since the forms used in the base templates are not consistently loads (and we unlikely want to change that). The pseudo prefixes will now fulfill what their names say, i.e. {load} now only ever produces a load form encoding (if available) while {store} only ever produces a store form one (again if available). This requires minimal test suite adjustments, while the majority of the changes there are simply additions.
2018-09-13x86: add code comment on deprecated status of pseudo-suffixesJan Beulich2-1/+7
2018-09-13x86-64: bndmk, bndldx, and bndstx don't allow RIP-relative addressingJan Beulich3-0/+14
2018-09-13Fix the use by the RL78 assembler of an uninitialised field in the expresion ↵Nick Clifton2-0/+22
structure. * dwarf2dbg.c (generic_dwarf2_emit_offset): Use memset to initialise expression structure. (set_or_check_view): Likewise. (out_set_addr): Likewise. (emit_fixed_inc_line_addr): Likewise. (relax_inc_line_addr): Likewise. (out_debug_line): Likewise. (out_debug_ranges): Likewise. (out_debug_aranges): Likewise. (out_debug_info): Likewise.
2018-09-06PR23570, AVR .noinit section defaults to PROGBITSAlan Modra2-19/+5
Revert commit 8744470deab and instead use the standard special_sections support. PR 23570 bfd/ * elf32-avr.c (elf_avr_special_sections): New. (elf_backend_special_sections): Define. gas/ * config/tc-avr.c: Revert 2018-09-03 change.
2018-09-04gas, sparc: Allow non-fpop2 instructions before floating point branchesDaniel Cederman5-5/+44
Sparc V8 does not allow fpop2 instructions (floating point comparisons) immediately before floating point branches. From the SPARC Architecture Manual Version 8, section B.22 "Branch on Floating-point Condition Codes Instructions": "If the instruction executed immediately before an FBfcc is an FPop2 instruction, the result of the FBfcc is undefined. Therefore, at least one non FPop2 instruction should be executed between the FPop2 instruction and the FBfcc instruction." The existing check in GAS, however, does not allow any kind of floating point instruction before the branch. This patch adds an extra condition to only disallow fpop2 instructions. gas/ChangeLog: 2018-09-04 Daniel Cederman <cederman@gaisler.com> * config/tc-sparc.c (md_assemble): Allow non-fpop2 instructions before floating point branches for Sparc V8 and earlier. * testsuite/gas/sparc/sparc.exp: Execute the new test. * testsuite/gas/sparc/v8branch.d: New test. * testsuite/gas/sparc/v8branch.s: New test.
2018-09-03Change the .section directive for the AVR assembler so that the .noinit ↵Nick Clifton2-0/+26
section is always given the ELF NOBITS section type. PR gas/23570 * config/tc-avr.c (md_pseudo_table): Add entry for "secction". (avr_set_section): New function. Ensures that the .noinit section gets the NOBITS ELF section type.
2018-08-31RISC-V: Correct the requirement of compressed floating point instructionsJim Wilson4-0/+15
2018-08-31 Kito Cheng <kito@andestech.com> gas/ * testsuite/gas/riscv/c-fld-fsd-fail.d: New. * testsuite/gas/riscv/c-fld-fsd-fail.l: Likewise. * testsuite/gas/riscv/c-fld-fsd-fail.s: Likewise. opcodes/ * riscv-opc.c (riscv_opcodes): Fix incorrect subset info for compressed floating point instructions.
2018-08-31gas/elf/section14.d: Change skip to xfailH.J. Lu3-1/+16
We will get an XPASS when h8300 port peculiarities are fixed, and will fix the testsuite too. * testsuite/gas/elf/section14.d: Change skip to xfail. * testsuite/lib/gas-defs.exp (run_dump_test): Add xfail support.
2018-08-31PowerPC64 higher REL16 relocationsAlan Modra3-13/+51
There are occasions where someone might want to build a 64-bit pc-relative offset from 16-bit pieces. This adds the necessary REL16 relocs corresponding to existing ADDR16 relocs that can be used to build 64-bit absolute values. include/ * elf/ppc64.h (R_PPC64_REL16_HIGH, R_PPC64_REL16_HIGHA), (R_PPC64_REL16_HIGHER, R_PPC64_REL16_HIGHERA), (R_PPC64_REL16_HIGHEST, R_PPC64_REL16_HIGHESTA): Define. (R_PPC64_LO_DS_OPT, R_PPC64_16DX_HA): Bump value. bfd/ * reloc.c (BFD_RELOC_PPC64_REL16_HIGH, BFD_RELOC_PPC64_REL16_HIGHA), (BFD_RELOC_PPC64_REL16_HIGHER, BFD_RELOC_PPC64_REL16_HIGHERA), (BFD_RELOC_PPC64_REL16_HIGHEST, BFD_RELOC_PPC64_REL16_HIGHESTA): Define. * elf64-ppc.c (ppc64_elf_howto_raw): Add new REL16 howtos. (ppc64_elf_reloc_type_lookup): Translate new REL16 relocs. (ppc64_elf_check_relocs, ppc64_elf_relocate_section): Handle them. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/ * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Allow ADDR16 HIGH, HIGHA, HIGHER, HIGHERA, HIGHEST, and HIGHESTA relocs. Group 16-bit relocs. * config/tc-ppc.c (md_apply_fix): Translate those ADDR16 relocs to REL16 when pcrel. Sort relocs.
2018-08-31gas: Pass -mx86-used-note=no to assemblerH.J. Lu2-1/+10
Since x86 assembler may generate .note.gnu.property section, pass -mx86-used-note=no to assembler for section2 test on ELF/x86 targets to avoid .note.gnu.property section. * testsuite/gas/elf/elf.exp: Pass -mx86-used-note=no to assembler for section2 test on ELF/x86 targets.
2018-08-31x86: pass -mx86-used-note=no to assemblerH.J. Lu2-0/+6
Since cfi/cfi-label.d is ELF/x86 specific, we can pass -mx86-used-note=no to assembler. * testsuite/gas/cfi/cfi-label.d: Pass -mx86-used-note=no to assembler.
2018-08-31x86: Add explicit -mx86-used-note=[yes|no] to testsH.J. Lu19-1/+39
Pass explicit -mx86-used-note=[yes|no] to x86 assembler and update expected outputs from "readelf -n" if needed. binutils/ * testsuite/binutils-all/i386/compressed-1b.d: Pass -mx86-used-note=no to assembler. * testsuite/binutils-all/i386/compressed-1c.d: Likewise. * testsuite/binutils-all/x86-64/compressed-1b.d: Likewise. * testsuite/binutils-all/x86-64/compressed-1c.d: Likewise. * testsuite/binutils-all/i386/empty.d: Pass -mx86-used-note=yes to assembler and update expected output from "readelf -n". * testsuite/binutils-all/i386/ibt.d: Likewise. * testsuite/binutils-all/i386/pr21231a.d: Likewise. * testsuite/binutils-all/i386/pr21231b.d: Likewise. * testsuite/binutils-all/i386/shstk.d: Likewise. * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. * testsuite/binutils-all/x86-64/empty.d: Likewise. * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. * testsuite/binutils-all/x86-64/ibt.d: Likewise. * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. * testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise. * testsuite/binutils-all/x86-64/pr23494a.d: Likewise. * testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise. * testsuite/binutils-all/x86-64/pr23494b.d: Likewise. * testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise. * testsuite/binutils-all/x86-64/pr23494c.d: Likewise. * testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise. * testsuite/binutils-all/x86-64/pr23494d.d: Likewise. * testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise. * testsuite/binutils-all/x86-64/pr23494e.d: Likewise. * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. * testsuite/binutils-all/x86-64/shstk.d: Likewise. gas/ * testsuite/gas/i386/bss.d: Pass -mx86-used-note=no to assembler. * testsuite/gas/i386/ilp32/quad.d: Likewise. * testsuite/gas/i386/ilp32/reloc64.d: Likewise. * testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise. * testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise. * testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise. * testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise. * testsuite/gas/i386/property-1.d: Likewise. * testsuite/gas/i386/relax.d: Likewise. * testsuite/gas/i386/reloc64.d: Likewise. * testsuite/gas/i386/size-1.d: Likewise. * testsuite/gas/i386/size-3.d: Likewise. * testsuite/gas/i386/x86-64-property-1.d: Likewise. * testsuite/gas/i386/x86-64-size-1.d: Likewise. * testsuite/gas/i386/x86-64-size-3.d: Likewise. * testsuite/gas/i386/x86-64-size-5.d: Likewise. * testsuite/gas/i386/x86-64-unwind.d: Likewise. * testsuite/gas/i386/divide.d: Append "#pass". ld/ * testsuite/ld-i386/i386.exp: (ASFLAGS): Save, append -mx86-used-note=no and restore. Pass -mx86-used-note=yes and -mx86-used-note=no to assembler. * testsuite/ld-x86-64/x86-64.exp: Likewise. * testsuite/ld-i386/no-plt.exp: Pass -mx86-used-note=yes to assembler. * testsuite/ld-i386/tls.exp: Likewise. * testsuite/ld-x86-64/no-plt.exp: Likewise. * testsuite/ld-x86-64/tls.exp: Likewise. * testsuite/ld-i386/pr23486a.d: Pass -mx86-used-note=no to assembler. * testsuite/ld-i386/pr23486b.d: Likewise. * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise. * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. * testsuite/ld-x86-64/bnd-plt-1.d: Likewise. * testsuite/ld-x86-64/pr23486a-x32.d: Likewise. * testsuite/ld-x86-64/pr23486a.d: Likewise. * testsuite/ld-x86-64/pr23486b-x32.d: Likewise. * testsuite/ld-x86-64/pr23486b.d: Likewise. * testsuite/ld-i386/property-x86-3.d: Pass -mx86-used-note=yes to assembler and update expected output from "readelf -n". * testsuite/ld-i386/property-x86-4a.d: Likewise. * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. * testsuite/ld-i386/property-x86-ibt2.d: Likewise. * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. * testsuite/ld-i386/property-x86-ibt4.d: Likewise. * testsuite/ld-i386/property-x86-ibt5.d: Likewise. * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. * testsuite/ld-i386/property-x86-shstk2.d: Likewise. * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. * testsuite/ld-i386/property-x86-shstk4.d: Likewise. * testsuite/ld-i386/property-x86-shstk5.d: Likewise. * testsuite/ld-x86-64/property-x86-3-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-3.d: Likewise. * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-4a.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. * testsuite/ld-i386/property-1a.r: New file. * testsuite/ld-i386/property-2a.r: Likewise. * testsuite/ld-i386/property-3a.r: Likewise. * testsuite/ld-i386/property-4a.r: Likewise. * testsuite/ld-i386/property-5a.r: Likewise. * testsuite/ld-i386/property-7a.r: Likewise. * testsuite/ld-x86-64/property-1a.r: Likewise. * testsuite/ld-x86-64/property-2a.r: Likewise. * testsuite/ld-x86-64/property-3a.r: Likewise. * testsuite/ld-x86-64/property-4a.r: Likewise. * testsuite/ld-x86-64/property-5a.r: Likewise. * testsuite/ld-x86-64/property-7a.r: Likewise. * testsuite/ld-x86-64/mpx.exp: Pass -mx86-used-note=no to assembler.
2018-08-31x86: Extend assembler to generate GNU property notesH.J. Lu8-14/+385
Add -mx86-used-note=[yes|no] option to generate (or not) GNU property notes with GNU_PROPERTY_X86_FEATURE_2_USED and GNU_PROPERTY_X86_ISA_1_USED properties. If the assembly input contains no instructions, set the GNU_PROPERTY_X86_UINT32_VALID bit in GNU_PROPERTY_X86_FEATURE_2_USED property. Add a --enable-x86-used-note configure time option to set the default behavior. Set the default if the configure option is not used to "no". * NEWS: Mention -mx86-used-note=[no|yes]. * configure.ac: Add --enable-x86-used-note. Define DEFAULT_X86_USED_NOTE. * config.in: Regenerated. * configure: Likewise. * config/tc-i386.c (x86_isa_1_used): New. (x86_feature_2_used): Likewise. (x86_used_note): Likewise. (_i386_insn): Add has_regmmx, has_regxmm, has_regymm and has_regzmm. (build_modrm_byte): Set i.has_regmmx, i.has_regzmm. i.has_regymm and i.has_regxmm. (x86_cleanup): New function. (output_insn): Update x86_isa_1_used and x86_feature_2_used. (OPTION_X86_USED_NOTE): New. (md_longopts): Add -mx86-used-note=. (md_parse_option): Handle OPTION_X86_USED_NOTE. (md_show_usage): Display -mx86-used-note=. * config/tc-i386.h (x86_cleanup): New prototype. (md_cleanup): New. * doc/c-i386.texi: Document -mx86-used-note=.
2018-08-30sparc: gas: leon.d: disassemble assuming v8 also in sparc64 targets.Jose E. Marchesi2-1/+6
gas/ChangeLog: 2018-08-30 Jose E. Marchesi <jose.marchesi@oracle.com> * testsuite/gas/sparc/leon.d: Disassemble v8 code also in sparc64 targets.
2018-08-30RISC-V: Allow instruction require more than one extensionJim Wilson2-11/+32
2018-08-29 Kito Cheng <kito@andestech.com> gas/ * config/tc-riscv.c (riscv_subset_supports): New argument: xlen_required. (riscv_multi_subset_supports): New function, able to check more than one extension. (riscv_ip): Use riscv_multi_subset_supports instead of riscv_subset_supports. (riscv_set_arch): Update call-site for riscv_subset_supports. (riscv_after_parse_args): Likewise. include/ *opcode/riscv.h (MAX_SUBSET_NUM): New. (riscv_opcode): Add xlen_requirement field and change type of subset. opcodes/ * riscv-dis.c (riscv_disassemble_insn): Check XLEN by riscv_opcode.xlen_requirement. * riscv-opc.c (riscv_opcodes): Update for struct change.
2018-08-30Skip elf/section14 test for h8300 targetsH.J. Lu2-0/+7
Skip elf/section14 test for h8300 targets since the h8300 port issues a warning message for new sections created without atrributes. * testsuite/gas/elf/section14.d: Skip h8300 targets.
2018-08-30Treat SHT_FINI_ARRAY and SHT_PREINIT_ARRAY as relocatable sectionsH.J. Lu4-0/+35
Since SHT_FINI_ARRAY and SHT_PREINIT_ARRAY sections are relocatable, this patch fixes readelf and adds a testcase. binutils/ * readelf.c (process_section_headers): Treat SHT_FINI_ARRAY and SHT_PREINIT_ARRAY as relocatable sections. gas/ * testsuite/gas/elf/elf.exp: Run section14. * testsuite/gas/elf/section14.d: New file. * testsuite/gas/elf/section14.s: Likewise.
2018-08-29sparc/leon: add support for partial write psr instructionMartin Aberg4-0/+26
Partial write %PSR (PWRPSR) is a SPARC V8e option that allows the WRPSR instruction to only affect the %PSR.ET field. When available it is enabled by setting the rd field of the WRPSR instruction to a value other than 0. For Leon processors with support for partial write %PSR (currently GR740 and GR716) the rd value must be 1. opcodes/ChangeLog: 2018-08-29 Martin Aberg <maberg@gaisler.com> * sparc-opc.c (sparc_opcodes): Add Leon specific partial write psr (PWRPSR) instruction. gas/ChangeLog: 2018-08-29 Daniel Cederman <cederman@gaisler.com> * testsuite/gas/sparc/leon.d: New test. * testsuite/gas/sparc/leon.s: New test. * testsuite/gas/sparc/sparc.exp: Execute the pwrpsr test.
2018-08-29[MIPS] Add Loongson 2K1000 proccessor support.Chenghua Xu3-1/+11
bfd/ * archures.c (bfd_architecture): New machine bfd_mach_mips_gs264e. * bfd-in2.h (bfd_architecture): Likewise. * cpu-mips.c (enum I_xxx): Likewise. (arch_info_struct): Likewise. * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_GS264E. (mips_set_isa_flags): Likewise. (mips_mach_extensions): Map bfd_mach_mips_gs264e to bfd_mach_mips_gs464e extension. binutils/ * NEWS: Mention Loongson 2K1000 proccessor support. * readelf.c (get_machine_flags): Handle gs264e. elfcpp/ * mips.c (EF_MIPS_MACH): New E_MIPS_MACH_GS264E. gas/ * config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Exclude CPU_GS264E. (mips_cpu_info_table): Add gs264e descriptors. * doc/as.texi (march table): Add gs264e. include/ * elf/mips.h (E_MIPS_MACH_XXX): New E_MIPS_MACH_GS264E. * opcode/mips.h (CPU_XXX): New CPU_GS264E. ld/ * testsuite/ld-mips-elf/mips-elf-flags.exp: Run good_combination gs264e and gs464e. opcodes/ * mips-dis.c (mips_arch_choices): Add gs264e descriptors.