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]

Re: Move value numbering routines and add VALUE_HANDLE code



On Jun 23, 2004, at 6:39 AM, Diego Novillo wrote:



This is mostly mechanical. It adds a new VALUE_HANDLE tree code that is
generated and consumed internally by GVN-PRE. This ought to reduce
memory consumption somewhat (not tested, though) because we won't use
VAR_DECLs as value handles anymore.


The patch also moves all the value numbering routines to tree-vn.c. I
also have changes to make value numbering incorporate virtual operands,
but that is still unstable, so I'm flushing the stable bits out to avoid
lugging around a huge patch.


Finally, the patch uncovered a subtle bug in tree-optimize.c. The calls
to init_tree_ssa() and delete_tree_ssa() were sometimes not paired.
When not optimizing, we would call delete_tree_ssa() but not
init_tree_ssa(). Since we are now removing the value numbering hash
table in delete_tree_ssa(), we were ICEing at -O0.


Bootstrapped and tested x86 and x86-64 with no regressions.  Dan and
Steven, could you folks take a look and make sure I haven't broken
anything subtle?  There should be no behavioural change in PRE.

It looks fine to me. I'll give it a try on my local PRE tests (which are unfortunately too large to put in the testsuite) and make sure nothing subtle broke. Shouldn't be more than an hour or two


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