Home | History | Annotate | Download | only in InstCombine

Lines Matching refs:Indices

862 /// whether or not there is a sequence of GEP indices into the pointed type that
929 // If this GEP has only 0 indices, it is the same pointer as
931 // the indices.
1292 // Eliminate unneeded casts for indices, and replace indices which displace
1301 // Skip indices into struct types.
1411 // Combine Indices - If the source pointer to this getelementptr instruction
1412 // is a getelementptr instruction, combine the indices of the two
1427 SmallVector<Value*, 8> Indices;
1463 Indices.append(Src->op_begin()+1, Src->op_end()-1);
1464 Indices.push_back(Sum);
1465 Indices.append(GEP.op_begin()+2, GEP.op_end());
1470 Indices.append(Src->op_begin()+1, Src->op_end());
1471 Indices.append(GEP.idx_begin()+1, GEP.idx_end());
1474 if (!Indices.empty())
1476 GetElementPtrInst::CreateInBounds(Src->getOperand(0), Indices,
1478 GetElementPtrInst::Create(Src->getOperand(0), Indices, GEP.getName());
1675 /// Y = gep X, <...constant indices...>
2012 // Extract the remaining indices out of the constant indexed by the
2020 // We're extracting from an insertvalue instruction, compare the indices
2060 // We can simply remove the common indices from the extract and make it
2125 // extractvalue has integer indices, getelementptr has Value*s. Convert.
2126 SmallVector<Value*, 4> Indices;
2128 Indices.push_back(Builder->getInt32(0));
2131 Indices.push_back(Builder->getInt32(*I));
2136 Value *GEP = Builder->CreateInBoundsGEP(L->getPointerOperand(), Indices);