This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Tue, 27 Jan 2004 17:52:56 -0500
- Subject: Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
- References: <4016E401.2050001@gnu.org>
On Tue, Jan 27, 2004 at 05:19:45PM -0500, Andrew Cagney wrote:
> Hello,
>
> Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
>
> The change unfortunatly broke IRIX 6.5's host compiler which is using
> mdebugread :-( That code was looking for a symbol in the absolute
> section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> ignored (find_pc_section didn't return an absolute section).
>
> Since the underlying problem with PR/1267 was with the frame code
> needing a minimal symbol that was in the same section as the frame's PC,
> and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> the find_pc_section call to that function.
>
> Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> Tested on PPC NetBSD (stabs) with no regressions.
> Tested on IRIX and all the warnings, and many failures, disappeared.
> See gdb/1519 for how to exercise the bug.
>
> ok?
> Andrew
Seems reasonable to me (if a little unintuitive).
> 2004-01-27 Andrew Cagney <cagney@redhat.com>
>
> * minsyms.c (lookup_minimal_symbol_by_pc): Use find_pc_section
> instead of find_pc_mapped_section.
> (lookup_minimal_symbol_by_pc_section): If the SECTION is NULL, do
> not default to the section containing PC. Fix PR gdb/1519.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer