+2003-04-12 Andrew Cagney <cagney@redhat.com>
+
+ * gdbthread.h (save_infrun_state): Delete parameter
+ "prev_func_start".
+ (struct thread_info): Delete field "prev_func_start".
+ (load_infrun_state): Ditto.
+ * thread.c (load_infrun_state, save_infrun_state): Update.
+ * infrun.c (prev_func_start): Delete variable.
+ (context_switch, init_wait_for_inferior): Update.
+ (stop_stepping, keep_going): Update.
+
2003-04-12 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh: Add missing opaque declarations.
int num; /* Convenient handle (GDB thread id) */
/* State from wait_for_inferior */
CORE_ADDR prev_pc;
- CORE_ADDR prev_func_start;
char *prev_func_name;
struct breakpoint *step_resume_breakpoint;
struct breakpoint *through_sigtramp_breakpoint;
/* infrun context switch: save the debugger state for the given thread. */
extern void save_infrun_state (ptid_t ptid,
CORE_ADDR prev_pc,
- CORE_ADDR prev_func_start,
char *prev_func_name,
int trap_expected,
struct breakpoint *step_resume_breakpoint,
for the given thread. */
extern void load_infrun_state (ptid_t ptid,
CORE_ADDR *prev_pc,
- CORE_ADDR *prev_func_start,
char **prev_func_name,
int *trap_expected,
struct breakpoint **step_resume_breakpoint,
to be preserved over calls to it and cleared when the inferior
is started. */
static CORE_ADDR prev_pc;
-static CORE_ADDR prev_func_start;
static char *prev_func_name;
\f
{
/* These are meaningless until the first time through wait_for_inferior. */
prev_pc = 0;
- prev_func_start = 0;
prev_func_name = NULL;
#ifdef HP_OS_BUG
if (in_thread_list (inferior_ptid) && in_thread_list (ecs->ptid))
{ /* Perform infrun state context switch: */
/* Save infrun state for the old thread. */
- save_infrun_state (inferior_ptid, prev_pc,
- prev_func_start, prev_func_name,
+ save_infrun_state (inferior_ptid, prev_pc, prev_func_name,
trap_expected, step_resume_breakpoint,
through_sigtramp_breakpoint, step_range_start,
step_range_end, &step_frame_id,
ecs->current_line, ecs->current_symtab, step_sp);
/* Load infrun state for the new thread. */
- load_infrun_state (ecs->ptid, &prev_pc,
- &prev_func_start, &prev_func_name,
+ load_infrun_state (ecs->ptid, &prev_pc, &prev_func_name,
&trap_expected, &step_resume_breakpoint,
&through_sigtramp_breakpoint, &step_range_start,
&step_range_end, &step_frame_id,
time, just like we did above if we didn't break out of the
loop. */
prev_pc = read_pc ();
- prev_func_start = ecs->stop_func_start;
prev_func_name = ecs->stop_func_name;
}
{
/* Save the pc before execution, to compare with pc after stop. */
prev_pc = read_pc (); /* Might have been DECR_AFTER_BREAK */
- prev_func_start = ecs->stop_func_start; /* Ok, since if DECR_PC_AFTER
- BREAK is defined, the
- original pc would not have
- been at the start of a
- function. */
prev_func_name = ecs->stop_func_name;
if (ecs->update_step_sp)
void
load_infrun_state (ptid_t ptid,
CORE_ADDR *prev_pc,
- CORE_ADDR *prev_func_start,
char **prev_func_name,
int *trap_expected,
struct breakpoint **step_resume_breakpoint,
return;
*prev_pc = tp->prev_pc;
- *prev_func_start = tp->prev_func_start;
*prev_func_name = tp->prev_func_name;
*trap_expected = tp->trap_expected;
*step_resume_breakpoint = tp->step_resume_breakpoint;
void
save_infrun_state (ptid_t ptid,
CORE_ADDR prev_pc,
- CORE_ADDR prev_func_start,
char *prev_func_name,
int trap_expected,
struct breakpoint *step_resume_breakpoint,
return;
tp->prev_pc = prev_pc;
- tp->prev_func_start = prev_func_start;
tp->prev_func_name = prev_func_name;
tp->trap_expected = trap_expected;
tp->step_resume_breakpoint = step_resume_breakpoint;