From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14103 invoked by alias); 6 Mar 2013 10:22:17 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 13965 invoked by uid 9364); 6 Mar 2013 10:22:15 -0000 Date: Wed, 06 Mar 2013 10:22:00 -0000 Message-ID: <20130306102215.13949.qmail@sourceware.org> From: gary@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] gbenson/rtld-probes: Merge branch 'master' of git://sourceware.org/git/gdb into gbenson/rtld-probes X-Git-Refname: refs/heads/gbenson/rtld-probes X-Git-Reftype: branch X-Git-Oldrev: 3fb82cdc01c92e365bc9ebc39bd5cc9487c8533b X-Git-Newrev: b88fe6f212c035a1088e802d6740ae53dee578d7 X-SW-Source: 2013-q1/txt/msg00238.txt.bz2 List-Id: The branch, gbenson/rtld-probes has been updated via b88fe6f212c035a1088e802d6740ae53dee578d7 (commit) via 8b036937b109807fc4a3dd99e2f9c7bec766b051 (commit) via 6eb8b57e8717879dcf30d0dbdc4235be516659bf (commit) via 808063f3501f45c3f00fa6ce6428319c9392cc70 (commit) via 7ac04623a9df976de0c5d379aebc88c8126739a7 (commit) via a9c4418872df7e82ff4e14171902d90bad2f7987 (commit) via ebf3262775ab5d785278cc5096c40bad16ac5dc5 (commit) via 8945e77196073b641208e991da067b3fcb63e5d7 (commit) via a0aa2171a52a6035b84edc8850ca560dadd297ed (commit) via d0516cbdb20f6884e0c513ed56a218baf9c7283b (commit) via 1c6a7599f8fac5ed5c9893efd11c62dfed150852 (commit) via db286784aa52e906c04f636ea2c5d5f58192364d (commit) via c2a65e648556cfce850e3c19289a4587ae1a6ccf (commit) via 7b02e0154f5e646cdfa648259106858384f695d6 (commit) via 51f7bc66b09e61db6bd3c91b4f0c9ef58b21bc7b (commit) from 3fb82cdc01c92e365bc9ebc39bd5cc9487c8533b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit b88fe6f212c035a1088e802d6740ae53dee578d7 Merge: 8b03693 6eb8b57 Author: Gary Benson Date: Wed Mar 6 10:18:57 2013 +0000 Merge branch 'master' of git://sourceware.org/git/gdb into gbenson/rtld-probes commit 8b036937b109807fc4a3dd99e2f9c7bec766b051 Author: Gary Benson Date: Wed Mar 6 10:17:55 2013 +0000 Get this through the target layer so everything can see it commit 6eb8b57e8717879dcf30d0dbdc4235be516659bf Author: qiyao Date: Wed Mar 6 01:03:38 2013 +0000 gdb/testsuite/ * gdb.trace/tstatus.exp: Remove the invocation of gdb_load_shlibs, gdb_compile, clean_restart and runto_main. (test_tracepoints): Don't set fast tracepoint. (top level): Don't check agent library is loaded or not. commit 808063f3501f45c3f00fa6ce6428319c9392cc70 Author: qiyao Date: Wed Mar 6 00:59:54 2013 +0000 gdb/testsuite/ * gdb.trace/tstatus.exp (run_trace_experiment): Escape parentheses by "\\". commit 7ac04623a9df976de0c5d379aebc88c8126739a7 Author: gdbadmin Date: Wed Mar 6 00:00:03 2013 +0000 *** empty log message *** commit a9c4418872df7e82ff4e14171902d90bad2f7987 Author: Alan Modra Date: Tue Mar 5 23:00:06 2013 +0000 daily update commit ebf3262775ab5d785278cc5096c40bad16ac5dc5 Author: Doug Evans Date: Tue Mar 5 21:15:33 2013 +0000 * ada-lang.c (ada_lookup_symbol_list_worker): New function, contents of old ada_lookup_symbol_list. In !full_search case, don't search superblocks. (ada_lookup_symbol_list): Delete arg full_search, all callers updated. Call ada_lookup_symbol_list_worker. (ada_iterate_over_symbols): Call ada_lookup_symbol_list_worker. * ada-lang.h (ada_lookup_symbol_list): Update. * language.h (language_defn): Update comment for la_iterate_over_symbols. * linespec.c (iterate_over_file_blocks): New function. (iterate_over_all_matching_symtabs): Call it. (lookup_prefix_sym): Ditto. (get_current_search_block): New function. (get_search_block): Delete. (find_label_symbols): Call get_current_search_block. (add_matching_symbols_to_info): Call iterate_over_file_blocks. * symtab.c (iterate_over_symbols): Don't search superblocks. commit 8945e77196073b641208e991da067b3fcb63e5d7 Author: Corinna Vinschen Date: Tue Mar 5 15:18:10 2013 +0000 Fix ChangeLog entry. commit a0aa2171a52a6035b84edc8850ca560dadd297ed Author: Gary Benson Date: Tue Mar 5 14:49:58 2013 +0000 Rearrange to not look like a packet commit d0516cbdb20f6884e0c513ed56a218baf9c7283b Author: qiyao Date: Tue Mar 5 14:23:19 2013 +0000 gdb/ * cli/cli-decode.c (add_setshow_zuinteger_unlimited_cmd): Change parameter VAR's type from "unsigned int" to "int". * command.h (var_zuinteger_unlimited): Update its comments. (add_setshow_zuinteger_unlimited_cmd): Update the declaration. commit 1c6a7599f8fac5ed5c9893efd11c62dfed150852 Author: Gary Benson Date: Tue Mar 5 13:43:25 2013 +0000 Add as-yet-unnamed new feature to qSupported in GDB commit db286784aa52e906c04f636ea2c5d5f58192364d Author: Corinna Vinschen Date: Tue Mar 5 13:38:58 2013 +0000 * NEWS: Mention new target x86_64-*-cygwin*. commit c2a65e648556cfce850e3c19289a4587ae1a6ccf Author: Corinna Vinschen Date: Tue Mar 5 13:37:06 2013 +0000 * configure.host: Add x86_64-*-cygwin* as host. * configure.tgt: Add x86_64-*-cygwin* as target. * config/i386/cygwin64.mh: New file. * gdbserver/configure.srv: Add x86_64-*-cygwin* as target. commit 7b02e0154f5e646cdfa648259106858384f695d6 Author: Gary Benson Date: Tue Mar 5 13:36:34 2013 +0000 Add as-yet-unnamed new feature to qSupported in gdbserver commit 51f7bc66b09e61db6bd3c91b4f0c9ef58b21bc7b Author: Corinna Vinschen Date: Tue Mar 5 11:47:00 2013 +0000 * config.bfd: Add x86_64-*-cygwin to list of supported targets. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 4 + bfd/config.bfd | 2 +- bfd/version.h | 2 +- gdb/ChangeLog | 37 +++++++++++ gdb/NEWS | 1 + gdb/ada-exp.y | 6 +- gdb/ada-lang.c | 113 +++++++++++++++++++++-------------- gdb/ada-lang.h | 3 +- gdb/cli/cli-decode.c | 2 +- gdb/command.h | 7 +- gdb/config/i386/cygwin64.mh | 20 ++++++ gdb/configure.host | 1 + gdb/configure.tgt | 2 +- gdb/gdbserver/ChangeLog | 4 + gdb/gdbserver/configure.srv | 4 + gdb/gdbserver/server.c | 3 +- gdb/language.h | 6 +- gdb/linespec.c | 69 ++++++++++++---------- gdb/remote.c | 26 ++++++++ gdb/symtab.c | 32 ++++------ gdb/target.c | 4 + gdb/target.h | 7 ++ gdb/testsuite/ChangeLog | 12 ++++ gdb/testsuite/gdb.trace/tstatus.exp | 46 +-------------- gdb/version.in | 2 +- 25 files changed, 258 insertions(+), 157 deletions(-) create mode 100644 gdb/config/i386/cygwin64.mh First 500 lines of diff: diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 70015a5..167faff 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2013-03-05 Corinna Vinschen + + * config.bfd: Add x86_64-*-cygwin to list of supported targets. + 2013-03-04 Alan Modra * elf32-ppc.c (ppc_elf_relocate_section ): Adjust diff --git a/bfd/config.bfd b/bfd/config.bfd index ade2731..10820e2 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -673,7 +673,7 @@ case "${targ}" in targ_archs="$targ_archs bfd_arm_arch" want64=true ;; - x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep) + x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep | x86_64-*-cygwin) targ_defvec=x86_64pe_vec targ_selvecs="x86_64pe_vec x86_64pei_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386pe_vec i386pei_vec bfd_elf32_i386_vec" want64=true diff --git a/bfd/version.h b/bfd/version.h index 9cf90ff..e6d99eb 100644 --- a/bfd/version.h +++ b/bfd/version.h @@ -1,4 +1,4 @@ -#define BFD_VERSION_DATE 20130305 +#define BFD_VERSION_DATE 20130306 #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 fab6ff9..9599737 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,40 @@ +2013-03-05 Doug Evans + + * ada-lang.c (ada_lookup_symbol_list_worker): New function, contents + of old ada_lookup_symbol_list. In !full_search case, don't + search superblocks. + (ada_lookup_symbol_list): Delete arg full_search, all callers + updated. Call ada_lookup_symbol_list_worker. + (ada_iterate_over_symbols): Call ada_lookup_symbol_list_worker. + * ada-lang.h (ada_lookup_symbol_list): Update. + * language.h (language_defn): Update comment for + la_iterate_over_symbols. + * linespec.c (iterate_over_file_blocks): New function. + (iterate_over_all_matching_symtabs): Call it. + (lookup_prefix_sym): Ditto. + (get_current_search_block): New function. + (get_search_block): Delete. + (find_label_symbols): Call get_current_search_block. + (add_matching_symbols_to_info): Call iterate_over_file_blocks. + * symtab.c (iterate_over_symbols): Don't search superblocks. + +2013-03-05 Yao Qi + + * cli/cli-decode.c (add_setshow_zuinteger_unlimited_cmd): Change + parameter VAR's type from "unsigned int" to "int". + * command.h (var_zuinteger_unlimited): Update its comments. + (add_setshow_zuinteger_unlimited_cmd): Update the declaration. + +2013-03-05 Corinna Vinschen + + * NEWS: Mention new target x86_64-*-cygwin*. + +2013-03-05 Corinna Vinschen + + * configure.host: Add x86_64-*-cygwin* as host. + * configure.tgt: Add x86_64-*-cygwin* as target. + * config/i386/cygwin64.mh: New file. + 2013-03-04 Jan Kratochvil * linespec.c (decode_line_2): Fix duplicate request off by two message. diff --git a/gdb/NEWS b/gdb/NEWS index 0877aa2..05fa498 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -13,6 +13,7 @@ FreeBSD/powerpc powerpc*-*-freebsd ARM AArch64 aarch64*-*-elf ARM AArch64 GNU/Linux aarch64*-*-linux Lynx 178 PowerPC powerpc-*-lynx*178 +x86_64/Cygwin x86_64-*-cygwin* * If the configured location of system.gdbinit file (as given by the --with-system-gdbinit option at configure time) is in the diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index e4bcfb3..d9fa9ac 100644 --- a/gdb/ada-exp.y +++ b/gdb/ada-exp.y @@ -1025,7 +1025,7 @@ block_lookup (struct block *context, char *raw_name) else name = ada_encode (raw_name); - nsyms = ada_lookup_symbol_list (name, context, VAR_DOMAIN, &syms, 1); + nsyms = ada_lookup_symbol_list (name, context, VAR_DOMAIN, &syms); if (context == NULL && (nsyms == 0 || SYMBOL_CLASS (syms[0].sym) != LOC_BLOCK)) symtab = lookup_symtab (name); @@ -1282,7 +1282,7 @@ write_var_or_type (const struct block *block, struct stoken name0) encoded_name[tail_index] = '\0'; nsyms = ada_lookup_symbol_list (encoded_name, block, - VAR_DOMAIN, &syms, 1); + VAR_DOMAIN, &syms); encoded_name[tail_index] = terminator; /* A single symbol may rename a package or object. */ @@ -1430,7 +1430,7 @@ write_name_assoc (struct stoken name) { struct ada_symbol_info *syms; int nsyms = ada_lookup_symbol_list (name.ptr, expression_context_block, - VAR_DOMAIN, &syms, 1); + VAR_DOMAIN, &syms); if (nsyms != 1 || SYMBOL_CLASS (syms[0].sym) == LOC_TYPEDEF) write_exp_op_with_string (OP_NAME, name); else diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index 634e761..75f1c3d 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -3110,7 +3110,7 @@ resolve_subexp (struct expression **expp, int *pos, int deprocedure_p, ada_lookup_symbol_list (SYMBOL_LINKAGE_NAME (exp->elts[pc + 2].symbol), exp->elts[pc + 1].block, VAR_DOMAIN, - &candidates, 1); + &candidates); if (n_candidates > 1) { @@ -3202,7 +3202,7 @@ resolve_subexp (struct expression **expp, int *pos, int deprocedure_p, ada_lookup_symbol_list (SYMBOL_LINKAGE_NAME (exp->elts[pc + 5].symbol), exp->elts[pc + 4].block, VAR_DOMAIN, - &candidates, 1); + &candidates); if (n_candidates == 1) i = 0; else @@ -3254,7 +3254,7 @@ resolve_subexp (struct expression **expp, int *pos, int deprocedure_p, n_candidates = ada_lookup_symbol_list (ada_encode (ada_decoded_op_name (op)), (struct block *) NULL, VAR_DOMAIN, - &candidates, 1); + &candidates); i = ada_resolve_function (candidates, n_candidates, argvec, nargs, ada_decoded_op_name (op), NULL); if (i < 0) @@ -5052,26 +5052,28 @@ add_nonlocal_symbols (struct obstack *obstackp, const char *name, } } -/* Find symbols in DOMAIN matching NAME0, in BLOCK0 and enclosing - scope and in global scopes, returning the number of matches. +/* Find symbols in DOMAIN matching NAME0, in BLOCK0 and, if full_search is + non-zero, enclosing scope and in global scopes, returning the number of + matches. Sets *RESULTS to point to a vector of (SYM,BLOCK) tuples, indicating the symbols found and the blocks and symbol tables (if - any) in which they were found. This vector are transient---good only to - the next call of ada_lookup_symbol_list. Any non-function/non-enumeral + any) in which they were found. This vector is transient---good only to + the next call of ada_lookup_symbol_list. + + When full_search is non-zero, any non-function/non-enumeral symbol match within the nest of blocks whose innermost member is BLOCK0, is the one match returned (no other matches in that or enclosing blocks is returned). If there are any matches in or - surrounding BLOCK0, then these alone are returned. Otherwise, if - FULL_SEARCH is non-zero, then the search extends to global and - file-scope (static) symbol tables. + surrounding BLOCK0, then these alone are returned. + Names prefixed with "standard__" are handled specially: "standard__" is first stripped off, and only static and global symbols are searched. */ -int -ada_lookup_symbol_list (const char *name0, const struct block *block0, - domain_enum namespace, - struct ada_symbol_info **results, - int full_search) +static int +ada_lookup_symbol_list_worker (const char *name0, const struct block *block0, + domain_enum namespace, + struct ada_symbol_info **results, + int full_search) { struct symbol *sym; struct block *block; @@ -5107,10 +5109,24 @@ ada_lookup_symbol_list (const char *name0, const struct block *block0, /* Check the non-global symbols. If we have ANY match, then we're done. */ - ada_add_local_symbols (&symbol_list_obstack, name, block, namespace, - wild_match_p); - if (num_defns_collected (&symbol_list_obstack) > 0 || !full_search) - goto done; + if (block != NULL) + { + if (full_search) + { + ada_add_local_symbols (&symbol_list_obstack, name, block, + namespace, wild_match_p); + } + else + { + /* In the !full_search case we're are being called by + ada_iterate_over_symbols, and we don't want to search + superblocks. */ + ada_add_block_symbols (&symbol_list_obstack, block, name, + namespace, NULL, wild_match_p); + } + if (num_defns_collected (&symbol_list_obstack) > 0 || !full_search) + goto done; + } /* No non-global symbols found. Check our cache to see if we have already performed this search before. If we have, then return @@ -5153,6 +5169,37 @@ done: return ndefns; } +/* Find symbols in DOMAIN matching NAME0, in BLOCK0 and enclosing scope and + in global scopes, returning the number of matches, and setting *RESULTS + to a vector of (SYM,BLOCK) tuples. + See ada_lookup_symbol_list_worker for further details. */ + +int +ada_lookup_symbol_list (const char *name0, const struct block *block0, + domain_enum domain, struct ada_symbol_info **results) +{ + return ada_lookup_symbol_list_worker (name0, block0, domain, results, 1); +} + +/* Implementation of the la_iterate_over_symbols method. */ + +static void +ada_iterate_over_symbols (const struct block *block, + const char *name, domain_enum domain, + symbol_found_callback_ftype *callback, + void *data) +{ + int ndefs, i; + struct ada_symbol_info *results; + + ndefs = ada_lookup_symbol_list_worker (name, block, domain, &results, 0); + for (i = 0; i < ndefs; ++i) + { + if (! (*callback) (results[i].sym, data)) + break; + } +} + /* If NAME is the name of an entity, return a string that should be used to look that entity up in Ada units. This string should be deallocated after use using xfree. @@ -5178,25 +5225,6 @@ ada_name_for_lookup (const char *name) return canon; } -/* Implementation of the la_iterate_over_symbols method. */ - -static void -ada_iterate_over_symbols (const struct block *block, - const char *name, domain_enum domain, - symbol_found_callback_ftype *callback, - void *data) -{ - int ndefs, i; - struct ada_symbol_info *results; - - ndefs = ada_lookup_symbol_list (name, block, domain, &results, 0); - for (i = 0; i < ndefs; ++i) - { - if (! (*callback) (results[i].sym, data)) - break; - } -} - /* The result is as for ada_lookup_symbol_list with FULL_SEARCH set to 1, but choosing the first symbol found if there are multiple choices. @@ -5215,9 +5243,7 @@ ada_lookup_encoded_symbol (const char *name, const struct block *block, gdb_assert (info != NULL); memset (info, 0, sizeof (struct ada_symbol_info)); - n_candidates = ada_lookup_symbol_list (name, block, namespace, &candidates, - 1); - + n_candidates = ada_lookup_symbol_list (name, block, namespace, &candidates); if (n_candidates == 0) return; @@ -5509,8 +5535,7 @@ full_match (const char *sym_name, const char *search_name) /* Add symbols from BLOCK matching identifier NAME in DOMAIN to vector *defn_symbols, updating the list of symbols in OBSTACKP (if necessary). If WILD, treat as NAME with a wildcard prefix. - OBJFILE is the section containing BLOCK. - SYMTAB is recorded with each symbol added. */ + OBJFILE is the section containing BLOCK. */ static void ada_add_block_symbols (struct obstack *obstackp, @@ -10692,7 +10717,7 @@ get_var_value (char *name, char *err_msg) int nsyms; nsyms = ada_lookup_symbol_list (name, get_selected_block (0), VAR_DOMAIN, - &syms, 1); + &syms); if (nsyms != 1) { diff --git a/gdb/ada-lang.h b/gdb/ada-lang.h index 418f8da..55c0a81 100644 --- a/gdb/ada-lang.h +++ b/gdb/ada-lang.h @@ -228,8 +228,7 @@ extern enum language ada_update_initial_language (enum language); extern void clear_ada_sym_cache (void); extern int ada_lookup_symbol_list (const char *, const struct block *, - domain_enum, struct ada_symbol_info**, - int); + domain_enum, struct ada_symbol_info**); extern char *ada_fold_name (const char *); diff --git a/gdb/cli/cli-decode.c b/gdb/cli/cli-decode.c index 49ccef3..a8f7747 100644 --- a/gdb/cli/cli-decode.c +++ b/gdb/cli/cli-decode.c @@ -708,7 +708,7 @@ add_setshow_zinteger_cmd (char *name, enum command_class class, void add_setshow_zuinteger_unlimited_cmd (char *name, enum command_class class, - unsigned int *var, + int *var, const char *set_doc, const char *show_doc, const char *help_doc, diff --git a/gdb/command.h b/gdb/command.h index 17662b4..a25fe04 100644 --- a/gdb/command.h +++ b/gdb/command.h @@ -99,8 +99,9 @@ typedef enum var_types /* ZeroableUnsignedInteger. *VAR is an unsigned int. Zero really means zero. */ var_zuinteger, - /* ZeroableUnsignedInteger with unlimited value. *VAR is an unsigned - int, but its range is [0, INT_MAX]. -1 stands for unlimited. */ + /* ZeroableUnsignedInteger with unlimited value. *VAR is an int, + but its range is [0, INT_MAX]. -1 stands for unlimited and + other negative numbers are not allowed. */ var_zuinteger_unlimited, /* Enumerated type. Can only have one of the specified values. *VAR is a char pointer to the name of the element that we @@ -361,7 +362,7 @@ extern void add_setshow_zuinteger_cmd (char *name, extern void add_setshow_zuinteger_unlimited_cmd (char *name, enum command_class class, - unsigned int *var, + int *var, const char *set_doc, const char *show_doc, const char *help_doc, diff --git a/gdb/config/i386/cygwin64.mh b/gdb/config/i386/cygwin64.mh new file mode 100644 index 0000000..f5102c4 --- /dev/null +++ b/gdb/config/i386/cygwin64.mh @@ -0,0 +1,20 @@ +# Native config information for GDB on PowerPC systems running FreeBSD. +# +# Copyright (C) 2013 Free Software Foundation, Inc. +# +# This file is part of GDB. +# +# 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 . */ + +NATDEPFILES= i386-nat.o windows-nat.o amd64-windows-nat.o diff --git a/gdb/configure.host b/gdb/configure.host index 395ee53..85f4491 100644 --- a/gdb/configure.host +++ b/gdb/configure.host @@ -182,6 +182,7 @@ x86_64-*-openbsd*) gdb_host=obsd64 ;; x86_64-*-mingw*) gdb_host=mingw64 gdb_host_obs=mingw-hdep.o ;; +x86_64-*-cygwin*) gdb_host=cygwin64 ;; m32r*-*-linux*) gdb_host=linux ;; xtensa*-*-linux*) gdb_host=linux ;; diff --git a/gdb/configure.tgt b/gdb/configure.tgt index 77dc37c..720d3d3 100644 --- a/gdb/configure.tgt +++ b/gdb/configure.tgt @@ -652,7 +652,7 @@ x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu) i387-tdep.o i386bsd-tdep.o i386fbsd-tdep.o \ bsd-uthread.o solib-svr4.o" ;; -x86_64-*-mingw*) +x86_64-*-mingw* | x86_64-*-cygwin*) # Target: MingW/amd64 gdb_target_obs="amd64-tdep.o amd64-windows-tdep.o \ i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \ diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 3f4629a..a8cf78c 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,7 @@ +2013-03-05 Corinna Vinschen + + * configure.srv: Add x86_64-*-cygwin* as target. + 2013-02-28 Tom Tromey * configure.ac: Invoke AC_SYS_LARGEFILE. diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv index b9a99d0..0bda563 100644 --- a/gdb/gdbserver/configure.srv +++ b/gdb/gdbserver/configure.srv @@ -326,6 +326,10 @@ case "${target}" in srv_xmlfiles="$srv_i386_xmlfiles $srv_amd64_xmlfiles" srv_mingw=yes ;; + x86_64-*-cygwin*) srv_regobj="$srv_amd64_regobj" + srv_tgtobj="i386-low.o i387-fp.o win32-low.o win32-i386-low.o" + srv_xmlfiles="$srv_i386_xmlfiles" + ;; xtensa*-*-linux*) srv_regobj=reg-xtensa.o srv_tgtobj="linux-low.o linux-osdata.o linux-xtensa-low.o linux-procfs.o" diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c index 768eae7..f496374 100644 --- a/gdb/gdbserver/server.c +++ b/gdb/gdbserver/server.c @@ -1581,7 +1581,8 @@ handle_query (char *own_buf, int packet_len, int *new_packet_len_p) PBUFSIZ - 1); if (the_target->qxfer_libraries_svr4 != NULL) - strcat (own_buf, ";qXfer:libraries-svr4:read+"); + strcat (own_buf, ";qXfer:libraries-svr4:read+" + ";augmented-libraries-svr4-read+"); else { /* We do not have any hook to indicate whether the non-SVR4 target diff --git a/gdb/language.h b/gdb/language.h index b24caec..b191b36 100644 --- a/gdb/language.h +++ b/gdb/language.h @@ -326,9 +326,9 @@ struct language_defn /* Find all symbols in the current program space matching NAME in DOMAIN, according to this language's rules. - The search starts with BLOCK. This function iterates upward - through blocks. When the outermost block has been finished, - the function returns. + The search is done in BLOCK only. + The caller is responsible for iterating up through superblocks + if desired. For each one, call CALLBACK with the symbol and the DATA argument. If CALLBACK returns zero, the iteration ends at that diff --git a/gdb/linespec.c b/gdb/linespec.c index 7ed823e..b1c2b1c 100644 --- a/gdb/linespec.c +++ b/gdb/linespec.c @@ -318,6 +318,11 @@ typedef struct ls_parser linespec_parser; /* Prototypes for local functions. */ +static void iterate_over_file_blocks (struct symtab *symtab, + const char *name, domain_enum domain, + symbol_found_callback_ftype *callback, + void *data); + static void initialize_defaults (struct symtab **default_symtab, int *default_line); @@ -1039,15 +1044,12 @@ iterate_over_all_matching_symtabs (struct linespec_state *state, ALL_OBJFILE_PRIMARY_SYMTABS (objfile, symtab) { - struct block *block; hooks/post-receive -- Repository for Project Archer.