llvm-capstone/clang/lib/Analysis
Anna Zaks c000e7ed3d Add a basic CallGraph to Analysis.
The final graph contains a single root node, which is a parent of all externally available functions(and 'main'). As well as a list of Parentless/Unreachable functions, which are either truly unreachable or are unreachable due to our analyses imprecision.

The analyzer checkers debug.DumpCallGraph or debug.ViewGraph can be used to look at the produced graph.

Currently, the graph is not very precise, for example, it entirely skips edges resulted from ObjC method calls.

llvm-svn: 152272
2012-03-08 00:42:23 +00:00
..
AnalysisDeclContext.cpp Move llvm/ADT/SaveAndRestore.h -> llvm/Support/SaveAndRestore.h. 2012-03-01 19:45:56 +00:00
CallGraph.cpp Add a basic CallGraph to Analysis. 2012-03-08 00:42:23 +00:00
CFG.cpp AST representation for user-defined literals, plus just enough of semantic 2012-03-07 08:35:16 +00:00
CFGReachabilityAnalysis.cpp remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports 2011-07-23 10:55:15 +00:00
CFGStmtMap.cpp Constify the result of CFGStmt::getStmt(). 2011-08-23 23:05:04 +00:00
CMakeLists.txt Add a basic CallGraph to Analysis. 2012-03-08 00:42:23 +00:00
CocoaConventions.cpp More dead code removal (using -Wunreachable-code) 2012-01-20 21:50:17 +00:00
Dominators.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
FormatString.cpp Warn about non-standard format strings (pr12017) 2012-02-22 10:17:01 +00:00
FormatStringParsing.h Support the 'a' length modifier in scanf format strings as a C90 2011-12-15 10:25:47 +00:00
LiveVariables.cpp Enhance AnalysisDeclContext::getReferencedBlockVars() to understand PseudoObjExprs. It turns out 2011-12-22 01:30:46 +00:00
Makefile
PostOrderCFGView.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
PrintfFormatString.cpp Format string analysis: give 'q' its own enumerator. 2012-02-16 16:34:54 +00:00
ProgramPoint.cpp ProgramPoint cleanup after the previous commit r141408 (remove the copy constructor, mark withTag const). 2011-10-07 21:01:38 +00:00
PseudoConstantAnalysis.cpp Cleanup various declarations of 'Stmt*' to be 'Stmt *', etc. in libAnalyzer and libStaticAnalyzer[*]. It was highly inconsistent, and very ugly to look at. 2011-08-12 23:37:29 +00:00
ReachableCode.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
ScanfFormatString.cpp Format string analysis: give 'q' its own enumerator. 2012-02-16 16:34:54 +00:00
ThreadSafety.cpp Thread safety analysis: expand set of expressions that can be used to denote locks. 2012-03-02 23:36:05 +00:00
UninitializedValues.cpp Move llvm/ADT/SaveAndRestore.h -> llvm/Support/SaveAndRestore.h. 2012-03-01 19:45:56 +00:00