Home
last modified time | relevance | path

Searched refs:IdxList (Results 1 – 22 of 22) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DInstSimplifyFolder.h81 Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList, in FoldGEP() argument
83 return simplifyGEPInst(Ty, Ptr, IdxList, NW, SQ); in FoldGEP()
91 ArrayRef<unsigned> IdxList) const override { in FoldExtractValue() argument
92 return simplifyExtractValueInst(Agg, IdxList, SQ); in FoldExtractValue()
96 ArrayRef<unsigned> IdxList) const override { in FoldInsertValue() argument
97 return simplifyInsertValueInst(Agg, Val, IdxList, SQ); in FoldInsertValue()
H A DTargetFolder.h118 Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList, in FoldGEP() argument
125 if (any_of(IdxList, [](Value *V) { return !isa<Constant>(V); })) in FoldGEP()
127 return Fold(ConstantExpr::getGetElementPtr(Ty, PC, IdxList, NW)); in FoldGEP()
143 ArrayRef<unsigned> IdxList) const override { in FoldExtractValue() argument
145 return ConstantFoldExtractValueInstruction(CAgg, IdxList); in FoldExtractValue()
150 ArrayRef<unsigned> IdxList) const override { in FoldInsertValue() argument
154 return ConstantFoldInsertValueInstruction(CAgg, CVal, IdxList); in FoldInsertValue()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DConstantFolder.h107 Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList, in FoldGEP() argument
114 if (any_of(IdxList, [](Value *V) { return !isa<Constant>(V); })) in FoldGEP()
117 return ConstantExpr::getGetElementPtr(Ty, PC, IdxList, NW); in FoldGEP()
132 ArrayRef<unsigned> IdxList) const override { in FoldExtractValue() argument
134 return ConstantFoldExtractValueInstruction(CAgg, IdxList); in FoldExtractValue()
139 ArrayRef<unsigned> IdxList) const override { in FoldInsertValue() argument
143 return ConstantFoldInsertValueInstruction(CAgg, CVal, IdxList); in FoldInsertValue()
H A DIRBuilderFolder.h56 virtual Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList,
62 ArrayRef<unsigned> IdxList) const = 0;
65 ArrayRef<unsigned> IdxList) const = 0;
H A DNoFolder.h78 Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList, in FoldGEP() argument
88 ArrayRef<unsigned> IdxList) const override { in FoldExtractValue() argument
93 ArrayRef<unsigned> IdxList) const override { in FoldInsertValue() argument
H A DConstants.h1272 getGetElementPtr(Type *Ty, Constant *C, ArrayRef<Constant *> IdxList,
1277 Ty, C, ArrayRef((Value *const *)IdxList.data(), IdxList.size()), NW,
1292 getGetElementPtr(Type *Ty, Constant *C, ArrayRef<Value *> IdxList,
1300 ArrayRef<Constant *> IdxList) {
1301 return getGetElementPtr(Ty, C, IdxList, GEPNoWrapFlags::inBounds());
1311 ArrayRef<Value *> IdxList) {
1312 return getGetElementPtr(Ty, C, IdxList, GEPNoWrapFlags::inBounds());
H A DInstructions.h960 ArrayRef<Value *> IdxList, AllocInfo AllocInfo,
963 LLVM_ABI void init(Value *Ptr, ArrayRef<Value *> IdxList,
974 ArrayRef<Value *> IdxList,
977 unsigned Values = 1 + unsigned(IdxList.size());
981 PointeeType, Ptr, IdxList, AllocMarker, NameStr, InsertBefore);
985 ArrayRef<Value *> IdxList, GEPNoWrapFlags NW,
989 Create(PointeeType, Ptr, IdxList, NameStr, InsertBefore);
997 CreateInBounds(Type *PointeeType, Value *Ptr, ArrayRef<Value *> IdxList,
1000 return Create(PointeeType, Ptr, IdxList, GEPNoWrapFlags::inBounds(),
1028 LLVM_ABI static Type *getIndexedType(Type *Ty, ArrayRef<Value *> IdxList);
[all …]
H A DIRBuilder.h1928 Value *CreateGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList,
1931 if (auto *V = Folder.FoldGEP(Ty, Ptr, IdxList, NW))
1933 return Insert(GetElementPtrInst::Create(Ty, Ptr, IdxList, NW), Name);
1936 Value *CreateInBoundsGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList,
1938 return CreateGEP(Ty, Ptr, IdxList, Name, GEPNoWrapFlags::inBounds());
/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DCGBuilder.h340 Address CreateGEP(Address Addr, ArrayRef<llvm::Value *> IdxList,
345 return RawAddress(CreateGEP(Addr.getElementType(), Ptr, IdxList, Name, NW),
350 Address CreateInBoundsGEP(Address Addr, ArrayRef<llvm::Value *> IdxList,
355 IdxList, Name),
H A DCGExprScalar.cpp6055 ArrayRef<Value *> IdxList, in EmitCheckedInBoundsGEP() argument
6064 Value *GEPVal = Builder.CreateGEP(ElemTy, Ptr, IdxList, Name, NWFlags); in EmitCheckedInBoundsGEP()
6172 Address Addr, ArrayRef<Value *> IdxList, llvm::Type *elementType, in EmitCheckedInBoundsGEP() argument
6180 return Builder.CreateGEP(Addr, IdxList, elementType, Align, Name, NWFlags); in EmitCheckedInBoundsGEP()
6185 IdxList, SignedIndices, IsSubtraction, Loc, Name), in EmitCheckedInBoundsGEP()
H A DCGExpr.cpp6699 auto [T, IdxList] = WorkList.pop_back_val(); in FlattenAccessAndType()
6705 llvm::SmallVector<llvm::Value *, 4> IdxListCopy = IdxList; in FlattenAccessAndType()
6729 llvm::SmallVector<llvm::Value *, 4> IdxListCopy = IdxList; in FlattenAccessAndType()
6737 Builder.CreateInBoundsGEP(Addr, IdxList, LLVMT, Align, "vector.gep"); in FlattenAccessAndType()
6750 Builder.CreateInBoundsGEP(Addr, IdxList, LLVMT, Align, "gep"); in FlattenAccessAndType()
H A DCodeGenFunction.h5230 ArrayRef<llvm::Value *> IdxList,
5235 Address EmitCheckedInBoundsGEP(Address Addr, ArrayRef<llvm::Value *> IdxList,
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DConstantsContext.h202 ArrayRef<Constant *> IdxList, Type *DestTy,
208 Create(Type *SrcElementTy, Constant *C, ArrayRef<Constant *> IdxList, in Create() argument
210 IntrusiveOperandsAllocMarker AllocMarker{unsigned(IdxList.size() + 1)}; in Create()
212 GetElementPtrConstantExpr(SrcElementTy, C, IdxList, DestTy, in Create()
H A DInstructions.cpp1523 void GetElementPtrInst::init(Value *Ptr, ArrayRef<Value *> IdxList, in init() argument
1525 assert(getNumOperands() == 1 + IdxList.size() && in init()
1528 llvm::copy(IdxList, op_begin() + 1); in init()
1572 static Type *getIndexedTypeInternal(Type *Ty, ArrayRef<IndexTy> IdxList) { in getIndexedTypeInternal() argument
1573 if (IdxList.empty()) in getIndexedTypeInternal()
1575 for (IndexTy V : IdxList.slice(1)) { in getIndexedTypeInternal()
1583 Type *GetElementPtrInst::getIndexedType(Type *Ty, ArrayRef<Value *> IdxList) { in getIndexedType() argument
1584 return getIndexedTypeInternal(Ty, IdxList); in getIndexedType()
1588 ArrayRef<Constant *> IdxList) { in getIndexedType() argument
1589 return getIndexedTypeInternal(Ty, IdxList); in getIndexedType()
[all …]
H A DCore.cpp1825 ArrayRef<Constant *> IdxList(unwrap<Constant>(ConstantIndices, NumIndices), in LLVMConstGEP2() local
1828 return wrap(ConstantExpr::getGetElementPtr(unwrap(Ty), Val, IdxList)); in LLVMConstGEP2()
1834 ArrayRef<Constant *> IdxList(unwrap<Constant>(ConstantIndices, NumIndices), in LLVMConstInBoundsGEP2() local
1837 return wrap(ConstantExpr::getInBoundsGetElementPtr(unwrap(Ty), Val, IdxList)); in LLVMConstInBoundsGEP2()
1845 ArrayRef<Constant *> IdxList(unwrap<Constant>(ConstantIndices, NumIndices), in LLVMConstGEPWithNoWrapFlags() local
1849 unwrap(Ty), Val, IdxList, mapFromLLVMGEPNoWrapFlags(NoWrapFlags))); in LLVMConstGEPWithNoWrapFlags()
4040 ArrayRef<Value *> IdxList(unwrap(Indices), NumIndices); in LLVMBuildGEP2() local
4041 return wrap(unwrap(B)->CreateGEP(unwrap(Ty), unwrap(Pointer), IdxList, Name)); in LLVMBuildGEP2()
4047 ArrayRef<Value *> IdxList(unwrap(Indices), NumIndices); in LLVMBuildInBoundsGEP2() local
4049 unwrap(B)->CreateInBoundsGEP(unwrap(Ty), unwrap(Pointer), IdxList, Name)); in LLVMBuildInBoundsGEP2()
[all …]
H A DIRBuilder.cpp1156 SmallVector<Value *, 4> IdxList(Dimension, Zero); in CreatePreserveArrayAccessIndex() local
1157 IdxList.push_back(LastIndexV); in CreatePreserveArrayAccessIndex()
1159 Type *ResultType = GetElementPtrInst::getGEPReturnType(Base, IdxList); in CreatePreserveArrayAccessIndex()
H A DConstants.cpp2788 Type *SrcElementTy, Constant *C, ArrayRef<Constant *> IdxList, Type *DestTy, in GetElementPtrConstantExpr() argument
2792 ResElementTy(GetElementPtrInst::getIndexedType(SrcElementTy, IdxList)), in GetElementPtrConstantExpr()
2796 for (unsigned i = 0, E = IdxList.size(); i != E; ++i) in GetElementPtrConstantExpr()
2797 OperandList[i+1] = IdxList[i]; in GetElementPtrConstantExpr()
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonCommonGEP.cpp1087 SmallVector<Value*, 4> IdxList; in fabricateGEP() local
1093 IdxList.push_back(ConstantInt::get(Int32Ty, 0)); in fabricateGEP()
1100 IdxList.push_back(N->Idx); in fabricateGEP()
1107 NewInst = GetElementPtrInst::Create(InpTy, Input, IdxList, "cgep", At); in fabricateGEP()
/freebsd/contrib/llvm-project/llvm/utils/TableGen/
H A DRegisterInfoEmitter.cpp1356 typedef std::vector<const CodeGenSubRegIndex *> IdxList; in runTargetDesc() typedef
1357 SmallVector<IdxList, 8> SuperRegIdxLists(RegisterClasses.size()); in runTargetDesc()
1358 SequenceToOffsetTable<IdxList, deref<std::less<>>> SuperRegIdxSeqs; in runTargetDesc()
1368 IdxList &SRIList = SuperRegIdxLists[RC.EnumValue]; in runTargetDesc()
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFAbstractMemberAccess.cpp417 SmallVector<Value *, 4> IdxList(Dimension, Zero); in replaceWithGEP() local
418 IdxList.push_back(Call->getArgOperand(GEPIndex)); in replaceWithGEP()
421 Call->getArgOperand(0), IdxList, in replaceWithGEP()
/freebsd/contrib/llvm-project/llvm/lib/SandboxIR/
H A DInstruction.cpp788 ArrayRef<Value *> IdxList, InsertPosition Pos, in create() argument
792 LLVMIdxList.reserve(IdxList.size()); in create()
793 for (Value *Idx : IdxList) in create()
/freebsd/contrib/llvm-project/llvm/include/llvm/SandboxIR/
H A DInstruction.h1690 LLVM_ABI static Value *create(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList,