aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
AgeCommit message (Expand)AuthorFilesLines
2024-04-19[SelectionDAG] Require UADDO_CARRY carryin and carryout to have the same type...Craig Topper1-2/+2
2024-04-19[DAG] visitADDLike - update "(x - y) + -1 -> add (xor y, -1), x" fold to ac...Simon Pilgrim1-3/+3
2024-04-18[DAGCombiner][AArch64] Make combineCarryDiamond avoid creating UADDO_CARRY wi...Craig Topper1-0/+2
2024-04-18[DAG] Ensure extract_subvector(insert_subvector(x,y,c1),c2) --> extract_subve...Simon Pilgrim1-1/+2
2024-04-16[DAG] Fold extract_subvector(insert_subvector(x,y,c1),c2) --> extract_subvect...Simon Pilgrim1-0/+16
2024-04-15Revert "[DAG] Fold extract_subvector(insert_subvector(x,y,c1),c2) --> extract...Alina Sbirlea1-17/+0
2024-04-16[SDAG] Turn umin into smin if the saturation pattern is broken (#88505)Yingwei Zheng1-4/+7
2024-04-15[SelectionDAG] Propagate Disjoint flag. (#88370)fengfeng1-1/+2
2024-04-12[DAG] Fold extract_subvector(insert_subvector(x,y,c1),c2) --> extract_subvect...Simon Pilgrim1-0/+17
2024-04-12[DAGCombiner] Require same type of splat & element for build_vector (#88284)Feng Zou1-3/+6
2024-04-11[DAG] visitEXTRACT_SUBVECTOR - pull out repeated SDLoc. NFC.Simon Pilgrim1-11/+9
2024-04-08[DAG][AArch64] Support masked loads/stores with nontemporal flags (#87608)David Green1-3/+3
2024-04-04[DAG] Preserve NUW when reassociating (#87621)Piotr Sobczak1-5/+6
2024-04-04[DAG] Remove extract_vector_elt(freeze(x)), idx -> freeze(extract_vector_elt(...Simon Pilgrim1-6/+0
2024-04-03[DAG] visitADDLikeCommutative - convert (add x, shl(0 - y, n)) fold to SDPatt...Simon Pilgrim1-6/+4
2024-04-03[VP][DAGCombine] Use `simplifySelect` when combining vp.select. (#87342)AinsleySnow1-0/+7
2024-03-28[ISel] Move handling of atomic loads from SystemZ to DAGCombiner (NFC). (#86484)Jonas Paulsson1-0/+41
2024-03-28[DAGCombiner] Set disjoint flag in add->or and xor->or combines (#86925)Luke Lau1-4/+10
2024-03-27[DAG] foldAddSubOfSignBit - reuse existing SDLoc instead of regenerating it. ...Simon Pilgrim1-4/+4
2024-03-27[DAG] visitSub - reuse existing SDLoc instead of regenerating it. NFC.Simon Pilgrim1-2/+2
2024-03-26[DAG] foldAddSubBoolOfMaskedVal - reuse existing SDLoc instead of regeneratin...Simon Pilgrim1-4/+4
2024-03-26[DAG] Update ISD::AVG folds to use hasOperation to allow Custom matching prio...Simon Pilgrim1-32/+27
2024-03-26[DAG] Fold insert_subvector(N0, extract_subvector(N0, N2), N2) --> N0 (#86487)Simon Pilgrim1-0/+7
2024-03-24Match fixed width ISD::AVGFLOORS + ISD::AVGCEILS patterns (#86222)houndlord1-10/+27
2024-03-23[CodeGen] Update for scalable MemoryType in MMO (#70452)Harvin Iriawan1-19/+32
2024-03-22[DAG] Fix some missing formatting when I rewrote the SUB(MAX,MIN) -> ABD patt...Simon Pilgrim1-2/+2
2024-03-22[SelectionDAG] Prevent combination on inconsistent type in `combineCarryDiamo...XChy1-1/+6
2024-03-21[DAG] combineConcatVectorOfScalars - stop always creating UNDEF nodes. NFC.Simon Pilgrim1-5/+2
2024-03-21[SelectionDAG] Add MaskedValueIsZero check to allow folding of zero extended ...AtariDreams1-3/+12
2024-03-21[DAG] visitSUB - use sd_match to match SUB(MAX,MIN) -> ABD pattern. NFC.Simon Pilgrim1-17/+11
2024-03-21[DAG] visitSUB - pull out repeated getScalarSizeInBits() calls. NFC.Simon Pilgrim1-5/+4
2024-03-21[DAG] visitSUB/visitSUBO - move getAsNonOpaqueConstant into the if() where it...Simon Pilgrim1-10/+5
2024-03-19[DAG] Matched Fixedwidth Pattern for ISD::AVGCEILU (#85031)Shourya Goel1-0/+21
2024-03-19[DAG] visitEXTRACT_VECTOR_ELT - share the same SDLoc instead of recreating it...Simon Pilgrim1-4/+3
2024-03-19[DAG] Matched FixedWidth pattern for ISD::AVGFLOORU (#84903)Shourya Goel1-0/+21
2024-03-18[SelectionDAG] Add m_Neg and m_Not pattern matcher and update DAGCombiner (#8...zicwangupa1-3/+3
2024-03-17[CodeGen] Use LocationSize for MMO getSize (#84751)David Green1-4/+3
2024-03-15[DAG] foldABSToABD - share the same SDLoc argument instead of recreating it o...Simon Pilgrim1-7/+6
2024-03-15[DAG] foldAndToUsubsat/foldSubToUSubSat - share the same SDLoc argument inste...Simon Pilgrim1-13/+12
2024-03-15[DAG] visitTRUNCATE - pull out repeated SDLoc(N). NFC.Simon Pilgrim1-25/+16
2024-03-15[DAG] visitAND - pull out repeated SDLoc(N). NFC.Simon Pilgrim1-27/+24
2024-03-14[DAG] foldAndToUsubsat - convert to use sd_match pattern. NFC.Simon Pilgrim1-23/+14
2024-03-13[DAG] Use SelectionDAG::getNOT helper where possible. NFC.Simon Pilgrim1-4/+2
2024-03-13[DAG] visitSUB - convert some folds to use SDPatternMatchSimon Pilgrim1-55/+23
2024-03-13[SelectionDAG] Replace some basic patterns in visitADDLike with SDPatternMatc...XChy1-30/+25
2024-03-07[DAG] Fix Failure to reassociate SMAX/SMIN/UMAX/UMIN (#82175)SahilPatidar1-0/+4
2024-03-06[DAGCombiner] Improve comment on reassociateOps and its helperJay Foad1-3/+4
2024-03-05[DAG] select (sext m), (add X, C), X --> (add X, (and C, (sext m)))) (#83640)elhewaty1-0/+11
2024-03-05[DAGCombiner] Handle extending EXTRACT_VECTOR_ELTs in calculateByteProvider (...Luke Lau1-0/+4
2024-02-28[SelectionDAG] Change computeAliasing signature from optional<uint64> to Loca...David Green1-16/+21