* config/alpha/tm-alpha.h (COERCE_FLOAT_TO_DOUBLE): Define to 1.
authorFred Fish <fnf@specifix.com>
Wed, 21 Feb 1996 03:38:45 +0000 (03:38 +0000)
committerFred Fish <fnf@specifix.com>
Wed, 21 Feb 1996 03:38:45 +0000 (03:38 +0000)
* config/mips/tm-mips.h: Ditto.
* config/pa/tm-hppa.h: Ditto.
* config/rs6000/tm-rs6000.h: Ditto.
* config/sparc/tm-sparc.h: Ditto.

gdb/config/mips/tm-mips.h
gdb/config/sparc/tm-sparc.h

index d8b2bd16b31e621fe7cb2179ede00820f7df1ef0..39c6623d7c90f54ec826b1184d3a99d493b7eca3 100644 (file)
@@ -496,3 +496,16 @@ extern struct frame_info *setup_arbitrary_frame PARAMS ((int, CORE_ADDR *));
 /* Convert a ecoff register number to a gdb REGNUM */
 
 #define ECOFF_REG_TO_REGNUM(num) ((num) < 32 ? (num) : (num)+FP0_REGNUM-32)
+
+/* If the current gcc for for this target does not produce correct debugging
+   information for float parameters, both prototyped and unprototyped, then
+   define this macro.  This forces gdb to  always assume that floats are
+   passed as doubles and then converted in the callee.
+
+   For the mips chip, it appears that the debug info marks the parameters as
+   floats regardless of whether the function is prototyped, but the actual
+   values are passed as doubles for the non-prototyped case and floats for
+   the prototyped case.  Thus we choose to make the non-prototyped case work
+   and break the prototyped case.  (FIXME). */
+
+#define COERCE_FLOAT_TO_DOUBLE 1
index a106f0c7cc9c2922b5f58900fa4c1f8b19efda88..50810641c3adb53caa896bc4383aa9d28b352247 100644 (file)
@@ -634,3 +634,9 @@ extern int deferred_stores;
     target_store_registers (-2);
 #define        CLEAR_DEFERRED_STORES   \
   deferred_stores = 0;
+
+/* If the current gcc for for this target does not produce correct debugging
+   information for float parameters, both prototyped and unprototyped, then
+   define this macro.  This forces gdb to  always assume that floats are
+   passed as doubles and then converted in the callee. */
+#define COERCE_FLOAT_TO_DOUBLE 1