Provided by: llvm-18_18.1.8-12_amd64 bug

NAME

       llvm-locstats - calculate statistics on DWARF debug location

SYNOPSIS

       llvm-locstats [options] [filename]

DESCRIPTION

       llvm-locstats  works  like  a  wrapper  around  llvm-dwarfdump.   It parses llvm-dwarfdump
       statistics regarding debug location by pretty printing it in a more human readable way.

       The line 0% shows the number and the percentage of DIEs with no location information,  but
       the  line  100%  shows the information for DIEs where there is location information in all
       code section bytes (where the variable or parameter is in the scope). The  line  [50%,60%)
       shows  the  number and the percentage of DIEs where the location information is between 50
       and 60 percentage of its scope covered.

OPTIONS

       --only-variables
              calculate the location statistics only for local variables

       --only-formal-parameters
              calculate the location statistics only for formal parameters

       --ignore-debug-entry-values
              ignore the location statistics on locations containing the debug entry values DWARF
              operation

       --draw-plot
              make histogram of location buckets generated (requires matplotlib)

       --compare
              compare  the debug location coverage on two files provided, and draw a plot showing
              the difference (requires matplotlib)

EXIT STATUS

       llvm-locstats returns 0 if the input file were parsed successfully. Otherwise, it  returns
       1.

EXAMPLE 1

       Pretty print the location coverage on the standard output.

          llvm-locstats a.out

            =================================================
                      Debug Location Statistics
            =================================================
                  cov%          samples       percentage(~)
            -------------------------------------------------
               0%                    1              16%
               (0%,10%)              0               0%
               [10%,20%)             0               0%
               [20%,30%)             0               0%
               [30%,40%)             0               0%
               [40%,50%)             0               0%
               [50%,60%)             1              16%
               [60%,70%)             0               0%
               [70%,80%)             0               0%
               [80%,90%)             1              16%
               [90%,100%)            0               0%
               100%                  3              50%
            =================================================
            -the number of debug variables processed: 6
            -PC ranges covered: 81%
            -------------------------------------------------
            -total availability: 83%
            =================================================

EXAMPLE 2

       Generate a plot as an image file.

          llvm-locstats --draw-plot file1.out
       [image]

EXAMPLE 3

       Generate a plot as an image file showing the difference in the debug location coverage.

          llvm-locstats --compare file1.out file1.withentryvals.out
       [image]

SEE ALSO

       llvm-dwarfdump(1)

AUTHOR

       Maintained by the LLVM Team (https://llvm.org/).

COPYRIGHT

       2003-2024, LLVM Project