* blockframe.c (get_pc_function_start): Rewrite to avoid
[deliverable/binutils-gdb.git] / gdb / doublest.h
index ccd92336275250abf622333873adb231a4b59f5c..668efa71cf3a55513e62e171d620eda64cbe86f8 100644 (file)
@@ -1,7 +1,8 @@
 /* Floating point definitions for GDB.
-   Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
-   1997, 1998, 1999, 2000, 2001
-   Free Software Foundation, Inc.
+
+   Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
+   1996, 1997, 1998, 1999, 2000, 2001, 2003 Free Software Foundation,
+   Inc.
 
    This file is part of GDB.
 
@@ -23,6 +24,8 @@
 #ifndef DOUBLEST_H
 #define DOUBLEST_H
 
+struct type;
+
 /* Setup definitions for host and target floating point formats.  We need to
    consider the format for `float', `double', and `long double' for both target
    and host.  We need to do this so that we know what kind of conversions need
@@ -35,8 +38,6 @@
 
 #include "floatformat.h"       /* For struct floatformat */
 
-extern const struct floatformat floatformat_unknown;
-
 /* Use `long double' if the host compiler supports it.  (Note that this is not
    necessarily any longer than `double'.  On SunOS/gcc, it's the same as
    double.)  This is necessary because GDB internally converts all floating
@@ -61,12 +62,22 @@ extern int floatformat_is_negative (const struct floatformat *, char *);
 extern int floatformat_is_nan (const struct floatformat *, char *);
 extern char *floatformat_mantissa (const struct floatformat *, char *);
 
-/* These two functions are deprecated in favour of
-   extract_typed_floating and store_typed_floating.  See comments in
-   'doublest.c' for details.  */
+/* These functions have been replaced by extract_typed_floating and
+   store_typed_floating.
+
+   Most calls are passing in TYPE_LENGTH (TYPE) so can be changed to
+   just pass the TYPE.  The remainder pass in the length of a
+   register, those calls should instead pass in the floating point
+   type that corresponds to that length.  */
+
+extern DOUBLEST deprecated_extract_floating (const void *addr, int len);
+extern void deprecated_store_floating (void *addr, int len, DOUBLEST val);
+
+/* Given TYPE, return its floatformat.  TYPE_FLOATFORMAT() may return
+   NULL.  type_floatformat() detects that and returns a floatformat
+   based on the type size when FLOATFORMAT is NULL.  */
 
-extern DOUBLEST extract_floating (const void *addr, int len);
-extern void store_floating (void *addr, int len, DOUBLEST val);
+const struct floatformat *floatformat_from_type (const struct type *type);
 
 extern DOUBLEST extract_typed_floating (const void *addr,
                                        const struct type *type);
This page took 0.027171 seconds and 4 git commands to generate.