Skip to content
  1. Feb 02, 2012
  2. Feb 01, 2012
  3. Jan 31, 2012
  4. Jan 30, 2012
  5. Jan 28, 2012
  6. Jan 26, 2012
  7. Jan 24, 2012
  8. Jan 21, 2012
  9. Jan 20, 2012
  10. Jan 18, 2012
  11. Jan 17, 2012
  12. Jan 14, 2012
  13. Jan 13, 2012
  14. Jan 12, 2012
  15. Jan 11, 2012
  16. Jan 07, 2012
  17. 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
  18. Jan 05, 2012
    • Anna Zaks's avatar
      [analyzer] Be less pessimistic about invalidation of global variables · 8158ef0d
      Anna Zaks authored
      as a result of a call.
      
      Problem:
      Global variables, which come in from system libraries should not be
      invalidated by all calls. Also, non-system globals should not be
      invalidated by system calls.
      
      Solution:
      The following solution to invalidation of globals seems flexible enough
      for taint (does not invalidate stdin) and should not lead to too
      many false positives. We split globals into 3 classes:
      
      * immutable - values are preserved by calls (unless the specific
      global is passed in as a parameter):
           A :  Most system globals and const scalars
      
      * invalidated by functions defined in system headers:
           B: errno
      
      * invalidated by all other functions (note, these functions may in
      turn contain system calls):
           B: errno
           C: all other globals (which are not in A nor B)
      
      llvm-svn: 147569
      8158ef0d
    • Ted Kremenek's avatar
      Fix 80 col violations. · 778d2bb8
      Ted Kremenek authored
      llvm-svn: 147566
      778d2bb8
  19. Jan 04, 2012
Loading