aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
AgeCommit message (Expand)AuthorFilesLines
2016-08-05InstCombine: Replace some never-null pointers with references. NFCJustin Bogner1-12/+12
2016-06-27[InstCombine] shrink type of sdiv if dividend is sexted and constant divisor ...Sanjay Patel1-0/+17
2016-06-27[InstCombine] refactor sdiv by APInt transforms (NFC)Sanjay Patel1-9/+10
2016-06-27[InstCombine] use m_APInt for div --> ashr foldSanjay Patel1-8/+6
2016-06-05Add safety check to InstCombiner::commonIRemTransformsSanjoy Das1-2/+11
2016-05-22reduce indent; NFCSanjay Patel1-19/+19
2016-02-18Remove uses of builtin comma operator.Richard Trieu1-4/+7
2016-02-01function names start with a lowercase letter; NFCSanjay Patel1-25/+25
2016-01-30InstCombine: fabs(x) * fabs(x) -> x * xMatt Arsenault1-4/+15
2016-01-12function names start with a lower case letter ; NFCSanjay Patel1-3/+3
2015-10-13InstCombine: Remove ilist iterator implicit conversions, NFCDuncan P. N. Exon Smith1-3/+3
2015-09-09don't repeat function names in comments; NFCSanjay Patel1-7/+5
2015-09-06[InstCombine] Don't divide by zero when evaluating a potential transformDavid Majnemer1-0/+8
2015-06-23Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC)Alexander Kornienko1-1/+1
2015-06-19Fixed/added namespace ending comments using clang-tidy. NFCAlexander Kornienko1-1/+1
2015-04-18[InstCombine] (mul nsw 1, INT_MIN) != (shl nsw 1, 31)David Majnemer1-2/+6
2015-03-10DataLayout is mandatory, update the API to reflect it with references.Mehdi Amini1-13/+13
2015-03-05[InstCombine] Fix an assertion when fmul has a ConstantExpr operandMichael Kuperstein1-2/+2
2015-02-23InstSimplify: simplify 0 / X if nnan and nszMehdi Amini1-2/+4
2015-01-22[PM] Rename InstCombine.h to InstCombineInternal.h in preparation forChandler Carruth1-1/+1
2015-01-04[PM] Split the AssumptionTracker immutable pass into two separate APIs:Chandler Carruth1-15/+15
2015-01-04InstCombine: match can find ConstantExprs, don't assume we have a ValueDavid Majnemer1-2/+2
2015-01-02Analysis: Reformulate WillNotOverflowUnsignedMul for reusabilityDavid Majnemer1-34/+3
2014-12-26InstCombine: Infer nuw for multipliesDavid Majnemer1-0/+38
2014-12-26InstCombe: Infer nsw for multipliesDavid Majnemer1-0/+47
2014-11-24InstCombine: Don't create an unused instructionDavid Majnemer1-2/+1
2014-11-22InstCombine: Propagate exact for (sdiv X, Pow2) -> (udiv X, Pow2)David Majnemer1-2/+4
2014-11-22InstCombine: Propagate exact for (sdiv X, Y) -> (udiv X, Y)David Majnemer1-1/+3
2014-11-22InstCombine: Propagate exact for (sdiv -X, C) -> (sdiv X, -C)David Majnemer1-4/+6
2014-11-22InstCombine: Propagate exact in (udiv (lshr X,C1),C2) -> (udiv x,C1<<C2)David Majnemer1-2/+7
2014-11-22InstCombine: Propagate NSW/NUW for X*(1<<Y) -> X<<YDavid Majnemer1-4/+17
2014-11-22InstCombine: Propagate NSW for -X * -Y -> X * YDavid Majnemer1-3/+10
2014-11-22InstCombine: Preserve nsw when folding X*(2^C) -> X << CDavid Majnemer1-0/+2
2014-11-22InstCombine: Preserve nsw/nuw for ((X << C2)*C1) -> (X * (C1 << C2))David Majnemer1-3/+12
2014-11-22InstCombine: Preserve nsw for (mul %V, -1) -> (sub 0, %V)David Majnemer1-2/+7
2014-10-14InstCombine: Don't miscompile X % ((Pow2 << A) >>u B)David Majnemer1-7/+4
2014-10-14fix formatting; NFCSanjay Patel1-33/+25
2014-10-13InstCombine: Fix miscompile in X % -Y -> X % Y transformDavid Majnemer1-6/+6
2014-10-13InstCombine: Don't miscompile (x lshr C1) udiv C2David Majnemer1-4/+10
2014-10-12InstCombine: Simplify commonIDivTransformsDavid Majnemer1-86/+76
2014-10-11InstCombine: Don't fold (X <<s log(INT_MIN)) /s INT_MIN to XDavid Majnemer1-1/+2
2014-10-11InstCombine, InstSimplify: (%X /s C1) /s C2 isn't always 0 when C1 * C2 overflowDavid Majnemer1-5/+4
2014-10-11InstCombine: mul to shl shouldn't preserve nswDavid Majnemer1-2/+0
2014-10-07Reformat if statement to comply with LLVM standards. NFC.Suyog Sarda1-2/+4
2014-10-07Reformat to comply with LLVM coding standards using clang-format.Suyog Sarda1-5/+4
2014-10-07[InstCombine] Reformat if statements to comply with LLVM Coding Standards.Tilmann Scheller1-2/+6
2014-10-02Optimize square root squared (PR21126).Sanjay Patel1-0/+5
2014-10-02Use the local variable that other clauses around here are already using.Sanjay Patel1-1/+1
2014-09-07Make use of @llvm.assume in ValueTracking (computeKnownBits, etc.)Hal Finkel1-20/+27
2014-08-30InstCombine: Respect recursion depth in visitUDivOperandDavid Majnemer1-4/+4