mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 04:32:44 +01:00
[sancov] applying blacklist to covered points too
Differential Revision: https://reviews.llvm.org/D28872 llvm-svn: 292468
This commit is contained in:
parent
1471b048f9
commit
d863e3261f
@ -1,3 +1,3 @@
|
||||
# this path looks like sancov/Inputs/../Inputs/ in the binary.
|
||||
# Make sure it is filtered out correctly.
|
||||
src:*/sancov/Inputs/foo.cpp
|
||||
src:*/sancov/Inputs/test.cpp
|
||||
|
@ -1,10 +1,26 @@
|
||||
REQUIRES: x86_64-linux
|
||||
RUN: sancov -covered-functions %p/Inputs/test-linux_x86_64 %p/Inputs/test-linux_x86_64.0.sancov | FileCheck %s --check-prefix=ALL
|
||||
RUN: sancov -covered-functions -blacklist %p/Inputs/fun_blacklist.txt %p/Inputs/test-linux_x86_64 %p/Inputs/test-linux_x86_64.0.sancov | FileCheck %s
|
||||
RUN: sancov -covered-functions -blacklist %p/Inputs/src_blacklist.txt %p/Inputs/test-linux_x86_64 %p/Inputs/test-linux_x86_64.1.sancov | FileCheck --check-prefix=CHECK1 %s
|
||||
RUN: sancov -print-coverage-stats %p/Inputs/test-linux_x86_64 %p/Inputs/test-linux_x86_64.1.sancov | FileCheck --check-prefix=STATS %s
|
||||
RUN: sancov -print-coverage-stats -blacklist %p/Inputs/fun_blacklist.txt %p/Inputs/test-linux_x86_64 %p/Inputs/test-linux_x86_64.1.sancov | FileCheck --check-prefix=STATS-BLIST %s
|
||||
|
||||
CHECK-NOT: Inputs{{[/\\]}}test.cpp:12 bar(std::string)
|
||||
CHECK: Inputs{{[/\\]}}test.cpp:14 main
|
||||
ALL: test.cpp:12 bar(std::string)
|
||||
ALL: test.cpp:14 main
|
||||
|
||||
CHECK-NOT: test.cpp:12 bar(std::string)
|
||||
CHECK: test.cpp:14 main
|
||||
|
||||
CHECK1-NOT: test.cpp:12 bar(std::string)
|
||||
CHECK1-NOT: test.cpp:14 main
|
||||
|
||||
STATS: all-edges: 9
|
||||
STATS: cov-edges: 7
|
||||
STATS: all-functions: 3
|
||||
STATS: cov-functions: 3
|
||||
|
||||
STATS-BLIST: all-edges: 8
|
||||
STATS-BLIST: cov-edges: 6
|
||||
STATS-BLIST: all-functions: 2
|
||||
STATS-BLIST: cov-functions: 2
|
||||
|
||||
CHECK1-NOT: foo
|
||||
CHECK1: Inputs{{[/\\]}}test.cpp:12 bar(std::string)
|
||||
CHECK1: Inputs{{[/\\]}}test.cpp:14 main
|
||||
|
@ -946,7 +946,15 @@ symbolize(const RawCoverage &Data, const std::string ObjectFile) {
|
||||
Hasher.update((*BufOrErr)->getBuffer());
|
||||
Coverage->BinaryHash = toHex(Hasher.final());
|
||||
|
||||
Blacklists B;
|
||||
auto Symbolizer(createSymbolizer());
|
||||
|
||||
for (uint64_t Addr : *Data.Addrs) {
|
||||
auto LineInfo = Symbolizer->symbolizeCode(ObjectFile, Addr);
|
||||
failIfError(LineInfo);
|
||||
if (B.isBlacklisted(*LineInfo))
|
||||
continue;
|
||||
|
||||
Coverage->CoveredIds.insert(utohexstr(Addr, true));
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user