summaryrefslogtreecommitdiffstats
path: root/clang/utils/analyzer/CmpRuns.py
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2012-06-08 01:50:49 +0000
committerAnna Zaks <ganna@apple.com>2012-06-08 01:50:49 +0000
commitd60367b8938dca0392daccd51a5aad3002709cae (patch)
tree0d26315fb879a7ab2edc7a8af703ed42b2814bce /clang/utils/analyzer/CmpRuns.py
parent337a5a1c3f450a1bfe69bef54dd46d6fac823e06 (diff)
downloadbcm5719-llvm-d60367b8938dca0392daccd51a5aad3002709cae.tar.gz
bcm5719-llvm-d60367b8938dca0392daccd51a5aad3002709cae.zip
[analyzer] Use "issue hash" in CmpRuns; followup on r158180
(For the future: It would be more efficient to produce a hash key with the embedded function info inside the compiler.) llvm-svn: 158187
Diffstat (limited to 'clang/utils/analyzer/CmpRuns.py')
-rwxr-xr-xclang/utils/analyzer/CmpRuns.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/utils/analyzer/CmpRuns.py b/clang/utils/analyzer/CmpRuns.py
index e68c45df184..220045319fa 100755
--- a/clang/utils/analyzer/CmpRuns.py
+++ b/clang/utils/analyzer/CmpRuns.py
@@ -134,6 +134,14 @@ def loadResults(path, opts, deleteEmpty=True):
return run
+def getIssueIdentifier(d) :
+ id = ''
+ if 'issue_context' in d.data :
+ id += d.data['issue_context']
+ if 'issue_hash' in d.data :
+ id += str(d.data['issue_hash'])
+ return id
+
def compareResults(A, B):
"""
compareResults - Generate a relation from diagnostics in run A to
@@ -152,12 +160,12 @@ def compareResults(A, B):
neqB = []
eltsA = list(A.diagnostics)
eltsB = list(B.diagnostics)
- eltsA.sort(key = lambda d: d.data)
- eltsB.sort(key = lambda d: d.data)
+ eltsA.sort(key = getIssueIdentifier)
+ eltsB.sort(key = getIssueIdentifier)
while eltsA and eltsB:
a = eltsA.pop()
b = eltsB.pop()
- if a.data['location'] == b.data['location']:
+ if (getIssueIdentifier(a) == getIssueIdentifier(b)) :
res.append((a, b, 0))
elif a.data > b.data:
neqA.append(a)
OpenPOWER on IntegriCloud