aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/AsmPrinter/DebugLocStream.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DebugLocStream.h')
-rw-r--r--lib/CodeGen/AsmPrinter/DebugLocStream.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/CodeGen/AsmPrinter/DebugLocStream.h b/lib/CodeGen/AsmPrinter/DebugLocStream.h
index 789291771b5a..0db86b09d19a 100644
--- a/lib/CodeGen/AsmPrinter/DebugLocStream.h
+++ b/lib/CodeGen/AsmPrinter/DebugLocStream.h
@@ -38,21 +38,18 @@ public:
: CU(CU), EntryOffset(EntryOffset) {}
};
struct Entry {
- const MCSymbol *BeginSym;
- const MCSymbol *EndSym;
+ const MCSymbol *Begin;
+ const MCSymbol *End;
size_t ByteOffset;
size_t CommentOffset;
- Entry(const MCSymbol *BeginSym, const MCSymbol *EndSym, size_t ByteOffset,
- size_t CommentOffset)
- : BeginSym(BeginSym), EndSym(EndSym), ByteOffset(ByteOffset),
- CommentOffset(CommentOffset) {}
};
private:
SmallVector<List, 4> Lists;
SmallVector<Entry, 32> Entries;
SmallString<256> DWARFBytes;
- SmallVector<std::string, 32> Comments;
+ std::vector<std::string> Comments;
+ MCSymbol *Sym;
/// Only verbose textual output needs comments. This will be set to
/// true for that case, and false otherwise.
@@ -63,6 +60,12 @@ public:
size_t getNumLists() const { return Lists.size(); }
const List &getList(size_t LI) const { return Lists[LI]; }
ArrayRef<List> getLists() const { return Lists; }
+ MCSymbol *getSym() const {
+ return Sym;
+ }
+ void setSym(MCSymbol *Sym) {
+ this->Sym = Sym;
+ }
class ListBuilder;
class EntryBuilder;
@@ -93,7 +96,7 @@ private:
/// Until the next call, bytes added to the stream will be added to this
/// entry.
void startEntry(const MCSymbol *BeginSym, const MCSymbol *EndSym) {
- Entries.emplace_back(BeginSym, EndSym, DWARFBytes.size(), Comments.size());
+ Entries.push_back({BeginSym, EndSym, DWARFBytes.size(), Comments.size()});
}
/// Finalize a .debug_loc entry, deleting if it's empty.