mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-21 08:17:40 +00:00
Remove generic routines to Support/SetOperations.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1715 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -9,27 +9,10 @@
|
||||
#include "llvm/Method.h"
|
||||
#include "Support/DepthFirstIterator.h"
|
||||
#include "Support/STLExtras.h"
|
||||
#include "Support/SetOperations.h"
|
||||
#include <algorithm>
|
||||
using std::set;
|
||||
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Helper Template
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// set_intersect - Identical to set_intersection, except that it works on
|
||||
// set<>'s and is nicer to use. Functionally, this iterates through S1,
|
||||
// removing elements that are not contained in S2.
|
||||
//
|
||||
template <class Ty, class Ty2>
|
||||
void set_intersect(set<Ty> &S1, const set<Ty2> &S2) {
|
||||
for (typename set<Ty>::iterator I = S1.begin(); I != S1.end();) {
|
||||
const Ty &E = *I;
|
||||
++I;
|
||||
if (!S2.count(E)) S1.erase(E); // Erase element if not in S2
|
||||
}
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// DominatorSet Implementation
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
Reference in New Issue
Block a user