Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.

* gdbarch.sh: Adjust comment to refer to
	in_solib_dynsym_resolve_code().
	* gdbarch.h, gdbarch.c: Update.
	* solib-osf.c: Ditto.
	* infrun.c: Ditto.
	(handle_inferior_event): Use in_solib_dynsym_resolve_code
	unconditionally.
	* config/mips/nm-irix5.h: Remove undef of
	IN_SOLIB_DYNSYM_RESOLVE_CODE.

	* gdbint.texinfo: Refer to target_so_ops.in_dynsym_resolve_code
	instead of IN_SOLIB_DYNSYM_RESOLVE_CODE.
This commit is contained in:
Stan Shebs 2008-07-22 02:10:14 +00:00
parent 21963d0e69
commit cfd8ab242a
9 changed files with 28 additions and 23 deletions

View File

@ -1,3 +1,16 @@
2008-07-21 Stan Shebs <stan@codesourcery.com>
Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
* gdbarch.sh: Adjust comment to refer to
in_solib_dynsym_resolve_code().
* gdbarch.h, gdbarch.c: Update.
* solib-osf.c: Ditto.
* infrun.c: Ditto.
(handle_inferior_event): Use in_solib_dynsym_resolve_code
unconditionally.
* config/mips/nm-irix5.h: Remove undef of
IN_SOLIB_DYNSYM_RESOLVE_CODE.
2008-07-21 Tom Tromey <tromey@redhat.com>
* symfile.c (reread_symbols): Don't pass argument to observer.

View File

@ -18,8 +18,6 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#undef IN_SOLIB_DYNSYM_RESOLVE_CODE
#define TARGET_HAS_HARDWARE_WATCHPOINTS
/* TARGET_CAN_USE_HARDWARE_WATCHPOINT is now defined to go through

View File

@ -1,3 +1,8 @@
2008-07-21 Stan Shebs <stan@codesourcery.com>
* gdbint.texinfo: Refer to target_so_ops.in_dynsym_resolve_code
instead of IN_SOLIB_DYNSYM_RESOLVE_CODE.
2008-07-21 Tom Tromey <tromey@redhat.com>
* observer.texi (GDB Observers): Remove obsolete comment.

View File

@ -3825,8 +3825,8 @@ final `return from function call' instruction.
Define this function to return nonzero if the program is stopped in the
trampoline that returns from a shared library.
@item IN_SOLIB_DYNSYM_RESOLVE_CODE (@var{pc})
@findex IN_SOLIB_DYNSYM_RESOLVE_CODE
@item target_so_ops.in_dynsym_resolve_code (@var{pc})
@findex in_dynsym_resolve_code
Define this to return nonzero if the program is stopped in the
dynamic linker.

View File

@ -2150,7 +2150,7 @@ gdbarch_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR ip)
void
set_gdbarch_skip_main_prologue (struct gdbarch *gdbarch,
gdbarch_skip_main_prologue_ftype skip_main_prologue)
gdbarch_skip_main_prologue_ftype skip_main_prologue)
{
gdbarch->skip_main_prologue = skip_main_prologue;
}

View File

@ -538,7 +538,7 @@ typedef CORE_ADDR (gdbarch_skip_trampoline_code_ftype) (struct frame_info *frame
extern CORE_ADDR gdbarch_skip_trampoline_code (struct gdbarch *gdbarch, struct frame_info *frame, CORE_ADDR pc);
extern void set_gdbarch_skip_trampoline_code (struct gdbarch *gdbarch, gdbarch_skip_trampoline_code_ftype *skip_trampoline_code);
/* If IN_SOLIB_DYNSYM_RESOLVE_CODE returns true, and SKIP_SOLIB_RESOLVER
/* If in_solib_dynsym_resolve_code() returns true, and SKIP_SOLIB_RESOLVER
evaluates non-zero, this is the address where the debugger will place
a step-resume breakpoint to get us past the dynamic linker. */

View File

@ -557,7 +557,7 @@ f:int:print_insn:bfd_vma vma, struct disassemble_info *info:vma, info::0:
f:CORE_ADDR:skip_trampoline_code:struct frame_info *frame, CORE_ADDR pc:frame, pc::generic_skip_trampoline_code::0
# If IN_SOLIB_DYNSYM_RESOLVE_CODE returns true, and SKIP_SOLIB_RESOLVER
# If in_solib_dynsym_resolve_code() returns true, and SKIP_SOLIB_RESOLVER
# evaluates non-zero, this is the address where the debugger will place
# a step-resume breakpoint to get us past the dynamic linker.
m:CORE_ADDR:skip_solib_resolver:CORE_ADDR pc:pc::generic_skip_solib_resolver::0

View File

@ -140,13 +140,13 @@ show_debug_infrun (struct ui_file *file, int from_tty,
past the dynamic linker, as if we were using "next" to step over a
function call.
IN_SOLIB_DYNSYM_RESOLVE_CODE says whether we're in the dynamic
in_solib_dynsym_resolve_code() says whether we're in the dynamic
linker code or not. Normally, this means we single-step. However,
if SKIP_SOLIB_RESOLVER then returns non-zero, then its value is an
address where we can place a step-resume breakpoint to get past the
linker's symbol resolution function.
IN_SOLIB_DYNSYM_RESOLVE_CODE can generally be implemented in a
in_solib_dynsym_resolve_code() can generally be implemented in a
pretty portable way, by comparing the PC against the address ranges
of the dynamic linker's sections.
@ -3014,12 +3014,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (!gdbarch_get_longjmp_target)\n");
until we exit the run time loader code and reach the callee's
address. */
if (step_over_calls == STEP_OVER_UNDEBUGGABLE
#ifdef IN_SOLIB_DYNSYM_RESOLVE_CODE
&& IN_SOLIB_DYNSYM_RESOLVE_CODE (stop_pc)
#else
&& in_solib_dynsym_resolve_code (stop_pc)
#endif
)
&& in_solib_dynsym_resolve_code (stop_pc))
{
CORE_ADDR pc_after_resolver =
gdbarch_skip_solib_resolver (current_gdbarch, stop_pc);
@ -3112,13 +3107,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (!gdbarch_get_longjmp_target)\n");
if (real_stop_pc != 0)
ecs->stop_func_start = real_stop_pc;
if (
#ifdef IN_SOLIB_DYNSYM_RESOLVE_CODE
IN_SOLIB_DYNSYM_RESOLVE_CODE (ecs->stop_func_start)
#else
in_solib_dynsym_resolve_code (ecs->stop_func_start)
#endif
)
if (in_solib_dynsym_resolve_code (ecs->stop_func_start))
{
struct symtab_and_line sr_sal;
init_sal (&sr_sal);

View File

@ -606,7 +606,7 @@ osf_in_dynsym_resolve_code (CORE_ADDR pc)
for the user: When stepping inside a subprogram located in a shared
library, gdb might stop inside the dynamic loader code instead of
inside the subprogram itself. See the explanations in infrun.c about
the IN_SOLIB_DYNSYM_RESOLVE_CODE macro for more details. */
the in_solib_dynsym_resolve_code() function for more details. */
return 0;
}