Skip to content
  1. Apr 23, 2008
  2. Apr 06, 2008
  3. Mar 24, 2008
  4. Mar 13, 2008
  5. 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
  6. Mar 03, 2008
  7. Mar 02, 2008
  8. Feb 27, 2008
  9. Feb 26, 2008
  10. Feb 23, 2008
  11. Feb 22, 2008
  12. Feb 20, 2008
  13. Feb 19, 2008
  14. Feb 18, 2008
  15. Jan 28, 2008
  16. Jan 21, 2008
  17. Jan 14, 2008
  18. Jan 12, 2008
  19. Jan 06, 2008
    • Duncan Sands's avatar
      When transforming a call to a bitcast function into · 55e5090f
      Duncan Sands authored
      a direct call with cast parameters and cast return
      value (if any), instcombine was prepared to cast any
      non-void return value into any other, whether castable
      or not.  Add a new predicate for testing whether casting
      is valid, and check it both for the return value and
      (as a cleanup) for the parameters.
      
      llvm-svn: 45657
      55e5090f
  20. Jan 03, 2008
  21. Dec 29, 2007
  22. Dec 19, 2007
  23. Dec 18, 2007
  24. Dec 17, 2007
  25. Dec 16, 2007
    • Duncan Sands's avatar
      Make instcombine promote inline asm calls to 'nounwind' · 8e4847ee
      Duncan Sands authored
      calls.  Remove special casing of inline asm from the
      inliner.  There is a potential problem: the verifier
      rejects invokes of inline asm (not sure why).  If an
      asm call is not marked "nounwind" in some .ll, and
      instcombine is not run, but the inliner is run, then
      an illegal module will be created.  This is bad but
      I'm not sure what the best approach is.  I'm tempted
      to remove the check in the verifier...
      
      llvm-svn: 45073
      8e4847ee
  26. Dec 11, 2007
    • Christopher Lamb's avatar
      Implement address space attribute for LLVM pointer types. Address spaces are · 54dd24c2
      Christopher Lamb authored
      regions of memory that have a target specific relationship, as described in the 
      Embedded C Technical Report. 
      
      This also implements the 2007-12-11-AddressSpaces test, 
      which demonstrates how address space attributes can be used in LLVM IR.
      
      In addition, this patch changes the bitcode signature for stores (in a backwards 
      compatible manner), such that the pointer type, rather than the pointee type, is 
      encoded. This permits type information in the pointer (e.g. address space) to be 
      preserved for stores.
      
      LangRef updates are forthcoming.
      
      llvm-svn: 44858
      54dd24c2
  27. Dec 10, 2007
    • Gordon Henriksen's avatar
      Reverting dtor devirtualization patch. · 14a5569f
      Gordon Henriksen authored
      _sabre_: it has a major problem: by the time ~Value is run, all of the "parts" of the derived classes have been destroyed
      _sabre_: the vtable lives to fight another day
      
      llvm-svn: 44760
      14a5569f
Loading