diff options
author | Vladislav Dzhidzhoev <vdzhidzhoev@accesssoftek.com> | 2023-06-15 18:04:32 +0200 |
---|---|---|
committer | Vladislav Dzhidzhoev <vdzhidzhoev@accesssoftek.com> | 2023-06-15 18:04:32 +0200 |
commit | fbdeb8cbc147f8f49fbd4bf23fae01bd142f0f5d (patch) | |
tree | adafb5b1b81e23b3f185cdcabc44ac42b844fa5d /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | |
parent | dcdfc963d7934a1313094b6fe9ce7aa04debe495 (diff) | |
download | llvm-fbdeb8cbc147f8f49fbd4bf23fae01bd142f0f5d.zip llvm-fbdeb8cbc147f8f49fbd4bf23fae01bd142f0f5d.tar.gz llvm-fbdeb8cbc147f8f49fbd4bf23fae01bd142f0f5d.tar.bz2 |
Revert "[DebugMetadata][DwarfDebug] Fix DWARF emisson of function-local imported entities (3/7)"
This reverts commit d80fdc6fc1a6e717af1bcd7a7313e65de433ba85.
split-dwarf-local-impor3.ll fails because of an issue with
Dwo sections emission on Windows platform.
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h index 1af4b64..44b2f24 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -320,13 +320,6 @@ class DwarfDebug : public DebugHandlerBase { /// create DIEs. SmallSetVector<const DISubprogram *, 16> ProcessedSPNodes; - /// Map function-local imported entities to their parent local scope - /// (either DILexicalBlock or DISubprogram) for a processed function - /// (including inlined subprograms). - using MDNodeSet = SetVector<const MDNode *, SmallVector<const MDNode *, 2>, - SmallPtrSet<const MDNode *, 2>>; - DenseMap<const DILocalScope *, MDNodeSet> LocalDeclsPerLS; - /// If nonnull, stores the current machine function we're processing. const MachineFunction *CurFn = nullptr; @@ -461,6 +454,9 @@ private: using InlinedEntity = DbgValueHistoryMap::InlinedEntity; + void ensureAbstractEntityIsCreated(DwarfCompileUnit &CU, + const DINode *Node, + const MDNode *Scope); void ensureAbstractEntityIsCreatedIfScoped(DwarfCompileUnit &CU, const DINode *Node, const MDNode *Scope); @@ -600,6 +596,10 @@ private: void finishUnitAttributes(const DICompileUnit *DIUnit, DwarfCompileUnit &NewCU); + /// Construct imported_module or imported_declaration DIE. + void constructAndAddImportedEntityDIE(DwarfCompileUnit &TheCU, + const DIImportedEntity *N); + /// Register a source line with debug info. Returns the unique /// label that was emitted and which provides correspondence to the /// source line list. @@ -838,10 +838,6 @@ public: /// If the \p File has an MD5 checksum, return it as an MD5Result /// allocated in the MCContext. std::optional<MD5::MD5Result> getMD5AsBytes(const DIFile *File) const; - - MDNodeSet &getLocalDeclsForScope(const DILocalScope *S) { - return LocalDeclsPerLS[S]; - } }; } // end namespace llvm |