This is the mail archive of the
gdb-patches@sourceware.cygnus.com
mailing list for the GDB project.
[PATCH]: fix for floating point arg passing on x86-Solaris
- To: gdb-patches at sourceware dot cygnus dot com
- Subject: [PATCH]: fix for floating point arg passing on x86-Solaris
- From: msnyder at cygnus dot com (Michael Snyder)
- Date: Fri, 12 May 2000 15:06:54 -0700 (PDT)
This supercedes my earlier patch for float/double promotion.
This patch affects only x86 Solaris. Comment copied from one
of the half-dozen other files that define COERCE_FLOAT_TO_DOUBLE.
2000-05-12 Michael Snyder <msnyder@falafel.cygnus.com>
* config/i386/tm-i386sol2.h: Define COERCE_FLOAT_TO_DOUBLE.
Index: config/i386/tm-i386sol2.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/tm-i386sol2.h,v
retrieving revision 1.4
diff -p -r1.4 tm-i386sol2.h
*** tm-i386sol2.h 2000/04/13 18:10:17 1.4
--- tm-i386sol2.h 2000/05/12 22:05:52
***************
*** 24,29 ****
--- 24,37 ----
#define HAVE_I387_REGS
#include "i386/tm-i386v4.h"
+ /* 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(formal, actual) (1)
+
/* Signal handler frames under Solaris 2 are recognized by a return address
of 0xFFFFFFFF, the third parameter on the signal handler stack is
a pointer to an ucontext. */