diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2008-08-26 17:40:25 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2008-08-26 17:40:25 +0000 |
commit | a45ae3ed061717e5a1538b1ac402cad93f81cb55 (patch) | |
tree | 27192166c6239fdae09810dd0b92f692fc566264 /gdb/infrun.c | |
parent | 879d1e6b4674bc8c09b64dafad9248fb782c8924 (diff) | |
download | gdb-a45ae3ed061717e5a1538b1ac402cad93f81cb55.zip gdb-a45ae3ed061717e5a1538b1ac402cad93f81cb55.tar.gz gdb-a45ae3ed061717e5a1538b1ac402cad93f81cb55.tar.bz2 |
* dummy-frame.h (dummy_frame_pop): Add prototype.
* dummy-frame.c: Include "observer.h".
(dummy_frame_push): Do not check for stale frames.
(dummy_frame_pop): New function.
(cleanup_dummy_frames): New function.
(_initialize_dummy_frame): Install it as inferior_created observer.
* frame.h (struct frame_id): Update comments.
(frame_id_inner): Remove prototype.
* frame.c (frame_id_inner): Make static. Add comments.
(frame_find_by_id): Update frame_id_inner safety net check to avoid
false positives for targets using non-contiguous stack ranges.
(get_prev_frame_1): Update frame_id_inner safety net check.
(frame_pop): Call dummy_frame_pop when popping a dummy frame.
* stack.c (return_command): Directly pop the selected frame.
* infrun.c (handle_inferior_event): Remove dead code.
* i386-tdep.c (i386_push_dummy_call): Update comment.
Diffstat (limited to 'gdb/infrun.c')
-rw-r--r-- | gdb/infrun.c | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/gdb/infrun.c b/gdb/infrun.c index d6c49ab..2d31219 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -3323,33 +3323,6 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (!gdbarch_get_longjmp_target)\n"); tss->current_line = stop_pc_sal.line; tss->current_symtab = stop_pc_sal.symtab; - /* In the case where we just stepped out of a function into the - middle of a line of the caller, continue stepping, but - step_frame_id must be modified to current frame */ -#if 0 - /* NOTE: cagney/2003-10-16: I think this frame ID inner test is too - generous. It will trigger on things like a step into a frameless - stackless leaf function. I think the logic should instead look - at the unwound frame ID has that should give a more robust - indication of what happened. */ - if (step - ID == current - ID) - still stepping in same function; - else if (step - ID == unwind (current - ID)) - stepped into a function; - else - stepped out of a function; - /* Of course this assumes that the frame ID unwind code is robust - and we're willing to introduce frame unwind logic into this - function. Fortunately, those days are nearly upon us. */ -#endif - { - struct frame_info *frame = get_current_frame (); - struct frame_id current_frame = get_frame_id (frame); - if (!(frame_id_inner (get_frame_arch (frame), current_frame, - step_frame_id))) - step_frame_id = current_frame; - } - if (debug_infrun) fprintf_unfiltered (gdb_stdlog, "infrun: keep going\n"); keep_going (ecs); |