- Nov 17, 2006
-
-
Bill Wendling authored
llvm-svn: 31815
-
Bill Wendling authored
llvm-svn: 31814
-
Bill Wendling authored
llvm-svn: 31813
-
Bill Wendling authored
llvm-svn: 31812
-
Bill Wendling authored
llvm-svn: 31811
-
Bill Wendling authored
llvm-svn: 31810
-
Chris Lattner authored
and handle it like constant stride vars. This fixes some bad codegen in variable stride cases. For example, it compiles this: void foo(int k, int i) { for (k=i+i; k <= 8192; k+=i) flags2[k] = 0; } to: LBB1_1: #bb.preheader movl %eax, %ecx addl %ecx, %ecx movl L_flags2$non_lazy_ptr, %edx LBB1_2: #bb movb $0, (%edx,%ecx) addl %eax, %ecx cmpl $8192, %ecx jle LBB1_2 #bb LBB1_5: #return ret or (if the array is local and we are in dynamic-nonpic or static mode): LBB3_2: #bb movb $0, _flags2(%ecx) addl %eax, %ecx cmpl $8192, %ecx jle LBB3_2 #bb and: lis r2, ha16(L_flags2$non_lazy_ptr) lwz r2, lo16(L_flags2$non_lazy_ptr)(r2) slwi r3, r4, 1 LBB1_2: ;bb li r5, 0 add r6, r4, r3 stbx r5, r2, r3 cmpwi cr0, r6, 8192 bgt cr0, LBB1_5 ;return instead of: leal (%eax,%eax,2), %ecx movl %eax, %edx addl %edx, %edx addl L_flags2$non_lazy_ptr, %edx xorl %esi, %esi LBB1_2: #bb movb $0, (%edx,%esi) movl %eax, %edi addl %esi, %edi addl %ecx, %esi cmpl $8192, %esi jg LBB1_5 #return and: lis r2, ha16(L_flags2$non_lazy_ptr) lwz r2, lo16(L_flags2$non_lazy_ptr)(r2) mulli r3, r4, 3 slwi r5, r4, 1 li r6, 0 add r2, r2, r5 LBB1_2: ;bb li r5, 0 add r7, r3, r6 stbx r5, r2, r6 add r6, r4, r6 cmpwi cr0, r7, 8192 ble cr0, LBB1_2 ;bb This speeds up Benchmarks/Shootout/sieve from 8.533s to 6.464s and implements LoopStrengthReduce/var_stride_used_by_compare.ll llvm-svn: 31809
-
Chris Lattner authored
llvm-svn: 31808
-
Reid Spencer authored
premature, these libraries will be going away for the 2.0 release. Other arrangements for profiling, gc, etc. should be made in the next few months. llvm-svn: 31807
-
Bill Wendling authored
llvm-svn: 31806
-
Chris Lattner authored
llvm-svn: 31805
-
Evan Cheng authored
llvm-svn: 31804
-
Bill Wendling authored
llvm-svn: 31803
-
Evan Cheng authored
llvm-svn: 31802
-
Bill Wendling authored
llvm-svn: 31801
-
Bill Wendling authored
a #include of iostream. llvm-svn: 31800
-
Chris Lattner authored
llvm-svn: 31799
-
Bill Wendling authored
stream. It centralizes the use of std::cerr so that static c'tor/d'tors aren't scattered around all over the place. The way to use it is like this: DOUT << "This is a status line: " << Var << "\n"; If "-debug" is specified, it will print. Otherwise, it'll not print. If NDEBUG is defined, the DOUT does nothing. llvm-svn: 31798
-
Chris Lattner authored
llvm-svn: 31797
-
Evan Cheng authored
llvm-svn: 31796
-
Evan Cheng authored
Correct instructions for moving data between GR64 and SSE registers; also correct load i64 / store i64 from v2i64. llvm-svn: 31795
-
Evan Cheng authored
llvm-svn: 31794
-
Reid Spencer authored
be dropped. This patch pertains to removing the runtime directory from LLVM. llvm-svn: 31793
-
- Nov 16, 2006
-
-
Jim Laskey authored
This is a general clean up of the PowerPC ABI. Address several problems and bugs including making sure that the TOS links back to the previous frame, that the maximum call frame size is not included twice when using frame pointers, no longer growing the frame on calls, double storing of SP and a cleaner/faster dynamic alloca. llvm-svn: 31792
-
Chris Lattner authored
before printing it. llvm-svn: 31791
-
Evan Cheng authored
llvm-svn: 31790
-
Bill Wendling authored
llvm-svn: 31789
-
Evan Cheng authored
llvm-svn: 31788
-
Evan Cheng authored
llvm-svn: 31787
-
Reid Spencer authored
llvm-svn: 31786
-
Chris Lattner authored
llvm-svn: 31785
-
Bill Wendling authored
llvm-svn: 31784
-
Bill Wendling authored
llvm-svn: 31783
-
Bill Wendling authored
llvm-svn: 31781
-
Bill Wendling authored
LiveRanges, creates a new LiveInterval from them. The LiveRanges should have existed already in another LiveInterval, but removed. llvm-svn: 31780
-
Chris Lattner authored
llvm-svn: 31779
-
Chris Lattner authored
llvm-svn: 31778
-
Chris Lattner authored
llvm-svn: 31777
-
Chris Lattner authored
llvm-svn: 31776
-
Chris Lattner authored
llvm-svn: 31775
-