LICM pass now understands invariant load metadata. Nothing generates this yet so...
[oota-llvm.git] / lib / DebugInfo / DWARFCompileUnit.h
index 0c082ad33782ce1bae5d9690962f2057bce23db4..d9167292a9df2a9da748383c61ed1c71c5b3400e 100644 (file)
@@ -70,6 +70,14 @@ public:
     BaseAddr = base_addr;
   }
 
+  const DWARFDebugInfoEntryMinimal *
+  getCompileUnitDIE(bool extract_cu_die_only = true) {
+    extractDIEsIfNeeded(extract_cu_die_only);
+    if (DieArray.empty())
+      return NULL;
+    return &DieArray[0];
+  }
+
   /// setDIERelations - We read in all of the DIE entries into our flat list
   /// of DIE entries and now we need to go back through all of them and set the
   /// parent, sibling and child pointers for quick DIE navigation.
@@ -91,6 +99,11 @@ public:
       DieArray.reserve(getDebugInfoSize() / 14);
     DieArray.push_back(die);
   }
+
+  void clearDIEs(bool keep_compile_unit_die);
+
+  void buildAddressRangeTable(DWARFDebugAranges *debug_aranges,
+                              bool clear_dies_if_already_not_parsed);
 };
 
 }