aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
AgeCommit message (Expand)Author
2006-01-28Add a missing case to the dag combiner.Nate Begeman
2006-01-22Add explicit #includes of <iostream>Chris Lattner
2006-01-18Get rid of code in the DAGCombiner that is duplicated in SelectionDAG.cppNate Begeman
2006-01-18Fix a backwards conditional that caused an inf loop in some cases. ThisChris Lattner
2006-01-15Disable two transformations that contribute to bus errors on SparcV8.Chris Lattner
2006-01-12Add a simple missing fold to produce this:Chris Lattner
2006-01-12Don't create rotate instructions in unsupported types, because we don't haveChris Lattner
2006-01-11Add bswap, rotl, and rotr nodesNate Begeman
2006-01-06Revert the previous check-in. Leave shl x, 1 along for target to deal with.Evan Cheng
2006-01-06fold (shl x, 1) -> (add x, x)Evan Cheng
2006-01-05Added initial support for DEBUG_LABEL allowing debug specific labels to beJim Laskey
2006-01-04Add unique id to debug location for debug label use (work in progress.)Jim Laskey
2005-12-23Remove redundant debug locations.Jim Laskey
2005-12-23Simplify store(bitconv(x)) to store(x). This allows us to compile this:Chris Lattner
2005-12-23fold (conv (load x)) -> (load (conv*)x).Chris Lattner
2005-12-23Fold bitconv(bitconv(x)) -> x. We now compile this:Chris Lattner
2005-12-23constant fold bits_convert in getNode and in the dag combiner for fp<->intChris Lattner
2005-12-21* Fix a GlobalAddress lowering bug.Evan Cheng
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