Lines Matching defs:Operands

848     SmallVector<const SCEV *, 4> Operands;
853 Operands.push_back(S);
856 return getAddExpr(Operands);
863 SmallVector<const SCEV *, 4> Operands;
868 Operands.push_back(S);
871 return getMulExpr(Operands);
877 SmallVector<const SCEV *, 4> Operands;
879 Operands.push_back(getTruncateExpr(AddRec->getOperand(i), Ty));
880 return getAddRecExpr(Operands, AddRec->getLoop(), SCEV::FlagAnyWrap);
1936 SmallVector<const SCEV *, 4> Operands;
1939 Operands.push_back(getMulExpr(Ops[0], *I));
1941 return getAddRecExpr(Operands, AddRec->getLoop(),
2153 SmallVector<const SCEV *, 4> Operands;
2155 Operands.push_back(getUDivExpr(AR->getOperand(i), RHS));
2156 return getAddRecExpr(Operands, AR->getLoop(),
2177 SmallVector<const SCEV *, 4> Operands;
2179 Operands.push_back(getZeroExtendExpr(M->getOperand(i), ExtTy));
2180 if (getZeroExtendExpr(M, ExtTy) == getMulExpr(Operands))
2186 Operands = SmallVector<const SCEV *, 4>(M->op_begin(),
2188 Operands[i] = Div;
2189 return getMulExpr(Operands);
2195 SmallVector<const SCEV *, 4> Operands;
2197 Operands.push_back(getZeroExtendExpr(A->getOperand(i), ExtTy));
2198 if (getZeroExtendExpr(A, ExtTy) == getAddExpr(Operands)) {
2199 Operands.clear();
2205 Operands.push_back(Op);
2207 if (Operands.size() == A->getNumOperands())
2208 return getAddExpr(Operands);
2240 SmallVector<const SCEV *, 4> Operands;
2241 Operands.push_back(Start);
2244 Operands.append(StepChrec->op_begin(), StepChrec->op_end());
2245 return getAddRecExpr(Operands, L, maskFlags(Flags, SCEV::FlagNW));
2248 Operands.push_back(Step);
2249 return getAddRecExpr(Operands, L, Flags);
2255 ScalarEvolution::getAddRecExpr(SmallVectorImpl<const SCEV *> &Operands,
2257 if (Operands.size() == 1) return Operands[0];
2259 Type *ETy = getEffectiveSCEVType(Operands[0]->getType());
2260 for (unsigned i = 1, e = Operands.size(); i != e; ++i)
2261 assert(getEffectiveSCEVType(Operands[i]->getType()) == ETy &&
2263 for (unsigned i = 0, e = Operands.size(); i != e; ++i)
2264 assert(isLoopInvariant(Operands[i], L) &&
2268 if (Operands.back()->isZero()) {
2269 Operands.pop_back();
2270 return getAddRecExpr(Operands, L, SCEV::FlagAnyWrap); // {X,+,0} --> X
2285 for (SmallVectorImpl<const SCEV *>::const_iterator I = Operands.begin(),
2286 E = Operands.end(); I != E; ++I)
2295 if (const SCEVAddRecExpr *NestedAR = dyn_cast<SCEVAddRecExpr>(Operands[0])) {
2303 Operands[0] = NestedAR->getStart();
2308 for (unsigned i = 0, e = Operands.size(); i != e; ++i)
2309 if (!isLoopInvariant(Operands[i], L)) {
2321 NestedOperands[0] = getAddRecExpr(Operands, L, OuterFlags);
2338 // Reset Operands to its original state.
2339 Operands[0] = NestedAR;
2347 for (unsigned i = 0, e = Operands.size(); i != e; ++i)
2348 ID.AddPointer(Operands[i]);
2354 const SCEV **O = SCEVAllocator.Allocate<const SCEV *>(Operands.size());
2355 std::uninitialized_copy(Operands.begin(), Operands.end(), O);
2357 O, Operands.size(), L);
4772 std::vector<Constant*> Operands(I->getNumOperands());
4777 Operands[i] = dyn_cast<Constant>(I->getOperand(i));
4778 if (!Operands[i]) return 0;
4784 Operands[i] = C;
4788 return ConstantFoldCompareInstOperands(CI->getPredicate(), Operands[0],
4789 Operands[1], TD, TLI);
4792 return ConstantFoldLoadFromConstPtr(Operands[0], TD);
4794 return ConstantFoldInstOperands(I->getOpcode(), I->getType(), Operands, TD,
5120 SmallVector<Constant *, 4> Operands;
5125 Operands.push_back(C);
5146 Operands.push_back(C);
5154 Operands[0], Operands[1], TD,
5158 C = ConstantFoldLoadFromConstPtr(Operands[0], TD);
5161 Operands, TD, TLI);
6417 SmallVector<const SCEV *, 4> Operands(op_begin(), op_end());
6418 Operands[0] = SE.getConstant(SC->getType(), 0);
6419 const SCEV *Shifted = SE.getAddRecExpr(Operands, getLoop(),