| 782 | } |
| 783 | |
| 784 | void Memory::AliasSet::intersectWith(const AliasSet &other) { |
| 785 | auto intersect = [](auto &a, const auto &b) { |
| 786 | auto I2 = b.begin(), E2 = b.end(); |
| 787 | for (auto I = a.begin(), E = a.end(); I != E && I2 != E2; ++I, ++I2) { |
| 788 | *I = *I && *I2; |
| 789 | } |
| 790 | }; |
| 791 | intersect(local, other.local); |
| 792 | intersect(non_local, other.non_local); |
| 793 | } |
| 794 | |
| 795 | void Memory::AliasSet::unionWith(const AliasSet &other) { |
| 796 | auto unionfn = [](auto &a, const auto &b) { |
no test coverage detected