- Mar 03, 2007
-
-
Reid Spencer authored
Replace expensive getZExtValue() == 0 calls with isZero() calls. llvm-svn: 34861
-
Reid Spencer authored
llvm-svn: 34860
-
Reid Spencer authored
llvm-svn: 34859
-
- Mar 02, 2007
-
-
Reid Spencer authored
llvm-svn: 34822
-
Reid Spencer authored
Constant::isNullValue() in situations where it is possible. llvm-svn: 34821
-
- Feb 10, 2007
-
-
Chris Lattner authored
llvm-svn: 34156
-
- Feb 06, 2007
-
-
Reid Spencer authored
the Transforms library. This reduces debug library size by 132 KB, debug binary size by 376 KB, and reduces link time for llvm tools slightly. llvm-svn: 33939
-
- Jan 15, 2007
-
-
Chris Lattner authored
rename Type::getIntegralTypeMask to Type::getIntegerTypeMask. This makes naming much more consistent. For example, there are now no longer any instances of IntegerType that are not considered isInteger! :) llvm-svn: 33225
-
Chris Lattner authored
llvm-svn: 33218
-
- Jan 08, 2007
-
-
Reid Spencer authored
Enable complex addressing modes on 64-bit platforms involving two induction variables by keeping a size and scale in 64-bits not 32. Patch by Dan Gohman. llvm-svn: 33011
-
- Jan 06, 2007
-
-
Chris Lattner authored
llvm-svn: 32946
-
- Dec 31, 2006
-
-
Reid Spencer authored
This patch replaces signed integer types with signless ones: 1. [US]Byte -> Int8 2. [U]Short -> Int16 3. [U]Int -> Int32 4. [U]Long -> Int64. 5. Removal of isSigned, isUnsigned, getSignedVersion, getUnsignedVersion and other methods related to signedness. In a few places this warranted identifying the signedness information from other sources. llvm-svn: 32785
-
- Dec 23, 2006
-
-
Reid Spencer authored
This patch removes the SetCC instructions and replaces them with the ICmp and FCmp instructions. The SetCondInst instruction has been removed and been replaced with ICmpInst and FCmpInst. llvm-svn: 32751
-
- Dec 19, 2006
-
-
Chris Lattner authored
converted, we lose a static initializer. This also allows GCC to emit warnings about unused statistics. llvm-svn: 32690
-
- Dec 13, 2006
-
-
Reid Spencer authored
so the decision of which opcode to use is pushed upward to the caller. Adjust the callers to pass the expected opcode. llvm-svn: 32535
-
- Dec 12, 2006
-
-
Reid Spencer authored
llvm-svn: 32469
-
- Dec 07, 2006
-
-
Bill Wendling authored
now cerr, cout, and NullStream resp. llvm-svn: 32298
-
- Dec 06, 2006
-
-
Chris Lattner authored
is 'unsigned'. llvm-svn: 32279
-
- Nov 27, 2006
-
-
Reid Spencer authored
The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. llvm-svn: 31931
-
- Nov 26, 2006
-
-
Bill Wendling authored
llvm-svn: 31923
-
- Nov 17, 2006
-
-
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
-
- Nov 02, 2006
-
-
Reid Spencer authored
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
-
- Oct 28, 2006
-
-
Chris Lattner authored
llvm-svn: 31257
-
Chris Lattner authored
llvm-svn: 31248
-
- Oct 20, 2006
-
-
Reid Spencer authored
This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. llvm-svn: 31063
-
- Aug 28, 2006
-
-
Chris Lattner authored
llvm-svn: 29925
-
- Aug 27, 2006
-
-
Chris Lattner authored
llvm-svn: 29911
-
- Aug 03, 2006
-
-
Chris Lattner authored
Changes: 1. Update an obsolete comment. 2. Make the sorting by base an explicit (though still N^2) step, so that the code is more clear on what it is doing. 3. Partition uses so that uses inside the loop are handled before uses outside the loop. Note that none of these changes currently changes the code inserted by LSR, but they are a stepping stone to getting there. This code is the result of some crazy pair programming with Nate. :) llvm-svn: 29493
-
- Jul 18, 2006
-
-
Evan Cheng authored
llvm-svn: 29186
-
- Jun 29, 2006
-
-
Chris Lattner authored
dropped. This shrinks libllvmgcc.dylib another 67K llvm-svn: 28975
-
- Jun 09, 2006
-
-
Evan Cheng authored
post-increment value, should be first cast to the appropriated type (to the type of the common expr). Otherwise, the rewrite of a use based on (common + iv) may end up with an incorrect type. llvm-svn: 28735
-
- Apr 12, 2006
-
-
Reid Spencer authored
llvm-svn: 27625
-
- Mar 24, 2006
-
-
Chris Lattner authored
llvm-svn: 27052
-
- Mar 22, 2006
-
-
Chris Lattner authored
llvm-svn: 26953
-
- Mar 18, 2006
-
-
Evan Cheng authored
- Added more debugging info. - Allow reuse of IV of negative stride. e.g. -4 stride == 2 * iv of -2 stride. llvm-svn: 26841
-
Evan Cheng authored
for more IV reuses. llvm-svn: 26837
-
- Mar 17, 2006
-
-
Evan Cheng authored
of a smaller stride even if they have a common loop invariant expression part. llvm-svn: 26828
-
- Mar 16, 2006
-
-
Evan Cheng authored
stride. For a set of uses of the IV of a stride which is a multiple of another stride, do not insert a new IV expression. Rather, reuse the previous IV and rewrite the uses as uses of IV expression multiplied by the factor. e.g. x = 0 ...; x ++ y = 0 ...; y += 4 then use of y can be rewritten as use of 4*x for x86. llvm-svn: 26803
-
- Mar 14, 2006
-
-
Evan Cheng authored
transformation decisions. llvm-svn: 26738
-
- Feb 04, 2006
-
-
Chris Lattner authored
#LLVM LOC, and auto-cse's cast instructions. llvm-svn: 25974
-