aboutsummaryrefslogtreecommitdiff
path: root/gdb/config
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2000-04-03 15:24:17 +0000
committerEli Zaretskii <eliz@gnu.org>2000-04-03 15:24:17 +0000
commit7f668b86584c56415f47883c75b75aa6638f5d88 (patch)
tree8d913749df3861a70413aa77f217ae9e0d91a638 /gdb/config
parentc0c9b0b8a6d7478572d0de081d916e2b44fbdb80 (diff)
downloadgdb-7f668b86584c56415f47883c75b75aa6638f5d88.zip
gdb-7f668b86584c56415f47883c75b75aa6638f5d88.tar.gz
gdb-7f668b86584c56415f47883c75b75aa6638f5d88.tar.bz2
* config/i386/xm-go32.h (HOST_LONG_DOUBLE_FORMAT): Define.
* config/i386/tm-go32.h (TARGET_LONG_DOUBLE_BIT): Remove definition (and use the common one in tm-i386.h). (REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Likewise. (I386_DJGPP_TARGET): Don't define, it's no longer required. (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Remove definition, i386-tdep.c defines it for all x86 targets. (LD_I387, HEX_LONG_DOUBLE_INPUT): Remove. * config/djgpp/fnchange.lst: Add i386-linux-tdep.c. * config/djgpp/djcheck.sh: Edit the copyright year out of the test results. Fix editing of `main' arguments for non-GNU Sed.
Diffstat (limited to 'gdb/config')
-rw-r--r--gdb/config/djgpp/djcheck.sh5
-rw-r--r--gdb/config/djgpp/fnchange.lst1
-rw-r--r--gdb/config/i386/tm-go32.h42
-rw-r--r--gdb/config/i386/xm-go32.h2
4 files changed, 6 insertions, 44 deletions
diff --git a/gdb/config/djgpp/djcheck.sh b/gdb/config/djgpp/djcheck.sh
index 958b1b4..36f2e01 100644
--- a/gdb/config/djgpp/djcheck.sh
+++ b/gdb/config/djgpp/djcheck.sh
@@ -20,9 +20,10 @@ do
options=
fi
$GDB ${options} < ${base}.in 2>&1 \
- | sed -e '/^GNU gdb /s/ [.0-9][.0-9]*//' \
+ | sed -e '/GNU gdb /s/ [.0-9][.0-9]*//' \
+ -e '/^Copyright/s/[12][0-9][0-9][0-9]/XYZZY/g' \
-e '/Starting program: /s|[A-z]:/.*/||' \
- -e '/main (.*argv=/s/\(argv\|envp\)=0x[0-9a-f][0-9a-f]*/\1=XYZ/g' \
+ -e '/main (/s/=0x[0-9a-f][0-9a-f]*/=XYZ/g' \
> ${base}.tst
if diff --binary -u ${base}.out ${base}.tst ; then
rm -f ${base}.tst
diff --git a/gdb/config/djgpp/fnchange.lst b/gdb/config/djgpp/fnchange.lst
index 42beb93..be7babe 100644
--- a/gdb/config/djgpp/fnchange.lst
+++ b/gdb/config/djgpp/fnchange.lst
@@ -33,6 +33,7 @@ gdb-0222/gdb/remote-vxmips.c gdb-0222/gdb/rmt-vxmips.c
gdb-0222/gdb/remote-vxsparc.c gdb-0222/gdb/rmt-vxsparc.c
gdb-0222/gdb/sparclet-rom.c gdb-0222/gdb/splet-rom.c
gdb-0222/gdb/sparclet-stub.c gdb-0222/gdb/splet-stub.c
+gdb-0222/gdb/i386-linux-tdep.c gdb-0222/gdb/i386linux-tdep.c
gdb-0222/gdb/config/alpha/alpha-osf1.mh gdb-0222/gdb/config/alpha/alphosf1.mh
gdb-0222/gdb/config/alpha/alpha-osf2.mh gdb-0222/gdb/config/alpha/alphosf2.mh
gdb-0222/gdb/config/alpha/alpha-osf3.mh gdb-0222/gdb/config/alpha/alphosf3.mh
diff --git a/gdb/config/i386/tm-go32.h b/gdb/config/i386/tm-go32.h
index fb6eabd..f416396 100644
--- a/gdb/config/i386/tm-go32.h
+++ b/gdb/config/i386/tm-go32.h
@@ -21,52 +21,11 @@
#ifndef TM_GO32_H
#define TM_GO32_H
-#define I386_DJGPP_TARGET
#undef HAVE_SSE_REGS /* FIXME! go32-nat.c needs to support XMMi registers */
#define HAVE_I387_REGS
#include "i386/tm-i386.h"
-/* The host and target are i386 machines and the compiler supports
- long doubles. Long doubles on the host therefore have the same
- layout as a 387 FPU stack register. */
-
-#if defined(HAVE_LONG_DOUBLE) && defined(HOST_I386)
-#undef LD_I387
-#define LD_I387
-#endif
-
-/* Allow floating point numbers to be specified by a raw long double
- 10 hex bytes number, e.g. 1.0 can be input as
- 0x3fff8000000000000000 */
-
-#ifdef LD_I387
-#define HEX_LONG_DOUBLE_INPUT(base,p,len,target) \
- ((base) == 16 && (len) == 20 \
- && i387_hex_long_double_input ((p), (target)))
-#endif
-
-extern int i387_hex_long_double_input (char *p, long double *putithere);
-
-#ifdef LD_I387 /* otherwise, definitions from tm-i386.h are good enough */
-
-#undef REGISTER_CONVERT_TO_VIRTUAL
-#define REGISTER_CONVERT_TO_VIRTUAL(REGNUM,TYPE,FROM,TO) \
-{ \
- long double val = *((long double *)(FROM)); \
- store_floating ((TO), TYPE_LENGTH (TYPE), val); \
-}
-
-#undef REGISTER_CONVERT_TO_RAW
-#define REGISTER_CONVERT_TO_RAW(TYPE,REGNUM,FROM,TO) \
-{ \
- long double val = extract_floating ((FROM), TYPE_LENGTH (TYPE)); \
- *((long double *)(TO)) = val; \
-}
-
-#undef TARGET_LONG_DOUBLE_BIT
-#define TARGET_LONG_DOUBLE_BIT 96
-
/* FRAME_CHAIN takes a frame's nominal address and produces the frame's
chain-pointer.
In the case of the i386, the frame's nominal address
@@ -89,5 +48,4 @@ extern int i387_hex_long_double_input (char *p, long double *putithere);
#undef FRAME_SAVED_PC
#define FRAME_SAVED_PC(FRAME) (read_memory_integer ((FRAME)->frame + 4, 4))
-#endif /* LD_I387 */
#endif /* TM_GO32_H */
diff --git a/gdb/config/i386/xm-go32.h b/gdb/config/i386/xm-go32.h
index 868074d..79b8f27 100644
--- a/gdb/config/i386/xm-go32.h
+++ b/gdb/config/i386/xm-go32.h
@@ -36,3 +36,5 @@
#define DIRNAME_SEPARATOR ';'
#define HOST_I386
+
+#define HOST_LONG_DOUBLE_FORMAT &floatformat_i387_ext