projects
/
platform
/
upstream
/
binutils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Automatic date update in version.in
[platform/upstream/binutils.git]
/
gdb
/
alphaobsd-tdep.c
diff --git
a/gdb/alphaobsd-tdep.c
b/gdb/alphaobsd-tdep.c
index
8a1da45
..
fcddd3a
100644
(file)
--- a/
gdb/alphaobsd-tdep.c
+++ b/
gdb/alphaobsd-tdep.c
@@
-1,6
+1,6
@@
/* Target-dependent code for OpenBSD/alpha.
/* Target-dependent code for OpenBSD/alpha.
- Copyright (C) 2006
, 2007, 2008
Free Software Foundation, Inc.
+ Copyright (C) 2006
-2014
Free Software Foundation, Inc.
This file is part of GDB.
This file is part of GDB.
@@
-40,13
+40,14
@@
static const int alphaobsd_page_size = 8192;
static LONGEST
static const int alphaobsd_page_size = 8192;
static LONGEST
-alphaobsd_sigtramp_offset (CORE_ADDR pc)
+alphaobsd_sigtramp_offset (
struct gdbarch *gdbarch,
CORE_ADDR pc)
{
return (pc & (alphaobsd_page_size - 1));
}
static int
{
return (pc & (alphaobsd_page_size - 1));
}
static int
-alphaobsd_pc_in_sigtramp (CORE_ADDR pc, char *name)
+alphaobsd_pc_in_sigtramp (struct gdbarch *gdbarch,
+ CORE_ADDR pc, const char *name)
{
CORE_ADDR start_pc = (pc & ~(alphaobsd_page_size - 1));
unsigned insn;
{
CORE_ADDR start_pc = (pc & ~(alphaobsd_page_size - 1));
unsigned insn;
@@
-55,12
+56,12
@@
alphaobsd_pc_in_sigtramp (CORE_ADDR pc, char *name)
return 0;
/* Check for "". */
return 0;
/* Check for "". */
- insn = alpha_read_insn (start_pc + 5 * ALPHA_INSN_SIZE);
+ insn = alpha_read_insn (
gdbarch,
start_pc + 5 * ALPHA_INSN_SIZE);
if (insn != 0x201f0067)
return 0;
/* Check for "". */
if (insn != 0x201f0067)
return 0;
/* Check for "". */
- insn = alpha_read_insn (start_pc + 6 * ALPHA_INSN_SIZE);
+ insn = alpha_read_insn (
gdbarch,
start_pc + 6 * ALPHA_INSN_SIZE);
if (insn != 0x00000083)
return 0;
if (insn != 0x00000083)
return 0;
@@
-68,26
+69,27
@@
alphaobsd_pc_in_sigtramp (CORE_ADDR pc, char *name)
}
static CORE_ADDR
}
static CORE_ADDR
-alphaobsd_sigcontext_addr (struct frame_info *
next
_frame)
+alphaobsd_sigcontext_addr (struct frame_info *
this
_frame)
{
{
- CORE_ADDR pc = frame_pc_unwind (next_frame);
+ struct gdbarch *gdbarch = get_frame_arch (this_frame);
+ CORE_ADDR pc = get_frame_pc (this_frame);
- if (alphaobsd_sigtramp_offset (pc) < 3 * ALPHA_INSN_SIZE)
+ if (alphaobsd_sigtramp_offset (
gdbarch,
pc) < 3 * ALPHA_INSN_SIZE)
{
/* On entry, a pointer the `struct sigcontext' is passed in %a2. */
{
/* On entry, a pointer the `struct sigcontext' is passed in %a2. */
- return
frame_unwind_register_unsigned (next
_frame, ALPHA_A0_REGNUM + 2);
+ return
get_frame_register_unsigned (this
_frame, ALPHA_A0_REGNUM + 2);
}
}
- else if (alphaobsd_sigtramp_offset (pc) < 4 * ALPHA_INSN_SIZE)
+ else if (alphaobsd_sigtramp_offset (
gdbarch,
pc) < 4 * ALPHA_INSN_SIZE)
{
/* It is stored on the stack Before calling the signal handler. */
CORE_ADDR sp;
{
/* It is stored on the stack Before calling the signal handler. */
CORE_ADDR sp;
- sp =
frame_unwind_register_unsigned (next
_frame, ALPHA_SP_REGNUM);
- return get_frame_memory_unsigned (
next
_frame, sp, 8);
+ sp =
get_frame_register_unsigned (this
_frame, ALPHA_SP_REGNUM);
+ return get_frame_memory_unsigned (
this
_frame, sp, 8);
}
else
{
/* It is reloaded into %a0 for the sigreturn(2) call. */
}
else
{
/* It is reloaded into %a0 for the sigreturn(2) call. */
- return
frame_unwind_register_unsigned (next
_frame, ALPHA_A0_REGNUM);
+ return
get_frame_register_unsigned (this
_frame, ALPHA_A0_REGNUM);
}
}
\f
}
}
\f
@@
-119,8
+121,8
@@
alphaobsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
tdep->jb_pc = 2;
tdep->jb_elt_size = 8;
tdep->jb_pc = 2;
tdep->jb_elt_size = 8;
- set_gdbarch_
regset_from_core_section
- (gdbarch, alphanbsd_
regset_from_core_section
);
+ set_gdbarch_
iterate_over_regset_sections
+ (gdbarch, alphanbsd_
iterate_over_regset_sections
);
}
\f
}
\f