[llvm] [DwarfDump] Add new set of line-table-related statistics to llvm-dwarfdump (PR #93289)
Felipe de Azevedo Piovezan via llvm-commits
llvm-commits at lists.llvm.org
Fri May 24 09:52:47 PDT 2024
================
@@ -882,8 +902,58 @@ bool dwarfdump::collectStatsForObjectFile(ObjectFile &Obj, DWARFContext &DICtx,
CrossCUReferencesToBeResolved.push_back(
DIELocation(CUDie.getDwarfUnit(), CrossCUReferencingDIEOffset));
}
+ const auto *LineTable = DICtx.getLineTableForUnit(CU.get());
+ std::optional<uint64_t> LastFileIdxOpt;
+ if (LineTable)
+ LastFileIdxOpt = LineTable->getLastValidFileIndex();
+ if (LastFileIdxOpt) {
+ // Each CU has its own file index; in order to track unique line entries
+ // across CUs, we therefore need to map each CU file index to a global
+ // file index, which we store here.
+ DenseMap<uint64_t, uint16_t> CUFileMapping;
+ std::string File;
----------------
felipepiovezan wrote:
The scope of this variable can be restricted to being inside the loop, right now this is giving the impression it is needed across loop iterations or outside the loop
https://github.com/llvm/llvm-project/pull/93289
More information about the llvm-commits
mailing list