aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-07-10Fix spurious unhandled remote %Stop notificationsPedro Alves2-1/+23
In non-stop mode, remote targets mark an async event source whose callback is supposed to result in calling remote_target::wait_ns to either process the event queue, or acknowledge an incoming %Stop notification. The callback in question is remote_async_inferior_event_handler, where we call inferior_event_handler, to end up in fetch_inferior_event -> target_wait -> remote_target::wait -> remote_target::wait_ns. A problem here however is that when debugging multiple targets, fetch_inferior_event can pull events out of any target picked at random, for event fairness. This means that when remote_async_inferior_event_handler returns, remote_target::wait may have not been called at all, and thus pending notifications may have not been acked. Because async event sources auto-clear, when remote_async_inferior_event_handler returns the async event handler is no longer marked, so the event loop won't automatically call remote_async_inferior_event_handler again to try to process the pending remote notifications/queue. The result is that stop events may end up not processed, e.g., "interrupt -a" seemingly not managing to stop all threads. Fix this by making remote_async_inferior_event_handler mark the event handler again before returning, if necessary. Maybe a better fix would be to make async event handlers not auto-clear themselves, make that the responsibility of the callback, so that the event loop would keep calling the callback automatically. Or, we could try making so that fetch_inferior_event would optionally handle events only for the target that it got passed down via parameter. However, I don't think now just before branching is the time to try to do any such change. gdb/ChangeLog: PR gdb/26199 * remote.c (remote_target::open_1): Pass remote target pointer as data to create_async_event_handler. (remote_async_inferior_event_handler): Mark async event handler before returning if the remote target still has either pending events or unacknowledged notifications.
2020-07-10Enable multi-process mode in the FreeBSD native target.John Baldwin3-0/+15
gdb/ChangeLog: * fbsd-nat.h (fbsd_nat_target::supports_multi_process): New declaration. * fbsd-nat.c (fbsd_nat_target::supports_multi_process): New function.
2020-07-10x86: Extract extended states from instruction templateH.J. Lu6-73/+91
Extract extended states from operand types in instruction template. Set xstate_zmm for master register move. * config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm, has_regymm, has_regzmm and has_regtmm. Add xstate. (md_assemble): Set i.xstate from operand types in instruction template. (build_modrm_byte): Updated. (output_insn): Check i.xstate. * testsuite/gas/i386/i386.exp: Run property-6 and x86-64-property-6. * testsuite/gas/i386/property-6.d: New file. * testsuite/gas/i386/property-6.s: Updated. * testsuite/gas/i386/x86-64-property-6.d: Likewise.
2020-07-10gas/i386/property-5.d: Correct test nameH.J. Lu2-1/+5
* testsuite/gas/i386/property-5.d: Correct test name.
2020-07-10x86: Add support for Intel AMX instructionsLili Cui22-14339/+15523
gas/ * doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile. * config/tc-i386.c (i386_error): Add invalid_sib_address. (cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile. (cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile. (match_simd_size): Add tmmword check. (operand_type_match): Add tmmword. (type_names): Add rTMM. (i386_error): Add invalid_tmm_register_set. (check_VecOperands): Handle invalid_sib_address and invalid_tmm_register_set. (match_template): Handle invalid_sib_address. (build_modrm_byte): Handle non-vector SIB and zmmword. (i386_index_check): Disallow RegIP for non-vector SIB. (check_register): Handle zmmword. * testsuite/gas/i386/i386.exp: Add AMX new tests. * testsuite/gas/i386/intel-regs.d: Add tmm. * testsuite/gas/i386/intel-regs.s: Add tmm. * testsuite/gas/i386/x86-64-amx-intel.d: New. * testsuite/gas/i386/x86-64-amx-inval.l: New. * testsuite/gas/i386/x86-64-amx-inval.s: New. * testsuite/gas/i386/x86-64-amx.d: New. * testsuite/gas/i386/x86-64-amx.s: New. * testsuite/gas/i386/x86-64-amx-bad.d: New. * testsuite/gas/i386/x86-64-amx-bad.s: New. opcodes/ * i386-dis.c (TMM): New. (EXtmm): Likewise. (VexTmm): Likewise. (MVexSIBMEM): Likewise. (tmm_mode): Likewise. (vex_sibmem_mode): Likewise. (REG_VEX_0F3849_X86_64_P_0_W_0_M_1): Likewise. (MOD_VEX_0F3849_X86_64_P_0_W_0): Likewise. (MOD_VEX_0F3849_X86_64_P_2_W_0): Likewise. (MOD_VEX_0F3849_X86_64_P_3_W_0): Likewise. (MOD_VEX_0F384B_X86_64_P_1_W_0): Likewise. (MOD_VEX_0F384B_X86_64_P_2_W_0): Likewise. (MOD_VEX_0F384B_X86_64_P_3_W_0): Likewise. (MOD_VEX_0F385C_X86_64_P_1_W_0): Likewise. (MOD_VEX_0F385E_X86_64_P_0_W_0): Likewise. (MOD_VEX_0F385E_X86_64_P_1_W_0): Likewise. (MOD_VEX_0F385E_X86_64_P_2_W_0): Likewise. (MOD_VEX_0F385E_X86_64_P_3_W_0): Likewise. (RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0): Likewise. (PREFIX_VEX_0F3849_X86_64): Likewise. (PREFIX_VEX_0F384B_X86_64): Likewise. (PREFIX_VEX_0F385C_X86_64): Likewise. (PREFIX_VEX_0F385E_X86_64): Likewise. (X86_64_VEX_0F3849): Likewise. (X86_64_VEX_0F384B): Likewise. (X86_64_VEX_0F385C): Likewise. (X86_64_VEX_0F385E): Likewise. (VEX_LEN_0F3849_X86_64_P_0_W_0_M_0): Likewise. (VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0): Likewise. (VEX_LEN_0F3849_X86_64_P_2_W_0_M_0): Likewise. (VEX_LEN_0F3849_X86_64_P_3_W_0_M_0): Likewise. (VEX_LEN_0F384B_X86_64_P_1_W_0_M_0): Likewise. (VEX_LEN_0F384B_X86_64_P_2_W_0_M_0): Likewise. (VEX_LEN_0F384B_X86_64_P_3_W_0_M_0): Likewise. (VEX_LEN_0F385C_X86_64_P_1_W_0_M_0): Likewise. (VEX_LEN_0F385E_X86_64_P_0_W_0_M_0): Likewise. (VEX_LEN_0F385E_X86_64_P_1_W_0_M_0): Likewise. (VEX_LEN_0F385E_X86_64_P_2_W_0_M_0): Likewise. (VEX_LEN_0F385E_X86_64_P_3_W_0_M_0): Likewise. (VEX_W_0F3849_X86_64_P_0): Likewise. (VEX_W_0F3849_X86_64_P_2): Likewise. (VEX_W_0F3849_X86_64_P_3): Likewise. (VEX_W_0F384B_X86_64_P_1): Likewise. (VEX_W_0F384B_X86_64_P_2): Likewise. (VEX_W_0F384B_X86_64_P_3): Likewise. (VEX_W_0F385C_X86_64_P_1): Likewise. (VEX_W_0F385E_X86_64_P_0): Likewise. (VEX_W_0F385E_X86_64_P_1): Likewise. (VEX_W_0F385E_X86_64_P_2): Likewise. (VEX_W_0F385E_X86_64_P_3): Likewise. (names_tmm): Likewise. (att_names_tmm): Likewise. (intel_operand_size): Handle void_mode. (OP_XMM): Handle tmm_mode. (OP_EX): Likewise. (OP_VEX): Likewise. * i386-gen.c (cpu_flag_init): Add entries for CpuAMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. (operand_type_shorthands): Add RegTMM. (operand_type_init): Likewise. (operand_types): Add Tmmword. (cpu_flag_init): Add CPU_AMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. (cpu_flags): Add CpuAMX_INT8, CpuAMX_BF16 and CpuAMX_TILE. * i386-opc.h (CpuAMX_INT8): New. (CpuAMX_BF16): Likewise. (CpuAMX_TILE): Likewise. (SIBMEM): Likewise. (Tmmword): Likewise. (i386_cpu_flags): Add cpuamx_int8, cpuamx_bf16 and cpuamx_tile. (i386_opcode_modifier): Extend width of fields vexvvvv and sib. (i386_operand_type): Add tmmword. * i386-opc.tbl: Add AMX instructions. * i386-reg.tbl: Add AMX registers. * i386-init.h: Regenerated. * i386-tbl.h: Likewise.
2020-07-10[readelf] Fix end_seq entry in -wL. Specifically stop the display of a line ↵Tom de Vries17-35/+95
number and is_statement/has-view fields for the End of Sequence operator, as these have no meaning. binutils* dwarf.c (display_debug_lines_decoded): Don't emit meaningless information in the end_sequence row. * testsuite/binutils-all/dw5.W: Update. * testsuite/binutils-all/objdump.WL: Update. gas * testsuite/gas/elf/dwarf2-11.d: Update expected output from readelf's line table decoding. * 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-19.d: Likewise. * testsuite/gas/elf/dwarf2-5.d: Likewise. * testsuite/gas/elf/dwarf2-6.d: Likewise. * testsuite/gas/elf/dwarf2-7.d: Likewise.
2020-07-10Document powerpc64 ld optionsAlan Modra2-0/+32
* ld.texi (PowerPC64 ELF64): Document --no-inline-optimize, --power10-stubs and --no-power10-stubs.
2020-07-10PowerPC64 ld --no-power10-stubsAlan Modra7-15/+92
Needed for libraries that use ifuncs or other means to support cpu-optimized versions of functions, some power10, some not, and those functions make calls using linkage stubs. bfd/ * elf64-ppc.h (struct ppc64_elf_params): Add power10_stubs. * elf64-ppc.c (struct ppc_link_hash_table): Delete power10_stubs. (ppc64_elf_check_relocs): Adjust setting of power10_stubs. (plt_stub_size, ppc_build_one_stub, ppc_size_one_stub): Adjust uses of power10_stubs. ld/ * emultempl/ppc64elf.em (params): Init new field. (enum ppc64_opt): Add OPTION_POWER10_STUBS and OPTION_NO_POWER10_STUBS. (PARSE_AND_LIST_LONGOPTS): Support --power10-stubs and --no-power10-stubs. (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. * testsuite/ld-powerpc/callstub-3.d: New test. * testsuite/ld-powerpc/powerpc.exp: Run it.
2020-07-10Automatic date update in version.inGDB Administrator1-1/+1
2020-07-09Don't compare the pid returned from 'wait' against inferior_ptid.John Baldwin2-1/+6
'inf_ptrace::wait' needs to discard termination events reported by detached child processes. Previously it compared the returned pid against the pid in inferior_ptid to determine if a termination event should be discarded or reported. The multi-target changes cleared inferior_ptid to null_ptid in 'wait' target methods, so this was always failing and never reporting exit events. Instead, report termination events whose pid matches any inferior belonging to the current target. Several tests started failing on FreeBSD after the multi-target changes and pass again after this change. gdb/ChangeLog: * inf-ptrace.c (inf_ptrace_target::wait): Don't compare against inferior_ptid.
2020-07-09x86: Properly set YMM/ZMM featuresH.J. Lu9-2/+64
Since VEX/EVEX vector instructions will always update the full YMM/ZMM registers, set YMM/ZMM features for VEX/EVEX vector instructions. * config/tc-i386.c (output_insn): Set YMM/ZMM features for VEX/EVEX vector instructions. * testsuite/gas/i386/property-4.d: New file. * testsuite/gas/i386/property-4.s: Likewise. * testsuite/gas/i386/property-5.d: Likewise. * testsuite/gas/i386/property-5.s: Likewise. * testsuite/gas/i386/x86-64-property-4.d: Likewise. * testsuite/gas/i386/x86-64-property-5.d: Likewise.
2020-07-09Support several new ELF auxiliary vector types on FreeBSD.John Baldwin4-0/+21
FreeBSD's kernel recently added several ELF auxiliary vector entries to describe the arguments passed to new executable images during exec(). The AT_FREEBSD_ARGC and AT_FREEBSD_ARGV entries give the length and address of the process argument array. AT_FREEBSD_ENVC and AT_FREEBSD_ENVV entries give the length and address of the initial process environment. AT_FREEBSD_PS_STRINGS gives the address of the 'struct ps_strings' object. include/ChangeLog: * elf/common.h (AT_FREEBSD_ARGC, AT_FREEBSD_ARGV, AT_FREEBSD_ENVC) (AT_FREEBSD_ENVV, AT_FREEBSD_PS_STRINGS): Define. gdb/ChangeLog: * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_ARGC, AT_FREEBSD_ARGV, AT_FREEBSD_ENVC, AT_FREEBSD_ENVV, AT_FREEBSD_PS_STRINGS.
2020-07-09Linux/x86: Configure gas with --enable-x86-used-note by defaultH.J. Lu4-0/+23
* configure.ac: Configure with --enable-x86-used-note by default for Linux/x86. * configure: Regenerated.
2020-07-09Remove powerpc PE supportAlan Modra38-4421/+96
Plus some leftover powerpc lynxos support. bfd/ * coff-ppc.c: Delete. * pe-ppc.c: Delete. * pei-ppc.c: Delete. * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Remove PE PPC. * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Remove PPCMAGIC code. (coff_write_object_contents): Remove PPC_PE code. * config.bfd: Move powerpcle-pe to removed targets. * configure.ac: Remove powerpc PE entries. * libcoff-in.h (ppc_allocate_toc_section): Delete. (ppc_process_before_allocation): Delete. * peXXigen.c: Remove POWERPC_LE_PE code and comments. * targets.c: Remove powerpc PE vectors. * po/SRC-POTFILES.in: Regenerate. * libcoff.h: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. binutils/ * dlltool.c: Remove powerpc PE support and comments. * configure.ac: Remove powerpc PE dlltool config. * configure: Regenerate. gas/ * config/obj-coff.h: Remove TE_PE support. * config/tc-ppc.c: Likewise. * config/tc-ppc.h: Likewise. * configure.tgt: Remove powerpc PE and powerpc lynxos. * testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE condition. * testsuite/gas/macros/macros.exp: Don't xfail powerpc PE. include/ * coff/powerpc.h: Delete. ld/ * emulparams/ppcpe.sh: Delete. * scripttempl/ppcpe.sc: Delete. * emulparams/ppclynx.sh: Delete. * Makefile.am (ALL_EMULATION_SOURCES): Remove ppc PE and lynxos. * configure.tgt: Likewise. * emultempl/beos.em: Remove powerpc PE support. * emultempl/pe.em: Likewise. * po/BLD-POTFILES.in: Regenerate. * Makefile.in: Regenerate.
2020-07-09powerpc garbage collect testAlan Modra2-6/+8
ld's garbage collection test on powerpc64 catered for old compilers (pre -mcmodel=medium support), setting options that caused the test to fail. Which meant the test wasn't really testing anything. Get rid of that old compiler support, and avoid -fPIE fails on ppc32. * testsuite/ld-gc/gc.exp: Don't set -mminimal-toc for powerpc64, and remove powerpc64 xfail. Use -fno-PIE for ppc32.
2020-07-09pr18841 tests on powerpc64Alan Modra2-9/+14
The PR18841 test does cross-module calls from within an ifunc resolver, which is nasty, and not supported in general since the called function may not be relocated. In this case the called function (zoo) is just a stub so doesn't need relocating, but on ppc64 the function descriptor for zoo in the executable won't be relocated at the time the shared library ifunc resolver runs. That means the test will fail if your compiler generates PIEs by default. PR 18841 * testsuite/ld-ifunc/ifunc.exp: Run pr18841 tests non-pie.
2020-07-09Update Turkish translation in the gprof sub-directoryNick Clifton2-5/+9
2020-07-09Update French translation in the bfd sub-directoryNick Clifton2-1676/+1895
2020-07-09Update the Windows Resource compiler (windres) to support the OWNERDRAW and ↵Nick Clifton6-2/+42
BITMAP menuitem flags. binutils* rclex.c: Add OWNERDRAW keyword. * rcparse.y: Add OWNERDRAW token. (menuitem_flag) Add BITMAP and OWNERDRAW entries. * resrc.c (write_rc_menuitems): Add support for OWNERDRAW and BITMAP flags. * windres.c (extended_menuitems): Likewise. * testsuite/binutils-all/windres/menuitem_flags.rc: New test.
2020-07-09asan: readelf: heap buffer overflow in slurp_hppa_unwind_tableAlan Modra2-2/+6
This one isn't just a weird corner case requiring multiple .PARISC.unwind sections in an object file to trigger the buffer overflow, it's also a simple bug that would prevent relocations being applied in the normal case of a single .PARISC.unwind section. * readelf (slurp_hppa_unwind_table): Set table_len before use in relocation sanity checks.
2020-07-09Automatic date update in version.inGDB Administrator1-1/+1
2020-07-08Handle Windows drives in auto-load script pathsHannes Domani4-0/+21
Fixes this testsuite fail on Windows: FAIL: gdb.base/auto-load.exp: print $script_loaded Converts the debugfile path from c:/dir/file to /c/dir/file, so it can be appended to the auto-load path. gdb/ChangeLog: 2020-07-08 Hannes Domani <ssbssa@yahoo.de> * auto-load.c (auto_load_objfile_script_1): Convert drive part of debugfile path on Windows. gdb/doc/ChangeLog: 2020-07-08 Hannes Domani <ssbssa@yahoo.de> * gdb.texinfo: Document Windows drive conversion of 'set auto-load scripts-directory'.
2020-07-08Rename the 'obfd' argument to fbsd_nat_target::find_memory_regions.John Baldwin2-6/+11
The argument is passed as a generic cookie value to the supplied callback and is not necessarily a pointer to a bfd. gdb/ChangeLog: * fbsd-nat.c (fbsd_nat_target::find_memory_regions): Rename 'obfd' argument to 'data'.
2020-07-08Use read_memory in ada_exception_message_1Tom Tromey5-3/+17
Testing using the internal AdaCore test suite showed a regression from the target string reading changes. In particular, now ada_exception_message_1 can get the wrong answer in some cases. In particular, when an Ada exception catchpoint is hit, sometimes the exception name will be incorrect. The case I was seeing changed from the correct: Catchpoint 2, CONSTRAINT_ERROR (catch C_E) at [...] to: Catchpoint 2, CONSTRAINT_ERROR (catch C_EE) at [...] I was not able to reproduce this failure with the Fedora gnat. Perhaps it is related to some local change to gnat; I do not know. Meanwhile, because ada_exception_message_1 knows the length of the string to read, we can use read_memory here. This fixes the bug. I've updated the test suite to at least exercise this code path. However, as mentioned above, the new test does not actually provoke the failure. gdb/ChangeLog 2020-07-08 Tom Tromey <tromey@adacore.com> * ada-lang.c (ada_exception_message_1): Use read_memory. gdb/testsuite/ChangeLog 2020-07-08 Tom Tromey <tromey@adacore.com> * gdb.ada/catch_ex/foo.adb: Pass string to raise. * gdb.ada/catch_ex.exp: Examine catchpoint text.
2020-07-08Commit: Fix GOLD testsuite failures for 2.35 branch.Nick Clifton3-2/+11
* testsuite/script_test_7.sh: Adjust expected address of the .bss section. * testsuite/script_test_9.sh: Do not expect the .init section to immediately follow the .text section in the mapping of sections to segments.
2020-07-08x86: various XOP insns lack L and/or W bit decodingJan Beulich2-123/+630
While some insns support both XOP.W based operand swapping and 256-bit operation (XOP.L=1), many others don't support one or both. For {L,S}LWPCB also fix the so far not decoded ModRM.mod == 3 restriction. Take the opportunity and replace the custom OP_LWP_E() and OP_LWPCB_E() routines by suitable other, non-custom operanbd specifiers.
2020-07-08x86: FMA4 scalar insns ignore VEX.LJan Beulich8-101/+168
Just like other VEX-encoded scalar insns do. Besides a testcase for this behavior also introduce one to verify that XOP scalar insns don't honor -mavxscalar=256, as they don't ignore XOP.L.
2020-07-08x86: re-work operand swapping for XOP shift/rotate insnsJan Beulich2-74/+32
There's no need for custom operand handling here, except for the VEX.W controlled operand swapping.
2020-07-08x86: re-work operand handling for 5-operand XOP insnsJan Beulich2-194/+19
There's no need for custom operand handling here, except for the VEX.W controlled operand swapping and the printing of the remaining 4-bit immediate. VEX.W can be handled just like 4-operand insns. Also take the opportunity and drop the stray indirection through vex_w_table[].
2020-07-08x86: re-work operand swapping for FMA4 and 4-operand XOP insnsJan Beulich2-65/+49
There's no need for custom operand handling here, except for the VEX.W controlled operand swapping. The latter can be easily integrated into OP_REG_VexI4().
2020-07-08powerpc-aix5.2 testsAlan Modra87-595/+989
git commit bbd0c8e20472 broke many of these tests, and there have been other changes that caused failures too. * testsuite/lib/ld-lib.exp (ar_simple_create): Pass options before ar command. * testsuite/ld-powerpc/aix52.exp: Run for rs6000-aix5.2. Update match files. * testsuite/ld-powerpc/aix-abs-branch-1.dd: Update. * testsuite/ld-powerpc/aix-core-sec-1.hd: Update. * testsuite/ld-powerpc/aix-gc-1-32.dd: Update. * testsuite/ld-powerpc/aix-gc-1-64.dd: Update. * testsuite/ld-powerpc/aix-glink-1-32.dd: Update. * testsuite/ld-powerpc/aix-glink-1-64.dd: Update. * testsuite/ld-powerpc/aix-glink-2-32.dd: Update. * testsuite/ld-powerpc/aix-glink-2-64.dd: Update. * testsuite/ld-powerpc/aix-no-dup-syms-1-rel.rd: Update. * testsuite/ld-powerpc/aix-ref-1-32.od: Update. * testsuite/ld-powerpc/aix-ref-1-64.od: Update. * testsuite/ld-powerpc/aix-toc-1-32.dd: Update. * testsuite/ld-powerpc/aix-toc-1-64.dd: Update. * testsuite/ld-powerpc/aix-weak-3-32.dd: Update. * testsuite/ld-powerpc/aix-weak-3-64.dd: Update. * testsuite/ld-powerpc/aix-abs-branch-1.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-abs-branch-1-32.nd, * testsuite/ld-powerpc/aix-abs-branch-1-64.nd: ..these new files. * testsuite/ld-powerpc/aix-abs-reloc-1.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-abs-reloc-1-32.nd, * testsuite/ld-powerpc/aix-abs-reloc-1-64.nd: ..these new files. * testsuite/ld-powerpc/aix-abs-reloc-1.od: Delete, replace with.. * testsuite/ld-powerpc/aix-abs-reloc-1-32.od, * testsuite/ld-powerpc/aix-abs-reloc-1-64.od: ..these new files. * testsuite/ld-powerpc/aix-export-1-all.dd: Delete, replace with.. * testsuite/ld-powerpc/aix-export-1-all-32.dd, * testsuite/ld-powerpc/aix-export-1-all-64.dd: ..these new files. * testsuite/ld-powerpc/aix-export-1-full.dd: Delete, replace with.. * testsuite/ld-powerpc/aix-export-1-full-32.dd, * testsuite/ld-powerpc/aix-export-1-full-64.dd: ..these new files. * testsuite/ld-powerpc/aix-export-2.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-export-2-32.nd, * testsuite/ld-powerpc/aix-export-2-64.nd: ..these new files. * testsuite/ld-powerpc/aix-gc-1.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-gc-1-32.nd, * testsuite/ld-powerpc/aix-gc-1-64.nd: ..these new files. * testsuite/ld-powerpc/aix-glink-3.dd: Delete, replace with.. * testsuite/ld-powerpc/aix-glink-3-32.dd, * testsuite/ld-powerpc/aix-glink-3-64.dd: ..these new files. * testsuite/ld-powerpc/aix-lineno-1a.dd: Delete, replace with.. * testsuite/ld-powerpc/aix-lineno-1a-32.dd, * testsuite/ld-powerpc/aix-lineno-1a-64.dd: ..these new files. * testsuite/ld-powerpc/aix-lineno-1a.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-lineno-1a-32.nd, * testsuite/ld-powerpc/aix-lineno-1a-64.nd: ..these new files. * testsuite/ld-powerpc/aix-lineno-1b.dd: Delete, replace with.. * testsuite/ld-powerpc/aix-lineno-1b-32.dd, * testsuite/ld-powerpc/aix-lineno-1b-64.dd: ..these new files. * testsuite/ld-powerpc/aix-lineno-1b.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-lineno-1b-32.nd, * testsuite/ld-powerpc/aix-lineno-1b-64.nd: ..these new files. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.dnd: Delete, replace with.. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.dnd, * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.dnd: ..these new files. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.drd: Delete, replace with.. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.drd, * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.drd: ..these new files. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.nd, * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.nd: ..these new files. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso.rd: Delete, replace with.. * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-32.rd, * testsuite/ld-powerpc/aix-no-dup-syms-1-dso-64.rd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-dso.dnd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-dso-32.dnd, * testsuite/ld-powerpc/aix-weak-1-dso-64.dnd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-dso.hd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-dso-32.hd, * testsuite/ld-powerpc/aix-weak-1-dso-64.hd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-dso.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-dso-32.nd, * testsuite/ld-powerpc/aix-weak-1-dso-64.nd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-gcdso.dnd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-gcdso-32.dnd, * testsuite/ld-powerpc/aix-weak-1-gcdso-64.dnd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-gcdso.hd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-gcdso-32.hd, * testsuite/ld-powerpc/aix-weak-1-gcdso-64.hd: ..these new files. * testsuite/ld-powerpc/aix-weak-1-gcdso.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-1-gcdso-32.nd, * testsuite/ld-powerpc/aix-weak-1-gcdso-64.nd: ..these new files. * testsuite/ld-powerpc/aix-weak-2a.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-2a-32.nd, * testsuite/ld-powerpc/aix-weak-2a-64.nd: ..these new files. * testsuite/ld-powerpc/aix-weak-2b.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-2b-32.nd, * testsuite/ld-powerpc/aix-weak-2b-64.nd: ..these new files. * testsuite/ld-powerpc/aix-weak-2c.nd: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-2c-32.nd, * testsuite/ld-powerpc/aix-weak-2c-64.nd: ..these new files. * testsuite/ld-powerpc/aix-weak-2c.od: Delete, replace with.. * testsuite/ld-powerpc/aix-weak-2c-32.od, * testsuite/ld-powerpc/aix-weak-2c-64.od: ..these new files.
2020-07-08Automatic date update in version.inGDB Administrator1-1/+1
2020-07-07arc: Improve error messages when assemblingClaudiu Zissulescu7-30/+63
gas/ xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com> * config/tc-arc.c (find_opcode_match): Add error messages. * testsuite/gas/arc/add_s-err.s: Update test. * testsuite/gas/arc/asm-errors.err: Likewise. * testsuite/gas/arc/cpu-em-err.s: Likewise. * testsuite/gas/arc/hregs-err.s: Likewise. * testsuite/gas/arc/warn.s: Likewise.
2020-07-07arc: Update vector instructions.Claudiu Zissulescu4-79/+105
Update vadd2, vadd4h, vmac2h, vmpy2h, vsub4h vector instructions arguments to discriminate between double/single register operands. opcodes/ xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com> * arc-opc.c (insert_rbd): New function. (RBD): Define. (RBDdup): Likewise. * arc-tbl.h (vadd2, vadd4h, vmac2h, vmpy2h, vsub4h): Update instructions. Signed-off-by: Claudiu Zissulescu <claziss@gmail.com>
2020-07-07Re: Use is_xcoff_format in ld testsuiteAlan Modra2-1/+6
git commit 7193487fa8 took h8300 out of the notarget list, resulting in h8300-elf +FAIL: ld-scripts/section-match-1 h8300-linux +FAIL: ld-scripts/section-match-1 * testsuite/ld-scripts/section-match-1.d: xfail h8300.
2020-07-07x86: Remove an incorrect AVX2 entryH.J. Lu2-10/+5
The upper 16 vector registers were added by AVX512. PR gas/26212 * doc/c-i386.texi: Remove an incorrect AVX2 entry.
2020-07-07XCOFF ld testsuite fixesAlan Modra53-59/+162
* testsuite/ld-scripts/align.exp: Don't exclude xcoff. Pass -bnogc ld option for xcoff. * testsuite/ld-scripts/provide.exp: Likewise. * testsuite/ld-scripts/data.exp: Pass -bnogc ld option for xcoff. * testsuite/ld-scripts/default-script.exp: Likewise. * testsuite/ld-scripts/defined.exp: Likewise. * testsuite/ld-scripts/empty-address.exp: Likewise. * testsuite/ld-scripts/expr.exp: Likewise. * testsuite/ld-scripts/include.exp: Likewise. * testsuite/ld-scripts/script.exp: Likewise. * testsuite/ld-scripts/assign-loc.d: Don't exclude xcoff. * testsuite/ld-scripts/defined3.d: Likewise. * testsuite/ld-scripts/defined4.d: Likewise. * testsuite/ld-scripts/pr18963.d: Likewise. * testsuite/ld-scripts/sane1.d: Likewise. * testsuite/ld-scripts/segment-start.d: Likewise. * testsuite/ld-scripts/include-1.d: Likewise, and relax text vma. * testsuite/ld-scripts/defined5.d: Update xfail and comment. * testsuite/ld-scripts/defined5.s: Tweak "defined" to be at non-zero section offset. * testsuite/ld-scripts/fill16.d: xfail for xcoff. * testsuite/ld-scripts/provide-2.d: Accept more symbols. * testsuite/ld-scripts/provide-4.d: Likewise. * testsuite/ld-scripts/provide-5.d: Likewise. * testsuite/ld-scripts/provide-6.d: Likewise. * testsuite/ld-scripts/provide-7.d: Likewise. * testsuite/ld-scripts/align.t: Accept xcoff mapped .text and .data. * testsuite/ld-scripts/defined3.t: Likewise. * testsuite/ld-scripts/defined4.t: Likewise. * testsuite/ld-scripts/defined5.t: Likewise. * testsuite/ld-scripts/fill.t: Likewise. * testsuite/ld-scripts/include-subdata.t: Likewise. * testsuite/ld-scripts/provide-1.t: Likewise. * testsuite/ld-scripts/provide-2.t: Likewise. * testsuite/ld-scripts/provide-3.t: Likewise. * testsuite/ld-scripts/provide-4.t: Likewise. * testsuite/ld-scripts/provide-5.t: Likewise. * testsuite/ld-scripts/provide-6.t: Likewise. * testsuite/ld-scripts/provide-7.t: Likewise. * testsuite/ld-scripts/provide-8.t: Likewise. * testsuite/ld-scripts/assign-loc.t: Add required xcoff sections. * testsuite/ld-scripts/sizeof.t: Likewise. * testsuite/ld-scripts/align2.t: Likewise, and mapped sections. * testsuite/ld-scripts/align5.t: Likewise. * testsuite/ld-scripts/default-script.t: Likewise. * testsuite/ld-scripts/empty-address-1.t: Likewise. * testsuite/ld-scripts/empty-address-2a.t: Likewise. * testsuite/ld-scripts/empty-address-2b.t: Likewise. * testsuite/ld-scripts/empty-address-3a.t: Likewise. * testsuite/ld-scripts/empty-address-3b.t: Likewise. * testsuite/ld-scripts/empty-address-3c.t: Likewise. * testsuite/ld-scripts/include-sections.t: Likewise. * testsuite/ld-scripts/pr14962.t: Likewise. * testsuite/ld-scripts/sane1.t: Likewise.
2020-07-07Use is_pecoff_format in ld testsuiteAlan Modra9-25/+46
--image-base 0 is not just for x86_64 mingw. This patch fixes that, and a case where a changed LDFLAGS leaked out of one script to the next. * testsuite/ld-scripts/align.exp: Use is_pecoff_format. * testsuite/ld-scripts/defined.exp: Likewise. * testsuite/ld-scripts/provide.exp: Likewise. * testsuite/ld-scripts/weak.exp: Likewise. * testsuite/ld-scripts/empty-address.exp: Likewise. Reset LDFLAGS on exit. * testsuite/ld-scripts/expr.exp: Set LDFLAGS earlier, and with --image-base for PE. * testsuite/ld-scripts/include.exp: Set LDFLAGS for PE. * testsuite/ld-scripts/script.exp: Use is_pecoff_format, and set LDFLAGS as well as flags.
2020-07-07Use is_xcoff_format in ld testsuiteAlan Modra11-116/+63
* testsuite/ld-checks/checks.exp: Use is_xcoff_format. * testsuite/ld-powerpc/powerpc.exp: Likewise. * testsuite/ld-scripts/print-memory-usage.exp: Likewise. * testsuite/ld-srec/srec.exp: Likewise. * testsuite/ld-undefined/require-defined.exp: Likewise. * testsuite/ld-scripts/expr2.d: Likewise. * testsuite/ld-scripts/section-match-1.d: Only run for ELF. * testsuite/ld-elfvers/vers.exp: Delete dead code. * testsuite/ld-elfvsb/elfvsb.exp: Likewise. * testsuite/ld-elfweak/elfweak.exp: Likewise.
2020-07-07Use is_xcoff_format in gas testsuiteAlan Modra4-5/+11
* testsuite/gas/all/gas.exp: Use is_xcoff_format. * testsuite/gas/ppc/ppc.exp: Likewise. * testsuite/gas/all/weakref1l.d: Likewise.
2020-07-07Use is_xcoff_format in binutils testsuiteAlan Modra7-12/+26
and restrict some other tests using is_*_format. * testsuite/binutils-all/ar.exp: Use is_xcoff_format. * testsuite/binutils-all/nm.exp: Likewise. * testsuite/binutils-all/copy-2.d: Run only for elf and pe targets. * testsuite/binutils-all/copy-3.d: Run only for elf targets. * testsuite/binutils-all/set-section-alignment.d: Likewise. * testsuite/binutils-all/copy-4.d: Don't run for xcoff.
2020-07-07XCOFF binutils testsuite fixAlan Modra3-1/+19
Avoid an UNRESOLVED test due to "Error: the XCOFF file format does not support arbitrary sections". * testsuite/lib/binutils-common.exp (is_xcoff_format): New. * testsuite/binutils-all/objcopy.exp (pr25662): Exclude xcoff.
2020-07-07XCOFF linker script PROVIDE supportAlan Modra2-0/+6
Fixes bit rot from git commit b46a87b1606. * emultempl/aix.em (gld${EMULATION_NAME}_find_exp_assignment): Handle etree_provided.
2020-07-07XCOFF ld segfaults when running ld testsuiteAlan Modra2-7/+30
The binutils XCOFF support doesn't handle random linker scripts very well at all. These tweaks to final_link fix segfaults when some linker created sections are discarded due to "/DISCARD/ : { *(.*) }" in scripts. The xcoff_mark change is necessary to not segfault on symbols defined in scripts, which may be bfd_link_hash_defined yet have u.def.section set to bfd_und_section_ptr. (Which might seem odd, but occurs during early stages of linking before input sections are mapped.) * xcofflink.c (xcoff_mark): Don't mark const sections. (bfd_xcoff_record_link_assignment): Add FIXME. (_bfd_xcoff_bfd_final_link): Don't segfault on assorted magic sections being discarded by linker script.
2020-07-07XCOFF deterministic archivesAlan Modra2-0/+20
Adds support for "ar -D". * coff-rs6000.c (xcoff_write_archive_contents_old): Set default time, uid, gid and mode for deterministic archive. (xcoff_write_archive_contents_big): Likewise.
2020-07-07XCOFF C_HIDEXT and C_AIX_WEAKEXT classificationAlan Modra2-0/+15
If C_HIDEXT and C_AIX_WEAKEXT symbols aren't handled as globals by coff_classify_symbol then we run into "warning: .. local symbol `some garbage name' has no section". These are of course both global symbols, but C_HIDEXT is like a local in some respects and returning COFF_SYMBOL_LOCAL for C_HIDEXT keeps nm output looking the same. Fixes these fails on rs6000-aix5.1: -FAIL: weakref tests, relocations -FAIL: weakref tests, global syms -FAIL: weakref tests, strong undefined syms -FAIL: weakref tests, weak undefined syms * coffcode.h (coff_classify_symbol): Handle C_HIDEXT and C_AIX_WEAKEXT.
2020-07-07sh vxworks testsAlan Modra3-2/+7
These tests were failing only due to not being updated for readelf output changes. * testsuite/ld-sh/vxworks1-lib.rd: Update expected output. * testsuite/ld-sh/vxworks4.d: Likewise.
2020-07-07Stop the GOLD linker from complaining about relocations from ↵Nick Clifton2-0/+6
.gnu.build.attributes sections to discarded code sections. * target-reloc.h (Default_comdat_behaviour:get): Ignore discarded relocs that refer to the .gnu.build.attributes section.
2020-07-07Fix recent failures in the ARM assembler testsuite due to the correction of ↵Nick Clifton2-92/+97
a spelling mistake. * testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in expected output.
2020-07-07x86: introduce %BW to avoid going through vex_w_table[]Jan Beulich4-77/+27
This parallels %LW and %XW.