[llvm-branch-commits] [llvm] 109ff32 - Revert "[ADT] Make set_subtract more efficient when subtrahend is larger (NFC…"
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Jul 17 14:00:57 PDT 2024
Author: Teresa Johnson
Date: 2024-07-17T14:00:53-07:00
New Revision: 109ff32145687a96e7ef72f9d4f8f3bf45fe2b17
URL: https://github.com/llvm/llvm-project/commit/109ff32145687a96e7ef72f9d4f8f3bf45fe2b17
DIFF: https://github.com/llvm/llvm-project/commit/109ff32145687a96e7ef72f9d4f8f3bf45fe2b17.diff
LOG: Revert "[ADT] Make set_subtract more efficient when subtrahend is larger (NFC…"
This reverts commit fffe2728534a238ff0024e11a18280f85094dcde.
Added:
Modified:
llvm/include/llvm/ADT/SetOperations.h
Removed:
################################################################################
diff --git a/llvm/include/llvm/ADT/SetOperations.h b/llvm/include/llvm/ADT/SetOperations.h
index ba784bddfe79a..1a911b239f4c6 100644
--- a/llvm/include/llvm/ADT/SetOperations.h
+++ b/llvm/include/llvm/ADT/SetOperations.h
@@ -94,22 +94,7 @@ S1Ty set_
diff erence(const S1Ty &S1, const S2Ty &S2) {
/// set_subtract(A, B) - Compute A := A - B
///
-/// Selects the set to iterate based on the relative sizes of A and B for better
-/// efficiency.
-///
template <class S1Ty, class S2Ty> void set_subtract(S1Ty &S1, const S2Ty &S2) {
- using ElemTy = decltype(*S1.begin());
- // A couple callers pass a vector for S2, which doesn't support contains(),
- // and wouldn't be efficient if it did.
- if constexpr (detail::HasMemberContains<S2Ty, ElemTy>) {
- if (S1.size() < S2.size()) {
- for (typename S1Ty::iterator SI = S1.begin(), SE = S1.end(); SI != SE;
- ++SI)
- if (S2.contains(*SI))
- S1.erase(SI);
- return;
- }
- }
for (typename S2Ty::const_iterator SI = S2.begin(), SE = S2.end(); SI != SE;
++SI)
S1.erase(*SI);
More information about the llvm-branch-commits
mailing list