Support jump tables when in PIC relocation model
[oota-llvm.git] / include / llvm / Type.h
index 3daafa6cac4317d2b95553cb91d9ee712fe1a9f9..9f73b25dbf7b7dc19f9ab1530b21451b9632f917 100644 (file)
@@ -42,6 +42,11 @@ class TypeMapBase;
 /// 
 /// Once allocated, Types are never free'd, unless they are an abstract type
 /// that is resolved to a more concrete type.
+/// 
+/// Types themself don't have a name, and can be named either by:
+/// - using SymbolTable instance, typically from some Module,
+/// - using convenience methods in the Module class (which uses module's 
+///    SymbolTable too).
 ///
 /// Opaque types are simple derived types with no state.  There may be many
 /// different Opaque type objects floating around, but two are only considered
@@ -396,18 +401,6 @@ inline void PATypeHolder::dropRef() {
     Ty->dropRef();
 }
 
-/// get - This implements the forwarding part of the union-find algorithm for
-/// abstract types.  Before every access to the Type*, we check to see if the
-/// type we are pointing to is forwarding to a new type.  If so, we drop our
-/// reference to the type.
-///
-inline Type* PATypeHolder::get() const {
-  const Type *NewTy = Ty->getForwardedType();
-  if (!NewTy) return const_cast<Type*>(Ty);
-  return *const_cast<PATypeHolder*>(this) = NewTy;
-}
-
-
 
 //===----------------------------------------------------------------------===//
 // Provide specializations of GraphTraits to be able to treat a type as a