aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms
Commit message (Expand)AuthorAgeFilesLines
* Teach the alignment handling code to look through constant expr casts and GEPsChris Lattner2006-03-071-4/+12
* Teach instcombine to increase the alignment of memset/memcpy/memmove whenChris Lattner2006-03-061-3/+74
* Make vector narrowing more effective, implementingChris Lattner2006-03-051-22/+62
* Add factoring of multiplications, e.g. turning A*A+A*B into A*(A+B).Chris Lattner2006-03-041-49/+186
* Canonicalize (X+C1)*C2 -> X*C2+C1*C2Chris Lattner2006-03-041-0/+13
* Change this to work with renamed intrinsics.Chris Lattner2006-03-031-1/+7
* Make this work with renamed intrinsics.Chris Lattner2006-03-031-26/+25
* Generalize the REM folding code to handle another case Nick LewyckyChris Lattner2006-03-021-13/+43
* Fix a regression in a patch from a couple of days ago. This fixesChris Lattner2006-02-281-1/+3
* Implement rem.ll:test[7-9] and PR712Chris Lattner2006-02-281-6/+22
* Simplify some code now that the RHS of a rem can't be 0Chris Lattner2006-02-281-8/+6
* Rearrange some code, fold "rem X, 0", implementing rem.ll:test6Chris Lattner2006-02-281-38/+39
* Merge two almost-identical pieces of code.Chris Lattner2006-02-271-46/+42
* Fold (A^B) == A -> B == 0Chris Lattner2006-02-271-0/+26
* Fold (X|C1)^C2 -> X^(C1|C2) when possible. This implementsChris Lattner2006-02-261-0/+14
* Fix a problem that Nate noticed that boils down to an over conservative checkChris Lattner2006-02-241-22/+17
* Fix Regression/Transforms/LoopUnswitch/2006-02-22-UnswitchCrash.ll, whichChris Lattner2006-02-221-1/+3
* Add some comments, simplify some code, and fix a bug that caused rewritingChris Lattner2006-02-221-34/+26
* improved support for branch folding, still not enabled.Chris Lattner2006-02-181-143/+269
* Fix bugs identified by VC++.Jeff Cohen2006-02-181-2/+2
* Implement deletion of dead blocks, currently disabled.Chris Lattner2006-02-181-28/+75
* a previous patch completely disabled trivial unswitching, this fixees it.Chris Lattner2006-02-181-1/+0
* initial trivial support for folding branches that have now-constant destinati...Chris Lattner2006-02-181-3/+34
* When unswitching a loop, make sure to update loop info with exit blocks inChris Lattner2006-02-181-2/+4
* Fix Transforms/SimplifyCFG/2006-02-17-InfiniteUnroll.llChris Lattner2006-02-181-2/+8
* Fix loops where the header has an exit, fixing a loop-unswitch crash on craftyChris Lattner2006-02-171-13/+15
* start of some new simplification code, not thoroughly tested, use at your ownChris Lattner2006-02-171-14/+161
* Rework the SelectionDAG-based implementations of SimplifyDemandedBitsNate Begeman2006-02-161-3/+3
* Change SplitBlock to increment a BasicBlock::iterator, not an Instruction*. ...Chris Lattner2006-02-161-23/+27
* Fix VC++ warning.Jeff Cohen2006-02-161-1/+0
* fix a bug where we unswitched the wrong wayChris Lattner2006-02-161-2/+2
* Implement trivial unswitching for switch stmts. This allows us to trivialChris Lattner2006-02-151-27/+51
* make "trivial" unswitching significantly more general. It can now handleChris Lattner2006-02-151-47/+79
* fix a bunch of alpha regressions. see bug 709Andrew Lenharth2006-02-151-6/+6
* Checking the wrong value. This caused us to emit silly code likeChris Lattner2006-02-151-1/+1
* more refactoring, no functionality change.Chris Lattner2006-02-151-12/+11
* pull some code out into a functionChris Lattner2006-02-151-18/+28
* Canonicalize inner loops before outer loops. Inner loop canonicalizationChris Lattner2006-02-141-4/+5
* When splitting exit edges to canonicalize loops, make sure to put the newChris Lattner2006-02-141-18/+20
* Use statistics to keep track of what flavors of loops we are unswitchingChris Lattner2006-02-141-7/+19
* Implement Instcombine/and.ll:test34Chris Lattner2006-02-131-0/+12
* If any of the sign extended bits are demanded, the input sign bit is demandedChris Lattner2006-02-131-3/+9
* Be careful not to request or look at bits shifted in from outside the sizeChris Lattner2006-02-131-3/+9
* remove some more dead special case codeChris Lattner2006-02-121-35/+8
* Eliminate special case hacks that are superceded by general purpose hacksChris Lattner2006-02-121-139/+51
* Three changes:Chris Lattner2006-02-121-6/+135
* Revert my last patch. It too breaks stuffChris Lattner2006-02-121-12/+6
* Fix for my previously reverted patchChris Lattner2006-02-111-6/+12
* Port the recent innovations in ComputeMaskedBits to SimplifyDemandedBits.Chris Lattner2006-02-111-211/+425
* revert my previous change, it exposed other problems.Chris Lattner2006-02-111-1/+1