Lines Matching refs:SI
320 SelectionDAGBuilder::StatepointLoweringInfo &SI, in lowerCallFromStatepointLoweringInfo() argument
324 Builder.lowerInvokable(SI.CLI, SI.EHPadBB); in lowerCallFromStatepointLoweringInfo()
346 bool HasDef = !SI.CLI.RetTy->isVoidTy(); in lowerCallFromStatepointLoweringInfo()
525 SelectionDAGBuilder::StatepointLoweringInfo &SI, in lowerStatepointMetaArgs() argument
541 SI.StatepointFlags & (uint64_t)StatepointFlags::DeoptLiveIn; in lowerStatepointMetaArgs()
551 dyn_cast_or_null<InvokeInst>(SI.StatepointInstr)) { in lowerStatepointMetaArgs()
553 for (const auto *Relocate : SI.GCRelocates) in lowerStatepointMetaArgs()
597 for (const Value *V : SI.Ptrs) in lowerStatepointMetaArgs()
599 for (const Value *V : SI.Bases) in lowerStatepointMetaArgs()
618 for (const Value *V : SI.DeoptState) { in lowerStatepointMetaArgs()
623 for (const Value *V : SI.Ptrs) { in lowerStatepointMetaArgs()
629 for (const Value *V : SI.Bases) { in lowerStatepointMetaArgs()
638 const int NumVMSArgs = SI.DeoptState.size(); in lowerStatepointMetaArgs()
644 for (const Value *V : SI.DeoptState) { in lowerStatepointMetaArgs()
676 for (Value *V : SI.GCArgs) { in lowerStatepointMetaArgs()
694 pushStackMapConstant(Ops, Builder, SI.Ptrs.size()); in lowerStatepointMetaArgs()
696 for (unsigned i = 0; i < SI.Ptrs.size(); ++i) { in lowerStatepointMetaArgs()
697 SDValue Base = Builder.getValue(SI.Bases[i]); in lowerStatepointMetaArgs()
701 SDValue Derived = Builder.getValue(SI.Ptrs[i]); in lowerStatepointMetaArgs()
709 SelectionDAGBuilder::StatepointLoweringInfo &SI) { in LowerAsSTATEPOINT() argument
717 assert(SI.Bases.size() == SI.Ptrs.size() && "Pointer without base!"); in LowerAsSTATEPOINT()
718 assert((GFI || SI.Bases.empty()) && in LowerAsSTATEPOINT()
721 LLVM_DEBUG(if (SI.StatepointInstr) dbgs() in LowerAsSTATEPOINT()
722 << "Lowering statepoint " << *SI.StatepointInstr << "\n"); in LowerAsSTATEPOINT()
724 for (const auto *Reloc : SI.GCRelocates) in LowerAsSTATEPOINT()
725 if (Reloc->getParent() == SI.StatepointInstr->getParent()) in LowerAsSTATEPOINT()
739 SI, *this); in LowerAsSTATEPOINT()
743 SI.CLI.setChain(getRoot()); in LowerAsSTATEPOINT()
748 std::tie(ReturnVal, CallNode) = lowerCallFromStatepointLoweringInfo(SI, *this); in LowerAsSTATEPOINT()
771 (SI.StatepointFlags & (uint64_t)StatepointFlags::GCTransition) == in LowerAsSTATEPOINT()
780 for (const Value *V : SI.GCTransitionArgs) { in LowerAsSTATEPOINT()
805 Ops.push_back(DAG.getTargetConstant(SI.ID, getCurSDLoc(), MVT::i64)); in LowerAsSTATEPOINT()
807 DAG.getTargetConstant(SI.NumPatchBytes, getCurSDLoc(), MVT::i32)); in LowerAsSTATEPOINT()
829 pushStackMapConstant(Ops, *this, SI.CLI.CallConv); in LowerAsSTATEPOINT()
832 uint64_t Flags = SI.StatepointFlags; in LowerAsSTATEPOINT()
872 for (const auto *Relocate : SI.GCRelocates) { in LowerAsSTATEPOINT()
882 if (SI.StatepointInstr->getParent() == Relocate->getParent()) { in LowerAsSTATEPOINT()
908 const Instruction *StatepointInstr = SI.StatepointInstr; in LowerAsSTATEPOINT()
910 for (const GCRelocateInst *Relocate : SI.GCRelocates) { in LowerAsSTATEPOINT()
955 for (const Value *V : SI.GCTransitionArgs) { in LowerAsSTATEPOINT()
1044 StatepointLoweringInfo SI(DAG); in LowerStatepoint() local
1045 populateCallLoweringInfo(SI.CLI, &I, GCStatepointInst::CallArgsBeginPos, in LowerStatepoint()
1065 SI.GCRelocates.push_back(Relocate); in LowerStatepoint()
1069 SI.Bases.push_back(Relocate->getBasePtr()); in LowerStatepoint()
1070 SI.Ptrs.push_back(Relocate->getDerivedPtr()); in LowerStatepoint()
1084 SI.Bases.push_back(V); in LowerStatepoint()
1085 SI.Ptrs.push_back(V); in LowerStatepoint()
1089 SI.GCArgs = ArrayRef<const Use>(I.gc_args_begin(), I.gc_args_end()); in LowerStatepoint()
1090 SI.StatepointInstr = &I; in LowerStatepoint()
1091 SI.ID = I.getID(); in LowerStatepoint()
1093 SI.DeoptState = ArrayRef<const Use>(I.deopt_begin(), I.deopt_end()); in LowerStatepoint()
1094 SI.GCTransitionArgs = ArrayRef<const Use>(I.gc_transition_args_begin(), in LowerStatepoint()
1097 SI.StatepointFlags = I.getFlags(); in LowerStatepoint()
1098 SI.NumPatchBytes = I.getNumPatchBytes(); in LowerStatepoint()
1099 SI.EHPadBB = EHPadBB; in LowerStatepoint()
1101 SDValue ReturnValue = LowerAsSTATEPOINT(SI); in LowerStatepoint()
1143 StatepointLoweringInfo SI(DAG); in LowerCallSiteWithDeoptBundleImpl() local
1146 SI.CLI, Call, ArgBeginIndex, Call->arg_size(), Callee, in LowerCallSiteWithDeoptBundleImpl()
1150 SI.CLI.IsVarArg = Call->getFunctionType()->isVarArg(); in LowerCallSiteWithDeoptBundleImpl()
1157 SI.ID = SD.StatepointID.value_or(DefaultID); in LowerCallSiteWithDeoptBundleImpl()
1158 SI.NumPatchBytes = SD.NumPatchBytes.value_or(0); in LowerCallSiteWithDeoptBundleImpl()
1160 SI.DeoptState = in LowerCallSiteWithDeoptBundleImpl()
1162 SI.StatepointFlags = static_cast<uint64_t>(StatepointFlags::None); in LowerCallSiteWithDeoptBundleImpl()
1163 SI.EHPadBB = EHPadBB; in LowerCallSiteWithDeoptBundleImpl()
1168 if (SDValue ReturnVal = LowerAsSTATEPOINT(SI)) { in LowerCallSiteWithDeoptBundleImpl()
1184 const Value *SI = CI.getStatepoint(); in visitGCResult() local
1185 assert((isa<GCStatepointInst>(SI) || isa<UndefValue>(SI)) && in visitGCResult()
1187 if (isa<UndefValue>(SI)) in visitGCResult()
1190 if (cast<GCStatepointInst>(SI)->getParent() == CI.getParent()) { in visitGCResult()
1191 setValue(&CI, getValue(SI)); in visitGCResult()
1201 SDValue CopyFromReg = getCopyFromRegs(SI, RetTy); in visitGCResult()