Lines Matching refs:CLI

5321     TargetLowering::CallLoweringInfo CLI(DAG);
5322 CLI.setDebugLoc(sdl).setChain(getRoot())
5327 std::pair<SDValue, SDValue> Result = TLI->LowerCallTo(CLI);
5496 TargetLowering::CallLoweringInfo CLI(DAG);
5497 CLI.setDebugLoc(getCurSDLoc()).setChain(getRoot())
5500 std::pair<SDValue,SDValue> Result = TLI->LowerCallTo(CLI);
6799 TargetLowering::CallLoweringInfo CLI(DAG);
6800 CLI.setDebugLoc(getCurSDLoc()).setChain(getRoot())
6805 return TLI->LowerCallTo(CLI);
7050 static AttributeSet getReturnAttrs(TargetLowering::CallLoweringInfo &CLI) {
7052 if (CLI.RetSExt)
7054 if (CLI.RetZExt)
7056 if (CLI.IsInReg)
7059 return AttributeSet::get(CLI.RetTy->getContext(), AttributeSet::ReturnIndex,
7068 TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
7070 CLI.Ins.clear();
7071 Type *OrigRetTy = CLI.RetTy;
7074 ComputeValueVTs(*this, CLI.RetTy, RetTys, &Offsets);
7077 GetReturnInfo(CLI.RetTy, getReturnAttrs(CLI), Outs, *this);
7080 this->CanLowerReturn(CLI.CallConv, CLI.DAG.getMachineFunction(),
7081 CLI.IsVarArg, Outs, CLI.RetTy->getContext());
7089 uint64_t TySize = getDataLayout()->getTypeAllocSize(CLI.RetTy);
7090 unsigned Align = getDataLayout()->getPrefTypeAlignment(CLI.RetTy);
7091 MachineFunction &MF = CLI.DAG.getMachineFunction();
7093 Type *StackSlotPtrType = PointerType::getUnqual(CLI.RetTy);
7095 DemoteStackSlot = CLI.DAG.getFrameIndex(DemoteStackIdx, getPointerTy());
7107 CLI.getArgs().insert(CLI.getArgs().begin(), Entry);
7108 CLI.RetTy = Type::getVoidTy(CLI.RetTy->getContext());
7112 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT);
7113 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT);
7118 MyFlags.Used = CLI.IsReturnValueUsed;
7119 if (CLI.RetSExt)
7121 if (CLI.RetZExt)
7123 if (CLI.IsInReg)
7125 CLI.Ins.push_back(MyFlags);
7131 CLI.Outs.clear();
7132 CLI.OutVals.clear();
7133 ArgListTy &Args = CLI.getArgs();
7141 FinalType, CLI.CallConv, CLI.IsVarArg);
7145 Type *ArgTy = VT.getTypeForEVT(CLI.RetTy->getContext());
7189 MVT PartVT = getRegisterType(CLI.RetTy->getContext(), VT);
7190 unsigned NumParts = getNumRegisters(CLI.RetTy->getContext(), VT);
7201 assert(CLI.RetTy == Args[i].Ty && RetTys.size() == NumValues &&
7215 CLI.RetSExt == Args[i].isSExt && CLI.RetZExt == Args[i].isZExt))
7219 getCopyToParts(CLI.DAG, CLI.DL, Op, &Parts[0], NumParts, PartVT,
7220 CLI.CS ? CLI.CS->getInstruction() : nullptr, ExtendKind);
7225 i < CLI.NumFixedArgs,
7236 CLI.Outs.push_back(MyFlags);
7237 CLI.OutVals.push_back(Parts[j]);
7243 CLI.Chain = LowerCall(CLI, InVals);
7246 assert(CLI.Chain.getNode() && CLI.Chain.getValueType() == MVT::Other &&
7248 assert((!CLI.IsTailCall || InVals.empty()) &&
7250 assert((CLI.IsTailCall || InVals.size() == CLI.Ins.size()) &&
7257 if (CLI.IsTailCall) {
7258 CLI.DAG.setRoot(CLI.Chain);
7262 DEBUG(for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) {
7265 assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() &&
7285 SDValue Add = CLI.DAG.getNode(ISD::ADD, CLI.DL, PtrVT, DemoteStackSlot,
7286 CLI.DAG.getConstant(Offsets[i], PtrVT));
7287 SDValue L = CLI.DAG.getLoad(
7288 RetTys[i], CLI.DL, CLI.Chain, Add,
7295 CLI.Chain = CLI.DAG.getNode(ISD::TokenFactor, CLI.DL, MVT::Other, Chains);
7300 if (CLI.RetSExt)
7302 else if (CLI.RetZExt)
7307 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT);
7308 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT);
7310 ReturnValues.push_back(getCopyFromParts(CLI.DAG, CLI.DL, &InVals[CurReg],
7320 return std::make_pair(SDValue(), CLI.Chain);
7323 SDValue Res = CLI.DAG.getNode(ISD::MERGE_VALUES, CLI.DL,
7324 CLI.DAG.getVTList(RetTys), ReturnValues);
7325 return std::make_pair(Res, CLI.Chain);