[all-commits] [llvm/llvm-project] 021685: [Clang] Pragma vectorize_width() implies vectorize...
sjoerdmeijer via All-commits
all-commits at lists.llvm.org
Wed Dec 11 02:47:05 PST 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 021685491727e023aeae9ca272a2d6cd727e20e4
https://github.com/llvm/llvm-project/commit/021685491727e023aeae9ca272a2d6cd727e20e4
Author: Sjoerd Meijer <sjoerd.meijer at arm.com>
Date: 2019-12-11 (Wed, 11 Dec 2019)
Changed paths:
M clang/lib/CodeGen/CGLoopInfo.cpp
A clang/test/CodeGenCXX/pragma-loop-pr27643.cpp
M clang/test/CodeGenCXX/pragma-loop.cpp
Log Message:
-----------
[Clang] Pragma vectorize_width() implies vectorize(enable)
Let's try this again; this has been reverted/recommited a few times. Last time
this got reverted because for this loop:
void a() {
#pragma clang loop vectorize(disable)
for (;;)
;
}
vectorisation was incorrectly enabled and the vectorize.enable metadata was set
due to a logic error. But with this fixed, we now imply vectorisation when:
1) vectorisation is enabled, which means: VectorizeWidth > 1,
2) and don't want to add it when it is disabled or enabled, otherwise we would
be incorrectly setting it or duplicating the metadata, respectively.
This should fix PR27643.
Differential Revision: https://reviews.llvm.org/D69628
More information about the All-commits
mailing list