[llvm-commits] [llvm] r165613 - in /llvm/trunk: include/llvm/Attributes.h lib/VMCore/Attributes.cpp

Bill Wendling isanbard at gmail.com
Wed Oct 10 01:03:35 PDT 2012


Author: void
Date: Wed Oct 10 03:03:34 2012
New Revision: 165613

URL: http://llvm.org/viewvc/llvm-project?rev=165613&view=rev
Log:
Cleanup. Get rid of now dead code.

Modified:
    llvm/trunk/include/llvm/Attributes.h
    llvm/trunk/lib/VMCore/Attributes.cpp

Modified: llvm/trunk/include/llvm/Attributes.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Attributes.h?rev=165613&r1=165612&r2=165613&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Attributes.h (original)
+++ llvm/trunk/include/llvm/Attributes.h Wed Oct 10 03:03:34 2012
@@ -26,39 +26,6 @@
 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 @@
 /// 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 @@
 public:
   Attributes() : Attrs(0) {}
   explicit Attributes(uint64_t Val);
-  /*implicit*/ Attributes(Attribute::AttrConst Val);
   Attributes(const Attributes &A);
 
   class Builder {

Modified: llvm/trunk/lib/VMCore/Attributes.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/Attributes.cpp?rev=165613&r1=165612&r2=165613&view=diff
==============================================================================
--- llvm/trunk/lib/VMCore/Attributes.cpp (original)
+++ llvm/trunk/lib/VMCore/Attributes.cpp Wed Oct 10 03:03:34 2012
@@ -29,8 +29,6 @@
 
 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) {}





More information about the llvm-commits mailing list