aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Van Artsdalen <jrv@gnu.org>1993-03-12 09:27:29 +0000
committerJames Van Artsdalen <jrv@gnu.org>1993-03-12 09:27:29 +0000
commitb9342cdfeb475c7f11dcade7cffd5d8e060f3039 (patch)
tree60a2292197c7a6a93d626992f89544530d30b384
parentac2afb64fb5d332ed6b559a8045abf5f14cca7a3 (diff)
downloadgcc-b9342cdfeb475c7f11dcade7cffd5d8e060f3039.zip
gcc-b9342cdfeb475c7f11dcade7cffd5d8e060f3039.tar.gz
gcc-b9342cdfeb475c7f11dcade7cffd5d8e060f3039.tar.bz2
(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. From-SVN: r3715
-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 731a948..c0a37ee 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: