| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | For PR950: | Reid Spencer | 2006-12-23 | 21 | -1037/+1831 | 
| | | | | | | | | | 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 | ||||
| * | add a simple fast-path for dead allocas | Chris Lattner | 2006-12-22 | 1 | -1/+8 | 
| | | | | | llvm-svn: 32750 | ||||
| * | Remove isSigned calls via foreknowledge of main's argument types. | Reid Spencer | 2006-12-21 | 1 | -7/+4 | 
| | | | | | llvm-svn: 32730 | ||||
| * | Get rid of a useless if statement whose then and else blocks were identical. | Reid Spencer | 2006-12-21 | 1 | -4/+1 | 
| | | | | | llvm-svn: 32729 | ||||
| * | handle undef values much more carefully: generalize the resolveundefbranches | Chris Lattner | 2006-12-20 | 1 | -32/+172 | 
| | | | | | | | | | code to handle instructions as well, so that we properly fold things like X & undef -> 0. This fixes Transforms/SCCP/2006-12-19-UndefBug.ll llvm-svn: 32715 | ||||
| * | switch statistics over to not use static ctors. | Chris Lattner | 2006-12-19 | 1 | -3/+3 | 
| | | | | | llvm-svn: 32709 | ||||
| * | eliminate static ctor from example. | Chris Lattner | 2006-12-19 | 1 | -2/+3 | 
| | | | | | llvm-svn: 32696 | ||||
| * | remove dead statistic | Chris Lattner | 2006-12-19 | 1 | -4/+0 | 
| | | | | | llvm-svn: 32695 | ||||
| * | switch more statistics over to STATISTIC, eliminating static ctors. Also, | Chris Lattner | 2006-12-19 | 9 | -39/+30 | 
| | | | | | | | delete some dead ones. llvm-svn: 32694 | ||||
| * | Eliminate static ctors due to Statistic objects | Chris Lattner | 2006-12-19 | 16 | -85/+71 | 
| | | | | | llvm-svn: 32693 | ||||
| * | Convert more Statistic's over to STATISTIC | Chris Lattner | 2006-12-19 | 1 | -7/+4 | 
| | | | | | llvm-svn: 32692 | ||||
| * | Switch over Transforms/Scalar to use the STATISTIC macro. For each statistic | Chris Lattner | 2006-12-19 | 21 | -102/+101 | 
| | | | | | | | | converted, we lose a static initializer. This also allows GCC to emit warnings about unused statistics. llvm-svn: 32690 | ||||
| * | Convert the last uses of CastInst::createInferredCast to a normal cast | Reid Spencer | 2006-12-18 | 3 | -11/+33 | 
| | | | | | | | | | creation. These changes are still temporary but at least this pushes knowledge of signedness out closer to where it can be determined properly and allows signedness to be removed from VMCore. llvm-svn: 32654 | ||||
| * | Convert the last use of two-argument ConstantExpr::getCast into another | Reid Spencer | 2006-12-18 | 1 | -1/+3 | 
| | | | | | | | form so we can remove that method from ConstantExpr. llvm-svn: 32652 | ||||
| * | Added an automatic cast to "std::ostream*" etc. from OStream. We then can | Bill Wendling | 2006-12-17 | 1 | -1/+6 | 
| | | | | | | | | rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. llvm-svn: 32636 | ||||
| * | when inserting a dummy argument to work-around the CBE not supporting | Chris Lattner | 2006-12-16 | 1 | -3/+1 | 
| | | | | | | | zero arg vararg functions, pass undef instead of 'int 0', which is cheaper. llvm-svn: 32634 | ||||
| * | re-enable a temporarily-reverted patch | Chris Lattner | 2006-12-15 | 1 | -53/+132 | 
| | | | | | llvm-svn: 32595 | ||||
| * | Fix a bug in EvaluateInDifferentType. The type of operand should not be | Reid Spencer | 2006-12-13 | 1 | -20/+17 | 
| | | | | | | | | | | used to determine whether a ZExt or SExt cast is performed. Instead, pass an "isSigned" bool to the function and determine its value from the opcode of the cast involved. Also, clean up some cruft from previous patches. llvm-svn: 32548 | ||||
| * | Implement review feedback. Most of this has to do with removing unnecessary | Reid Spencer | 2006-12-13 | 1 | -43/+16 | 
| | | | | | | | cast instructions. A few are bug fixes. llvm-svn: 32544 | ||||
| * | For mul transforms, when checking for a cast from bool as either operand, | Reid Spencer | 2006-12-13 | 1 | -2/+4 | 
| | | | | | | | | make sure to also check that it is a zext from bool, not any other cast operation type. llvm-svn: 32539 | ||||
| * | Fix and/or/xor (cast A), (cast B) --> cast (and/or/xor A, B) | Reid Spencer | 2006-12-13 | 1 | -41/+40 | 
| | | | | | | | | | The cast patch introduced the possibility that the wrong cast opcode could be used and that this transform could trigger on different kinds of cast operations. This patch rectifies that. llvm-svn: 32538 | ||||
| * | Change the interface to SCEVExpander::InsertCastOfTo to take a cast opcode | Reid Spencer | 2006-12-13 | 1 | -12/+21 | 
| | | | | | | | | 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 | ||||
| * | Fix some casts. isdigit(c) returns 0 or 1, not 0 or -1 | Reid Spencer | 2006-12-13 | 1 | -3/+3 | 
| | | | | | llvm-svn: 32534 | ||||
| * | revert my recent int<->fp and vector union promotion changes, they expose | Chris Lattner | 2006-12-13 | 1 | -132/+53 | 
| | | | | | | | | obscure bugs affecting the X86 code generator. I will reenable this when fixed. llvm-svn: 32524 | ||||
| * | Replace CastInst::createInferredCast calls with more accurate cast | Reid Spencer | 2006-12-13 | 8 | -47/+49 | 
| | | | | | | | creation calls. llvm-svn: 32521 | ||||
| * | Replace inferred getCast(V,Ty) calls with more strict variants. | Reid Spencer | 2006-12-12 | 2 | -36/+35 | 
| | | | | | | | | Rename getZeroExtend and getSignExtend to getZExt and getSExt to match the the casting mnemonics in the rest of LLVM. llvm-svn: 32514 | ||||
| * | this can be trunc or bitcast, per line 3092. | Chris Lattner | 2006-12-12 | 1 | -1/+1 | 
| | | | | | llvm-svn: 32487 | ||||
| * | Fix regression on 400.perlbench last night. | Chris Lattner | 2006-12-12 | 1 | -1/+1 | 
| | | | | | llvm-svn: 32486 | ||||
| * | Fix numerous inferred casts. | Reid Spencer | 2006-12-12 | 1 | -77/+121 | 
| | | | | | llvm-svn: 32479 | ||||
| * | Fix the casting for the computation of the Malloc size. | Reid Spencer | 2006-12-12 | 1 | -3/+3 | 
| | | | | | llvm-svn: 32477 | ||||
| * | Change inferred getCast into specific getCast. Passes all tests. | Reid Spencer | 2006-12-12 | 5 | -9/+20 | 
| | | | | | llvm-svn: 32469 | ||||
| * | Patch for PR1045 and Transforms/ScalarRepl/2006-12-11-SROA-Crash.ll | Chris Lattner | 2006-12-12 | 1 | -0/+2 | 
| | | | | | llvm-svn: 32468 | ||||
| * | trunc to integer, not to FP. | Chris Lattner | 2006-12-11 | 1 | -2/+11 | 
| | | | | | llvm-svn: 32426 | ||||
| * | implement promotion of unions containing two packed types of the same width. | Chris Lattner | 2006-12-11 | 1 | -15/+30 | 
| | | | | | | | This implements Transforms/ScalarRepl/union-packed.ll llvm-svn: 32422 | ||||
| * | * Eliminate calls to CastInst::createInferredCast. | Chris Lattner | 2006-12-10 | 1 | -40/+93 | 
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add support for promoting unions with fp values in them. This produces our new int<->fp bitcast instructions, implementing Transforms/ScalarRepl/union-fp-int.ll As an example, this allows us to compile this: union intfloat { int i; float f; }; float invsqrt(const float arg_x) { union intfloat x = { .f = arg_x }; const float xhalf = arg_x * 0.5f; x.i = 0x5f3759df - (x.i >> 1); return x.f * (1.5f - xhalf * x.f * x.f); } into: _invsqrt: movss 4(%esp), %xmm0 movd %xmm0, %eax sarl %eax movl $1597463007, %ecx subl %eax, %ecx movd %ecx, %xmm1 mulss LCPI1_0, %xmm0 mulss %xmm1, %xmm0 movss LCPI1_1, %xmm2 mulss %xmm1, %xmm0 subss %xmm0, %xmm2 movl 8(%esp), %eax mulss %xmm2, %xmm1 movss %xmm1, (%eax) ret instead of: _invsqrt: subl $4, %esp movss 8(%esp), %xmm0 movss %xmm0, (%esp) movl (%esp), %eax movl $1597463007, %ecx sarl %eax subl %eax, %ecx movl %ecx, (%esp) mulss LCPI1_0, %xmm0 movss (%esp), %xmm1 mulss %xmm1, %xmm0 mulss %xmm1, %xmm0 movss LCPI1_1, %xmm2 subss %xmm0, %xmm2 mulss %xmm2, %xmm1 movl 12(%esp), %eax movss %xmm1, (%eax) addl $4, %esp ret llvm-svn: 32418 | ||||
| * | Incorporate any changes in the successor blocks into the result of | Reid Spencer | 2006-12-08 | 1 | -1/+1 | 
| | | | | | | | MarkAliveBlocks. llvm-svn: 32375 | ||||
| * | What should be the last unnecessary <iostream>s in the library. | Bill Wendling | 2006-12-07 | 1 | -6/+5 | 
| | | | | | llvm-svn: 32333 | ||||
| * | Removing even more <iostream> includes. | Bill Wendling | 2006-12-07 | 4 | -90/+79 | 
| | | | | | llvm-svn: 32320 | ||||
| * | Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are | Bill Wendling | 2006-12-07 | 13 | -49/+46 | 
| | | | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298 | ||||
| * | Update ConstantIntegral Max/Min tests for new interface. | Reid Spencer | 2006-12-06 | 1 | -4/+4 | 
| | | | | | llvm-svn: 32288 | ||||
| * | add missing #include | Chris Lattner | 2006-12-06 | 1 | -0/+1 | 
| | | | | | llvm-svn: 32280 | ||||
| * | Detemplatize the Statistic class. The only type it is instantiated with | Chris Lattner | 2006-12-06 | 49 | -125/+125 | 
| | | | | | | | is 'unsigned'. llvm-svn: 32279 | ||||
| * | Remove the 'printname' argument to WriteAsOperand. It is always true, and | Chris Lattner | 2006-12-06 | 1 | -1/+1 | 
| | | | | | | | passing false would make the asmprinter fail anyway. llvm-svn: 32264 | ||||
| * | counter should be unsigned. | Chris Lattner | 2006-12-06 | 1 | -1/+1 | 
| | | | | | llvm-svn: 32252 | ||||
| * | add an instcombine xform. This speeds up 462.libquantum from 9.78s to | Chris Lattner | 2006-12-05 | 1 | -0/+17 | 
| | | | | | | | 7.48s. This regression is due to unforseen consequences of the cast patch. llvm-svn: 32209 | ||||
| * | SCCP does not handle Packed Type properly. Disable Packed Type handling | Devang Patel | 2006-12-04 | 1 | -1/+17 | 
| | | | | | | | for now. llvm-svn: 32208 | ||||
| * | Update call to CastInst::getCastOpcode for its new signature. | Reid Spencer | 2006-12-04 | 1 | -1/+2 | 
| | | | | | llvm-svn: 32166 | ||||
| * | Unbreak VC++ build. | Jeff Cohen | 2006-12-02 | 1 | -7/+7 | 
| | | | | | llvm-svn: 32113 | ||||
| * | disable transformations that are invalid for fp vectors. This fixes | Chris Lattner | 2006-12-02 | 1 | -4/+4 | 
| | | | | | | | Transforms/InstCombine/2006-12-01-BadFPVectorXform.ll llvm-svn: 32112 | ||||
| * | Remove 4 FIXMEs to hack around cast-to-bool problems which no longer exist. | Reid Spencer | 2006-11-30 | 1 | -46/+3 | 
| | | | | | llvm-svn: 32051 | ||||

