Lines Matching defs:affinities
79 std::vector<std::vector<uint32_t>> affinities;
100 unsigned found_first = affinities.size();
101 unsigned found_second = affinities.size();
102 for (unsigned i = 0; i < affinities.size(); i++) {
103 std::vector<uint32_t>& vec = affinities[i];
111 if (found_first == affinities.size() && found_second == affinities.size()) {
112 affinities.emplace_back(std::vector<uint32_t>({first, second}));
113 } else if (found_first < affinities.size() && found_second == affinities.size()) {
114 affinities[found_first].push_back(second);
115 } else if (found_second < affinities.size() && found_first == affinities.size()) {
116 affinities[found_second].push_back(first);
119 affinities[found_first].insert(affinities[found_first].end(),
120 affinities[found_second].begin(),
121 affinities[found_second].end());
122 affinities.erase(std::next(affinities.begin(), found_second));
1622 /* assign slots for ids with affinities first */
1623 for (std::vector<uint32_t>& vec : ctx.affinities) {
1647 /* assign slots for ids without affinities */
1670 /* first, handle affinities: just merge all interferences into both spill ids */
1671 for (std::vector<uint32_t>& vec : ctx.affinities) {
1692 for (std::vector<uint32_t>& vec : ctx.affinities) {