aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
AgeCommit message (Expand)AuthorFilesLines
2018-04-13[X86] Remove the pmuldq/pmuldq intrinsics and replace with native IR.Craig Topper1-29/+0
2018-02-16Remove useless comment - seems to be a copy+paste typo. NFCISimon Pilgrim1-1/+0
2018-01-17[InstCombine] fix demanded-bits propagation for zext/truncSanjay Patel1-1/+1
2017-12-09[InstCombine] Fix SimplifyDemandedUseBits SHL handling (PR35515)Simon Pilgrim1-6/+5
2017-08-31[InstCombine] improve demanded vector elements analysis of insertelementSanjay Patel1-9/+10
2017-08-28[InstCombine] Call hasNoSignedWrap instead of hasNoUnsignedWrap to get the NS...Craig Topper1-1/+1
2017-08-25[InstCombine] Don't fall back to only calling computeKnownBits if the upper b...Craig Topper1-23/+24
2017-08-25[InstCombine] Consider more cases where SimplifyDemandedUseBits does not conv...Amjad Aboud1-2/+5
2017-08-02[InstCombine] Remove unnecessary temporary APInt. NFCICraig Topper1-6/+1
2017-08-01[InstCombine] Remove explicit check for impossible condition. Replace with as...Craig Topper1-1/+2
2017-07-16[InstCombine] Move (0 - x) & 1 --> x & 1 to SimplifyDemandedUseBits.Craig Topper1-2/+4
2017-07-07[InstCombine] Make InstCombine's IRBuilder be passed by reference everywhereCraig Topper1-6/+6
2017-07-06[Constants] If we already have a ConstantInt*, prefer to use isZero/isOne/isM...Craig Topper1-1/+1
2017-06-07[InstCombine][InstSimplify] Use APInt::isNullValue/isOneValue to reduce compi...Craig Topper1-4/+4
2017-05-24[InstCombine] Merge together the SimplifyDemandedUseBits implementations for ...Craig Topper1-21/+10
2017-05-24[InstCombine] Use less bitwise operations to handle Instruction::SExt in Simp...Craig Topper1-19/+14
2017-05-23[KnownBits] Use !hasConflict() in asserts in place of Zero & One == 0 or simi...Craig Topper1-16/+16
2017-05-12[KnownBits] Add bit counting methods to KnownBits struct and use them where p...Craig Topper1-1/+1
2017-05-05[KnownBits] Add wrapper methods for setting and clear all bits in the underly...Craig Topper1-2/+1
2017-05-03[KnownBits] Add zext, sext, and trunc methods to KnownBitsCraig Topper1-12/+6
2017-04-29[KnownBits] Add methods for determining if the known bits represent a negativ...Craig Topper1-4/+4
2017-04-28[APInt] Use inplace shift methods where possible. NFCICraig Topper1-1/+1
2017-04-26[ValueTracking] Introduce a KnownBits struct to wrap the two APInts for compu...Craig Topper1-205/+181
2017-04-25[APInt] Use isSubsetOf, intersects, and bit counting methods to reduce tempor...Craig Topper1-2/+2
2017-04-25[InstCombine] Remove superfluous curly braces around a single line if body. NFCCraig Topper1-2/+1
2017-04-23Revert "[APInt] Fix a few places that use APInt::getRawData to operate within...Renato Golin1-1/+1
2017-04-23[APInt] Use operator<<= instead of shl where possible. NFCCraig Topper1-1/+1
2017-04-21[InstCombine] revert r300977 and r301021Sanjay Patel1-14/+4
2017-04-21[InstCombine] use isSubsetOf() for efficiencySanjay Patel1-1/+1
2017-04-21[InstCombine] prefer xor with -1 because 'not' is easier to understand (PR32706)Sanjay Patel1-4/+14
2017-04-20[InstCombine] Remove the zextOrTrunc from ShrinkDemandedConstant.Craig Topper1-4/+2
2017-04-20[InstCombine] function names start with lower-case letter; NFCSanjay Patel1-2/+2
2017-04-20[InstCombine] allow shl+shr demanded bits folds with splat constantsSanjay Patel1-19/+13
2017-04-20[InstCombine] allow shl demanded bits folds with splat constantsSanjay Patel1-2/+4
2017-04-20[InstCombine] Use APInt::intersects and APInt::isSubsetOf to improve a few mo...Craig Topper1-4/+4
2017-04-20[InstCombine] allow ashr/lshr demanded bits folds with splat constantsSanjay Patel1-11/+14
2017-04-20[InstCombine] Use APInt::isSubsetOf to simplify some code in SimplifyDemanded...Craig Topper1-37/+27
2017-04-20[InstCombine] Remove redundant code from SimplifyDemandedBits handling for Or...Craig Topper1-18/+0
2017-04-20[APInt] Rename getSignBit to getSignMaskCraig Topper1-5/+5
2017-04-20[APInt] Add isSubsetOf method that can check if one APInt is a subset of anot...Craig Topper1-1/+1
2017-04-20In SimplifyDemandedUseBits, use computeKnownBits directly to handle ConstantsCraig Topper1-15/+4
2017-04-18[APInt] Use lshrInPlace to replace lshr where possibleCraig Topper1-5/+5
2017-04-17Introduce APInt::isSignBitSet/isSignBitClear. Use in place isSignBitSet in pl...Craig Topper1-4/+4
2017-04-17AMDGPU: SimplifyDemandedElts for image intrinsicsMatt Arsenault1-3/+80
2017-04-16[InstCombine][ValueTracking] When computing known bits for Srem make sure we ...Craig Topper1-2/+2
2017-04-16[InstCombine] In SimplifyDemandedUseBits, don't bother to mask known bits of ...Craig Topper1-3/+3
2017-04-14[InstCombine] MakeAnd/Or/Xor handling to reuse previous APInt computationsCraig Topper1-36/+46
2017-04-14[InstCombine] Use APInt::setSignBit and APInt::isNegative(). NFCCraig Topper1-3/+3
2017-04-12[InstCombine] Teach SimplifyMultipleUseDemandedBits to handle And/Or/Xor know...Craig Topper1-11/+46
2017-04-12[InstCombine] Remove unreachable code for turning an And where all demanded b...Craig Topper1-4/+0