Message ID | CABtf2+RxvHchi=k9z9HPoaUFVY3Mx89rGgh8Sx2HLXMfQVqANQ@mail.gmail.com |
---|---|
State | New |
Headers | show |
On 10/23/2015 04:22 PM, Caroline Tice wrote: > This patch fixes a compile-time regression that was originally > introduced by the fix > for PR64111, in GCC 4.9.3. One of our user's encountered this problem with a > particular file, where the compile time (on arm) went from 20 seconds > to 150 seconds. > > The fix in this patch was suggested by Richard Biener, who wrote the > original fix for > PR64111. I have verified that this patch fixes the compile time > regression; I have bootstrapped > the compiler with this patch; and I have run the regression testsuite > (no regressions). > Is this ok to commit to ToT? (I am also working on backports for > gcc-5_branch and gcc-4_9-branch). > > -- Caroline Tice > cmtice@google.com > > gcc/ChangeLog: > > 2015-10-23 Caroline Tice <cmtice@google.com> > > (from Richard Biener) > * tree.c (int_cst_hasher::hash): Replace XOR with more efficient > call to iterative_hash_host_wide_int. > OK. jeff
Index: gcc/tree.c =================================================================== --- gcc/tree.c (revision 229270) +++ gcc/tree.c (working copy) @@ -1364,7 +1364,7 @@ int i; for (i = 0; i < TREE_INT_CST_NUNITS (t); i++) - code ^= TREE_INT_CST_ELT (t, i); + code = iterative_hash_host_wide_int (TREE_INT_CST_ELT(t, i), code); return code; }