summaryrefslogtreecommitdiff
path: root/gdb/ia64-linux-tdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/ia64-linux-tdep.c')
-rw-r--r--gdb/ia64-linux-tdep.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gdb/ia64-linux-tdep.c b/gdb/ia64-linux-tdep.c
index 3a86c96f744..838bc0bf0d2 100644
--- a/gdb/ia64-linux-tdep.c
+++ b/gdb/ia64-linux-tdep.c
@@ -50,14 +50,16 @@ ia64_linux_pc_in_sigtramp (CORE_ADDR pc)
sigcontext structure. */
static CORE_ADDR
-ia64_linux_sigcontext_register_address (CORE_ADDR sp, int regno)
+ia64_linux_sigcontext_register_address (struct gdbarch *gdbarch,
+ CORE_ADDR sp, int regno)
{
+ enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
char buf[8];
CORE_ADDR sigcontext_addr = 0;
/* The address of the sigcontext area is found at offset 16 in the sigframe. */
read_memory (sp + 16, buf, 8);
- sigcontext_addr = extract_unsigned_integer (buf, 8);
+ sigcontext_addr = extract_unsigned_integer (buf, 8, byte_order);
if (IA64_GR0_REGNUM <= regno && regno <= IA64_GR31_REGNUM)
return sigcontext_addr + 200 + 8 * (regno - IA64_GR0_REGNUM);