Home | History | Annotate | Download | only in SelectionDAG

Lines Matching refs:CLI

5119     CallLoweringInfo CLI(getRoot(), I.getType(),
5126 std::pair<SDValue, SDValue> Result = TLI->LowerCallTo(CLI);
5317 CallLoweringInfo CLI(getRoot(), RetTy, FTy, isTailCall, Callee, Args, DAG,
5319 std::pair<SDValue,SDValue> Result = TLI->LowerCallTo(CLI);
6429 TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
6431 CLI.Ins.clear();
6433 ComputeValueVTs(*this, CLI.RetTy, RetTys);
6436 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT);
6437 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT);
6441 MyFlags.Used = CLI.IsReturnValueUsed;
6442 if (CLI.RetSExt)
6444 if (CLI.RetZExt)
6446 if (CLI.IsInReg)
6448 CLI.Ins.push_back(MyFlags);
6453 CLI.Outs.clear();
6454 CLI.OutVals.clear();
6455 ArgListTy &Args = CLI.Args;
6462 Type *ArgTy = VT.getTypeForEVT(CLI.RetTy->getContext());
6495 MVT PartVT = getRegisterType(CLI.RetTy->getContext(), VT);
6496 unsigned NumParts = getNumRegisters(CLI.RetTy->getContext(), VT);
6507 assert(CLI.RetTy == Args[i].Ty && RetTys.size() == NumValues &&
6521 CLI.RetSExt == Args[i].isSExt && CLI.RetZExt == Args[i].isZExt))
6525 getCopyToParts(CLI.DAG, CLI.DL, Op, &Parts[0], NumParts,
6526 PartVT, CLI.CS ? CLI.CS->getInstruction() : 0, ExtendKind);
6531 i < CLI.NumFixedArgs,
6538 CLI.Outs.push_back(MyFlags);
6539 CLI.OutVals.push_back(Parts[j]);
6545 CLI.Chain = LowerCall(CLI, InVals);
6548 assert(CLI.Chain.getNode() && CLI.Chain.getValueType() == MVT::Other &&
6550 assert((!CLI.IsTailCall || InVals.empty()) &&
6552 assert((CLI.IsTailCall || InVals.size() == CLI.Ins.size()) &&
6559 if (CLI.IsTailCall) {
6560 CLI.DAG.setRoot(CLI.Chain);
6564 DEBUG(for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) {
6567 assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() &&
6574 if (CLI.RetSExt)
6576 else if (CLI.RetZExt)
6582 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT);
6583 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT);
6585 ReturnValues.push_back(getCopyFromParts(CLI.DAG, CLI.DL, &InVals[CurReg],
6595 return std::make_pair(SDValue(), CLI.Chain);
6597 SDValue Res = CLI.DAG.getNode(ISD::MERGE_VALUES, CLI.DL,
6598 CLI.DAG.getVTList(&RetTys[0], RetTys.size()),
6600 return std::make_pair(Res, CLI.Chain);