From e7107962d11ad832fb44964bbc6bc7fbdd79b701 Mon Sep 17 00:00:00 2001 From: Fred Fish Date: Wed, 21 Feb 1996 03:38:45 +0000 Subject: [PATCH] * config/alpha/tm-alpha.h (COERCE_FLOAT_TO_DOUBLE): Define to 1. * 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 | 13 +++++++++++++ gdb/config/sparc/tm-sparc.h | 6 ++++++ 2 files changed, 19 insertions(+) diff --git a/gdb/config/mips/tm-mips.h b/gdb/config/mips/tm-mips.h index d8b2bd16b31..39c6623d7c9 100644 --- a/gdb/config/mips/tm-mips.h +++ b/gdb/config/mips/tm-mips.h @@ -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 diff --git a/gdb/config/sparc/tm-sparc.h b/gdb/config/sparc/tm-sparc.h index a106f0c7cc9..50810641c3a 100644 --- a/gdb/config/sparc/tm-sparc.h +++ b/gdb/config/sparc/tm-sparc.h @@ -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 -- 2.30.2