diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-01-03 18:59:42 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-01-03 18:59:42 +0000 |
commit | cfb2115e6624fd029e0079a976696f2eba7fc542 (patch) | |
tree | 949a867462e326cd55b6461c592c0d7f8b9de429 /llvm/lib/Target/XCore/XCoreTargetMachine.cpp | |
parent | 1d17bde708f3512510f4fae317250ac459301585 (diff) | |
download | bcm5719-llvm-cfb2115e6624fd029e0079a976696f2eba7fc542.tar.gz bcm5719-llvm-cfb2115e6624fd029e0079a976696f2eba7fc542.zip |
Revert "Revert "Debug Info: Type Units: Simplify type hashing using IR-provided unique names.""
This reverts commit r198398, thus reapplying r198397.
I had accidentally introduced an endianness issue when applying the hash
to the type unit. Using support::ulittle64_t in the reinterpret_cast in
addDwarfTypeUnitType fixes this issue.
Original commit message:
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: 198436
Diffstat (limited to 'llvm/lib/Target/XCore/XCoreTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions