Skip to content
  1. Jan 12, 2008
  2. Jan 11, 2008
  3. Jan 07, 2008
  4. Jan 06, 2008
    • Duncan Sands's avatar
      The transform that tries to turn calls to bitcast functions into · 404eb052
      Duncan Sands authored
      direct calls bails out unless caller and callee have essentially
      equivalent parameter attributes.  This is illogical - the callee's
      attributes should be of no relevance here.  Rework the logic, which
      incidentally fixes a crash when removed arguments have attributes.
      
      llvm-svn: 45658
      404eb052
    • 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
  5. Jan 03, 2008
  6. Jan 02, 2008
  7. Jan 01, 2008
  8. Dec 30, 2007
  9. Dec 29, 2007
  10. Dec 27, 2007
  11. Dec 25, 2007
  12. Dec 21, 2007
    • Duncan Sands's avatar
      Get the verifier to check attributes on calls as well · 8c582280
      Duncan Sands authored
      as on functions.  Make it verify invokes and not just
      ordinary calls.  As a (desired) side-effect, it is no
      longer legal to have call attributes on arguments that
      are being passed to the varargs part of a varargs
      function (llvm-as drops them on the floor anyway).
      
      llvm-svn: 45286
      8c582280
  13. Dec 19, 2007
  14. Dec 18, 2007
  15. Dec 17, 2007
  16. 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
  17. Dec 14, 2007
  18. Dec 12, 2007
  19. 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
Loading