This is the mail archive of the gcc-patches@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] |
Other format: | [Raw text] |
Hello,
Yes; the method is not really much different from what rewrite_ssa_into_ssa does. The exceptions are that rewrite_ssa_into_ssa searches for new definitions by scanning all the statements (making it possibly a bit slower), and that it works for multiple definitions at a time (making it possibly a bit faster, and much easier to use then direct incremental algorithm).
Then let's keep them separate. They are conceptually different and we need the abstraction of being able to insert new SSA definitions. So far, I see no compelling reasons why we should make rewrite_into_ssa any more complicated than it already is.
The patch is very intrusive in that respect and it will be difficult to maintain. We will now have two SSA renaming algorithms, each slightly different yet similar.
Am I missing anything? You are resisting the idea of having a separate name insertion utility, but I don't really understand why.
I agree with Diego and Jason; this patch should be modified to make the incremental changes as the loop headers are copied.
why?????? Could someone please tell me one single reason why that is a better solution? It is slower. It is harder to use:
And finally: we cannot do this at all for now, since it requires you to have lists of immediate uses available at all times (which I was forbidden to implement by Diego a few months ago). I will be happy to implement this functionality later, since in some contexts it may be useful; but it needs at least a week of time to code and the changes for it would be quite intrusive.
-- Mark Mitchell CodeSourcery, LLC mark@codesourcery.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |