Merge pull request #137 from haberman/updatetp

Updated third_party submodules.
diff --git a/README.md b/README.md
index 6d48013..bbf4d47 100644
--- a/README.md
+++ b/README.md
@@ -62,28 +62,28 @@
 ```
      VM SIZE                         FILE SIZE
  --------------                   --------------
-   0.0%       0 .debug_info        13.0Mi  37.6%
-   0.0%       0 .debug_loc         7.45Mi  21.5%
-   0.0%       0 .debug_str         5.14Mi  14.8%
-  40.1%  2.17Mi .text              2.17Mi   6.3%
-   0.0%       0 .debug_ranges      1.83Mi   5.3%
-  30.6%  1.66Mi .rodata            1.66Mi   4.8%
-   0.0%       0 .debug_line         878Ki   2.5%
-   0.0%       0 .strtab             458Ki   1.3%
-   7.1%   394Ki .rela.dyn           394Ki   1.1%
-   6.4%   357Ki .dynstr             357Ki   1.0%
-   5.5%   307Ki .data.rel.ro        307Ki   0.9%
-   0.0%       0 .debug_abbrev       283Ki   0.8%
-   4.2%   235Ki .eh_frame           235Ki   0.7%
-   0.0%       0 .symtab             187Ki   0.5%
-   2.2%   123Ki .dynsym             123Ki   0.3%
-   1.0%  54.1Ki .data              54.1Ki   0.2%
-   0.8%  44.6Ki .gcc_except_table  44.6Ki   0.1%
-   0.7%  39.6Ki .gnu.hash          39.6Ki   0.1%
-   0.7%  36.5Ki .eh_frame_hdr      36.5Ki   0.1%
-   0.5%  30.0Ki [24 Others]        29.7Ki   0.1%
-   0.0%       0 .debug_aranges     27.3Ki   0.1%
- 100.0%  5.42Mi TOTAL              34.7Mi 100.0%
+   0.0%       0 .debug_info        10.7Mi  37.1%
+   0.0%       0 .debug_loc         5.39Mi  18.6%
+   0.0%       0 .debug_str         4.48Mi  15.5%
+  37.7%  1.86Mi .text              1.86Mi   6.4%
+   0.0%       0 .debug_ranges      1.67Mi   5.8%
+  32.6%  1.61Mi .rodata            1.61Mi   5.6%
+   0.0%       0 .debug_line         856Ki   2.9%
+   0.0%       0 .strtab             470Ki   1.6%
+   7.2%   362Ki .dynstr             362Ki   1.2%
+   6.4%   321Ki .rela.dyn           321Ki   1.1%
+   6.1%   307Ki .data.rel.ro        307Ki   1.0%
+   0.0%       0 .debug_abbrev       241Ki   0.8%
+   4.6%   232Ki .eh_frame           232Ki   0.8%
+   0.0%       0 .symtab             188Ki   0.6%
+   2.5%   123Ki .dynsym             123Ki   0.4%
+   1.0%  48.4Ki .gcc_except_table  48.4Ki   0.2%
+   0.8%  39.8Ki .gnu.hash          39.8Ki   0.1%
+   0.7%  36.6Ki .eh_frame_hdr      36.6Ki   0.1%
+   0.0%       0 .debug_aranges     27.1Ki   0.1%
+   0.4%  17.7Ki [23 Others]        14.5Ki   0.0%
+   0.2%  10.3Ki .gnu.version       10.3Ki   0.0%
+ 100.0%  4.93Mi TOTAL              28.9Mi 100.0%
 ```
 
 The "VM SIZE" column tells you how much space the binary
