[PATCH] D62997: [LV] Share the LV illegality reporting with LoopVectorize. NFC.
Pavel Samolysov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 18 08:07:39 PDT 2019
psamolysov added a comment.
@rengolin I think the pass name is not the problem. Before the method was used and the method just asks "Always Print":
const char *LoopVectorizeHints::vectorizeAnalysisPassName() const {
if (getWidth() == 1)
return LV_NAME;
if (getForce() == LoopVectorizeHints::FK_Disabled)
return LV_NAME;
if (getForce() == LoopVectorizeHints::FK_Undefined && getWidth() == 0)
return LV_NAME;
return OptimizationRemarkAnalysis::AlwaysPrint;
}
For example,
; CHECK: remark: source.cpp:5:9: loop not vectorized: loop control flow is not understood by vectorizer
works on the master branch even without -pass-remarks-missed/-pass-remarks-analysis options. Writing into the `OptimizationRemarkMissed` (for example, `loop not vectorized (Force=true, Vector Width=4)` requires -pass-remarks-missed even on the master branch. New behavior: reasons reported only when the -pass-remarks-analysis parameter is used.
The code was introduced by Tyler Nowicki in 2015:
commit e0f400feaa6b0f830cbbc288d0858c506046357b <https://reviews.llvm.org/rGe0f400feaa6b0f830cbbc288d0858c506046357b>
Author: Tyler Nowicki <tyler.nowicki at gmail.com>
Date: Thu Aug 27 01:02:04 2015 +0000
Improved printing of analysis diagnostics in the loop vectorizer.
This patch ensures that every analysis diagnostic produced by the vectorizer
will be printed if the loop has a vectorization hint on it. The condition has
also been improved to prevent printing when a disabling hint is specified.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D62997/new/
https://reviews.llvm.org/D62997
More information about the llvm-commits
mailing list