diff options
author | Mark Kettenis <kettenis@gnu.org> | 2002-06-14 21:17:28 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2002-06-14 21:17:28 +0000 |
commit | 896fb97df8a40b17d8a5f911a62ae9a4382b3fec (patch) | |
tree | a8e0adfd5fa3d76990c0331f396e5becb8f7a42c /gdb/i386-tdep.c | |
parent | 8201327c4086d86bf1c16db4fd34bc55c2da53ef (diff) | |
download | gdb-896fb97df8a40b17d8a5f911a62ae9a4382b3fec.zip gdb-896fb97df8a40b17d8a5f911a62ae9a4382b3fec.tar.gz gdb-896fb97df8a40b17d8a5f911a62ae9a4382b3fec.tar.bz2 |
* config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT,
TARGET_LONG_DOUBLE_BIT): Remove. * i386-tdep.c
(i386_gdbarch_init): Initialize long_double_format and long_double
bit.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r-- | gdb/i386-tdep.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index ab52ba4..f0723fa 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -1351,6 +1351,17 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) tdep->sigtramp_end = 0; tdep->sc_pc_offset = -1; + /* The format used for `long double' on almost all i386 targets is + the i387 extended floating-point format. In fact, of all targets + in the GCC 2.95 tree, only OSF/1 does it different, and insists + on having a `long double' that's not `long' at all. */ + set_gdbarch_long_double_format (gdbarch, &floatformat_i387_ext); + + /* Although the i386 extended floating-point has only 80 significant + bits, a `long double' actually takes up 96, probably to enforce + alignment. */ + set_gdbarch_long_double_bit (gdbarch, 96); + set_gdbarch_get_longjmp_target (gdbarch, i386_get_longjmp_target); set_gdbarch_use_generic_dummy_frames (gdbarch, 0); |