diff options
author | Seongbae Park <seongbae.park@gmail.com> | 2007-03-22 06:18:33 +0000 |
---|---|---|
committer | Seongbae Park <spark@gcc.gnu.org> | 2007-03-22 06:18:33 +0000 |
commit | 1e4c6dc5b92081004ecabe34f4e76c2a1e97cdce (patch) | |
tree | 403ae4e99ca1f42ff11e7679dee90462b345a543 /gcc/regmove.c | |
parent | 924641d340822e1356e6728842b263fa3fb640fc (diff) | |
download | gcc-1e4c6dc5b92081004ecabe34f4e76c2a1e97cdce.zip gcc-1e4c6dc5b92081004ecabe34f4e76c2a1e97cdce.tar.gz gcc-1e4c6dc5b92081004ecabe34f4e76c2a1e97cdce.tar.bz2 |
regmove.c (regmove_optimize): Use reg_mentioned_p instead of reg_overlap_mentioned_p for DST.
2007-03-21 Seongbae Park <seongbae.park@gmail.com>
* regmove.c (regmove_optimize): Use reg_mentioned_p
instead of reg_overlap_mentioned_p for DST.
From-SVN: r123124
Diffstat (limited to 'gcc/regmove.c')
-rw-r--r-- | gcc/regmove.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/regmove.c b/gcc/regmove.c index 4bd5d1d..3c059f4 100644 --- a/gcc/regmove.c +++ b/gcc/regmove.c @@ -1429,8 +1429,13 @@ regmove_optimize (rtx f, int nregs) break; } + /* We can't make this change if SRC is read or + partially written in P, since we are going to + eliminate SRC. We can't make this change + if DST is mentioned at all in P, + since we are going to change its value. */ if (reg_overlap_mentioned_p (src, PATTERN (p)) - || reg_overlap_mentioned_p (dst, PATTERN (p))) + || reg_mentioned_p (dst, PATTERN (p))) break; /* If we have passed a call instruction, and the |