@@ -104,58 +104,58 @@
 
 ```
 $ ./bloaty bloaty -d compileunits
-     VM SIZE                                                                                FILE SIZE
- --------------                                                                          --------------
-  62.3%  3.04Mi [None]                                                                    31.1Mi  94.4%
-  11.2%   557Ki [91 Others]                                                                556Ki   1.7%
-   3.7%   182Ki third_party/protobuf/src/google/protobuf/descriptor.cc                     179Ki   0.5%
-   3.2%   162Ki third_party/protobuf/src/google/protobuf/descriptor.pb.cc                  161Ki   0.5%
-   2.4%   117Ki third_party/capstone/arch/AArch64/AArch64InstPrinter.c                     117Ki   0.3%
-   2.1%   103Ki third_party/capstone/arch/ARM/ARMDisassembler.c                            103Ki   0.3%
-   1.9%  96.5Ki third_party/capstone/arch/Sparc/SparcInstPrinter.c                        96.5Ki   0.3%
-   1.6%  82.1Ki third_party/demumble/third_party/libcxxabi/cxa_demangle.cpp               82.1Ki   0.2%
-   1.5%  74.7Ki third_party/capstone/arch/PowerPC/PPCInstPrinter.c                        74.7Ki   0.2%
-   1.2%  61.8Ki third_party/protobuf/src/google/protobuf/generated_message_reflection.cc  61.8Ki   0.2%
-   1.2%  59.8Ki src/bloaty.cc                                                             59.7Ki   0.2%
-   1.1%  55.1Ki third_party/protobuf/src/google/protobuf/text_format.cc                   55.1Ki   0.2%
-   0.9%  43.3Ki third_party/capstone/arch/ARM/ARMInstPrinter.c                            43.3Ki   0.1%
-   0.8%  41.9Ki third_party/re2/re2/parse.cc                                              41.9Ki   0.1%
-   0.8%  39.1Ki third_party/protobuf/src/google/protobuf/map_field.cc                     39.1Ki   0.1%
-   0.7%  36.1Ki third_party/protobuf/src/google/protobuf/wire_format.cc                   36.1Ki   0.1%
-   0.7%  36.0Ki src/dwarf.cc                                                              36.0Ki   0.1%
-   0.7%  35.3Ki third_party/re2/re2/re2.cc                                                35.3Ki   0.1%
-   0.7%  33.8Ki third_party/protobuf/src/google/protobuf/extension_set.cc                 33.8Ki   0.1%
-   0.6%  30.8Ki third_party/capstone/arch/AArch64/AArch64Disassembler.c                   30.8Ki   0.1%
-   0.6%  29.4Ki third_party/re2/re2/dfa.cc                                                29.4Ki   0.1%
- 100.0%  4.87Mi TOTAL                                                                     32.9Mi 100.0%
+     VM SIZE                                                                                   FILE SIZE
+ --------------                                                                             --------------
+  44.2%  2.18Mi [137 Others]                                                                 10.7Mi  36.9%
+   5.4%   271Ki ../third_party/protobuf/src/google/protobuf/descriptor.cc                    3.92Mi  13.5%
+   7.1%   360Ki ../third_party/protobuf/src/google/protobuf/descriptor.pb.cc                 2.39Mi   8.2%
+   8.3%   416Ki ../third_party/capstone/arch/ARM/ARMDisassembler.c                           1.57Mi   5.4%
+   1.7%  87.4Ki ../third_party/protobuf/src/google/protobuf/text_format.cc                   1.00Mi   3.5%
+   2.1%   106Ki ../third_party/protobuf/src/google/protobuf/generated_message_reflection.cc   959Ki   3.2%
+   0.8%  38.1Ki ../third_party/protobuf/src/google/protobuf/descriptor_database.cc            771Ki   2.6%
+   1.5%  73.4Ki ../third_party/protobuf/src/google/protobuf/message.cc                        754Ki   2.5%
+   2.5%   126Ki ../src/bloaty.cc                                                              753Ki   2.5%
+   0.9%  43.5Ki ../third_party/re2/re2/dfa.cc                                                 648Ki   2.2%
+   1.2%  60.5Ki ../third_party/protobuf/src/google/protobuf/extension_set.cc                  610Ki   2.1%
+   0.8%  42.0Ki ../third_party/re2/re2/re2.cc                                                 595Ki   2.0%
+   0.6%  28.2Ki ../third_party/protobuf/src/google/protobuf/generated_message_util.cc         572Ki   1.9%
+   1.1%  56.5Ki ../third_party/protobuf/src/google/protobuf/map_field.cc                      565Ki   1.9%
+   0.8%  42.5Ki ../third_party/re2/re2/regexp.cc                                              543Ki   1.8%
+   1.8%  91.3Ki ../third_party/capstone/arch/AArch64/AArch64Disassembler.c                    523Ki   1.8%
+   1.0%  50.9Ki ../third_party/protobuf/src/google/protobuf/wire_format.cc                    520Ki   1.8%
+   1.8%  88.8Ki ../third_party/demumble/third_party/libcxxabi/cxa_demangle.cpp                490Ki   1.7%
+   3.2%   163Ki ../third_party/capstone/arch/AArch64/AArch64InstPrinter.c                     456Ki   1.5%
+   6.5%   329Ki ../third_party/capstone/arch/X86/X86DisassemblerDecoder.c                     427Ki   1.4%
+   6.7%   337Ki ../third_party/capstone/arch/X86/X86Mapping.c                                 417Ki   1.4%
+ 100.0%  4.93Mi TOTAL                                                                        28.9Mi 100.0%
 ```
 
 
 Run Bloaty with `--help` to see a list of available options:
 
 ```
-$ ./bloaty --help
 Bloaty McBloatface: a size profiler for binaries.
 
-USAGE: bloaty [options] file... [-- base_file...]
+USAGE: bloaty [OPTION]... FILE... [-- BASE_FILE...]
 
 Options:
 
   --csv              Output in CSV format instead of human-readable.
   --tsv              Output in TSV format instead of human-readable.
-  -c <file>          Load configuration from <file>.
-  -d <sources>       Comma-separated list of sources to scan.
-  -C <mode>          How to demangle symbols.  Possible values are:
-  --demangle=<mode>    --demangle=none   no demangling, print raw symbols
+  -c FILE            Load configuration from <file>.
+  -d SOURCE,SOURCE   Comma-separated list of sources to scan.
+  --debug-file=FILE  Use this file for debug symbols and/or symbol table.
+  -C MODE            How to demangle symbols.  Possible values are:
+  --demangle=MODE      --demangle=none   no demangling, print raw symbols
                        --demangle=short  demangle, but omit arg/return types
                        --demangle=full   print full demangled type
                      The default is --demangle=short.
-  --disassemble=<function>
+  --disassemble=FUNCTION
                      Disassemble this function (EXPERIMENTAL)
-  -n <num>           How many rows to show per level before collapsing
+  -n NUM             How many rows to show per level before collapsing
                      other keys into '[Other]'.  Set to '0' for unlimited.
                      Defaults to 20.
-  -s <sortby>        Whether to sort by VM or File size.  Possible values
+  -s SORTBY          Whether to sort by VM or File size.  Possible values
                      are:
                        -s vm
                        -s file
@@ -226,55 +226,56 @@
 
 ```
 $ bloaty -d segments,sections bloaty
