| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | InstSimplifyFolder.h | 81 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 D | TargetFolder.h | 118 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 D | ConstantFolder.h | 107 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 D | IRBuilderFolder.h | 56 virtual Value *FoldGEP(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList, 62 ArrayRef<unsigned> IdxList) const = 0; 65 ArrayRef<unsigned> IdxList) const = 0;
|
| H A D | NoFolder.h | 78 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 D | Constants.h | 1272 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 D | Instructions.h | 960 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 D | IRBuilder.h | 1928 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 D | CGBuilder.h | 340 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 D | CGExprScalar.cpp | 6055 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 D | CGExpr.cpp | 6699 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 D | CodeGenFunction.h | 5230 ArrayRef<llvm::Value *> IdxList, 5235 Address EmitCheckedInBoundsGEP(Address Addr, ArrayRef<llvm::Value *> IdxList,
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | ConstantsContext.h | 202 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 D | Instructions.cpp | 1523 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 D | Core.cpp | 1825 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 D | IRBuilder.cpp | 1156 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 D | Constants.cpp | 2788 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 D | HexagonCommonGEP.cpp | 1087 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 D | RegisterInfoEmitter.cpp | 1356 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 D | BPFAbstractMemberAccess.cpp | 417 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 D | Instruction.cpp | 788 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 D | Instruction.h | 1690 LLVM_ABI static Value *create(Type *Ty, Value *Ptr, ArrayRef<Value *> IdxList,
|