* 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.
This commit is contained in:
parent
c0c9b0b8a6
commit
7f668b8658
5 changed files with 23 additions and 44 deletions
|
@ -1,3 +1,20 @@
|
|||
2000-04-03 Eli Zaretskii <eliz@is.elta.co.il>
|
||||
|
||||
* 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.
|
||||
|
||||
2000-04-03 Eli Zaretskii <eliz@is.elta.co.il>
|
||||
|
||||
* symfile.c (map_overlay_command, unmap_overlay_command): Fix
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -36,3 +36,5 @@
|
|||
#define DIRNAME_SEPARATOR ';'
|
||||
|
||||
#define HOST_I386
|
||||
|
||||
#define HOST_LONG_DOUBLE_FORMAT &floatformat_i387_ext
|
||||
|
|
Loading…
Reference in a new issue