This patchset is removing non-DWARF code from DWARFUnit as discussed with @labath.
For removing the dependency on DWARFDIE.GetCU() (D70647) I have found I can no longer find two different parsers in this case.
IIUC it would mean DW_AT_language is different between the defining and declaring DIE tree - which can happen (and lldbassert in this patch would fail then - this lldbassert is removed in the future patch anyway) but it would be a buggy DWARF in such case.
I do not plan to check it in yet. I plan to finish it for use by DWZ patchset first (D40474 et al.). Asking whether this is a good way forward.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
I think it's possible that for example with -gmodules we have multiple ClangASTContext's (and therefore multiple DWARFASTParserClang), but the only place where we call this function seems to only concerned about a single SymbolFileDWARF so this seems safe.
Comment Actions
This refactorization is no longer needed as I am abandoning D70647 to choose a different way.