summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/sanitizer_common/scripts/sancov.py
diff options
context:
space:
mode:
authorKostya Serebryany <kcc@google.com>2015-03-18 00:23:44 +0000
committerKostya Serebryany <kcc@google.com>2015-03-18 00:23:44 +0000
commitcba49d4b04fe88c1562df00d9c8bf5568f28cd45 (patch)
tree41d266d8d22447c46b2db364126b5e606638ae63 /compiler-rt/lib/sanitizer_common/scripts/sancov.py
parente48237df95b49a36b8ffceb78c8a58f4be1b4344 (diff)
downloadbcm5719-llvm-cba49d4b04fe88c1562df00d9c8bf5568f28cd45.tar.gz
bcm5719-llvm-cba49d4b04fe88c1562df00d9c8bf5568f28cd45.zip
[sanitizer] add run-time a flag coverage_order_pcs. When true, the PCs are dumped in the order of their appearance
llvm-svn: 232573
Diffstat (limited to 'compiler-rt/lib/sanitizer_common/scripts/sancov.py')
-rwxr-xr-xcompiler-rt/lib/sanitizer_common/scripts/sancov.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler-rt/lib/sanitizer_common/scripts/sancov.py b/compiler-rt/lib/sanitizer_common/scripts/sancov.py
index 1614877ab5e..443521633ca 100755
--- a/compiler-rt/lib/sanitizer_common/scripts/sancov.py
+++ b/compiler-rt/lib/sanitizer_common/scripts/sancov.py
@@ -30,20 +30,23 @@ def ReadOneFile(path, bits):
f.seek(0, 2)
size = f.tell()
f.seek(0, 0)
- s = set(array.array(TypeCodeForBits(bits), f.read(size)))
+ s = array.array(TypeCodeForBits(bits), f.read(size))
print >>sys.stderr, "%s: read %d PCs from %s" % (prog_name, size * 8 / bits, path)
return s
def Merge(files, bits):
s = set()
for f in files:
- s = s.union(ReadOneFile(f, bits))
+ s = s.union(set(ReadOneFile(f, bits)))
print >> sys.stderr, "%s: %d files merged; %d PCs total" % \
(prog_name, len(files), len(s))
return sorted(s)
def PrintFiles(files, bits):
- s = Merge(files, bits)
+ if len(files) > 1:
+ s = Merge(files, bits)
+ else: # If there is just on file, print the PCs in order.
+ s = ReadOneFile(files[0], bits)
for i in s:
print "0x%x" % i
OpenPOWER on IntegriCloud