Lines Matching refs:SI
320 SelectionDAGBuilder::StatepointLoweringInfo &SI, in lowerCallFromStatepointLoweringInfo() argument
324 Builder.lowerInvokable(SI.CLI, SI.EHPadBB); in lowerCallFromStatepointLoweringInfo()
343 bool HasDef = !SI.CLI.RetTy->isVoidTy(); in lowerCallFromStatepointLoweringInfo()
522 SelectionDAGBuilder::StatepointLoweringInfo &SI, in lowerStatepointMetaArgs() argument
538 SI.StatepointFlags & (uint64_t)StatepointFlags::DeoptLiveIn; in lowerStatepointMetaArgs()
548 dyn_cast_or_null<InvokeInst>(SI.StatepointInstr)) { in lowerStatepointMetaArgs()
550 for (const auto *Relocate : SI.GCRelocates) in lowerStatepointMetaArgs()
594 for (const Value *V : SI.Ptrs) in lowerStatepointMetaArgs()
596 for (const Value *V : SI.Bases) in lowerStatepointMetaArgs()
615 for (const Value *V : SI.DeoptState) { in lowerStatepointMetaArgs()
620 for (const Value *V : SI.Ptrs) { in lowerStatepointMetaArgs()
626 for (const Value *V : SI.Bases) { in lowerStatepointMetaArgs()
635 const int NumVMSArgs = SI.DeoptState.size(); in lowerStatepointMetaArgs()
641 for (const Value *V : SI.DeoptState) { in lowerStatepointMetaArgs()
673 for (Value *V : SI.GCArgs) { in lowerStatepointMetaArgs()
691 pushStackMapConstant(Ops, Builder, SI.Ptrs.size()); in lowerStatepointMetaArgs()
693 for (unsigned i = 0; i < SI.Ptrs.size(); ++i) { in lowerStatepointMetaArgs()
694 SDValue Base = Builder.getValue(SI.Bases[i]); in lowerStatepointMetaArgs()
698 SDValue Derived = Builder.getValue(SI.Ptrs[i]); in lowerStatepointMetaArgs()
706 SelectionDAGBuilder::StatepointLoweringInfo &SI) { in LowerAsSTATEPOINT() argument
714 assert(SI.Bases.size() == SI.Ptrs.size() && "Pointer without base!"); in LowerAsSTATEPOINT()
715 assert((GFI || SI.Bases.empty()) && in LowerAsSTATEPOINT()
718 LLVM_DEBUG(if (SI.StatepointInstr) dbgs() in LowerAsSTATEPOINT()
719 << "Lowering statepoint " << *SI.StatepointInstr << "\n"); in LowerAsSTATEPOINT()
721 for (const auto *Reloc : SI.GCRelocates) in LowerAsSTATEPOINT()
722 if (Reloc->getParent() == SI.StatepointInstr->getParent()) in LowerAsSTATEPOINT()
736 SI, *this); in LowerAsSTATEPOINT()
740 SI.CLI.setChain(getRoot()); in LowerAsSTATEPOINT()
745 std::tie(ReturnVal, CallNode) = lowerCallFromStatepointLoweringInfo(SI, *this); in LowerAsSTATEPOINT()
768 (SI.StatepointFlags & (uint64_t)StatepointFlags::GCTransition) == in LowerAsSTATEPOINT()
777 for (const Value *V : SI.GCTransitionArgs) { in LowerAsSTATEPOINT()
802 Ops.push_back(DAG.getTargetConstant(SI.ID, getCurSDLoc(), MVT::i64)); in LowerAsSTATEPOINT()
804 DAG.getTargetConstant(SI.NumPatchBytes, getCurSDLoc(), MVT::i32)); in LowerAsSTATEPOINT()
826 pushStackMapConstant(Ops, *this, SI.CLI.CallConv); in LowerAsSTATEPOINT()
829 uint64_t Flags = SI.StatepointFlags; in LowerAsSTATEPOINT()
869 for (const auto *Relocate : SI.GCRelocates) { in LowerAsSTATEPOINT()
879 if (SI.StatepointInstr->getParent() == Relocate->getParent()) { in LowerAsSTATEPOINT()
905 const Instruction *StatepointInstr = SI.StatepointInstr; in LowerAsSTATEPOINT()
907 for (const GCRelocateInst *Relocate : SI.GCRelocates) { in LowerAsSTATEPOINT()
952 for (const Value *V : SI.GCTransitionArgs) { in LowerAsSTATEPOINT()
1041 StatepointLoweringInfo SI(DAG); in LowerStatepoint() local
1042 populateCallLoweringInfo(SI.CLI, &I, GCStatepointInst::CallArgsBeginPos, in LowerStatepoint()
1062 SI.GCRelocates.push_back(Relocate); in LowerStatepoint()
1066 SI.Bases.push_back(Relocate->getBasePtr()); in LowerStatepoint()
1067 SI.Ptrs.push_back(Relocate->getDerivedPtr()); in LowerStatepoint()
1081 SI.Bases.push_back(V); in LowerStatepoint()
1082 SI.Ptrs.push_back(V); in LowerStatepoint()
1086 SI.GCArgs = ArrayRef<const Use>(I.gc_args_begin(), I.gc_args_end()); in LowerStatepoint()
1087 SI.StatepointInstr = &I; in LowerStatepoint()
1088 SI.ID = I.getID(); in LowerStatepoint()
1090 SI.DeoptState = ArrayRef<const Use>(I.deopt_begin(), I.deopt_end()); in LowerStatepoint()
1091 SI.GCTransitionArgs = ArrayRef<const Use>(I.gc_transition_args_begin(), in LowerStatepoint()
1094 SI.StatepointFlags = I.getFlags(); in LowerStatepoint()
1095 SI.NumPatchBytes = I.getNumPatchBytes(); in LowerStatepoint()
1096 SI.EHPadBB = EHPadBB; in LowerStatepoint()
1098 SDValue ReturnValue = LowerAsSTATEPOINT(SI); in LowerStatepoint()
1140 StatepointLoweringInfo SI(DAG); in LowerCallSiteWithDeoptBundleImpl() local
1143 SI.CLI, Call, ArgBeginIndex, Call->arg_size(), Callee, in LowerCallSiteWithDeoptBundleImpl()
1147 SI.CLI.IsVarArg = Call->getFunctionType()->isVarArg(); in LowerCallSiteWithDeoptBundleImpl()
1154 SI.ID = SD.StatepointID.value_or(DefaultID); in LowerCallSiteWithDeoptBundleImpl()
1155 SI.NumPatchBytes = SD.NumPatchBytes.value_or(0); in LowerCallSiteWithDeoptBundleImpl()
1157 SI.DeoptState = in LowerCallSiteWithDeoptBundleImpl()
1159 SI.StatepointFlags = static_cast<uint64_t>(StatepointFlags::None); in LowerCallSiteWithDeoptBundleImpl()
1160 SI.EHPadBB = EHPadBB; in LowerCallSiteWithDeoptBundleImpl()
1165 if (SDValue ReturnVal = LowerAsSTATEPOINT(SI)) { in LowerCallSiteWithDeoptBundleImpl()
1181 const Value *SI = CI.getStatepoint(); in visitGCResult() local
1182 assert((isa<GCStatepointInst>(SI) || isa<UndefValue>(SI)) && in visitGCResult()
1184 if (isa<UndefValue>(SI)) in visitGCResult()
1187 if (cast<GCStatepointInst>(SI)->getParent() == CI.getParent()) { in visitGCResult()
1188 setValue(&CI, getValue(SI)); in visitGCResult()
1198 SDValue CopyFromReg = getCopyFromRegs(SI, RetTy); in visitGCResult()