aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
AgeCommit message (Expand)Author
2006-06-28Mark these two classes as hidden, shrinking libllbmgcc.dylib by 25KChris Lattner
2006-06-12Start on my todo listAndrew Lenharth
2006-05-31visitVBinOp: Can't fold divide by zero!Evan Cheng
2006-05-27Fix a nasty dag combiner bug that caused nondeterminstic crashes (MY FAVORITE!):Chris Lattner
2006-05-16Move this code to a common placeAndrew Lenharth
2006-05-12Comment out dead variablesChris Lattner
2006-05-12Two simplifications for token factor nodes: simplify tf(x,x) -> x.Chris Lattner
2006-05-09Debugging infoEvan Cheng
2006-05-08Make the case I just checked in stronger. Now we compile this:Chris Lattner
2006-05-08Implement and_sext.ll:test3, generating:Chris Lattner
2006-05-08Compile this:Chris Lattner
2006-05-08Fix PR772Nate Begeman
2006-05-06Simplify some code, add a couple minor missed foldsChris Lattner
2006-05-06remove cases handled elsewhereChris Lattner
2006-05-06Use the new TargetLowering::ComputeNumSignBits method to eliminateChris Lattner
2006-05-05Fold trunc(any_ext). This gives stuff like:Chris Lattner
2006-05-05Shrink shifts when possible.Chris Lattner
2006-05-05Fold (fpext (load x)) -> (extload x)Chris Lattner
2006-05-05Fold some common code.Chris Lattner
2006-05-05Implement:Chris Lattner
2006-05-05Pull and through and/or/xor. This compiles some bitfield code to:Chris Lattner
2006-05-05Implement a variety of simplifications for ANY_EXTEND.Chris Lattner
2006-05-05Factor some code, add these transformations:Chris Lattner
2006-04-28Remove a bogus transformation. This fixes SingleSource/UnitTests/2006-01-23-...Chris Lattner
2006-04-21Fix a couple more memory issuesChris Lattner
2006-04-20Fix a really subtle and obnoxious memory bug that caused issues with anChris Lattner
2006-04-20Turn a VAND into a VECTOR_SHUFFLE is applicable.Evan Cheng
2006-04-08Canonicalize vvector_shuffle(x,x) -> vvector_shuffle(x,undef) to enable patternsChris Lattner
2006-04-08Codegen shufflevector as VVECTOR_SHUFFLEChris Lattner
2006-04-061. If both vector operands of a vector_shuffle are undef, turn it into an undef.Evan Cheng
2006-04-04Do not create ZEXTLOAD's unless we are before legalize or the operation isChris Lattner
2006-04-03Add a missing check, this fixes UnitTests/Vector/sumarray.cChris Lattner
2006-04-03Add a missing check, which broke a bunch of vector tests.Chris Lattner
2006-04-03back this outAndrew Lenharth
2006-04-02This should be a win of every archAndrew Lenharth
2006-04-02Add a little dag combine to compile this:Chris Lattner
2006-04-02Constant fold all of the vector binops. This allows us to compile this:Chris Lattner
2006-04-02Implement constant folding of bit_convert of arbitrary constant vbuild_vector...Chris Lattner
2006-03-31Delete identity shuffles, implementing CodeGen/Generic/vector-identity-shuffl...Chris Lattner
2006-03-31Remove dead *extloads. This allows us to codegen vector.ll:test_extract_eltChris Lattner
2006-03-31Delete dead loads in the dag. This allows us to compileChris Lattner
2006-03-28When building a VVECTOR_SHUFFLE node from extract_element operations, makeChris Lattner
2006-03-28Canonicalize VECTOR_SHUFFLE(X, X, Y) -> VECTOR_SHUFFLE(X,undef,Y')Chris Lattner
2006-03-28Turn a series of extract_element's feeding a build_vector into aChris Lattner
2006-03-28Don't crash on X^X if X is a vector. Instead, produce a vector of zeros.Chris Lattner
2006-03-25Don't call SimplifyDemandedBits on vectorsChris Lattner
2006-03-19fold insertelement(buildvector) -> buildvector if the inserted element # isChris Lattner
2006-03-17Remove BRTWOWAY*Nate Begeman
2006-03-13make sure dead token factor nodes are removed by the dag combiner.Chris Lattner
2006-03-13Fold X+Y -> X|Y when safe. This implements:Chris Lattner