[llvm] 592199c - [LV] Use interface routines instead of internal variables
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Fri May 12 16:27:25 PDT 2023
Author: Philip Reames
Date: 2023-05-12T16:27:12-07:00
New Revision: 592199c8fe58b2b102b3ca4019d17e25f8090be4
URL: https://github.com/llvm/llvm-project/commit/592199c8fe58b2b102b3ca4019d17e25f8090be4
DIFF: https://github.com/llvm/llvm-project/commit/592199c8fe58b2b102b3ca4019d17e25f8090be4.diff
LOG: [LV] Use interface routines instead of internal variables
This makes a (possible) change to the internal representation easier in the future, and makes the code easier to read now.
Added:
Modified:
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
index c619c523700af..32fb7ef7bbd13 100644
--- a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+++ b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
@@ -9638,7 +9638,7 @@ void VPWidenMemoryInstructionRecipe::execute(VPTransformState &State) {
auto *DataTy = VectorType::get(ScalarDataTy, State.VF);
const Align Alignment = getLoadStoreAlignment(&Ingredient);
- bool CreateGatherScatter = !Consecutive;
+ bool CreateGatherScatter = !isConsecutive();
auto &Builder = State.Builder;
InnerLoopVectorizer::VectorParts BlockInMaskParts(State.UF);
@@ -9655,13 +9655,13 @@ void VPWidenMemoryInstructionRecipe::execute(VPTransformState &State) {
// or query DataLayout for a more suitable index type otherwise.
const DataLayout &DL =
Builder.GetInsertBlock()->getModule()->getDataLayout();
- Type *IndexTy = State.VF.isScalable() && (Reverse || Part > 0)
+ Type *IndexTy = State.VF.isScalable() && (isReverse() || Part > 0)
? DL.getIndexType(ScalarDataTy->getPointerTo())
: Builder.getInt32Ty();
bool InBounds = false;
if (auto *gep = dyn_cast<GetElementPtrInst>(Ptr->stripPointerCasts()))
InBounds = gep->isInBounds();
- if (Reverse) {
+ if (isReverse()) {
// If the address is consecutive but reversed, then the
// wide store needs to start at the last vector element.
// RunTimeVF = VScale * VF.getKnownMinValue()
@@ -9701,7 +9701,7 @@ void VPWidenMemoryInstructionRecipe::execute(VPTransformState &State) {
NewSI = Builder.CreateMaskedScatter(StoredVal, VectorGep, Alignment,
MaskPart);
} else {
- if (Reverse) {
+ if (isReverse()) {
// If we store to reverse consecutive memory locations, then we need
// to reverse the order of elements in the stored value.
StoredVal = Builder.CreateVectorReverse(StoredVal, "reverse");
More information about the llvm-commits
mailing list