aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/i387-tdep.c22
-rw-r--r--gdb/i387-tdep.h10
3 files changed, 34 insertions, 7 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1887597..e999d4e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2004-02-28 Mark Kettenis <kettenis@gnu.org>
+
+ * i387-tdep.h: Update copyright year.
+ (i387_collect_fxsave): New prototype.
+ * i387-tdep.c: Update copyright year.
+ (i387_collect_fxsave): New function containing most of the code
+ from i387_fill_fxsave.
+ (i387_fill_fxsave): Call i387_collect_fxsave.
+
2004-02-28 Andrew Cagney <cagney@redhat.com>
* amd64-linux-nat.c (ps_get_thread_area): When architecture is
diff --git a/gdb/i387-tdep.c b/gdb/i387-tdep.c
index 1552565..21386fb 100644
--- a/gdb/i387-tdep.c
+++ b/gdb/i387-tdep.c
@@ -1,7 +1,7 @@
/* Intel 387 floating point stuff.
Copyright 1988, 1989, 1991, 1992, 1993, 1994, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GDB.
@@ -613,14 +613,13 @@ i387_supply_fxsave (struct regcache *regcache, int regnum, const void *fxsave)
}
/* Fill register REGNUM (if it is a floating-point or SSE register) in
- *FXSAVE 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 *FXSAVE. */
+ *FXSAVE 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 *FXSAVE. */
void
-i387_fill_fxsave (void *fxsave, int regnum)
+i387_collect_fxsave (const struct regcache *regcache, int regnum, void *fxsave)
{
- struct regcache *regcache = current_regcache;
struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
char *regs = fxsave;
int i;
@@ -686,6 +685,17 @@ i387_fill_fxsave (void *fxsave, int regnum)
#undef I387_NUM_XMM_REGS
}
+/* Fill register REGNUM (if it is a floating-point or SSE register) in
+ *FXSAVE 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 *FXSAVE. */
+
+void
+i387_fill_fxsave (void *fxsave, int regnum)
+{
+ i387_collect_fxsave (current_regcache, regnum, fxsave);
+}
+
/* Recreate the FTW (tag word) valid bits from the 80-bit FP data in
*RAW. */
diff --git a/gdb/i387-tdep.h b/gdb/i387-tdep.h
index fa94a48..978fdf99 100644
--- a/gdb/i387-tdep.h
+++ b/gdb/i387-tdep.h
@@ -1,6 +1,6 @@
/* Target-dependent code for the i387.
- Copyright 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GDB.
@@ -96,6 +96,14 @@ extern void i387_supply_fxsave (struct regcache *regcache, int regnum,
const void *fxsave);
/* Fill register REGNUM (if it is a floating-point or SSE register) in
+ *FXSAVE 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 *FXSAVE. */
+
+extern void i387_collect_fxsave (const struct regcache *regcache, int regnum,
+ void *fxsave);
+
+/* Fill register REGNUM (if it is a floating-point or SSE register) in
*FXSAVE 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 *FXSAVE. */