[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-13 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer abandoned this revision. SjoerdMeijer added a comment. Every day is a school day, and Hal taught me something ;-) As I wrote in the thread on the llvm dev list, with Hal's explanations, I don't think I have a case for this anymore, and so will abandon it (please let me know if you

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-10 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added a comment. > Now on the practical side. If whatever we decide here changes how the pragma > behaves from today, we need to have a wider discussion and agreement at > llvm-dev. Yep, forgot about that, thanks for the suggestion. I've just posted this message to the list: http

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-09 Thread Hideki Saito via Phabricator via cfe-commits
hsaito added a comment. In D66796#1663868 , @SjoerdMeijer wrote: > That's exactly the reason why I think `vectorize(disable)` should disable > vectorisation for that loop. I just don't see what else a user would expect. I agree with you. Now on the pr

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-09 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added a comment. And thanks Florian for getting this discussion going again! Will definitely make this clear(er) in this description and commit message once we agree on it. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D66796/new/ https://reviews.llvm.org/D66796

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-09 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added a comment. Hi Hideki, I think you're comments are spot on: > It all depends on to whom we are providing these pragmas. Pragma's are user-facing "options" to override or force compiler decision making. I don't think there's another way to look at it, but please correct me i

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-09 Thread Hideki Saito via Phabricator via cfe-commits
hsaito added a comment. There are two ways to think. 1. vectorize(disable) as in disable the LoopVectorize pass itself. 2. vectorize(disable) as in disabling the loop vectorization transformation It all depends on to whom we are providing these pragmas. If we are providing pragmas for progr

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-09 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. IMO it is fine to say ` pragma vectorize(disable)` disables the vectorizer completely, including interleaving. @Meinersbur, what do you think? I think it would be good to make that clear in the commit message. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D66796/n

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-09-03 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added a comment. friendly ping. Shall we get this in, so that I can commit this and D66290 ? Then, we can perhaps continue the interleave discussion separately? I will then return to the doc patch first in D66199

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-08-28 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added a comment. > Therefore, vectorize(disable) would also disable interleaving? I don't have strong opinions on this. I think there's something to say for both options that we have (i.e. `vectorize(disable)` disables interleaving or enables it). But I think it was @fhahn who ment

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-08-27 Thread Michael Kruse via Phabricator via cfe-commits
Meinersbur added a comment. Therefore, `vectorize(disable)` would also disable interleaving? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D66796/new/ https://reviews.llvm.org/D66796 ___ cfe-commits mailing list cfe-commits@lists.llvm.org ht

[PATCH] D66796: [clang] Loop pragma vectorize(disable)

2019-08-27 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer created this revision. SjoerdMeijer added reviewers: fhahn, Meinersbur, hsaito, Ayal. This changes the behaviour of vectorize(disable). I.e., disabling vectorization now means disabling vectorization, and not setting the vectorization width to 1. This is a follow up of the discussion