[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.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158187 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/analyzer/CmpRuns.py b/utils/analyzer/CmpRuns.py
index e68c45d..2200453 100755
--- a/utils/analyzer/CmpRuns.py
+++ b/utils/analyzer/CmpRuns.py
@@ -134,6 +134,14 @@
 
     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 @@
     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)