Searched refs:CoroBegin (Results 1 – 9 of 9) sorted by relevance
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Coroutines/ |
| H A D | CoroEarly.cpp | 33 void hidePromiseAlloca(CoroIdInst *CoroId, CoroBeginInst *CoroBegin); 161 void Lowerer::hidePromiseAlloca(CoroIdInst *CoroId, CoroBeginInst *CoroBegin) { in hidePromiseAlloca() argument 163 if (!PA || !CoroBegin) in hidePromiseAlloca() 165 Builder.SetInsertPoint(*CoroBegin->getInsertionPointAfterDef()); in hidePromiseAlloca() 169 SmallVector<Value *, 3> Arg{CoroBegin, Alignment, FromPromise}; in hidePromiseAlloca() 192 CoroBeginInst *CoroBegin = nullptr; in lowerEarlyIntrinsics() local 205 if (CoroBegin) in lowerEarlyIntrinsics() 208 CoroBegin = cast<CoroBeginInst>(&I); in lowerEarlyIntrinsics() 269 hidePromiseAlloca(CoroId, CoroBegin); in lowerEarlyIntrinsics()
|
| H A D | SpillUtils.cpp | 168 !DT.dominates(CoroShape.CoroBegin, PI.getEscapingInst())) { in visit() 384 if (!DT.dominates(CoroShape.CoroBegin, &I)) in handleMayWrite() 390 if (DT.dominates(CoroShape.CoroBegin, U)) in usedAfterCoroBegin() 399 if (DT.dominates(CoroShape.CoroBegin, &I) || !usedAfterCoroBegin(I)) in handleAlias() 469 if (isNonSpilledIntrinsic(I) || &I == Shape.CoroBegin) in collectSpillsAndAllocasFromInsts() 538 CoroBeginInst *CoroBegin, in sinkSpillUsesAfterCoroBegin() argument 548 if (Inst->getParent() != CoroBegin->getParent() || in sinkSpillUsesAfterCoroBegin() 549 Dom.dominates(CoroBegin, Inst)) in sinkSpillUsesAfterCoroBegin() 565 if (Dom.dominates(CoroBegin, Inst)) in sinkSpillUsesAfterCoroBegin() 579 Instruction *InsertPt = CoroBegin->getNextNode(); in sinkSpillUsesAfterCoroBegin() [all …]
|
| H A D | Coroutines.cpp | 169 static CoroSaveInst *createCoroSave(CoroBeginInst *CoroBegin, in createCoroSave() argument 174 CallInst::Create(Fn, CoroBegin, "", SuspendInst->getIterator())); in createCoroSave() 247 if (CoroBegin) in analyze() 253 CoroBegin = CB; in analyze() 288 if (!CoroBegin) in analyze() 292 auto Id = CoroBegin->getId(); in analyze() 344 assert(!CoroBegin); in invalidateCoroutine() 384 createCoroSave(Shape.CoroBegin, Suspend); in init() 477 CF->replaceAllUsesWith(CoroBegin); in cleanCoroutine() 489 ? cast<Value>(CoroBegin) in cleanCoroutine()
|
| H A D | CoroSplit.cpp | 1049 Value *OldVFrame = cast<Value>(VMap[Shape.CoroBegin]); in create() 1102 coro::replaceCoroFree(cast<CoroIdInst>(VMap[Shape.CoroBegin->getId()]), in create() 1168 auto *CoroBegin = Shape.CoroBegin; in handleNoSuspendCoroutine() local 1180 CoroBegin->replaceAllUsesWith(Frame); in handleNoSuspendCoroutine() 1182 CoroBegin->replaceAllUsesWith(CoroBegin->getMem()); in handleNoSuspendCoroutine() 1190 CoroBegin->replaceAllUsesWith(PoisonValue::get(CoroBegin->getType())); in handleNoSuspendCoroutine() 1194 CoroBegin->eraseFromParent(); in handleNoSuspendCoroutine() 1195 Shape.CoroBegin = nullptr; in handleNoSuspendCoroutine() 1270 CoroBeginInst *CoroBegin) { in simplifySuspendPoint() argument 1291 if (SubFn->getFrame() != CoroBegin) in simplifySuspendPoint() [all …]
|
| H A D | CoroFrame.cpp | 999 LLVMContext &C = Shape.CoroBegin->getContext(); in insertSpills() 1000 Function *F = Shape.CoroBegin->getFunction(); in insertSpills() 1209 else if (DT.dominates(Shape.CoroBegin, I)) in insertSpills() 1252 AliasPtr, [&](Use &U) { return DT.dominates(Shape.CoroBegin, U); }); in insertSpills() 1265 if (!Inst || DT.dominates(Shape.CoroBegin, Inst)) in insertSpills() 2079 sinkSpillUsesAfterCoroBegin(DT, Shape.CoroBegin, Spills, Allocas); in buildCoroutineFrame() 2084 Shape.FramePtr = Shape.CoroBegin; in buildCoroutineFrame()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Coroutines/ |
| H A D | CoroShape.h | 54 CoroBeginInst *CoroBegin = nullptr; member 66 CoroBegin = nullptr; in clear() 160 return cast<CoroIdInst>(CoroBegin->getId()); in getSwitchCoroId() 165 return cast<AnyCoroIdRetconInst>(CoroBegin->getId()); in getRetconCoroId() 170 return cast<CoroIdAsyncInst>(CoroBegin->getId()); in getAsyncCoroId() 212 auto FTy = CoroBegin->getFunction()->getFunctionType(); in getRetconResultTypes() 278 if (!CoroBegin) { in Shape()
|
| H A D | SpillUtils.h | 47 CoroBeginInst *CoroBegin,
|
| /freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
| H A D | CGCoroutine.cpp | 74 llvm::CallInst *CoroBegin = nullptr; member 255 assert(CGF.CurCoro.Data && CGF.CurCoro.Data->CoroBegin && in emitSuspendExpression() 262 SuspendIntrinsicCallArgs.push_back(CGF.CurCoro.Data->CoroBegin); in emitSuspendExpression() 836 auto *CoroBegin = Builder.CreateCall( in EmitCoroutineBody() local 838 CurCoro.Data->CoroBegin = CoroBegin; in EmitCoroutineBody() 994 if (CurCoro.Data && CurCoro.Data->CoroBegin) { in EmitCoroutineIntrinsic() 995 return RValue::get(CurCoro.Data->CoroBegin); in EmitCoroutineIntrinsic() 1061 CurCoro.Data->CoroBegin = Call; in EmitCoroutineIntrinsic()
|
| /freebsd/contrib/llvm-project/clang/include/clang/Basic/ |
| H A D | Builtins.td | 4591 def CoroBegin : CoroLangBuiltin {
|