* s390-tdep.c (s390_gdbarch_init): Set default long double
authorUlrich Weigand <uweigand@de.ibm.com>
Thu, 17 Jan 2008 16:05:41 +0000 (16:05 +0000)
committerUlrich Weigand <uweigand@de.ibm.com>
Thu, 17 Jan 2008 16:05:41 +0000 (16:05 +0000)
type to 128-bit IEEE quad.

gdb/ChangeLog
gdb/s390-tdep.c

index ac27b70..7c1f0a2 100644 (file)
@@ -1,3 +1,8 @@
+2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * s390-tdep.c (s390_gdbarch_init): Set default long double
+       type to 128-bit IEEE quad.
+
 2008-01-17  Joel Brobecker  <brobecker@adacore.com>
 
        * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
index b448b22..f25a371 100644 (file)
@@ -2328,6 +2328,12 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_believe_pcc_promotion (gdbarch, 0);
   set_gdbarch_char_signed (gdbarch, 0);
 
+  /* S/390 GNU/Linux uses either 64-bit or 128-bit long doubles.
+     We can safely let them default to 128-bit, since the debug info
+     will give the size of type actually used in each case.  */
+  set_gdbarch_long_double_bit (gdbarch, 128);
+  set_gdbarch_long_double_format (gdbarch, floatformats_ia64_quad);
+
   /* Amount PC must be decremented by after a breakpoint.  This is
      often the number of bytes returned by gdbarch_breakpoint_from_pc but not
      always.  */