]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* sparc-tdep.c: Include "floatformat.h".
authorMark Kettenis <kettenis@gnu.org>
Wed, 31 Dec 2003 20:46:51 +0000 (20:46 +0000)
committerMark Kettenis <kettenis@gnu.org>
Wed, 31 Dec 2003 20:46:51 +0000 (20:46 +0000)
(floatformat_sparc_quad): New define.
(sparc32_gdbarch_init): Set long_double_format to
&floatformat_sparc_quad.
* sparc-linux-tdep.c: Include "floatformat.h".
(sparc32_linux_init_abi): Set long_double_format to
&floatformat_ieee_double_big.
* sparcnbsd-tdep.c: Likewise.

gdb/ChangeLog
gdb/sparc-linux-tdep.c
gdb/sparc-tdep.c
gdb/sparcnbsd-tdep.c

index c80cddfcdd608712b5e3b0decd252e83da1cdfb3..eb1bd3894588e95beff1798f9a7a58e5a5857ea1 100644 (file)
@@ -1,5 +1,14 @@
 2003-12-31  Mark Kettenis  <kettenis@gnu.org>
 
+       * sparc-tdep.c: Include "floatformat.h".
+       (floatformat_sparc_quad): New define.
+       (sparc32_gdbarch_init): Set long_double_format to
+       &floatformat_sparc_quad.
+       * sparc-linux-tdep.c: Include "floatformat.h".
+       (sparc32_linux_init_abi): Set long_double_format to
+       &floatformat_ieee_double_big.
+       * sparcnbsd-tdep.c: Likewise.
+
        * sparc-tdep.c (sparc_stabs_unglobalize_name): New function.
        * config/sparc/tm-sol2.h (SOFUN_ADDRESS_MAYBE_MISSING): Define.
        (sparc_stabs_unglobalize_name): New prototype.
index aa6423684d4a6e6bbba69447dcd8e0aeeec46b37..b6facf272b3ebc7d55aa7c576b565d429a656b42 100644 (file)
@@ -20,6 +20,7 @@
    Boston, MA 02111-1307, USA.  */
 
 #include "defs.h"
+#include "floatformat.h"
 #include "frame.h"
 #include "frame-base.h"
 #include "frame-unwind.h"
@@ -291,6 +292,7 @@ sparc32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
   /* GNU/Linux doesn't support the 128-bit `long double' from the psABI.  */
   set_gdbarch_long_double_bit (gdbarch, 64);
+  set_gdbarch_long_double_format (gdbarch, &floatformat_ieee_double_big);
 
   set_gdbarch_pc_in_sigtramp (gdbarch, sparc32_linux_pc_in_sigtramp);
   frame_unwind_append_sniffer (gdbarch, sparc32_linux_sigtramp_frame_sniffer);
index 7de4a8e19187a9267893febe23ed166c63226bec..8ba8a50a7f3428da8f1ce82a21fbdcdc183b462d 100644 (file)
@@ -22,6 +22,7 @@
 #include "defs.h"
 #include "arch-utils.h"
 #include "dis-asm.h"
+#include "floatformat.h"
 #include "frame.h"
 #include "frame-base.h"
 #include "frame-unwind.h"
    code that can handle both.  The 64-bit specific code lives in
    sparc64-tdep.c; don't add any here.  */
 
+/* The SPARC Floating-Point Quad-Precision format is similar to
+   big-endian IA-64 Quad-recision format.  */
+#define floatformat_sparc_quad floatformat_ia64_quad_big
+
 /* The stack pointer is offset from the stack frame by a BIAS of 2047
    (0x7ff) for 64-bit code.  BIAS is likely to be defined on SPARC
    hosts, so undefine it first.  */
@@ -1020,6 +1025,7 @@ sparc32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   tdep->plt_entry_size = 0;
 
   set_gdbarch_long_double_bit (gdbarch, 128);
+  set_gdbarch_long_double_format (gdbarch, &floatformat_sparc_quad);
 
   set_gdbarch_num_regs (gdbarch, SPARC32_NUM_REGS);
   set_gdbarch_register_name (gdbarch, sparc32_register_name);
index 0c5acfba3cda8f67155dee906b42fa3d927b9255..806085e8e43575ed8a67abc3f79a30ce1d184771 100644 (file)
@@ -21,6 +21,7 @@
    Boston, MA 02111-1307, USA.  */
 
 #include "defs.h"
+#include "floatformat.h"
 #include "frame.h"
 #include "frame-unwind.h"
 #include "gdbcore.h"
@@ -265,6 +266,7 @@ sparc32nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 {
   /* NetBSD doesn't support the 128-bit `long double' from the psABI.  */
   set_gdbarch_long_double_bit (gdbarch, 64);
+  set_gdbarch_long_double_format (gdbarch, &floatformat_ieee_double_big);
 
   set_gdbarch_pc_in_sigtramp (gdbarch, sparc32nbsd_pc_in_sigtramp);
   frame_unwind_append_sniffer (gdbarch, sparc32nbsd_sigtramp_frame_sniffer);