Don't try to be sneaky, breaking recursive types in the process
authorChris Lattner <sabre@nondot.org>
Thu, 4 Sep 2003 23:41:03 +0000 (23:41 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 4 Sep 2003 23:41:03 +0000 (23:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8348 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/Type.cpp

index d52986df57c4847be94f0f685ce2ac24241d9f7c..6b9334d44c5cd57f8d4b333261e9f358c57a7b45 100644 (file)
@@ -211,10 +211,7 @@ static std::string getTypeDescription(const Type *Ty,
 
   // In order to reduce the amount of repeated computation, we cache the
   // computed value for later.
-  if (Ty->isAbstract())
-    return AbstractTypeDescriptions[Ty] = Result;
-  else
-    return ConcreteTypeDescriptions[Ty] = Result;
+  return Result;
 }
 
 
@@ -225,9 +222,7 @@ static const std::string &getOrCreateDesc(std::map<const Type*,std::string>&Map,
   if (I != Map.end()) return I->second;
     
   std::vector<const Type *> TypeStack;
-  getTypeDescription(Ty, TypeStack);
-  assert(Map.count(Ty) && "Type didn't get inserted!!");
-  return Map[Ty];
+  return Map[Ty] = getTypeDescription(Ty, TypeStack);
 }