From: Bill Wendling Date: Wed, 10 Oct 2012 08:03:34 +0000 (+0000) Subject: Cleanup. Get rid of now dead code. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=5054c3596976680af7addead737f8cf4e1e0eacf;p=oota-llvm.git Cleanup. Get rid of now dead code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165613 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index ac9ddf0090f..d20a47a286e 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -26,39 +26,6 @@ namespace llvm { class LLVMContext; class Type; -namespace Attribute { - -/// AttrConst - We use this proxy POD type to allow constructing Attributes -/// constants using initializer lists. Do not use this class directly. -struct AttrConst { - uint64_t v; - AttrConst operator | (const AttrConst Attrs) const { - AttrConst Res = {v | Attrs.v}; - return Res; - } - AttrConst operator ~ () const { - AttrConst Res = {~v}; - return Res; - } -}; - -/// Function parameters and results can have attributes to indicate how they -/// should be treated by optimizations and code generation. This enumeration -/// lists the attributes that can be associated with parameters, function -/// results or the function itself. -/// @brief Function attributes. - -/// We declare AttrConst objects that will be used throughout the code and also -/// raw uint64_t objects with _i suffix to be used below for other constant -/// declarations. This is done to avoid static CTORs and at the same time to -/// keep type-safety of Attributes. -#define DECLARE_LLVM_ATTRIBUTE(name, value) \ - const AttrConst name = {value}; - -#undef DECLARE_LLVM_ATTRIBUTE - -} // namespace Attribute - /// AttributeImpl - The internal representation of the Attributes class. This is /// uniquified. class AttributesImpl; @@ -66,6 +33,11 @@ class AttributesImpl; /// Attributes - A bitset of attributes. class Attributes { public: + /// Function parameters and results can have attributes to indicate how they + /// should be treated by optimizations and code generation. This enumeration + /// lists the attributes that can be associated with parameters, function + /// results or the function itself. + /// /// Note that uwtable is about the ABI or the user mandating an entry in the /// unwind table. The nounwind attribute is about an exception passing by the /// function. @@ -123,7 +95,6 @@ private: public: Attributes() : Attrs(0) {} explicit Attributes(uint64_t Val); - /*implicit*/ Attributes(Attribute::AttrConst Val); Attributes(const Attributes &A); class Builder { diff --git a/lib/VMCore/Attributes.cpp b/lib/VMCore/Attributes.cpp index 90a7c7ea6ae..0625ef3f09c 100644 --- a/lib/VMCore/Attributes.cpp +++ b/lib/VMCore/Attributes.cpp @@ -29,8 +29,6 @@ using namespace llvm; Attributes::Attributes(uint64_t Val) : Attrs(Val) {} -Attributes::Attributes(Attribute::AttrConst Val) : Attrs(Val.v) {} - Attributes::Attributes(AttributesImpl *A) : Attrs(A->Bits) {} Attributes::Attributes(const Attributes &A) : Attrs(A.Attrs) {}