diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-01-03 04:20:26 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-01-03 04:20:26 +0000 |
commit | ddb66281cd881b674f86c2798b9c99cac0adc202 (patch) | |
tree | 2b506cc0202153ff07c786dc7484f3131de1294b /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | |
parent | 76bc5157c2406ba919069f7bf341ded0a6ecdda8 (diff) | |
download | bcm5719-llvm-ddb66281cd881b674f86c2798b9c99cac0adc202.tar.gz bcm5719-llvm-ddb66281cd881b674f86c2798b9c99cac0adc202.zip |
Debug Info: Type Units: Simplify type hashing using IR-provided unique names.
What's good for LTO metadata size problems ought to be good for non-LTO
debug info size too, so let's rely on the same uniqueness in both cases.
If it's insufficient for non-LTO for whatever reason (since we now won't
be uniquing CU-local types or any C types - but these are likely to not
be the most significant contributors to type bloat) we should consider a
frontend solution that'll help both LTO and non-LTO alike, rather than
using DWARF-level DIE-hashing that only helps non-LTO debug info size.
It's also much simpler this way and benefits C++ even more since we can
deduplicate lexically separate definitions of the same C++ type since
they have the same mangled name.
llvm-svn: 198397
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h index b81688ea3f0..84d9cae7a1d 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -695,7 +695,8 @@ public: /// \brief Add a DIE to the set of types that we're going to pull into /// type units. - void addDwarfTypeUnitType(uint16_t Language, DIE *Die, DICompositeType CTy); + void addDwarfTypeUnitType(uint16_t Language, StringRef Identifier, DIE *Die, + DICompositeType CTy); /// \brief Add a label so that arange data can be generated for it. void addArangeLabel(SymbolCU SCU) { ArangeLabels.push_back(SCU); } |