[PATCH] D74206: [llvm-dwarfdump][SecSize] Add the percentage of the whole binary

Djordje Todorovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 7 09:04:10 PST 2020


djtodoro updated this revision to Diff 243184.
djtodoro added a comment.

-Rebase


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

https://reviews.llvm.org/D74206

Files:
  llvm/tools/llvm-dwarfdump/SectionSizes.cpp


Index: llvm/tools/llvm-dwarfdump/SectionSizes.cpp
===================================================================
--- llvm/tools/llvm-dwarfdump/SectionSizes.cpp
+++ llvm/tools/llvm-dwarfdump/SectionSizes.cpp
@@ -51,23 +51,57 @@
                                     raw_ostream &OS) {
   OS << "----------------------------------------------------"
      << "\n";
-  OS << "  SECTION \t\t"
-     << "    SIZE"
-     << "\n";
-  OS << "------------ \t\t  ------------\n";
-
-  OS << " .debug_info \t\t  " << Sizes.TotalDebugInfo << "\n";
-  OS << " .debug_str \t\t  " << Sizes.TotalDebugStr << "\n";
-  OS << " .debug_abbrev \t\t  " << Sizes.TotalDebugAbbrev << "\n";
-  OS << " .debug_line \t\t  " << Sizes.TotalDebugLine << "\n";
-  OS << " .debug_ranges \t\t  " << Sizes.TotalDebugRanges << "\n";
-  OS << " .debug_loc \t\t  " << Sizes.TotalDebugLoc << "\n";
-  OS << " .debug_frame \t\t  " << Sizes.TotalDebugFrame << "\n";
-  OS << " .debug_macinfo \t  " << Sizes.TotalDebugMacInfo << "\n";
-  OS << " .debug_pubnames \t  " << Sizes.TotalDebugPubnames << "\n";
-  OS << " .debug_pubtypes \t  " << Sizes.TotalDebugPubtypes << "\n";
-  OS << " .debug_types \t\t  " << Sizes.TotalDebugTypes << "\n\n";
-  OS << " .debug_*: \t\t  " << Sizes.TotalDebugSectionsSize << "\n";
+  OS << "  SECTION \t\t\t  SIZE\n";
+  OS << "------------ \t\t  -----------------------\n";
+
+  OS << " .debug_info \t\t  " << Sizes.TotalDebugInfo << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugInfo / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_str \t\t  " << Sizes.TotalDebugStr << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugStr / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_abbrev \t\t  " << Sizes.TotalDebugAbbrev << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugAbbrev / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_line \t\t  " << Sizes.TotalDebugLine << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugLine / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_ranges \t\t  " << Sizes.TotalDebugRanges << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugRanges / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_loc \t\t  " << Sizes.TotalDebugLoc << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugLoc / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_frame \t\t  " << Sizes.TotalDebugFrame << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugFrame / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_macinfo \t  " << Sizes.TotalDebugMacInfo << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugMacInfo / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_pubnames \t  " << Sizes.TotalDebugPubnames << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugPubnames / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_pubtypes \t  " << Sizes.TotalDebugPubtypes << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugPubtypes / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
+  OS << " .debug_types \t\t  " << Sizes.TotalDebugTypes << "  ("
+     << format("%0.2f",
+               Sizes.TotalDebugTypes / (double)Sizes.TotalObjectSize * 100)
+     << "%)\n\n";
+  OS << " .debug_*: \t\t  " << Sizes.TotalDebugSectionsSize << "  ("
+     << format("%0.2f", Sizes.TotalDebugSectionsSize /
+                            (double)Sizes.TotalObjectSize * 100)
+     << "%)\n";
   OS << "----------------------------------------------------"
      << "\n";
   OS << " TOTAL FILE SIZE: " << Sizes.TotalObjectSize << "\n";


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D74206.243184.patch
Type: text/x-patch
Size: 3767 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200207/2ce3a2be/attachment.bin>


More information about the llvm-commits mailing list