Lines Matching defs:Instance
227 Value *VPTransformState::get(VPValue *Def, const VPIteration &Instance) {
231 if (hasScalarValue(Def, Instance)) {
233 .PerPartScalars[Def][Instance.Part][Instance.Lane.mapToCacheIndex(VF)];
235 if (!Instance.Lane.isFirstLane() &&
237 hasScalarValue(Def, {Instance.Part, VPLane::getFirstLane()})) {
238 return Data.PerPartScalars[Def][Instance.Part][0];
241 assert(hasVectorValue(Def, Instance.Part));
242 auto *VecPart = Data.PerPartOutput[Def][Instance.Part];
244 assert(Instance.Lane.isFirstLane() && "cannot get lane > 0 for scalar");
248 Value *Lane = Instance.Lane.getAsRuntimeExpr(Builder, VF);
250 // set(Def, Extract, Instance);
402 const VPIteration &Instance) {
403 Value *ScalarInst = get(Def, Instance);
404 Value *VectorValue = get(Def, Instance.Part);
406 VectorValue, ScalarInst, Instance.Lane.getAsRuntimeExpr(Builder, VF));
407 set(Def, VectorValue, Instance.Part);
484 bool Replica = State->Instance && !State->Instance->isFirstIteration();
757 assert(!State->Instance && "Replicating a Region with non-null instance.");
760 State->Instance = VPIteration(0, 0);
763 State->Instance->Part = Part;
767 State->Instance->Lane = VPLane(Lane, VPLane::Kind::First);
777 State->Instance.reset();