mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-22 10:24:26 +00:00
DebugInfo: Move type units into the debug_types section with appropriate comdat grouping and type unit headers
This commit does not complete the type units feature - there are issues around fission support (skeletal type units, pubtypes/pubnames) and hashing of some types including those containing references to types in other type units. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197073 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -3056,19 +3056,17 @@ void DwarfDebug::addDwarfTypeUnitType(uint16_t Language, DIE *RefDie,
|
||||
// referenced type, or possibly walk the precomputed hashes of related types
|
||||
// at the end.
|
||||
uint64_t Signature = DIEHash().computeTypeSignature(*Die);
|
||||
NewTU->setTypeSignature(Signature);
|
||||
NewTU->setType(Die);
|
||||
|
||||
// Remove the References vector and add the type hash.
|
||||
I->second.first = Signature;
|
||||
I->second.second = NULL;
|
||||
|
||||
NewTU->initSection(
|
||||
useSplitDwarf() ? Asm->getObjFileLowering().getDwarfInfoDWOSection()
|
||||
: Asm->getObjFileLowering().getDwarfInfoSection(),
|
||||
// FIXME: This is subtle (using the info section even when
|
||||
// this CU is in the dwo section) and necessary for the
|
||||
// current arange code - ideally it should iterate
|
||||
// skeleton units, not full units, if it's going to reference skeletons
|
||||
useSplitDwarf() ? NULL : DwarfInfoSectionSym);
|
||||
useSplitDwarf()
|
||||
? Asm->getObjFileLowering().getDwarfTypesDWOSection(Signature)
|
||||
: Asm->getObjFileLowering().getDwarfTypesSection(Signature));
|
||||
}
|
||||
|
||||
// Populate all the signatures.
|
||||
|
Reference in New Issue
Block a user