Skip to content
  1. Mar 03, 2011
  2. Mar 02, 2011
  3. Mar 01, 2011
  4. Feb 28, 2011
  5. Feb 24, 2011
  6. Feb 22, 2011
  7. Feb 21, 2011
  8. Feb 19, 2011
    • Chris Lattner's avatar
      rewrite the memset_pattern pattern generation stuff to accept any 2/4/8/16-byte · 72a35fb9
      Chris Lattner authored
      constant, including globals.  This makes us generate much more "pretty" pattern
      globals as well because it doesn't break it down to an array of bytes all the
      time.
      
      This enables us to handle stores of relocatable globals.  This kicks in about
      48 times in 254.gap, giving us stuff like this:
      
      @.memset_pattern40 = internal constant [2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*] [%struct.TypHeader* (%struct.TypHeader*, %struct
      .TypHeader*)* @IsFalse, %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)* @IsFalse], align 16
      
      ...
        call void @memset_pattern16(i8* %scevgep5859, i8* bitcast ([2 x %struct.TypHeader* (%struct.TypHeader*, %struct.TypHeader*)*]* @.memset_pattern40 to i8*
      ), i64 %tmp75) nounwind
      
      llvm-svn: 126044
      72a35fb9
    • Chris Lattner's avatar
      Implement rdar://9009151, transforming strided loop stores of · 0f4a6401
      Chris Lattner authored
      unsplatable values into memset_pattern16 when it is available
      (recent darwins).  This transforms lots of strided loop stores
      of ints for example, like 5 in vpr:
      
        Formed memset:   call void @memset_pattern16(i8* %4, i8* getelementptr inbounds ([16 x i8]* @.memset_pattern9, i32 0, i32 0), i64 %tmp25)
          from store to: {%3,+,4}<%11> at:   store i32 3, i32* %scevgep, align 4, !tbaa !4
      
      llvm-svn: 126040
      0f4a6401
  9. Feb 18, 2011
  10. Feb 17, 2011
  11. Feb 15, 2011
  12. Feb 14, 2011
  13. Feb 12, 2011
  14. Feb 11, 2011
  15. Feb 10, 2011
    • Eric Christopher's avatar
      Revert this in an attempt to bring the builders back. · da6bd450
      Eric Christopher authored
      llvm-svn: 125257
      da6bd450
    • Cameron Zwarich's avatar
      Turn this pass ordering: · 58c8670a
      Cameron Zwarich authored
      Natural Loop Information
       Loop Pass Manager
         Canonicalize natural loops
       Scalar Evolution Analysis
       Loop Pass Manager
         Induction Variable Users
         Canonicalize natural loops
         Induction Variable Users
         Loop Strength Reduction
      
      into this:
      
      Scalar Evolution Analysis
      Loop Pass Manager
        Canonicalize natural loops
        Induction Variable Users
        Loop Strength Reduction
      
      This fixes <rdar://problem/8869639>. I also filed PR9184 on doing this sort of
      thing automatically, but it seems easier to just change the ordering of the
      passes if this is the only case.
      
      llvm-svn: 125254
      58c8670a
  16. Feb 08, 2011
  17. Feb 02, 2011
  18. Jan 29, 2011
  19. Jan 26, 2011
  20. Jan 24, 2011
    • Dan Gohman's avatar
      Give GetUnderlyingObject a TargetData, to keep it in sync · 0f124e19
      Dan Gohman authored
      with BasicAA's DecomposeGEPExpression, which recently began
      using a TargetData. This fixes PR8968, though the testcase
      is awkward to reduce.
      
      Also, update several off GetUnderlyingObject's users
      which happen to have a TargetData handy to pass it in.
      
      llvm-svn: 124134
      0f124e19
Loading