1249423Sdim//== FunctionSummary.cpp - Stores summaries of functions. ----------*- C++ -*-//
2234287Sdim//
3234287Sdim//                     The LLVM Compiler Infrastructure
4234287Sdim//
5234287Sdim// This file is distributed under the University of Illinois Open Source
6234287Sdim// License. See LICENSE.TXT for details.
7234287Sdim//
8234287Sdim//===----------------------------------------------------------------------===//
9234287Sdim//
10249423Sdim// This file defines a summary of a function gathered/used by static analysis.
11234287Sdim//
12234287Sdim//===----------------------------------------------------------------------===//
13234287Sdim
14234287Sdim#include "clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h"
15234287Sdimusing namespace clang;
16234287Sdimusing namespace ento;
17234287Sdim
18234287Sdimunsigned FunctionSummariesTy::getTotalNumBasicBlocks() {
19234287Sdim  unsigned Total = 0;
20234287Sdim  for (MapTy::iterator I = Map.begin(), E = Map.end(); I != E; ++I) {
21249423Sdim    Total += I->second.TotalBasicBlocks;
22234287Sdim  }
23234287Sdim  return Total;
24234287Sdim}
25234287Sdim
26234287Sdimunsigned FunctionSummariesTy::getTotalNumVisitedBasicBlocks() {
27234287Sdim  unsigned Total = 0;
28234287Sdim  for (MapTy::iterator I = Map.begin(), E = Map.end(); I != E; ++I) {
29249423Sdim    Total += I->second.VisitedBasicBlocks.count();
30234287Sdim  }
31234287Sdim  return Total;
32234287Sdim}
33