Searched refs:GEPs (Results 1 - 5 of 5) sorted by relevance

/freebsd-current/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFPreserveStaticOffset.cpp331 static bool foldGEPChainAsStructAccess(SmallVector<GetElementPtrInst *> &GEPs, argument
333 if (GEPs.empty())
336 if (!all_of(GEPs, [=](GetElementPtrInst *GEP) {
341 GetElementPtrInst *First = GEPs[0];
348 for (auto *Iter = GEPs.begin() + 1; Iter != GEPs.end(); ++Iter) {
371 static bool foldGEPChainAsU8Access(SmallVector<GetElementPtrInst *> &GEPs, argument
373 if (GEPs.empty())
376 GetElementPtrInst *First = GEPs[0];
381 for (GetElementPtrInst *GEP : GEPs) {
407 allZeroIndices(SmallVector<GetElementPtrInst *> &GEPs) argument
[all...]
/freebsd-current/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/
H A DSLPVectorizer.h111 /// collected in GEPs.
165 GEPListMap GEPs; member in struct:llvm::SLPVectorizerPass
/freebsd-current/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86FastISel.cpp829 SmallVector<const Value *, 32> GEPs; local
901 // Pattern-match simple GEPs.
957 GEPs.push_back(V);
973 for (const Value *I : reverse(GEPs))
/freebsd-current/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DSLPVectorizer.cpp3907 // GEPs or have > 2 operands, we end up with a gather node, which just
5378 // We don't combine GEPs with complicated (nested) indexing.
5389 // We can't combine several GEPs into one vector if they operate on
5403 // We don't combine GEPs with non-constant indexes.
6153 LLVM_DEBUG(dbgs() << "SLP: added a vector of GEPs.\n");
7885 // Calculate cost difference from vectorizing set of GEPs.
7929 "Calculated GEPs cost for Tree"));
7938 // All the scalar GEPs will be removed as a result of vectorization.
7961 "Calculated GEPs cost for Tree"));
8330 // Estimate cost of GEPs sinc
[all...]
/freebsd-current/contrib/llvm-project/llvm/lib/CodeGen/
H A DCodeGenPrepare.cpp113 STATISTIC(NumGEPsElim, "Number of GEPs converted to casts");
151 cl::desc("Address sinking in CGP using GEPs."));
343 /// Keep track of GEPs accessing the same data structures such as structs or
350 /// Keep track of new GEP base after splitting the GEPs having large offset.
353 /// Map serial numbers to Large offset GEPs.
2367 // objects whose address is used in casts and GEPs, though it only makes
2368 // sense for GEPs if the offset is a multiple of the desired alignment and
2470 auto GEPs = std::move(it->second); local
2471 LargeOffsetGEPMap[ArgVal].append(GEPs.begin(), GEPs
[all...]

Completed in 282 milliseconds