forked from Imagelibrary/binutils-gdb
gdb/
PR 14119 * frame.c (skip_inlined_frames): Skip also TAILCALL_FRAME frames. (frame_pop): Drop also TAILCALL_FRAME frames. * infcmd.c (finish_command): Ignore also TAILCALL_FRAME frames. gdb/testsuite/ PR 14119 * gdb.arch/amd64-tailcall-ret.S: New file. * gdb.arch/amd64-tailcall-ret.c: New file. * gdb.arch/amd64-tailcall-ret.exp: New file. * gdb.reverse/amd64-tailcall-reverse.S: New file. * gdb.reverse/amd64-tailcall-reverse.c: New file. * gdb.reverse/amd64-tailcall-reverse.exp: New file.
This commit is contained in:
@@ -1777,6 +1777,11 @@ finish_command (char *arg, int from_tty)
|
||||
return;
|
||||
}
|
||||
|
||||
/* Ignore TAILCALL_FRAME type frames, they were executed already before
|
||||
entering THISFRAME. */
|
||||
while (get_frame_type (frame) == TAILCALL_FRAME)
|
||||
frame = get_prev_frame (frame);
|
||||
|
||||
/* Find the function we will return from. */
|
||||
|
||||
function = find_pc_function (get_frame_pc (get_selected_frame (NULL)));
|
||||
|
||||
Reference in New Issue
Block a user