diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2003-06-13 05:34:02 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2003-06-13 03:34:02 +0000 |
commit | 5adf448c3bf4ba52122ae94ee632d9cbf13510a8 (patch) | |
tree | fa7a79f20d4d5a8d98f8b55461728097df43f2ee /gcc/unroll.c | |
parent | e860ed6dce2da5698956ce966ae27385b8780fdd (diff) | |
download | gcc-5adf448c3bf4ba52122ae94ee632d9cbf13510a8.zip gcc-5adf448c3bf4ba52122ae94ee632d9cbf13510a8.tar.gz gcc-5adf448c3bf4ba52122ae94ee632d9cbf13510a8.tar.bz2 |
re PR rtl-optimization/10955 ([SPARC] wrong code at -O3 for structure argument in context of structure return)
PR optimization/10955
* unroll.c (unroll_loop): Fix off-by-one bug.
From-SVN: r67870
Diffstat (limited to 'gcc/unroll.c')
-rw-r--r-- | gcc/unroll.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/unroll.c b/gcc/unroll.c index 43539c3..e7e03ab 100644 --- a/gcc/unroll.c +++ b/gcc/unroll.c @@ -791,9 +791,9 @@ unroll_loop (loop, insn_count, strength_reduce_p) /* We must limit the generic test to max_reg_before_loop, because only these pseudo registers have valid regno_first_uid info. */ for (r = FIRST_PSEUDO_REGISTER; r < max_reg_before_loop; ++r) - if (REGNO_FIRST_UID (r) > 0 && REGNO_FIRST_UID (r) <= max_uid_for_loop + if (REGNO_FIRST_UID (r) > 0 && REGNO_FIRST_UID (r) < max_uid_for_loop && REGNO_FIRST_LUID (r) >= copy_start_luid - && REGNO_LAST_UID (r) > 0 && REGNO_LAST_UID (r) <= max_uid_for_loop + && REGNO_LAST_UID (r) > 0 && REGNO_LAST_UID (r) < max_uid_for_loop && REGNO_LAST_LUID (r) <= copy_end_luid) { /* However, we must also check for loop-carried dependencies. |