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> 2008-07-21 Tom Tromey <tromey@redhat.com>
* symfile.c (reread_symbols): Don't pass argument to observer. * 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 You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
#undef IN_SOLIB_DYNSYM_RESOLVE_CODE
#define TARGET_HAS_HARDWARE_WATCHPOINTS #define TARGET_HAS_HARDWARE_WATCHPOINTS
/* TARGET_CAN_USE_HARDWARE_WATCHPOINT is now defined to go through /* 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> 2008-07-21 Tom Tromey <tromey@redhat.com>
* observer.texi (GDB Observers): Remove obsolete comment. * 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 Define this function to return nonzero if the program is stopped in the
trampoline that returns from a shared library. trampoline that returns from a shared library.
@item IN_SOLIB_DYNSYM_RESOLVE_CODE (@var{pc}) @item target_so_ops.in_dynsym_resolve_code (@var{pc})
@findex IN_SOLIB_DYNSYM_RESOLVE_CODE @findex in_dynsym_resolve_code
Define this to return nonzero if the program is stopped in the Define this to return nonzero if the program is stopped in the
dynamic linker. dynamic linker.

View File

@ -2150,7 +2150,7 @@ gdbarch_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR ip)
void void
set_gdbarch_skip_main_prologue (struct gdbarch *gdbarch, 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; 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 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); 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 evaluates non-zero, this is the address where the debugger will place
a step-resume breakpoint to get us past the dynamic linker. */ 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 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 # evaluates non-zero, this is the address where the debugger will place
# a step-resume breakpoint to get us past the dynamic linker. # 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 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 past the dynamic linker, as if we were using "next" to step over a
function call. 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, linker code or not. Normally, this means we single-step. However,
if SKIP_SOLIB_RESOLVER then returns non-zero, then its value is an 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 address where we can place a step-resume breakpoint to get past the
linker's symbol resolution function. 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 pretty portable way, by comparing the PC against the address ranges
of the dynamic linker's sections. 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 until we exit the run time loader code and reach the callee's
address. */ address. */
if (step_over_calls == STEP_OVER_UNDEBUGGABLE if (step_over_calls == STEP_OVER_UNDEBUGGABLE
#ifdef IN_SOLIB_DYNSYM_RESOLVE_CODE && in_solib_dynsym_resolve_code (stop_pc))
&& IN_SOLIB_DYNSYM_RESOLVE_CODE (stop_pc)
#else
&& in_solib_dynsym_resolve_code (stop_pc)
#endif
)
{ {
CORE_ADDR pc_after_resolver = CORE_ADDR pc_after_resolver =
gdbarch_skip_solib_resolver (current_gdbarch, stop_pc); 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) if (real_stop_pc != 0)
ecs->stop_func_start = real_stop_pc; ecs->stop_func_start = real_stop_pc;
if ( if (in_solib_dynsym_resolve_code (ecs->stop_func_start))
#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
)
{ {
struct symtab_and_line sr_sal; struct symtab_and_line sr_sal;
init_sal (&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 for the user: When stepping inside a subprogram located in a shared
library, gdb might stop inside the dynamic loader code instead of library, gdb might stop inside the dynamic loader code instead of
inside the subprogram itself. See the explanations in infrun.c about 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; return 0;
} }