(gdb) layout asm Error opening terminal: emacs. bash$
Which emacs, which gdb mode, which gdb? With emacs 24.1.1, gdb mode (MI), current GDB mainline, I get: (gdb) layout asm &"TUI mode not allowed\n" ^error,msg="TUI mode not allowed" (gdb) With bug-gdb, I get no error, and then the "terminal" ends up broken.
s/bug-gdb/gud-gdb/ ...
Sorry, I figured the shell prompt at the end was enough to signify I was running gdb from the shell, as opposed to M-x foo RET. [dje@seba gdb]$ emacs --version GNU Emacs 24.3.1 Copyright (C) 2013 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of Emacs under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING. [dje@seba gdb]$ uname -a Linux seba.sebabeach.org 3.11.6-200.fc19.x86_64 #1 SMP Fri Oct 18 22:34:18 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [dje@seba gdb]$ make run ./gdb --data-directory=`pwd`/data-directory GNU gdb (GDB) 7.6.50.20131112-cvs Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word". (gdb) layout asm Error opening terminal: emacs. make: *** [run] Error 1 [dje@seba gdb]$
Urgh, this is ncurses itself calling exit. Reproducing outside of emacs: $ gdb -q -nx \ -ex "set env TERM=emacs" \ -ex "b exit" \ -ex "r" \ -ex "bt" \ --args ./gdb -ex "layout asm" ... Error opening terminal: emacs. Breakpoint 1, __GI_exit (status=1) at exit.c:100 100 __run_exit_handlers (status, &__exit_funcs, true); #0 __GI_exit (status=1) at exit.c:100 #1 0x000000324d00de43 in initscr () at ../../ncurses/base/lib_initscr.c:89 #2 0x00000000005040da in tui_enable () at ../../src/gdb/tui/tui.c:385 #3 0x00000000004fbfed in tui_layout_command (arg=0x7fffffffdf32 "asm", from_tty=1) at ../../src/gdb/tui/tui-layout.c:609 #4 0x00000000004dcdfb in do_cfunc (c=0xd9c8c0, args=0x7fffffffdf32 "asm", from_tty=1) at ../../src/gdb/cli/cli-decode.c:107 #5 0x00000000004dfe90 in cmd_func (cmd=0xd9c8c0, args=0x7fffffffdf32 "asm", from_tty=1) at ../../src/gdb/cli/cli-decode.c:1882 #6 0x00000000006ea5d9 in execute_command (p=0x7fffffffdf34 "m", from_tty=1) at ../../src/gdb/top.c:467 #7 0x00000000005e53dc in catch_command_errors (command=0x6ea366 <execute_command>, arg=0x7fffffffdf2b "layout asm", from_tty=1, mask=RETURN_MASK_ALL) at ../../src/gdb/exceptions.c:551 #8 0x00000000005e8d17 in captured_main (data=0x7fffffffda30) at ../../src/gdb/main.c:1043 #9 0x00000000005e5306 in catch_errors (func=0x5e7bff <captured_main>, func_args=0x7fffffffda30, errstring=0x8ab1f4 "", mask=RETURN_MASK_ALL) at ../../src/gdb/exceptions.c:524 #10 0x00000000005e8dbb in gdb_main (args=0x7fffffffda30) at ../../src/gdb/main.c:1076 #11 0x000000000045b53a in main (argc=3, argv=0x7fffffffdb38) at ../../src/gdb/gdb.c:34 (gdb)
In fact, any unknown terminal will cause that: $ TERM=foo ./gdb -q -nx -ex "layout asm" Error opening terminal: foo. $
initscr is actually documented to do that. http://pubs.opengroup.org/onlinepubs/7908799/xcurses/initscr.html Should be using newterm directly instead of initscr.
Filing for reference sake. (gdb) refresh Error opening terminal: emacs. make: *** [run] Error 1 [dje@sspiff gdb]$ I haven't looked at the code, hopefully the same fix will fix every affected command, but I didn't want to assume that ...
Yes, I think we can assume that. The initscr call is in tui_enable. This is the function that initializes curses the first time TUI is enabled, so it's guaranteed that all TUI commands will end up calling it. Here's the "refresh" backtrace. (top-gdb) bt #0 tui_enable () at ../../src/gdb/tui/tui.c:372 #1 0x0000000000501c72 in tui_refresh_all_command (arg=0x0, from_tty=1) at ../../src/gdb/tui/tui-win.c:986 #2 0x00000000004dd78f in do_cfunc (c=0xdb7ed0, args=0x0, from_tty=1) at ../../src/gdb/cli/cli-decode.c:107 #3 0x00000000004e0824 in cmd_func (cmd=0xdb7ed0, args=0x0, from_tty=1) at ../../src/gdb/cli/cli-decode.c:1882 #4 0x00000000006ed521 in execute_command (p=0xcc06c7 "", from_tty=1) at ../../src/gdb/top.c:468 #5 0x00000000005f27a7 in command_handler (command=0xcc06c0 "refresh") at ../../src/gdb/event-top.c:435 (...)
If emacs is setting the TERM environment variable to emacs without installing a terminfo file, that's a bug in emacs, not ncurses or gdb.
It's still a bug for GDB to just exit and lose the debug session in this scenario. It would be perhaps (barely) acceptable if curses was initialized righ when gdb starts up, and so gdb would refuse to start up. But since curses is lazily initialized, there's really no excuse. The fix doesn't look hard at all, it just needs someone to do it.
Created attachment 7327 [details] Fix to use newterm instead of initscr in tui_enable This fixes the actual problem. Things remaining: * ChangeLog * tests * decide what exactly the error should say. $ git pull git://github.com/o11c/binutils-gdb.git bug-16138 Browse at https://github.com/o11c/binutils-gdb/tree/bug-16138
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The branch, master has been updated via 84eda397bcf3ebea00383e4a6a864af59723dafd (commit) from 563e8d85161198df8a13de4bc660a047305458c9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=84eda397bcf3ebea00383e4a6a864af59723dafd commit 84eda397bcf3ebea00383e4a6a864af59723dafd Author: Pedro Alves <palves@redhat.com> Date: Wed Oct 29 14:23:57 2014 +0000 PR tui/16138, PR tui/17519, and misc failures to initialize the terminal PR tui/16138 is about failure to initialize curses resulting in GDB exiting instead of throwing an error. E.g.: $ TERM=foo gdb (gdb) layout asm Error opening terminal: foo. $ The problem is that we're calling initscr to initialize the screen. As mentioned in http://pubs.opengroup.org/onlinepubs/7908799/xcurses/initscr.html: If errors occur, initscr() writes an appropriate error message to standard error and exits. ^^^^^ Instead, we should use newterm: "A program that needs an indication of error conditions, so it can continue to run in a line-oriented mode if the terminal cannot support a screen-oriented program, would also use this function." After the patch: $ TERM=foo gdb -q -nx (gdb) layout asm Cannot enable the TUI: error opening terminal [TERM=foo] (gdb) And then PR tui/17519 is about GDB not validating whether the terminal has the necessary capabilities when enabling the TUI. If one tries to enable the TUI with TERM=dumb (and e.g., from a shell within emacs), GDB ends up with a clear screen, the cursor is placed at the bottom/right corner of the screen, there's no prompt, typing shows no echo, and there's no indication of what's going on. c-x,a gets you out of the TUI, but it's completely non-obvious. After the patch, we get: $ TERM=dumb gdb -q -nx (gdb) layout asm Cannot enable the TUI: terminal doesn't support cursor addressing [TERM=dumb] (gdb) While at it, I've moved all the tui_allowed_p validation to tui_enable, and expanded the error messages. Previously we'd get: $ gdb -q -nx -i=mi (gdb) layout asm &"layout asm\n" &"TUI mode not allowed\n" ^error,msg="TUI mode not allowed" and: $ gdb -q -nx -ex "layout asm" > foo TUI mode not allowed While now we get: $ gdb -q -nx -i=mi (gdb) layout asm &"layout asm\n" &"Cannot enable the TUI when the interpreter is 'mi'\n" ^error,msg="Cannot enable the TUI when the interpreter is 'mi'" (gdb) and: $ gdb -q -nx -ex "layout asm" > foo Cannot enable the TUI when output is not a terminal Tested on x86_64 Fedora 20. gdb/ 2014-10-29 Pedro Alves <palves@redhat.com> PR tui/16138 PR tui/17519 * tui/tui-interp.c (tui_is_toplevel): Delete global. (tui_allowed_p): Delete function. * tui/tui.c: Include "interps.h". (tui_enable): Don't use tui_allowed_p. Error out here with detailed error messages if the TUI is the top level interpreter, or if output is not a terminal. Use newterm instead of initscr, and error out if initializing the terminal fails. Also error out if the terminal doesn't support cursor addressing. * tui/tui.h (tui_allowed_p): Delete declaration. ----------------------------------------------------------------------- Summary of changes: gdb/tui/tui-interp.c | 17 ---------------- gdb/tui/tui.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++--- gdb/tui/tui.h | 4 --- 3 files changed, 49 insertions(+), 25 deletions(-)
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The branch, master has been updated via 1e1e619b6b382f9b354d78018ddb73f0070375d2 (commit) from 551cb6a52d99c04055afed182479a8780a15f4a1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1e1e619b6b382f9b354d78018ddb73f0070375d2 commit 1e1e619b6b382f9b354d78018ddb73f0070375d2 Author: Pedro Alves <palves@redhat.com> Date: Wed Oct 29 14:49:05 2014 +0000 PR tui/16138 is about failure to initialize curses resulting in GDB exiting instead of throwing an error. E.g.: $ TERM=foo gdb (gdb) layout asm Error opening terminal: foo. $ The problem is that we're calling initscr to initialize the screen. As mentioned in http://pubs.opengroup.org/onlinepubs/7908799/xcurses/initscr.html: If errors occur, initscr() writes an appropriate error message to standard error and exits. ^^^^^ Instead, we should use newterm: "A program that needs an indication of error conditions, so it can continue to run in a line-oriented mode if the terminal cannot support a screen-oriented program, would also use this function." After the patch: $ TERM=foo gdb -q -nx (gdb) layout asm Cannot enable the TUI: error opening terminal [TERM=foo] (gdb) And then PR tui/17519 is about GDB not validating whether the terminal has the necessary capabilities when enabling the TUI. If one tries to enable the TUI with TERM=dumb (and e.g., from a shell within emacs), GDB ends up with a clear screen, the cursor is placed at the bottom/right corner of the screen, there's no prompt, typing shows no echo, and there's no indication of what's going on. c-x,a gets you out of the TUI, but it's completely non-obvious. After the patch, we get: $ TERM=dumb gdb -q -nx (gdb) layout asm Cannot enable the TUI: terminal doesn't support cursor addressing [TERM=dumb] (gdb) While at it, I've moved all the tui_allowed_p validation to tui_enable, and expanded the error messages. Previously we'd get: $ gdb -q -nx -i=mi (gdb) layout asm &"layout asm\n" &"TUI mode not allowed\n" ^error,msg="TUI mode not allowed" and: $ gdb -q -nx -ex "layout asm" > foo TUI mode not allowed While now we get: $ gdb -q -nx -i=mi (gdb) layout asm &"layout asm\n" &"Cannot enable the TUI when the interpreter is 'mi'\n" ^error,msg="Cannot enable the TUI when the interpreter is 'mi'" (gdb) and: $ gdb -q -nx -ex "layout asm" > foo Cannot enable the TUI when output is not a terminal Tested on x86_64 Fedora 20. gdb/ 2014-10-29 Pedro Alves <palves@redhat.com> PR tui/16138 PR tui/17519 * tui/tui-interp.c (tui_is_toplevel): Delete global. (tui_allowed_p): Delete function. * tui/tui.c: Include "interps.h". (tui_enable): Don't use tui_allowed_p. Error out here with detailed error messages if the TUI is the top level interpreter, or if output is not a terminal. Use newterm instead of initscr, and error out if initializing the terminal fails. Also error out if the terminal doesn't support cursor addressing. * tui/tui.h (tui_allowed_p): Delete declaration. ----------------------------------------------------------------------- Summary of changes: gdb/ChangeLog | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-)
Fixed.
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The annotated tag, hjl/linux/release/2.25.51.0.1 has been created at 02458b5b7894e10794a1e1b87e4f8e36b3198b10 (tag) tagging a0890eb04228a6b921697b1192285b57e5f46e97 (commit) replaces hjl/linux/release/2.24.51.0.4 tagged by H.J. Lu on Wed Dec 24 16:43:46 2014 -0800 - Log ----------------------------------------------------------------- Linux binutils 2.25.51.0.1 Ajit Kumar Agarwal (2): Microblaze: Reject invalid target descriptions Microblaze: Replace microblaze-expedite from pc to rpc Alan Modra (122): daily update Regen gold POTFILES.in daily update daily update daily update Do away with hash table line lookup in dwarf2dbg.c daily update daily update daily update daily update daily update daily update daily update Discard zero address range eh_frame FDEs daily update daily update daily update daily update daily update daily update daily update daily update daily update Run eh_frame optimisation for relocatable link daily update sparc-aout and sparc-coff breakage Correct fscanf char field count Avoid undefined behaviour with signed expressions daily update ChangeLog typo fix Define bfd_find_line entry of BFD_JUMP_TABLE_SYMBOLS using NAME. Merge bfd_find_nearest_line variants daily update PR17488, powerpc64-linux-ld segfault Fix 17492, ld segfault with --oformat=binary daily update daily update Fix PR17493, attempted output of *GAS `reg' section* symbol PowerPC64 ELFv1 function symbol definition vs LTO and discarded sections daily update daily update daily update Add gcc-4.9 libgomp symbols requiring --plt-thread-safe for power7 Relax ppc64_elf_tls_optimize assertion [GOLD] Add gcc-4.9 libgomp symbols requiring --plt-thread-safe for power7 daily update daily update daily update daily update daily update daily update daily update daily update daily update daily update daily update daily update daily update daily update Provide stat function for spu overlay manager iovec Regenerate spu overlay and icache manager files Use frag_now_fix_octets in gas d10v, d30v Don't use register keyword daily update Use obstack_blank_fast to shrink obstacks Cast result of obstack_next_free daily update daily update Revert bfd_get_size checks aoutx.h tidy tekhex buffer management and symbol types tekhex architecure daily update Correct buffer overrun test daily update daily update daily update ld -r abort in _bfd_elf_write_section_eh_frame Avoid coff OOM coff coff daily update Fix x86 non-ELF build breakage Fix z80-coff build breakage Throw away dodgy coff line number info earlier daily update daily update Default powerpc64 to --plt-thread-safe for Go ppc476 workaround sizing PPC gold doesn't check for overflow properly PPC gold doesn't check for overflow properly PowerPC64 --plt-align [GOLD] PowerPC relaxation corner case Retry powerpc gold stub grouping when groups prove too large _bfd_elf_slurp_version_tables tidy Fix build breakage on 32-bit targets with 64-bit bfd Don't deprecate powerpc mftb insn Sanity checks on version section Don't output symbol version definitions for non-DT_NEEDED libs Power4 should treat mftb as extended mfspr mnemonic ppc64_elf_edit_opd revamp powerpc gold, fix pr17566 powerpc gold, work around pr17670 Sort relocs output by ld -r PowerPC gold, fix 32-bit branch address arithmetic ChangeLog typo fix ppc64_elf_edit_opd revamp, take 2 Don't sort ld -r relocs for mips Don't access elf tdata in dwarf.c without first checking for an ELF bfd Don't return DW_AT_name for function name in C++ Don't always build coffgen.o Use autoconf check for long long in binutils Copy relocations against protected symbols Set bfd_error in _bfd_elf_adjust_dynamic_copy PowerPC register numbers in DWARF Move support code for linker script DEFINED to ldexp.c Correct logic for "defined by object" Don't PROVIDE over top of common symbols Use a symbol flag bit to mark linker defined symbols Report an error for script multiply defined symbols Yet another DEFINED testcase Fix generic linker symbol output when weak is overridden by strong Don't create .eh_frame_hdr on shared lib bfd Alexander Cherepanov (2): Fix a snafu setting up the string table read in from a COFF file. This patch fixes a snafu where the -D and -U short versions of the Andreas Arnez (58): Replace 'core_regset_sections' by iterator method Add 'regset' parameter to 'iterate_over_regset_sections_cb' Add multi-arch capable 'fbsd_make_corefile_notes' variant AARCH64: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' ALPHA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' ARM: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' FRV: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' HPPA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' X86: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' M32R: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' M68K: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' IA64: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' M88K: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' MIPS: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' MN10300: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'. NIOS2: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' PPC: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' SCORE: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' SH: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' SPARC: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' TILEGX: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' VAX: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' XTENSA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections' Drop target method 'fbsd_make_corefile_notes' Linux targets: drop fall back to target method for 'make_corefile_notes' Drop 'regset_from_core_section' gdbarch method Remove non-address bits for longjmp resume breakpoint Eliminate literal line numbers in so-impl-ld.exp Eliminate literal line numbers in dbx.exp Eliminate literal line numbers in call-ar-st.exp Eliminate literal line numbers in call-rt-st.exp Eliminate literal line numbers in ending-run.exp Eliminate literal line numbers in foll-exec.exp Eliminate literal line numbers in jump.exp Eliminate literal line numbers in shlib-call.exp Eliminate literal line numbers in mi-console.exp 'callfuncs' test case: Fixes in conditionally compiled code Perform all tests in callfuncs.exp with and without C function prototypes callfuncs.exp: Indent perform_all_tests() Drop non-prototype C function header variants: solib1.c Drop non-prototype C function header variants: 'break' test case Drop non-prototype C function header variants: 'list' test case Drop non-prototype C function header variants: 'sepdebug' test case GDB testsuite: drop non-prototype C function header variants GDB testsuite: Fix warnings with -std=gnu11 Drop remaining references to removed source lines in break1.c and ur1.c Eliminate literal line numbers in mi-until.exp GDB testsuite: More fixes for warnings with -std=gnu11 Use 2-byte instead of 4-byte NOP on S390 in 'bp-permanent' test case S390: Fix 'expedite' for s390-te-linux64 execl-update-breakpoints.exp: Move whole segment instead of .text section gdbserver: Rephrase loops in regsets_fetch/store_inferior_registers gdbserver: Prevent stale/random values in register cache gdbserver: Support read-only regsets in linux-low.c S390: Fix gdbserver support for TDB Add new GDB command "maint print user-registers" Provide completer for "info registers" Fix indentation of "maint print user-registers" Andreas From (1): Add myself as write after approval maintainer Andreas Schwab (1): * configure.tgt (targ_extra_obj) [aarch64*-*]: Define. Andrew Bennett (1): [MIPS] When calculating a relocation using an undefined weak symbol don't check for overflow. Andrew Burgess (9): When relaxing, update symbols at the very end of the section. When relaxing, update size of symbols. Merge include/* files from GCC commit 77cab4753. Merge include/* files from GCC commit 69a2f316d3. Add string representation of ELF e_flags for AVR. AVR: Only set link-relax elf flag when appropriate. AVR/ld: Propagate link-relax elf header flag correctly. AVR: Assembler now prepares for linker relaxation by default. AVR: Document linker relaxation related options. Andrew Pinski (2): [AARCH64] Add thunderx support to gas Add forgotten changelog entry. Andrew Stubbs (1): Clarify strip docs. Anthony Green (4): Add zex instructions for moxie port Add zex instruction support for moxie port Add mul.x and umul.x instructions to moxie port Add support for moxie's mul.x and umul.x instructions Cary Coutant (12): Fix race condition causing assert in Eh_frame_hdr::do_sized_write(). Add PR reference to ChangeLog entry. Fix problem where TLS common symbols are not allocated properly during LTO. Fix handling of relocations against TLS section symbols. Fix error from previous patch where tosize and tovalue were redefined Add "typename" keyword to satisfy GCC 4.2. Fix corrupted .eh_frame section with LTO and --gc-sections. Add file size to ELF symbol labelling start of a binary file. Update list of debug sections for --strip-debug-xxx options. Fix extraneous warning about executable stack. Fix internal error in gold when -Map and --compress-debug-sections are used gold/ Catalin Udma (2): Fix info mem command for 32 bits host/64 bits target aarch64/gdbserver: fix floating point registers display Chen Gang (3): Fix memory overflow issue about strncat Ensure zero termination of tic4x insn buffer Fix windres memory leak Daniel Colascione (1): Warn users about mismatched PID namespaces Denis Chertykov (5): * avrtiny.sc: Apply avr.sc fixes. * MAINTAINERS: Fix my email address. * configure.ac: Add od-elf32_avr to build. * od-elf32_avr.c: Forgot to add a new file. * od-elf32_avr.c (elf32_avr_dump_mem_usage): Fix device initialization. Dennis Brueni (1): Thix fixes an obvious coding error that led to a GDB crash on AIX or HPUX. Dmitriy Ivanov (1): Add support for -z global. Don Breazeal (2): Refactor native follow-fork. Follow-fork message printing improvements Doug Evans (104): gdb.base/structs.c (main): Don't run forever. Remove some code duplication in py-objfile.c, py-progspace.c. fix file paths in previous commit Fix dw2-op-out-param.S CU offset values. Change name of file name test in py-objfile.exp. PR python/17364 Add gdb.Objfile.progspace attribute. New python event "clear_objfiles". linux-nat.c (linux_nat_wait_1): Make local prev_mask non-static. Fix some comments to say minus_one_ptid instead of PID == -1. Remove second (nested) copy of local var child_die. symtab.c (lookup_symbol_aux_quick): Set block_found upon success. symtab.c: forward decl cleanup Clean up some function comments in symtab.[ch]. Move block_found decl to symtab.h. block.c (allocate_block): Use OBSTACK_ZALLOC instead of obstack_alloc. * block.h (ALL_BLOCK_SYMBOLS): Fix comment. Rename parameter "kind" to "block_index" in quick lookup functions. symtab.c (lookup_symbol_aux_local): Fix typo in comment. Add ability to add attributes to gdb.Objfile and gdb.Progspace objects. valops.c: Fix some whitespace. objfiles.h: Remove some unused macros. xcoffread.c (process_linenos): Delete unnecessary code. mdebugread.c (parse_procedure): Delete unnecessary forward decl. Update description of ownership of files in include/ solib_global_lookup: Fetch arch from objfile, not target_gdbarch. Delete TYPE_CODE_CLASS, it's just an alias of TYPE_CODE_STRUCT. Forgotten ChangeLog entry for previous commit. Use ALL_PRIMARY_SYMTABS instead of ALL_SYMTABS in some places. Move lookup_block_symbol to block.c, rename to block_lookup_symbol. New macro ALL_BLOCK_SYMBOLS_WITH_NAME. Rename lookup_symbol_static to lookup_symbol_in_static_block, lookup_symbol_in_block: Renamed from lookup_symbol_aux_block. Rename some "aux" functions. symtab.c (basic_lookup_symbol_nonlocal): Add comment. Rename lookup_symbol_global to lookup_global_symbol. symtab.h (lookup_global_symbol): Improve function comment. PR 17564: Fix objfile search order for static symbols. source.c (select_source_symtab): Rewrite to use ALL_SYMTABS. symmisc.c: Remove trailing whitespace. dwarf2read.c (update_enumeration_type_from_children): Avoid infinite loop. PR symtab/17591 expand_symtab_containing_pc: Renamed from find_pc_sect_symtab_via_partial. PR symtab/17559 Add copyright headers. The result of symtab expansion is always a primary symtab. Split up end_symtab_from_static_block into two. Use SYMBOL_OBJFILE more. Fix memory leak in watch_main_source_file_lossage. SYMTAB_OBJFILE: New macro. SYMTAB_DIRNAME: New macro. symtab.h (SYMTAB_LINETABLE): Renamed from LINETABLE. All uses updated. buildsym API cleanup symtab.h (SYMTAB_BLOCKVECTOR): Renamed from BLOCKVECTOR. All uses updated. Split struct symtab into two: struct symtab and compunit_symtab. psymtab.c (psymtab_search_name): Fix whitespace. cp-namespace.c (cp_lookup_symbol_nonlocal): Fix comment. symtab.c: Comment and whitespace improvements. Fix dumping of function arguments. gdb.dwarf2/dw2-op-out-param.S: Fix comment. python/py-infthread.c: Whitespace fixes. New python events: infcall, register/memory changed. revert previous patch so that I can re-commit with correct author Remove remnant of Chill support. dwarf2read.c (peek_die_abbrev): Improve error message text. PR symtab/17591 PR symtab/17602 Remove cplus_specific from general_symbol_info. New python attribute gdb.Objfile.build_id. New python method gdb.Objfile.add_separate_debug_file. Revert: linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp. New "owner" attribute for gdb.Objfile. python/py-objfile.c (objfpy_get_owner): Increment refcount of result. cp_lookup_symbol_imports: Make static. cp-namespace.c (lookup_symbol_file): Move next to only caller. cp_lookup_symbol_nonlocal: Move definition closer to its subroutines. symtab.c (domain_name) <MODULE_DOMAIN>: Add missing case. (lookup_global_symbol_from_objfile): Simplify. cp-namespace.c (cp_lookup_nested_symbol): Fix comments. New python function gdb.lookup_objfile. Give quick_symbol_functions "methods" a consistent naming scheme. Rename cp_is_anonymous to cp_is_in_anonymous. value_maybe_namespace_elt: Remove unnecessary test of result != NULL. utils.c (make_hex_string): Fix off-by-one error. symtab.h (struct symbol_search) <symtab>: Delete, unnecessary. cp_find_type_baseclass_by_name: Renamed from find_type_baseclass_by_name. cp_lookup_symbol_via_imports: Renamed from cp_lookup_symbol_imports. boards/stabs.exp: New file. Make buildsym set-up/tear-down more consistent, and document it. New parameter "debug symbol-lookup". value_maybe_namespace_elt: Remove redundant call to lookup_static_symbol. Fix file name in earlier entry. language_lookup_primitive_type: Renamed from language_lookup_primitive_type_by_name. infcmd.c (jump_command): Minor simplification. cp-namespace.c: Whitespace cleanup. cp-namespace.c (cp_lookup_symbol_in_namespace): Simplify. cp-namespace.c (cp_lookup_nested_symbol_1): New function. cp-namespace.c (cp_lookup_symbol_via_imports): New arg "search_scope_first". cp-namespace.c (cp_lookup_symbol_via_all_imports): New function. Replace some symbol accessor macros with functions. Add langdef arg to la_lookup_symbol_nonlocal. initialize_objfile_symbol: Renamed from initialize_symbol. symtab.h (SYMBOL_DOMAIN_BITS): New macro. Look up primitive types as symbols. Dr Philipp Tomsich (1): Remove the artificial limit on code alignment through the use of the Eric Botcazou (6): Update from upstream config repo Add Visium support to opcodes Add Visium support to bfd Add Visium support to binutils Add Visium support to gas Add Visium support to ld Espen Grindhaug (1): Fixes an infinite loop in readelf parsing a corrupt binary, and other minor corrections. Evgeniy Dushistov (1): Fix race condition when using --threads with linker plugins. GDB Administrator (36): Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Automatic date update in version.in Gary Benson (4): Remove spurious exceptions.h inclusions Include cleanups.h in common-defs.h Include common-exceptions.h in common-defs.h Do not include unnecessary files in fbsd-tdep.c H.J. Lu (100): Fix build for OLD_FREEBSD_ABI_LABEL Convert mov to lea only if r_offset >= 2 X32: Add REX prefix to encode R_X86_64_GOTTPOFF Merge remote-tracking branch 'origin/master' into hjl/linux/master Cast to unsigned long in range checks Cast time value to unsigned long to print Merge remote-tracking branch 'origin/master' into hjl/linux/master Fix a typo in gas/ChangeLog Add assembler support for @gotplt Mark R_X86_64_GOTPLT64 obsolete Rename symbbol to symbol Merge remote-tracking branch 'origin/master' into hjl/linux/master Add cast to unsigned int Merge remote-tracking branch 'origin/master' into hjl/linux/master Correct x86 assembler manual Merge remote-tracking branch 'origin/master' into hjl/linux/master Don't make PLT entry for R_X86_64_GOTPLT64 Merge remote-tracking branch 'origin/master' into hjl/linux/master Always run mpx3 and mpx4 tests in 64-bit Merge remote-tracking branch 'origin/master' into hjl/linux/master Check PC-relative offset overflow in PLT entry Run IFUNC run-time tests only if IFUNC is supported Add ifunc-main IFUNC tests Always load function pointer into a stack variable Add function and function pointer tests Merge remote-tracking branch 'origin/master' into hjl/linux/master Update plt-main tests for x32 Don't run pr17618 test on x32 Merge remote-tracking branch 'origin/master' into hjl/linux/master Add binutils-pltgot.patch Run plt-main test with -pie Add function and function pointer tests for i386 Merge remote-tracking branch 'origin/master' into hjl/linux/master Add i386 .plt.got support Check PC-relative offset overflow in PLT entry Optimize PC-relative offset overflow check Merge remote-tracking branch 'origin/master' into hjl/linux/master Merge remote-tracking branch 'origin/master' into hjl/linux/master Check pointer_equality_needed instead of non_got_ref Check branch displacement overflow in x86-64 PLT entry Assert size of elf_x86_64_{bnd|legacy}_plt2_entry Update libtool.m4 from GCC trunk Optimize out i386/x86-64 JUMP_SLOT relocation Merge remote-tracking branch 'origin/master' into hjl/linux/master Remove binutils-pltgot.patch Update binutils-sharable.patch for master Display symbol version when dumping dynrelocs Use get_symbol_version_string in BFD_JUMP_TABLE_SYMBOLS Merge remote-tracking branch 'origin/master' into hjl/linux/master Remove binutils-pr16496.patch Update ld-alpha tests for secureplt Update mips tests with symbol version string Add tests for PR ld/16452 and PR ld/16457 Merge remote-tracking branch 'origin/master' into hjl/linux/master Properly check for an out of range row index Merge remote-tracking branch 'origin/master' into hjl/linux/master X86-64: Allow copy relocs for building PIE Discard space for relocs against symbols with copy relocs Check info->executable for symbols which need copy relocs Merge remote-tracking branch 'origin/master' into hjl/linux/master Reformat elf_x86_64_create_dynamic_sections Merge remote-tracking branch 'origin/master' into hjl/linux/master Update binutils-sharable.patch against master Replace copyreloc-main.c with copyreloc-main.S Merge remote-tracking branch 'origin/master' into hjl/linux/master Compile pie_copyrelocs_test.cc with -fno-exceptions -fno-asynchronous-unwind-tables Add _bfd_elf_ifunc_get_synthetic_symtab Merge remote-tracking branch 'origin/master' into hjl/linux/master Define bfd_elf32_get_synthetic_symtab for x32 Merge remote-tracking branch 'origin/master' into hjl/linux/master Handle weak alias for PIE with copy reloc Merge remote-tracking branch 'origin/master' into hjl/linux/master Update binutils-sharable.patch against master Compress debug sections for Linux/x86 by default Merge remote-tracking branch 'origin/master' into hjl/linux/master Cast current_group_size to unsigned long Merge remote-tracking branch 'origin/master' into hjl/linux/master Mention --compress-debug-sections default in NEWS Check corrupt input Merge remote-tracking branch 'origin/master' into hjl/linux/master Apply binutils-pr17729.patch Apply binutils-pr14675.patch Merge remote-tracking branch 'origin/master' into hjl/linux/master Change SometimesInlineFunction to "return i * i * 3;" Merge remote-tracking branch 'origin/master' into hjl/linux/master Merge remote-tracking branch 'origin/master' into hjl/linux/master Cast size to long to warn Merge remote-tracking branch 'origin/master' into hjl/linux/master Update binutils-pr14675.patch Merge remote-tracking branch 'origin/master' into hjl/linux/master Update binutils-pr14675.patch Update binutils-lto-mixed.patch against master Merge remote-tracking branch 'origin/master' into hjl/linux/master Add cast to unsigned long Merge remote-tracking branch 'origin/master' into hjl/linux/master Merge remote-tracking branch 'origin/hjl/linux/master' into hjl/linux/applied Update binutils-lto-mixed.patch for avrelf.em/ppc32elf.em Merge remote-tracking branch 'origin/hjl/linux/master' into hjl/linux/applied Fix ld/emultempl/avrelf.em and ld/emultempl/ppc32elf.em Update release note for 2.25.51.0.1 Han Shen (3): Here we have the patch for gold aarch64 backend to support relaxation. Misc about gold for aarch64 backend. Fix for gold linking tlsdesc into an executable with -pie. Hans-Peter Nilsson (10): ld.texinfo: Clarify that sysroot affects "=" expansion. ld.texinfo: "=" path-prefix forces sysroot in scripts not only SEARCH_DIR lib/ld-lib.exp (check_sysroot_available): New proc. Add sysroot-prefix ld linker tests. If "=" is the first character in a ldscript input file, force a sysroot prefix. Allow unquoted = as the first character in ldscript input_list names Implement --print-sysroot in ld. Implement --print-sysroot in ld. Fix ld tests with sysroot=/ and --enable-targets=all and test --print-sysroot Fix %lx format used with bfd_size_type mismatch in readelf.c Iain Buclaw (3): Sync libiberty with upstream GCC. Remove d-support.c and use gdb_demangle for demangling D symbols. Add dlang demangling support to c++filt. Igor Zamyatin (1): Add -z bndplt to generate BND prefix in PLT entries Ilya Tocar (4): Add clwb instruction Add pcommit instruction Add AVX512IFMA instructions Add AVX512VBMI instructions James Hogan (1): Clean up after generated c files for MIPS DSP targets Jan Beulich (4): aarch64: move bogus assertion ppc: enable msgclr and msgsnd on Power8 gas: avoid bogus warnings in false branches of conditional aarch64: allow adding/removing just feature flags via .arch_extension Jan Kratochvil (19): Fix library-list.dtd -> library-list-svr4.dtd Use gdb_test_sequence in gdb.base/save-bp.exp. Fix "save breakpoints" for "disable $bpnum" command. Fix "save breakpoints" for "catch" command NEWS: Fix typo. Reindent code (resolve_dynamic_type_internal). Fix add-auto-load-safe-path typo. Add add-auto-load-scripts-directory. Accelerate lookup_symbol_aux_objfile 85x Remove const from many struct objfile * Unify lookup_symbol_in_objfile_symtabs add dummy frame destructor add infcall_mmap and gcc_target_options gdbarch methods introduce call_function_by_hand_dummy export dwarf2_reg_to_regnum_or_error add linux_infcall_mmap add s390_gcc_target_options Fix 7.8 regression: resolve_dynamic_struct: Assertion `TYPE_NFIELDS (type) > 0' (PR 17642) Fix MinGW compilation Jan-Benedict Glaw (7): 2014-11-05 Jan-Benedict Glaw <jbglaw@lug-owl.de> Update from upstream Automake Update `move-if-change' from gnulib Update config.{guess,sub} from upstream config repo Sync libiberty from GCC Fix signedness warning Fix date in ChangeLog entry Jason Merrill (1): * Makefile.in (check-gdb.%): Restore. Jing Yu (2): Add aarch64 to list of targets that support gold. Give informative error message for stub-group-size Jiong Wang (4): [AArch64] Cortex-A53 erratum 835769 linker workaround treate -specs as both cflags & ldflags [AArch64] Warn on load pair to same register [AArch64] Cortex-A53 Erratum 835769 -- sort maps Joel Brobecker (23): [Ada] Error adding/subtracting pointer value to/from integral. Use strtod instead of strtold in libiberty/d-demangle.c ARM: stricter __stack_chk_guard check during prologue analysis Document the GDB 7.8.1 release in gdb/ChangeLog common-defs.h: include <stdarg.h> before <stdio.h> [gdbserver/lynx] spurious failure to write in inferior memory varsize-limit error printing element of packed array... [Ada] Ignore __XA types when redundant. [Ada] gdb.ada/complete.exp failure on x86_64-windows [Ada] XA type is not redundant if the ranges' subtypes do not match Handling of empty Ada ranges with a negative upper bound. Always consider infcall breakpoints as non-permanent. gdb_realpath: Rework comment about handling on Windows. callback.h:struct host_callback_struct compilation error on Windows hosts. Lift DWARF unwinder restriction in dwarf2-frame.c::dwarf2_frame_cfa configure gdb/gnulib with --disable-largefile if largefile support disabled. Add ChangeLog entries missing from the previous commit. Add missing ChangeLog entry for PR backtrace/16215. Fix ARI warnings in gdb/compile/compile-object-load.c. Avoid use of sprintf in gdb/utils.c:make_hex_string Internal error trying to print uninitialized string. Use PTRACE_SINGLESTEP_ONE when single-stepping one thread. [Linux] Ask kernel to kill inferior when GDB terminates Joel Sherrill (3): s/immediatly/immediately/ in sim/sh/ChangeLog entry. sim/igen/: Change immediatly to immediately sim/ppc/*: Change immediatly to immediately Jose E. Marchesi (3): This is a series of patches that add support for the SPARC M7 cpu to opcodes: fix several misplaced hwcap entries. opcodes, elf: annotate instructions with HWCAP2_VIS3B. Keith Seitz (1): This commit causes hundreds of core file regressions in gdb: Kito Cheng (1): Fix SysV-style hash table when --hash-style=both. Kwok Cheung Yeung (1): Fix the gdb.dwarf2/dw2-dir-file-name.exp test on MIPS Luis Machado (5): MIPS bit field failures in gdb.base/store.exp Fix mingw32 failures due to incorrect directory separator in pattern Fix ARM machine state testcase failures Skip tests that use cd for remote hosts I caught a few mingw32-specific failures for some of the gdb.reverse Maciej W. Rozycki (11): Avoid software breakpoint's instruction shadow inconsistency Also mark ELF solib trampoline minimal symbols special MIPS: Correct MUSTBE32 interpretation in delay slot handling MIPS: Correct heuristic prologue termination conditions MIPS: Rewrite `add_offset_16' to match its name gdb.dwarf2: Testsuite 64-bit pointer truncation fixes MIPS/GAS: Correct file option settings with `.insn' MIPS: Add support for microMIPS Linux signal trampolines Correct invalid assumptions made by (mostly) DWARF-2 tests MIPS: Keep the ISA bit in compressed code addresses MIPS: Define aliases for MSYMBOL_TARGET_FLAG macros Marcus Shawcroft (2): [AArch64] Remove example processors from GAS. [AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57. Mark Wielaard (3): Recognize new DWARFv5 C11, C++11 and C++14 DW_LANG constants. dwarf.c handle new DWARFv5 C11, C++11 and C++14 DW_LANG constants. Display DW_LANG_C11 as (C11). Markus Trippelsdorf (1): BFD: Add support for more than one plugin in lib/bfd-plugins Martin Galvan (1): frame.c: Fix the check for FID_STACK_INVALID in frame_id_eq() Matthew Fortune (12): Fix bad @value references in MIPS documentation Show information about unknown ASEs and extensions in .MIPS.abiflags MIPS Documentation fixes Fix -Wshadow warning Update .MIPS.abiflags to support MIPS R6 Fix segfault when creating a dso with discarded .dynsym section. Add in a JALRC alias and fix the NAL instruction. Fix octeon3 testsuite fallout Fix undefined weak symbol reloc tests Fix all failing FPXX tests for tx39-elf. Fix octeon3 tests for targets with default abi != n32 Rework the alignment check for BFD_RELOC_MIPS_18_PCREL_S3. Max Filippov (1): Fix trampolines search code for conditional branches Mihail-Marian Nistor (1): gdb/17394: cannot put breakpoint only in selected ASM file. Naveen H.S (1): MIPS: Add Octeon 3 support Nick Bull (1): New python events: inferior call, register/memory changed. Nick Clifton (61): This patch closes a potential security hole in applications that use Fix a seg-fault in strings and other binutuils when parsing a corrupt PE This fixes more seg-faults in tools like "strings" and "objdump" when This patch fixes a flaw in the SREC parser which could cause a stack overflow More fixes for corrupt binaries crashing the binutils. Updated/new translations provided by the Translations Project. Fixes another memory corruption bug introduced by patches for PR 17512. Fix error message strings so that they can be translated properly. Closes another memory corruption, this time due to heap overrun. Fixes a seg-fault in the ihex parser when it encounters a malformed ihex file. In response to a public outcry the strings program now defaults to using the oops - changelog omitted from previous delta. Avoid allocating over-large buffers when parsing corrupt binaries. Fix an (almost) infinite loop in the tekhex parser. Fixes a snafu checking the size of 20-bit immedaite values. Import updated translations supplied by the Translation Project. More fixes for buffer overruns instigated by corrupt binaries. Fixes for crashes running readelf. Fix a seg-fault triggered by reading a mal-formed archive. More fixes for memory corruption when readelf processes corrupt files. Fix problem with linker created sections being mistakenly flagged More fixes for processing corrupt files. More fixes for reading corrupt ELF files. More fixes for memory problems uncovered by file fuzzers. Revert changes in previous deltas that introduced new failures into Prevent archive memebers with illegal pathnames from being extracted from an archive. Add more fixes for inavlid memory accesses triggered by corrupt files. More fixes for problems exposed by valgrind and the address sanitizer Fix objcopy and strip so that they remove their temporary files even if an error occurs. More fixes for assertion failures and out-of-bounds reads by readelf. More fixes for invalid memory accesses, uncovered by valgrind and binary fuzzers. Prevent a buffer overrun whilst displaying corrupt ARM tags. Updated French and Ukranian translations supplied by the Translation Project. oops - missed the French translation. Fix invalid memory accesses for more corrupt binary files. Fix more memory faults uncovered by fuzzing various executables. More fixes for readelf problems reading corrupt files. More fixes for memory access violations whilst scanning corrupt binaries. More fixes for invalid memory accesses triggered by corrupt binaries. Fix a null pointer dereference when reading the debug link info from a corrupt file. Fix memort access problems exposed by fuzzed binaries. More fixes for illegal memory accesses exposed by fuzzed binaries. Fixes a seg-fault when displaying the time data for a corrupt archive. Resolve more problems with readelf uncovered by fuzzing binary files. Fixes for memory access violations exposed by fuzzinf various binaries. More fixes for memory access errors triggered by attemps to examine corrupted binaries. Fixes a few more memory access violations exposed by fuzzed binaries. Add checks for memory access violations exposed by fuzzed archives. More fixes for memory access violations exposed by fuzzed binaries. Replace calls to abort (in readelf) with informative error messages. Fix memory access problems exposed by fuzzed binaries. More fixes for invalid memory accesses triggered by fuzzed binaries. More fixes for memory access violations triggered by fuzzed binaries. Fix a few moere memory access violations. Fix a memory access violation triggeed by a fuzzed binary. More fixes for memory access violations exposed by fuzzed binaries. More fixes for invalid memory accesses exposed by fuzzed binaries. Updated translations for the gas and gprof tools. Reformat the objdump.1 man output to avoid overlong lines. This patch add support for cpu marvell-whitney. Reverts an "enhancement" made in a previous delta which complained of Oleg Endo (1): Correct fabs and fneg insns in simulator Patrick Palka (4): checkpoint: print index of new checkpoint in response message Fix the processing of Meta-key commands in TUI Specify SA_RESTART when registering the SIGWINCH signal handler Add myself as write-after-approval GDB maintainer Pedro Alves (66): infrun.c: comment/typo fixes breakpoint.c: debug output when we skip inserting a breakpoint infrun.c:user_visible_resume_ptid: Don't check singlestep_breakpoints_inserted_p Aarch64: Make CPSR a 32-bit register again in the target description Fix features/i386/64bit-avx512.xml features/Makefile: Add a "clean" rule. gdb/regformats: Don't build .dat files that aren't used by GDBserver Regenerate AVX512 target description C files features/Makefile: Make 'make cfiles' default to generating all C files Add read-only markers to generated gdb/regformats/ .dat files Really fail inserting software breakpoints on read-only regions Reduce Hg packet (select remote general thread) bouncing PR17431: following execs with "breakpoint always-inserted on" Fix non-stop regressions caused by "breakpoints always-inserted off" changes gdb.threads/manythreads.exp: clean up and add comment infrun.c:normal_stop: Fix typo in comment Split vDSO range lookup to a gdbarch hook PR symtab/14466: Work around PR libc/13097 "linux-vdso.so.1" Cache the vsyscall/vDSO range per-inferior Delete IRIX support Delete gdb/regformats/microblaze.dat gdbserver/win32: Rewrite debug registers handling Decide whether we may have removed breakpoints based on step_over_info Rewrite non-continuable watchpoints handling infrun.c: add for_each_just_stopped_thread Put single-step breakpoints on the bp_location chain Remove deprecated_insert_raw_breakpoint and friends thread.c: cleanup breakpoint deletion Make single-step breakpoints be per-thread Non-stop + software single-step archs: don't force displaced-stepping for all single-steps Merge remote thread listing methods Push pruning old threads down to the target remote: get rid of all the T packets when syncing the thread list DEC threads: Simplify updating the thread list Fix build without libexpat Delete Tru64 support Make common code handle target_terminal_* idempotency PR gdb/17472: With annotations, input while executing in the foreground crashes readline/GDB PR gdb/17300: Input after "c -a" crashes readline/GDB PR gdb/17471: Repeating a background command makes it foreground NEWS: Clarify removed targets Remove Vax Ultrix and VAX BSD support stepi/nexti: skip signal handler if "handle nostop" signal arrives Workaround remote targets that report an empty list to qfThreadInfo update bug numbers (GNATS -> Bugzilla) in a few signal related tests gdb.base/sigstep.exp: cleanup and make it easier to extend Test for PR gdb/17511, spurious SIGTRAP after stepping into+in signal handler PR gdb/12623: non-stop crashes inferior, PC adjustment and 1-byte insns PR tui/16138, PR tui/17519, and misc failures to initialize the terminal TUI: don't let exceptions escape while handling readline key bindings PR tui/16138 is about failure to initialize curses resulting in GDB Fix uninitialized value access when very first GDB command entered is <RET> PR python/17372 - Python hangs when displaying help() PR 17408 - assertion failure in switch_back_to_stepped_thread This PR shows that GDB can easily trigger an assertion here, in garbage collect gdb/breakpoint.c:breakpoint_thread_match Revert old nexti prologue check and eliminate in_prologue gdb.base/sigstep.exp: xfail gdb/17511 on i?86 Linux add a default method for gdbarch_skip_permanent_breakpoint make "permanent breakpoints" per location and disableable fix skipping permanent breakpoints Garbage collect the infwait_state global GDBserver: ctrl-c after leader has exited GDBserver: don't resume all threads if the Hc thread disapears GDBserver: clean up 'cont_thread' handling handle 'iconv's that define EILSEQ to ENOENT Petr Machata (1): dwarf.exp: In 64-bit units, emit also abbrev offset as a 64-bit field Philipp Tomsich (2): [AArch64] Add xgene1. [AArch64] Add xgene2. Pierre Muller (3): [RFA] Stabs: Ignore N_BNSYM/N_ENSYM entry types Fix amd64 dwarf register number mapping (MMX register and higher) This patch adds support for printing out the pdata section of PE objects. Rainer Orth (1): Fix gnu11 fallout on Solaris 10+ Richard Earnshaw (2): [AArch64] Fix mis-detection of unpredictable load/store operations with FP regs. * config/tc-arm.c (rotate_left): Avoid undefined behaviour when N = 0. Richard Henderson (1): Set ppc COMMONPAGESIZE to 64k Richard Sandiford (1): bfd/ Samuel Thibault (1): [Hurd] Fix deallocation after proc_getprocinfo call Sandra Loosemore (7): Refactoring/cleanup of nios2 opcodes and assembler code. Update Nios II prologue analysis to remove detection of long-obsolete Add mach parameter to nios2_find_opcode_hash. Refactor Nios II GDB support to use helper functions for disassembly and Fix Nios II GDB epilogue detection to handle multiple stack adjustments. Fix Nios II prologue analyzer to handle multiple stack adjustments. Remove broken nios2 assembler dwim support. Sergio Durigan Junior (6): PR tdep/9390: Fix typo on xstorxstormy16-tdep.c Explicitly use language_c when evaluating a SDT probe argument Only call {set,clear}_semaphore probe function if they are not NULL Partial fix for PR breakpoints/10737: Make syscall info be per-arch instead of global Fix build breakage from previous commit Merge dg-extract-results.{sh,py} from GCC upstream Simon Marchi (18): Don't prune program spaces when doing "maintenance info program-spaces" Exit code of exited inferiors in -list-thread-groups Small fixes to the Python API doc tui: Fix newterm call for older ncurses Fix test always passing in python/py-linetable.exp Fix prints in tests for Python 3 Fix Python help() test for Python 3 Remove duplicate comment Fix comment typo Fix make_cleanup_dtor signature to match declaration Restore terminal state in mi_thread_exit (PR gdb/17627) Introduce target_is_gdbserver Only leave dprintf inserted if it is marked as persistent (PR breakpoints/17012) python extended prompt: Use os.getcwd() instead of os.getcwdu() Fix build with Python 3.4 (PR python/16784) testsuite: expect possible pagination when starting gdb Introduce utility function find_inferior_ptid A few comment cleanups Siva Chandra (8): Non trivial return value tests. Fix gnuv3_pass_by_reference to lookup copy c-tors with qualified args. Add new non-trial return value tests. Fix gnuv3_pass_by_reference to treat dynamic classes as non-trivial. Guard a call to TYPE_TARGET_TYPE in gnuv3_pass_by_reference. Fix evaluation of method calls under EVAL_SKIP. Enable chained function calls in C++ expressions. Check that thread stack temps are not already enabled before enabling them. Sriraman Tallam (1): 2014-09-29 Sriraman Tallam <tmsriram@google.com> Stan Shebs (1): Add Yao Qi as global maintainer Steve Ellcey (1): 2014-12-05 Steve Ellcey <sellcey@mips.com> Terry Guo (4): 2014-09-29 Terry Guo <terry.guo@arm.com> Enable to link ARM object file that hasn't attribute section. Support ARM Cortex-M7 Calculate ARM arch attribute after relaxation Tom Tromey (8): introduce ui_file_write_for_put add gcc/gdb interface files add some missing ops to DWARF assembler add make_unqualified_type add gnu_triplet_regexp gdbarch method split dwarf2_fetch_cfa_info from dwarf2_compile_expr_to_ax make dwarf_expr_frame_base_1 public the "compile" command Tristan Gingold (4): Add NEWS markers for 2.25. src-release.sh: configure using --target. Bump bfd version. Darwin: sanitize %gs and %fs values. Ulrich Weigand (4): Work around GCC bug 63748 Remove (dead-code) native core file sniffers on Linux targets Use core regset iterators on GNU Hurd Use core regset iterators on Sparc Solaris Victor Kamensky (4): ARM: plt_size functions need to read instructions in right byte order ARM: extract_arm_insn function need to read instrs correctly in be8 case ARM: arm_breakpoint should be little endian form in case for arm BE8 read_pieced_value do big endian processing only in case of valid gdb_regnum Will Newton (3): include/elf/aarch64.h: Add reloc numbers from ABI release 1.0 ld/testsuite/ld-unique: Fix running unique tests on ARM bfd/elf-attrs.c: Fix possible infinite loop parsing attributes Yao Qi (66): Fix typo in thumb_in_function_epilogue_p Skip dlopen-libpthread.exp in cross testing Error in build_executable_own_libs for non-native target Remove unused local variable No longer pull thread list explicitly Clean up server-kill.exp Get GDBserver pid on remote target Enable qTStatus packet in case it is disabled Use mi_varobj_update in mi-var-child.exp and mi2-var-child.exp Fix fail in mi-var-child.exp and mi-var-display.exp Clean up gdb.python/ tests Fix file name matching on remote host. Fix py-parameter.exp for remote host Don't check noargs in remotetimeout.exp Don't check target_info exists noargs in commands.exp Copy xml files to host Skip testing argv[0] on target argv[0] isn't available Don't remove files copied to host Rename py-objfile-script-gdb.py.in to py-objfile-script-gdb.py Fix trace file fails on powerpc64 Fix skipping stack protector on arm Close the file in fileio.exp test Prepare directory in case test_system fails Don't replace '\' with '\\' in before_prompt_hook Match the working directory on remote host Add missing changelog entries New proc _handle_attribute DW attribute macro MACRO_AT_func and MACRO_AT_range Get start and end address of main in dwz.exp Use Dwarf::assemble in implptr-optimized-out.exp Fix implptr-optimized-out.exp fail Fix dw2-ifort-parameter.exp fail with clang Add missing parenthesis Don't set CC in config/i386/go32.mh Make IMPORTED_GNULIB_MODULES in alphabetical order Import alloca explicitly Include alloca.h unconditionally Import memchr explicitly Import wchar and wctype-h explicitly Include wchar.h and wctype.h unconditionally Import errno explicitly [arm] Fix fails in dw2-compdir-oldgcc.exp Use MACRO_AT_func in entry-values.exp Refine read_string Match library name prefixed with sysroot Fix date in changelog Import readlink Use readlink unconditionally Import lstat Use lstat unconditionally Import canonicalize-lgpl Use canonicalize_file_name unconditionally Import rename module [arm] compute framereg and framesize when needed Don't enable gdbtk in testsuite Use standard_testfile in i386-bp_permanent.exp Fix parallel testing issues in gdb.guile tests Revert: Don't enable gdbtk in testsuite Don't scan prologue past epilogue Improve arm_skip_prologue by using arm_analyze_prologue Replace ARG_MAX with ARG_LAST Move NEWS entries to the right section Remove h8300_print_float_info Refactor gdbarch method print_float_info MIPS: Provide FPU info and decode FCSR in `info float' MIPS SDE OS ABI support -----------------------------------------------------------------------