Skip to content
  1. Dec 29, 2010
  2. Nov 29, 2010
  3. Nov 14, 2010
  4. Oct 14, 2010
  5. Sep 03, 2010
  6. Feb 01, 2010
  7. Jan 21, 2010
  8. Jan 08, 2010
  9. Dec 04, 2009
  10. Oct 26, 2009
  11. Oct 24, 2009
  12. Oct 23, 2009
    • Chris Lattner's avatar
      teach libanalysis to simplify vector loads with bitcast sources. This · ccf1e847
      Chris Lattner authored
      implements something out of Target/README.txt producing:
      
      _foo:                                                       ## @foo
      	movl	4(%esp), %eax
      	movapd	LCPI1_0, %xmm0
      	movapd	%xmm0, (%eax)
      	ret	$4
      
      instead of:
      
      _foo:                                                       ## @foo
      	movl	4(%esp), %eax
      	movapd	_b, %xmm0
      	mulpd	LCPI1_0, %xmm0
      	addpd	_a, %xmm0
      	movapd	%xmm0, (%eax)
      	ret	$4
      
      llvm-svn: 84942
      ccf1e847
    • Chris Lattner's avatar
      enhance FoldReinterpretLoadFromConstPtr to handle loads of up to 32 · 59f94c01
      Chris Lattner authored
      bytes (i256).
      
      llvm-svn: 84941
      59f94c01
    • Chris Lattner's avatar
      teach libanalysis to fold int and fp loads from almost arbitrary · ed00b80b
      Chris Lattner authored
      non-type-safe constant initializers.  This sort of thing happens
      quite a bit for 4-byte loads out of string constants, unions, 
      bitfields, and an interesting endianness check from sqlite, which
      is something like this:
      
      const int sqlite3one = 1;
      # define SQLITE_BIGENDIAN    (*(char *)(&sqlite3one)==0)
      # define SQLITE_LITTLEENDIAN (*(char *)(&sqlite3one)==1)
      # define SQLITE_UTF16NATIVE (SQLITE_BIGENDIAN?SQLITE_UTF16BE:SQLITE_UTF16LE)
      
      all of these macros now constant fold away.
      
      This implements PR3152 and is based on a patch started by Eli, but heavily
      modified and extended.
      
      llvm-svn: 84936
      ed00b80b
  13. Oct 17, 2009
  14. Oct 06, 2009
  15. Oct 05, 2009
  16. Sep 20, 2009
  17. Sep 15, 2009
  18. Sep 11, 2009
  19. Sep 09, 2009
  20. Sep 08, 2009
  21. Sep 05, 2009
  22. Sep 02, 2009
  23. Jul 08, 2009
  24. Jun 21, 2009
  25. Jun 05, 2009
Loading