• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/

Lines Matching defs:CLI

2581     TargetLowering::CallLoweringInfo CLI(DAG);
2582 CLI.setDebugLoc(getCurSDLoc())
2587 std::pair<SDValue, SDValue> Result = TLI.LowerCallTo(CLI);
6525 TargetLowering::CallLoweringInfo CLI(DAG);
6526 CLI.setDebugLoc(sdl).setChain(getRoot()).setLibCallee(
6532 std::pair<SDValue, SDValue> Result = TLI.LowerCallTo(CLI);
7046 SelectionDAGBuilder::lowerInvokable(TargetLowering::CallLoweringInfo &CLI,
7073 CLI.setChain(getRoot());
7076 std::pair<SDValue, SDValue> Result = TLI.LowerCallTo(CLI);
7078 assert((CLI.IsTailCall || Result.second.getNode()) &&
7106 assert(CLI.CB);
7108 EHInfo->addIPToStateRange(cast<InvokeInst>(CLI.CB), BeginLabel, EndLabel);
7199 TargetLowering::CallLoweringInfo CLI(DAG);
7200 CLI.setDebugLoc(getCurSDLoc())
7207 std::pair<SDValue, SDValue> Result = lowerInvokable(CLI, EHPadBB);
7214 // The last element of CLI.InVals has the SDValue for swifterror return.
7219 SDValue Src = CLI.InVals.back();
7222 SDValue CopyNode = CLI.DAG.getCopyToReg(Result.second, CLI.DL, VReg, Src);
8662 /// Populate a CallLowerinInfo (into \p CLI) based on the properties of
8669 TargetLowering::CallLoweringInfo &CLI, const CallBase *Call,
8690 CLI.setDebugLoc(getCurSDLoc())
8838 TargetLowering::CallLoweringInfo CLI(DAG);
8839 populateCallLoweringInfo(CLI, &CB, NumMetaOpers, NumCallArgs, Callee,
8841 std::pair<SDValue, SDValue> Result = lowerInvokable(CLI, EHPadBB);
9019 static AttributeList getReturnAttrs(TargetLowering::CallLoweringInfo &CLI) {
9021 if (CLI.RetSExt)
9023 if (CLI.RetZExt)
9025 if (CLI.IsInReg)
9028 return AttributeList::get(CLI.RetTy->getContext(), AttributeList::ReturnIndex,
9037 TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
9039 CLI.Ins.clear();
9040 Type *OrigRetTy = CLI.RetTy;
9043 auto &DL = CLI.DAG.getDataLayout();
9044 ComputeValueVTs(*this, DL, CLI.RetTy, RetTys, &Offsets);
9046 if (CLI.IsPostTypeLegalization) {
9056 MVT RegisterVT = getRegisterType(CLI.RetTy->getContext(), RetVT);
9057 unsigned NumRegs = getNumRegisters(CLI.RetTy->getContext(), RetVT);
9066 GetReturnInfo(CLI.CallConv, CLI.RetTy, getReturnAttrs(CLI), Outs, *this, DL);
9069 this->CanLowerReturn(CLI.CallConv, CLI.DAG.getMachineFunction(),
9070 CLI.IsVarArg, Outs, CLI.RetTy->getContext());
9078 uint64_t TySize = DL.getTypeAllocSize(CLI.RetTy);
9079 Align Alignment = DL.getPrefTypeAlign(CLI.RetTy);
9080 MachineFunction &MF = CLI.DAG.getMachineFunction();
9083 Type *StackSlotPtrType = PointerType::get(CLI.RetTy,
9086 DemoteStackSlot = CLI.DAG.getFrameIndex(DemoteStackIdx, getFrameIndexTy(DL));
9101 CLI.getArgs().insert(CLI.getArgs().begin(), Entry);
9102 CLI.NumFixedArgs += 1;
9103 CLI.RetTy = Type::getVoidTy(CLI.RetTy->getContext());
9107 CLI.IsTailCall = false;
9110 CLI.RetTy, CLI.CallConv, CLI.IsVarArg);
9119 MVT RegisterVT = getRegisterTypeForCallingConv(CLI.RetTy->getContext(),
9120 CLI.CallConv, VT);
9121 unsigned NumRegs = getNumRegistersForCallingConv(CLI.RetTy->getContext(),
9122 CLI.CallConv, VT);
9128 MyFlags.Used = CLI.IsReturnValueUsed;
9129 if (CLI.RetTy->isPointerTy()) {
9132 cast<PointerType>(CLI.RetTy)->getAddressSpace());
9134 if (CLI.RetSExt)
9136 if (CLI.RetZExt)
9138 if (CLI.IsInReg)
9140 CLI.Ins.push_back(MyFlags);
9145 // We push in swifterror return as the last element of CLI.Ins.
9146 ArgListTy &Args = CLI.getArgs();
9154 CLI.Ins.push_back(MyFlags);
9160 CLI.Outs.clear();
9161 CLI.OutVals.clear();
9165 // FIXME: Split arguments if CLI.IsPostTypeLegalization
9170 FinalType, CLI.CallConv, CLI.IsVarArg);
9174 Type *ArgTy = VT.getTypeForEVT(CLI.RetTy->getContext());
9196 if (CLI.CallConv == CallingConv::X86_VectorCall &&
9256 MVT PartVT = getRegisterTypeForCallingConv(CLI.RetTy->getContext(),
9257 CLI.CallConv, VT);
9258 unsigned NumParts = getNumRegistersForCallingConv(CLI.RetTy->getContext(),
9259 CLI.CallConv, VT);
9272 assert((CLI.RetTy == Args[i].Ty ||
9273 (CLI.RetTy->isPointerTy() && Args[i].Ty->isPointerTy() &&
9274 CLI.RetTy->getPointerAddressSpace() ==
9288 (ExtendKind != ISD::ANY_EXTEND && CLI.RetSExt == Args[i].IsSExt &&
9289 CLI.RetZExt == Args[i].IsZExt))
9293 getCopyToParts(CLI.DAG, CLI.DL, Op, &Parts[0], NumParts, PartVT, CLI.CB,
9294 CLI.CallConv, ExtendKind);
9301 i < CLI.NumFixedArgs, i,
9311 CLI.Outs.push_back(MyFlags);
9312 CLI.OutVals.push_back(Parts[j]);
9316 CLI.Outs[CLI.Outs.size() - 1].Flags.setInConsecutiveRegsLast();
9321 CLI.Chain = LowerCall(CLI, InVals);
9323 // Update CLI.InVals to use outside of this function.
9324 CLI.InVals = InVals;
9327 assert(CLI.Chain.getNode() && CLI.Chain.getValueType() == MVT::Other &&
9329 assert((!CLI.IsTailCall || InVals.empty()) &&
9331 assert((CLI.IsTailCall || InVals.size() == CLI.Ins.size()) &&
9338 if (CLI.IsTailCall) {
9339 CLI.DAG.setRoot(CLI.Chain);
9344 for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) {
9346 assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() &&
9371 MachineFunction &MF = CLI.DAG.getMachineFunction();
9374 SDValue Add = CLI.DAG.getNode(ISD::ADD, CLI.DL, PtrVT, DemoteStackSlot,
9375 CLI.DAG.getConstant(Offsets[i], CLI.DL,
9377 SDValue L = CLI.DAG.getLoad(
9378 RetTys[i], CLI.DL, CLI.Chain, Add,
9379 MachinePointerInfo::getFixedStack(CLI.DAG.getMachineFunction(),
9386 CLI.Chain = CLI.DAG.getNode(ISD::TokenFactor, CLI.DL, MVT::Other, Chains);
9391 if (CLI.RetSExt)
9393 else if (CLI.RetZExt)
9398 MVT RegisterVT = getRegisterTypeForCallingConv(CLI.RetTy->getContext(),
9399 CLI.CallConv, VT);
9400 unsigned NumRegs = getNumRegistersForCallingConv(CLI.RetTy->getContext(),
9401 CLI.CallConv, VT);
9403 ReturnValues.push_back(getCopyFromParts(CLI.DAG, CLI.DL, &InVals[CurReg],
9405 CLI.CallConv, AssertOp));
9413 return std::make_pair(SDValue(), CLI.Chain);
9416 SDValue Res = CLI.DAG.getNode(ISD::MERGE_VALUES, CLI.DL,
9417 CLI.DAG.getVTList(RetTys), ReturnValues);
9418 return std::make_pair(Res, CLI.Chain);