This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: no_new_pseudos
> Since we have no reason to believe that the backend should not
> create new pseudo-registers before register allocation, and since we
> have no reason to believe that after register allocation starts it
> will be possible for the backend to create new pseudo-registers, I
> believe that you are introducing a layer of abstraction which does
> not clarify.
Although I agree that that's true, the counterargument is that the
predicate that the backends care about is "can I allocate a pseudo
here?". What that translates into shouldn't be relevant to them. The
fact that backends have translated that predicate into different
things (no_new_pseudos vs. reload_completed, e.g.) is exactly the sort of
thing that happens when we lose this explicitness and the argument for
restoring it.
> Since that would be obviously nonsensical, it must not be what I
> meant. I must have meant what I said: "it was there to remind people
> to call the appropriate functions to resize the register arrays."
I don't believe that's correct since much more would have needed to have been
done aside from resizing the arrays.