-      VM SIZE                              FILE SIZE
+     VM SIZE                              FILE SIZE
  --------------                        --------------
-   0.0%       0 [Unmapped]              7.31Mi  94.2%
-      -NAN%       0 .debug_info             2.97Mi  40.6%
-      -NAN%       0 .debug_loc              2.30Mi  31.5%
-      -NAN%       0 .debug_str              1.03Mi  14.2%
-      -NAN%       0 .debug_ranges            611Ki   8.2%
-      -NAN%       0 .debug_line              218Ki   2.9%
-      -NAN%       0 .debug_abbrev           85.4Ki   1.1%
-      -NAN%       0 .strtab                 62.8Ki   0.8%
-      -NAN%       0 .symtab                 27.8Ki   0.4%
-      -NAN%       0 .debug_aranges          13.5Ki   0.2%
-      -NAN%       0 [Unmapped]              2.82Ki   0.0%
-      -NAN%       0 .shstrtab                  371   0.0%
-      -NAN%       0 .comment                    43   0.0%
-  99.2%   452Ki LOAD [RX]                452Ki   5.7%
-      73.4%   332Ki .text                    332Ki  73.4%
-      13.3%  60.0Ki .rodata                 60.0Ki  13.3%
-       7.0%  31.8Ki .eh_frame               31.8Ki   7.0%
-       2.3%  10.5Ki .gcc_except_table       10.5Ki   2.3%
-       0.9%  4.18Ki .eh_frame_hdr           4.18Ki   0.9%
-       0.8%  3.54Ki .dynsym                 3.54Ki   0.8%
-       0.8%  3.52Ki .dynstr                 3.52Ki   0.8%
-       0.7%  2.98Ki .rela.plt               2.98Ki   0.7%
-       0.4%  2.00Ki .plt                    2.00Ki   0.4%
-       0.1%     568 [ELF Headers]              568   0.1%
-       0.1%     408 .rela.dyn                  408   0.1%
-       0.1%     304 .gnu.version_r             304   0.1%
-       0.1%     302 .gnu.version               302   0.1%
-       0.0%     216 .gnu.hash                  216   0.0%
+   0.0%       0 [Unmapped]              24.0Mi  83.0%
+       NAN%       0 .debug_info             10.7Mi  44.7%
+       NAN%       0 .debug_loc              5.39Mi  22.4%
+       NAN%       0 .debug_str              4.48Mi  18.7%
+       NAN%       0 .debug_ranges           1.67Mi   6.9%
+       NAN%       0 .debug_line              856Ki   3.5%
+       NAN%       0 .strtab                  470Ki   1.9%
+       NAN%       0 .debug_abbrev            241Ki   1.0%
+       NAN%       0 .symtab                  188Ki   0.8%
+       NAN%       0 .debug_aranges          27.1Ki   0.1%
+       NAN%       0 .shstrtab                  390   0.0%
+       NAN%       0 [Unmapped]                 118   0.0%
+       NAN%       0 .comment                    28   0.0%
+  93.7%  4.62Mi LOAD [RX]               4.62Mi  16.0%
+      40.2%  1.86Mi .text                   1.86Mi  40.2%
+      34.8%  1.61Mi .rodata                 1.61Mi  34.8%
+       7.7%   362Ki .dynstr                  362Ki   7.7%
+       6.8%   321Ki .rela.dyn                321Ki   6.8%
+       4.9%   232Ki .eh_frame                232Ki   4.9%
+       2.6%   123Ki .dynsym                  123Ki   2.6%
+       1.0%  48.4Ki .gcc_except_table       48.4Ki   1.0%
+       0.8%  39.8Ki .gnu.hash               39.8Ki   0.8%
+       0.8%  36.6Ki .eh_frame_hdr           36.6Ki   0.8%
+       0.2%  10.3Ki .gnu.version            10.3Ki   0.2%
+       0.1%  4.36Ki .rela.plt               4.36Ki   0.1%
+       0.1%  2.92Ki .plt                    2.92Ki   0.1%
+       0.0%     624 [ELF Headers]              624   0.0%
+       0.0%     384 .gnu.version_r             384   0.0%
+       0.0%     104 .plt.got                   104   0.0%
+       0.0%      39 [LOAD [RX]]                 39   0.0%
        0.0%      36 .note.gnu.build-id          36   0.0%
        0.0%      32 .note.ABI-tag               32   0.0%
        0.0%      28 .interp                     28   0.0%
