aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2000-08-03 18:36:14 +0000
committerJan Hubicka <hubicka@gcc.gnu.org>2000-08-03 18:36:14 +0000
commit0b9aaeee6ffc45a00c689837f8828e0a72a06f1c (patch)
tree33fe819a786c23be4cf8edbef115ec14ab5c7e18
parent57b59acb058f5741ddb858efebaa6b714e3da552 (diff)
downloadgcc-0b9aaeee6ffc45a00c689837f8828e0a72a06f1c.zip
gcc-0b9aaeee6ffc45a00c689837f8828e0a72a06f1c.tar.gz
gcc-0b9aaeee6ffc45a00c689837f8828e0a72a06f1c.tar.bz2
reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap operands.
* reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap operands. * i386.c (ix86_expand_branch): Mode of comparison in IF_THEN_ELSE is VOIDmode. From-SVN: r35458
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/i386/i386.c2
-rw-r--r--gcc/reg-stack.c6
3 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a77159a..71fc4295 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Thu Aug 3 20:32:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap
+ operands.
+
+ * i386.c (ix86_expand_branch): Mode of comparison in
+ IF_THEN_ELSE is VOIDmode.
+
Thu Aug 3 10:05:53 2000 Akiko Matsushita <matusita@sra.co.jp>
* gengenrtl.c, rtl.c: Avoid #elif.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index e8e984a..c02dfc7 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -4897,7 +4897,7 @@ ix86_expand_branch (code, label)
code = ix86_prepare_fp_compare_args (code, &ix86_compare_op0,
&ix86_compare_op1);
- tmp = gen_rtx_fmt_ee (code, ix86_fp_compare_mode (code),
+ tmp = gen_rtx_fmt_ee (code, VOIDmode,
ix86_compare_op0, ix86_compare_op1);
tmp = gen_rtx_IF_THEN_ELSE (VOIDmode, tmp,
gen_rtx_LABEL_REF (VOIDmode, label),
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c
index 8f0b50e..99b9eec 100644
--- a/gcc/reg-stack.c
+++ b/gcc/reg-stack.c
@@ -1637,9 +1637,9 @@ subst_stack_regs_pat (insn, regstack, pat)
&& REG_P (*src1) && REG_P (*src2)
&& REGNO (*src1) != REGNO (*dest))
{
- rtx tmp = *src1;
- *src1 = *src2;
- *src2 = tmp;
+ int tmp = REGNO (*src1);
+ replace_reg (src1, REGNO (*src2));
+ replace_reg (src2, tmp);
}
break;