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 | |
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
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/regmove.c | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 219b713..84cd544 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +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. + 2007-03-21 Mike Stump <mrs@apple.com> * c.opt: Fixup for Objective-C/C++. 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 |