| Index: gdb/nacl-tdep.c
|
| diff --git a/gdb/nacl-tdep.c b/gdb/nacl-tdep.c
|
| index 9a408ddbfcb534f2b1a730b980c86be6daf521b3..f33af438dcbbac6701553a6b09c5d2754c47e16a 100644
|
| --- a/gdb/nacl-tdep.c
|
| +++ b/gdb/nacl-tdep.c
|
| @@ -162,6 +162,17 @@ amd64_nacl_software_single_step (struct frame_info *frame)
|
| return 0;
|
| }
|
|
|
| +static struct frame_id
|
| +amd64_nacl_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame)
|
| +{
|
| + CORE_ADDR fp;
|
| +
|
| + fp = get_frame_register_unsigned (this_frame, AMD64_RBP_REGNUM) + 16;
|
| + fp = amd64_nacl_addr_bits_remove(gdbarch, fp);
|
| +
|
| + return frame_id_build (fp, get_frame_pc (this_frame));
|
| +}
|
| +
|
| static void
|
| amd64_nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
| {
|
| @@ -199,6 +210,8 @@ amd64_nacl_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
| set_gdbarch_adjust_breakpoint_address (gdbarch,
|
| amd64_nacl_adjust_breakpoint_address);
|
| set_gdbarch_software_single_step (gdbarch, amd64_nacl_software_single_step);
|
| + /* Recognizing dummy frames. */
|
| + set_gdbarch_dummy_id(gdbarch, amd64_nacl_dummy_id);
|
| }
|
|
|
| /* Provide a prototype to silence -Wmissing-prototypes. */
|
|
|