diff options
author | Pedro Alves <pedro@codesourcery.com> | 2008-12-10 21:32:14 +0000 |
---|---|---|
committer | Pedro Alves <pedro@codesourcery.com> | 2008-12-10 21:32:14 +0000 |
commit | 56f6e3676173c9a41dc4ed227a8450550cec718c (patch) | |
tree | e66d3141567e6b117ffca210148e20d8dc93e4f6 | |
parent | 17ec07b78f28e400d2e839d732abc94a6cb3ae2f (diff) | |
download | gdb-56f6e3676173c9a41dc4ed227a8450550cec718c.tar.gz |
* infcmd.c (until_next_command, finish_backward): Use get_frame_pc
instead of read_pc.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/infcmd.c | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index cb3917f1547..67b6515fd55 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2008-12-10 Pedro Alves <pedro@codesourcery.com> + + * infcmd.c (until_next_command, finish_backward): Use get_frame_pc + instead of read_pc. + 2008-12-09 Tom Tromey <tromey@redhat.com> PR gdb/1815: diff --git a/gdb/infcmd.c b/gdb/infcmd.c index 9bfe2d496ca..d6772d3ce6f 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -1181,7 +1181,7 @@ until_next_command (int from_tty) than the current line (if in symbolic section) or pc (if not). */ - pc = read_pc (); + pc = get_frame_pc (frame); func = find_pc_function (pc); if (!func) @@ -1405,11 +1405,13 @@ finish_backward (struct symbol *function) struct thread_info *tp = inferior_thread (); struct breakpoint *breakpoint; struct cleanup *old_chain; + CORE_ADDR pc; CORE_ADDR func_addr; int back_up; - if (find_pc_partial_function (get_frame_pc (get_current_frame ()), - NULL, &func_addr, NULL) == 0) + pc = get_frame_pc (get_current_frame ()); + + if (find_pc_partial_function (pc, NULL, &func_addr, NULL) == 0) internal_error (__FILE__, __LINE__, _("Finish: couldn't find function.")); @@ -1426,7 +1428,7 @@ finish_backward (struct symbol *function) no way that a function up the stack can have a return address that's equal to its entry point. */ - if (sal.pc != read_pc ()) + if (sal.pc != pc) { /* Set breakpoint and continue. */ breakpoint = |