OSDN Git Service

(get_true_reg): Don't ignore FLOAT_TRUNCATE.
authorjrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Mar 1993 09:27:29 +0000 (09:27 +0000)
committerjrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Mar 1993 09:27:29 +0000 (09:27 +0000)
(subst_stack_regs_pat): Substitute in FLOAT_TRUNCATE insns.
(compare_for_stack_reg): Reset insn code after swapping operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3715 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/reg-stack.c

index 731a948..c0a37ee 100644 (file)
@@ -442,8 +442,7 @@ get_true_reg (pat)
   while (GET_CODE (*pat) == SUBREG
         || GET_CODE (*pat) == FLOAT
         || GET_CODE (*pat) == FIX
-        || GET_CODE (*pat) == FLOAT_EXTEND
-        || GET_CODE (*pat) == FLOAT_TRUNCATE)
+        || GET_CODE (*pat) == FLOAT_EXTEND)
     pat = & XEXP (*pat, 0);
 
   return pat;
@@ -1786,6 +1785,7 @@ compare_for_stack_reg (insn, regstack, pat)
 
       swap_rtx_condition (PATTERN (next));
       INSN_CODE (next) = -1;
+      INSN_CODE (insn) = -1;
     }
 
   /* We will fix any death note later. */
@@ -1896,6 +1896,7 @@ subst_stack_regs_pat (insn, regstack, pat)
 
        /* Fall through. */
 
+      case FLOAT_TRUNCATE:
       case SQRT:
       case ABS:
       case NEG: