Skip to content
  1. Jan 25, 2010
    • Ted Kremenek's avatar
      Split libAnalysis into two libraries: libAnalysis and libChecker. · d6b87086
      Ted Kremenek authored
      (1) libAnalysis is a generic analysis library that can be used by
          Sema.  It defines the CFG, basic dataflow analysis primitives, and
          inexpensive flow-sensitive analyses (e.g. LiveVariables).
      
      (2) libChecker contains the guts of the static analyzer, incuding the
          path-sensitive analysis engine and domain-specific checks.
      
      Now any clients that want to use the frontend to build their own tools
      don't need to link in the entire static analyzer.
      
      This change exposes various obvious cleanups that can be made to the
      layout of files and headers in libChecker.  More changes pending.  :)
      
      This change also exposed a layering violation between AnalysisContext
      and MemRegion.  BlockInvocationContext shouldn't explicitly know about
      BlockDataRegions.  For now I've removed the BlockDataRegion* from
      BlockInvocationContext (removing context-sensitivity; although this
      wasn't used yet).  We need to have a better way to extend
      BlockInvocationContext (and any LocationContext) to add
      context-sensitivty.
      
      llvm-svn: 94406
      d6b87086
  2. Jul 06, 2009
    • Argyrios Kyrtzidis's avatar
      Introduce the 'Index' library. · fe37cc83
      Argyrios Kyrtzidis authored
      Its purpose is to provide the basic infrastructure for cross-translation-unit analysis like indexing, refactoring, etc.
      
      Currently it is very "primitive" and with no type-names support. It can provide functionality like
      "show me all references of this function from these translation units".
      
      llvm-svn: 74802
      fe37cc83
  3. Mar 24, 2009
  4. Mar 02, 2009
  5. Oct 26, 2008
Loading