[PATCH] D115973: [llvm-profgen] Support symbol loading for debug fission

Hongtao Yu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 2 21:36:45 PST 2022


hoy added a comment.

Thanks for bringing up the debug fission support.



================
Comment at: llvm/test/tools/llvm-profgen/split-dwarf.test:2
+; RUN: echo -e "0\n0" > %t
+; RUN: llvm-profgen --format=text --unsymbolized-profile=%t --dwp=%S/Inputs/split-dwarf-single.o --binary=%S/Inputs/split-dwarf-single.perfbin --output=%t1 --fill-zero-for-all-funcs
+; RUN: FileCheck %s --input-file %t1 --check-prefix=CHECK-SPLIT-DWARF
----------------
A dumb question. In the single mode, where does the dwo object live? Is it in the immediate .o and all such .o should be saved for debugging?


================
Comment at: llvm/test/tools/llvm-profgen/split-dwarf.test:12
+; RUN: llvm-profgen --format=text --unsymbolized-profile=%t --dwp=%S/Inputs/split-dwarf-split-inlining.dwo --binary=%S/Inputs/split-dwarf-split-inlining.perfbin --output=%t4 --fill-zero-for-all-funcs
+; RUN: FileCheck %s --input-file %t4 --check-prefix=CHECK-SPLIT-DWARF
+
----------------
Add a test case for no --dwp?


================
Comment at: llvm/tools/llvm-profgen/ProfiledBinary.cpp:685
+      DWARFUnit *DWOCU = DwarfUnit->getNonSkeletonUnitDIE(false).getDwarfUnit();
+      if (!DWOCU->isDWOUnit()) {
+        std::string DWOName = dwarf::toString(
----------------
What is a DWO unit checked against here? Is it an indirection to the real compilation unit?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D115973/new/

https://reviews.llvm.org/D115973



More information about the llvm-commits mailing list