This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: no_new_pseudos
Alexandre Oliva wrote:
> On Jul 4, 2007, Kenneth Zadeck <zadeck@naturalbridge.com> wrote:
>
>
>>>> enum { BEFORE_RELOAD = -1, DURING_RELOAD = 0, AFTER_RELOAD = 1 }
>>>> reload_status;
>>>>
>
>
>>>> #define BEFORE_RELOAD_P() (reload_status < DURING_RELOAD)
>>>> #define DURING_RELOAD_P() (reload_status == DURING_RELOAD)
>>>> #define AFTER_RELOAD_P() (reload_status > DURING_RELOAD)
>>>>
>
>
>> I do not want to make this change myself:
>>
>
> It's as mechanical as the change you proposed, except that yours
> potentially loses information that would enable someone to recover
> !BEFORE_RELOAD_P() out of the expanded version of no_new_pseudos.
>
> Cleanups can come up later.
>
>
I find this argument somewhat suspect. At this point I know the middle
end quite well, and there I simply had to reason about each grep hit
given the context of where it was used. In the backends I applied the
transformation mechanically because I am not experienced there.
However, I believe from the arguments of others, that a proper cleanup
would be based on the context of each use, not on the code that is
there, and whether those uses are one variable or a group of them is
largely irrelevant.
I am always skeptical of an argument against a cleanup that is based on
the premise that something should not be done because it was not
ambitious enough. The only way that I will accept such an argument is
if the person making that argument is willing to do the more ambitious
version in a timely manner (i.e. during this release of stage II). If
you are willing to step up to the plate then i will withdraw my patch in
support of yours.
But if not, do not stand in the way of someone who has done a legitimate
cleanup.
Kenny