Lines Matching defs:SDValue
893 for (const SDValue &Op : N->op_values())
906 SDValue Src = N->getOperand(2);
1300 for (const SDValue &Op : N->op_values()) {
2202 bool SelectionDAGISel::CheckAndMask(SDValue LHS, ConstantSDNode *RHS,
2234 bool SelectionDAGISel::CheckOrMask(SDValue LHS, ConstantSDNode *RHS,
2267 void SelectionDAGISel::SelectInlineAsmMemoryOperands(std::vector<SDValue> &Ops,
2269 // Change the vector of SDValue into a list of SDNodeHandle for x86 might call
2307 std::vector<SDValue> SelOps;
2347 for (const SDValue &Op : ImmedUse->op_values()) {
2360 for (const SDValue &Op : Root->op_values()) {
2376 bool SelectionDAGISel::IsProfitableToFold(SDValue N, SDNode *U,
2385 bool SelectionDAGISel::IsLegalToFold(SDValue N, SDNode *U, SDNode *Root,
2456 std::vector<SDValue> Ops(N->op_begin(), N->op_end());
2460 SDValue New = CurDAG->getNode(N->getOpcode(), DL, VTs, Ops);
2476 SDValue New = CurDAG->getCopyFromReg(
2493 SDValue New = CurDAG->getCopyToReg(
2544 void SelectionDAGISel::pushStackMapLiveVariable(SmallVectorImpl<SDValue> &Ops,
2545 SDValue OpVal, SDLoc DL) {
2563 SmallVector<SDValue, 32> Ops;
2568 SDValue Chain = *It++;
2569 SDValue InGlue = *It++;
2572 SDValue ID = *It++;
2577 SDValue Shad = *It++;
2593 SmallVector<SDValue, 32> Ops;
2598 SDValue Chain = *It++;
2599 std::optional<SDValue> Glue;
2602 SDValue RegMask = *It++;
2605 SDValue ID = *It++;
2610 SDValue Shad = *It++;
2618 SDValue NumArgs = *It++;
2681 SDNode *NodeToMatch, SDValue InputChain,
2707 SDValue ChainVal = SDValue(ChainNode, ChainNode->getNumValues()-1);
2738 static SDValue
2744 SmallVector<SDValue, 3> InputChains;
2753 std::function<void(const SDValue)> AddChains = [&](const SDValue V) {
2761 for (const SDValue &Op : V->op_values())
2783 for (SDValue V : InputChains)
2788 return SDValue();
2800 ArrayRef<SDValue> Ops, unsigned EmitNodeInfo) {
2835 ReplaceUses(SDValue(Node, OldGlueResultNo),
2836 SDValue(Res, ResNumResults - 1));
2844 ReplaceUses(SDValue(Node, OldChainResultNo),
2845 SDValue(Res, ResNumResults - 1));
2860 CheckSame(const unsigned char *MatcherTable, unsigned &MatcherIndex, SDValue N,
2861 const SmallVectorImpl<std::pair<SDValue, SDNode *>> &RecordedNodes) {
2870 const unsigned char *MatcherTable, unsigned &MatcherIndex, SDValue N,
2871 const SmallVectorImpl<std::pair<SDValue, SDNode *>> &RecordedNodes,
2914 SDValue N,
2925 CheckChildType(MVT::SimpleValueType VT, SDValue N, const TargetLowering *TLI,
2934 SDValue N) {
2941 SDValue N) {
2949 SDValue N, const TargetLowering *TLI, const DataLayout &DL) {
2971 SDValue N) {
2984 SDValue N, unsigned ChildNo) {
2992 SDValue N, const SelectionDAGISel &SDISel) {
3004 CheckOrImm(const unsigned char *MatcherTable, unsigned &MatcherIndex, SDValue N,
3023 unsigned Index, SDValue N,
3026 SmallVectorImpl<std::pair<SDValue, SDNode*>> &RecordedNodes) {
3171 SmallVector<SDValue, 4> NodeStack;
3180 SDValue InputChain, InputGlue;
3193 SmallVectorImpl<std::pair<SDValue, SDNode *>> &RecordedNodes;
3198 SmallVectorImpl<std::pair<SDValue, SDNode *>> &RN,
3266 ReplaceUses(SDValue(NodeToMatch, 0), NodeToMatch->getOperand(0));
3317 SmallVector<SDValue, 8> NodeStack;
3318 SDValue N = SDValue(NodeToMatch, 0);
3328 SmallVector<std::pair<SDValue, SDNode*>, 8> RecordedNodes;
3337 SDValue InputChain, InputGlue;
3580 SmallVector<SDValue, 8> Operands;
3849 RecordedNodes.push_back(std::pair<SDValue, SDNode *>(
3871 RecordedNodes.push_back(std::pair<SDValue, SDNode *>(
3882 RecordedNodes.push_back(std::pair<SDValue, SDNode*>(
3901 SDValue Imm = RecordedNodes[RecNo].first;
4028 SDValue Res = RunSDNodeXForm(RecordedNodes[RecNo].first, XFormNo);
4029 RecordedNodes.push_back(std::pair<SDValue,SDNode*>(Res, nullptr));
4142 SmallVector<SDValue, 8> Ops;
4163 SDValue V = NodeToMatch->getOperand(i);
4198 RecordedNodes.push_back(std::pair<SDValue,SDNode*>(SDValue(Res, i),
4224 InputGlue = SDValue(Res, VTs.size()-1);
4226 InputChain = SDValue(Res, VTs.size()-2);
4228 InputChain = SDValue(Res, VTs.size()-1);
4289 SDValue Res = RecordedNodes[ResSlot].first;
4301 ReplaceUses(SDValue(NodeToMatch, i), Res);
4314 ReplaceUses(SDValue(NodeToMatch, NodeToMatch->getNumValues() - 1),