aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
AgeCommit message (Expand)Author
2005-12-15Don't create SEXTLOAD/ZEXTLOAD instructions that the target doesn't supportChris Lattner
2005-12-14When folding loads into ops, immediately replace uses of the op with theChris Lattner
2005-12-14Fix the (zext (zextload)) case to trigger, similarly for sign extends.Chris Lattner
2005-12-14Fix a miscompilation in crafty due to a recent patchChris Lattner
2005-12-14Fold (zext (load x) to (zextload x).Evan Cheng
2005-12-07Only transform (sext (truncate x)) -> (sextinreg x) if before legalize orChris Lattner
2005-12-07Teach the dag combiner to turn a truncate/sign_extend pair into a sextinregChris Lattner
2005-11-12Fix operator precedence bug caught by VC++.Jeff Cohen
2005-11-09Switch the allnodes list from a vector of pointers to an ilist of nodes.This ...Chris Lattner
2005-11-02Fix a crash that Andrew noticed, and add a pair of braces to unfconfuseNate Begeman
2005-11-02Fix a source of undefined behavior when dealing with 64-bit types. ThisChris Lattner
2005-10-30Codegen mul by negative power of two with a shift and negate.Chris Lattner
2005-10-27Fix DSE to not nuke dead stores unless they redundant store is the sameChris Lattner
2005-10-27Add a simple xform that is useful for bitfield operations.Chris Lattner
2005-10-25Clear a bit in this file that was causing a miscompilation of 178.galgel.Chris Lattner
2005-10-22BuildSDIV and BuildUDIV only work for i32/i64, but they don't check thatChris Lattner
2005-10-21add a case missing from the dag combiner that exposed the failure onChris Lattner
2005-10-21Fix a typo in the dag combiner, so that this can work on i64 targetsNate Begeman
2005-10-21Invert the TargetLowering flag that controls divide by consant expansion.Nate Begeman
2005-10-20Fix a couple bugs in the const div stuff where we'd generate MULHS/MULHUNate Begeman
2005-10-20don't use llabs with apparently VC++ doesn't haveChris Lattner
2005-10-20Move the target constant divide optimization up into the dag combiner, soNate Begeman
2005-10-18Fold (select C, load A, load B) -> load (select C, A, B). This happens quiteChris Lattner
2005-10-18Implement some feedback from Chris re: constant canonicalizationNate Begeman
2005-10-17fold fmul X, +2.0 -> fadd X, X;Nate Begeman
2005-10-17add a trivial foldChris Lattner
2005-10-15Fix this logic.Chris Lattner
2005-10-15Add a case we were missing that was causing us to fail CodeGen/PowerPC/rlwinm...Chris Lattner
2005-10-14fold sext_in_reg, sext_in_reg where both have the same VT. This wasNate Begeman
2005-10-14Relax the checking on zextload generation a bit, since as sabre pointed outNate Begeman
2005-10-13Fix the trunc(load) case, finally allowing crafty and povray to passChris Lattner
2005-10-13Fix some bugs in (sext (load x))Chris Lattner
2005-10-13Fix the remaining DAGCombiner issues pointed out by sabre. This should fixNate Begeman
2005-10-13Fix a minor bug in the dag combiner that broke pcompress2 and some otherChris Lattner
2005-10-13Move some Legalize functionality over to the DAGCombiner where it belongs.Nate Begeman
2005-10-12Fix a potential bug with two combine-to's back to back that chris pointedNate Begeman
2005-10-12More cool stuff for the dag combiner. We can now finally handle thingsNate Begeman
2005-10-11Fix a powerpc crash on CodeGen/Generic/llvm-ct-intrinsics.llChris Lattner
2005-10-11Add a canonicalization that got lost, fixing PowerPC/fold-li.ll:SUBChris Lattner
2005-10-10clean up some corner casesChris Lattner
2005-10-10Implement trivial DSE. If two stores are neighbors and store to the sameChris Lattner
2005-10-10Add support for CombineTo, allowing the dag combiner to replace nodes withChris Lattner
2005-10-10Teach the DAGCombiner several new tricks, teaching it how to turnNate Begeman
2005-10-10Fix commentChris Lattner
2005-10-10Add ISD::ADD to MaskedValueIsZeroChris Lattner
2005-10-09add a todo for something I noticedChris Lattner
2005-10-09(X & Y) & C == 0 if either X&C or Y&C are zeroChris Lattner
2005-10-08Lo and behold, the last bits of SelectionDAG.cpp have been moved over.Nate Begeman
2005-10-07implement CodeGen/PowerPC/div-2.ll:test2-4 by propagating zero bits throughChris Lattner
2005-10-07Turn sdivs into udivs when we can prove the sign bits are clear. ThisChris Lattner