-       0.0%      26 .init                       26   0.0%
-       0.0%      18 [Unmapped]                  18   0.0%
-       0.0%       9 .fini                        9   0.0%
-   0.8%  3.46Ki LOAD [RW]               1.88Ki   0.0%
-      45.6%  1.58Ki .bss                         0   0.0%
-      29.3%  1.02Ki .got.plt                1.02Ki  54.1%
-      14.9%     528 .dynamic                   528  27.4%
-       7.1%     252 .data                      252  13.1%
-       1.4%      48 .init_array                 48   2.5%
-       0.7%      24 .got                        24   1.2%
-       0.5%      16 [Unmapped]                  16   0.8%
-       0.2%       8 .fini_array                  8   0.4%
-       0.2%       8 .jcr                         8   0.4%
-       0.1%       4 [None]                       0   0.0%
-   0.0%       0 [ELF Headers]           2.38Ki   0.0%
- 100.0%   456Ki TOTAL                   7.75Mi 100.0%
+       0.0%      23 .init                       23   0.0%
+       0.0%       9 [1 Others]                   9   0.0%
+   6.3%   316Ki LOAD [RW]                310Ki   1.0%
+      97.1%   307Ki .data.rel.ro             307Ki  99.1%
+       2.0%  6.20Ki .bss                         0   0.0%
+       0.5%  1.48Ki .got.plt                1.48Ki   0.5%
+       0.2%     560 .dynamic                   560   0.2%
+       0.1%     352 .init_array                352   0.1%
+       0.1%     328 .data                      328   0.1%
+       0.1%     192 .got                       192   0.1%
+       0.0%      56 [LOAD [RW]]                 32   0.0%
+       0.0%      16 .tdata                      16   0.0%
+       0.0%       8 .fini_array                  8   0.0%
+   0.0%       0 [ELF Headers]           2.50Ki   0.0%
+ 100.0%  4.93Mi TOTAL                   28.9Mi 100.0%
 ```
 
 Bloaty displays a maximum of 20 lines for each level; other
@@ -465,30 +466,30 @@
 
 ```
 $ ./bloaty -d symbols bloaty
