Skip to content
  1. Dec 29, 2007
  2. Dec 28, 2007
    • Owen Anderson's avatar
      Repair a transform that Chris noticed a bug in. Thanks to Nicholas for... · 7363914e
      Owen Anderson authored
      Repair a transform that Chris noticed a bug in.  Thanks to Nicholas for pointing out my stupid mistakes when writing this patch. :-)
      
      llvm-svn: 45384
      7363914e
    • Chris Lattner's avatar
      disable this instcombine xform, it miscompiles: · 5179819b
      Chris Lattner authored
      define i32 @main() {
      entry:
      	%z = alloca i32		; <i32*> [#uses=2]
      	store i32 0, i32* %z
      	%tmp = load i32* %z		; <i32> [#uses=1]
      	%sub = sub i32 %tmp, 1		; <i32> [#uses=1]
      	%cmp = icmp ult i32 %sub, 0		; <i1> [#uses=1]
      	%retval = select i1 %cmp, i32 1, i32 0		; <i32> [#uses=1]
      	ret i32 %retval
      }
      
      into ret 1, instead of ret 0.
      
      Christopher, please investigate.
      
      llvm-svn: 45383
      5179819b
  3. Dec 25, 2007
  4. Dec 24, 2007
  5. Dec 22, 2007
  6. Dec 20, 2007
  7. Dec 19, 2007
  8. Dec 18, 2007
  9. Dec 17, 2007
  10. 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
  11. Dec 13, 2007
  12. Dec 12, 2007
  13. Dec 10, 2007
  14. Dec 08, 2007
  15. Dec 06, 2007
  16. Dec 03, 2007
  17. Dec 01, 2007
    • Duncan Sands's avatar
      Integrate the readonly/readnone logic more deeply · 68b6f509
      Duncan Sands authored
      into alias analysis.  This meant updating the API
      which now has versions of the getModRefBehavior,
      doesNotAccessMemory and onlyReadsMemory methods
      which take a callsite parameter.  These should be
      used unless the callsite is not known, since in
      general they can do a better job than the versions
      that take a function.  Also, users should no longer
      call the version of getModRefBehavior that takes
      both a function and a callsite.  To reduce the
      chance of misuse it is now protected.
      
      llvm-svn: 44487
      68b6f509
  18. Nov 29, 2007
  19. Nov 28, 2007
  20. Nov 27, 2007
Loading