aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
AgeCommit message (Expand)Author
2006-09-14Fold (X & C1) | (Y & C2) -> (X|Y) & C3 when possible.Chris Lattner
2006-09-14Split rotate matching code out to its own function. Make it stronger, byChris Lattner
2006-08-31DAG combiner fix for rotates. Previously the outer-most condition checksEvan Cheng
2006-08-29Move isCommutativeBinOp from SelectionDAG.cpp and DAGCombiner.cpp out. Make i...Evan Cheng
2006-08-27s|llvm/Support/Visibility.h|llvm/Support/Compiler.h|Chris Lattner
2006-08-11change internal impl of dag combiner so that calls to CombineTo never have toChris Lattner
2006-08-11Change one ReplaceAllUsesWith method to take an array of operands to replaceChris Lattner
2006-08-08Start eliminating temporary vectors used to create DAG nodes. Instead, passChris Lattner
2006-07-25Initialize some variables the compiler warns about.Reid Spencer
2006-07-21If a shuffle is a splat, check if the argument is a build_vector with all ele...Evan Cheng
2006-07-20If a shuffle is unary, i.e. one of the vector argument is not needed, turn theEvan Cheng
2006-07-2080 colsAndrew Lenharth
2006-07-20Reduce number of exported symbolsAndrew Lenharth
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