Skip to content
Snippets Groups Projects
  1. Sep 10, 2010
  2. Sep 09, 2010
  3. Aug 23, 2010
  4. Aug 18, 2010
    • Tom Care's avatar
      Added psuedo-constant analysis and integrated it into the false positive... · 245adabd
      Tom Care authored
      Added psuedo-constant analysis and integrated it into the false positive reduction stage in IdempotentOperationChecker.
      - Renamed IdempotentOperationChecker::isConstant to isConstantOrPseudoConstant to better reflect the function
      - Changed IdempotentOperationChecker::PreVisitBinaryOperator to only run 'CanVary' once on undefined assumptions
      - Created new PsuedoConstantAnalysis class and added it to AnalysisContext
      - Changed IdempotentOperationChecker to exploit the new analysis
      - Updated tests with psuedo-constants
      - Added check to IdempotentOperationChecker to see if a Decl is const qualified
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111426 91177308-0d34-0410-b5e6-96231b3b80d8
      245adabd
  5. Aug 04, 2010
  6. Jul 16, 2010
  7. Jun 17, 2010
  8. May 30, 2010
  9. May 05, 2010
  10. Feb 23, 2010
  11. Jan 28, 2010
    • Ted Kremenek's avatar
      Add skeleton for a more structured way to analyzing pring format · 8f0a1c73
      Ted Kremenek authored
      strings than what we currently have in Sema.  This is both an
      experiment and a WIP.
      
      The idea is simple: parse the format string incrementally,
      constructing a well-structure representation of each format specifier.
      Each format specifier is then handed back one-by-one to a client via a
      callback.  Malformed format strings are also handled with callbacks.
      The idea is to separate the parsing of the format string from the
      emission of diagnostics.  Currently what we have in Sema for handling
      format strings is a mongrel of both that is hard to follow and
      difficult to modify (I can apply this label since I'm the original
      author of that code).
      
      This is in libAnalysis as it is reasonable generic and can potentially
      be used both by libSema and libChecker.
      
      Comments welcome.
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94702 91177308-0d34-0410-b5e6-96231b3b80d8
      8f0a1c73
  12. Jan 25, 2010
    • Ted Kremenek's avatar
      Split libAnalysis into two libraries: libAnalysis and libChecker. · 1309f9a3
      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.
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94406 91177308-0d34-0410-b5e6-96231b3b80d8
      1309f9a3
  13. Dec 09, 2009
  14. Dec 08, 2009
  15. Dec 07, 2009
  16. Dec 03, 2009
  17. Nov 24, 2009
  18. Nov 23, 2009
  19. Nov 21, 2009
  20. Nov 13, 2009
  21. Nov 12, 2009
  22. Nov 11, 2009
  23. Nov 09, 2009
  24. Nov 08, 2009
  25. Nov 06, 2009
  26. Nov 04, 2009
  27. Nov 03, 2009
Loading