diff options
author | Andrew Cagney <cagney@redhat.com> | 2000-02-29 08:16:40 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2000-02-29 08:16:40 +0000 |
commit | 3fd02d9b7afce9bb2f7f6d2fd123c5de2aaf2e03 (patch) | |
tree | 09476765a2ba10caf6ea8d9243e502fba5aeb13b /gdb/i386-tdep.c | |
parent | 73987fbdfd2650cd575d1d84caefe057797fcc51 (diff) | |
download | gdb-3fd02d9b7afce9bb2f7f6d2fd123c5de2aaf2e03.tar.gz |
From Eli. Bring go32 target up-to-date with recent GDB i386 changes.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r-- | gdb/i386-tdep.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index 3e913fbf387..4df478ebf43 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -702,9 +702,12 @@ i386_extract_return_value (type, regbuf, valbuf) char regbuf[REGISTER_BYTES]; char *valbuf; { - /* On AIX and i386 GNU/Linux, floating point values are returned in - floating point registers. */ -#if defined(I386_AIX_TARGET) || defined(I386_GNULINUX_TARGET) + /* On AIX, i386 GNU/Linux and DJGPP, floating point values are + returned in floating point registers. */ + /* FIXME: cagney/2000-02-29: This function needs to be rewritten + using multi-arch. Please don't keep adding to this #ifdef + spaghetti. */ +#if defined(I386_AIX_TARGET) || defined(I386_GNULINUX_TARGET) || defined(I386_DJGPP_TARGET) if (TYPE_CODE_FLT == TYPE_CODE (type)) { double d; @@ -720,7 +723,7 @@ i386_extract_return_value (type, regbuf, valbuf) store_floating (valbuf, TYPE_LENGTH (type), d); } else -#endif /* I386_AIX_TARGET || I386_GNULINUX_TARGET*/ +#endif /* I386_AIX_TARGET || I386_GNULINUX_TARGET || I386_DJGPP_TARGET */ { #if defined(LOW_RETURN_REGNUM) int len = TYPE_LENGTH (type); |