5 my $quiet=shift @ARGV if ($ARGV[0]||"") eq "-q";
8 open F,"llvm-dwarfdump --color=0 --verbose --debug-info '$argv'|" or die;
12 my $redundant_children;
20 my $saved=eval($addr)+1-eval($redundant_addr);
22 print "saved=$saved:\n${redundant_text}saved_total=$saved_total\n\n" if !$quiet;
30 my($addr,$spaces,$rest)=(/^(0x[0-9a-f]{8}:| {11})( +)(.*)$/) or do {
33 if ($addr ne " "x11) {
39 if ($emptyline&&$redundant&&!$redundant_children) {
49 $redundant_text.=$_ if !$quiet;
51 my $spacesl=length $spaces or die;
52 if ($rest=~/\bDW_FORM_addr\b.*0x0000000000000000|\bDW_AT_signature\b/) {
55 $redundant_text=$die_text if !$quiet;
56 $redundant_children=($die_text=~/^.* [*]\n/);
57 $redundant_addr=$die_addr or die;
60 if ($rest=~/DW_AT_stmt_list/) {
64 if ($rest eq "NULL") {
66 next if $spacesl>$redundant;
71 print "$saved_total\n";