[Bug middle-end/87256] hppa spends huge amount of time in synth_mult()
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Sep 12 08:30:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87256
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #6)
> For the above case, there are during the recursion 77608 synth_mult calls,
> which might be ok, so indeed better hashing would help, but 10311 is too
> large and is not a prime number. Plus this hash table is resolving all
> collisions by evicting older cash entries.
> That is perhaps fine for the toplevel synth_mult calls, but for the
> recursive ones I guess we want to make sure we cache all the values needed
> to compute the same toplevel call and perhaps only record the toplevel
> call's entry if it would need to evict older entries.
> So maybe use the current hash table + another temporary hash_map live just
> during the outermost synth_mult call (and activate this behavior only if say
> seeing a recursion count of 16)?
Sounds reasonable - I'd try activating the behavior on the first collision?
More information about the Gcc-bugs
mailing list