Branch Coverage

blib/lib/Dpkg/Shlibs/Objdump.pm
Criterion Covered Total %
branch 64 122 52.4


line true false branch
39 0 0 if ($id)
56 0 0 if (defined $sym and $sym->{'defined'})
65 0 0 if ($self->has_object($objid))
168 0 0 if exists $format{$file}
172 0 0 unless open my $fh, '<', $file
174 0 0 if (not defined $rc) { }
0 0 elsif ($rc != 64) { }
186 0 0 unless $elf{'magic'} eq "\177ELF"
187 0 0 unless $elf{'vertype'} == 1
190 0 0 if ($elf{'bits'} == 1) { }
0 0 elsif ($elf{'bits'} == 2) { }
197 0 0 if ($elf{'endian'} == 1) { }
0 0 elsif ($elf{'endian'} == 2) { }
224 0 0 unless open my $file_fh, '<', $file
226 0 0 if (read($file_fh, $header, 4) == 4)
227 0 0 if $header =~ /^\177ELF$/
252 0 16 if ($file)
279 0 0 if (&get_build_arch() ne &get_host_arch())
281 0 0 if &find_command($od)
290 0 0 unless $file
297 0 0 unless (defined $self->{'exec_abi'})
304 0 0 unless open my $objdump, '-|', $OBJDUMP, '-w', '-f', '-p', '-T', '-R', $file
317 184 12952 if length $_ == 0
319 24 12928 if (/^DYNAMIC SYMBOL TABLE:/) { }
12 12916 elsif (/^DYNAMIC RELOCATION RECORDS/) { }
22 12894 elsif (/^Dynamic Section:/) { }
20 12874 elsif (/^Program Header:/) { }
10 12864 elsif (/^Version definitions:/) { }
20 12844 elsif (/^Version References:/) { }
340 10710 2134 if ($section eq 'dynsym') { }
1028 1106 elsif ($section eq 'dynreloc') { }
490 616 elsif ($section eq 'dyninfo') { }
288 328 elsif ($section eq 'program') { }
72 256 elsif ($section eq 'none') { }
343 1028 0 if (/^\S+\s+(\S+)\s+(.+)$/) { }
349 36 454 if (/^\s*NEEDED\s+(\S+)/) { }
18 436 elsif (/^\s*SONAME\s+(\S+)/) { }
8 428 elsif (/^\s*HASH\s+(\S+)/) { }
18 410 elsif (/^\s*GNU_HASH\s+(\S+)/) { }
0 410 elsif (/^\s*RUNPATH\s+(\S+)/) { }
0 410 elsif (/^\s*RPATH\s+(\S+)/) { }
365 0 0 unless (scalar @{$self->{'RPATH'};})
370 6 282 if (/^\s*INTERP\s+/)
374 24 48 if (/^\s*.+:\s*file\s+format\s+(\S+)$/) { }
24 24 elsif (/^architecture:\s*\S+,\s*flags\s*\S+:$/) { }
436 10710 0 if ($line =~ /$dynsym_re/x) { }
0 0 elsif ($line =~ /^[0-9a-f]+ (.{7})\s+(\S+)\s+[0-9a-f]+/) { }
0 0 elsif ($line =~ /^REG_G\d+\s+/) { }
442 22 10688 if (defined $ver and $ver =~ /^$vis_re$/)
448 34 10676 if defined $vis
466 528 10182 if (defined $ver and $ver =~ /^\((.*)\)$/)
489 942 9768 unless $sym->{'defined'}
490 9768 0 unless exists $self->{'dynrelocs'}{$sym->{'name'}}
491 0 0 if ($self->{'dynrelocs'}{$sym->{'name'}} =~ /^R_.*_COPY$/)
500 804 9910 unless $self->{'SONAME'}
501 10174 540 if ($symbol->{'version'}) { }
515 32 6 if (exists $self->{'dynsyms'}{$name})
518 6 0 unless ($name =~ /@/)
519 6 0 if (exists $self->{'dynsyms'}{$name . '@Base'})
528 22668 60 if $_->{'defined'} and $_->{'dynamic'}
534 18 4462 if not $_->{'defined'}