aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Analysis/Analyses/GRSimpleVals.h
blob: 2e772ef53668029739a1f657e852a29fcfa9bf67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//===-- GRSimpleVals.h- Simple, Path-Sens. Constant Prop. ---------*- C++ -*-==//
//   
//                     The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
//               Constant Propagation via Graph Reachability
//
//  This file defines the interface to use the 'GRSimpleVals' path-sensitive
//  constant-propagation analysis.
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_CLANG_GRCONSTANTS
#define LLVM_CLANG_GRCONSTANTS

namespace clang {
  class Diagnostic;
  
  /// RunGRSimpleVals - This is a simple driver to run the GRSimpleVals analysis
  ///  on a provided CFG.  This interface will eventually be replaced with
  ///  something more elaborate as the requirements on the interface become
  ///  clearer.  The value returned is the number of nodes in the ExplodedGraph.
  unsigned RunGRSimpleVals(CFG& cfg, Decl& CD, ASTContext& Ctx,
                           Diagnostic& Diag, bool Visualize, bool TrimGraph);
  
} // end clang namespace


#endif