[all-commits] [llvm/llvm-project] abd36f: [VPlan] Introduce code to limit querying VPValues ...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Mon Aug 30 00:12:59 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: abd36fe512a6ba8de51bca7911322ae8fa1b0a78
https://github.com/llvm/llvm-project/commit/abd36fe512a6ba8de51bca7911322ae8fa1b0a78
Author: Florian Hahn <flo at fhahn.com>
Date: 2021-08-30 (Mon, 30 Aug 2021)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Introduce code to limit querying VPValues using IR references.
After applying VPlan-to-VPlan transformations, using IR references to
query VPlan values may be incorrect, as the IR is not in sync with the
VPlan any longer.
To better detect such mis-matches, this patch introduces a new flag to
VPlans to indicate whether it is safe to query VPValues using IR values.
getVPValue is updated to assert if it is called when the flag indicates
it is not safe any longer.
There is an escape hatch via an extra argument, because there are 3
places that need to be fixed first. Those are
1. truncateToMinimalBitwidths
2. clearReductionWrapFlags
3. fixLCSSAPHIs
As a first step, this flag will help preventing new code from violating
this property.
Any suggestions with respect to naming very welcome!
Reviewed By: Ayal
Differential Revision: https://reviews.llvm.org/D108573
More information about the All-commits
mailing list