Lines Matching refs:CLI

5263     TargetLowering::CallLoweringInfo CLI(DAG);  in visitIntrinsicCall()  local
5264 CLI.setDebugLoc(sdl).setChain(getRoot()) in visitIntrinsicCall()
5269 std::pair<SDValue, SDValue> Result = TLI.LowerCallTo(CLI); in visitIntrinsicCall()
5467 SelectionDAGBuilder::lowerInvokable(TargetLowering::CallLoweringInfo &CLI, in lowerInvokable() argument
5493 CLI.setChain(getRoot()); in lowerInvokable()
5496 std::pair<SDValue, SDValue> Result = TLI.LowerCallTo(CLI); in lowerInvokable()
5498 assert((CLI.IsTailCall || Result.second.getNode()) && in lowerInvokable()
5565 TargetLowering::CallLoweringInfo CLI(DAG); in LowerCallTo() local
5566 CLI.setDebugLoc(getCurSDLoc()).setChain(getRoot()) in LowerCallTo()
5569 std::pair<SDValue,SDValue> Result = lowerInvokable(CLI, LandingPad); in LowerCallTo()
6889 TargetLowering::CallLoweringInfo CLI(DAG); in lowerCallOperands() local
6890 CLI.setDebugLoc(getCurSDLoc()).setChain(getRoot()) in lowerCallOperands()
6894 return lowerInvokable(CLI, LandingPad); in lowerCallOperands()
7136 static AttributeSet getReturnAttrs(TargetLowering::CallLoweringInfo &CLI) { in getReturnAttrs() argument
7138 if (CLI.RetSExt) in getReturnAttrs()
7140 if (CLI.RetZExt) in getReturnAttrs()
7142 if (CLI.IsInReg) in getReturnAttrs()
7145 return AttributeSet::get(CLI.RetTy->getContext(), AttributeSet::ReturnIndex, in getReturnAttrs()
7154 TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const { in LowerCallTo()
7156 CLI.Ins.clear(); in LowerCallTo()
7157 Type *OrigRetTy = CLI.RetTy; in LowerCallTo()
7160 ComputeValueVTs(*this, CLI.RetTy, RetTys, &Offsets); in LowerCallTo()
7163 GetReturnInfo(CLI.RetTy, getReturnAttrs(CLI), Outs, *this); in LowerCallTo()
7166 this->CanLowerReturn(CLI.CallConv, CLI.DAG.getMachineFunction(), in LowerCallTo()
7167 CLI.IsVarArg, Outs, CLI.RetTy->getContext()); in LowerCallTo()
7175 uint64_t TySize = getDataLayout()->getTypeAllocSize(CLI.RetTy); in LowerCallTo()
7176 unsigned Align = getDataLayout()->getPrefTypeAlignment(CLI.RetTy); in LowerCallTo()
7177 MachineFunction &MF = CLI.DAG.getMachineFunction(); in LowerCallTo()
7179 Type *StackSlotPtrType = PointerType::getUnqual(CLI.RetTy); in LowerCallTo()
7181 DemoteStackSlot = CLI.DAG.getFrameIndex(DemoteStackIdx, getPointerTy()); in LowerCallTo()
7193 CLI.getArgs().insert(CLI.getArgs().begin(), Entry); in LowerCallTo()
7194 CLI.RetTy = Type::getVoidTy(CLI.RetTy->getContext()); in LowerCallTo()
7198 CLI.IsTailCall = false; in LowerCallTo()
7202 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT); in LowerCallTo()
7203 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT); in LowerCallTo()
7208 MyFlags.Used = CLI.IsReturnValueUsed; in LowerCallTo()
7209 if (CLI.RetSExt) in LowerCallTo()
7211 if (CLI.RetZExt) in LowerCallTo()
7213 if (CLI.IsInReg) in LowerCallTo()
7215 CLI.Ins.push_back(MyFlags); in LowerCallTo()
7221 CLI.Outs.clear(); in LowerCallTo()
7222 CLI.OutVals.clear(); in LowerCallTo()
7223 ArgListTy &Args = CLI.getArgs(); in LowerCallTo()
7231 FinalType, CLI.CallConv, CLI.IsVarArg); in LowerCallTo()
7235 Type *ArgTy = VT.getTypeForEVT(CLI.RetTy->getContext()); in LowerCallTo()
7279 MVT PartVT = getRegisterType(CLI.RetTy->getContext(), VT); in LowerCallTo()
7280 unsigned NumParts = getNumRegisters(CLI.RetTy->getContext(), VT); in LowerCallTo()
7291 assert(CLI.RetTy == Args[i].Ty && RetTys.size() == NumValues && in LowerCallTo()
7305 CLI.RetSExt == Args[i].isSExt && CLI.RetZExt == Args[i].isZExt)) in LowerCallTo()
7309 getCopyToParts(CLI.DAG, CLI.DL, Op, &Parts[0], NumParts, PartVT, in LowerCallTo()
7310 CLI.CS ? CLI.CS->getInstruction() : nullptr, ExtendKind); in LowerCallTo()
7315 i < CLI.NumFixedArgs, in LowerCallTo()
7322 CLI.Outs.push_back(MyFlags); in LowerCallTo()
7323 CLI.OutVals.push_back(Parts[j]); in LowerCallTo()
7327 CLI.Outs[CLI.Outs.size() - 1].Flags.setInConsecutiveRegsLast(); in LowerCallTo()
7332 CLI.Chain = LowerCall(CLI, InVals); in LowerCallTo()
7335 assert(CLI.Chain.getNode() && CLI.Chain.getValueType() == MVT::Other && in LowerCallTo()
7337 assert((!CLI.IsTailCall || InVals.empty()) && in LowerCallTo()
7339 assert((CLI.IsTailCall || InVals.size() == CLI.Ins.size()) && in LowerCallTo()
7346 if (CLI.IsTailCall) { in LowerCallTo()
7347 CLI.DAG.setRoot(CLI.Chain); in LowerCallTo()
7351 DEBUG(for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) { in LowerCallTo()
7354 assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() && in LowerCallTo()
7374 SDValue Add = CLI.DAG.getNode(ISD::ADD, CLI.DL, PtrVT, DemoteStackSlot, in LowerCallTo()
7375 CLI.DAG.getConstant(Offsets[i], PtrVT)); in LowerCallTo()
7376 SDValue L = CLI.DAG.getLoad( in LowerCallTo()
7377 RetTys[i], CLI.DL, CLI.Chain, Add, in LowerCallTo()
7384 CLI.Chain = CLI.DAG.getNode(ISD::TokenFactor, CLI.DL, MVT::Other, Chains); in LowerCallTo()
7389 if (CLI.RetSExt) in LowerCallTo()
7391 else if (CLI.RetZExt) in LowerCallTo()
7396 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), VT); in LowerCallTo()
7397 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), VT); in LowerCallTo()
7399 ReturnValues.push_back(getCopyFromParts(CLI.DAG, CLI.DL, &InVals[CurReg], in LowerCallTo()
7409 return std::make_pair(SDValue(), CLI.Chain); in LowerCallTo()
7412 SDValue Res = CLI.DAG.getNode(ISD::MERGE_VALUES, CLI.DL, in LowerCallTo()
7413 CLI.DAG.getVTList(RetTys), ReturnValues); in LowerCallTo()
7414 return std::make_pair(Res, CLI.Chain); in LowerCallTo()