aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorTamar Christina <tamar.christina@arm.com>2020-11-04 22:33:11 +0000
committerTamar Christina <tamar.christina@arm.com>2020-11-04 22:33:11 +0000
commit4d76079fdfa3d36ebd95ac8b489519945e8ee88f (patch)
tree137fc0337746424a1379b9b5812f1bae11208f70 /gcc/tree-vectorizer.h
parent6682ef4363b32977aeca590fced2221329c92c02 (diff)
downloadgcc-4d76079fdfa3d36ebd95ac8b489519945e8ee88f.zip
gcc-4d76079fdfa3d36ebd95ac8b489519945e8ee88f.tar.gz
gcc-4d76079fdfa3d36ebd95ac8b489519945e8ee88f.tar.bz2
middle-end: Move load/store-lanes check till late.
This moves the code that checks for load/store lanes further in the pipeline and places it after slp_optimize. This would allow us to perform optimizations on the SLP tree and only bail out if we really have a permute. With this change it allows us to handle permutes such as {1,1,1,1} which should be handled by a load and replicate. This change however makes it all or nothing. Either all instances can be handled or none at all. This is why some of the test cases have been adjusted. gcc/ChangeLog: * tree-vect-slp.c (vect_analyze_slp_instance): Moved load/store lanes check to ... * tree-vect-loop.c (vect_analyze_loop_2): ..Here gcc/testsuite/ChangeLog: * gcc.dg/vect/slp-11b.c: Update output scan. * gcc.dg/vect/slp-perm-6.c: Likewise.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions