Lines Matching defs:AV
299 /// AV - The actual available value
300 AvailableValue AV;
302 static AvailableValueInBlock get(BasicBlock *BB, AvailableValue &&AV) {
305 Res.AV = std::move(AV);
326 return AV.MaterializeAdjustedValue(Load, BB->getTerminator(), gvn);
1032 if (V.AV.Val == OldValue)
1033 V.AV.Val = NewValue;
1034 if (V.AV.isSelectValue()) {
1035 if (V.AV.V1 == OldValue)
1036 V.AV.V1 = NewValue;
1037 if (V.AV.V2 == OldValue)
1038 V.AV.V2 = NewValue;
1055 assert(!ValuesPerBlock[0].AV.isUndefValue() &&
1065 for (const AvailableValueInBlock &AV : ValuesPerBlock) {
1066 BasicBlock *BB = AV.BB;
1068 if (AV.AV.isUndefValue())
1079 ((AV.AV.isSimpleValue() && AV.AV.getSimpleValue() == Load) ||
1080 (AV.AV.isCoercedLoadValue() && AV.AV.getCoercedLoadValue() == Load)))
1083 SSAUpdate.AddAvailableValue(BB, AV.MaterializeAdjustedValue(Load, gvn));
1423 if (auto AV = AnalyzeLoadAvailability(Load, DepInfo, Dep.getAddress())) {
1428 AvailableValueInBlock::get(DepBB, std::move(*AV)));
1644 for (const AvailableValueInBlock &AV : ValuesPerBlock)
1645 FullyAvailableBlocks[AV.BB] = AvailabilityState::Available;
2200 auto AV = AnalyzeLoadAvailability(L, Dep, L->getPointerOperand());
2201 if (!AV)
2204 Value *AvailableValue = AV->MaterializeAdjustedValue(L, L, *this);