tree-optimization/91403 - avoid excessive code-generation
authorRichard Biener <rguenther@suse.de>
Mon, 11 Jan 2021 11:04:32 +0000 (12:04 +0100)
committerRichard Biener <rguenther@suse.de>
Mon, 11 Jan 2021 12:38:18 +0000 (13:38 +0100)
commit84684e0f78c20c51492722a5b95cda778ad77073
tree34dd14796ef4d822348833a2b360f2f42c19f54d
parent6ebf79fcd4cfb43353e6a000f700b07295e78026
tree-optimization/91403 - avoid excessive code-generation

The vectorizer, for large permuted grouped loads, generates
inefficient intermediate code (cleaned up only later) that runs
into complexity issues in SCEV analysis and elsewhere.  For the
non-single-element interleaving case we already put a hard limit
in place, this applies the same limit to the missing case.

2021-01-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/91403
* tree-vect-data-refs.c (vect_analyze_group_access_1): Cap
single-element interleaving group size at 4096 elements.

* gcc.dg/vect/pr91403.c: New testcase.
gcc/testsuite/gcc.dg/vect/pr91403.c [new file with mode: 0644]
gcc/tree-vect-data-refs.c