-      VM SIZE                                                                                        FILE SIZE
- --------------                                                                                  --------------
-  17.9%  81.9Ki [Unmapped]                                                                        7.39Mi  95.3%
-  62.3%   283Ki [Other]                                                                            284Ki   3.6%
-   2.7%  12.3Ki re2::RE2::Match(re2::StringPiece const&, int, int, re2::RE2::Anchor, re2::String  12.3Ki   0.2%
-   1.7%  7.83Ki re2::unicode_groups                                                               7.83Ki   0.1%
-   1.7%  7.56Ki re2::NFA::Search                                                                  7.56Ki   0.1%
-   1.3%  5.76Ki re2::BitState::TrySearch                                                          5.76Ki   0.1%
-   1.2%  5.43Ki bloaty::Bloaty::ScanAndRollupFile                                                 5.43Ki   0.1%
-   1.0%  4.49Ki re2::DFA::DFA                                                                     4.49Ki   0.1%
-   1.0%  4.35Ki bool bloaty::(anonymous namespace)::ForEachElf<bloaty::(anonymous namespace)::Do  4.35Ki   0.1%
-   1.0%  4.34Ki re2::Regexp::Parse                                                                4.34Ki   0.1%
-   0.9%  4.20Ki re2::RE2::Init                                                                    4.20Ki   0.1%
-   0.9%  4.09Ki re2::Prog::IsOnePass                                                              4.09Ki   0.1%
-   0.9%  4.04Ki re2::Compiler::PostVisit                                                          4.04Ki   0.1%
-   0.9%  4.04Ki bloaty::ReadDWARFInlines                                                          4.04Ki   0.1%
-   0.9%  3.91Ki re2::Regexp::FactorAlternationRecursive                                           3.91Ki   0.0%
-   0.8%  3.77Ki re2::DFA::RunStateOnByte                                                          3.77Ki   0.0%
-   0.8%  3.68Ki re2::unicode_casefold                                                             3.68Ki   0.0%
-   0.8%  3.52Ki bloaty::ElfFileHandler::ProcessFile                                               3.52Ki   0.0%
-   0.7%  3.40Ki re2::DFA::InlinedSearchLoop(re2::DFA::SearchParams*, bool, bool, bool) [clone .c  3.40Ki   0.0%
-   0.7%  3.38Ki re2::DFA::InlinedSearchLoop(re2::DFA::SearchParams*, bool, bool, bool) [clone .c  3.38Ki   0.0%
-   0.0%     165 [None]                                                                                 0   0.0%
- 100.0%   456Ki TOTAL                                                                             7.75Mi 100.0%
+     VM SIZE                                         FILE SIZE
+ --------------                                   --------------
+   0.0%       0 [section .debug_info]              10.7Mi  37.1%
+   0.0%       0 [section .debug_loc]               5.39Mi  18.6%
+   0.0%       0 [section .debug_str]               4.48Mi  15.5%
+  64.8%  3.20Mi [5661 Others]                      3.86Mi  13.3%
+   0.0%       0 [section .debug_ranges]            1.67Mi   5.8%
+   0.0%       0 [section .debug_line]               856Ki   2.9%
+  12.9%   648Ki insns                               648Ki   2.2%
+   0.0%       0 [section .debug_abbrev]             241Ki   0.8%
+   4.3%   217Ki ARMInsts                            217Ki   0.7%
+   3.7%   185Ki insn_name_maps                      185Ki   0.6%
+   2.3%   117Ki AArch64_printInst                   117Ki   0.4%
+   2.3%   117Ki x86DisassemblerTwoByteOpcodes       117Ki   0.4%
+   2.0%   101Ki Sparc_printInst                     101Ki   0.3%
+   1.5%  74.3Ki PPC_printInst                      74.4Ki   0.3%
+   1.1%  54.0Ki x86DisassemblerThreeByte38Opcodes  54.0Ki   0.2%
+   1.1%  53.0Ki DecoderTable32                     53.1Ki   0.2%
+   1.0%  48.4Ki [section .gcc_except_table]        48.4Ki   0.2%
+   0.8%  41.5Ki reg_name_maps                      41.7Ki   0.1%
+   0.8%  39.8Ki [section .gnu.hash]                39.8Ki   0.1%
+   0.8%  38.7Ki decodeInstruction_4.constprop.128  38.8Ki   0.1%
+   0.7%  37.8Ki printInstruction                   37.8Ki   0.1%
+ 100.0%  4.93Mi TOTAL                              28.9Mi 100.0%
 ```
 
 You can control how symbols are demangled with the `-C MODE`
@@ -563,30 +564,30 @@
 
 ```
  $ ./bloaty -d compileunits bloaty
-     VM SIZE                            FILE SIZE
- --------------                      --------------
-  27.9%   128Ki [None]                7.43Mi  95.9%
-  12.9%  59.2Ki src/bloaty.cc         59.0Ki   0.7%
-   7.3%  33.4Ki re2/re2.cc            32.3Ki   0.4%
-   6.9%  31.6Ki re2/dfa.cc            31.6Ki   0.4%
-   6.8%  31.4Ki re2/parse.cc          31.4Ki   0.4%
-   6.7%  30.9Ki src/dwarf.cc          30.9Ki   0.4%
-   6.7%  30.6Ki re2/regexp.cc         27.8Ki   0.4%
-   5.1%  23.7Ki re2/compile.cc        23.7Ki   0.3%
-   4.3%  19.7Ki re2/simplify.cc       19.7Ki   0.2%
-   3.2%  14.8Ki src/elf.cc            14.8Ki   0.2%
-   3.1%  14.2Ki re2/nfa.cc            14.2Ki   0.2%
-   1.8%  8.34Ki re2/bitstate.cc       8.34Ki   0.1%
-   1.7%  7.84Ki re2/prog.cc           7.84Ki   0.1%
-   1.6%  7.13Ki re2/tostring.cc       7.13Ki   0.1%
-   1.5%  6.67Ki re2/onepass.cc        6.67Ki   0.1%
-   1.4%  6.58Ki src/macho.cc          6.58Ki   0.1%
-   0.7%  3.27Ki src/main.cc           3.27Ki   0.0%
-   0.2%     797 [Other]                  797   0.0%
-   0.1%     666 util/stringprintf.cc     666   0.0%
-   0.1%     573 util/strutil.cc          573   0.0%
-   0.1%     476 util/rune.cc             476   0.0%
- 100.0%   460Ki TOTAL                 7.75Mi 100.0%
+     VM SIZE                                                                                   FILE SIZE
+ --------------                                                                             --------------
+  44.2%  2.18Mi [137 Others]                                                                 10.7Mi  36.9%
+   5.4%   271Ki ../third_party/protobuf/src/google/protobuf/descriptor.cc                    3.92Mi  13.5%
+   7.1%   360Ki ../third_party/protobuf/src/google/protobuf/descriptor.pb.cc                 2.39Mi   8.2%
+   8.3%   416Ki ../third_party/capstone/arch/ARM/ARMDisassembler.c                           1.57Mi   5.4%
+   1.7%  87.4Ki ../third_party/protobuf/src/google/protobuf/text_format.cc                   1.00Mi   3.5%
+   2.1%   106Ki ../third_party/protobuf/src/google/protobuf/generated_message_reflection.cc   959Ki   3.2%
+   0.8%  38.1Ki ../third_party/protobuf/src/google/protobuf/descriptor_database.cc            771Ki   2.6%
+   1.5%  73.4Ki ../third_party/protobuf/src/google/protobuf/message.cc                        754Ki   2.5%
+   2.5%   126Ki ../src/bloaty.cc                                                              753Ki   2.5%
+   0.9%  43.5Ki ../third_party/re2/re2/dfa.cc                                                 648Ki   2.2%
+   1.2%  60.5Ki ../third_party/protobuf/src/google/protobuf/extension_set.cc                  610Ki   2.1%
+   0.8%  42.0Ki ../third_party/re2/re2/re2.cc                                                 595Ki   2.0%
+   0.6%  28.2Ki ../third_party/protobuf/src/google/protobuf/generated_message_util.cc         572Ki   1.9%
+   1.1%  56.5Ki ../third_party/protobuf/src/google/protobuf/map_field.cc                      565Ki   1.9%
+   0.8%  42.5Ki ../third_party/re2/re2/regexp.cc                                              543Ki   1.8%
+   1.8%  91.3Ki ../third_party/capstone/arch/AArch64/AArch64Disassembler.c                    523Ki   1.8%
+   1.0%  50.9Ki ../third_party/protobuf/src/google/protobuf/wire_format.cc                    520Ki   1.8%
+   1.8%  88.8Ki ../third_party/demumble/third_party/libcxxabi/cxa_demangle.cpp                490Ki   1.7%
+   3.2%   163Ki ../third_party/capstone/arch/AArch64/AArch64InstPrinter.c                     456Ki   1.5%
+   6.5%   329Ki ../third_party/capstone/arch/X86/X86DisassemblerDecoder.c                     427Ki   1.4%
+   6.7%   337Ki ../third_party/capstone/arch/X86/X86Mapping.c                                 417Ki   1.4%
+ 100.0%  4.93Mi TOTAL                                                                        28.9Mi 100.0%
 ```
 
 ## Inlines
@@ -844,12 +845,3 @@
 - Visualize the dependency tree of symbols (probably as a
   dominator tree) so users can see the weight of their
   binary in this way.
-
-## Improving the quality of data sources
-
-One of the things we have to do in Bloaty is deal with
-incomplete information.  For examples, `.debug_aranges`
-which we use for the `compileunits` data source is often
-missing or incomplete.  Refining the input sources to be
-more complete and accurate will make help Bloaty's numbers
-be even more accurate.
diff --git a/src/dwarf.cc b/src/dwarf.cc
index 20fad8d..cb7dd0c 100644
--- a/src/dwarf.cc
+++ b/src/dwarf.cc
@@ -25,6 +25,7 @@
 #include <vector>
 
 #include "absl/base/attributes.h"
+#include "absl/base/macros.h"
 #include "absl/strings/string_view.h"
 #include "absl/strings/substitute.h"
 #include "absl/types/optional.h"
@@ -694,13 +695,11 @@
 
 bool DIEReader::ReadCode() {
   uint32_t code;
-  size_t offset;
 again:
   if (remaining_.empty()) {
     state_ = State::kEof;
     return false;
   }
-  offset = remaining_.data() - unit_range_.data();
   code = ReadLEB128<uint32_t>(&remaining_);
   if (code == 0) {
     // null entry terminates a chain of sibling entries.
@@ -897,6 +896,7 @@
       if (reader.unit_sizes().dwarf_version() <= 2) {
         goto address_size;
       }
+      ABSL_FALLTHROUGH_INTENDED;
     case DW_FORM_sec_offset:
       if (reader.unit_sizes().dwarf64()) {
         return AttrValue(ReadMemcpy<uint64_t>(data));