aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/Scalar
AgeCommit message (Expand)Author
2003-04-16Change the interface to constant expressions to allow automatic foldingChris Lattner
2003-03-31Initial checkin of PRE on LLVM. This implementation is still lacking inChris Lattner
2003-03-21Move BreakCriticalEdges pass to lib/Transforms/UtilsChris Lattner
2003-03-11Add the following instcombine xforms:Chris Lattner
2003-03-10Implement: -A*-B == A*BChris Lattner
2003-03-10Add new transformation: // (~A | ~B) == (~(A & B))Chris Lattner
2003-03-10Generalize not and neg comparison testers to allow constant to be considered ...Chris Lattner
2003-03-10Generalize (A+c1)+c2 optimization to work with all associative operatorsChris Lattner
2003-03-10Minor change, no functionality diffChris Lattner
2003-03-10Fix bug: (x << 100) wasn't folded to 0, but (x >> 100) was (when x is unsigned)Chris Lattner
2003-03-10Implement: (A|B)^B == A & (~B)Chris Lattner
2003-03-05Implement %test7 in InstCombine/getelementptr.llChris Lattner
2003-03-03Convert LICM over to use AliasSetTracker. Besides being nicer, this automati...Chris Lattner
2003-03-03Change the mem2reg interface to accept a TargetData argumentChris Lattner
2003-02-28Fix bug: LICM/2003-02-28-PromoteDifferentType.llChris Lattner
2003-02-27Fix bug: 2003-02-27-StoreSinkPHIs.llChris Lattner
2003-02-26Convert to work with new AliasAnalysis interface by conservatively assuming a...Chris Lattner
2003-02-24Rename Instruction::hasSideEffects() -> mayWriteToMemory()Chris Lattner
2003-02-24Initial implementation of Loop invariant memory->scalar promotionChris Lattner
2003-02-184 new transformations:Chris Lattner
2003-02-18Add a variety of new transformations:Chris Lattner
2003-02-01Fix typoChris Lattner
2003-01-23Fix bug: ADCE/2003-01-22-PredecessorProblem.llChris Lattner
2002-12-15Fix a huge performance problem in reassociate by introducing aChris Lattner
2002-12-15Minor changes:Chris Lattner
2002-12-07Remove dead codeChris Lattner
2002-12-05Fix bug: 2002-12-05-MissedConstProp.ll pointed out by Casey CarterChris Lattner
2002-11-20 - Eliminated the deferred symbol table stuff in Module & Function, it reallyChris Lattner
2002-11-09Fix warningChris Lattner
2002-11-08Fix spelling errorChris Lattner
2002-11-04Instcombine this away:Chris Lattner
2002-11-04Add a transformation to turn:Chris Lattner
2002-11-04Make sure to _delete_ memory allocated by worklistsChris Lattner
2002-10-31Fixes to the reassociate pass to make it respect dominance propertiesChris Lattner
2002-10-31BreakCriticalEdges should update dominance frontier information as well asChris Lattner
2002-10-29Fix spelling of `propagate'.Misha Brukman
2002-10-21 - Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG toChris Lattner
2002-10-08 - Fix bug: cee/2002-10-07-NoImmediateDominator.llChris Lattner
2002-10-08 - Checkin LARGE number of Changes to CEE pass that will make it much moreChris Lattner
2002-10-08Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges passChris Lattner
2002-10-08It is illegal for PHI nodes to have zero values, delete the code to handle themChris Lattner
2002-10-08Fold ashr -1, X into -1Chris Lattner
2002-10-01Updates to work with recent Statistic's changes:Chris Lattner
2002-09-29Fix bug in LICM that caused the previous big win. :(Chris Lattner
2002-09-29Hoist the contents of Loops in depth first order in the dominator tree,Chris Lattner
2002-09-26 - Further cleanups of LICM pass, remove extra work from previous implementationChris Lattner
2002-09-26Improve comments, doxygenize moreChris Lattner
2002-09-26Clean up LICM significantly now that it is guaranteed to have loop preheadersChris Lattner
2002-09-26Loop invariant code motion now depends on the LoopPreheader pass. Dead codeChris Lattner
2002-09-26- Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.Chris Lattner