summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit message (Expand)AuthorAgeFilesLines
* [InstCombine] fix xor-or-xor fold to check uses and handle commutesSanjay Patel2018-09-041-32/+21
* [InstCombine] make ((X & C) ^ C) form consistent for vectorsSanjay Patel2018-09-041-4/+2
* [InstCombine] simplify code for xor folds; NFCISanjay Patel2018-09-041-40/+23
* [InstCombine] simplify xor/not folds; NFCISanjay Patel2018-09-031-22/+16
* [InstCombine] allow add+not --> sub for arbitrary vector constants.Sanjay Patel2018-09-031-5/+4
* [InstCombine] allow not+sub fold for arbitrary vector constantsSanjay Patel2018-09-021-8/+4
* [InstCombine] simplify code for 'or' foldSanjay Patel2018-09-011-28/+13
* [InstCombine] Pull simple checks above a more complicated one. NFCICraig Topper2018-08-211-4/+2
* [InstCombine] Fix IC trying to create a xor of pointer types.Amara Emerson2018-08-151-1/+2
* [InstCombine] Re-land: Optimize redundant 'signed truncation check pattern'.Roman Lebedev2018-08-131-0/+127
* Revert "[InstCombine] Optimize redundant 'signed truncation check pattern'."Roman Lebedev2018-08-131-128/+0
* [InstCombine] Optimize redundant 'signed truncation check pattern'.Roman Lebedev2018-08-131-0/+128
* [InstCombine] Fix typo in comment. NFCCraig Topper2018-08-131-1/+1
* [InstCombine] Replace call to haveNoCommonBitsSet in visitXor with just the s...Craig Topper2018-08-131-2/+8
* [InstCombine] De Morgan: sink 'not' into 'xor' (PR38446)Roman Lebedev2018-08-081-0/+29
* [InstCombine] simplify code for A & (A ^ B) --> A & ~BSanjay Patel2018-07-311-25/+7
* [InstCombine] not(sub X, Y) --> add (not X), YSanjay Patel2018-07-271-0/+4
* [InstCombine] return when SimplifyAssociativeOrCommutative makes a changeSanjay Patel2018-07-131-6/+12
* [InstCombine] simplify binops before trying other foldsSanjay Patel2018-06-211-9/+12
* [InstCombine] fold another shifty abs pattern to cmp+sel (PR36036)Sanjay Patel2018-06-061-1/+1
* Move Analysis/Utils/Local.h back to TransformsDavid Blaikie2018-06-041-1/+1
* [InstCombine] call simplify before trying vector foldsSanjay Patel2018-06-021-12/+9
* Revert rL333106 / D46814: [InstCombine] Fold unfolded masked merge pattern wi...Roman Lebedev2018-05-311-36/+0
* [InstCombine] Fold unfolded masked merge pattern with variable mask!Roman Lebedev2018-05-231-0/+36
* [InstCombine] Propagate the nsw/nuw flags from the add in the 'shifty' abs pa...Craig Topper2018-05-171-1/+5
* Remove \brief commands from doxygen comments.Adrian Prantl2018-05-011-1/+1
* [InstCombine] Adjusting bswap pattern matching to hold for And/Shift mixed caseOmer Paparo Bivas2018-05-011-1/+12
* [InstCombine] Unfold masked merge with constant maskRoman Lebedev2018-04-301-1/+15
* [InstCombine] Canonicalize variable mask in masked mergeRoman Lebedev2018-04-281-0/+33
* [PatternMatch] Stabilize the matching order of commutative matchersRoman Lebedev2018-04-271-16/+10
* [PatternMatch] allow undef elements when matching a vector zeroSanjay Patel2018-04-221-1/+0
* [InstCombine] Simplify 'xor' to 'or' if no common bits are set.Roman Lebedev2018-04-151-0/+4
* Eliminate a bitwise 'not' op of 'not' min/max by inverting the min/max.Artur Gainullin2018-04-111-0/+30
* [PatternMatch] allow undef elements when matching vector FP +0.0Sanjay Patel2018-03-251-2/+2
* [InstCombine] add folds for xor-of-icmp signbit tests (PR36682)Sanjay Patel2018-03-221-0/+28
* Fix a couple of layering violations in TransformsDavid Blaikie2018-03-211-1/+1
* Revert r328119 "[InstCombine] add folds for xor-of-icmp signbit tests (PR36682)"Reid Kleckner2018-03-211-30/+0
* [InstCombine] add folds for xor-of-icmp signbit tests (PR36682)Sanjay Patel2018-03-211-0/+30
* Simplify more cases of logical ops of masked icmps.Hiroshi Yamauchi2018-03-131-17/+199
* [InstCombine] Replace calls to getNumUses with hasNUses or hasNUsesOrMoreCraig Topper2018-03-121-3/+3
* [InstCombine] move constant check into foldBinOpIntoSelectOrPhi; NFCISanjay Patel2018-02-281-9/+6
* [InstCombine] Add constant vector support for ~(C >> Y) --> ~C >> YSimon Pilgrim2018-02-101-5/+7
* [InstCombine] narrow masked zexted binops (PR35792)Sanjay Patel2018-01-251-0/+70
* [InstCombine] canonicalize shifty abs(): ashr+add+xor --> cmp+neg+selSanjay Patel2017-12-161-0/+20
* [ValueTracking, InstCombine] canonicalize fcmp ord/uno with non-NAN ops to nu...Sanjay Patel2017-09-051-15/+6
* [InstCombine] replace unnecessary fcmp fold with assertSanjay Patel2017-09-021-6/+3
* [InstCombine] combine foldAndOfFCmps and foldOrOfFcmps; NFCISanjay Patel2017-09-021-75/+30
* [InstCombine] fix misnamed locals and use them to reduce code; NFCISanjay Patel2017-09-021-34/+34
* [InstCombine] remove unnecessary code; NFCSanjay Patel2017-09-021-3/+0
* [InstCombine] move related functions next to each other; NFCSanjay Patel2017-09-021-51/+51
OpenPOWER on IntegriCloud