diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8c6ed0ea79ddc258b2117a368feaf7b6cf878827..15ccecbd516fed8053b12160b1f11a44c49df6f4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-11-09 Matthew Hiller <hiller@redhat.com> + + * reload1.c (reload_combine): Fixed calculation of + first_index_reg, last_index_reg. + 2000-11-09 Mark Mitchell <mark@codesourcery.com> * c-dump.c (dequeue_and_dump): Dump function bodies. diff --git a/gcc/reload1.c b/gcc/reload1.c index 151529ada8e0ee4e2fb2391cd837baae056266fb..5219e8a09d2c3dd0354e56d73b659a551dbb21ad 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -8363,7 +8363,7 @@ static void reload_combine () { rtx insn, set; - int first_index_reg = 1, last_index_reg = 0; + int first_index_reg = -1, last_index_reg; int i; unsigned int r; int last_label_ruid; @@ -8381,14 +8381,14 @@ reload_combine () for (r = 0; r < FIRST_PSEUDO_REGISTER; r++) if (TEST_HARD_REG_BIT (reg_class_contents[INDEX_REG_CLASS], r)) { - if (! first_index_reg) + if (first_index_reg == -1) first_index_reg = r; last_index_reg = r; } /* If no index register is available, we can quit now. */ - if (first_index_reg > last_index_reg) + if (first_index_reg == -1) return; /* Set up LABEL_LIVE and EVER_LIVE_AT_START. The register lifetime