OSDN Git Service

2006-06-19 Michael Snyder <msnyder@redhat.com>
authormsnyder <msnyder>
Mon, 19 Jun 2006 18:50:09 +0000 (18:50 +0000)
committermsnyder <msnyder>
Mon, 19 Jun 2006 18:50:09 +0000 (18:50 +0000)
* mips-tdep.c (mips_eabi_push_dummy_call): For 32 bit ABI, to
decide how many registers it takes to pass a floating point
argument, what matters is the size of a floating point register
(not the size of a general purpose register).
(mips_o32_push_dummy_call): Ditto.

gdb/ChangeLog
gdb/mips-tdep.c

index bd1036d..14afc74 100644 (file)
@@ -1,3 +1,11 @@
+2006-06-19  Michael Snyder  <msnyder@redhat.com>
+
+       * mips-tdep.c (mips_eabi_push_dummy_call): For 32 bit ABI, to
+       decide how many registers it takes to pass a floating point
+       argument, what matters is the size of a floating point register
+       (not the size of a general purpose register).
+       (mips_o32_push_dummy_call): Ditto.
+
 2006-06-19  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
 
        * configure.tgt: Add gdbserver support for m32r-linux.
index 2cdbd70..e0315df 100644 (file)
@@ -2495,7 +2495,7 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
       if (fp_register_arg_p (typecode, arg_type)
          && float_argreg <= MIPS_LAST_FP_ARG_REGNUM)
        {
-         if (mips_abi_regsize (gdbarch) < 8 && len == 8)
+         if (register_size (gdbarch, float_argreg) < 8 && len == 8)
            {
              int low_offset = TARGET_BYTE_ORDER == BFD_ENDIAN_BIG ? 4 : 0;
              unsigned long regval;
@@ -3119,7 +3119,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
       if (fp_register_arg_p (typecode, arg_type)
          && float_argreg <= MIPS_LAST_FP_ARG_REGNUM)
        {
-         if (mips_abi_regsize (gdbarch) < 8 && len == 8)
+         if (register_size (gdbarch, float_argreg) < 8 && len == 8)
            {
              int low_offset = TARGET_BYTE_ORDER == BFD_ENDIAN_BIG ? 4 : 0;
              unsigned long regval;