aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/InstCombine
AgeCommit message (Expand)Author
2010-01-29Preserve load alignment in instcombine transformations. I've been unable toBob Wilson
2010-01-29Revert my last couple of patches. They appear to have broken bison.Eric Christopher
2010-01-29Improve isSafeToLoadUnconditionally to recognize that GEPs with constantBob Wilson
2010-01-29Having RHSKnownZero and RHSKnownOne be alternative names for KnownZero and Kn...Duncan Sands
2010-01-29Add constant support to object size handling and remove defaultEric Christopher
2010-01-28Fix PR6165. The bug was that LHSKnownZero was being and'd with DemandedMaskDuncan Sands
2010-01-24make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.Chris Lattner
2010-01-24change the canonical form of "cond ? -1 : 0" to be Chris Lattner
2010-01-23fix a potential overflow issue Eli pointed out.Chris Lattner
2010-01-23implement a simple instcombine xform that has been in theChris Lattner
2010-01-22Keep ignoring pointer-to-pointer bitcastsVictor Hernandez
2010-01-22Stop building RTTI information for *most* llvm libraries. NotableChris Lattner
2010-01-21No need to look through bitcasts for DbgInfoIntrinsicVictor Hernandez
2010-01-19optimize ~(~X >>s Y) --> (X >>s Y), patch by Edmund GrimleyChris Lattner
2010-01-19Fix comment.Eric Christopher
2010-01-18my instcombine transformations to make extension elimination moreChris Lattner
2010-01-17Fix comment.Owen Anderson
2010-01-13When the visitSub method was split into visitSub and visitFSub, this xform wasBill Wendling
2010-01-11reenable the piece that turns trunc(zext(x)) -> x even if zext has multiple u...Chris Lattner
2010-01-11Disable folding sext(trunc(x)) -> x (and other similar cast/cast cases) when ...Chris Lattner
2010-01-11add one more bitfield optimization, allowing clang to generateChris Lattner
2010-01-11Extend CanEvaluateZExtd to handle and/or/xor more aggressively in theChris Lattner
2010-01-11Remove the dead TD argument to CanEvaluateZExtd, and add aChris Lattner
2010-01-11improve comments, remove dead TD argument to CanEvaluateSExtd.Chris Lattner
2010-01-10teach sext optimization to handle truncs from types that are notChris Lattner
2010-01-10teach zext optimization how to deal with truncs that don't come fromChris Lattner
2010-01-10simplify CanEvaluateSExtd to return a bool now that we have aChris Lattner
2010-01-10the NumCastsRemoved argument to CanEvaluateSExtd is dead, remove it.Chris Lattner
2010-01-10now that the cost model has changed, we can always consider Chris Lattner
2010-01-10change the preferred canonical form for a sign extension to beChris Lattner
2010-01-10fix indentation of switch statements, no functionality change.Chris Lattner
2010-01-10fix pasto that broke bootstrap.Chris Lattner
2010-01-10simplify CanEvaluateZExtd now that we don't care about the number of Chris Lattner
2010-01-10two changes: Chris Lattner
2010-01-10enhance CanEvaluateZExtd to handle shift left and sext, allowingChris Lattner
2010-01-10remove an xform subsumed by EvaluateInDifferentType.Chris Lattner
2010-01-10clean up this xform by using m_Trunc.Chris Lattner
2010-01-10inline and remove the rest of commonIntCastTransforms.Chris Lattner
2010-01-10Inline the expression type promotion/demotion stuff out ofChris Lattner
2010-01-08Remove unnecessary dyn_cast and add a comment. Part of a WIP.Eric Christopher
2010-01-08mplement a theoretical fixme.Chris Lattner
2010-01-08rename CanEvaluateInDifferentType -> CanEvaluateTruncated and Chris Lattner
2010-01-08teach instcombine to delete sign extending shift pairs (sra(shl X, C), C) whenChris Lattner
2010-01-08tidy up some stuff duncan pointed out.Chris Lattner
2010-01-07teach ComputeNumSignBits to look through PHI nodes.Chris Lattner
2010-01-07Enhance instcombine to reason more strongly about promoting computationChris Lattner
2010-01-06Move the object size intrinsic optimization to inst-combine and makeEric Christopher
2010-01-06tweaks suggested by DuncanChris Lattner
2010-01-06Teach instcombine's sext elimination logic to be more aggressive.Chris Lattner
2010-01-05simplify this code.Chris Lattner