Home | History | Annotate | Download | only in Vectorize

Lines Matching refs:ValuePair

215     typedef std::pair<Value *, Value *> ValuePair;
216 typedef std::pair<ValuePair, int> ValuePairWithCost;
217 typedef std::pair<ValuePair, size_t> ValuePairWithDepth;
218 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,
725 DenseSet<ValuePair> AllFixedOrderPairs;
727 DenseMap<ValuePair, std::vector<ValuePair> > AllConnectedPairs,
733 DenseSet<ValuePair> FixedOrderPairs;
734 DenseMap<ValuePair, int> CandidatePairCostSavings;
742 DenseSet<ValuePair> CandidatePairsSet;
747 CandidatePairsSet.insert(ValuePair(I->first, *J));
758 DenseMap<ValuePair, std::vector<ValuePair> > ConnectedPairs,
765 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator
768 for (std::vector<ValuePair>::iterator J = I->second.begin(),
773 DenseSet<ValuePair> PairableInstUsers;
801 else if (FixedOrderPairs.count(ValuePair(I->second, I->first)))
802 AllFixedOrderPairs.insert(ValuePair(I->second, I->first));
818 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator
821 for (std::vector<ValuePair>::iterator J = I->second.begin(),
1186 DenseSet<ValuePair> *LoadMoveSetPairs) {
1205 UsesI = LoadMoveSetPairs->count(ValuePair(J, I));
1230 DenseSet<ValuePair> &FixedOrderPairs,
1231 DenseMap<ValuePair, int> &CandidatePairCostSavings,
1284 CandidatePairCostSavings.insert(ValuePairWithCost(ValuePair(I, J),
1288 FixedOrderPairs.insert(ValuePair(I, J));
1290 FixedOrderPairs.insert(ValuePair(J, I));
1328 DenseSet<ValuePair> &CandidatePairsSet,
1330 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1332 ValuePair P) {
1360 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1361 VPPair VP(P, ValuePair(UI, UJ));
1367 if (CandidatePairsSet.count(ValuePair(UJ, UI))) {
1368 VPPair VP(P, ValuePair(UJ, UI));
1383 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1384 VPPair VP(P, ValuePair(UI, UJ));
1410 if (CandidatePairsSet.count(ValuePair(UI, UJ))) {
1411 VPPair VP(P, ValuePair(UI, UJ));
1424 DenseSet<ValuePair> &CandidatePairsSet,
1426 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1439 PairConnectionTypes, ValuePair(*PI, *P));
1443 for (DenseMap<ValuePair, std::vector<ValuePair> >::iterator I =
1457 DenseSet<ValuePair> &PairableInstUsers) {
1487 PairableInstUsers.insert(ValuePair(I, *U));
1498 bool BBVectorize::pairsConflict(ValuePair P, ValuePair Q,
1499 DenseSet<ValuePair> &PairableInstUsers,
1500 DenseMap<ValuePair, std::vector<ValuePair> > *PairableInstUserMap,
1503 bool QUsesP = PairableInstUsers.count(ValuePair(P.first, Q.first)) ||
1504 PairableInstUsers.count(ValuePair(P.first, Q.second)) ||
1505 PairableInstUsers.count(ValuePair(P.second, Q.first)) ||
1506 PairableInstUsers.count(ValuePair(P.second, Q.second));
1507 bool PUsesQ = PairableInstUsers.count(ValuePair(Q.first, P.first)) ||
1508 PairableInstUsers.count(ValuePair(Q.first, P.second)) ||
1509 PairableInstUsers.count(ValuePair(Q.second, P.first)) ||
1510 PairableInstUsers.count(ValuePair(Q.second, P.second));
1530 bool BBVectorize::pairWillFormCycle(ValuePair P,
1531 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1532 DenseSet<ValuePair> &CurrentPairs) {
1538 DenseSet<ValuePair> Visited;
1539 SmallVector<ValuePair, 32> Q;
1543 ValuePair QTop = Q.pop_back_val();
1549 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1554 for (std::vector<ValuePair>::iterator C = QQ->second.begin(),
1575 DenseSet<ValuePair> &CandidatePairsSet,
1577 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1578 DenseSet<ValuePair> &PairableInstUsers,
1580 DenseMap<ValuePair, size_t> &DAG, ValuePair J) {
1593 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1596 for (std::vector<ValuePair>::iterator k = QQ->second.begin(),
1600 DenseMap<ValuePair, size_t>::iterator C = DAG.find(*k);
1624 DenseMap<ValuePair, std::vector<ValuePair
1625 DenseSet<ValuePair> &PairableInstUsers,
1626 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1629 DenseMap<ValuePair, size_t> &DAG,
1630 DenseSet<ValuePair> &PrunedDAG, ValuePair J,
1641 DenseMap<ValuePair, std::vector<ValuePair> >::iterator QQ =
1646 for (std::vector<ValuePair>::iterator K = QQ->second.begin(),
1648 DenseMap<ValuePair, size_t>::iterator C = DAG.find(*K);
1673 DenseSet<ValuePair> CurrentPairs;
1699 for (DenseSet<ValuePair>::iterator T = PrunedDAG.begin(),
1797 DenseSet<ValuePair> &CandidatePairsSet,
1798 DenseMap<ValuePair, int> &CandidatePairCostSavings,
1800 DenseSet<ValuePair> &FixedOrderPairs,
1802 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
1803 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
1804 DenseSet<ValuePair> &PairableInstUsers,
1805 DenseMap<ValuePair, std::vector<ValuePair> > &PairableInstUserMap,
1808 DenseSet<ValuePair> &BestDAG, size_t &BestMaxDepth,
1813 ValuePair IJ(II, *J);
1820 DenseSet<ValuePair> ChosenPairSet;
1839 DenseMap<ValuePair, size_t> DAG;
1859 DenseSet<ValuePair> PrunedDAG;
1868 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
1875 DenseSet<ValuePair> IncomingPairs;
1884 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
1903 DenseMap<ValuePair, std::vector<ValuePair> >::iterator SS =
1907 for (std::vector<ValuePair>::iterator T = SS->second.begin(),
1927 FixedOrderPairs.count(ValuePair(S->second, S->first)));
1929 for (std::vector<ValuePair>::iterator T = SS->second.begin(),
2052 ValuePair VP = ValuePair(O1, O2);
2053 ValuePair VPR = ValuePair(O2, O1);
2155 for (DenseSet<ValuePair>::iterator S = PrunedDAG.begin(),
2179 DenseSet<ValuePair> &CandidatePairsSet,
2180 DenseMap<ValuePair, int> &CandidatePairCostSavings,
2182 DenseSet<ValuePair> &FixedOrderPairs,
2184 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
2185 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps,
2186 DenseSet<ValuePair> &PairableInstUsers,
2192 for (DenseSet<ValuePair>::iterator I = CandidatePairsSet.begin(),
2199 DenseMap<ValuePair, std::vector<ValuePair> > PairableInstUserMap;
2212 DenseSet<ValuePair> BestDAG;
2232 for (DenseSet<ValuePair>::iterator S = BestDAG.begin(),
2235 ChosenPairs.insert(ValuePair(S->first, S->second));
2246 CandidatePairsSet.erase(ValuePair(S->first, *K));
2255 CandidatePairsSet.erase(ValuePair(*L, S->second));
2262 CandidatePairsSet.erase(ValuePair(S->second, *M));
2269 CandidatePairsSet.erase(ValuePair(*N, S->first));
2862 DenseSet<ValuePair> &LoadMoveSetPairs,
2883 DenseSet<ValuePair> &LoadMoveSetPairs,
2915 DenseSet<ValuePair> &LoadMoveSetPairs,
2931 LoadMoveSetPairs.insert(ValuePair(L, I));
2948 DenseSet<ValuePair> &LoadMoveSetPairs) {
2969 DenseSet<ValuePair> &FixedOrderPairs,
2971 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairs,
2972 DenseMap<ValuePair, std::vector<ValuePair> > &ConnectedPairDeps) {
2978 DenseSet<ValuePair> FlippedPairs;
2981 FlippedPairs.insert(ValuePair(P->second, P->first));
2982 for (DenseSet<ValuePair>::iterator P = FlippedPairs.begin(),
2987 DenseSet<ValuePair> LoadMoveSetPairs;
3031 bool FlipPairOrder = FixedOrderPairs.count(ValuePair(J, I));
3032 if (!FlipPairOrder && !FixedOrderPairs.count(ValuePair(I, J))) {
3038 DenseMap<ValuePair, std::vector<ValuePair> >::iterator IJ =
3039 ConnectedPairDeps.find(ValuePair(I, J));
3041 IJ = ConnectedPairDeps.find(ValuePair(J, I));
3047 for (std::vector<ValuePair>::iterator T = IJ->second.begin(),
3077 DenseMap<ValuePair, std::vector<ValuePair> >::iterator HL =
3078 ConnectedPairs.find(ValuePair(H, L));
3080 for (std::vector<ValuePair>::iterator T = HL->second.begin(),
3149 std::vector<ValuePair> NewSetMembers;
3155 ValuePair(K, *N));
3161 NewSetMembers.push_back(ValuePair(K, *N));
3162 for (std::vector<ValuePair>::iterator A = NewSetMembers.begin(),