Make structs and arrays first-class types, and add assembly
[oota-llvm.git] / lib / Bitcode / Writer / ValueEnumerator.cpp
index 92271ce2b910301ccb33483a2a5913e2754f73bb..21d0dfe7eb6df8447a1abaf7dae9d1f53ecc0da8 100644 (file)
@@ -21,9 +21,9 @@
 #include <algorithm>
 using namespace llvm;
 
-static bool isFirstClassType(const std::pair<const llvm::Type*,
-                             unsigned int> &P) {
-  return P.first->isFirstClassType();
+static bool isSingleValueType(const std::pair<const llvm::Type*,
+                              unsigned int> &P) {
+  return P.first->isSingleValueType();
 }
 
 static bool isIntegerValue(const std::pair<const Value*, unsigned> &V) {
@@ -103,10 +103,10 @@ ValueEnumerator::ValueEnumerator(const Module *M) {
   // in the table (have low bit-width).
   std::stable_sort(Types.begin(), Types.end(), CompareByFrequency);
     
-  // Partition the Type ID's so that the first-class types occur before the
+  // Partition the Type ID's so that the single-value types occur before the
   // aggregate types.  This allows the aggregate types to be dropped from the
   // type table after parsing the global variable initializers.
-  std::partition(Types.begin(), Types.end(), isFirstClassType);
+  std::partition(Types.begin(), Types.end(), isSingleValueType);
 
   // Now that we rearranged the type table, rebuild TypeMap.
   for (unsigned i = 0, e = Types.size(); i != e; ++i)
@@ -264,11 +264,11 @@ void ValueEnumerator::EnumerateParamAttrs(const PAListPtr &PAL) {
 /// there are none, return -1.
 int ValueEnumerator::PurgeAggregateValues() {
   // If there are no aggregate values at the end of the list, return -1.
-  if (Values.empty() || Values.back().first->getType()->isFirstClassType())
+  if (Values.empty() || Values.back().first->getType()->isSingleValueType())
     return -1;
   
   // Otherwise, remove aggregate values...
-  while (!Values.empty() && !Values.back().first->getType()->isFirstClassType())
+  while (!Values.empty() && !Values.back().first->getType()->isSingleValueType())
     Values.pop_back();
   
   // ... and return the new size.