From 63b6c53fc1bc6b3c9a2fb7c1cf478241ad70c030 Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Mon, 15 Mar 2004 22:44:12 +0000 Subject: [PATCH] * i387-tdep.h (i387_collect_fsave): New prototype. * i387-tdep.c (i387_collect_fsave): New function containing most of the code from i387_fill_fsave. (i387_fill_fsave): Call i387_fill_fsave. --- gdb/ChangeLog | 7 +++++++ gdb/i387-tdep.c | 20 +++++++++++++++----- gdb/i387-tdep.h | 8 ++++++++ 3 files changed, 30 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e09535904b..aa8c62c624 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2004-03-15 Mark Kettenis + + * i387-tdep.h (i387_collect_fsave): New prototype. + * i387-tdep.c (i387_collect_fsave): New function containing most + of the code from i387_fill_fsave. + (i387_fill_fsave): Call i387_fill_fsave. + 2004-03-15 Mark Kettenis * i386-linux-tdep.c: Update copyright year. diff --git a/gdb/i387-tdep.c b/gdb/i387-tdep.c index 21386fb13f..4b212c4cd9 100644 --- a/gdb/i387-tdep.c +++ b/gdb/i387-tdep.c @@ -424,14 +424,13 @@ i387_supply_fsave (struct regcache *regcache, int regnum, const void *fsave) } /* Fill register REGNUM (if it is a floating-point register) in *FSAVE - with the value in GDB's register cache. If REGNUM is -1, do this - for all registers. This function doesn't touch any of the reserved - bits in *FSAVE. */ + with the value from REGCACHE. If REGNUM is -1, do this for all + registers. This function doesn't touch any of the reserved bits in + *FSAVE. */ void -i387_fill_fsave (void *fsave, int regnum) +i387_collect_fsave (const struct regcache *regcache, int regnum, void *fsave) { - struct regcache *regcache = current_regcache; struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); char *regs = fsave; int i; @@ -468,6 +467,17 @@ i387_fill_fsave (void *fsave, int regnum) } #undef I387_ST0_REGNUM } + +/* Fill register REGNUM (if it is a floating-point register) in *FSAVE + with the value in GDB's register cache. If REGNUM is -1, do this + for all registers. This function doesn't touch any of the reserved + bits in *FSAVE. */ + +void +i387_fill_fsave (void *fsave, int regnum) +{ + i387_collect_fsave (current_regcache, regnum, fsave); +} /* At fxsave_offset[REGNUM] you'll find the offset to the location in diff --git a/gdb/i387-tdep.h b/gdb/i387-tdep.h index 978fdf9937..38e6755989 100644 --- a/gdb/i387-tdep.h +++ b/gdb/i387-tdep.h @@ -81,6 +81,14 @@ extern void i387_value_to_register (struct frame_info *frame, int regnum, extern void i387_supply_fsave (struct regcache *regcache, int regnum, const void *fsave); +/* Fill register REGNUM (if it is a floating-point register) in *FSAVE + with the value from REGCACHE. If REGNUM is -1, do this for all + registers. This function doesn't touch any of the reserved bits in + *FSAVE. */ + +extern void i387_collect_fsave (const struct regcache *regcache, int regnum, + void *fsave); + /* Fill register REGNUM (if it is a floating-point register) in *FSAVE with the value in GDB's register cache. If REGNUM is -1, do this for all registers. This function doesn't touch any of the reserved