[PATCH] Generate warning when explicitly specified vectorization fails
Diego Novillo
dnovillo at google.com
Thu Jul 3 09:23:12 PDT 2014
On 2/07/2014, 22:17 , Tyler Nowicki wrote:
> @@ -1241,8 +1258,7 @@
> LoopVectorizationLegality LVL(L, SE, DL, DT, TLI, F);
> if (!LVL.canVectorize()) {
> DEBUG(dbgs() << "LV: Not vectorizing: Cannot prove legality.\n");
> - emitOptimizationRemarkMissed(F->getContext(), DEBUG_TYPE, *F,
> - L->getStartLoc(), Hints.emitRemark());
> + emitMissedWarning(F, L, Hints);
This change is raising the severity of this diagnostic. Do we really
want to cause build failures in this situation when the code is built
with -Werror?
I think I would be fine with it, if this diagnostic was only triggered
when the user specified a #pragma, but if the failure is in the
vectorizer, with no hints from the user, then I think a warning is too
strong. Even when using #pragma, I'm not sure I'd like a warning here.
> return false;
> }
>
> @@ -1276,8 +1292,7 @@
> emitOptimizationRemarkAnalysis(
> F->getContext(), DEBUG_TYPE, *F, L->getStartLoc(),
> "loop not vectorized due to NoImplicitFloat attribute");
> - emitOptimizationRemarkMissed(F->getContext(), DEBUG_TYPE, *F,
> - L->getStartLoc(), Hints.emitRemark());
> + emitMissedWarning(F, L, Hints);
Likewise.
Diego.
More information about the llvm-commits
mailing list