From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4047 invoked by alias); 15 Apr 2013 19:38:53 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 4028 invoked by uid 9755); 15 Apr 2013 19:38:53 -0000 Date: Mon, 15 Apr 2013 19:38:00 -0000 Message-ID: <20130415193852.3948.qmail@sourceware.org> From: aristovski@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] aristovski/validate-binary-before-use: Merge branch 'aristovski/validate-binary-before-use' of ssh://sourceware.org/git/archer into aristovski/validate-binary-before-use X-Git-Refname: refs/heads/aristovski/validate-binary-before-use X-Git-Reftype: branch X-Git-Oldrev: 15a4db3d330067154d600a761536748340dc4992 X-Git-Newrev: 97a555f232b050adcd9d5b95822ac9b1b6d2755b X-SW-Source: 2013-q2/txt/msg00022.txt.bz2 List-Id: The branch, aristovski/validate-binary-before-use has been updated via 97a555f232b050adcd9d5b95822ac9b1b6d2755b (commit) via 2bc7d2c57118746ed6a39d1b9abd340c326feaea (commit) via 464bc79d0727d6586751b06e801fe8f7e22d6420 (commit) via 0febecc57688434f71eed77c143c12e40e662310 (commit) via 645577d52a6b417fc896ce6a3cc957cb1d2838e3 (commit) via 6a5bda01e48d53498996569c29aca6b03d6cc4cb (commit) via 519392ea6261576ec0a773476810c83c30342b6f (commit) via b06e48effcf38bd0320f2cf7aada3a397fc6d8e9 (commit) via 3e1d712e728f05ab5b24a436b56bf560676b6c2c (commit) via 9603e65c7b5db16b8de8f8b37143583b841ab8b6 (commit) via cc38e69962e8902416b513fe22d23d58f2e2c9d0 (commit) via 37d0d838c6e9e7b9a6464afdecce2cdbfdae4413 (commit) via 28af0d6627b6dd8059011ea5ba8ca81ce6530673 (commit) via 57e585c7379ae9b187ff75dca72e4bc4448cbac3 (commit) via 2d99d7b9cf07a4c6fd70f04e63f159e64abace77 (commit) via 59ef4e03755a084e872818ab85000f4123c92067 (commit) via 57b013f271b1191757b1d252774de9431fb2a546 (commit) via 21b86ca972aef67d7a1bf2e5373af7d8bcb22e0d (commit) via f6b85d6aa9a9e6bce6a1b8e03393fa971deed4f7 (commit) via 6445a269bcdcf3052901aa60eaeb0c2a565b2f51 (commit) via 859638f53f33d406658e388b736fe89ef65de778 (commit) via 6859d4851cc6467dd4a3de1f1840f1b7b336b9ed (commit) via 1720a4f4e3d156ad8575417785760e588ed51c0f (commit) via c73415eb53c788d7ba0007c40014aa40ba9b0963 (commit) via 464b0b70fe716275c19bd7063a3655c1762d57cf (commit) via 7734355b5b66e4d3bc04d5143a8cb22acb6ebc0b (commit) via 318e9ec76416978a8b97807ff3a743d3a15499ba (commit) via acea31eb55e229f48549bbbf3d5934b75e12cdb9 (commit) via 864903b2f2eeaf9a7bcb207dae68b7a8dd22399d (commit) via 13840c102fb99678853a5939519505e071aa59b0 (commit) via ba9e88e790457da9ef2a85a91927d86343c2a0f3 (commit) via 4e2219e85fb7230fb898c3c8caf8bde185ff8a48 (commit) via 1566fe6d3a1d7a489f6c145ff054cf2759b8875c (commit) via 88e2d48e85d283cee0d12422b578144a74df2255 (commit) via 57435c2d03f9f7bfe808948b6a43b290ecbc4e5e (commit) via 701ce840a39b0586593236384caedb1feb45179f (commit) via db03dcab46c1a0ddf369040f34779ad02fb71fa0 (commit) via 9bad6d497ef023ab46b493c84ad9c129e12461f1 (commit) via 5f421cff90f16065fdbaff37195699316929c8e6 (commit) via 155f65b7ea58fb1d3d1ab633afb96ac820538927 (commit) via c3ed2bdc75b6c068bcfa71281e672baec4fdce90 (commit) via 535a72e321194f4e0c0b2f2b13492e41b3da5d07 (commit) via dc654647be304adddfc0469d5970edb2a38b3f41 (commit) via 3d12672cbbf5033c06efa0c46b9369f85971e853 (commit) via 8f39447c48de57306a669ed1c49b3a6efd5e3bbb (commit) via 3f98c536487a84b5e846cb00643283e108b102b7 (commit) via f1b2361fa0acd8b3cac642a4434340c1487c8221 (commit) via d2a545bbe6e0f19b3a66a9371534703b92013b05 (commit) via 24701c54627da21f7f5611bd858624b5bf5c4b35 (commit) via 8a6341bc37b2029bfd1a584f6f3a1a5784dee57b (commit) via e53d96531edfa687339019c54f148c7b61f381df (commit) via 6d640e771fac60411e008e238769d7d41cfc960c (commit) from 15a4db3d330067154d600a761536748340dc4992 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 97a555f232b050adcd9d5b95822ac9b1b6d2755b Merge: 2bc7d2c 15a4db3 Author: Aleksandar Ristovski Date: Mon Apr 15 15:26:16 2013 -0400 Merge branch 'aristovski/validate-binary-before-use' of ssh://sourceware.org/git/archer into aristovski/validate-binary-before-use commit 2bc7d2c57118746ed6a39d1b9abd340c326feaea Author: Aleksandar Ristovski Date: Wed Mar 27 16:06:26 2013 -0400 Tests for validate symbol file using build-id. * gdb.base/solib-mismatch-lib.c: New file. * gdb.base/solib-mismatch-libmod.c: New file. * gdb.base/solib-mismatch.c: New file. * gdb.base/solib-mismatch.exp: New file. commit 464bc79d0727d6586751b06e801fe8f7e22d6420 Author: Aleksandar Ristovski Date: Wed Mar 27 16:05:19 2013 -0400 Validate symbol file using build-id. * solib-darwin.c (_initialize_darwin_solib): Assign validate value. * solib-dsbt.c (_initialize_dsbt_solib): Ditto. * solib-frv.c (_initialize_frv_solib): Ditto. * solib-ia64-hpux.c (ia64_hpux_target_so_ops): Ditto. * solib-irix.c (_initialize_irix_solib): Ditto. * solib-osf.c (_initialize_osf_solib): Ditto. * solib-pa64.c (_initialize_pa64_solib): Ditto. * solib-som.c (_initialize_som_solib): Ditto. * solib-spu.c (set_spu_solib_ops): Ditto. * solib-sunos.c (_initialize_sunos_solib): Ditto. * solib-svr4.c (NOTE_GNU_BUILD_ID_NAME): New define. (svr4_validate): New function. (library_list_start_library): Parse 'build-id' attribute. (svr4_library_attributes): Add 'build-id' attribute. (_initialize_svr4_solib): Assign validate value. * solib-target.c (solib.h): Include. (_initialize_solib_target): Assign validate value. * solib.c (solib_map_sections): Use ops->validate. (free_so): Free build_id. (solib_validate): New function. * solib.h (solib_validate): New declaration. * solist.h (so_list): New fields 'build_idsz' and 'build_id'. (target_so_ops): New field 'validate'. commit 0febecc57688434f71eed77c143c12e40e662310 Author: Aleksandar Ristovski Date: Wed Mar 27 11:56:57 2013 -0400 gdbserver build-id attribute generator * doc/gdb.texinfo (Library List Format for SVR4 Targets): Add 'build-id' in description, example, new attribute in dtd. * features/library-list-svr4.dtd (library-list-svr4): New 'build-id' attribute. * linux-low.c (linux-maps.h, search.h): Include. (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New. (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New. (find_phdr): New. (get_dynamic): Use find_pdhr to traverse program headers. (struct mapping_entry): New structure. (mapping_entry_s): New typedef, new vector type def. (free_mapping_entry, compare_mapping_entry, compare_mapping_entry_range, compare_mapping_entry_inode): New. (struct find_memory_region_callback_data): New. (find_memory_region_callback): New fwd. declaration. (read_build_id, find_memory_region_callback, get_hex_build_id): New. (linux_qxfer_libraries_svr4): Add optional build-id attribute to reply XML document. commit 645577d52a6b417fc896ce6a3cc957cb1d2838e3 Author: Aleksandar Ristovski Date: Wed Mar 27 09:54:36 2013 -0400 Move linux_find_memory_regions_full & co. * common/common-target.c (gdb_assert.h, gdb_string.h): Include. (read_alloc, read_stralloc): Move definitions from target.c. * common/common-target.h (read_alloc_pread_ftype): New typedef. (read_alloc): New declaration. (read_stralloc_func_ftype): New typedef. (read_stralloc): New declaration. * common/linux-maps.c (fcntl.h, unistd.h, target.h, gdb_assert.h, ctype.h, string.h, common-target.h): Include. (read_mapping): Move from linux-tdep.c. (linux_find_memory_read_stralloc_1_pread): New function. (linux_find_memory_read_stralloc_1): New function. (linux_find_memory_read_stralloc): New function. * common/linux-maps.h (read_mapping): New declaration. (linux_find_memory_region_ftype): Moved typedef from linux-tdep.c. (linux_find_memory_regions_full): New declaration. * linux-tdep.c (linux-maps.h): Include. (read_mapping): Moved to common/linux-maps.c. (linux_find_memory_region_ftype): Moved typedef to common/linux-maps.h. (linux_find_memory_regions_full): Moved definition to common/linux-maps.c. * target.c (common-target.h): Include. (read_alloc_pread_ftype): Moved typedef to common/common-target.h. (read_alloc, read_stralloc): Moved definitions to common/common-target.c. commit 6a5bda01e48d53498996569c29aca6b03d6cc4cb Author: Aleksandar Ristovski Date: Wed Mar 27 09:49:36 2013 -0400 Prepare linux_find_memory_regions_full & co. for move * linux-tdep.c (linux_find_memory_region_ftype): Comment. (linux_find_memory_regions_full): Change signature and prepare for moving to linux-maps. (linux_find_memory_regions_data): Rename field 'obfd' to 'data'. (linux_find_memory_regions_thunk): New. (linux_find_memory_regions_thunk): Use 'data' field instead of 'obfd'. (linux_find_memory_regions_gdb): New. (linux_find_memory_regions): Rename argument 'obfd' to 'func_data'. (linux_make_mappings_corefile_notes): Use linux_find_memory_regions_gdb. * target.c (target_fileio_read_alloc_1_pread): New function. (read_alloc_pread_ftype): New typedef. (read_alloc): Refactor from target_fileio_read_alloc_1. (target_fileio_read_alloc_1): New implementation. Use read_alloc. (read_stralloc_func_ftype): New typedef. (read_stralloc): Refactored from target_fileio_read_stralloc. (target_fileio_read_stralloc): New implementation, use read_stralloc. commit 519392ea6261576ec0a773476810c83c30342b6f Author: Aleksandar Ristovski Date: Wed Mar 27 09:40:24 2013 -0400 Create empty common/linux-maps.[ch] and common/common-target.[ch] * Makefile.in (HFILES_NO_SRCDIR); Add common/linux-maps.h, common/common-target.h. (COMMON_OBS): Add common-target.o. (linux-maps.o, common-target.o): New. * common/common-target.c: New file. * common/common-target.h: New file. * common/linux-maps.c: New file. * common/linux-maps.h: New file. * config/i386/linux.mh (NATDEPFILES): Add linux-maps.o. * config/i386/linux64.mh (NATDEPFILES): Ditto. * gdbserver/Makefile.in (OBS): Add common-taret.o. (linux-maps.o, common-target.o): New. * gdbserver/configure.srv (srv_tgtobj): Add linux-maps.o. commit b06e48effcf38bd0320f2cf7aada3a397fc6d8e9 Author: Aleksandar Ristovski Date: Wed Mar 27 09:39:05 2013 -0400 Merge multiple hex conversions * common/common-utils.c (fromhex): Make externally linkable. Change error message. (tohex): Make externally linkable. * common/common-utils.h (fromhex, tohex): New declaration. * gdbserver/gdbreplay.c (tohex): Rename to 'fromhex'. (logchar): Use fromhex. * gdbserver/remote-utils.c (fromhex, unhexify): Remove. (tohex, hexify): Remove. (look_up_one_symbol, monitor_output): Use bin2hex instead of hexify. * gdbserver/server.c (handle_query): Use bin2hex instead of hexify. (handle_v_run): Ditto. * gdbserver/server.h (unhexify, hexify): Remove declarations. * gdbserver/tracepoint.c (cmd_qtdpsrc, cmd_qtdv): Use hex2bin instead of unhexify. (cmd_qtstatus): Use bin2hex instead of hexify. (cmd_qtnotes): Use hex2bin instead of unhexify. * monitor.c (fromhex): Remove definition. * remote.c (tohex, fromhex): Remove fwd declarations, remove definitions. commit 3e1d712e728f05ab5b24a436b56bf560676b6c2c Author: Aleksandar Ristovski Date: Wed Mar 27 09:39:05 2013 -0400 Move utility functions to common/ * cli/cli-utils.c (skip_spaces, skip_spaces_const): Move defs to common/common-utils.c. * cli/cli-utils.h (skip_spaces, skip_spaces_const): Move decls to common/common-utils.h. * common/common-utils.c (ctype.h): Include. (HIGH_BYTE_POSN, is_digit_in_base, digit_to_int, strtoulst): Move from utils.c. (fromhex): Copy from remote.c. (hex2bin): Move from remote.c. (tohex): Copy from remote.c. (bin2hex): Move from remote.c. (skip_spaces, skip_spaces_const): Move from cli/cli-utils.c. * common/common-utils.h (TARGET_CHAR_BIT, HOST_CHAR_BIT): Moved from defs.h. (strtoulst): Move decl from utils.h. (hex2bin, bin2hex): Move decls from remote.h. (skip_spaces, skip_spaces_const): Move decls from cli/cli-utils.h. * defs.h (TARGET_CHAR_BIT, HOST_CHAR_BIT): Move to common/common-utils.h * remote.c (hex2bin, bin2hex): Moved defs to common/common-utils.c. * remote.h (hex2bin, bin2hex): Moved decls to common/common-utils.h. * utils.c (HIGH_BYTE_POSN, is_digit_in_base, digit_to_int, strtoulst): Move to common/common-utils.c. * utils.h (strtoulst): Moved decl to common/common-utils.h. commit 9603e65c7b5db16b8de8f8b37143583b841ab8b6 Author: Aleksandar Ristovski Date: Wed Apr 10 14:01:34 2013 -0400 Add README.archer commit cc38e69962e8902416b513fe22d23d58f2e2c9d0 Author: Tom Tromey Date: Mon Apr 15 18:24:48 2013 +0000 * NEWS: Move recent entries into "since 7.6" section. commit 37d0d838c6e9e7b9a6464afdecce2cdbfdae4413 Author: Tom Tromey Date: Mon Apr 15 18:13:00 2013 +0000 PR c++/13588: * NEWS: Update. * break-catch-throw.c (struct exception_catchpoint) : New fields. (fetch_probe_arguments, dtor_exception_catchpoint) (check_status_exception_catchpoint) (print_one_detail_exception_catchpoint): New functions. (handle_gnu_v3_exceptions): Add "except_rx" argument. Compile regular expression if needed. (extract_exception_regexp): New function. (catch_exception_command_1): Use extract_exception_regexp. (compute_exception): Use fetch_probe_arguments. (initialize_throw_catchpoint_ops): Set dtor, print_one_detail, and check_status fields. * cp-abi.c (cplus_typename_from_type_info): New function. * cp-abi.h (cplus_typename_from_type_info): Declare. (struct cp_abi_ops) : New field. * gdb_regex.h (compile_rx_or_error): Declare. * gnu-v3-abi.c (gnuv3_get_typename_from_type_info): Update comment. (init_gnuv3_ops): Set get_type_from_type_info field. * probe.c (compile_rx_or_error): Move... * utils.c (compile_rx_or_error): ... here. gdb/doc * gdb.texinfo (Set Catchpoints): Document regexp syntax for exception catchpoints. gdb/testsuite * gdb.cp/exceptprint.exp: Add regexp catchpoint tests. commit 28af0d6627b6dd8059011ea5ba8ca81ce6530673 Author: Tom Tromey Date: Mon Apr 15 18:09:01 2013 +0000 PR c++/15176: * NEWS: Update. * break-catch-throw.c (compute_exception): New function. (exception_funcs): New global. (_initialize_break_catch_throw): Create $_exception. * cp-abi.c (cplus_type_from_type_info): New function. * cp-abi.h (cplus_type_from_type_info): Declare. (struct cp_abi_ops) : New field. * gnu-v3-abi.c (gnuv3_get_typename_from_type_info) (gnuv3_get_type_from_type_info): New functions. (init_gnuv3_ops): Set get_type_from_type_info ABI field. gdb/doc * gdb.texinfo (Set Catchpoints): Document $_exception. (Convenience Vars): Mention $_exception. gdb/testsuite * gdb.base/default.exp: Update for $_exception. * gdb.cp/exceptprint.cc: New file. * gdb.cp/exceptprint.exp: New file. * lib/gdb.exp (skip_libstdcxx_probe_tests): New proc. commit 57e585c7379ae9b187ff75dca72e4bc4448cbac3 Author: Tom Tromey Date: Mon Apr 15 18:06:42 2013 +0000 * break-catch-throw.c (struct exception_names): New. (exception_functions): Change type. (re_set_exception_catchpoint): Look for SDT probes. commit 2d99d7b9cf07a4c6fd70f04e63f159e64abace77 Author: Tom Tromey Date: Mon Apr 15 18:05:48 2013 +0000 PR c++/10119: * break-catch-throw.c (exception_functions): New global. (gnu_v3_exception_catchpoint_ops): Move earlier. (struct exception_catchpoint): New. (classify_exception_breakpoint): Rewrite. (re_set_exception_catchpoint): New function. (handle_gnu_v3_exceptions): Return void. Use init_catchpoint. Allocate a struct exception_catchpoint. (catch_exception_command_1): Update. (initialize_throw_catchpoint_ops): Set 're_set' method. commit 59ef4e03755a084e872818ab85000f4123c92067 Author: Tom Tromey Date: Mon Apr 15 18:04:53 2013 +0000 * Makefile.in (SFILES): Add break-catch-throw.c (COMMON_OBS): Add break-catch-throw.o. * break-catch-throw.c: New file. * breakpoint.c: Move exception-catching code to new file. (ep_parse_optional_if_clause): No longer static. * breakpoint.h (ep_parse_optional_if_clause): Declare. commit 57b013f271b1191757b1d252774de9431fb2a546 Author: Tom Tromey Date: Mon Apr 15 17:36:13 2013 +0000 PR c++/9065: * NEWS: Update. * breakpoint.c (watchpoint_exp_is_const): Add OP_TYPEID. * c-exp.y (TYPEID): New token. (exp): Add new TYPEID productions. (ident_tokens): Add "typeid". * cp-abi.c (cplus_typeid, cplus_typeid_type): New functions. * cp-abi.h (cplus_typeid, cplus_typeid_type): Declare. (struct cp_abi_ops) : New fields. * eval.c (evaluate_subexp_standard) : New case. * expprint.c (dump_subexp_body_standard) : New case. * gnu-v3-abi.c (std_type_info_gdbarch_data): New global. (build_std_type_info_type, gnuv3_get_typeid_type) (gnuv3_get_typeid): New functions. (init_gnuv3_ops): Initialize std_type_info_gdbarch_data. Set new fields on ABI object. * parse.c (operator_length_standard) : New case. * std-operator.def (OP_TYPEID): New. gdb/testsuite * gdb.cp/typeid.cc: New file. * gdb.cp/typeid.exp: New file. commit 21b86ca972aef67d7a1bf2e5373af7d8bcb22e0d Author: Tom Tromey Date: Mon Apr 15 17:31:17 2013 +0000 * elfread.c (elf_symtab_read): Install versioned symbol under unversioned name as well. commit f6b85d6aa9a9e6bce6a1b8e03393fa971deed4f7 Author: Tom Tromey Date: Mon Apr 15 17:30:35 2013 +0000 PR c++/11990: * c-lang.c (cplus_language_defn): Use gdb_demangle. * c-typeprint.c (c_type_print_base): Use gdb_demangle. * cp-support.c (mangled_name_to_comp): Use gdb_demangle. (gdb_demangle): New function. * cp-support.h (gdb_demangle): Declare. * dwarf2read.c (dwarf2_physname, fixup_partial_die) (dwarf2_name): Use gdb_demangle. * gdbtypes.c (check_stub_method): Use gdb_demangle. * gnu-v3-abi.c (gnuv3_rtti_type): Strip @plt and version suffixes from name. (gnuv3_print_method_ptr): Use gdb_demangle. * jv-lang.c (java_demangle): Use gdb_demangle. * jv-typeprint.c (java_type_print_base): Use gdb_demangle. * language.c (unk_lang_demangle): Use gdb_demangle. * symtab.c (symbol_find_demangled_name) (demangle_for_lookup): Use gdb_demangle. commit 6445a269bcdcf3052901aa60eaeb0c2a565b2f51 Author: Tom Tromey Date: Mon Apr 15 17:27:43 2013 +0000 PR c++/12824: * NEWS: Update. * breakpoint.c (enum exception_event_kind) : New constant. (classify_exception_breakpoint): New function. (print_it_exception_catchpoint, print_one_exception_catchpoint) (print_mention_exception_catchpoint) (print_recreate_exception_catchpoint, handle_gnu_v3_exceptions) (catch_exception_command_1): Handle "rethrow" catchpoint. (catch_rethrow_command): New function. (_initialize_breakpoint): Add "catch rethrow" command. gdb/doc * gdb.texinfo (Set Catchpoints): Reorganize exception catchpoints. Document "catch rethrow". (Debugging C Plus Plus): Mention "catch rethrow". gdb/testsuite * gdb.cp/exception.exp: Add "catch rethrow" tests. commit 859638f53f33d406658e388b736fe89ef65de778 Author: Tom Tromey Date: Mon Apr 15 17:20:39 2013 +0000 * gdb.texinfo (Set Catchpoints): Remove obsolete text. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 18 +- bfd/archive.c | 2 +- bfd/doc/ChangeLog | 5 + bfd/doc/Makefile.am | 6 +- bfd/doc/Makefile.in | 6 +- bfd/mmo.c | 22 +- bfd/version.h | 2 +- gdb/ChangeLog | 292 ++++++++++ gdb/Makefile.in | 36 ++- gdb/NEWS | 21 + gdb/break-catch-throw.c | 597 ++++++++++++++++++++ gdb/breakpoint.c | 204 +------- gdb/breakpoint.h | 2 + gdb/c-exp.y | 13 +- gdb/c-lang.c | 2 +- gdb/c-typeprint.c | 4 +- gdb/cli/cli-cmds.c | 9 + gdb/config.in | 2 +- gdb/config/alpha/alpha-osf3.mh | 1 + gdb/config/i386/fbsd.mh | 1 + gdb/config/i386/fbsd64.mh | 1 + gdb/config/i386/i386gnu.mh | 1 + gdb/config/i386/i386sol2.mh | 1 + gdb/config/i386/sol2-64.mh | 1 + gdb/config/mips/irix5.mh | 1 + gdb/config/mips/irix6.mh | 1 + gdb/config/powerpc/fbsd.mh | 1 + gdb/config/sparc/fbsd.mh | 1 + gdb/config/sparc/sol2.mh | 1 + gdb/configure | 28 + gdb/configure.ac | 22 + gdb/configure.tgt | 10 + gdb/contrib/ari/gdb_ari.sh | 1 - gdb/cp-abi.c | 41 ++ gdb/cp-abi.h | 27 + gdb/cp-support.c | 10 +- gdb/cp-support.h | 4 + gdb/ctf.c | 3 +- gdb/doc/ChangeLog | 43 ++ gdb/doc/Makefile.in | 27 +- gdb/doc/gdb.texinfo | 193 +++++-- gdb/dwarf2-frame.c | 2 +- gdb/dwarf2read.c | 425 +++++++------- gdb/elfread.c | 15 + gdb/eval.c | 17 + gdb/expprint.c | 5 + gdb/{gdb_gcore.sh => gcore.in} | 9 +- gdb/gdb_regex.h | 2 + gdb/gdbtypes.c | 5 +- gdb/gnu-v3-abi.c | 241 ++++++++- gdb/jit.c | 4 +- gdb/jv-lang.c | 3 +- gdb/jv-typeprint.c | 5 +- gdb/language.c | 3 +- gdb/main.c | 16 +- gdb/minidebug.c | 2 + gdb/parse.c | 1 + gdb/probe.c | 24 - gdb/remote.c | 14 +- gdb/solib-spu.c | 4 +- gdb/spu-linux-nat.c | 4 +- gdb/spu-tdep.c | 1 + gdb/std-operator.def | 3 + gdb/symfile.h | 2 +- gdb/symtab.c | 12 +- gdb/symtab.h | 2 +- gdb/testsuite/ChangeLog | 25 + gdb/testsuite/gdb.base/completion.exp | 13 +- gdb/testsuite/gdb.base/default.exp | 1 + gdb/testsuite/gdb.cp/exception.exp | 33 +- .../gdb.cp/exceptprint.cc} | 63 ++- gdb/testsuite/gdb.cp/exceptprint.exp | 94 +++ gdb/testsuite/gdb.cp/typeid.cc | 60 ++ gdb/testsuite/gdb.cp/typeid.exp | 67 +++ gdb/testsuite/lib/gdb.exp | 18 + gdb/top.c | 90 +++- gdb/top.h | 1 + gdb/tracepoint.c | 4 +- gdb/utils.c | 24 + gdb/version.in | 2 +- opcodes/ChangeLog | 5 + opcodes/rl78-dis.c | 2 +- 82 files changed, 2383 insertions(+), 603 deletions(-) create mode 100644 gdb/break-catch-throw.c rename gdb/{gdb_gcore.sh => gcore.in} (87%) mode change 100755 => 100644 copy gdb/{gdb_regex.h => testsuite/gdb.cp/exceptprint.cc} (53%) create mode 100644 gdb/testsuite/gdb.cp/exceptprint.exp create mode 100644 gdb/testsuite/gdb.cp/typeid.cc create mode 100644 gdb/testsuite/gdb.cp/typeid.exp First 500 lines of diff: diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 77c268f..e717f12 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,13 @@ +2013-04-15 Alan Modra + + * archive.c (_bfd_archive_close_and_cleanup): Clear parent + cache slot for archives. + +2013-04-14 Hans-Peter Nilsson + + * mmo.c (mmo_write_chunk): Break out abfd->tdata.mmo_data to new + local variable mmop. + 2013-04-09 Senthil Kumar Selvaraj PR ld/12494 @@ -36,8 +46,8 @@ 2013-04-03 Venkataramanan Kumar - * elf64-aarch64.c (elf64_aarch64_gc_sweep_hook): Use - elf64_aarch64_locals to get local GOT reference counts. + * elf64-aarch64.c (elf64_aarch64_gc_sweep_hook): Use + elf64_aarch64_locals to get local GOT reference counts. 2013-04-02 DJ Delorie @@ -302,9 +312,9 @@ 2013-03-08 Venkataramanan Kumar - * elf64-aarch64.c (elf_backend_can_gc_sections): Enable gc-section + * elf64-aarch64.c (elf_backend_can_gc_sections): Enable gc-section support. - (elf64_aarch64_gc_sweep_hook): Handle GOT, TLS and PLT related + (elf64_aarch64_gc_sweep_hook): Handle GOT, TLS and PLT related relocs. 2013-03-08 Andreas Arnez diff --git a/bfd/archive.c b/bfd/archive.c index 8cc6bf2..32b07a7 100644 --- a/bfd/archive.c +++ b/bfd/archive.c @@ -2732,7 +2732,7 @@ _bfd_archive_close_and_cleanup (bfd *abfd) bfd_ardata (abfd)->cache = NULL; } } - else if (arch_eltdata (abfd) != NULL) + if (arch_eltdata (abfd) != NULL) { struct areltdata *ared = arch_eltdata (abfd); htab_t htab = (htab_t) ared->parent_cache; diff --git a/bfd/doc/ChangeLog b/bfd/doc/ChangeLog index f8ed19a..c33eb3b 100644 --- a/bfd/doc/ChangeLog +++ b/bfd/doc/ChangeLog @@ -1,3 +1,8 @@ +2013-04-15 Alan Modra + + * Makefile.am ($(MKDOC)): Append $(EXEEXT_FOR_BUILD) to temp file. + * Makefile.in: Regenerate. + 2013-04-09 Mingjie Xing * bfd.texinfo (typedef bfd, Error reporting, Miscellaneous): diff --git a/bfd/doc/Makefile.am b/bfd/doc/Makefile.am index 3e0fcfb..670d69a 100644 --- a/bfd/doc/Makefile.am +++ b/bfd/doc/Makefile.am @@ -77,9 +77,9 @@ AM_CPPFLAGS = -I.. -I$(srcdir)/.. -I$(srcdir)/../../include \ -I$(srcdir)/../../intl -I../../intl $(MKDOC): $(srcdir)/chew.c - $(CC_FOR_BUILD) -o chew.$$$$ $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ - $(H_CFLAGS) $(AM_CPPFLAGS) $(srcdir)/chew.c; \ - $(SHELL) $(srcdir)/../../move-if-change chew.$$$$ $(MKDOC) + $(CC_FOR_BUILD) -o chw$$$$$(EXEEXT_FOR_BUILD) $(CFLAGS_FOR_BUILD) \ + $(LDFLAGS_FOR_BUILD) $(H_CFLAGS) $(AM_CPPFLAGS) $(srcdir)/chew.c; \ + $(SHELL) $(srcdir)/../../move-if-change chw$$$$$(EXEEXT_FOR_BUILD) $(MKDOC) protos: libbfd.h libcoff.h bfd.h diff --git a/bfd/doc/Makefile.in b/bfd/doc/Makefile.in index ed6a41f..5156ba7 100644 --- a/bfd/doc/Makefile.in +++ b/bfd/doc/Makefile.in @@ -776,9 +776,9 @@ uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \ $(MKDOC): $(srcdir)/chew.c - $(CC_FOR_BUILD) -o chew.$$$$ $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ - $(H_CFLAGS) $(AM_CPPFLAGS) $(srcdir)/chew.c; \ - $(SHELL) $(srcdir)/../../move-if-change chew.$$$$ $(MKDOC) + $(CC_FOR_BUILD) -o chw$$$$$(EXEEXT_FOR_BUILD) $(CFLAGS_FOR_BUILD) \ + $(LDFLAGS_FOR_BUILD) $(H_CFLAGS) $(AM_CPPFLAGS) $(srcdir)/chew.c; \ + $(SHELL) $(srcdir)/../../move-if-change chw$$$$$(EXEEXT_FOR_BUILD) $(MKDOC) protos: libbfd.h libcoff.h bfd.h diff --git a/bfd/mmo.c b/bfd/mmo.c index bebf05a..e336723 100644 --- a/bfd/mmo.c +++ b/bfd/mmo.c @@ -787,21 +787,21 @@ static INLINE bfd_boolean mmo_write_chunk (bfd *abfd, const bfd_byte *loc, unsigned int len) { bfd_boolean retval = TRUE; + struct mmo_data_struct *mmop = abfd->tdata.mmo_data; /* Fill up a tetra from bytes remaining from a previous chunk. */ - if (abfd->tdata.mmo_data->byte_no != 0) + if (mmop->byte_no != 0) { - while (abfd->tdata.mmo_data->byte_no < 4 && len != 0) + while (mmop->byte_no < 4 && len != 0) { - abfd->tdata.mmo_data->buf[abfd->tdata.mmo_data->byte_no++] = *loc++; + mmop->buf[mmop->byte_no++] = *loc++; len--; } - if (abfd->tdata.mmo_data->byte_no == 4) + if (mmop->byte_no == 4) { - mmo_write_tetra (abfd, - bfd_get_32 (abfd, abfd->tdata.mmo_data->buf)); - abfd->tdata.mmo_data->byte_no = 0; + mmo_write_tetra (abfd, bfd_get_32 (abfd, mmop->buf)); + mmop->byte_no = 0; } } @@ -811,7 +811,7 @@ mmo_write_chunk (bfd *abfd, const bfd_byte *loc, unsigned int len) mmo_write_tetra_raw (abfd, LOP_QUOTE_NEXT); retval = (retval - && ! abfd->tdata.mmo_data->have_error + && ! mmop->have_error && 4 == bfd_bwrite (loc, 4, abfd)); loc += 4; @@ -820,12 +820,12 @@ mmo_write_chunk (bfd *abfd, const bfd_byte *loc, unsigned int len) if (len) { - memcpy (abfd->tdata.mmo_data->buf, loc, len); - abfd->tdata.mmo_data->byte_no = len; + memcpy (mmop->buf, loc, len); + mmop->byte_no = len; } if (! retval) - abfd->tdata.mmo_data->have_error = TRUE; + mmop->have_error = TRUE; return retval; } diff --git a/bfd/version.h b/bfd/version.h index 5e617d5..a62bb74 100644 --- a/bfd/version.h +++ b/bfd/version.h @@ -1,4 +1,4 @@ -#define BFD_VERSION_DATE 20130410 +#define BFD_VERSION_DATE 20130415 #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 89b787b..f36f87c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,295 @@ +2013-04-15 Tom Tromey + + * NEWS: Move recent entries into "since 7.6" section. + +2013-04-15 Tom Tromey + + PR c++/13588: + * NEWS: Update. + * break-catch-throw.c (struct exception_catchpoint) + : New fields. + (fetch_probe_arguments, dtor_exception_catchpoint) + (check_status_exception_catchpoint) + (print_one_detail_exception_catchpoint): New functions. + (handle_gnu_v3_exceptions): Add "except_rx" argument. + Compile regular expression if needed. + (extract_exception_regexp): New function. + (catch_exception_command_1): Use extract_exception_regexp. + (compute_exception): Use fetch_probe_arguments. + (initialize_throw_catchpoint_ops): Set dtor, print_one_detail, + and check_status fields. + * cp-abi.c (cplus_typename_from_type_info): New function. + * cp-abi.h (cplus_typename_from_type_info): Declare. + (struct cp_abi_ops) : New field. + * gdb_regex.h (compile_rx_or_error): Declare. + * gnu-v3-abi.c (gnuv3_get_typename_from_type_info): Update + comment. + (init_gnuv3_ops): Set get_type_from_type_info field. + * probe.c (compile_rx_or_error): Move... + * utils.c (compile_rx_or_error): ... here. + +2013-04-15 Tom Tromey + + PR c++/15176: + * NEWS: Update. + * break-catch-throw.c (compute_exception): New function. + (exception_funcs): New global. + (_initialize_break_catch_throw): Create $_exception. + * cp-abi.c (cplus_type_from_type_info): New function. + * cp-abi.h (cplus_type_from_type_info): Declare. + (struct cp_abi_ops) : New field. + * gnu-v3-abi.c (gnuv3_get_typename_from_type_info) + (gnuv3_get_type_from_type_info): New functions. + (init_gnuv3_ops): Set get_type_from_type_info ABI field. + +2013-04-15 Tom Tromey + + * break-catch-throw.c (struct exception_names): New. + (exception_functions): Change type. + (re_set_exception_catchpoint): Look for SDT probes. + +2013-04-15 Tom Tromey + + PR c++/10119: + * break-catch-throw.c (exception_functions): New global. + (gnu_v3_exception_catchpoint_ops): Move earlier. + (struct exception_catchpoint): New. + (classify_exception_breakpoint): Rewrite. + (re_set_exception_catchpoint): New function. + (handle_gnu_v3_exceptions): Return void. Use init_catchpoint. + Allocate a struct exception_catchpoint. + (catch_exception_command_1): Update. + (initialize_throw_catchpoint_ops): Set 're_set' method. + +2013-04-15 Tom Tromey + + * Makefile.in (SFILES): Add break-catch-throw.c + (COMMON_OBS): Add break-catch-throw.o. + * break-catch-throw.c: New file. + * breakpoint.c: Move exception-catching code to new file. + (ep_parse_optional_if_clause): No longer static. + * breakpoint.h (ep_parse_optional_if_clause): Declare. + +2013-04-15 Tom Tromey + + PR c++/9065: + * NEWS: Update. + * breakpoint.c (watchpoint_exp_is_const): Add OP_TYPEID. + * c-exp.y (TYPEID): New token. + (exp): Add new TYPEID productions. + (ident_tokens): Add "typeid". + * cp-abi.c (cplus_typeid, cplus_typeid_type): New functions. + * cp-abi.h (cplus_typeid, cplus_typeid_type): Declare. + (struct cp_abi_ops) : New fields. + * eval.c (evaluate_subexp_standard) : New case. + * expprint.c (dump_subexp_body_standard) : New + case. + * gnu-v3-abi.c (std_type_info_gdbarch_data): New global. + (build_std_type_info_type, gnuv3_get_typeid_type) + (gnuv3_get_typeid): New functions. + (init_gnuv3_ops): Initialize std_type_info_gdbarch_data. Set + new fields on ABI object. + * parse.c (operator_length_standard) : New case. + * std-operator.def (OP_TYPEID): New. + +2013-04-15 Tom Tromey + + * elfread.c (elf_symtab_read): Install versioned symbol under + unversioned name as well. + +2013-04-15 Tom Tromey + + PR c++/11990: + * c-lang.c (cplus_language_defn): Use gdb_demangle. + * c-typeprint.c (c_type_print_base): Use gdb_demangle. + * cp-support.c (mangled_name_to_comp): Use gdb_demangle. + (gdb_demangle): New function. + * cp-support.h (gdb_demangle): Declare. + * dwarf2read.c (dwarf2_physname, fixup_partial_die) + (dwarf2_name): Use gdb_demangle. + * gdbtypes.c (check_stub_method): Use gdb_demangle. + * gnu-v3-abi.c (gnuv3_rtti_type): Strip @plt and version + suffixes from name. + (gnuv3_print_method_ptr): Use gdb_demangle. + * jv-lang.c (java_demangle): Use gdb_demangle. + * jv-typeprint.c (java_type_print_base): Use gdb_demangle. + * language.c (unk_lang_demangle): Use gdb_demangle. + * symtab.c (symbol_find_demangled_name) + (demangle_for_lookup): Use gdb_demangle. + +2013-04-15 Tom Tromey + + PR c++/12824: + * NEWS: Update. + * breakpoint.c (enum exception_event_kind) : + New constant. + (classify_exception_breakpoint): New function. + (print_it_exception_catchpoint, print_one_exception_catchpoint) + (print_mention_exception_catchpoint) + (print_recreate_exception_catchpoint, handle_gnu_v3_exceptions) + (catch_exception_command_1): Handle "rethrow" catchpoint. + (catch_rethrow_command): New function. + (_initialize_breakpoint): Add "catch rethrow" command. + +2013-04-15 Pierre Muller + + * contrib/ari/gdb_ari.sh (write_pc rule): Do not consider + set_gdbarch_write_pc as deprecated anymore. + +2013-04-15 Joel Brobecker + + * spu-tdep.c (spu_write_pc): Add empty line after local variable + declarations. + +2013-04-13 Yao Qi + + * ctf.c (_initialize_ctf): Include "completer.h". + Call add_target_with_completer instead of add_target. + +2013-04-12 Jan Kratochvil + + Fix GDB regression related to PR binutils/14813. + * jit.c (mem_bfd_iovec_close): Return 0 for success. + * minidebug.c (lzma_close): Add return value comment. + * remote.c (remote_bfd_iovec_close): Return 0 for success. + * solib-spu.c (spu_bfd_iovec_close): Likewise. + * spu-linux-nat.c (spu_bfd_iovec_close): Likewise. + +2013-04-12 Jan Kratochvil + + * config.in: Regenerate. + +2013-04-12 Tom Tromey + + * dwarf2-frame.c (struct comp_unit) : Now + const. + * dwarf2read.c (struct dwarf2_section_info) : Now const. + (struct die_reader_specs) : Likewise. + (die_reader_func_ftype): Make 'info_ptr' const. + (struct line_header) : Now const. + (struct file_entry) : Likewise. + (struct partial_die_info) : Likewise. + (struct dwarf_block) : Likewise. + (dwarf2_read_section): Remove cast. + (dwarf2_get_section_info): Make 'bufp' const. + (read_index_from_section): Constify. + (dw2_get_file_names_reader): Make 'info_ptr' const. + (dw2_get_primary_filename_reader): Likewise. + (read_comp_unit_head): Make 'info_ptr' and return type const. + (read_and_check_comp_unit_head, read_and_check_type_unit_head): + Likewise. + (read_abbrev_offset): Constify. + (dwarf2_create_include_psymtab): Make 'name' const. + (create_debug_types_hash_table): Update. + (read_cutu_die_from_dwo): Make 'result_info_ptr' const. + (init_cutu_and_read_dies, init_cutu_and_read_dies_no_follow): + Constify. + (process_psymtab_comp_unit_reader, build_type_psymtabs_reader) + (load_partial_comp_unit_reader): Make 'info_ptr' const. + (read_comp_units_from_section): Constify. + (peek_abbrev_code, peek_die_abbrev, skip_children, skip_one_die) + (locate_pdi_sibling, load_full_comp_unit_reader): Make 'info_ptr' + const. + (dwarf2_compute_name, setup_type_unit_groups): Constify. + (create_dwo_debug_info_hash_table): Make 'info_ptr' const. + (create_dwp_hash_table, dwarf2_ranges_read) + (dwarf2_record_block_ranges): Constify. + (read_die_and_children, read_die_and_siblings_1) + (read_die_and_siblings): Make 'info_ptr' and 'new_info_ptr' + const. + (read_full_die_1, read_full_die): Make 'info_ptr' const. + (abbrev_table_read_table): Constify. + (load_partial_dies): Make 'info_ptr' const. + (read_partial_die, read_attribute_value, read_attribute): Make + 'info_ptr' and return type const. + (read_address, read_initial_length) + (read_checked_initial_length_and_offset, read_offset) + (read_offset_1, read_n_bytes, read_direct_string): Make 'buf' + const. + (read_direct_string): Make 'buf' and return type const. + (read_indirect_string_at_offset, read_indirect_string_from_dwz) + (read_indirect_string): Make return type const. + (read_unsigned_leb128, read_signed_leb128): Make 'buf' const. + (read_addr_index_from_leb128, dwarf2_read_addr_index_reader): Make + 'info_ptr' const. + (read_str_index): Make return type const. + (add_include_dir): Make 'include_dir' const. + (add_file_name): Make 'name' const. + (dwarf_decode_line_header): Constify. + (psymtab_include_file_name): Make return type const. + (dwarf_decode_lines_1, dwarf_decode_lines): Constify. + (dwarf2_start_subfile): Make 'filename' const. + (dwarf2_const_value_attr): Make 'bytes' const. + (read_signatured_type_reader): Make 'info_ptr' const. + (decode_locdesc): Constify. + (skip_form_bytes): Make 'bytes', 'buffer_end', and return type + const. + (skip_unknown_opcode): Make 'opcode_definitions', 'mac_ptr', + 'mac_end', and return type const. + (dwarf_parse_macro_header): Make 'mac_ptr' and return type const. + (dwarf_decode_macro_bytes): Make 'mac_ptr', 'mac_end', and return + type const. + (per_cu_header_read_in): Constify. + * symfile.h (dwarf2_get_section_info): Update. + +2013-04-12 Tom Tromey + + * symtab.h (struct general_symbol_info) : Make const. + +2013-04-12 Eli Zaretskii + + * NEWS: Mention "show configuration", --configuration. + * top.c (print_gdb_configuration): New function, displays the + details about GDB configure-time parameters. + (print_gdb_version): Mention "show configuration". + * cli/cli-cmds.c (show_configuration): New function. + (_initialize_cli_cmds): Add the "show configuration" command. + * main.c (captured_main) : New static var. + : Use it. + If --configuration was given, call print_gdb_configuration. + +2013-04-11 Jan Kratochvil + Pedro Alves + + * Makefile.in (HAVE_NATIVE_GCORE_TARGET): New. + (generated_files): Add gcore. + (install-only, uninstall): Add gcore if HAVE_NATIVE_GCORE_TARGET or + HAVE_NATIVE_GCORE_HOST. + (gcore): New. + * NEWS (Changes since GDB 7.6): Mention newly installed gcore. + * config/alpha/alpha-osf3.mh, config/i386/fbsd.mh, + config/i386/fbsd64.mh, config/i386/i386gnu.mh, config/i386/i386sol2.mh, + config/i386/sol2-64.mh, config/mips/irix5.mh, config/mips/irix6.mh, + config/powerpc/fbsd.mh, config/sparc/fbsd.mh, config/sparc/sol2.mh: + Add HAVE_NATIVE_GCORE_HOST. + * configure: Regenerate. + * configure.ac (HAVE_NATIVE_GCORE_TARGET): New, set it, AC_SUBST it. + New AC_SUBST fir GDB_TRANSFORM_NAME and GCORE_TRANSFORM_NAME. New + AC_CONFIG_FILES for gcore. + * configure.tgt: Add gdb_have_gcore to the initial comment. Set + gdb_have_gcore. + * gdb_gcore.sh: Rename to ... + * gcore.in: ... here. Remove gcore.sh comment. Use GDB_TRANSFORM_NAME + and GCORE_TRANSFORM_NAME substitutions. + + Fix parsing tabs in ${gdb_target_obs}. + * configure.tgt (gdb_have_gcore): Replace case with for and if. + +2013-04-11 Jan Kratochvil + + * remote.c (unpush_and_perror): Add output message final dot. + +2013-04-11 Yao Qi + + * tracepoint.c (tfile_interp_line): Fit parameters line and + utpp in one line. + +2013-04-10 Joel Brobecker + + * solib.c (solib_map_sections): Remove code overwriting + SO->SO_NAME with the bfd's filename. + 2013-04-10 Pedro Alves * cli/cli-decode.c (integer_unlimited_completer): New function. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 41e9c19..d4158f4 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -418,6 +418,7 @@ CONFIG_ALL= @CONFIG_ALL@ CONFIG_CLEAN= @CONFIG_CLEAN@ CONFIG_INSTALL = @CONFIG_INSTALL@ CONFIG_UNINSTALL = @CONFIG_UNINSTALL@ +HAVE_NATIVE_GCORE_TARGET = @HAVE_NATIVE_GCORE_TARGET@ # -I. for config files. # -I$(srcdir) for gdb internal headers. @@ -707,7 +708,9 @@ SFILES = ada-exp.y ada-lang.c ada-typeprint.c ada-valprint.c ada-tasks.c \ agent.c \ bcache.c \ bfd-target.c \ - block.c blockframe.c breakpoint.c break-catch-sig.c buildsym.c \ + block.c blockframe.c \ + breakpoint.c break-catch-sig.c break-catch-throw.c \ + buildsym.c \ c-exp.y c-lang.c c-typeprint.c c-valprint.c \ charset.c cleanups.c cli-out.c coffread.c coff-pe-read.c \ complaints.c completer.c continuations.c corefile.c corelow.c \ @@ -879,7 +882,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $(YYOBJ) \ auto-load.o auxv.o \ agent.o \ bfd-target.o \ - blockframe.o breakpoint.o break-catch-sig.o \ + blockframe.o breakpoint.o break-catch-sig.o break-catch-throw.o \ findvar.o regcache.o cleanups.o \ charset.o continuations.o corelow.o disasm.o dummy-frame.o dfp.o \ hooks/post-receive -- Repository for Project Archer.