Skip to content
  1. Oct 24, 2008
  2. Oct 23, 2008
  3. Oct 22, 2008
  4. Oct 21, 2008
  5. Oct 18, 2008
  6. Oct 17, 2008
  7. Oct 04, 2008
    • Ted Kremenek's avatar
      This is a big patch, but the functionality change is small and the rest of the... · 5ca90a24
      Ted Kremenek authored
      This is a big patch, but the functionality change is small and the rest of the patch consists of deltas due to API changes.
      
      This patch overhauls the "memory region" abstraction that was prototyped (but never really used) as part of the Store.h.  This patch adds MemRegion.h and MemRegion.cpp, which defines the class MemRegion and its subclasses.  This classes serve to define an abstract representation of memory, with regions being layered on other regions to to capture the relationships between fields and variables, variables and the address space they are allocated in, and so on.  
      
      The main motivation of this patch is that key parts of the analyzer assumed that all value bindings were to VarDecls.  In the future this won't be the case, and this patch removes lval::DeclVal and replaces it with lval::MemRegionVal.  Now all pieces of the analyzer must reason about abstract memory blocks instead of just variables.
      
      There should be no functionality change from this patch, but it opens the door for significant improvements to the analyzer such as field-sensitivity and object-sensitivity, both which were on hold until the memory abstraction got generalized.
      
      The memory region abstraction also allows type-information to literally be affixed to a memory region.  This will allow the some now redundant logic to be removed from the retain/release checker.
      
      llvm-svn: 57042
      5ca90a24
  8. Oct 01, 2008
  9. Sep 28, 2008
  10. Sep 27, 2008
  11. Sep 21, 2008
  12. Sep 20, 2008
  13. Sep 03, 2008
    • Ted Kremenek's avatar
      Store: (static analyzer) · 1b9e1039
      Ted Kremenek authored
      - Change definition of store::Region and store::Binding (once again) to make
        them real classes that just wrap pointers. This makes them more strictly
        typed, and allows specific implementations of Regions/Bindings to just
        subclass them.
      - minor renamings to RegionExtent and its subclasses
      - added a bunch of doxygen comments
      
      StoreManager: (static analyzer)
      - added 'iterBindings', an iteration method for iterating over the bindings of a
        store. It that takes a callback object (acting like a poor man's closure).
      - added 'getRVal' version for store::Binding. Will potentially phase the other
        versions of GetRVal in StoreManager out.
      - reimplemented 'getBindings' to be non-virtual and to use 'iterBindings'
      
      BasicStoreManager: (static analyzer)
      - implemented 'iterBindings' for BasicStoreManager
      
      llvm-svn: 55688
      1b9e1039
  14. Aug 29, 2008
  15. Aug 17, 2008
  16. Aug 16, 2008
    • Ted Kremenek's avatar
      GRState: · ceba6ead
      Ted Kremenek authored
      - Remove ConstNotEq from GRState/GRStateManager (!= tracking uses GDM instead).
      - GRStateManager now can book-keep "contexts" (e.g., factory objects) for uses
        with data elements stored into the GDM.
      - Refactor pretty-printing of states to use GRState::Printer objects
        exclusively. This removed a huge amount of pretty-printing logic from
        GRExprEngine.
      
      CFRefCount
      - Simplified some API calls based on refinements to the GDM api.
      
      llvm-svn: 54835
      ceba6ead
  17. Aug 14, 2008
  18. Aug 13, 2008
  19. Aug 12, 2008
  20. Aug 11, 2008
    • Daniel Dunbar's avatar
      More #include cleaning · 6e8aa537
      Daniel Dunbar authored
       - Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h
       - Moved Sema::getCurMethodDecl() out of line (dependent on
         ObjCMethodDecl via dyn_cast).
      
      llvm-svn: 54629
      6e8aa537
  21. Jul 27, 2008
  22. Jul 24, 2008
  23. Jul 22, 2008
  24. Jul 18, 2008
  25. Jul 15, 2008
  26. Jul 11, 2008
  27. Jul 09, 2008
  28. Jul 07, 2008
Loading