From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28213 invoked by alias); 9 Mar 2009 17:05:02 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 28116 invoked by uid 9674); 9 Mar 2009 17:05:01 -0000 Date: Mon, 09 Mar 2009 17:05:00 -0000 Message-ID: <20090309170501.28101.qmail@sourceware.org> From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] master: * solib.c (reload_shared_libraries): Give X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: a602008d1bc4bd7ae94f48f258b42fe8b9fc6e35 X-Git-Newrev: c2972ffea8572552b612c7c2da82d3836b4a2c8a X-SW-Source: 2009-q1/txt/msg00291.txt.bz2 List-Id: The branch, master has been updated via c2972ffea8572552b612c7c2da82d3836b4a2c8a (commit) via 62c45004981d213b9fe085264e57f01d55fea73b (commit) via 0ed0ce6569cdb43df57173f703f5987da367625e (commit) via be2e1c8d04cc278c352b05afcd2f92caad740b87 (commit) via 8444b262861157b6478ea024f77df2ed1ff02789 (commit) via 7a82cea5ae873f8b53eaf13f730a417a289a6aa9 (commit) via 01939d0bc5b5e377d2d2e1041336174f88d75657 (commit) via ba3b27c6841ed40d7a38517348b34180797c2334 (commit) from a602008d1bc4bd7ae94f48f258b42fe8b9fc6e35 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit c2972ffea8572552b612c7c2da82d3836b4a2c8a Author: Vladimir Prus Date: Mon Mar 9 13:19:19 2009 +0000 * solib.c (reload_shared_libraries): Give inferior a chance to reset solib breakpoint. Reinit frame cache. commit 62c45004981d213b9fe085264e57f01d55fea73b Author: Christopher Faylor Date: Mon Mar 9 05:35:56 2009 +0000 Minor formatting change commit 0ed0ce6569cdb43df57173f703f5987da367625e Author: gdbadmin Date: Mon Mar 9 00:00:32 2009 +0000 *** empty log message *** commit be2e1c8d04cc278c352b05afcd2f92caad740b87 Author: Alan Modra Date: Mon Mar 9 00:00:04 2009 +0000 daily update commit 8444b262861157b6478ea024f77df2ed1ff02789 Author: Christopher Faylor Date: Sun Mar 8 21:01:51 2009 +0000 * windows-nat.c (dr): Redefine to use largest possible integer which holds a pointer. (cygwin_set_dr): Avoid coercion. * windows-nat.c (windows_create_inferior): implement --tty handling on non-cygwin. commit 7a82cea5ae873f8b53eaf13f730a417a289a6aa9 Author: Alan Modra Date: Sun Mar 8 00:00:04 2009 +0000 daily update commit 01939d0bc5b5e377d2d2e1041336174f88d75657 Author: gdbadmin Date: Sun Mar 8 00:00:03 2009 +0000 *** empty log message *** commit ba3b27c6841ed40d7a38517348b34180797c2334 Author: Dave Anglin Date: Sat Mar 7 23:38:12 2009 +0000 PR binutils/9921 * som.c (som_bfd_derive_misc_symbol_info): Set symbol type ST_ABSOLUTE for unknown symbols in absolute section. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 6 ++++++ bfd/som.c | 6 ++++-- bfd/version.h | 2 +- gdb/ChangeLog | 17 +++++++++++++++++ gdb/solib.c | 22 ++++++++++++++++++++++ gdb/version.in | 2 +- gdb/windows-nat.c | 33 +++++++++++++++++++++++++++++++-- 7 files changed, 82 insertions(+), 6 deletions(-) First 500 lines of diff: diff --git a/bfd/ChangeLog b/bfd/ChangeLog index df3961f..2d043f7 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2009-03-07 John David Anglin + + PR binutils/9921 + * som.c (som_bfd_derive_misc_symbol_info): Set symbol type ST_ABSOLUTE + for unknown symbols in absolute section. + 2009-03-06 Nick Clifton * po/es.po: Updated Spanish translation. diff --git a/bfd/som.c b/bfd/som.c index 360819d..9e3dc78 100644 --- a/bfd/som.c +++ b/bfd/som.c @@ -1,6 +1,6 @@ /* bfd back-end for HP PA-RISC SOM objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. Contributed by the Center for Software Science at the @@ -4015,7 +4015,9 @@ som_bfd_derive_misc_symbol_info (bfd *abfd ATTRIBUTE_UNUSED, section (ST_DATA for DATA sections, ST_CODE for CODE sections). */ else if (som_symbol_data (sym)->som_type == SYMBOL_TYPE_UNKNOWN) { - if (sym->section->flags & SEC_CODE) + if (bfd_is_abs_section (sym->section)) + info->symbol_type = ST_ABSOLUTE; + else if (sym->section->flags & SEC_CODE) info->symbol_type = ST_CODE; else info->symbol_type = ST_DATA; diff --git a/bfd/version.h b/bfd/version.h index 1fc7c4f..e08f8dd 100644 --- a/bfd/version.h +++ b/bfd/version.h @@ -1,4 +1,4 @@ -#define BFD_VERSION_DATE 20090307 +#define BFD_VERSION_DATE 20090309 #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 412161c..10b3429 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,20 @@ +2008-03-09 Vladimir Prus + + * solib.c (reload_shared_libraries): Give + inferior a chance to reset solib breakpoint. + Reinit frame cache. + +2009-03-08 Christopher Faylor + + * windows-nat.c (dr): Redefine to use largest possible integer which + holds a pointer. + (cygwin_set_dr): Avoid coercion. + +2009-03-08 Oswald Buddenhagen + + * windows-nat.c (windows_create_inferior): Implement --tty handling on + non-cygwin. + 2009-03-06 Paul Pluzhnikov Rename solib_address to solib_name_from_address. diff --git a/gdb/solib.c b/gdb/solib.c index f2e68f5..0bd767e 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -1015,6 +1015,28 @@ reload_shared_libraries (char *ignored, int from_tty, { no_shared_libraries (NULL, from_tty); solib_add (NULL, from_tty, NULL, auto_solib_add); + /* Creating inferior hooks here has two purposes. First, if we reload + shared libraries then the address of solib breakpoint we've computed + previously might be no longer valid. For example, if we forgot to set + solib-absolute-prefix and are setting it right now, then the previous + breakpoint address is plain wrong. Second, installing solib hooks + also implicitly figures were ld.so is and loads symbols for it. + Absent this call, if we've just connected to a target and set + solib-absolute-prefix or solib-search-path, we'll lose all information + about ld.so. */ + if (target_has_execution) + { +#ifdef SOLIB_CREATE_INFERIOR_HOOK + SOLIB_CREATE_INFERIOR_HOOK (PIDGET (inferior_ptid)); +#else + solib_create_inferior_hook (); +#endif + } + /* We have unloaded and then reloaded debug info for all shared libraries. + However, frames may still reference them, for example a frame's + unwinder might still point of DWARF FDE structures that are now freed. + Reinit frame cache to avoid crashing. */ + reinit_frame_cache (); } static void diff --git a/gdb/version.in b/gdb/version.in index d7d5eec..0452c64 100644 --- a/gdb/version.in +++ b/gdb/version.in @@ -1 +1 @@ -6.8.50.20090307-cvs +6.8.50.20090309-cvs diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index 67f0c99..33ff1a0 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-nat.c @@ -95,7 +95,7 @@ enum #define CONTEXT_DEBUGGER_DR CONTEXT_DEBUGGER | CONTEXT_DEBUG_REGISTERS \ | CONTEXT_EXTENDED_REGISTERS -static unsigned dr[8]; +static uintptr_t dr[8]; static int debug_registers_changed; static int debug_registers_used; #define DR6_CLEAR_VALUE 0xffff0ff0 @@ -1815,8 +1815,12 @@ windows_create_inferior (struct target_ops *ops, char *exec_file, char *toexec; char shell[MAX_PATH + 1]; /* Path to shell */ const char *sh; +#ifdef __CYGWIN__ int tty; int ostdin, ostdout, ostderr; +#else + HANDLE tty; +#endif const char *inferior_io_terminal = get_inferior_io_terminal (); if (!exec_file) @@ -1886,6 +1890,28 @@ windows_create_inferior (struct target_ops *ops, char *exec_file, dup2 (tty, 2); } } +#else + if (!inferior_io_terminal) + tty = INVALID_HANDLE_VALUE; + else + { + SECURITY_ATTRIBUTES sa; + sa.nLength = sizeof(sa); + sa.lpSecurityDescriptor = 0; + sa.bInheritHandle = TRUE; + tty = CreateFileA (inferior_io_terminal, GENERIC_READ | GENERIC_WRITE, + 0, &sa, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); + if (tty == INVALID_HANDLE_VALUE) + warning (_("Warning: Failed to open TTY %s, error %#x."), + inferior_io_terminal, (unsigned) GetLastError ()); + else + { + si.hStdInput = tty; + si.hStdOutput = tty; + si.hStdError = tty; + si.dwFlags |= STARTF_USESTDHANDLES; + } + } #endif windows_init_thread_list (); @@ -1911,6 +1937,9 @@ windows_create_inferior (struct target_ops *ops, char *exec_file, close (ostdout); close (ostderr); } +#else + if (tty != INVALID_HANDLE_VALUE) + CloseHandle (tty); #endif if (!ret) @@ -2245,7 +2274,7 @@ cygwin_set_dr (int i, CORE_ADDR addr) if (i < 0 || i > 3) internal_error (__FILE__, __LINE__, _("Invalid register %d in cygwin_set_dr.\n"), i); - dr[i] = (unsigned) addr; + dr[i] = addr; debug_registers_changed = 1; debug_registers_used = 1; } hooks/post-receive -- Repository for Project Archer.