summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/linux-unwind.h
diff options
context:
space:
mode:
authoramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-15 11:43:31 +0000
committeramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-15 11:43:31 +0000
commitd505289213f3b4377d5c13fc72850ab4e3bd3074 (patch)
tree84ba91be1ea05e222667e9d6da0cfab9acfe6f4c /gcc/config/rs6000/linux-unwind.h
parentbef27a4e7a1a1db351366136ecd30e51f35638f6 (diff)
downloadgcc-d505289213f3b4377d5c13fc72850ab4e3bd3074.tar.gz
* config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to
include ccr. (ppc_fallback_frame_state): Save location of CR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87543 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/linux-unwind.h')
-rw-r--r--gcc/config/rs6000/linux-unwind.h6
1 files changed, 6 insertions, 0 deletions
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;