Skip to content
  1. Mar 10, 2012
  2. Feb 05, 2012
  3. Feb 04, 2012
  4. Jan 26, 2012
  5. Jan 06, 2012
    • Ted Kremenek's avatar
      [analyzer] Make the entries in 'Environment' context-sensitive by making entries map from · 632e3b7e
      Ted Kremenek authored
      (Stmt*,LocationContext*) pairs to SVals instead of Stmt* to SVals.
      
      This is needed to support basic IPA via inlining.  Without this, we cannot tell
      if a Stmt* binding is part of the current analysis scope (StackFrameContext) or
      part of a parent context.
      
      This change introduces an uglification of the use of getSVal(), and thus takes
      two steps forward and one step back.  There are also potential performance implications
      of enlarging the Environment.  Both can be addressed going forward by refactoring the
      APIs and optimizing the internal representation of Environment.  This patch
      mainly introduces the functionality upon when we want to build upon (and clean up).
      
      llvm-svn: 147688
      632e3b7e
  6. Oct 24, 2011
  7. Oct 04, 2011
  8. Aug 20, 2011
    • Anna Zaks's avatar
      Static Analyzer Diagnostics: Kill the addVisitorCreator(callbackTy, void*) API... · f86615ca
      Anna Zaks authored
      Static Analyzer Diagnostics: Kill the addVisitorCreator(callbackTy, void*) API in favor of addVisitor(BugReporterVisitor*).
      
      1) Create a header file to expose the predefined visitors. And move the parent(BugReporterVisitor) there as well.
      
      2) Remove the registerXXXVisitor functions - the Visitor constructors/getters can be used now to create the object. One exception is registerVarDeclsLastStore(), which registers more then one visitor, so make it static member of FindLastStoreBRVisitor.
      
      3) Modify all the checkers to use the new API.
      
      llvm-svn: 138126
      f86615ca
  9. Aug 18, 2011
    • Anna Zaks's avatar
      Remove EnhancedBugReport and RangedBugReport - pull all the extra... · 3a6bdf8f
      Anna Zaks authored
      Remove EnhancedBugReport and RangedBugReport - pull all the extra functionality they provided into their parent BugReport. The only functional changes are: made getRanges() non const - it adds default range to Ranges if none are supplied, made getStmt() private, which was another FIXME.
      
      llvm-svn: 137894
      3a6bdf8f
  10. Aug 16, 2011
  11. Apr 23, 2011
  12. Apr 12, 2011
  13. Apr 02, 2011
  14. Mar 19, 2011
  15. Mar 15, 2011
  16. Mar 11, 2011
  17. Mar 01, 2011
  18. Feb 23, 2011
  19. Feb 17, 2011
    • Argyrios Kyrtzidis's avatar
      [analyzer] Pass CheckerManager to the registration functions. · 507ff53e
      Argyrios Kyrtzidis authored
      llvm-svn: 125777
      507ff53e
    • John McCall's avatar
      Change the representation of GNU ?: expressions to use a different expression · c07a0c7e
      John McCall authored
      class and to bind the shared value using OpaqueValueExpr.  This fixes an
      unnoticed problem with deserialization of these expressions where the
      deserialized form would lose the vital pointer-equality trait;  or rather,
      it fixes it because this patch also does the right thing for deserializing
      OVEs.
      
      Change OVEs to not be a "temporary object" in the sense that copy elision is
      permitted.
      
      This new representation is not totally unawkward to work with, but I think
      that's really part and parcel with the semantics we're modelling here.  In
      particular, it's much easier to fix things like the copy elision bug and to
      make the CFG look right.
      
      I've tried to update the analyzer to deal with this in at least some          
      obvious cases, and I think we get a much better CFG out, but the printing
      of OpaqueValueExprs probably needs some work.
      
      llvm-svn: 125744
      c07a0c7e
  20. Feb 15, 2011
  21. Feb 14, 2011
  22. Feb 12, 2011
  23. Feb 10, 2011
  24. Feb 08, 2011
  25. Jan 11, 2011
  26. Dec 23, 2010
  27. Dec 22, 2010
Loading