Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Unified Diff: gdb/hppabsd-tdep.c

Issue 124383005: GDB 7.6.50 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@upstream
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gdb/hppabsd-tdep.h ('k') | gdb/hppanbsd-nat.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gdb/hppabsd-tdep.c
diff --git a/gdb/hppabsd-tdep.c b/gdb/hppabsd-tdep.c
index 5605abbc4a12c17d6e7f2399e20a9d8822306a97..9b2a219ce929c56f955e4eea351c3e6b29c0c44c 100644
--- a/gdb/hppabsd-tdep.c
+++ b/gdb/hppabsd-tdep.c
@@ -1,6 +1,6 @@
/* Target-dependent code for HP PA-RISC BSD's.
- Copyright (C) 2004-2012 Free Software Foundation, Inc.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of GDB.
@@ -26,6 +26,7 @@
#include "hppa-tdep.h"
#include "hppabsd-tdep.h"
+#include "dwarf2-frame.h"
#include "solib-svr4.h"
static CORE_ADDR
@@ -47,7 +48,7 @@ hppabsd_find_global_pointer (struct gdbarch *gdbarch, struct value *function)
/* If the address is in the .plt section, then the real function
hasn't yet been fixed up by the linker so we cannot determine the
Global Pointer for that function. */
- if (in_plt_section (faddr, NULL))
+ if (in_plt_section (faddr))
return 0;
faddr_sec = find_pc_section (faddr);
@@ -104,6 +105,17 @@ hppabsd_find_global_pointer (struct gdbarch *gdbarch, struct value *function)
}
+static void
+hppabsd_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum,
+ struct dwarf2_frame_state_reg *reg,
+ struct frame_info *this_frame)
+{
+ if (regnum == HPPA_PCOQ_HEAD_REGNUM)
+ reg->how = DWARF2_FRAME_REG_RA;
+ else if (regnum == HPPA_SP_REGNUM)
+ reg->how = DWARF2_FRAME_REG_CFA;
+}
+
void
hppabsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
{
@@ -122,4 +134,8 @@ hppabsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
/* OpenBSD and NetBSD use SVR4-style shared libraries. */
set_solib_svr4_fetch_link_map_offsets
(gdbarch, svr4_ilp32_fetch_link_map_offsets);
+
+ /* Hook in the DWARF CFI frame unwinder. */
+ dwarf2_frame_set_init_reg (gdbarch, hppabsd_dwarf2_frame_init_reg);
+ dwarf2_append_unwinders (gdbarch);
}
« no previous file with comments | « gdb/hppabsd-tdep.h ('k') | gdb/hppanbsd-nat.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698