Make the PR99220 fix more robust
authorRichard Biener <rguenther@suse.de>
Thu, 25 Feb 2021 07:37:36 +0000 (08:37 +0100)
committerRichard Biener <rguenther@suse.de>
Thu, 25 Feb 2021 07:50:32 +0000 (08:50 +0100)
commit5e7c0927cbd115d488d527c86dfc671b22c378db
tree0b909920bb6a6f7d6afcfd465c4d2b630740ad80
parenta6baafcac5308be1a5d92c0b2a179495b7a24b52
Make the PR99220 fix more robust

This avoids interleaving pattern recognition and load redistribution
optimization since the load_map used in the latter is fragile with
respect to release and reuse of SLP nodes, something which can also
occur within the pattern recognition machinery.

2021-02-25  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (optimize_load_redistribution_1): Delay
load_map population.
(vect_match_slp_patterns_2): Revert part of last change.
(vect_analyze_slp): Do not interleave optimize_load_redistribution
with pattern detection but do it afterwards.  Dump the
whole SLP graph after pattern recognition and load
redistribution optimization finished.
gcc/tree-vect-slp.c