Lines Matching defs:SDValue
1006 bool isZeroNode(SDValue Elt);
1022 bool isConstantSplat(SDValue Op, APInt &SplatVal,
1027 bool mayFoldLoad(SDValue Op, const X86Subtarget &Subtarget,
1032 bool mayFoldLoadIntoBroadcastFromMem(SDValue Op, MVT EltVT,
1038 bool mayFoldIntoStore(SDValue Op);
1042 bool mayFoldIntoZeroExtend(SDValue Op);
1073 SDValue getPICJumpTableRelocBase(SDValue Table,
1123 SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override;
1128 void ReplaceNodeResults(SDNode *N, SmallVectorImpl<SDValue>&Results,
1131 SDValue PerformDAGCombine(SDNode *N, DAGCombinerInfo &DCI) const override;
1151 bool IsDesirableToPromoteOp(SDValue Op, EVT &PVT) const override;
1163 SDValue getNegatedExpression(SDValue Op, SelectionDAG &DAG,
1208 bool hasAndNotCompare(SDValue Y) const override;
1210 bool hasAndNot(SDValue Y) const override;
1212 bool hasBitTest(SDValue X, SDValue Y) const override;
1215 SDValue X, ConstantSDNode *XC, ConstantSDNode *CC, SDValue Y,
1233 bool shouldFoldMaskToVariableShiftPair(SDValue Y) const override;
1276 bool targetShrinkDemandedConstant(SDValue Op, const APInt &DemandedBits,
1282 void computeKnownBitsForTargetNode(const SDValue Op,
1289 unsigned ComputeNumSignBitsForTargetNode(SDValue Op,
1294 bool SimplifyDemandedVectorEltsForTargetNode(SDValue Op,
1301 bool SimplifyDemandedVectorEltsForTargetShuffle(SDValue Op,
1307 bool SimplifyDemandedBitsForTargetNode(SDValue Op,
1314 SDValue SimplifyMultipleUseDemandedBitsForTargetNode(
1315 SDValue Op, const APInt &DemandedBits, const APInt &DemandedElts,
1319 SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
1323 SDValue Op, const APInt &DemandedElts, const SelectionDAG &DAG,
1326 bool isSplatValueForTargetNode(SDValue Op, const APInt &DemandedElts,
1330 bool isTargetCanonicalConstantNode(SDValue Op) const override {
1345 SDValue unwrapAddress(SDValue N) const override;
1347 SDValue getReturnAddressFrameIndex(SelectionDAG &DAG) const;
1364 void LowerAsmOperandForConstraint(SDValue Op, StringRef Constraint,
1365 std::vector<SDValue> &Ops,
1376 SDValue LowerAsmOutputForConstraint(SDValue &Chain, SDValue &Flag,
1435 bool isZExtFree(SDValue Val, EVT VT2) const override;
1441 bool isVectorLoadExtDesirable(SDValue) const override;
1512 SDValue C) const override;
1522 bool shouldScalarizeBinop(SDValue) const override;
1576 SDValue emitStackGuardXorFP(SelectionDAG &DAG, SDValue Val,
1585 std::pair<SDValue, SDValue> BuildFILD(EVT DstVT, EVT SrcVT, const SDLoc &DL,
1586 SDValue Chain, SDValue Pointer,
1634 SDValue visitMaskedLoad(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
1635 MachineMemOperand *MMO, SDValue &NewLoad,
1636 SDValue Ptr, SDValue PassThru,
1637 SDValue Mask) const override;
1638 SDValue visitMaskedStore(SelectionDAG &DAG, const SDLoc &DL, SDValue Chain,
1639 MachineMemOperand *MMO, SDValue Ptr, SDValue Val,
1640 SDValue Mask) const override;
1654 SDValue expandIndirectJTBranch(const SDLoc &dl, SDValue Value, SDValue Addr,
1684 SDValue LowerCallResult(SDValue Chain, SDValue InGlue,
1688 SmallVectorImpl<SDValue> &InVals,
1690 SDValue LowerMemArgument(SDValue Chain, CallingConv::ID CallConv,
1695 SDValue LowerMemOpCallTo(SDValue Chain, SDValue StackPtr, SDValue Arg,
1707 SDValue EmitTailCallLoadRetAddr(SelectionDAG &DAG, SDValue &OutRetAddr,
1708 SDValue Chain, bool IsTailCall,
1717 SDValue FP_TO_INTHelper(SDValue Op, SelectionDAG &DAG, bool IsSigned,
1718 SDValue &Chain) const;
1719 SDValue LRINT_LLRINTHelper(SDNode *N, SelectionDAG &DAG) const;
1721 SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const;
1722 SDValue LowerVSELECT(SDValue Op, SelectionDAG &DAG) const;
1723 SDValue LowerEXTRACT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
1724 SDValue LowerINSERT_VECTOR_ELT(SDValue Op, SelectionDAG &DAG) const;
1728 SDValue LowerConstantPool(SDValue Op, SelectionDAG &DAG) const;
1729 SDValue LowerBlockAddress(SDValue Op, SelectionDAG &DAG) const;
1730 SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const;
1731 SDValue LowerGlobalTLSAddress(SDValue Op, SelectionDAG &DAG) const;
1732 SDValue LowerExternalSymbol(SDValue Op, SelectionDAG &DAG) const;
1736 SDValue LowerGlobalOrExternal(SDValue Op, SelectionDAG &DAG,
1739 SDValue LowerSINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
1740 SDValue LowerUINT_TO_FP(SDValue Op, SelectionDAG &DAG) const;
1741 SDValue LowerTRUNCATE(SDValue Op, SelectionDAG &DAG) const;
1742 SDValue LowerFP_TO_INT(SDValue Op, SelectionDAG &DAG) const;
1743 SDValue LowerFP_TO_INT_SAT(SDValue Op, SelectionDAG &DAG) const;
1744 SDValue LowerLRINT_LLRINT(SDValue Op, SelectionDAG &DAG) const;
1745 SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const;
1746 SDValue LowerSETCCCARRY(SDValue Op, SelectionDAG &DAG) const;
1747 SDValue LowerSELECT(SDValue Op, SelectionDAG &DAG) const;
1748 SDValue LowerBRCOND(SDValue Op, SelectionDAG &DAG) const;
1749 SDValue LowerJumpTable(SDValue Op, SelectionDAG &DAG) const;
1750 SDValue LowerDYNAMIC_STACKALLOC(SDValue Op, SelectionDAG &DAG) const;
1751 SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const;
1752 SDValue LowerVAARG(SDValue Op, SelectionDAG &DAG) const;
1753 SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
1754 SDValue LowerADDROFRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
1755 SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
1756 SDValue LowerFRAME_TO_ARGS_OFFSET(SDValue Op, SelectionDAG &DAG) const;
1757 SDValue LowerEH_RETURN(SDValue Op, SelectionDAG &DAG) const;
1758 SDValue lowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const;
1759 SDValue lowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const;
1760 SDValue lowerEH_SJLJ_SETUP_DISPATCH(SDValue Op, SelectionDAG &DAG) const;
1761 SDValue LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
1762 SDValue LowerGET_ROUNDING(SDValue Op, SelectionDAG &DAG) const;
1763 SDValue LowerSET_ROUNDING(SDValue Op, SelectionDAG &DAG) const;
1764 SDValue LowerGET_FPENV_MEM(SDValue Op, SelectionDAG &DAG) const;
1765 SDValue LowerSET_FPENV_MEM(SDValue Op, SelectionDAG &DAG) const;
1766 SDValue LowerRESET_FPENV(SDValue Op, SelectionDAG &DAG) const;
1767 SDValue LowerWin64_i128OP(SDValue Op, SelectionDAG &DAG) const;
1768 SDValue LowerWin64_FP_TO_INT128(SDValue Op, SelectionDAG &DAG,
1769 SDValue &Chain) const;
1770 SDValue LowerWin64_INT128_TO_FP(SDValue Op, SelectionDAG &DAG) const;
1771 SDValue LowerGC_TRANSITION(SDValue Op, SelectionDAG &DAG) const;
1772 SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
1773 SDValue lowerFaddFsub(SDValue Op, SelectionDAG &DAG) const;
1774 SDValue LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const;
1775 SDValue LowerFP_ROUND(SDValue Op, SelectionDAG &DAG) const;
1776 SDValue LowerFP_TO_BF16(SDValue Op, SelectionDAG &DAG) const;
1778 SDValue
1779 LowerFormalArguments(SDValue Chain, CallingConv::ID CallConv, bool isVarArg,
1782 SmallVectorImpl<SDValue> &InVals) const override;
1783 SDValue LowerCall(CallLoweringInfo &CLI,
1784 SmallVectorImpl<SDValue> &InVals) const override;
1786 SDValue LowerReturn(SDValue Chain, CallingConv::ID CallConv, bool isVarArg,
1788 const SmallVectorImpl<SDValue> &OutVals,
1800 bool isUsedByReturnOnly(SDNode *N, SDValue &Chain) const override;
1882 SDValue emitFlagsForSetcc(SDValue Op0, SDValue Op1, ISD::CondCode CC,
1884 SDValue &X86CC) const;
1886 bool optimizeFMulOrFDivAsShiftAddBitcast(SDNode *N, SDValue FPConst,
1887 SDValue IntPow2) const override;
1890 bool isFsqrtCheap(SDValue Op, SelectionDAG &DAG) const override;
1893 SDValue getSqrtEstimate(SDValue Op, SelectionDAG &DAG, int Enabled,
1898 SDValue getRecipEstimate(SDValue Op, SelectionDAG &DAG, int Enabled,
1904 SDValue BuildSDIVPow2(SDNode *N, const APInt &Divisor, SelectionDAG &DAG,
1907 SDValue getMOVL(SelectionDAG &DAG, const SDLoc &dl, MVT VT, SDValue V1,
1908 SDValue V2) const;
1925 const SDValue &getBasePtr() const { return getOperand(3); }
1926 const SDValue &getIndex() const { return getOperand(4); }
1927 const SDValue &getMask() const { return getOperand(2); }
1928 const SDValue &getScale() const { return getOperand(5); }
1938 const SDValue &getPassThru() const { return getOperand(1); }
1947 const SDValue &getValue() const { return getOperand(1); }