Skip to content
  1. Feb 08, 2010
  2. Feb 06, 2010
  3. Feb 05, 2010
  4. Feb 04, 2010
  5. Feb 03, 2010
    • Chandler Carruth's avatar
      54a0f48e
    • Zhongxing Xu's avatar
      Add skeleton of flat store manager. · 5df3f536
      Zhongxing Xu authored
      llvm-svn: 95214
      5df3f536
    • Ted Kremenek's avatar
      Fix regression in RegionStore due to recent changes in · d960564b
      Ted Kremenek authored
      RegionStoreManager::InvalidateRegions() by adjusting the worklist to
      iterate over BindingKeys instead of MemRegions.  We also only need to
      do the actual invalidation work on base regions, and for non-base
      regions just blow away their bindings.
      
      llvm-svn: 95200
      d960564b
    • Ted Kremenek's avatar
      Rework RegionStoreManager's implementation of InvalidateRegions() to · 64efd0d2
      Ted Kremenek authored
      not build a subregion map and instead do a single scan of the store.
      This is done by building "region clusters" that represent the
      collection of regions that have the same base region.  Invalidating
      any region in a cluster means that they all should get invalidated.
      
      This change brought out a point that Zhongxing mentioned to me
      offline: the flattened memory binding has issues distinguishing
      between direct and default bindings.  For example, setting the default
      value for an entire struct is the same as binding to the first
      element.  To address this problem, I moved the binding "tag" (Direct
      or Default) from BindingVal to BdingKey (and removed BindingVal
      entirely).  This requires us to do double lookups in some cases; and
      there is still much more cleanup that can be done.
      
      This change produced a noticeable speedup when analyzing sqlite3 (a
      reduction of 4% in running time).
      
      llvm-svn: 95193
      64efd0d2
  6. Feb 02, 2010
  7. Jan 27, 2010
  8. Jan 26, 2010
  9. Jan 25, 2010
Loading