/external/swiftshader/third_party/LLVM/lib/Transforms/IPO/ |
D | MergeFunctions.cpp | 181 bool isEquivalentGEP(const GEPOperator *GEP1, const GEPOperator *GEP2); 183 const GetElementPtrInst *GEP2) { in isEquivalentGEP() argument 184 return isEquivalentGEP(cast<GEPOperator>(GEP1), cast<GEPOperator>(GEP2)); in isEquivalentGEP() 346 const GEPOperator *GEP2) { in isEquivalentGEP() argument 349 if (TD && GEP1->hasAllConstantIndices() && GEP2->hasAllConstantIndices()) { in isEquivalentGEP() 351 SmallVector<Value *, 8> Indices2(GEP2->idx_begin(), GEP2->idx_end()); in isEquivalentGEP() 354 uint64_t Offset2 = TD->getIndexedOffset(GEP2->getPointerOperandType(), in isEquivalentGEP() 360 GEP2->getPointerOperand()->getType()) in isEquivalentGEP() 363 if (GEP1->getNumOperands() != GEP2->getNumOperands()) in isEquivalentGEP() 367 if (!enumerate(GEP1->getOperand(i), GEP2->getOperand(i))) in isEquivalentGEP() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/InstCombine/ |
D | select-gep.ll | 80 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds [4 x i32], [4 x i32]* [[P]], i64 2, i64 [[Y:… 82 ; CHECK-NEXT: [[SELECT:%.*]] = select i1 [[CMP]], i32* [[GEP1]], i32* [[GEP2]] 95 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds i32, i32* [[Q:%.*]], i64 [[X]] 97 ; CHECK-NEXT: [[SELECT:%.*]] = select i1 [[CMP]], i32* [[GEP1]], i32* [[GEP2]] 110 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds [4 x i32], [4 x i32]* [[Q:%.*]], i64 [[X]], … 112 ; CHECK-NEXT: [[SELECT:%.*]] = select i1 [[CMP]], i32* [[GEP1]], i32* [[GEP2]] 127 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds i32, i32* [[Q:%.*]], i64 [[Y:%.*]] 129 ; CHECK-NEXT: [[SELECT:%.*]] = select i1 [[CMP]], i32* [[GEP1]], i32* [[GEP2]]
|
D | unpack-fca.ll | 27 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 28 ; CHECK-NEXT: store i64 42, i64* [[GEP2]], align 8 80 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds [2 x %B], [2 x %B]* %ab.ptr, i64 0, i6… 82 ; CHECK-NEXT: store i8* [[EV2]], i8** [[GEP2]], align 8 106 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 107 ; CHECK-NEXT: [[LOAD2:%[a-z0-9\.]+]] = load i64, i64* [[GEP2]], align 8 162 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 163 ; CHECK-NEXT: store i64 42, i64* [[GEP2]], align 8 175 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds [2 x %B], [2 x %B]* %ab.ptr, i64 0, i6… 176 ; CHECK-NEXT: [[LOAD2:%[a-z0-9\.]+]] = load i64, i64* [[GEP2]], align 8
|
D | icmp-custom-dl.ll | 130 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr i8, i8* [[FOO]], i32 [[TMP2]] 132 ; CHECK-NEXT: [[CMP:%.*]] = icmp ugt i8* [[GEP2]], [[CAST1]] 148 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr i8, i8 addrspace(1)* [[FOO]], i16 [[J:%.*]] 150 ; CHECK-NEXT: [[CMP:%.*]] = icmp ugt i8 addrspace(1)* [[GEP2]], [[CAST1]]
|
D | sub.ll | 960 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds [100 x [100 x i8]], [100 x [100 x i8]]* %foo… 962 ; CHECK-NEXT: store i8* [[GEP2]], i8** @dummy_global2, align 8 979 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds [100 x [100 x i8]], [100 x [100 x i8]]* %foo… 981 ; CHECK-NEXT: [[CAST2:%.*]] = ptrtoint i8* [[GEP2]] to i64 999 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds [100 x [100 x i8]], [100 x [100 x i8]]* %foo… 1001 ; CHECK-NEXT: [[CAST2:%.*]] = ptrtoint i8* [[GEP2]] to i64 1003 ; CHECK-NEXT: store i8* [[GEP2]], i8** @dummy_global2, align 8
|
/external/llvm/test/Transforms/InstCombine/ |
D | unpack-fca.ll | 27 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 28 ; CHECK-NEXT: store i64 42, i64* [[GEP2]], align 8 71 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds [2 x %B], [2 x %B]* %ab.ptr, i64 0, i6… 73 ; CHECK-NEXT: store i8* [[EV2]], i8** [[GEP2]], align 8 97 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 98 ; CHECK-NEXT: [[LOAD2:%[a-z0-9\.]+]] = load i64, i64* [[GEP2]], align 8 153 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds %B, %B* %b.ptr, i64 0, i32 1 154 ; CHECK-NEXT: store i64 42, i64* [[GEP2]], align 8 166 ; CHECK-NEXT: [[GEP2:%[a-z0-9\.]+]] = getelementptr inbounds [2 x %B], [2 x %B]* %ab.ptr, i64 0, i6… 167 ; CHECK-NEXT: [[LOAD2:%[a-z0-9\.]+]] = load i64, i64* [[GEP2]], align 8
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/ |
D | MemCpyOptimizer.cpp | 79 GetElementPtrInst *GEP2 = dyn_cast<GetElementPtrInst>(Ptr2); in IsPointerOffset() local 85 if (GEP1 && GEP2 == 0 && GEP1->getOperand(0)->stripPointerCasts() == Ptr2) { in IsPointerOffset() 90 if (GEP2 && GEP1 == 0 && GEP2->getOperand(0)->stripPointerCasts() == Ptr1) { in IsPointerOffset() 91 Offset = GetOffsetFromIndex(GEP2, 1, VariableIdxFound, TD); in IsPointerOffset() 100 if (!GEP1 || !GEP2 || GEP1->getOperand(0) != GEP2->getOperand(0)) in IsPointerOffset() 105 for (; Idx != GEP1->getNumOperands() && Idx != GEP2->getNumOperands(); ++Idx) in IsPointerOffset() 106 if (GEP1->getOperand(Idx) != GEP2->getOperand(Idx)) in IsPointerOffset() 110 int64_t Offset2 = GetOffsetFromIndex(GEP2, Idx, VariableIdxFound, TD); in IsPointerOffset()
|
/external/llvm/lib/Analysis/ |
D | BasicAliasAnalysis.cpp | 822 const GEPOperator *GEP2, in aliasSameBasePointerGEPs() argument 827 GEP2->getPointerOperand()->stripPointerCasts() && in aliasSameBasePointerGEPs() 829 GEP2->getPointerOperand()->getType() && in aliasSameBasePointerGEPs() 835 if (GEP1->getNumIndices() != GEP2->getNumIndices() || in aliasSameBasePointerGEPs() 848 dyn_cast<ConstantInt>(GEP2->getOperand(GEP2->getNumOperands() - 1)); in aliasSameBasePointerGEPs() 897 if (GEP1->getOperand(i + 1) != GEP2->getOperand(i + 1)) in aliasSameBasePointerGEPs() 911 GEP2->getOperand(GEP2->getNumOperands() - 1), in aliasSameBasePointerGEPs() 1045 if (const GEPOperator *GEP2 = dyn_cast<GEPOperator>(V2)) { in aliasGEP() local 1049 isGEPBaseAtNegativeOffset(GEP2, DecompGEP2, DecompGEP1, V1Size)) in aliasGEP() 1088 GEP2->getPointerOperand()->stripPointerCasts() && in aliasGEP() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/SLPVectorizer/X86/ |
D | PR36280.ll | 7 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr float, float* [[P]], i64 2 9 ; CHECK-NEXT: [[P2:%.*]] = load float, float* [[GEP2]]
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Analysis/ |
D | BasicAliasAnalysis.cpp | 1005 const GEPOperator *GEP2, in aliasSameBasePointerGEPs() argument 1009 GEP2->getPointerOperand()->stripPointerCastsAndInvariantGroups() && in aliasSameBasePointerGEPs() 1010 GEP1->getPointerOperandType() == GEP2->getPointerOperandType() && in aliasSameBasePointerGEPs() 1016 if (GEP1->getNumIndices() != GEP2->getNumIndices() || in aliasSameBasePointerGEPs() 1029 dyn_cast<ConstantInt>(GEP2->getOperand(GEP2->getNumOperands() - 1)); in aliasSameBasePointerGEPs() 1078 if (GEP1->getOperand(i + 1) != GEP2->getOperand(i + 1)) in aliasSameBasePointerGEPs() 1093 Value *GEP2LastIdx = GEP2->getOperand(GEP2->getNumOperands() - 1); in aliasSameBasePointerGEPs() 1243 if (const GEPOperator *GEP2 = dyn_cast<GEPOperator>(V2)) { in aliasGEP() local 1247 isGEPBaseAtNegativeOffset(GEP2, DecompGEP2, DecompGEP1, V1Size)) in aliasGEP() 1288 GEP2->getPointerOperand()->stripPointerCastsAndInvariantGroups() && in aliasGEP() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/CodeGen/AArch64/GlobalISel/ |
D | legalize-vaarg.mir | 26 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP [[LOAD2]], [[C2]](s64) 27 ; CHECK: [[PTR_MASK:%[0-9]+]]:_(p0) = G_PTR_MASK [[GEP2]], 4
|
D | call-translator.ll | 81 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP [[ADDR]], [[CST2]](s64) 82 ; CHECK: G_STORE [[EXTA2]](s8), [[GEP2]](p0) :: (store 1 into %ir.addr + 16, align 8) 98 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP [[ADDR]], [[CST2]](s64) 99 ; CHECK: [[LD3:%[0-9]+]]:_(s32) = G_LOAD [[GEP2]](p0) :: (load 4 from %ir.addr + 16, align 8) 126 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP %0, [[CST2]](s64) 127 ; CHECK: [[LD3:%[0-9]+]]:_(s64) = G_LOAD [[GEP2]](p0) :: (load 8 from %ir.addr + 16) 290 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[CST2]](s64) 291 ; CHECK: G_STORE [[EXTLO]](s64), [[GEP2]](p0) :: (store 8 into stack, align 0)
|
D | arm64-irtranslator.ll | 730 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP [[ADDR]], [[CST2]](s64) 731 ; CHECK: G_STORE [[VAL2]](s32), [[GEP2]](p0) :: (store 4 into %ir.addr + 4) 932 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP %0, [[CST2]](s64) 933 ; CHECK: [[LD3:%[0-9]+]]:_(s32) = G_LOAD [[GEP2]](p0) :: (load 4 from %ir.addr + 8) 953 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP %0, [[CST2]](s64) 954 ; CHECK: [[LD3:%[0-9]+]]:_(s32) = G_LOAD [[GEP2]](p0) :: (load 4 from %ir.addr + 8) 977 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP %0, [[CST2]](s64) 978 ; CHECK: [[LD3:%[0-9]+]]:_(s32) = G_LOAD [[GEP2]](p0) :: (load 4 from %ir.addr + 8) 1026 ; CHECK: [[GEP2:%[0-9]+]]:_(p0) = G_GEP %0, [[CST2]](s64) 1027 ; CHECK: [[LD4:%[0-9]+]]:_(s8) = G_LOAD [[GEP2]](p0) :: (load 1 from %ir.addr + 4, align 4) [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/SLPVectorizer/AArch64/ |
D | ext-trunc.ll | 25 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds i64, i64* [[P]], i64 [[S2]] 26 ; CHECK-NEXT: [[LOAD2:%.*]] = load i64, i64* [[GEP2]] 77 ; CHECK-NEXT: [[GEP2:%.*]] = getelementptr inbounds i64, i64* [[P]], i64 [[TMP8]] 78 ; CHECK-NEXT: [[LOAD2:%.*]] = load i64, i64* [[GEP2]]
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Scalar/ |
D | MemCpyOptimizer.cpp | 119 GEPOperator *GEP2 = dyn_cast<GEPOperator>(Ptr2); in IsPointerOffset() local 125 if (GEP1 && !GEP2 && GEP1->getOperand(0)->stripPointerCasts() == Ptr2) { in IsPointerOffset() 130 if (GEP2 && !GEP1 && GEP2->getOperand(0)->stripPointerCasts() == Ptr1) { in IsPointerOffset() 131 Offset = GetOffsetFromIndex(GEP2, 1, VariableIdxFound, DL); in IsPointerOffset() 140 if (!GEP1 || !GEP2 || GEP1->getOperand(0) != GEP2->getOperand(0)) in IsPointerOffset() 145 for (; Idx != GEP1->getNumOperands() && Idx != GEP2->getNumOperands(); ++Idx) in IsPointerOffset() 146 if (GEP1->getOperand(Idx) != GEP2->getOperand(Idx)) in IsPointerOffset() 150 int64_t Offset2 = GetOffsetFromIndex(GEP2, Idx, VariableIdxFound, DL); in IsPointerOffset()
|
/external/llvm/lib/Transforms/Scalar/ |
D | MemCpyOptimizer.cpp | 84 GEPOperator *GEP2 = dyn_cast<GEPOperator>(Ptr2); in IsPointerOffset() local 90 if (GEP1 && !GEP2 && GEP1->getOperand(0)->stripPointerCasts() == Ptr2) { in IsPointerOffset() 95 if (GEP2 && !GEP1 && GEP2->getOperand(0)->stripPointerCasts() == Ptr1) { in IsPointerOffset() 96 Offset = GetOffsetFromIndex(GEP2, 1, VariableIdxFound, DL); in IsPointerOffset() 105 if (!GEP1 || !GEP2 || GEP1->getOperand(0) != GEP2->getOperand(0)) in IsPointerOffset() 110 for (; Idx != GEP1->getNumOperands() && Idx != GEP2->getNumOperands(); ++Idx) in IsPointerOffset() 111 if (GEP1->getOperand(Idx) != GEP2->getOperand(Idx)) in IsPointerOffset() 115 int64_t Offset2 = GetOffsetFromIndex(GEP2, Idx, VariableIdxFound, DL); in IsPointerOffset()
|
/external/llvm/test/Transforms/WholeProgramDevirt/ |
D | expand-check.ll | 49 ; CHECK: [[GEP2:%[^ ]*]] = getelementptr i8, i8* [[VT2:%[^,]*]], i32 1 50 ; CHECK: [[BC2:%[^ ]*]] = bitcast i8* [[GEP2]] to i8**
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/WholeProgramDevirt/ |
D | expand-check.ll | 49 ; CHECK: [[GEP2:%[^ ]*]] = getelementptr i8, i8* [[VT2:%[^,]*]], i32 1 50 ; CHECK: [[BC2:%[^ ]*]] = bitcast i8* [[GEP2]] to i8**
|
D | import.ll | 91 …; VCP-X86: [[GEP2:%.*]] = getelementptr i8, i8* [[VT2]], i32 ptrtoint (i8* @__typeid_typeid2_8_3_b… 92 ; VCP-ARM: [[GEP2:%.*]] = getelementptr i8, i8* [[VT2]], i32 43 93 ; VCP: [[LOAD2:%.*]] = load i8, i8* [[GEP2]]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/Inline/ |
D | inalloca-not-static.ll | 62 ; CHECK: %[[GEP2:.*]] = getelementptr inbounds <{ %struct.Foo }>, <{ %struct.Foo }>* %[[ARGMEM]],… 63 ; CHECK: call x86_thiscallcc void @"\01??1Foo@@QAE@XZ"(%struct.Foo* %[[GEP2]])
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/Instrumentation/AddressSanitizer/ |
D | asan-masked-load-store.ll | 32 ; STORE: [[GEP2:%[0-9A-Za-z]+]] = getelementptr <4 x float>, <4 x float>* %p, i64 0, i64 2 33 ; STORE: [[PGEP2:%[0-9A-Za-z]+]] = ptrtoint float* [[GEP2]] to i64 97 ; STORE: [[GEP2:%[0-9A-Za-z]+]] = getelementptr <4 x float>, <4 x float>* %p, i64 0, i64 2 98 ; STORE: [[PGEP2:%[0-9A-Za-z]+]] = ptrtoint float* [[GEP2]] to i64 163 ; LOAD: [[GEP2:%[0-9A-Za-z]+]] = getelementptr <8 x i32>, <8 x i32>* %p, i64 0, i64 2 164 ; LOAD: [[PGEP2:%[0-9A-Za-z]+]] = ptrtoint i32* [[GEP2]] to i64 225 ; LOAD: [[GEP2:%[0-9A-Za-z]+]] = getelementptr <4 x float>, <4 x float>* %p, i64 0, i64 2 226 ; LOAD: [[PGEP2:%[0-9A-Za-z]+]] = ptrtoint float* [[GEP2]] to i64
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/CodeGen/PowerPC/ |
D | memcmpIR.ll | 21 ; CHECK-NEXT: [[GEP2:%[0-9]+]] = getelementptr i64, i64* {{.*}}, i64 1 23 ; CHECK-NEXT: [[LOAD2:%[0-9]+]] = load i64, i64* [[GEP2]] 42 ; CHECK-BE-NEXT: [[GEP2:%[0-9]+]] = getelementptr i64, i64* {{.*}}, i64 1 44 ; CHECK-BE-NEXT: [[LOAD2:%[0-9]+]] = load i64, i64* [[GEP2]]
|
/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombineAddSub.cpp | 1413 GEPOperator *GEP1 = nullptr, *GEP2 = nullptr; in OptimizePointerDifference() local 1426 GEP2 = RHSGEP; in OptimizePointerDifference() 1442 GEP2 = LHSGEP; in OptimizePointerDifference() 1452 (GEP2 && !GEP2->hasAllConstantIndices() && !GEP2->hasOneUse())) in OptimizePointerDifference() 1460 if (GEP2) { in OptimizePointerDifference() 1461 Value *Offset = EmitGEPOffset(GEP2); in OptimizePointerDifference()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/InstCombine/ |
D | InstCombineAddSub.cpp | 1496 GEPOperator *GEP1 = nullptr, *GEP2 = nullptr; in OptimizePointerDifference() local 1509 GEP2 = RHSGEP; in OptimizePointerDifference() 1525 GEP2 = LHSGEP; in OptimizePointerDifference() 1536 if (GEP2) { in OptimizePointerDifference() 1549 unsigned NumNonConstantIndices2 = GEP2->countNonConstantIndices(); in OptimizePointerDifference() 1552 (NumNonConstantIndices2 > 0 && !GEP2->hasOneUse()))) { in OptimizePointerDifference() 1562 if (GEP2) { in OptimizePointerDifference() 1563 Value *Offset = EmitGEPOffset(GEP2); in OptimizePointerDifference()
|
/external/swiftshader/third_party/LLVM/lib/Analysis/ |
D | BasicAliasAnalysis.cpp | 863 if (const GEPOperator *GEP2 = dyn_cast<GEPOperator>(V2)) { in aliasGEP() local 881 DecomposeGEPExpression(GEP2, GEP2BaseOffset, GEP2VariableIndices, TD); in aliasGEP()
|