Fix 961223-1.c irix6 c-torture failure.
authorJim Wilson <wilson@cygnus.com>
Wed, 1 Oct 1997 20:49:25 +0000 (20:49 +0000)
committerJim Wilson <wilson@gcc.gnu.org>
Wed, 1 Oct 1997 20:49:25 +0000 (13:49 -0700)
* mips.c (function_arg): Handle passing a struct
containing a double in a DFmode register without the PARALLEL.

From-SVN: r15830

gcc/ChangeLog
gcc/config/mips/mips.c

index c5876bc67c458904bc254940e98e83cce77bc8fb..3b6d7ca037e70a381a32cc61fdef7419e3afd84a 100644 (file)
@@ -1,3 +1,11 @@
+Wed Oct  1 13:43:53 1997  Jim Wilson  <wilson@cygnus.com>
+
+       Bring over from FSF.
+       Tue Aug  5 16:10:45 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * mips.c (function_arg): Handle passing a struct 
+       containing a double in a DFmode register without the PARALLEL.
+
 Wed Oct  1 11:13:25 1997  Ian Lance Taylor  <ian@cygnus.com>
 
         * pexecute.c: Use spawn if __CYGWIN32__.
index 61366694c1583597ca770ac25dea19b338d439a3..9cf2cc31507d37a9e9ae7ee305c0ec6b355609f5 100644 (file)
@@ -3208,7 +3208,7 @@ function_arg (cum, mode, type, named)
                    % BITS_PER_WORD == 0))
              break;
 
-         if (! field)
+         if (! field || mode == DFmode)
            ret = gen_rtx (REG, mode, regbase + *arg_words + bias);
          else
            {