aboutsummaryrefslogtreecommitdiff
path: root/gcc/regmove.c
diff options
context:
space:
mode:
authorKazu Hirata <kazu@hxi.com>2001-07-26 15:23:07 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2001-07-26 15:23:07 +0000
commitf302906571e3723a05f9ffdab31945638191579e (patch)
tree5ea867d251e380ffa592a47c4077c505752661ac /gcc/regmove.c
parent4a121cc34cd8153380aee3246979b8fb35e2a88f (diff)
downloadgcc-f302906571e3723a05f9ffdab31945638191579e.zip
gcc-f302906571e3723a05f9ffdab31945638191579e.tar.gz
gcc-f302906571e3723a05f9ffdab31945638191579e.tar.bz2
regmove.c (regmove_optimize): Don't replace a reg with another reg of a different mode.
* regmove.c (regmove_optimize): Don't replace a reg with another reg of a different mode. From-SVN: r44399
Diffstat (limited to 'gcc/regmove.c')
-rw-r--r--gcc/regmove.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/regmove.c b/gcc/regmove.c
index 7e49143..587acea 100644
--- a/gcc/regmove.c
+++ b/gcc/regmove.c
@@ -1244,6 +1244,9 @@ regmove_optimize (f, nregs, regmove_dump_file)
if (! regclass_compatible_p (src_class, dst_class))
continue;
+ if (GET_MODE (src) != GET_MODE (dst))
+ continue;
+
if (fixup_match_1 (insn, set, src, src_subreg, dst, pass,
op_no, match_no,
regmove_dump_file))