aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/ValueTracking.cpp
AgeCommit message (Expand)Author
2012-07-03PHINode::hasConstantValue(): return undef if the PHI is fully recursive.Nuno Lopes
2012-05-10Teach DeadStoreElimination to eliminate exit-block stores with phi addresses.Dan Gohman
2012-04-30Just mark the sign bit as known zero, rather than any other irrelevant bitsDuncan Sands
2012-04-07Fix ValueTracking to conclude that debug intrinsics are safe toChandler Carruth
2012-04-04Always compute all the bits in ComputeMaskedBits.Rafael Espindola
2012-03-31Teach CodeGen's version of computeMaskedBits to understand the range metadata.Rafael Espindola
2012-03-30Add computeMaskedBitsLoad back, as it was the change to instsimplify thatRafael Espindola
2012-03-28Revert r153521 as it's causing large regressions on the nightly testers.Chad Rosier
2012-03-27Reapply r153423; the original commit was fine. The failing test, distray, had Chad Rosier
2012-03-26Revert r153423 as this is causing failures on our internal nightly testers.Chad Rosier
2012-03-26Use the new range metadata in computeMaskedBits and add a new optimization toRafael Espindola
2012-03-18Factor out the multiply analysis code in ComputeMaskedBits and apply it to theNick Lewycky
2012-03-09Factor out the analysis of addition and subtraction in ComputeMaskedBits. ReuseNick Lewycky
2012-03-07No functionality change. Type::isSized() can be expensive, so avoid calling itNick Lewycky
2012-03-05A few more cases of missing masking in ComputeMaskedBits; found by inspection.Eli Friedman
2012-03-05Make sure we don't return bits outside the mask in ComputeMaskedBits. PR12189.Eli Friedman
2012-02-06Remove some dead code and tidy things up now that vectors use ConstantDataVectorChris Lattner
2012-02-06[unwind removal] Remove all of the code for the dead 'unwind' instruction. ThereBill Wendling
2012-02-05reapply the patches reverted in r149470 that reenable ConstantDataArray,Chris Lattner
2012-02-01Revert Chris' commits up to r149348 that started causing VMCoreTests unit tes...Argyrios Kyrtzidis
2012-01-31remove the last vestiges of llvm::GetConstantStringInfo, in CodeGen.Chris Lattner
2012-01-31Change ConstantArray::get to form a ConstantDataArray when possible,Chris Lattner
2012-01-26progress making the world safe to ConstantDataVector. WhileChris Lattner
2012-01-25use Constant::getAggregateElement to simplify a bunch of code.Chris Lattner
2012-01-25Use the right method to get the # elements in a CDS.Chris Lattner
2012-01-24teach valuetracking about ConstantDataSequentialChris Lattner
2012-01-04Generalize isSafeToSpeculativelyExecute to work on arbitraryDan Gohman
2012-01-01PatternMatch: Introduce a matcher for instructions with the "exact" bit. Use ...Benjamin Kramer
2011-12-24ComputeMaskedBits: Make knownzero computation more aggressive for ctlz with u...Benjamin Kramer
2011-12-21Make some intrinsics safe to speculatively execute.Nick Lewycky
2011-12-14Move Instruction::isSafeToSpeculativelyExecute out of VMCore andDan Gohman
2011-12-06Probably not a good idea to convert a single vector load into a memcpy. WeChad Rosier
2011-12-05Add support for vectors of pointers.Nadav Rotem
2011-11-29Fix a theoretical problem (not seen in the wild): if different instances of aDuncan Sands
2011-11-28Make SelectionDAG::InferPtrAlignment use llvm::ComputeMaskedBits instead of d...Eli Friedman
2011-11-23Fix a crash in which a multiplication was being reported as being both negativeDuncan Sands
2011-10-28A shift of a power of two is a power of two or zero.Duncan Sands
2011-10-27Reapply commit 143028 with a fix: the problem was casting a ConstantExpr MulDuncan Sands
2011-10-27Revert Duncan's r143028 expression folding which appears to be the culpritBob Wilson
2011-10-26The maximum power of 2 dividing a power of 2 is itself. This occursDuncan Sands
2011-10-26My super-optimizer noticed that we weren't folding this expression toDuncan Sands
2011-10-20"@string = constant i8 0" is a value i8* string of length zero. Analyze thatNick Lewycky
2011-07-18Migrate LLVM and Clang to use the new makeArrayRef(...) functions where previ...Frits van Bommel
2011-07-18land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner
2011-07-13Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.Jay Foad
2011-06-27Move onlyUsedByLifetimeMarkers to ValueTracking so that it can be used by otherNick Lewycky
2011-05-26Renamed llvm.x86.sse42.crc32 intrinsics; crc64 doesn't exist. Chad Rosier
2011-05-23Teach valuetracking that byval arguments with a specified alignment areChris Lattner
2011-05-22Teach ValueTracking about x86 crc32 intrinsics.Evan Cheng
2011-04-15Fix a ton of comment typos found by codespell. Patch byChris Lattner