summaryrefslogtreecommitdiff
path: root/gcc/reg-stack.c
diff options
context:
space:
mode:
authorjrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4>1993-03-12 09:27:29 +0000
committerjrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4>1993-03-12 09:27:29 +0000
commit2f4ca4403eed58bbd3a053b12bc3b8cb569ec8eb (patch)
tree60a2292197c7a6a93d626992f89544530d30b384 /gcc/reg-stack.c
parent8fb78de4ce5e728a83b0a145d16971274577ef8f (diff)
downloadgcc-2f4ca4403eed58bbd3a053b12bc3b8cb569ec8eb.tar.gz
(get_true_reg): Don't ignore FLOAT_TRUNCATE.
(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
Diffstat (limited to 'gcc/reg-stack.c')
-rw-r--r--gcc/reg-stack.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c
index 731a9487e7e..c0a37ee94d2 100644
--- a/gcc/reg-stack.c
+++ b/gcc/reg-stack.c
@@ -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: