This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: recompute_reg_usage


On Thu, Oct 25, 2001 at 08:05:42PM -0400, DJ Delorie wrote:
> It seems to me that if we just finished a bunch of optimization passes
> (combine, ifcvt, regmove), we just did a lot of non-local
> modifications, and life info is going to change (as the toplev.c
> comment says).  After all, we just rearranged all the insns.

We did not, however, rearrange the insns arbitrarily.

You're oversimplifying too -- there is not one update for all
of the passes you mention, there are many, some of which do
in fact do global updates.

> In my case (sh-elf), a SET gets "moved" from one block to another by
> combine, and gcc aborts because the new life information doesn't match
> the old.

Then combine should have set need_refresh and rerun global life
analysis inside combine_instructions.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]