improve VN PHI hashing
This reduces the number of collisions for PHIs in the VN hashtable
by always hashing the number of predecessors and separately hashing
the block number when we never merge PHIs from different blocks.
This improves collisions seen for the PR69609 testcase dramatically.
2020-11-13 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c (vn_phi_compute_hash): Always hash the
number of predecessors. Hash the block number also for
loop header PHIs.
(expressions_equal_p): Short-cut SSA name compares, remove
test for NULL operands.
(vn_phi_eq): Cache number of predecessors, change inlined
test from expressions_equal_p.