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); _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits