Make ranges and range lists be a discrete entity that can be located

and emitted per function and CU. Begins coalescing ranges as a first
class entity through debug info. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196178 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eric Christopher
2013-12-03 00:45:45 +00:00
parent 357fcf9d2e
commit c2efbdbb60
4 changed files with 135 additions and 52 deletions

View File

@@ -59,6 +59,10 @@ TypeUnit::TypeUnit(unsigned UID, DIE *D, uint16_t Language, AsmPrinter *A,
Unit::~Unit() {
for (unsigned j = 0, M = DIEBlocks.size(); j < M; ++j)
DIEBlocks[j]->~DIEBlock();
for (SmallVectorImpl<RangeSpanList *>::iterator RI = getRangeLists().begin(),
RE = getRangeLists().end();
RI != RE; ++RI)
delete *RI;
}
/// createDIEEntry - Creates a new DIEEntry to be a proxy for a debug