[new-regalloc-branch]: restore usable_regs bugfix

Michael Matz matz@kde.org
Thu Mar 28 03:42:00 GMT 2002


Hi,

On 28 Mar 2002, Denis Chertykov wrote:

> > Uh oh.  I'm not sure about this.  Testcase?  Normally this is done in
> > unalias_web() (called each time right after
> > restore_conflicts_from_coalesce()).
>
> Yes. I know. But, record_conflict was called from
> restore_conflicts_from_coalesce before unalias_web.
> record_conflict use usable_regs for right conflict recording.
>
> > Widening usable_regs here already
> > might destroy some invariants.
>
> Please point me where usable_regs used between
> restore_conflicts_from_coalesce and unalias_web. (I just not found
> such place, may be I was wrong.)

If there would be no such place, your patch wouldn't change anything,
right? ;-)  Indeed you _did_ found the place, as indicated by your first
paragraph, it's the calls to record_conflict() in
restore_conflicts_from_coalesce.  Anyway, I'm now more sure that the
change is right, and why I forgot to widen usable_regs before those calls.
I implemented the restoring of accidently removed conflicts after
implementing unalias_web() and r_c_from_coalesce(), but forgot to adjust
the changing of usable_regs.


Ciao,
Michael.



More information about the Gcc-patches mailing list