[analyzer] Use the new registration mechanism on the non-path-sensitive-checkers:
[clang.git] / include / clang / Frontend / Analyses.def
blob289ac83cc3544736b7bdaa4442cf6da5e85315ca
1 //===-- Analyses.def - Metadata about Static Analyses -----------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file defines the set of static analyses used by AnalysisConsumer.
12 //===----------------------------------------------------------------------===//
14 #ifndef ANALYSIS
15 #define ANALYSIS(NAME, CMDFLAG, DESC, SCOPE)
16 #endif
18 ANALYSIS(CFGDump, "cfg-dump",
19 "Display Control-Flow Graphs", Code)
21 ANALYSIS(CFGView, "cfg-view",
22 "View Control-Flow Graphs using GraphViz", Code)
24 ANALYSIS(DisplayLiveVariables, "dump-live-variables",
25 "Print results of live variable analysis", Code)
27 ANALYSIS(WarnUninitVals, "warn-uninit-values",
28 "Warn about uses of uninitialized variables", Code)
30 ANALYSIS(ObjCMemChecker, "analyzer-check-objc-mem",
31 "Run the [Core] Foundation reference count checker", Code)
33 #ifndef ANALYSIS_STORE
34 #define ANALYSIS_STORE(NAME, CMDFLAG, DESC, CREATFN)
35 #endif
37 ANALYSIS_STORE(BasicStore, "basic", "Use basic analyzer store", CreateBasicStoreManager)
38 ANALYSIS_STORE(RegionStore, "region", "Use region-based analyzer store", CreateRegionStoreManager)
39 ANALYSIS_STORE(FlatStore, "flat", "Use flat analyzer store", CreateFlatStoreManager)
41 #ifndef ANALYSIS_CONSTRAINTS
42 #define ANALYSIS_CONSTRAINTS(NAME, CMDFLAG, DESC, CREATFN)
43 #endif
45 ANALYSIS_CONSTRAINTS(BasicConstraints, "basic", "Use basic constraint tracking", CreateBasicConstraintManager)
46 ANALYSIS_CONSTRAINTS(RangeConstraints, "range", "Use constraint tracking of concrete value ranges", CreateRangeConstraintManager)
48 #ifndef ANALYSIS_DIAGNOSTICS
49 #define ANALYSIS_DIAGNOSTICS(NAME, CMDFLAG, DESC, CREATEFN, AUTOCREATE)
50 #endif
52 ANALYSIS_DIAGNOSTICS(HTML, "html", "Output analysis results using HTML", createHTMLDiagnosticClient, false)
53 ANALYSIS_DIAGNOSTICS(PLIST, "plist", "Output analysis results using Plists", createPlistDiagnosticClient, true)
54 ANALYSIS_DIAGNOSTICS(PLIST_HTML, "plist-html", "Output analysis results using HTML wrapped with Plists", createPlistHTMLDiagnosticClient, true)
55 ANALYSIS_DIAGNOSTICS(TEXT, "text", "Text output of analysis results", createTextPathDiagnosticClient, true)
57 #undef ANALYSIS
58 #undef ANALYSIS_STORE
59 #undef ANALYSIS_CONSTRAINTS
60 #undef ANALYSIS_DIAGNOSTICS
61 #undef ANALYSIS_STORE