/external/llvm/lib/Target/R600/ |
AMDGPUTargetTransformInfo.cpp | 103 const GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I); 104 if (!GEP) 106 const Value *Ptr = GEP->getPointerOperand();
|
AMDGPUPromoteAlloca.cpp | 115 GetElementPtrInst *GEP = cast<GetElementPtrInst>(Ptr); 117 return GEPIdx[GEP]; 120 static Value* GEPToVectorIndex(GetElementPtrInst *GEP) { 122 if (GEP->getNumOperands() != 3) 125 ConstantInt *I0 = dyn_cast<ConstantInt>(GEP->getOperand(1)); 129 return GEP->getOperand(2); 166 GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(AllocaUser); 167 if (!GEP) { 175 Value *Index = GEPToVectorIndex(GEP); 177 // If we can't compute a vector index from this GEP, then we can' [all...] |
/external/llvm/lib/Target/NVPTX/ |
NVVMReflect.cpp | 156 const ConstantExpr *GEP = cast<ConstantExpr>(Str); 158 const Value *Sym = GEP->getOperand(0);
|
/external/llvm/unittests/Linker/ |
LinkModulesTest.cpp | 76 Value *GEP = Builder.CreateGEP(GV, GEPIndices, "switch.gep"); 77 Value *Load = Builder.CreateLoad(GEP, "switch.load");
|
/external/chromium_org/third_party/mesa/src/src/gallium/drivers/radeon/ |
R600KernelParameters.cpp | 159 getElementPtrInst* GEP = dyn_cast<getElementPtrInst>(Val); 160 getElementPtrInst::op_iterator I = GEP->op_begin(); 162 for (++I; I != GEP->op_end(); ++I) { 247 GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(V); 257 if (GEP && GEP->getType()->getAddressSpace() != Addrspace) { 258 Value *Op = GEP->getPointerOperand(); 266 std::vector<Value*> Params(GEP->idx_begin(), GEP->idx_end()); 270 GEP2->setIsInBounds(GEP->isInBounds()) [all...] |
/external/llvm/lib/CodeGen/ |
GlobalMerge.cpp | 222 Constant *GEP = ConstantExpr::getInBoundsGetElementPtr(MergedGV, Idx); 223 Globals[k]->replaceAllUsesWith(GEP); 228 auto *PTy = cast<PointerType>(GEP->getType()); 230 Linkage, Name, GEP, &M);
|
/external/llvm/unittests/IR/ |
ConstantsTest.cpp | 267 Constant *GEP = ConstantExpr::getGetElementPtr(Global, One); 268 EXPECT_DEATH(Global->replaceAllUsesWith(GEP),
|
/external/mesa3d/src/gallium/drivers/radeon/ |
R600KernelParameters.cpp | 159 getElementPtrInst* GEP = dyn_cast<getElementPtrInst>(Val); 160 getElementPtrInst::op_iterator I = GEP->op_begin(); 162 for (++I; I != GEP->op_end(); ++I) { 247 GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(V); 257 if (GEP && GEP->getType()->getAddressSpace() != Addrspace) { 258 Value *Op = GEP->getPointerOperand(); 266 std::vector<Value*> Params(GEP->idx_begin(), GEP->idx_end()); 270 GEP2->setIsInBounds(GEP->isInBounds()) [all...] |
/external/llvm/lib/Transforms/InstCombine/ |
InstCombineLoadStoreAlloca.cpp | 77 if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I)) { 78 // If the GEP has all zero indices, it doesn't offset the pointer. If it 81 std::make_pair(I, IsOffset || !GEP->hasAllZeroIndices())); 200 Instruction *GEP = 202 InsertNewInstBefore(GEP, *It); 206 return ReplaceInstUsesWith(AI, GEP); 313 // see if a trivial 'gep P, 0, 0' will help matters. Only do this for 393 // load(gep null, ...) -> unreachable 485 /// NewGEPIndices - If SrcPTy is an aggregate type, we can emit a "noop gep" 492 // see if a trivial 'gep P, 0, 0' will help matters. Only do this fo [all...] |
InstCombinePHI.cpp | 137 // This is true if all GEP bases are allocas and if all indices into them are 150 GetElementPtrInst *GEP= dyn_cast<GetElementPtrInst>(PN.getIncomingValue(i)); 151 if (!GEP || !GEP->hasOneUse() || GEP->getType() != FirstInst->getType() || 152 GEP->getNumOperands() != FirstInst->getNumOperands()) 155 AllInBounds &= GEP->isInBounds(); 159 (!isa<AllocaInst>(GEP->getOperand(0)) || 160 !GEP->hasAllConstantIndices())) 165 if (FirstInst->getOperand(op) == GEP->getOperand(op) [all...] |
InstCombineVectorOps.cpp | 735 GetElementPtrInst *GEP = GetElementPtrInst::Create(Ptr, Idx, "", I); 736 GEP->setIsInBounds(cast<GetElementPtrInst>(I)->isInBounds()); 737 return GEP; [all...] |
InstructionCombining.cpp | 98 Value *InstCombiner::EmitGEPOffset(User *GEP) { 99 return llvm::EmitGEPOffset(Builder, *getDataLayout(), GEP); [all...] |
/external/llvm/lib/Transforms/Utils/ |
CodeExtractor.cpp | 367 GetElementPtrInst *GEP = 369 RewriteVal = new LoadInst(GEP, "loadgep_" + inputs[i]->getName(), TI); 468 GetElementPtrInst *GEP = 471 codeReplacer->getInstList().push_back(GEP); 472 StoreInst *SI = new StoreInst(StructValues[i], GEP); 494 GetElementPtrInst *GEP 497 codeReplacer->getInstList().push_back(GEP); 498 Output = GEP; 609 GetElementPtrInst *GEP = 613 new StoreInst(outputs[out], GEP, NTRet) [all...] |
SimplifyCFG.cpp | [all...] |
/external/llvm/tools/bugpoint/ |
Miscompilation.cpp | [all...] |
/external/llvm/unittests/Transforms/Utils/ |
Cloning.cpp | 139 GetElementPtrInst *GEP = GetElementPtrInst::Create(V, ops); 140 EXPECT_FALSE(this->clone(GEP)->isInBounds()); 142 GEP->setIsInBounds(); 143 EXPECT_TRUE(this->clone(GEP)->isInBounds());
|
/external/llvm/lib/Transforms/IPO/ |
ArgumentPromotion.cpp | 76 /// A vector used to hold the indices of a single GEP instruction 321 // We can only promote this argument if all of the uses are loads, or are GEP 358 if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(V)) { 359 V = GEP->getPointerOperand(); 362 Indices.reserve(GEP->getNumIndices()); 363 for (User::op_iterator II = GEP->idx_begin(), IE = GEP->idx_end(); 368 // We found a non-constant GEP index for this argument? Bail out 377 // Direct loads are equivalent to a GEP with a single 0 index. 383 // not (GEP+)loads, or any (GEP+)loads that are not safe to promote [all...] |
GlobalOpt.cpp | 168 if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I)) { 169 if (!GEP->hasAllConstantIndices()) 314 } else if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(U)) { 315 // Do not transform "gepinst (gep constexpr (GV))" here, because forming 316 // "gepconstexpr (gep constexpr (GV))" will cause the two gep's to fold 319 if (!isa<ConstantExpr>(GEP->getOperand(0))) { 321 dyn_cast_or_null<ConstantExpr>(ConstantFoldInstruction(GEP, DL, TLI)); 325 // If the initializer is an all-null value and we have an inbounds GEP, 326 // we already know what the result of any load from that GEP is [all...] |
/external/llvm/lib/Analysis/ |
ScalarEvolutionExpander.cpp | 332 /// into GEP indices. 365 /// a GEP instead of using ptrtoint+arithmetic+inttoptr. This helps 410 // operands into GEP indices, at each level. The first index in a GEP 512 // If none of the operands were convertible to proper GEP indices, cast 526 // Fold a GEP with constant operands. 531 // Do a quick scan to see if we have this GEP nearby. If so, reuse it. 563 // Emit a GEP. 564 Value *GEP = Builder.CreateGEP(V, Idx, "uglygep"); 565 rememberInstruction(GEP); [all...] |
/external/llvm/lib/Transforms/Instrumentation/ |
GCOVProfiling.cpp | 917 Value *GEP = Builder.CreateGEP(Arg, ZExtPred); 918 Value *Counter = Builder.CreateLoad(GEP, "counter"); [all...] |
/external/clang/lib/CodeGen/ |
CGExprCXX.cpp | [all...] |
/external/llvm/lib/IR/ |
Constants.cpp | 708 /// getElementValue - Return a zero of the right value for the specified GEP 716 /// getElementValue - Return a zero of the right value for the specified GEP 741 /// getElementValue - Return an undef of the right value for the specified GEP 749 /// getElementValue - Return an undef of the right value for the specified GEP [all...] |
Verifier.cpp | 300 void visitGetElementPtrInst(GetElementPtrInst &GEP); [all...] |
/external/llvm/include/llvm/IR/ |
Instructions.h | 765 // message on bad indexes for a gep instruction. 813 GetElementPtrInst *GEP = Create(Ptr, IdxList, NameStr, InsertBefore); 814 GEP->setIsInBounds(true); 815 return GEP; 821 GetElementPtrInst *GEP = Create(Ptr, IdxList, NameStr, InsertAtEnd); 822 GEP->setIsInBounds(true); 823 return GEP; [all...] |
/external/llvm/lib/Transforms/Scalar/ |
SROA.cpp | 308 /// a GEP back into the bounds using it elsewhere) and nor is the PHI, but we 431 // inbounds, then the result of the GEP is a poison value and we can 633 if (GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I)) { 634 if (!GEP->hasAllZeroIndices()) 635 return GEP; [all...] |