X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fsparc64-linux-tdep.c;h=965904ef82ea0b36fcb744b4e129739237d4c195;hb=e17a4113357102b55cfa5b80557d590a46a43300;hp=2474575d0eacd1cb0dc6ba891e0a1ea720a6430c;hpb=5af949e350b923403600c1da34774b49a77c925c;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/sparc64-linux-tdep.c b/gdb/sparc64-linux-tdep.c index 2474575d0e..965904ef82 100644 --- a/gdb/sparc64-linux-tdep.c +++ b/gdb/sparc64-linux-tdep.c @@ -109,6 +109,9 @@ sparc64_linux_step_trap (struct frame_info *frame, unsigned long insn) { if (insn == 0x91d0206d) { + struct gdbarch *gdbarch = get_frame_arch (frame); + enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); + ULONGEST sp = get_frame_register_unsigned (frame, SPARC_SP_REGNUM); if (sp & 1) sp += BIAS; @@ -122,7 +125,8 @@ sparc64_linux_step_trap (struct frame_info *frame, unsigned long insn) register save area. The saved PC sits at a 136 byte offset into there. */ - return read_memory_unsigned_integer (sp + 192 + 128 + 136, 8); + return read_memory_unsigned_integer (sp + 192 + 128 + 136, + 8, byte_order); } return 0;