original) (raw)
MLIR: lib/Dialect/Affine/Analysis/LoopAnalysis.cpp File Reference (#include "[mlir/Dialect/Affine/Analysis/LoopAnalysis.h](LoopAnalysis%5F8h%5Fsource.html)"
#include "[mlir/Analysis/SliceAnalysis.h](SliceAnalysis%5F8h%5Fsource.html)"
#include "[mlir/Dialect/Affine/Analysis/AffineAnalysis.h](AffineAnalysis%5F8h%5Fsource.html)"
#include "[mlir/Dialect/Affine/Analysis/AffineStructures.h](AffineStructures%5F8h%5Fsource.html)"
#include "[mlir/Dialect/Affine/Analysis/NestedMatcher.h](NestedMatcher%5F8h%5Fsource.html)"
#include "[mlir/Dialect/Affine/Analysis/Utils.h](Dialect%5F2Affine%5F2Analysis%5F2Utils%5F8h%5Fsource.html)"
#include "[mlir/Dialect/Affine/IR/AffineValueMap.h](AffineValueMap%5F8h%5Fsource.html)"
#include "llvm/Support/MathExtras.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/Debug.h"
#include <numeric>
#include <optional>
#include <type_traits>
Go to the source code of this file.
Functions | |
---|---|
static bool | isAccessIndexInvariant (Value iv, Value index) |
Given an affine.for iv and an access index of type index, returns true if index is independent of iv and false otherwise. More... | |
template | |
static bool | isVectorElement (LoadOrStoreOp memoryOp) |
static bool | isVectorizableLoopBodyWithOpCond (AffineForOp loop, const VectorizableOpFun &isVectorizableOp, NestedPattern &vectorTransferMatcher) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "affine-loop-analysis"
◆ VectorizableOpFun
◆ isAccessIndexInvariant()
static bool isAccessIndexInvariant ( Value iv, Value index ) | static |
---|
◆ isVectorElement()
template
static bool isVectorElement ( LoadOrStoreOp memoryOp) | static |
---|
◆ isVectorizableLoopBodyWithOpCond()
static bool isVectorizableLoopBodyWithOpCond ( AffineForOp loop, const VectorizableOpFun & isVectorizableOp, NestedPattern & vectorTransferMatcher ) | static |
---|