[llvm] Always use TargetConstant for FP_ROUND ISD Nodes
[platform/upstream/llvm.git] / llvm / lib / CodeGen / SelectionDAG / DAGCombiner.cpp
2022-08-03 David Truby[llvm] Always use TargetConstant for FP_ROUND ISD Nodes
2022-08-02 Simon Pilgrim[DAG] matchRotateSub - ensure the (pre-extended) shift...
2022-08-01 Marius BrehlerAvoid comparison of integers of different signs
2022-08-01 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - extend folding to BUILD_...
2022-08-01 David Sherwood[DAGCombiner] Extend visitAND to include EXTRACT_SUBVECTOR
2022-07-29 Amaury Séchet[DAG] Use recursivelyDeleteUnusedNodes in CommitTargetL...
2022-07-29 Simon Pilgrim[DAG] Move a few hasOneUse() tests later to reduce...
2022-07-28 Simon Pilgrim[DAG] Remove SelectionDAG::GetDemandedBits and use...
2022-07-28 Simon Pilgrim[DAG] DAGCombiner::visitTRUNCATE - remove GetDemandedBi...
2022-07-28 Simon Pilgrim[DAG] Enable ISD::SRL SimplifyMultipleUseDemandedBits...
2022-07-28 Amaury Séchet[DAG] Use recursivelyDeleteUnusedNodes in PromoteLoad
2022-07-28 Amaury Séchet[DAG] Use recursivelyDeleteUnusedNodes in ReplaceLoadWi...
2022-07-26 Simon Pilgrim[DAG] matchRotateSub - set demanded bits to the shift...
2022-07-26 wangpc[DAGCombine] Mask doesn't have to be (EltSize - 1)...
2022-07-26 Sven van HaastregtReassoc FMF should not optimize FMA(a, 0, b) to (b)
2022-07-26 jacquesguan[DAGCombiner] Teach scalarizeExtractedBinop to support...
2022-07-24 Simon Pilgrim[DAG] visitSMUL_LOHI/visitUMUL_LOHI - ensure we canonic...
2022-07-23 Simon Pilgrim[DAG] Move OR(AND(X,C1),AND(OR(X,Y),C2)) -> OR(AND...
2022-07-22 Craig Topper[DAGCombiner] Simplify code around call to reduceLoadWi...
2022-07-22 Cullen Rhodes[AArch64] Emit vector FP cmp when LE is used with fast...
2022-07-21 jacquesguanrecommit "[DAGCombiner] Teach scalarizeBinOpOfSplats...
2022-07-19 David Truby[llvm][SVE] Remove redundant and when comparing against...
2022-07-19 Simon Pilgrim[DAG] Call SimplifyDemandedBits from ISD::MUL nodes
2022-07-19 Max KazantsevRevert "[DAGCombiner] Teach scalarizeBinOpOfSplats...
2022-07-19 jacquesguan[DAGCombiner] Teach scalarizeBinOpOfSplats handle scala...
2022-07-18 Itay Bookstein[SDAG] Remove single-result restriction on commutative CSE
2022-07-17 Simon Pilgrim[DAG] Fold (or (and X, C1), (and (or X, Y), C2)) -...
2022-07-17 Kazu Hirata[CodeGen] Qualify auto variables in for loops (NFC)
2022-07-16 Sanjay Patel[SDAG] narrow truncated sign_extend_inreg
2022-07-16 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - refactor BUILD_VECTOR...
2022-07-16 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - remove duplicate VT...
2022-07-16 Simon PilgrimFix signed/unsigned mismatch
2022-07-16 Simon Pilgrim[DAG] Canonicalize non-inlane shuffle -> AND if all...
2022-07-16 Simon Pilgrim[DAG] combineShiftAnd1ToBitTest - match "and (srl ...
2022-07-15 Simon Pilgrim[DAG] Move "xor (X logical_shift ShiftC), XorC -->...
2022-07-13 Simon Pilgrim[DAG] SimplifyDemandedVectorElts - adjust demanded...
2022-07-13 Philip Reames[DAGCombine] fold (urem x, (lshr pow2, y)) -> (and...
2022-07-11 Sanjay Patel[SDAG] enhance sub->xor fold to ignore signbit
2022-07-10 Kazu Hirata[SelectionDAG] Restore calls to has_value (NFC)
2022-07-09 Craig Topper[DAGCombiner][X86] Fold sra (sub AddC, (shl X, N1C...
2022-07-08 Sanjay Patel[SDAG] try to replace subtract-from-constant with xor
2022-07-05 Simon Pilgrim[DAG] visitREM - use isAllOnesOrAllOnesSplat instead...
2022-07-05 Simon Pilgrim[DAG] foldAddSubOfSignBit - don't bother creating the...
2022-07-04 Simon Pilgrim[DAG] visitTRUNCATE - move GetDemandedBits AFTER Simpli...
2022-06-27 Kazu HirataDon't use Optional::hasValue (NFC)
2022-06-27 Kazu Hirata[llvm] Don't use Optional::hasValue (NFC)
2022-06-25 Kazu HirataRevert "Don't use Optional::hasValue (NFC)"
2022-06-25 Kazu HirataDon't use Optional::hasValue (NFC)
2022-06-24 chenglin.bi[SelectionDAG][DAGCombiner] Reuse exist node by reassociate
2022-06-23 chenglin.biRevert "[SelectionDAG][DAGCombiner] Reuse exist node...
2022-06-21 Simon Pilgrim[DAG] visitTRUNCATE - move TRUNCATE(ADDE/ADDCARRY)...
2022-06-21 Kazu Hirata[llvm] Don't use Optional::getValue (NFC)
2022-06-21 chenglin.bi[SelectionDAG][DAGCombiner] Reuse exist node by reassociate
2022-06-20 Kazu Hirata[llvm] Don't use Optional::hasValue (NFC)
2022-06-20 Simon Pilgrim[DAG] Fold (srl (shl x, c1), c2) -> and(shl/srl(x,...
2022-06-19 Craig Topper[DAGCombiner][ARM][RISCV] Teach ShrinkLoadReplaceStoreW...
2022-06-15 Benjamin Kramer[DAGCombiner] Fold fold (fp_to_bf16 (bf16_to_fp op...
2022-06-15 Simon Pilgrim[DAG] Fix SDLoc mismatch in (shl (srl x, c1), c2) ...
2022-06-13 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - attempt to reconstruct...
2022-06-12 Simon Pilgrim[DAG] visitSRL - pull out ShiftVT. NFC.
2022-06-11 Simon Pilgrim[DAG] visitVECTOR_SHUFFLE - fold splat(insert_vector_el...
2022-06-11 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - add <1 x ???> insert_vec...
2022-06-11 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - fold insert_vector_elt...
2022-06-11 Simon Pilgrim[DAG] visitINSERT_VECTOR_ELT - refactor BUILD_VECTOR...
2022-06-09 Simon Pilgrim[DAG] combineInsertEltToShuffle - if EXTRACT_VECTOR_ELT...
2022-06-08 Simon Pilgrim[DAG] visitVSELECT - don't wait for truncation of sub...
2022-06-07 Simon Pilgrim[DAG] combineShuffleOfSplatVal - fold shuffle(splat...
2022-06-07 Guillaume Chatelet[Alignment][NFC] Remove usage of MemSDNode::getAlignment
2022-06-07 Nikita Popov[DAGCombiner] Remove overzealous assertion when folding...
2022-06-03 Benjamin Kramer[DAGCombiner] Add bf16 to the matrix of types that...
2022-06-03 Nikita Popov[DAGCombine] Handle promotion of shift with both operan...
2022-06-01 Ping Deng[DAGCombine][NFC] Add braces to 'else' to match braced...
2022-05-26 Simon Pilgrim[DAG] Generalize (sra (trunc (sra x, c1)), c2) -> ...
2022-05-26 Simon Pilgrim[DAG] Cleanup "and/or of cmp with single bit diff"...
2022-05-23 Craig Topper[DAGCombiner][AArch64] Don't fold (smulo x, 2) -> ...
2022-05-22 Paul Walker[SVE] Enable use of 32bit gather/scatter indices for...
2022-05-19 Jay Foad[APInt] Remove all uses of zextOrSelf, sextOrSelf and...
2022-05-18 Craig Topper[DAGCombiner] Fix bug in MatchBSwapHWordLow.
2022-05-17 Simon Pilgrim[DAG] Fold (shl (srl x, c), c) -> and(x, m) even if...
2022-05-16 Paul Walker[SelectionDAG] Remove duplicate "is scaled" information...
2022-05-16 Craig Topper[DAGCombiner] Fix incorrect indentation. NFC
2022-05-16 Bradley Smith[DAGCombine] Support splat_vector nodes in (and (extloa...
2022-05-14 Simon Pilgrim[DAG] visitOR - merge isa/cast<ShuffleVectorSDNode...
2022-05-14 Simon Pilgrim[DAG] visitADDLike - use SelectionDAG::FoldConstantArit...
2022-05-14 Simon Pilgrim[DAG] visitMUL - pull out repeated SDLoc() calls. NFC.
2022-05-14 Simon Pilgrim[DAG] Use SelectionDAG::FoldConstantArithmetic directly...
2022-05-13 Simon PilgrimDAGCombiner.cpp - break if-else chains that always...
2022-05-13 Sanjay Patel[SDAG] freeze operand when expanging urem
2022-05-09 David Green[DAG] Use isAnyConstantBuildVector. NFC
2022-05-09 David Green[DAG] Prevent infinite loop combining bitcast shuffle
2022-05-08 Simon Pilgrim[DAG] Only perform the fold (A-B)+(C-D) --> (A+C)-...
2022-05-07 Amaury Séchet[DAGCombine] Add node in the worklist in topological...
2022-05-07 Paul Walker[ISD::IndexType] Helper functions for common queries.
2022-05-06 David GreenRevert "[DAGCombine] Make combineShuffleOfBitcast Littl...
2022-05-06 David Green[DAGCombine] Make combineShuffleOfBitcast LittleEndian...
2022-05-06 Simon Pilgrim[DAG] visitREM - merge buildOptimizedSREM into if(...
2022-05-06 David Green[DAG][PowerPC] Combine shuffle(bitcast(X), Mask) to...
2022-05-05 Craig Topper[DAGCombiner] Fold (sext/zext undef) -> 0 and aext...
2022-05-05 Craig Topper[DAGCombiner] Fold (max/min X, X) -> X.
2022-05-05 Nikita Popov[DAGCombine] Fold (X & ~Y) | Y with truncated not
next