diff options
author | Andrew Cagney <cagney@redhat.com> | 2002-10-02 21:18:57 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2002-10-02 21:18:57 +0000 |
commit | d47dbcbc721880389abb9b288eacca9e7ea481a9 (patch) | |
tree | 9a6948f14b19dcdcbd9e345013cd823c156f3265 /gdb | |
parent | dd367e1c05800d1d91788e835511974ae59b7ba5 (diff) | |
download | gdb-d47dbcbc721880389abb9b288eacca9e7ea481a9.tar.gz |
2002-10-02 Andrew Cagney <ac131313@redhat.com>
* rs6000-tdep.c (skip_prologue): Bias alloca_reg by ppc_gp0_regnum.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/rs6000-tdep.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 041f2e6f970..f210799b4bb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2002-10-02 Andrew Cagney <ac131313@redhat.com> + + * rs6000-tdep.c (skip_prologue): Bias alloca_reg by ppc_gp0_regnum. + 2002-10-02 Marko Mlinar <markom@opencores.org> * MAINTAINERS: Add myself to the Write After Approval list. diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index 57d3500a842..152eb0e3a0c 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -465,6 +465,7 @@ skip_prologue (CORE_ADDR pc, CORE_ADDR lim_pc, struct rs6000_framedata *fdata) int prev_insn_was_prologue_insn = 1; int num_skip_non_prologue_insns = 0; const struct bfd_arch_info *arch_info = gdbarch_bfd_arch_info (current_gdbarch); + struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); /* Attempt to find the end of the prologue when no limit is specified. Note that refine_prologue_limit() has been written so that it may @@ -694,7 +695,7 @@ skip_prologue (CORE_ADDR pc, CORE_ADDR lim_pc, struct rs6000_framedata *fdata) { /* mr r31, r1 */ fdata->frameless = 0; framep = 1; - fdata->alloca_reg = 31; + fdata->alloca_reg = (tdep->ppc_gp0_regnum + 31); continue; /* Another way to set up the frame pointer. */ @@ -703,7 +704,8 @@ skip_prologue (CORE_ADDR pc, CORE_ADDR lim_pc, struct rs6000_framedata *fdata) { /* addi rX, r1, 0x0 */ fdata->frameless = 0; framep = 1; - fdata->alloca_reg = (op & ~0x38010000) >> 21; + fdata->alloca_reg = (tdep->ppc_gp0_regnum + + ((op & ~0x38010000) >> 21)); continue; } /* AltiVec related instructions. */ |