aboutsummaryrefslogtreecommitdiff
path: root/test/Transforms/InstCombine/sub.ll
AgeCommit message (Expand)Author
2017-08-08[InstCombine] Support pulling left shifts through a subtract with constant LHSCraig Topper
2017-07-27[InstCombine] Simplify pointer difference subtractions (GEP-GEP) where GEPs h...Hiroshi Yamauchi
2017-04-14[InstCombine] Support folding a subtract with a constant LHS into a phi nodeCraig Topper
2017-04-14[InstCombine] Regenerate test checks using script. NFCCraig Topper
2017-04-10[InstCombine] Use commutable matchers and m_OneUse in visitSub to shorten cod...Craig Topper
2017-04-10[InstCombine] Use m_c_Add to shorten some code. Add testcases for this fold s...Craig Topper
2017-04-04[InstCombine] Add test cases for various add/subtracts of constants(scalar, s...Craig Topper
2017-04-04[InstCombine] Turn subtract of vectors of i1 into xor like we do for scalar i...Craig Topper
2017-03-22[InstCombine] Teach SimplifyDemandedUseBits to shrink Constants on the left s...Craig Topper
2017-03-19[InstCombine] Use update_test_checks.py to regenerate a test. NFCCraig Topper
2017-02-03[InstCombine] fix operand-complexity-based canonicalization (PR28296)Sanjay Patel
2016-10-14[InstCombine] use m_APInt to allow sub with constant folds for splat vectorsSanjay Patel
2016-10-14[InstCombine] add tests for missing vector foldsSanjay Patel
2016-10-14[InstCombine] remove redundant testSanjay Patel
2016-10-14[InstCombine] sub X, sext(bool Y) -> add X, zext(bool Y)Sanjay Patel
2016-09-08[InstCombine] regenerate checksSanjay Patel
2016-08-03[InstCombine] use m_APInt to allow icmp (binop X, Y), C folds with constant s...Sanjay Patel
2016-08-03add vector test for icmp+subSanjay Patel
2015-06-23[InstCombine] Optimize subtract of selects into a select of a subDavid Majnemer
2015-03-13[opaque pointer type] Add textual IR support for explicit type parameter to g...David Blaikie
2015-02-27[opaque pointer type] Add textual IR support for explicit type parameter to g...David Blaikie
2014-11-03InstCombine: Combine (X | Y) - X to (~X & Y)David Majnemer
2014-10-19InstCombine: (sub (or A B) (xor A B)) --> (and A B)David Majnemer
2014-10-13InstCombine: Fix miscompile in X % -Y -> X % Y transformDavid Majnemer
2014-08-22InstCombine: sub nsw %x, C -> add nsw %x, -C if C isn't INT_MINDavid Majnemer
2014-08-20InstCombine: Annotate sub with nuw when we prove it's safeDavid Majnemer
2014-08-19InstCombine: Annotate sub with nsw when we prove it's safeDavid Majnemer
2014-07-31InstCombine: Correctly propagate NSW/NUW for x-(-A) -> x+ADavid Majnemer
2014-07-02InstCombine: Optimize x/INT_MIN to x==INT_MINDavid Majnemer
2014-07-02InstCombine: Add a vector variant test for PR20186David Majnemer
2014-07-02InstCombine: Don't turn -(x/INT_MIN) -> x/INT_MINDavid Majnemer
2014-01-19InstCombine: Teach most integer add/sub/mul/div combines how to deal with vec...Benjamin Kramer
2013-08-21Teach InstCombine about address spacesMatt Arsenault
2013-07-14Update Transforms tests to use CHECK-LABEL for easier debugging. No functiona...Stephen Lin
2012-02-20InstCombine: Make OptimizePointerDifference more aggressive.Benjamin Kramer
2011-06-17manually upgrade a bunch of tests to modern syntax, and remove some thatChris Lattner
2011-02-18Add some transforms of the kind X-Y>X -> 0>Y which are valid when there is noDuncan Sands
2011-02-10implement the first part of PR8882: when lowering an inboundsChris Lattner
2011-02-10more cleanups, notably bitcast isn't used for "signed to unsigned type Chris Lattner
2010-11-22InstCombine: Implement X - A*-B -> X + A*B.Benjamin Kramer
2010-01-31Add a small transform: transform -(X<<Y) to (-X<<Y) when the shift has a singleEli Friedman
2010-01-05just remove this xform which is subsumed by others.Chris Lattner
2010-01-01generalize the pointer difference optimization to handleChris Lattner
2010-01-01teach instcombine to optimize pointer difference idioms involving constantChris Lattner
2009-11-04move two functions up higher in the file. Delete a useless argumentChris Lattner
2009-11-04filecheckize this test.Chris Lattner
2009-09-08Use opt -S instead of piping bitcode output through llvm-dis.Dan Gohman
2009-09-08Change these tests to feed the assembly files to opt directly, insteadDan Gohman
2008-11-30Instcombine was illegally transforming -X/C into X/-C when either X or CBill Wendling
2008-05-09Implement PR2298. This transforms:Chris Lattner