From: Benjamin Kramer Date: Fri, 16 Nov 2012 22:22:20 +0000 (+0000) Subject: Remove default public copy ctors. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=fc53651d574ac45937289926618978fd8e2f0817;p=oota-llvm.git Remove default public copy ctors. They are just useless and prevent SmallVector from picking an optimized codepath for memcpyable elements. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168211 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index 5ace200803e..0d6ce514347 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -92,11 +92,6 @@ private: Attributes(AttributesImpl *A) : Attrs(A) {} public: Attributes() : Attrs(0) {} - Attributes(const Attributes &A) : Attrs(A.Attrs) {} - Attributes &operator=(const Attributes &A) { - Attrs = A.Attrs; - return *this; - } /// get - Return a uniquified Attributes object. This takes the uniquified /// value from the Builder and wraps it in the Attributes class. @@ -199,7 +194,6 @@ public: AttrBuilder() : Bits(0) {} explicit AttrBuilder(uint64_t B) : Bits(B) {} AttrBuilder(const Attributes &A) : Bits(A.Raw()) {} - AttrBuilder(const AttrBuilder &B) : Bits(B.Bits) {} void clear() { Bits = 0; }