mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-28 06:32:09 +00:00
CR feedback for r195166: Add comments regarding type unit mapping and type units disabling cross-CU sharing.
Changes suggested by Manman Ren. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195262 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fd03357c25
commit
89cadbe6b0
@ -112,8 +112,13 @@ int64_t CompileUnit::getDefaultLowerBound() const {
|
||||
|
||||
/// Check whether the DIE for this MDNode can be shared across CUs.
|
||||
static bool isShareableAcrossCUs(DIDescriptor D) {
|
||||
// When the MDNode can be part of the type system, the DIE can be
|
||||
// shared across CUs.
|
||||
// When the MDNode can be part of the type system, the DIE can be shared
|
||||
// across CUs.
|
||||
// Combining type units and cross-CU DIE sharing is lower value (since
|
||||
// cross-CU DIE sharing is used in LTO and removes type redundancy at that
|
||||
// level already) but may be implementable for some value in projects
|
||||
// building multiple independent libraries with LTO and then linking those
|
||||
// together.
|
||||
return (D.isType() ||
|
||||
(D.isSubprogram() && !DISubprogram(D).isDefinition())) &&
|
||||
!GenerateTypeUnits;
|
||||
|
@ -443,7 +443,11 @@ class DwarfDebug {
|
||||
ImportedEntityMap;
|
||||
ImportedEntityMap ScopesWithImportedEntities;
|
||||
|
||||
// Holder for types that are going to be extracted out into a type unit.
|
||||
// Map from type MDNodes to a pair used as a union. If the pointer is
|
||||
// non-null, proxy DIEs in CUs meant to reference this type should be stored
|
||||
// in the vector. The hash will be added to these DIEs once it is computed. If
|
||||
// the pointer is null, the hash is immediately available in the uint64_t and
|
||||
// should be directly used for proxy DIEs.
|
||||
DenseMap<const MDNode *, std::pair<uint64_t, SmallVectorImpl<DIE*>* > > TypeUnits;
|
||||
|
||||
// Whether to emit the pubnames/pubtypes sections.
|
||||
|
Loading…
x
Reference in New Issue
Block a user