Home | History | Annotate | Download | only in Vectorize

Lines Matching refs:ValuePair

214     typedef std::pair<Value *, Value *> ValuePair;
215 typedef std::pair<ValuePair, int> ValuePairWithCost;
216 typedef std::pair<ValuePair, size_t> ValuePairWithDepth;
217 typedef std::pair<ValuePair, ValuePair> VPPair; // A ValuePair pair
233 DenseSet<ValuePair> &FixedOrderPairs,
234 DenseMap<ValuePair, int> &CandidatePairCostSavings,
248 DenseSet<ValuePair> &CandidatePairsSet,
250 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
256 DenseSet<ValuePair> &PairableInstUsers);
259 DenseSet<ValuePair> &CandidatePairsSet,
260 DenseMap<ValuePair, int> &CandidatePairCostSavings,
262 DenseSet<ValuePair> &FixedOrderPairs,
264 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
265 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
266 DenseSet<ValuePair> &PairableInstUsers,
272 DenseSet<ValuePair> &FixedOrderPairs,
274 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
275 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps);
287 DenseSet<ValuePair> *LoadMoveSetPairs = nullptr);
291 DenseSet<ValuePair> &CandidatePairsSet,
293 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
295 ValuePair P);
297 bool pairsConflict(ValuePair P, ValuePair Q,
298 DenseSet<ValuePair> &PairableInstUsers,
299 DenseMap<ValuePair, std::vector<ValuePair> >
303 bool pairWillFormCycle(ValuePair P,
304 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUsers,
305 DenseSet<ValuePair> &CurrentPairs);
310 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
311 DenseSet<ValuePair> &PairableInstUsers,
312 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
315 DenseMap<ValuePair, size_t> &DAG,
316 DenseSet<ValuePair> &PrunedDAG, ValuePair J,
321 DenseSet<ValuePair> &CandidatePairsSet,
323 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
324 DenseSet<ValuePair> &PairableInstUsers,
326 DenseMap<ValuePair, size_t> &DAG, ValuePair J);
330 DenseSet<ValuePair> &CandidatePairsSet,
331 DenseMap<ValuePair, int> &CandidatePairCostSavings,
333 DenseSet<ValuePair> &FixedOrderPairs,
335 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
336 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
337 DenseSet<ValuePair> &PairableInstUsers,
338 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
341 DenseSet<ValuePair> &BestDAG, size_t &BestMaxDepth,
376 DenseSet<ValuePair> &LoadMoveSetPairs,
383 DenseSet<ValuePair> &LoadMoveSetPairs);
386 DenseSet<ValuePair> &LoadMoveSetPairs,
390 DenseSet<ValuePair> &LoadMoveSetPairs,
724 DenseSet<ValuePair> AllFixedOrderPairs;
726 DenseMap<ValuePair, std::vector<ValuePair> > AllConnectedPairs,
732 DenseSet<ValuePair> FixedOrderPairs;
733 DenseMap<ValuePair, int> CandidatePairCostSavings;
741 DenseSet<ValuePair> CandidatePairsSet;
746 CandidatePairsSet.insert(ValuePair(I->first, *J));
757 DenseMap<ValuePair, std::vector<ValuePair> > ConnectedPairs,
764 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator
767 for (std::vector<ValuePair>::iterator J = I->second.begin(),
772 DenseSet<ValuePair> PairableInstUsers;
800 else if (FixedOrderPairs.count(ValuePair(I->second, I->first)))
801 AllFixedOrderPairs.insert(ValuePair(I->second, I->first));
817 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator
820 for (std::vector<ValuePair>::iterator J = I->second.begin(),
1190 DenseSet<ValuePair> *LoadMoveSetPairs) {
1209 UsesI = LoadMoveSetPairs->count(ValuePair(J, I));
1234 DenseSet<ValuePair> &FixedOrderPairs,
1235 DenseMap<ValuePair, int> &CandidatePairCostSavings,
1288 CandidatePairCostSavings.insert(ValuePairWithCost(ValuePair(I, J),
1292 FixedOrderPairs.insert(ValuePair(I, J));
1294 FixedOrderPairs.insert(ValuePair(J, I));
1332 DenseSet<ValuePair> &CandidatePairsSet,
1334 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1336 ValuePair P) {
1364 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1365 VPPair VP(P, ValuePair(UI, UJ));
1371 if (CandidatePairsSet.count(ValuePair(UJ, UI))) {
1372 VPPair VP(P, ValuePair(UJ, UI));
1387 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1388 VPPair VP(P, ValuePair(UI, UJ));
1414 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1415 VPPair VP(P, ValuePair(UI, UJ));
1428 DenseSet<ValuePair> &CandidatePairsSet,
1430 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1443 PairConnectionTypes, ValuePair(*PI, *P));
1447 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator I =
1461 DenseSet<ValuePair> &PairableInstUsers) {
1491 PairableInstUsers.insert(ValuePair(I, *U));
1502 bool BBVectorize::pairsConflict(ValuePair P, ValuePair Q,
1503 DenseSet<ValuePair> &PairableInstUsers,
1504 DenseMap<ValuePair, std::vector<ValuePair> > *PairableInstUserMap,
1507 bool QUsesP = PairableInstUsers.count(ValuePair(P.first, Q.first)) ||
1508 PairableInstUsers.count(ValuePair(P.first, Q.second)) ||
1509 PairableInstUsers.count(ValuePair(P.second, Q.first)) ||
1510 PairableInstUsers.count(ValuePair(P.second, Q.second));
1511 bool PUsesQ = PairableInstUsers.count(ValuePair(Q.first, P.first)) ||
1512 PairableInstUsers.count(ValuePair(Q.first, P.second)) ||
1513 PairableInstUsers.count(ValuePair(Q.second, P.first)) ||
1514 PairableInstUsers.count(ValuePair(Q.second, P.second));
1534 bool BBVectorize::pairWillFormCycle(ValuePair P,
1535 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1536 DenseSet<ValuePair> &CurrentPairs) {
1542 DenseSet<ValuePair> Visited;
1543 SmallVector<ValuePair, 32> Q;
1547 ValuePair QTop = Q.pop_back_val();
1553 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1558 for (std::vector<ValuePair>::iterator C = QQ->second.begin(),
1579 DenseSet<ValuePair> &CandidatePairsSet,
1581 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1582 DenseSet<ValuePair> &PairableInstUsers,
1584 DenseMap<ValuePair, size_t> &DAG, ValuePair J) {
1597 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1600 for (std::vector<ValuePair>::iterator k = QQ->second.begin(),
1604 DenseMap<ValuePair, size_t>::iterator C = DAG.find(*k);
1628 ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1629 DenseSet<ValuePair> &PairableInstUsers,
1630 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1633 DenseMap<ValuePair, size_t> &DAG,
1634 DenseSet<ValuePair> &PrunedDAG, ValuePair J,
1645 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1650 for (std::vector<ValuePair>::iterator K = QQ->second.begin(),
1652 DenseMap<ValuePair, size_t>::iterator C = DAG.find(*K);
1677 DenseSet<ValuePair> CurrentPairs;
1703 for (DenseSet<ValuePair>::iterator T = PrunedDAG.begin(),
1801 DenseSet<ValuePair> &CandidatePairsSet,
1802 DenseMap<ValuePair, int> &CandidatePairCostSavings,
1804 DenseSet<ValuePair> &FixedOrderPairs,
1806 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1807 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
1808 DenseSet<ValuePair> &PairableInstUsers,
1809 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1812 DenseSet<ValuePair> &BestDAG, size_t &BestMaxDepth,
1817 ValuePair IJ(II, *J);
1824 DenseSet<ValuePair> ChosenPairSet;
1843 DenseMap<ValuePair, size_t> DAG;
1863 DenseSet<ValuePair> PrunedDAG;
1872 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
1879 DenseSet<ValuePair> IncomingPairs;
1888 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
1907 DenseMap<ValuePair, std::vector<ValuePair> >::iterator SS =
1911 for (std::vector<ValuePair>::iterator T = SS->second.begin(),
1931 FixedOrderPairs.count(ValuePair(S->second, S->first)));
1933 for (std::vector<ValuePair>::iterator T = SS->second.begin(),
2056 ValuePair VP = ValuePair(O1, O2);
2057 ValuePair VPR = ValuePair(O2, O1);
2159 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
2183 DenseSet<ValuePair> &CandidatePairsSet,
2184 DenseMap<ValuePair, int> &CandidatePairCostSavings,
2186 DenseSet<ValuePair> &FixedOrderPairs,
2188 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
2189 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
2190 DenseSet<ValuePair> &PairableInstUsers,
2196 for (DenseSet<ValuePair>::iterator I = CandidatePairsSet.begin(),
2203 DenseMap<ValuePair, std::vector<ValuePair> > PairableInstUserMap;
2216 DenseSet<ValuePair> BestDAG;
2236 for (DenseSet<ValuePair>::iterator S = BestDAG.begin(),
2239 ChosenPairs.insert(ValuePair(S->first, S->second));
2250 CandidatePairsSet.erase(ValuePair(S->first, *K));
2259 CandidatePairsSet.erase(ValuePair(*L, S->second));
2266 CandidatePairsSet.erase(ValuePair(S->second, *M));
2273 CandidatePairsSet.erase(ValuePair(*N, S->first));
2869 DenseSet<ValuePair> &LoadMoveSetPairs,
2890 DenseSet<ValuePair> &LoadMoveSetPairs,
2922 DenseSet<ValuePair> &LoadMoveSetPairs,
2938 LoadMoveSetPairs.insert(ValuePair(L, I));
2955 DenseSet<ValuePair> &LoadMoveSetPairs) {
3001 DenseSet<ValuePair> &FixedOrderPairs,
3003 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
3004 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps) {
3010 DenseSet<ValuePair> FlippedPairs;
3013 FlippedPairs.insert(ValuePair(P->second, P->first));
3014 for (DenseSet<ValuePair>::iterator P = FlippedPairs.begin(),
3019 DenseSet<ValuePair> LoadMoveSetPairs;
3063 bool FlipPairOrder = FixedOrderPairs.count(ValuePair(J, I));
3064 if (!FlipPairOrder && !FixedOrderPairs.count(ValuePair(I, J))) {
3070 DenseMap<ValuePair, std::vector<ValuePair> >::iterator IJ =
3071 ConnectedPairDeps.find(ValuePair(I, J));
3073 IJ = ConnectedPairDeps.find(ValuePair(J, I));
3079 for (std::vector<ValuePair>::iterator T = IJ->second.begin(),
3109 DenseMap<ValuePair, std::vector<ValuePair> >::iterator HL =
3110 ConnectedPairs.find(ValuePair(H, L));
3112 for (std::vector<ValuePair>::iterator T = HL->second.begin(),
3175 std::vector<ValuePair> NewSetMembers;
3181 NewSetMembers.push_back(ValuePair(K, *N));
3187 NewSetMembers.push_back(ValuePair(K, *N));
3188 for (std::vector<ValuePair>::iterator A = NewSetMembers.begin(),