Lines Matching defs:Chain
743 X86TargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv,
855 RetOps.push_back(Chain); // Operand #0 = Chain (updated below)
867 Chain = DAG.getCopyToReg(Chain, dl, RetVal.first, RetVal.second, Glue);
868 Glue = Chain.getValue(1);
887 // original Chain stored in RetOps[0], instead of the current Chain updated
888 // in the above loop. If we only have sret, RetOps[0] equals to Chain.
902 // Chain dependency from Unit A to Unit B
911 Chain = DAG.getCopyToReg(Chain, dl, RetValReg, Val, Glue);
912 Glue = Chain.getValue(1);
939 RetOps[0] = Chain; // Update chain.
951 bool X86TargetLowering::isUsedByReturnOnly(SDNode *N, SDValue &Chain) const {
955 SDValue TCChain = Chain;
983 Chain = TCChain;
1102 SDValue Chain, SDValue InGlue, CallingConv::ID CallConv, bool isVarArg,
1161 getv64i1Argument(VA, RVLocs[++I], Chain, DAG, dl, Subtarget, &InGlue);
1163 Chain = DAG.getCopyFromReg(Chain, dl, VA.getLocReg(), CopyVT, InGlue)
1165 Val = Chain.getValue(0);
1166 InGlue = Chain.getValue(2);
1191 return Chain;
1244 SDValue Chain, ISD::ArgFlagsTy Flags,
1249 Chain, dl, Dst, Src, SizeNode, Flags.getNonZeroByValAlign(),
1301 X86TargetLowering::LowerMemArgument(SDValue Chain, CallingConv::ID CallConv,
1365 ValVT, dl, Chain, PartAddr,
1386 return DAG.getLoad(ValVT, dl, Chain, Addr,
1408 ValVT, dl, Chain, FIN,
1487 void lowerVarArgsParameters(SDValue &Chain, unsigned StackSize);
1490 void createVarArgAreaAndStoreRegisters(SDValue &Chain, unsigned StackSize);
1492 void forwardMustTailParameters(SDValue &Chain);
1512 SDValue &Chain, unsigned StackSize) {
1563 LiveGPRs.push_back(DAG.getCopyFromReg(Chain, DL, GPR, MVT::i64));
1568 ALVal = DAG.getCopyFromReg(Chain, DL, AL, MVT::i8);
1601 SaveXMMOps.push_back(Chain);
1619 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, MemOps);
1623 void VarArgsLoweringHelper::forwardMustTailParameters(SDValue &Chain) {
1657 SDValue RegVal = DAG.getCopyFromReg(Chain, DL, FR.VReg, FR.VT);
1660 Chain = DAG.getCopyToReg(Chain, DL, FR.VReg, RegVal);
1664 void VarArgsLoweringHelper::lowerVarArgsParameters(SDValue &Chain,
1672 createVarArgAreaAndStoreRegisters(Chain, StackSize);
1675 forwardMustTailParameters(Chain);
1679 SDValue Chain, CallingConv::ID CallConv, bool IsVarArg,
1735 getv64i1Argument(VA, ArgLocs[++I], Chain, DAG, dl, Subtarget);
1778 ArgValue = DAG.getCopyFromReg(Chain, dl, Reg, RegVT);
1809 LowerMemArgument(Chain, CallConv, Ins, dl, DAG, VA, MFI, InsIndex);
1816 DAG.getLoad(VA.getValVT(), dl, Chain, ArgValue, MachinePointerInfo());
1836 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, St, Chain);
1857 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Copy, Chain);
1870 .lowerVarArgsParameters(Chain, StackSize);
1928 return Chain;
1931 SDValue X86TargetLowering::LowerMemOpCallTo(SDValue Chain, SDValue StackPtr,
1942 return CreateCopyOfByValArgument(Arg, PtrOff, Chain, Flags, DAG, dl);
1949 Chain, dl, Arg, PtrOff,
1957 SelectionDAG &DAG, SDValue &OutRetAddr, SDValue Chain, bool IsTailCall,
1964 OutRetAddr = DAG.getLoad(VT, dl, Chain, OutRetAddr, MachinePointerInfo());
1971 SDValue Chain, SDValue RetAddrFrIdx,
1975 if (!FPDiff) return Chain;
1981 Chain = DAG.getStore(Chain, dl, RetAddrFrIdx, NewRetAddrFrIdx,
1984 return Chain;
2007 SDValue Chain = CLI.Chain;
2140 Chain = DAG.getCALLSEQ_START(Chain, NumBytesToPush,
2146 Chain = EmitTailCallLoadRetAddr(DAG, RetAddrFrIdx, Chain, isTailCall,
2209 Chain =
2210 CreateCopyOfByValArgument(Arg, StackSlot, Chain, Flags, DAG, dl);
2218 Chain = DAG.getStore(
2219 Chain, dl, Arg, SpillSlot,
2253 StackPtr = DAG.getCopyFromReg(Chain, dl, RegInfo->getStackRegister(),
2255 MemOpChains.push_back(LowerMemOpCallTo(Chain, StackPtr, Arg,
2261 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, MemOpChains);
2319 SDValue Val = DAG.getCopyFromReg(Chain, dl, F.VReg, F.VT);
2334 SDValue ArgChain = DAG.getStackArgumentTokenFactor(Chain);
2371 StackPtr = DAG.getCopyFromReg(Chain, dl, RegInfo->getStackRegister(),
2388 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, MemOpChains2);
2391 Chain = EmitTailCallStoreRetAddr(DAG, MF, Chain, RetAddrFrIdx,
2400 Chain = DAG.getCopyToReg(Chain, dl, RegsToPass[i].first,
2402 InGlue = Chain.getValue(1);
2427 Chain = DAG.getCALLSEQ_END(Chain, NumBytesToPop, 0, InGlue, dl);
2428 InGlue = Chain.getValue(1);
2431 Ops.push_back(Chain);
2540 Chain = DAG.getNode(X86ISD::NT_CALL, dl, NodeTys, Ops);
2555 Chain = DAG.getNode(X86ISD::CALL_RVMARKER, dl, NodeTys, Ops);
2557 Chain = DAG.getNode(X86ISD::CALL, dl, NodeTys, Ops);
2561 Chain.getNode()->setCFIType(CLI.CFIType->getZExtValue());
2563 InGlue = Chain.getValue(1);
2564 DAG.addNoMergeSiteInfo(Chain.getNode(), CLI.NoMerge);
2565 DAG.addCallSiteInfo(Chain.getNode(), std::move(CSInfo));
2570 DAG.addHeapAllocSite(Chain.getNode(), HeapAlloc);
2584 Chain = DAG.getCALLSEQ_END(Chain, NumBytesToPop, NumBytesForCalleeToPop,
2586 InGlue = Chain.getValue(1);
2601 return LowerCallResult(Chain, InGlue, CallConv, isVarArg, Ins, dl, DAG,