* configure.tgt: Set gdb_target to r5900.
authorJeff Law <law@redhat.com>
Fri, 26 Sep 1997 18:53:22 +0000 (18:53 +0000)
committerJeff Law <law@redhat.com>
Fri, 26 Sep 1997 18:53:22 +0000 (18:53 +0000)
        * config/mips/tm-r5900.h, config/mips/r5900.mt: New files

        * mips-tdep.c (_initialize_mips_tdep): Allow target files to
        override default FPU type.
Brought over from r5900 branch.

gdb/ChangeLog
gdb/config/mips/.Sanitize
gdb/configure.tgt
gdb/mips-tdep.c

index 12f2a20ed558c2d5ed6a0dd6be965739970f46a0..fee143b14f08aba63ead07952287785849fff7b9 100644 (file)
@@ -1,3 +1,13 @@
+Fri Sep 26 12:40:51 1997  Jeffrey A Law  (law@cygnus.com)
+                          Michael Snyder  (msnyder@cleaver.cygnus.com)
+
+start-sanitize-r5900
+       * configure.tgt: Set gdb_target to r5900.
+       * config/mips/tm-r5900.h, config/mips/r5900.mt: New files
+end-sanitize-r5900
+       * mips-tdep.c (_initialize_mips_tdep): Allow target files to
+       override default FPU type.
+
 Fri Sep 26 10:33:54 1997  Felix Lee  <flee@cygnus.com>
 
        * configure.tgt (v850-*-*): necmsg.lib instead of v850.lib.
index c4e1e8d7bf45f6e54c2f61f07ad861ad15923f54..be1b3783a0a0cc05d183bbb8a27b1266e20567c8 100644 (file)
@@ -29,6 +29,12 @@ else
        fi
 fi
 
+if ( echo $* | grep keep\-r5900 > /dev/null ) ; then
+       keep_these_too="tm-r5900.h r5900.mt ${keep_these_too}"
+else
+       lose_these_too="tm-r5900.h r5900.mt ${lose_these_too}"
+fi
+
 # All files listed between the "Things-to-keep:" line and the
 # "Files-to-sed:" line will be kept.  All other files will be removed.
 # Directories listed in this section will have their own Sanitize
index 5a7a5b1411a7c9c740172ec179ba0dc0a1df32ba..9b2c115f81e5ee8b72688b724fdfc9e3f2d886f6 100644 (file)
@@ -166,7 +166,7 @@ mips64*vr5000*el-*-elf*)    gdb_target=vr5000el ;;
 mips64*vr5000*-*-elf*) gdb_target=vr5000
                configdirs="${configdirs} gdbserver" ;;
 # start-sanitize-r5900
-mips64*r5900*-*-elf*)  gdb_target=vr5000el ;;
+mips64*r5900*-*-elf*)  gdb_target=r5900 ;;
 # end-sanitize-r5900
 # start-sanitize-tx19
 mips-tx19*el-* | mips*tx19*el-*-*)
index b62473992df0c22bd54ac7b074ff33924b390629..6951ca59b8742fefa0d1250a785a0280b07034a0 100644 (file)
@@ -1399,8 +1399,9 @@ mips_push_arguments(nargs, args, sp, struct_return, struct_addr)
 
                  /* A non-floating-point argument being passed in a 
                     general register.  If a struct or union, and if
-                    small enough for a single register, we have to 
-                    adjust the alignment.
+                    the remaining length is smaller than the register
+                    size, we have to adjust the register value on
+                    big endian targets.
 
                     It does not seem to be necessary to do the
                     same for integral types.
@@ -1408,7 +1409,8 @@ mips_push_arguments(nargs, args, sp, struct_return, struct_addr)
                     Also don't do this adjustment on EABI targets.  */
 
                  if (!MIPS_EABI &&
-                     TYPE_LENGTH (arg_type) < MIPS_REGSIZE &&
+                     TARGET_BYTE_ORDER == BIG_ENDIAN &&
+                     partial_len < MIPS_REGSIZE &&
                      (typecode == TYPE_CODE_STRUCT ||
                       typecode == TYPE_CODE_UNION))
                    regval <<= ((MIPS_REGSIZE - partial_len) * 
@@ -2625,8 +2627,18 @@ normal floating point support.",
   c = add_show_from_set (c, &showlist);
   c->function.sfunc = mips_show_fpu_command;
 
+#ifndef MIPS_DEFAULT_FPU_TYPE
   mips_fpu = MIPS_FPU_DOUBLE;
   mips_fpu_string = strsave ("double");
+#else
+  mips_fpu = MIPS_DEFAULT_FPU_TYPE;
+  switch (mips_fpu) 
+  {
+    case MIPS_FPU_DOUBLE:  mips_fpu_string = strsave ("double");  break;
+    case MIPS_FPU_SINGLE:  mips_fpu_string = strsave ("single");  break;
+    case MIPS_FPU_NONE:    mips_fpu_string = strsave ("none");    break;
+  }    
+#endif
 
   c = add_set_cmd ("processor", class_support, var_string_noescape,
                   (char *) &tmp_mips_processor_type,