Skip to content
  1. Apr 10, 2008
    • Dan Gohman's avatar
      Teach InstCombine's ComputeMaskedBits to handle pointer expressions · 99b7b3f0
      Dan Gohman authored
      in addition to integer expressions. Rewrite GetOrEnforceKnownAlignment
      as a ComputeMaskedBits problem, moving all of its special alignment
      knowledge to ComputeMaskedBits as low-zero-bits knowledge.
      
      Also, teach ComputeMaskedBits a few basic things about Mul and PHI
      instructions.
      
      This improves ComputeMaskedBits-based simplifications in a few cases,
      but more noticeably it significantly improves instcombine's alignment
      detection for loads, stores, and memory intrinsics.
      
      llvm-svn: 49492
      99b7b3f0
  2. Apr 09, 2008
  3. Apr 07, 2008
  4. Apr 06, 2008
  5. Apr 02, 2008
    • David Greene's avatar
      · 586740f4
      David Greene authored
      Iterators folloring a SmallVector erased element are invalidated so
      don't access cached iterators from after the erased element.
      
      Re-apply 49056 with SmallVector support.
      
      llvm-svn: 49106
      586740f4
    • Tanya Lattner's avatar
      Reverting 49056 due to the build being broken. · 052838c5
      Tanya Lattner authored
      llvm-svn: 49060
      052838c5
    • David Greene's avatar
      · 7f7edc38
      David Greene authored
      Iterators folloring a SmallVector erased element are invalidated so
      don't access cached iterators from after the erased element.
      
      llvm-svn: 49056
      7f7edc38
  6. Mar 31, 2008
  7. Mar 30, 2008
  8. Mar 29, 2008
  9. Mar 28, 2008
    • Chris Lattner's avatar
      make memset inference significantly more powerful: it can now handle · d62964a7
      Chris Lattner authored
      memsets that initialize "structs of arrays" and other store sequences
      that are not sequential.  This is still only enabled if you pass 
      -form-memset-from-stores.  The flag is not heavily tested and I haven't
      analyzed the perf regressions when -form-memset-from-stores is passed
      either, but this causes no make check regressions.
      
      llvm-svn: 48909
      d62964a7
  10. Mar 27, 2008
  11. Mar 25, 2008
  12. Mar 24, 2008
  13. Mar 22, 2008
  14. Mar 21, 2008
  15. Mar 20, 2008
  16. Mar 19, 2008
  17. Mar 18, 2008
  18. Mar 16, 2008
  19. Mar 14, 2008
  20. Mar 13, 2008
  21. Mar 12, 2008
    • Chris Lattner's avatar
      Reimplement the parameter attributes support, phase #1. hilights: · 8a923e7c
      Chris Lattner authored
      1. There is now a "PAListPtr" class, which is a smart pointer around
         the underlying uniqued parameter attribute list object, and manages
         its refcount.  It is now impossible to mess up the refcount.
      2. PAListPtr is now the main interface to the underlying object, and
         the underlying object is now completely opaque.
      3. Implementation details like SmallVector and FoldingSet are now no
         longer part of the interface.
      4. You can create a PAListPtr with an arbitrary sequence of
         ParamAttrsWithIndex's, no need to make a SmallVector of a specific 
         size (you can just use an array or scalar or vector if you wish).
      5. All the client code that had to check for a null pointer before
         dereferencing the pointer is simplified to just access the 
         PAListPtr directly.
      6. The interfaces for adding attrs to a list and removing them is a
         bit simpler.
      
      Phase #2 will rename some stuff (e.g. PAListPtr) and do other less 
      invasive changes.
      
      llvm-svn: 48289
      8a923e7c
Loading