From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24696 invoked by alias); 6 Jun 2013 09:06:59 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 24677 invoked by uid 9364); 6 Jun 2013 09:06:59 -0000 Date: Thu, 06 Jun 2013 09:06:00 -0000 Message-ID: <20130606090658.24624.qmail@sourceware.org> From: gary@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] gbenson/rtld-probes: Merge remote branch 'gdb/master' into gbenson/rtld-probes X-Git-Refname: refs/heads/gbenson/rtld-probes X-Git-Reftype: branch X-Git-Oldrev: ac9f669afd07f0638ab2420cb6e38230aefd1f15 X-Git-Newrev: 4c8993236c61d720aad9a14f25cd9d67174cf773 X-SW-Source: 2013-q2/txt/msg00091.txt.bz2 List-Id: The branch, gbenson/rtld-probes has been updated via 4c8993236c61d720aad9a14f25cd9d67174cf773 (commit) via ca16a04e13325f079cb3476eb3e440697b7f7d60 (commit) via 794c9c4e8483eac3c400772745e4eea3ce894003 (commit) via f293a7e173e2c220c53bffdd7dfa51625c351975 (commit) via 4fd8c02c8ffb336200f473cad9ff04d5c9662434 (commit) via b8018373ee89d06385f09c614046a8530056c85d (commit) via a304d267aecbf5c1100035758bf4aa8135fb8a0d (commit) via 1fcafc429220f73ba0e2414832f04e935c8b8271 (commit) via 1c294e16013896a46fafda4e0d89a474641e3bb5 (commit) via bb052acd2ff9c1f5e572f89ca2dbd3fc3e1ddecb (commit) via b027995f2d8173e26eb63d5c2386defa59419f78 (commit) via a1130b7b0f496ab69e8565e69b84388091451f5d (commit) via 4233e4d779ba9fd15fab617ec378488e7961b1b4 (commit) via 740d732d28e4d38031d8b7a29b3a18c769bc7182 (commit) via 41a566af394703a0b789ecb07e11e37e7cb66e6b (commit) via 9af2e33ee9c2b585453e72ff7e30eda8c5a7283c (commit) via 82317bfa2ccb9dd741e508815eb77e181b1dae45 (commit) via 38e484893aac45e294bc8e3fa443c430ed553539 (commit) via f031ed530e4f9bf7c04ed3d13eba6fc9b919fa8f (commit) via ab7d05421c9ee2b50a6c191a1c23c262b288bdcf (commit) via 7c0c349462ed043999c2ff07e9e3bdad4b9b7940 (commit) via e94a795930db456392604e213ab29a959255d28d (commit) via 63b55747e23f5950422d3a10350e3a0869e1b8a3 (commit) via 736d95d04891f566adf9cc5363b964e82610a855 (commit) from ac9f669afd07f0638ab2420cb6e38230aefd1f15 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 4c8993236c61d720aad9a14f25cd9d67174cf773 Merge: ac9f669 ca16a04 Author: Gary Benson Date: Thu Jun 6 09:29:22 2013 +0100 Merge remote branch 'gdb/master' into gbenson/rtld-probes commit ca16a04e13325f079cb3476eb3e440697b7f7d60 Author: Joel Brobecker Date: Thu Jun 6 05:16:06 2013 +0000 Replace "(tiny patch)" by "(tiny change)" in gdb ChangeLogs... ... as this is the wording recommended by the FSF via the manual for Maintainers of GNU software. commit 794c9c4e8483eac3c400772745e4eea3ce894003 Author: Joel Brobecker Date: Thu Jun 6 05:10:20 2013 +0000 Annotate last gdb.texinfo patch as accepted as a "tiny patch" (copyright assignment not needed because patch is small enough to not be legally significant). commit f293a7e173e2c220c53bffdd7dfa51625c351975 Author: Alan Modra Date: Thu Jun 6 00:00:04 2013 +0000 daily update commit 4fd8c02c8ffb336200f473cad9ff04d5c9662434 Author: gdbadmin Date: Thu Jun 6 00:00:02 2013 +0000 *** empty log message *** commit b8018373ee89d06385f09c614046a8530056c85d Author: Doug Evans Date: Wed Jun 5 22:28:51 2013 +0000 PR 15519 * cp-namespace.c (find_symbol_in_baseclass): Call cp_lookup_symbol_in_namespace instead of cp_lookup_symbol_namespace. Check result of call to lookup_symbol_static. Call lookup_static_symbol_aux unconditionally. Call check_typedef on base types before accessing them. (cp_lookup_nested_symbol): Fix comment. testsuite/ * gdb.cp/derivation2.cc: New file. * gdb.cp/derivation.cc (main): Call foo2. * gdb.cp/derivation.exp: Add tests for typedefs in another file, and when there's an active block. commit a304d267aecbf5c1100035758bf4aa8135fb8a0d Author: Luis Machado Date: Wed Jun 5 20:43:53 2013 +0000 * gnu-v3-abi.c (gnuv3_skip_trampoline): Handle thunk minimal symbols pointing to function descriptors. commit 1fcafc429220f73ba0e2414832f04e935c8b8271 Author: Luis Machado Date: Wed Jun 5 20:38:37 2013 +0000 * gdb.cp/virtfunc.exp (make_one_vtable_result): Handle extra output from targets that use function descriptors in the virtual tables. Handle presence of dot symbols. commit 1c294e16013896a46fafda4e0d89a474641e3bb5 Author: Tom Tromey Date: Wed Jun 5 17:32:50 2013 +0000 * python/py-utils.c (gdb_pymodule_addobject): Cast away const. commit bb052acd2ff9c1f5e572f89ca2dbd3fc3e1ddecb Author: Marc Khouzam Date: Wed Jun 5 14:11:47 2013 +0000 2013-06-05 Simon Marchi * gdb.texinfo (Miscellaneous gdb/mi Commands): Fix -add-inferior response field name (thread-group to inferior). commit b027995f2d8173e26eb63d5c2386defa59419f78 Author: Mike Frysinger Date: Wed Jun 5 01:42:10 2013 +0000 sim: use AM_MAINTAINER_MODE I noticed the sim code is using an old implementation of the maintainer logic. I cut it over to the new macro (like gdb has been doing). In practice, it makes no difference currently as nothing in the sim tree uses it, but I have a follow up commit for the Blackfin tree that needs it. commit a1130b7b0f496ab69e8565e69b84388091451f5d Author: gdbadmin Date: Wed Jun 5 00:00:33 2013 +0000 *** empty log message *** commit 4233e4d779ba9fd15fab617ec378488e7961b1b4 Author: Alan Modra Date: Wed Jun 5 00:00:05 2013 +0000 daily update commit 740d732d28e4d38031d8b7a29b3a18c769bc7182 Author: sergiodj Date: Tue Jun 4 15:13:33 2013 +0000 Fixing ChangeLog entry of the last commit. commit 41a566af394703a0b789ecb07e11e37e7cb66e6b Author: sergiodj Date: Tue Jun 4 15:12:52 2013 +0000 GDB was not restoring the signal handler before returning when a notification was received. This patch fixes it. 2013-06-04 Sergio Durigan Junior Pedro Alves * remote.c (remote_wait_as): Restore signal handler before returning when GDB gets a notification. commit 9af2e33ee9c2b585453e72ff7e30eda8c5a7283c Author: gary Date: Tue Jun 4 13:31:00 2013 +0000 2013-06-04 Gary Benson * gdb.base/break-probes.exp: New file. * gdb.base/break-probes.c: Likewise. * gdb.base/break-probes-solib.c: Likewise. * gdb.base/info-shared.exp: New file. * gdb.base/info-shared.c: Likewise. * gdb.base/info-shared-solib1.c: Likewise. * gdb.base/info-shared-solib2.c: Likewise. commit 82317bfa2ccb9dd741e508815eb77e181b1dae45 Author: gary Date: Tue Jun 4 13:23:31 2013 +0000 2013-06-04 Jan Kratochvil Gary Benson * lib/gdb.exp (build_executable_from_specs): Use gdb_compile_pthread, gdb_compile_shlib or gdb_compile_shlib_pthreads where appropriate. * lib/prelink-support.exp (build_executable_own_libs): Allow INTERP to be set to "no" to indicate that no ld.so copy should be made. * gdb.base/break-interp.exp (solib_bp): New constant. (reach_1): Use the above instead of "_dl_debug_state". (test_attach): Likewise. (test_ld): Likewise. * gdb.threads/dlopen-libpthread.exp: New file. * gdb.threads/dlopen-libpthread.c: Likewise. * gdb.threads/dlopen-libpthread-lib.c: Likewise. * gdb.base/solib-corrupted.exp: Disable test if GDB is using probes. commit 38e484893aac45e294bc8e3fa443c430ed553539 Author: gary Date: Tue Jun 4 13:17:05 2013 +0000 2013-06-04 Gary Benson * breakpoint.h (handle_solib_event): Moved function declaration to solib.h. * breakpoint.c (handle_solib_event): Moved function to solib.c. (bpstat_stop_status): Pass new argument to handle_solib_event. * solib.h (update_solib_breakpoints): New function declaration. (handle_solib_event): Moved function declaration from breakpoint.h. * solib.c (update_solib_breakpoints): New function. (handle_solib_event): Moved function from breakpoint.c. Updated to call solib_ops->handle_event if not NULL. * solist.h (target_so_ops): New fields "update_breakpoints" and "handle_event". * infrun.c (set_stop_on_solib_events): New function. (_initialize_infrun): Use the above for "set stop-on-solib-events". (handle_inferior_event): Pass new argument to handle_solib_event. * solib-svr4.c (probe.h): New include. (svr4_free_library_list): New forward declaration. (probe_action): New enum. (probe_info): New struct. (probe_info): New static variable. (NUM_PROBES): New definition. (svr4_info): New fields "using_xfer", "probes_table" and "solib_list". (free_probes_table): New function. (free_solib_list): New function. (svr4_pspace_data_cleanup): Free probes table and solib list. (svr4_copy_library_list): New function. (svr4_current_sos_via_xfer_libraries): New parameter "annex". (svr4_read_so_list): New parameter "prev_lm". (svr4_current_sos_direct): Renamed from "svr4_current_sos". (svr4_current_sos): New function. (probe_and_action): New struct. (hash_probe_and_action): New function. (equal_probe_and_action): Likewise. (register_solib_event_probe): Likewise. (solib_event_probe_at): Likewise. (solib_event_probe_action): Likewise. (solist_update_full): Likewise. (solist_update_incremental): Likewise. (disable_probes_interface_cleanup): Likewise. (svr4_handle_solib_event): Likewise. (svr4_update_solib_event_breakpoint): Likewise. (svr4_update_solib_event_breakpoints): Likewise. (svr4_create_solib_event_breakpoints): Likewise. (enable_break): Free probes table before creating breakpoints. Use svr4_create_solib_event_breakpoints to create breakpoints. (svr4_solib_create_inferior_hook): Free the solib list. (_initialize_svr4_solib): Initialise svr4_so_ops.handle_solib_event and svr4_so_ops.update_breakpoints. commit f031ed530e4f9bf7c04ed3d13eba6fc9b919fa8f Author: gary Date: Tue Jun 4 13:10:53 2013 +0000 2013-06-04 Gary Benson * target.h (target_ops): New field "to_augmented_libraries_svr4_read". (target_augmented_libraries_svr4_read): New macro. * target.c (update_current_target): Handle to_augmented_libraries_svr4_read. * remote.c (remote_state): New field "augmented_libraries_svr4_read". (remote_augmented_libraries_svr4_read_feature): New function. (remote_protocol_features): Add entry for "augmented-libraries-svr4-read". (remote_augmented_libraries_svr4_read): New function. (init_remote_ops): Initialize remote_ops.to_augmented_libraries_svr4_read. commit ab7d05421c9ee2b50a6c191a1c23c262b288bdcf Author: gary Date: Tue Jun 4 13:07:45 2013 +0000 2013-06-04 Gary Benson * gdb.texinfo (General Query Packets/qSupported): Added "qXfer:libraries-svr4:read" and "augmented-libraries-svr4-read". to the table of currently defined stub features. Added a more detailed entry for "augmented-libraries-svr4-read". (General Query Packets/qXfer:libraries-svr4:read): Documented the augmented form of this packet. commit 7c0c349462ed043999c2ff07e9e3bdad4b9b7940 Author: gary Date: Tue Jun 4 13:02:15 2013 +0000 2013-06-04 Gary Benson * NEWS: Update. commit e94a795930db456392604e213ab29a959255d28d Author: gary Date: Tue Jun 4 12:59:20 2013 +0000 2013-06-04 Gary Benson * server.c (handle_query): Add "augmented-libraries-svr4-read+" to qSupported response when appropriate. (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read with nonzero-length annex. * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle arguments supplied in annex. commit 63b55747e23f5950422d3a10350e3a0869e1b8a3 Author: gary Date: Tue Jun 4 12:53:33 2013 +0000 2013-06-04 Gary Benson * objfiles.h (inhibit_section_map_updates): New function declaration. (resume_section_map_updates): Likewise. (resume_section_map_updates_cleanup): Likewise. * objfiles.c (objfile_pspace_info): Removed field "objfiles_changed_p". New fields "new_objfiles_available", "section_map_dirty" and "inhibit_updates". (allocate_objfile): Set new_objfiles_available. (free_objfile): Set section_map_dirty. (objfile_relocate1): Likewise. (in_plt_section): Likewise. (find_pc_section): Update the conditions under which the section map will be updated. (inhibit_section_map_updates): New function. (resume_section_map_updates): Likewise. (resume_section_map_updates_cleanup): Likewise. commit 736d95d04891f566adf9cc5363b964e82610a855 Author: gary Date: Tue Jun 4 12:50:20 2013 +0000 2013-06-04 Gary Benson * probe.h (get_probe_argument_count): New declaration. (evaluate_probe_argument): Likewise. * probe.c (get_probe_argument_count): New function. (evaluate_probe_argument): Likewise. (probe_safe_evaluate_at_pc): Use the above new functions. ----------------------------------------------------------------------- Summary of changes: bfd/version.h | 2 +- gdb/ChangeLog | 126 +++++++++++++++++++++++++++++++++++ gdb/ChangeLog-2009 | 2 +- gdb/ChangeLog-2011 | 2 +- gdb/cp-namespace.c | 34 +++++---- gdb/doc/ChangeLog | 14 ++++ gdb/doc/gdb.texinfo | 4 +- gdb/gdbserver/ChangeLog | 9 +++ gdb/gnu-v3-abi.c | 12 +++- gdb/python/py-utils.c | 3 +- gdb/remote.c | 6 +- gdb/testsuite/ChangeLog | 40 +++++++++++ gdb/testsuite/gdb.cp/derivation.cc | 6 +- gdb/testsuite/gdb.cp/derivation.exp | 14 +++- gdb/testsuite/gdb.cp/derivation2.cc | 49 ++++++++++++++ gdb/testsuite/gdb.cp/virtfunc.exp | 2 +- gdb/version.in | 2 +- sim/arm/ChangeLog | 4 + sim/arm/aclocal.m4 | 40 +++++++++++ sim/arm/configure | 41 ++++++++---- sim/avr/ChangeLog | 4 + sim/avr/aclocal.m4 | 40 +++++++++++ sim/avr/configure | 41 ++++++++---- sim/bfin/ChangeLog | 4 + sim/bfin/aclocal.m4 | 40 +++++++++++ sim/bfin/configure | 41 ++++++++---- sim/common/ChangeLog | 5 ++ sim/common/acinclude.m4 | 13 +--- sim/common/aclocal.m4 | 40 +++++++++++ sim/common/configure | 41 ++++++++---- sim/cr16/ChangeLog | 4 + sim/cr16/aclocal.m4 | 40 +++++++++++ sim/cr16/configure | 41 ++++++++---- sim/cris/ChangeLog | 4 + sim/cris/aclocal.m4 | 40 +++++++++++ sim/cris/configure | 41 ++++++++---- sim/d10v/ChangeLog | 4 + sim/d10v/aclocal.m4 | 40 +++++++++++ sim/d10v/configure | 41 ++++++++---- sim/erc32/ChangeLog | 4 + sim/erc32/aclocal.m4 | 40 +++++++++++ sim/erc32/configure | 41 ++++++++---- sim/frv/ChangeLog | 4 + sim/frv/aclocal.m4 | 40 +++++++++++ sim/frv/configure | 41 ++++++++---- sim/h8300/ChangeLog | 4 + sim/h8300/aclocal.m4 | 40 +++++++++++ sim/h8300/configure | 41 ++++++++---- sim/iq2000/ChangeLog | 4 + sim/iq2000/aclocal.m4 | 40 +++++++++++ sim/iq2000/configure | 41 ++++++++---- sim/lm32/ChangeLog | 4 + sim/lm32/aclocal.m4 | 40 +++++++++++ sim/lm32/configure | 41 ++++++++---- sim/m32c/ChangeLog | 4 + sim/m32c/aclocal.m4 | 40 +++++++++++ sim/m32c/configure | 41 ++++++++---- sim/m32r/ChangeLog | 4 + sim/m32r/aclocal.m4 | 40 +++++++++++ sim/m32r/configure | 41 ++++++++---- sim/m68hc11/ChangeLog | 4 + sim/m68hc11/aclocal.m4 | 40 +++++++++++ sim/m68hc11/configure | 41 ++++++++---- sim/mcore/ChangeLog | 4 + sim/mcore/aclocal.m4 | 40 +++++++++++ sim/mcore/configure | 41 ++++++++---- sim/microblaze/ChangeLog | 4 + sim/microblaze/aclocal.m4 | 40 +++++++++++ sim/microblaze/configure | 41 ++++++++---- sim/mips/ChangeLog | 4 + sim/mips/aclocal.m4 | 40 +++++++++++ sim/mips/configure | 41 ++++++++---- sim/mn10300/ChangeLog | 4 + sim/mn10300/aclocal.m4 | 40 +++++++++++ sim/mn10300/configure | 41 ++++++++---- sim/moxie/ChangeLog | 4 + sim/moxie/aclocal.m4 | 40 +++++++++++ sim/moxie/configure | 41 ++++++++---- sim/rl78/ChangeLog | 4 + sim/rl78/aclocal.m4 | 40 +++++++++++ sim/rl78/configure | 41 ++++++++---- sim/rx/ChangeLog | 4 + sim/rx/aclocal.m4 | 40 +++++++++++ sim/rx/configure | 41 ++++++++---- sim/sh/ChangeLog | 4 + sim/sh/aclocal.m4 | 40 +++++++++++ sim/sh/configure | 41 ++++++++---- sim/sh64/ChangeLog | 4 + sim/sh64/aclocal.m4 | 40 +++++++++++ sim/sh64/configure | 41 ++++++++---- sim/v850/ChangeLog | 4 + sim/v850/aclocal.m4 | 40 +++++++++++ sim/v850/configure | 41 ++++++++---- 93 files changed, 2096 insertions(+), 370 deletions(-) create mode 100644 gdb/testsuite/gdb.cp/derivation2.cc First 500 lines of diff: diff --git a/bfd/version.h b/bfd/version.h index f51f754..5b07314 100644 --- a/bfd/version.h +++ b/bfd/version.h @@ -1,4 +1,4 @@ -#define BFD_VERSION_DATE 20130604 +#define BFD_VERSION_DATE 20130606 #define BFD_VERSION @bfd_version@ #define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@ #define REPORT_BUGS_TO @report_bugs_to@ diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3b5532d..5e241e2 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,129 @@ +2013-06-05 Doug Evans + Keith Seitz + + PR 15519 + * cp-namespace.c (find_symbol_in_baseclass): Call + cp_lookup_symbol_in_namespace instead of cp_lookup_symbol_namespace. + Check result of call to lookup_symbol_static. + Call lookup_static_symbol_aux unconditionally. + Call check_typedef on base types before accessing them. + (cp_lookup_nested_symbol): Fix comment. + +2013-06-05 Luis Machado + + * gnu-v3-abi.c (gnuv3_skip_trampoline): Handle thunk + minimal symbols pointing to function descriptors. + +2013-06-05 Tom Tromey + + * python/py-utils.c (gdb_pymodule_addobject): Cast away const. + +2013-06-04 Sergio Durigan Junior + Pedro Alves + + * remote.c (remote_wait_as): Restore signal handler before returning + when GDB gets a notification. + +2013-06-04 Gary Benson + + * breakpoint.h (handle_solib_event): Moved function declaration + to solib.h. + * breakpoint.c (handle_solib_event): Moved function to solib.c. + (bpstat_stop_status): Pass new argument to handle_solib_event. + * solib.h (update_solib_breakpoints): New function declaration. + (handle_solib_event): Moved function declaration from + breakpoint.h. + * solib.c (update_solib_breakpoints): New function. + (handle_solib_event): Moved function from breakpoint.c. + Updated to call solib_ops->handle_event if not NULL. + * solist.h (target_so_ops): New fields "update_breakpoints" and + "handle_event". + * infrun.c (set_stop_on_solib_events): New function. + (_initialize_infrun): Use the above for "set + stop-on-solib-events". + (handle_inferior_event): Pass new argument to handle_solib_event. + * solib-svr4.c (probe.h): New include. + (svr4_free_library_list): New forward declaration. + (probe_action): New enum. + (probe_info): New struct. + (probe_info): New static variable. + (NUM_PROBES): New definition. + (svr4_info): New fields "using_xfer", "probes_table" and + "solib_list". + (free_probes_table): New function. + (free_solib_list): New function. + (svr4_pspace_data_cleanup): Free probes table and solib list. + (svr4_copy_library_list): New function. + (svr4_current_sos_via_xfer_libraries): New parameter "annex". + (svr4_read_so_list): New parameter "prev_lm". + (svr4_current_sos_direct): Renamed from "svr4_current_sos". + (svr4_current_sos): New function. + (probe_and_action): New struct. + (hash_probe_and_action): New function. + (equal_probe_and_action): Likewise. + (register_solib_event_probe): Likewise. + (solib_event_probe_at): Likewise. + (solib_event_probe_action): Likewise. + (solist_update_full): Likewise. + (solist_update_incremental): Likewise. + (disable_probes_interface_cleanup): Likewise. + (svr4_handle_solib_event): Likewise. + (svr4_update_solib_event_breakpoint): Likewise. + (svr4_update_solib_event_breakpoints): Likewise. + (svr4_create_solib_event_breakpoints): Likewise. + (enable_break): Free probes table before creating breakpoints. + Use svr4_create_solib_event_breakpoints to create breakpoints. + (svr4_solib_create_inferior_hook): Free the solib list. + (_initialize_svr4_solib): Initialise + svr4_so_ops.handle_solib_event and svr4_so_ops.update_breakpoints. + +2013-06-04 Gary Benson + + * target.h (target_ops): New field + "to_augmented_libraries_svr4_read". + (target_augmented_libraries_svr4_read): New macro. + * target.c (update_current_target): Handle + to_augmented_libraries_svr4_read. + * remote.c (remote_state): New field + "augmented_libraries_svr4_read". + (remote_augmented_libraries_svr4_read_feature): New function. + (remote_protocol_features): Add entry for + "augmented-libraries-svr4-read". + (remote_augmented_libraries_svr4_read): New function. + (init_remote_ops): Initialize + remote_ops.to_augmented_libraries_svr4_read. + +2013-06-04 Gary Benson + + * NEWS: Update. + +2013-06-04 Gary Benson + + * objfiles.h (inhibit_section_map_updates): New function + declaration. + (resume_section_map_updates): Likewise. + (resume_section_map_updates_cleanup): Likewise. + * objfiles.c (objfile_pspace_info): Removed field + "objfiles_changed_p". New fields "new_objfiles_available", + "section_map_dirty" and "inhibit_updates". + (allocate_objfile): Set new_objfiles_available. + (free_objfile): Set section_map_dirty. + (objfile_relocate1): Likewise. + (in_plt_section): Likewise. + (find_pc_section): Update the conditions under which the + section map will be updated. + (inhibit_section_map_updates): New function. + (resume_section_map_updates): Likewise. + (resume_section_map_updates_cleanup): Likewise. + +2013-06-04 Gary Benson + + * probe.h (get_probe_argument_count): New declaration. + (evaluate_probe_argument): Likewise. + * probe.c (get_probe_argument_count): New function. + (evaluate_probe_argument): Likewise. + (probe_safe_evaluate_at_pc): Use the above new functions. + 2013-06-04 Alan Modra * ppc-tdep.h (ppc_insns_match_pattern): Update prototype. diff --git a/gdb/ChangeLog-2009 b/gdb/ChangeLog-2009 index 6bee817..4771158 100644 --- a/gdb/ChangeLog-2009 +++ b/gdb/ChangeLog-2009 @@ -2152,7 +2152,7 @@ * microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE. * microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE. -2008-10-15 Steven G. Kargl (tiny patch) +2008-10-15 Steven G. Kargl (tiny change) * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0. diff --git a/gdb/ChangeLog-2011 b/gdb/ChangeLog-2011 index 5ef00d9..5d1f621 100644 --- a/gdb/ChangeLog-2011 +++ b/gdb/ChangeLog-2011 @@ -11840,7 +11840,7 @@ * mi/mi-cmd-disas.c (mi_cmd_disassemble): Allow mode to control dumping of instruction opcodes. -2011-01-09 Robert Millan (tiny patch) +2011-01-09 Robert Millan (tiny change) * configure.tgt: Detect GNU/kFreeBSD and set `gdb_osabi' appropiately. diff --git a/gdb/cp-namespace.c b/gdb/cp-namespace.c index 792ed48..755aeef 100644 --- a/gdb/cp-namespace.c +++ b/gdb/cp-namespace.c @@ -720,36 +720,40 @@ find_symbol_in_baseclass (struct type *parent_type, const char *name, for (i = 0; i < TYPE_N_BASECLASSES (parent_type); ++i) { size_t len; + struct type *base_type = TYPE_BASECLASS (parent_type, i); const char *base_name = TYPE_BASECLASS_NAME (parent_type, i); if (base_name == NULL) continue; /* Search this particular base class. */ - sym = cp_lookup_symbol_namespace (base_name, name, block, VAR_DOMAIN); + sym = cp_lookup_symbol_in_namespace (base_name, name, block, + VAR_DOMAIN, 0); if (sym != NULL) break; + /* Now search all static file-level symbols. We have to do this for + things like typedefs in the class. First search in this symtab, + what we want is possibly there. */ len = strlen (base_name) + 2 + strlen (name) + 1; concatenated_name = xrealloc (concatenated_name, len); xsnprintf (concatenated_name, len, "%s::%s", base_name, name); sym = lookup_symbol_static (concatenated_name, block, VAR_DOMAIN); + if (sym != NULL) + break; - /* If there is currently no BLOCK, e.g., the inferior hasn't yet - been started, then try searching all STATIC_BLOCK symbols in - all objfiles. */ - if (block == NULL) - { - sym = lookup_static_symbol_aux (concatenated_name, VAR_DOMAIN); - if (sym != NULL) - break; - } + /* Nope. We now have to search all static blocks in all objfiles, + even if block != NULL, because there's no guarantees as to which + symtab the symbol we want is in. */ + sym = lookup_static_symbol_aux (concatenated_name, VAR_DOMAIN); + if (sym != NULL) + break; /* If this class has base classes, search them next. */ - if (TYPE_N_BASECLASSES (TYPE_BASECLASS (parent_type, i)) > 0) + CHECK_TYPEDEF (base_type); + if (TYPE_N_BASECLASSES (base_type) > 0) { - sym = find_symbol_in_baseclass (TYPE_BASECLASS (parent_type, i), - name, block); + sym = find_symbol_in_baseclass (base_type, name, block); if (sym != NULL) break; } @@ -797,8 +801,8 @@ cp_lookup_nested_symbol (struct type *parent_type, if (sym != NULL) return sym; - /* Now search all static file-level symbols. Not strictly - correct, but more useful than an error. We do not try to + /* Now search all static file-level symbols. We have to do this + for things like typedefs in the class. We do not try to guess any imported namespace as even the fully specified namespace search is already not C++ compliant and more assumptions could make it too magic. */ diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index bb290ca..b6e56e0 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,17 @@ +2013-06-05 Simon Marchi (tiny change) + + * gdb.texinfo (Miscellaneous gdb/mi Commands): Fix -add-inferior + response field name (thread-group to inferior). + +2013-06-04 Gary Benson + + * gdb.texinfo (General Query Packets/qSupported): Added + "qXfer:libraries-svr4:read" and "augmented-libraries-svr4-read". + to the table of currently defined stub features. + Added a more detailed entry for "augmented-libraries-svr4-read". + (General Query Packets/qXfer:libraries-svr4:read): Documented + the augmented form of this packet. + 2013-05-23 Joel Brobecker * gdb.texinfo (System-wide Configuration Scripts): Renames diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index db293c2..e9b6eae 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -34642,7 +34642,7 @@ Creates a new inferior (@pxref{Inferiors and Programs}). The created inferior is not associated with any executable. Such association may be established with the @samp{-file-exec-and-symbols} command (@pxref{GDB/MI File Commands}). The command response has a single -field, @samp{thread-group}, whose value is the identifier of the +field, @samp{inferior}, whose value is the identifier of the thread group corresponding to the new inferior. @subheading Example @@ -34650,7 +34650,7 @@ thread group corresponding to the new inferior. @smallexample @value{GDBP} -add-inferior -^done,thread-group="i3" +^done,inferior="i3" @end smallexample @subheading The @code{-interpreter-exec} Command diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index fb0eed6..28086be 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,12 @@ +2013-06-04 Gary Benson + + * server.c (handle_query): Add "augmented-libraries-svr4-read+" + to qSupported response when appropriate. + (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read + with nonzero-length annex. + * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle + arguments supplied in annex. + 2013-05-31 Doug Evans * linux-x86-low.c (ps_get_thread_area): Properly extend address to diff --git a/gdb/gnu-v3-abi.c b/gdb/gnu-v3-abi.c index 6812c1d..1821f18 100644 --- a/gdb/gnu-v3-abi.c +++ b/gdb/gnu-v3-abi.c @@ -1207,7 +1207,7 @@ gnuv3_get_type_from_type_info (struct value *type_info_ptr) static CORE_ADDR gnuv3_skip_trampoline (struct frame_info *frame, CORE_ADDR stop_pc) { - CORE_ADDR real_stop_pc, method_stop_pc; + CORE_ADDR real_stop_pc, method_stop_pc, func_addr; struct gdbarch *gdbarch = get_frame_arch (frame); struct minimal_symbol *thunk_sym, *fn_sym; struct obj_section *section; @@ -1236,6 +1236,16 @@ gnuv3_skip_trampoline (struct frame_info *frame, CORE_ADDR stop_pc) return 0; method_stop_pc = SYMBOL_VALUE_ADDRESS (fn_sym); + + /* Some targets have minimal symbols pointing to function descriptors + (powerpc 64 for example). Make sure to retrieve the address + of the real function from the function descriptor before passing on + the address to other layers of GDB. */ + func_addr = gdbarch_convert_from_func_ptr_addr (gdbarch, method_stop_pc, + ¤t_target); + if (func_addr != 0) + method_stop_pc = func_addr; + real_stop_pc = gdbarch_skip_trampoline_code (gdbarch, frame, method_stop_pc); if (real_stop_pc == 0) diff --git a/gdb/python/py-utils.c b/gdb/python/py-utils.c index 7c7c5ca..bbbdef4 100644 --- a/gdb/python/py-utils.c +++ b/gdb/python/py-utils.c @@ -436,7 +436,8 @@ gdb_pymodule_addobject (PyObject *module, const char *name, PyObject *object) int result; Py_INCREF (object); - result = PyModule_AddObject (module, name, object); + /* Python 2.4 did not have a 'const' here. */ + result = PyModule_AddObject (module, (char *) name, object); if (result < 0) Py_DECREF (object); return result; diff --git a/gdb/remote.c b/gdb/remote.c index 7d98bc1..24d10f2 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -5951,13 +5951,13 @@ remote_wait_as (ptid_t ptid, struct target_waitstatus *status, int options) ret = getpkt_or_notif_sane (&rs->buf, &rs->buf_size, wait_forever_enabled_p, &is_notif); + if (!target_is_async_p ()) + signal (SIGINT, ofunc); + /* GDB gets a notification. Return to core as this event is not interesting. */ if (ret != -1 && is_notif) return minus_one_ptid; - - if (!target_is_async_p ()) - signal (SIGINT, ofunc); } buf = rs->buf; diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index e89741a..59ac7dd 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,43 @@ +2013-06-05 Doug Evans + Keith Seitz + + * gdb.cp/derivation2.cc: New file. + * gdb.cp/derivation.cc (main): Call foo2. + * gdb.cp/derivation.exp: Add tests for typedefs in another + file, and when there's an active block. + +2013-06-05 Luis Machado + + * gdb.cp/virtfunc.exp (make_one_vtable_result): Handle extra output + from targets that use function descriptors in the virtual tables. + Handle presence of dot symbols. + +2013-06-04 Gary Benson + + * gdb.base/break-probes.exp: New file. + * gdb.base/break-probes.c: Likewise. + * gdb.base/break-probes-solib.c: Likewise. + * gdb.base/info-shared.exp: New file. + * gdb.base/info-shared.c: Likewise. + * gdb.base/info-shared-solib1.c: Likewise. + * gdb.base/info-shared-solib2.c: Likewise. + +2013-06-04 Jan Kratochvil + Gary Benson + + * lib/gdb.exp (build_executable_from_specs): Use gdb_compile_pthread, + gdb_compile_shlib or gdb_compile_shlib_pthreads where appropriate. + * lib/prelink-support.exp (build_executable_own_libs): Allow INTERP + to be set to "no" to indicate that no ld.so copy should be made. + * gdb.base/break-interp.exp (solib_bp): New constant. + (reach_1): Use the above instead of "_dl_debug_state". + (test_attach): Likewise. + (test_ld): Likewise. + * gdb.threads/dlopen-libpthread.exp: New file. + * gdb.threads/dlopen-libpthread.c: Likewise. + * gdb.threads/dlopen-libpthread-lib.c: Likewise. + * gdb.base/solib-corrupted.exp: Disable test if GDB is using probes. + 2013-05-30 Yao Qi * gdb.mi/mi-cmd-param-changed.exp (test_command_param_changed): diff --git a/gdb/testsuite/gdb.cp/derivation.cc b/gdb/testsuite/gdb.cp/derivation.cc index 0a6a24d..2fefe79 100644 --- a/gdb/testsuite/gdb.cp/derivation.cc +++ b/gdb/testsuite/gdb.cp/derivation.cc @@ -16,6 +16,8 @@ along with this program. If not, see . */ +extern void foo2 (); /* from derivation2.cc */ + namespace N { typedef double value_type; struct Base { typedef int value_type; }; @@ -306,9 +308,7 @@ int main(void) N::Derived::value_type d = 1; N::value_type n = 3.0; dobj.doit (); + foo2 (); return 0; } - - - diff --git a/gdb/testsuite/gdb.cp/derivation.exp b/gdb/testsuite/gdb.cp/derivation.exp index 287a830..66a3a3b 100644 --- a/gdb/testsuite/gdb.cp/derivation.exp +++ b/gdb/testsuite/gdb.cp/derivation.exp @@ -32,14 +32,15 @@ if { [skip_cplus_tests] } { continue } load_lib "cp-support.exp" -standard_testfile .cc +standard_testfile derivation.cc derivation2.cc -if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}]} { +if {[prepare_for_testing $testfile.exp $testfile \ + [list $srcfile $srcfile2] {debug c++}]} { return -1 } # Check inheritance of typedefs. -foreach klass {"A" "D" "E" "F"} { +foreach klass {"A" "D" "E" "F" "A2" "D2"} { gdb_test "ptype ${klass}::value_type" "type = int" gdb_test "whatis ${klass}::value_type" "type = int" gdb_test "p (${klass}::value_type) 0" " = 0" @@ -57,6 +58,13 @@ if ![runto 'marker1'] then { continue } +# Check inheritance of typedefs again, but this time with an active block. +foreach klass {"A" "D" "A2" "D2"} { + gdb_test "ptype ${klass}::value_type" "type = int" + gdb_test "whatis ${klass}::value_type" "type = int" + gdb_test "p (${klass}::value_type) 0" " = 0" +} + gdb_test "up" ".*main.*" "up from marker1" # Print class types and values. diff --git a/gdb/testsuite/gdb.cp/derivation2.cc b/gdb/testsuite/gdb.cp/derivation2.cc new file mode 100644 index 0000000..b26cb63 --- /dev/null +++ b/gdb/testsuite/gdb.cp/derivation2.cc @@ -0,0 +1,49 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2013 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + */ + +/* A copy of some classes in derivation.cc so that we can test symbol lookup + in other CUs. */ hooks/post-receive -- Repository for Project Archer.