[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-23 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 Richard Biener changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed|

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-23 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #2 from Jakub Jelinek --- (In reply to Richard Biener from comment #1) > If OMP SIMD always zeros the vector then it could also emit the maybe easier > to optimize > > WITH_SIZE_EXPR<_3, D.2841> = {}; It doesn't always zero, it ca

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-23 Thread peter at cordes dot ca
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #3 from Peter Cordes --- (In reply to Jakub Jelinek from comment #2) > It doesn't always zero, it can be pretty arbitrary. Is if feasible have it just load the first vector of elements, instead of broadcasting the identity value? i.

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #4 from Jakub Jelinek --- What we should do is first vectorize the main simd loop and then, once we've determined the vectorization factor thereof etc., see if there is any related preparation and finalization loop around it and try t

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #5 from Richard Biener --- (In reply to Jakub Jelinek from comment #2) > (In reply to Richard Biener from comment #1) > > If OMP SIMD always zeros the vector then it could also emit the maybe easier > > to optimize > > > > WITH_SIZ

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-26 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #6 from Richard Biener --- Author: rguenth Date: Fri May 26 07:14:52 2017 New Revision: 248481 URL: https://gcc.gnu.org/viewcvs?rev=248481&root=gcc&view=rev Log: 2017-05-26 Richard Biener PR tree-optimization/80844

[Bug tree-optimization/80844] OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads)

2017-05-26 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80844 --- Comment #7 from Richard Biener --- Maybe we can simply set loop->force_vectorize on the prologue / epilogue loops. Hmm, seems to be generated before we have a CFG ...