aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-01-27Fix objcopy --merge-notes dependency on qsort implementation behavior.users/roland/2.34/objcopy-merge-notes-qsortRoland McGrath2-16/+23
binutils/ * objcopy.c (compare_gnu_build_notes): Fix comparison results for overlapping ranges so that (A == B) == (B == A) holds. (cherry picked from commit 82ef9cad78b74ee9176e059e8c8dec1bdb4a1efe)
2020-01-27AArch64: Fix cfinv disassembly issuesTamar Christina8-1278/+1309
This fixes the preferred disassembly for cfinv. The Armv8.4-a instruction overlaps with the possible encoding space for msr. This because msr allows you to use unallocated encoding space using the general sA_B_cC_cD_E form. However when an encoding does become allocated then we need to ensure that it's used as the preferred disassembly. The problem with cfinv is that its mask has all bits sets because it has no arguments. This causes issues for the Alias resolver in gas as it uses the mask to build alias graph. In this case it can't do it since it thinks almost everything would alias with cfinv. So instead we can only fix this by moving cfinv before msr. gas/ChangeLog: PR 25403 * testsuite/gas/aarch64/armv8_4-a.d: Add cfinv. * testsuite/gas/aarch64/armv8_4-a.s: Likewise. opcodes/ChangeLog: PR 25403 * aarch64-tbl.h (struct aarch64_opcode): Re-order cfinv. * aarch64-asm-2.c: Regenerate * aarch64-dis-2.c: Likewise. * aarch64-opc-2.c: Likewise. (cherry picked from commit 7568c93bf95a518797dfb2987b04911164c14a36)
2020-01-27Automatic date update in version.inGDB Administrator1-1/+1
2020-01-26Automatic date update in version.inGDB Administrator1-1/+1
2020-01-25Automatic date update in version.inGDB Administrator1-1/+1
2020-01-24Automatic date update in version.inGDB Administrator1-1/+1
2020-01-23More updated translationNick Clifton7-3702/+4293
2020-01-23Automatic date update in version.inGDB Administrator1-1/+1
2020-01-22Automatic date update in version.inGDB Administrator1-1/+1
2020-01-21x86: VCVTNEPS2BF16{X,Y} should permit broadcastingJan Beulich8-8/+40
Just like other VCVT*{X,Y} templates do, and to allow the programmer flexibility (might be relevant in particular when heavily macro-izing code), the two templates should also have Broadcast set, just like their X/Y-suffix-less counterparts. This in turn requires them to also have * Dword set on their memory operands, to cover the logic added to i386gen by 4a1b91eabbe7 ("x86: Expand Broadcast to 3 bits"), * RegXMM/RegYMM set on their source operands, to satisfy broadcast sizing logic in gas itself. Otherwise ATTSyntax templates wouldn't need such operand size attributes. While extending the test cases, also add Intel syntax broadcast forms without explicit size specifiers.
2020-01-21Automatic date update in version.inGDB Administrator1-1/+1
2020-01-20Updated translations for various binutils sub-directoriesNick Clifton24-20752/+19886
2020-01-20Automatic date update in version.inGDB Administrator1-1/+1
2020-01-18Fix ld-x86-64/align-branch-1 test failure on --target=x86_64-elfRoland McGrath2-3/+9
ld/ChangeLog * testsuite/ld-x86-64/align-branch-1.d: Loosen instruction regexps to admit whatever absolute address. The label-relative address is what the test needs to verify.
2020-01-18Set BFD_VERSION to 2.33.90. Regenerate configure and pot files.Nick Clifton21-2855/+2936
2020-01-18Add markers for 2.34 branch to the NEWS files and ChangeLogs.Nick Clifton18-6/+65
2020-01-18Update top level config files with copies from the official repository.Nick Clifton3-53/+120
2020-01-01 Ben Elliston <bje@gnu.org> * config.guess: Update copyright years. * config.sub: Likewise. 2019-12-21 Ben Elliston <bje@gnu.org> * config.guess (set_cc_for_build): Prevent multiple calls by checking if $tmp is already set. We can't check CC_FOR_BUILD as the user may set it externally. Thanks to Torbj?rn Granlund for the bug report. 2019-12-21 Torbj?rn Granlund <tg@gmplib.org> * config.guess (alpha:Linux:*:*): Guard against missing /proc/cpuinfo by redirecting standard error to /dev/null. 2019-09-12 Daniel Bittman <danielbittman1@gmail.com> * config.guess (*:Twizzler:*:*): New. * config.sub (-twizzler*): New. 2019-07-24 Ben Elliston <bje@gnu.org> * config.guess (mips:OSF1:*.*): Whitespace cleanup. 2019-06-30 Ben Elliston <bje@gnu.org> * config.sub (case $os): Match nsk* and powerunix. Don't later match nsk* and set os=nsk which removes the OS version number. 2019-06-30 Ben Elliston <bje@gnu.org> * config.sub: Recognise os108*. 2019-06-26 Ben Elliston <bje@gnu.org> * config.sub (hp300): Set $os to hpux. 2019-06-26 Ben Elliston <bje@gnu.org> * config.sub (vsta): Move into alphabetical order. 2019-06-10 Ben Elliston <bje@gnu.org> * config.guess (*:OS108:*:*): Recognise new OS. 2019-05-28 Ben Elliston <bje@gnu.org> * config.guess (*:Darwin:*:*): Run xcode-select to determine if a system compiler is installed. If not, do not run set_cc_for_build, as the default cc will open a dialog box asking to install Xcode. If no C compiler is available, guess based on uname -p and uname -m. 2019-05-28 Ben Elliston <bje@gnu.org> * config.guess (*:Darwin:*:*): Simplify UNAME_PROCESSOR.
2020-01-18Automatic date update in version.inGDB Administrator1-1/+1
2020-01-17Make all-gdbsupport depend on all-bfdSimon Marchi3-0/+7
Trying to run "make all-gdbsupport" at the top-level in a build from scratch results in: make[2]: Entering directory '/home/smarchi/build/binutils-gdb/gdbsupport' CC agent.o In file included from /home/smarchi/src/binutils-gdb/gdbsupport/common-defs.h:133, from /home/smarchi/src/binutils-gdb/gdbsupport/agent.c:20: /home/smarchi/src/binutils-gdb/gdbsupport/common-types.h:35:10: fatal error: bfd.h: No such file or directory 35 | #include "bfd.h" | ^~~~~~~ Before building all-gdbsupport, we need all-bfd to run, so that bfd.h is generated. (Once this patch is merged in the binutils-gdb repo, I'll send it to gcc to keep the files in sync.) ChangeLog: * Makefile.def: Add dependencies of all-gdbsupport on all-bfd. * Makefile.in: Re-generate.
2020-01-17Fix spelling errorsChristian Biesinger8-5/+20
seperate -> separate bfd/ChangeLog: 2020-01-17 Christian Biesinger <cbiesinger@google.com> * coff-arm.c: Fix spelling error (seperate). * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling error (seperate). * sysdep.h (strnlen): Fix spelling error (seperate). opcodes/ChangeLog: 2020-01-17 Christian Biesinger <cbiesinger@google.com> * opintl.h: Fix spelling error (seperate). sim/arm/ChangeLog: 2020-01-17 Christian Biesinger <cbiesinger@google.com> * iwmmxt.c: Fix spelling error (seperate). Change-Id: I55e5f47bcf3cf3533d2acb7ad338f1be0d5f30f9
2020-01-17Fix a libiberty testsuite failure.Nick Clifton2-1/+6
* testsuite/demangle-expected: Update expected demangling of enable_if pattern.
2020-01-17Improve the performance of the ascii art jump visualizer.Thomas Troeger2-27/+46
* objdump.c (jump_info_visualize_address): Discard jumps that are no longer needed. (disassemble_bytes): Only compute the maximum level if jumps were detected.
2020-01-17Fix gdbsupport build on compilers that don't default to C++11 or abovePedro Alves3-0/+9
gdbsupport fails to build with compilers that don't default to C++11 or above. gdbsupport's configure.ac is already using AX_CXX_COMPILE_STDCXX, which sets CXX_DIALECT to the -std=gnu++11 switch if necessary, but the problem is that nowhere are we using CXX_DIALECT. This fixes it. gdbsupport/ChangeLog: 2020-01-17 Pedro Alves <palves@redhat.com> * Makefile.am: Append CXX_DIALECT to CXX. * Makefile.in: Regenerate.
2020-01-17Fix gdbsupport buildPedro Alves5-54/+62
I'm seeing this on F27 (a clean build from scratch): ~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[3]: Entering directory '/home/pedro/brno/pedro/gdb/binutils-gdb/build/gdbsupport' CC gdb_tilde_expand.o In file included from /home/pedro/gdb/binutils-gdb/src/gdbsupport/../gnulib/import/libc-config.h:33:0, from ../gnulib/import/glob.h:544, from /home/pedro/gdb/binutils-gdb/src/gdbsupport/gdb_tilde_expand.c:22: ../bfd/config.h:7:4: error: #error config.h must be #included before system headers # error config.h must be #included before system headers ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ libc-config.h, where it includes config.h, says: ~~~~~~~~~~~~~~~~~~~~~~~~~~~ /* This is intended to be a good-enough substitute for glibc system macros like those defined in <sys/cdefs.h>, so that Gnulib code shared with glibc can do this as the first #include: #ifndef _LIBC # include <libc-config.h> #endif When compiled as part of glibc this is a no-op; when compiled as part of Gnulib this includes Gnulib's <config.h> and defines macros that glibc library code would normally assume. */ #include <config.h> ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The issue is that that '#include <config.h>' picks up bfd's config.h instead of gnulib's. This problem doesn't trigger in the gdb dir because there we generate config.h under that exact name so gnulib's libc-config.h ends up picking gdb's config.h instead of gnulib.c and that ends up harmless. In gdbsupport, the config.h file is really named support-config.h, so that '#include <config.h>' in libc-config.h doesn't pick it like it would if it had the conventional config.h name. This patch fixes it by simply renaming gdbserver's support-config.h to config.h. gdbsupport/ChangeLog: 2020-01-17 Pedro Alves <palves@redhat.com> * configure.ac: Generate config.h instead of support-config.h. * common-defs.h: Include <gdbsupport/config.h> instead of <gdbsupport/support-config.h>. * Makefile.in: Regenerate. * configure: Regenerate.
2020-01-17x86: Add {vex} pseudo prefixH.J. Lu8-11/+40
There are 2-byte VEX prefix and 3-byte VEX prefix. 2-byte VEX prefix can't encode all operands. By default, assembler tries 2-byte VEX prefix first. {vex3} can be used to force 3-byte VEX prefix. This patch adds {vex} pseudo prefix and keeps {vex2} for backward compatibility. gas/ * config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2 with vex_encoding_vex. (parse_insn): Likewise. * doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex} and {vex3} documentation. * testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with {vex}. * testsuite/gas/i386/x86-64-pseudos.s: Likewise. opcodes/ * i386-opc.tbl: Add {vex} pseudo prefix. * i386-tbl.h: Regenerated.
2020-01-17gdb: remove uses of iterate_over_inferiors in top.cSimon Marchi2-32/+28
Replace with range-based for loops. gdb/ChangeLog: * top.c (struct qt_args): Remove. (kill_or_detach): Change return type to void, replace `void *` parameter with a proper one. (print_inferior_quit_action): Likewise. (quit_confirm): Use range-based for loop to iterate over inferiors. (quit_force): Likewise.
2020-01-17gdb: remove uses of iterate_over_inferiors in mi/mi-main.cSimon Marchi2-46/+40
Replace with range-based loops. gdb/ChangeLog: * mi/mi-main.c (run_one_inferior): Change return type to void, replace `void *` parameter with proper parameters. (mi_cmd_exec_run): Use range-based loop to iterate over inferiors. (print_one_inferior): Change return type to void, replace `void *` parameter with proper parameters. (mi_cmd_list_thread_groups): Use range-based loop to iterate over inferiors. (get_other_inferior): Remove. (mi_cmd_remove_inferior): Use range-based loop to iterate over inferiors.
2020-01-17gdb: remove use of iterate_over_inferiors in mi/mi-interp.cSimon Marchi2-28/+26
Replace it with a range-based for. I've updated the comment in mi_interp::init, which was a bit stale. gdb/ChangeLog: * mi/mi-interp.c (report_initial_inferior): Remove. (mi_interp::init): Use range-based for to iterate over inferiors.
2020-01-17gdb: remove use of iterate_over_inferiors in py-inferior.cSimon Marchi2-14/+15
Use range-based for instead of iterate_over_inferiors in one spot in the Python code. gdb/ChangeLog: * python/py-inferior.c (build_inferior_list): Remove. (gdbpy_ref): Use range-based for loop to iterate over inferiors.
2020-01-17Forgot to add testcases to commit for [binutils][arm] PR25376 Change MVE ...Andre Vieira4-0/+30
The original commit was 2da2eaf4ce299c84c5a1f1bc6f7944266cb36d6e
2020-01-17Update libiberty sources with changes in the gcc mainline.Nick Clifton100-456/+875
+2020-01-01 Jakub Jelinek <jakub@redhat.com> + + Update copyright years. + +2019-12-06 Tim Ruehsen <tim.ruehsen@gmx.de> + + * make-relative-prefix.c (split_directories): + Return early on empty 'name' + +2019-11-16 Tim Ruehsen <tim.ruehsen@gmx.de> + + * cp-demangle.c (d_print_init): Remove const from 4th param. + (cplus_demangle_fill_name): Initialize d->d_counting. + (cplus_demangle_fill_extended_operator): Likewise. + (cplus_demangle_fill_ctor): Likewise. + (cplus_demangle_fill_dtor): Likewise. + (d_make_empty): Likewise. + (d_count_templates_scopes): Remobe const from 3rd param, + Return on dc->d_counting > 1, + Increment dc->d_counting. + * cp-demint.c (cplus_demangle_fill_component): Initialize d->d_counting. + (cplus_demangle_fill_builtin_type): Likewise. + (cplus_demangle_fill_operator): Likewise. + +2019-11-16 Eduard-Mihai Burtescu <eddyb@lyken.rs> + + * cplus-dem.c (cplus_demangle): Use rust_demangle directly. + (rust_demangle): Remove. + * rust-demangle.c (is_prefixed_hash): Rename to is_legacy_prefixed_hash. + (parse_lower_hex_nibble): Rename to decode_lower_hex_nibble. + (parse_legacy_escape): Rename to decode_legacy_escape. + (rust_is_mangled): Remove. + (struct rust_demangler): Add. + (peek): Add. + (next): Add. + (struct rust_mangled_ident): Add. + (parse_ident): Add. + (rust_demangle_sym): Remove. + (print_str): Add. + (PRINT): Add. + (print_ident): Add. + (rust_demangle_callback): Add. + (struct str_buf): Add. + (str_buf_reserve): Add. + (str_buf_append): Add. + (str_buf_demangle_callback): Add. + (rust_demangle): Add. + * rust-demangle.h: Remove. + +2019-11-15 Miguel Saldivar <saldivarcher@gmail.com> + + * testsuite/demangle-expected: Fix test. + +2019-11-04 Kamlesh Kumar <kamleshbhalui@gmail.com> + + * cp-demangle.c (d_expr_primary): Handle + nullptr demangling. + * testsuite/demangle-expected: Added test. + +2019-10-29 Paul Pluzhnikov <ppluzhnikov@google.com> + + * cp-demangle.c (d_number): Avoid signed int overflow. + +2019-10-28 Miguel Saldivar <saldivarcher@gmail.com> + + * cp-demangle.c (d_print_mod): Add a space before printing `complex` + and `imaginary`, as opposed to after. + * testsuite/demangle-expected: Adjust test. + +2019-10-03 Eduard-Mihai Burtescu <eddyb@lyken.rs> + + * rust-demangle.c (looks_like_rust): Remove. + (rust_is_mangled): Don't check escapes. + (is_prefixed_hash): Allow 0-9a-f permutations. + (rust_demangle_sym): Don't bail on unknown escapes. + * testsuite/rust-demangle-expected: Update 'main::$99$' test. + +2019-09-03 Eduard-Mihai Burtescu <eddyb@lyken.rs> + + * rust-demangle.c (unescape): Remove. + (parse_lower_hex_nibble): New function. + (parse_legacy_escape): New function. + (is_prefixed_hash): Use parse_lower_hex_nibble. + (looks_like_rust): Use parse_legacy_escape. + (rust_demangle_sym): Use parse_legacy_escape. + * testsuite/rust-demangle-expected: Add 'llv$u6d$' test. + +2019-08-27 Martin Liska <mliska@suse.cz> + + PR lto/91478 + * simple-object-elf.c (simple_object_elf_copy_lto_debug_sections): + First find a WEAK HIDDEN symbol in symbol table that will be + preserved. Later, use the symbol name for all removed symbols. + +2019-08-12 Martin Liska <mliska@suse.cz> + + * Makefile.in: Add filedescriptor.c. + * filedescriptor.c: New file. + * lrealpath.c (is_valid_fd): Remove. diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in index 0be45b4ae8..fe738d0db4 100644 --- a/libiberty/Makefile.in +++ b/libiberty/Makefile.in @@ -1,7 +1,7 @@ # Makefile for the libiberty library. # Originally written by K. Richard Pixley <rich@cygnus.com>. # -# Copyright (C) 1990-2019 Free Software Foundation, Inc. +# Copyright (C) 1990-2020 Free Software Foundation, Inc. # # This file is part of the libiberty library. # Libiberty is free software; you can redistribute it and/or @@ -127,7 +127,7 @@ CFILES = alloca.c argv.c asprintf.c atexit.c \ calloc.c choose-temp.c clock.c concat.c cp-demangle.c \ cp-demint.c cplus-dem.c crc32.c \ d-demangle.c dwarfnames.c dyn-string.c \ - fdmatch.c ffs.c fibheap.c filename_cmp.c floatformat.c \ + fdmatch.c ffs.c fibheap.c filedescriptor.c filename_cmp.c floatformat.c \ fnmatch.c fopen_unlocked.c \ getcwd.c getopt.c getopt1.c getpagesize.c getpwd.c getruntime.c \ gettimeofday.c \ @@ -171,6 +171,7 @@ REQUIRED_OFILES = \ ./cp-demint.$(objext) ./crc32.$(objext) ./d-demangle.$(objext) \ ./dwarfnames.$(objext) ./dyn-string.$(objext) \ ./fdmatch.$(objext) ./fibheap.$(objext) \ + ./filedescriptor.$(objext) \ ./filename_cmp.$(objext) ./floatformat.$(objext) \ ./fnmatch.$(objext) ./fopen_unlocked.$(objext) \ ./getopt.$(objext) ./getopt1.$(objext) ./getpwd.$(objext) \ @@ -756,6 +757,17 @@ $(CONFIGURED_OFILES): stamp-picdir stamp-noasandir else true; fi $(COMPILE.c) $(srcdir)/fibheap.c $(OUTPUT_OPTION) +./filedescriptor.$(objext): $(srcdir)/filedescriptor.c config.h $(INCDIR)/ansidecl.h \ + $(INCDIR)/libiberty.h + if [ x"$(PICFLAG)" != x ]; then \ + $(COMPILE.c) $(PICFLAG) $(srcdir)/filedescriptor.c -o pic/$@; \ + else true; fi + if [ x"$(NOASANFLAG)" != x ]; then \ + $(COMPILE.c) $(PICFLAG) $(NOASANFLAG) $(srcdir)/filedescriptor.c -o noasan/$@; \ + else true; fi + $(COMPILE.c) $(srcdir)/filedescriptor.c $(OUTPUT_OPTION) + + ./filename_cmp.$(objext): $(srcdir)/filename_cmp.c config.h $(INCDIR)/ansidecl.h \ $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \ $(INCDIR)/safe-ctype.h diff --git a/libiberty/_doprnt.c b/libiberty/_doprnt.c index d44dc415ed..a739f4304f 100644 --- a/libiberty/_doprnt.c +++ b/libiberty/_doprnt.c @@ -1,5 +1,5 @@ /* Provide a version of _doprnt in terms of fprintf. - Copyright (C) 1998-2019 Free Software Foundation, Inc. + Copyright (C) 1998-2020 Free Software Foundation, Inc. Contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 3/29/98 This program is free software; you can redistribute it and/or modify it diff --git a/libiberty/argv.c b/libiberty/argv.c index 6444896f99..8c9794db6a 100644 --- a/libiberty/argv.c +++ b/libiberty/argv.c @@ -1,5 +1,5 @@ /* Create and destroy argument vectors (argv's) - Copyright (C) 1992-2019 Free Software Foundation, Inc. + Copyright (C) 1992-2020 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support This file is part of the libiberty library. diff --git a/libiberty/asprintf.c b/libiberty/asprintf.c index 5718682f69..6e38e2234d 100644 --- a/libiberty/asprintf.c +++ b/libiberty/asprintf.c @@ -1,6 +1,6 @@ /* Like sprintf but provides a pointer to malloc'd storage, which must be freed by the caller. - Copyright (C) 1997-2019 Free Software Foundation, Inc. + Copyright (C) 1997-2020 Free Software Foundation, Inc. Contributed by Cygnus Solutions. This file is part of the libiberty library. diff --git a/libiberty/choose-temp.c b/libiberty/choose-temp.c index 72c1b710bd..49a2faaa51 100644 --- a/libiberty/choose-temp.c +++ b/libiberty/choose-temp.c @@ -1,5 +1,5 @@ /* Utility to pick a temporary filename prefix. - Copyright (C) 1996-2019 Free Software Foundation, Inc. + Copyright (C) 1996-2020 Free Software Foundation, Inc. This file is part of the libiberty library. Libiberty is free software; you can redistribute it and/or diff --git a/libiberty/clock.c b/libiberty/clock.c index a3730714bd..0de74657d0 100644 --- a/libiberty/clock.c +++ b/libiberty/clock.c @@ -1,5 +1,5 @@ /* ANSI-compatible clock function. - Copyright (C) 1994-2019 Free Software Foundation, Inc. + Copyright (C) 1994-2020 Free Software Foundation, Inc. This file is part of the libiberty library. This library is free software; you can redistribute it and/or modify it under the diff --git
2020-01-17Automatic date update in version.inGDB Administrator1-1/+1
2020-01-16Fix some spelling errors.Christian Biesinger8-7/+20
I noticed those from a lintian run: https://salsa.debian.org/cbiesinger-guest/gdb/-/jobs/514119 gdb/ChangeLog: 2020-01-16 Christian Biesinger <cbiesinger@google.com> * btrace.c (btrace_compute_ftrace_1): Fix spelling error (Unkown). (btrace_stitch_trace): Likewise. * charset.c (intermediate_encoding): Likewise (vaild). * nat/linux-btrace.c (linux_read_pt): Likewise (Unkown). * python/py-record-btrace.c (struct PyMethodDef): Likewise (occurences). * record-btrace.c (record_btrace_print_conf): Likewise (unkown). gdb/testsuite/ChangeLog: 2020-01-16 Christian Biesinger <cbiesinger@google.com> * lib/gdb.exp: Fix spelling error (seperatelly). Change-Id: I2a44936bac295020f217fb6c78b99b0a8d09cf9a
2020-01-16Add type for $_tlb->process_environment_block->process_parametersHannes Domani2-1/+65
The type then looks like this: (gdb) pt $_tlb->process_environment_block->process_parameters type = struct rtl_user_process_parameters { DWORD32 maximum_length; DWORD32 length; DWORD32 flags; DWORD32 debug_flags; void *console_handle; DWORD32 console_flags; void *standard_input; void *standard_output; void *standard_error; unicode_string current_directory; void *current_directory_handle; unicode_string dll_path; unicode_string image_path_name; unicode_string command_line; void *environment; DWORD32 starting_x; DWORD32 starting_y; DWORD32 count_x; DWORD32 count_y; DWORD32 count_chars_x; DWORD32 count_chars_y; DWORD32 fill_attribute; DWORD32 window_flags; DWORD32 show_window_flags; unicode_string window_title; unicode_string desktop_info; unicode_string shell_info; unicode_string runtime_data; } * It's mainly useful to get the current directory, or the full command line: (gdb) p $_tlb->process_environment_block->process_parameters->current_directory $1 = { length = 26, maximum_length = 520, buffer = 0xe36c8 L"C:\\src\\tests\\" } (gdb) p $_tlb->process_environment_block->process_parameters->command_line $2 = { length = 94, maximum_length = 96, buffer = 0xe32aa L"\"C:\\gdb\\build64\\gdb-git\\gdb\\gdb.exe\" access.exe" } The type names are all lowercase because the existing types created by windows_get_tlb_type are also lowercase. Type unicode_string is documented at [1]. The official documentation [2] for rtl_user_process_parameters is limited, so I've used this other page [3]. [1] https://docs.microsoft.com/en-us/windows/win32/api/ntdef/ns-ntdef-_unicode_string [2] https://docs.microsoft.com/en-us/windows/win32/api/winternl/ns-winternl-rtl_user_process_parameters [3] https://www.nirsoft.net/kernel_struct/vista/RTL_USER_PROCESS_PARAMETERS.html gdb/ChangeLog: 2020-01-16 Hannes Domani <ssbssa@yahoo.de> * windows-tdep.c (windows_get_tlb_type): Add rtl_user_process_parameters type.
2020-01-16Ensure proc-service symbols have default visibility (PR build/24805)Pedro Alves2-0/+40
Compiling GDB with '-fvisibility=hidden' removes the symbols that should be exported. This patch explicitly marks them as visible. gdb/ChangeLog: 2020-01-16 Pedro Alves <palves@redhat.com> Norbert Lange <nolange79@gmail.com> PR build/24805 * gdbsupport/gdb_proc_service.h (PS_EXPORT): New. (ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs) (ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue) (ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread) (ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs) (ps_plog): Redeclare exported functions with default visibility.
2020-01-16[gdb] Move ChangeLog entries to their right filesPedro Alves29-314/+453
I spotted a few misplaced entries in the ChangeLog-2019 entries, and went on to fix them. Looking around I saw a good number of other entries in other years. Then OCD got the best of me and I fixed them all. Also fixes cases of wrong paths in entries, like "* gdb/foo.c" instead of "* foo.c".
2020-01-16Support for DWARF5 location lists entriesNitika Achra2-0/+44
This patch handles DW_LLE_base_addressx, DW_LLE_startx_length and DW_LLE_start_length. Tested by running the testsuite before and after the patch and there is no increase in the number of test cases that fails. Tested with both -gdwarf-4 and -gdwarf-5 flags. Also tested -gslit-dwarf along with -gdwarf-4 as well as -gdwarf5 flags. This is an effort to support DWARF5 in gdb. gdb/ChangeLog: * dwarf2loc.c (decode_debug_loclists_addresses): Handle DW_LLE_base_addressx, DW_LLE_startx_length, DW_LLE_start_length.
2020-01-16[binutils][arm] PR25376 Change MVE into a CORE_HIGH featureAndre Vieira6-243/+275
This patch moves MVE feature bits into the CORE_HIGH section. This makes sure .fpu and -mfpu does not reset the bits set by MVE. This is important because .fpu has no option to "set" these same bits and thus, mimic'ing GCC, we choose to define MVE as an architecture extension rather than put it together with other the legacy fpu features. This will enable the following behavior: .arch armv8.1-m.main .arch mve .fpu fpv5-sp-d16 #does not disable mve. vadd.i32 q0, q1, q2 This patch also makes sure MVE is not taken into account during auto-detect. This was already the case, but because we moved the MVE bits to the architecture feature space we must make sure ARM_ANY does not include MVE. gas/ChangeLog: 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com> PR 25376 * config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH. (armv8_1m_main_ext_table): Use CORE_HIGH for mve. * testsuite/arm/armv8_1-m-fpu-mve-1.s: New. * testsuite/arm/armv8_1-m-fpu-mve-1.d: New. * testsuite/arm/armv8_1-m-fpu-mve-2.s: New. * testsuite/arm/armv8_1-m-fpu-mve-2.d: New. include/ChangeLog: 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com> PR 25376 * opcodes/arm.h (FPU_MVE, FPU_MVE_FPU): Move these features to... (ARM_EXT2_MVE, ARM_EXT2_MVE_FP): ... the CORE_HIGH space. (ARM_ANY): Redefine to not include any MVE bits. (ARM_FEATURE_ALL): Removed. opcodes/ChangeLog: 2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com> PR 25376 * opcodes/arm-dis.c (coprocessor_opcodes): Use CORE_HIGH for MVE bits. (neon_opcodes): Likewise. (select_arm_features): Make sure we enable MVE bits when selecting armv8.1-m.main. Make sure we do not enable MVE bits when not selecting any architecture.
2020-01-16MSP430: Remove unused linker script template elf32msp430_3.scJozef Lawrynowicz2-224/+4
ld/ChangeLog: 2020-01-16 Jozef Lawrynowicz <jozef.l@mittosystems.com> * scripttempl/elf32msp430_3.sc: Remove.
2020-01-16MSP430: Add input section rules for .upper sections to default linker scriptJozef Lawrynowicz4-0/+50
ld/ChangeLog: 2020-01-16 Jozef Lawrynowicz <jozef.l@mittosystems.com> * scripttempl/elf32msp430.sc: Add input section rules for .upper.{text,data,rodata,bss}. * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. * testsuite/ld-msp430-elf/upper-input-sections.s: New test.
2020-01-16x86: drop found_cpu_match local variableJan Beulich2-8/+7
50aecf8c5f could have done so right away; perhaps the variable shouldn't have been introduced in the first place.
2020-01-16x86: drop stale Vec_Imm4 related commentJan Beulich2-2/+4
I overlooked this in commit 9d3bf266fd ("x86: drop Vec_Imm4"), presumably because of the mis-spelling.
2020-01-16x86: add a few more missing VexWIGJan Beulich3-8/+14
Alternatively it could also be VexW0 (to match other SSE2AVX), but the VexW attribute shouldn't be left unset.
2020-01-16x86: VPEXTRQ/VPINSRQ are unavailable outside of 64-bit modeJan Beulich7-20/+70
The AVX512DQ patterns lacking a Cpu64 attribute made the memory operand forms accepted even outside of 64-bit mode, and this even without any {evex} pseudo-prefix (otherwise one could argue that this is an attempt to follow one possible, albeit somewhat odd, interpretation of the SDM wording to this effect). For consistency between the various involved templates drop the * (now) unnecessary IgnoreSize attributes * unnecessary (due to VexW1) Size64 attributes from VEX encoded forms * redundant (with Reg64) Qword operand attributes uniformly.
2020-01-16Automatic date update in version.inGDB Administrator1-1/+1
2020-01-15texi2pod.pl: import support for @t{...} from gccSimon Marchi2-0/+5
GDB's man page source (in gdb.texinfo) contains: @t{++} The @t{...} part is supposed to display the wrapped text with a fixed-width font. The texi2pod.pl script currently doesn't handle @t{...}, so it appears as-is in the man page: You can use GDB to debug programs written in C, C@t{++}, Fortran and Modula-2. gcc's version of texi2pod.pl (at contrib/texi2pod.pl in gcc's repo) replaces @t{...} with the wrapped text as-is, which I think is an acceptable behavior. The fixed-width font distinction is not really important for a man page, where the text will be displayed with whatever font the user is using. Import the line that does that from gcc's version. I have verified that there is no other, unwanted change in man pages generated in binutils' and GDB's doc, with this patch applied. etc/ChangeLog: * texi2pod.pl: Handle @t{...} tags.
2020-01-15Use get_thread_regcache instead of get_current_regcache in post_create_inferiorSimon Marchi2-1/+7
In post_create_inferior, we get the current thread using the inferior_thread function and store it in `thr`. We then call get_current_regcache immediately after, which does: return get_thread_regcache (inferior_thread ()); This patch makes post_create_inferior use get_thread_regcache, passing `thr`, saving an unnecessary inferior_thread call. gdb/ChangeLog: * infcmd.c (post_create_inferior): Use get_thread_regcache instead of get_current_regcache.
2020-01-15Set the default page size of the PDP11 target to 8192 bytes.Lars Brinkhoff4-2/+12
PR 20694 bfd * pdp11.c (TARGET_PAGE_SIZE): Set to 8192. ld * temulparams/pdp11.sh (TARGET_PAGE_SIZE): Set to 8192.
2020-01-16tic4x disassembly static variablesAlan Modra2-31/+54
tic4x uses a number of static variables for tables that are generated depending on the current machine (tic4x vs. tic3x). However, it is possible to change the machine from one invocation of print_insn_tic4x to the next. This patch throws away the old state if that happens, and uses a relatively small known size array of register names rather than a malloc'd table. * tic4x-dis.c (tic4x_version): Make unsigned long. (optab, optab_special, registernames): New file scope vars. (tic4x_print_register): Set up registernames rather than malloc'd registertable. (tic4x_disassemble): Delete optable and optable_special. Use optab and optab_special instead. Throw away old optab, optab_special and registernames when info->mach changes.
2020-01-15MSP430: Fix relocation overflow when using #lo(EXP) macroJozef Lawrynowicz10-11/+114
gas/ChangeLog: 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com> * config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X relocations when the target is 430X, except when extracting part of an expression. (msp430_srcoperand): Adjust comment. Initialize the expp member of the msp430_operand_s struct as appropriate. (msp430_dstoperand): Likewise. * testsuite/gas/msp430/msp430.exp: Run new test. * testsuite/gas/msp430/reloc-lo-430x.d: New test. * testsuite/gas/msp430/reloc-lo-430x.s: New test. include/ChangeLog: 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com> * opcode/msp430.h (enum msp430_expp_e): New. (struct msp430_operand_s): Add expp member to struct. ld/ChangeLog: 2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com> * testsuite/ld-msp430-elf/msp430-elf.exp: Run new test. * testsuite/ld-msp430-elf/reloc-lo-430x.s: New test.