Don't populate TryAgainList when coalescing only physical registers with virtual...
[oota-llvm.git] / include / llvm / GlobalVariable.h
index ba869b817b0b7aaf7b7817eb80c6ed53fb687c34..00d4acb66daf53d5886cc5af540a8bfa74f4f59e 100644 (file)
@@ -27,13 +27,11 @@ namespace llvm {
 class Module;
 class Constant;
 class PointerType;
-template<typename SC> struct ilist_traits;
-template<typename ValueSubClass, typename ItemParentClass, typename SymTabClass,
-         typename SubClass> class SymbolTableListTraits;
+template<typename ValueSubClass, typename ItemParentClass>
+  class SymbolTableListTraits;
 
 class GlobalVariable : public GlobalValue {
-  friend class SymbolTableListTraits<GlobalVariable, Module, Module,
-                                     ilist_traits<GlobalVariable> >;
+  friend class SymbolTableListTraits<GlobalVariable, Module>;
   void operator=(const GlobalVariable &);     // Do not implement
   GlobalVariable(const GlobalVariable &);     // Do not implement
 
@@ -43,8 +41,8 @@ class GlobalVariable : public GlobalValue {
   void setNext(GlobalVariable *N) { Next = N; }
   void setPrev(GlobalVariable *N) { Prev = N; }
 
-  bool isConstantGlobal;               // Is this a global constant?
-  bool isThreadLocalSymbol;            // Is this symbol "Thread Local"?
+  bool isConstantGlobal : 1;           // Is this a global constant?
+  bool isThreadLocalSymbol : 1;        // Is this symbol "Thread Local"?
   Use Initializer;
 
 public:
@@ -95,12 +93,6 @@ public:
     }
   }
 
-  // getNext/Prev - Return the next or previous global variable in the list.
-        GlobalVariable *getNext()       { return Next; }
-  const GlobalVariable *getNext() const { return Next; }
-        GlobalVariable *getPrev()       { return Prev; }
-  const GlobalVariable *getPrev() const { return Prev; }
-
   /// If the value is a global constant, its value is immutable throughout the
   /// runtime execution of the program.  Assigning a value into the constant
   /// leads to undefined behavior.
@@ -134,6 +126,12 @@ public:
   static inline bool classof(const Value *V) {
     return V->getValueID() == Value::GlobalVariableVal;
   }
+private:
+  // getNext/Prev - Return the next or previous global variable in the list.
+        GlobalVariable *getNext()       { return Next; }
+  const GlobalVariable *getNext() const { return Next; }
+        GlobalVariable *getPrev()       { return Prev; }
+  const GlobalVariable *getPrev() const { return Prev; }
 };
 
 } // End llvm namespace