aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/ppc-linux-nat.c11
2 files changed, 8 insertions, 9 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ea26632..25f6565 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2001-11-19 Elena Zannoni <ezannoni@redhat.com>
+ * ppc-linux-nat.c (COPY_REG): Use regcache_collect instead of
+ accessing registers[].
+ (fill_fpregset): Ditto.
+
+2001-11-19 Elena Zannoni <ezannoni@redhat.com>
+
* infptrace.c (fetch_register): Dynamically allocate buffer for
register.
(store_register): Use regcache_collect, instead of accessing the
diff --git a/gdb/ppc-linux-nat.c b/gdb/ppc-linux-nat.c
index bcb438c..13eb839 100644
--- a/gdb/ppc-linux-nat.c
+++ b/gdb/ppc-linux-nat.c
@@ -80,8 +80,7 @@ fill_gregset (gdb_gregset_t *gregsetp, int regno)
#define COPY_REG(_idx_,_regi_) \
if ((regno == -1) || regno == _regi_) \
- memcpy (regp + _idx_, &registers[REGISTER_BYTE (_regi_)], \
- REGISTER_RAW_SIZE (_regi_))
+ regcache_collect (_regi_, regp + _idx_)
for (regi = 0; regi < 32; regi++)
{
@@ -113,16 +112,10 @@ void
fill_fpregset (gdb_fpregset_t *fpregsetp, int regno)
{
int regi;
- char *to;
- char *from;
for (regi = 0; regi < 32; regi++)
{
if ((regno == -1) || (regno == FP0_REGNUM + regi))
- {
- from = (char *) &registers[REGISTER_BYTE (FP0_REGNUM + regi)];
- to = (char *) (*fpregsetp + regi);
- memcpy (to, from, REGISTER_RAW_SIZE (FP0_REGNUM + regi));
- }
+ regcache_collect (FP0_REGNUM + regi, (char *) (*fpregsetp + regi));
}
}