From 43e7c6a4d49992d14aaf331c5df747dc8e245df8 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 15 Sep 2004 11:43:31 +0000 Subject: [PATCH] linux-unwind.h (struct gcc_pt_regs): Extend to include ccr. * config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to include ccr. (ppc_fallback_frame_state): Save location of CR. From-SVN: r87543 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/linux-unwind.h | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0696e50aa76..7cd349e9d93 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-09-15 Alan Modra + + * config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to + include ccr. + (ppc_fallback_frame_state): Save location of CR. + 2004-09-15 Jakub Jelinek * expr.c (string_constant): Handle also read-only variables diff --git a/gcc/config/rs6000/linux-unwind.h b/gcc/config/rs6000/linux-unwind.h index bb4f0cf90db..4212dfed9aa 100644 --- a/gcc/config/rs6000/linux-unwind.h +++ b/gcc/config/rs6000/linux-unwind.h @@ -32,6 +32,8 @@ struct gcc_pt_regs unsigned long orig_gpr3; unsigned long ctr; unsigned long link; + unsigned long xer; + unsigned long ccr; }; struct gcc_sigcontext @@ -174,6 +176,10 @@ ppc_fallback_frame_state (struct _Unwind_Context *context, = (long)&(sc->regs->gpr[i]) - new_cfa; } + fs->regs.reg[CR2_REGNO].how = REG_SAVED_OFFSET; + fs->regs.reg[CR2_REGNO].loc.offset + = (long)&(sc->regs->ccr) - new_cfa; + fs->regs.reg[LINK_REGISTER_REGNUM].how = REG_SAVED_OFFSET; fs->regs.reg[LINK_REGISTER_REGNUM].loc.offset = (long)&(sc->regs->link) - new_cfa; -- 2.30.2