Home
last modified time | relevance | path

Searched refs:CoroBegin (Results 1 – 6 of 6) sorted by relevance

/llvm-project-15.0.7/llvm/lib/Transforms/Coroutines/
H A DCoroInternal.h74 CoroBeginInst *CoroBegin; member
147 return cast<CoroIdInst>(CoroBegin->getId()); in getSwitchCoroId()
153 return cast<AnyCoroIdRetconInst>(CoroBegin->getId()); in getRetconCoroId()
158 return cast<CoroIdAsyncInst>(CoroBegin->getId()); in getAsyncCoroId()
200 auto FTy = CoroBegin->getFunction()->getFunctionType(); in getRetconResultTypes()
H A DCoroutines.cpp150 Shape.CoroBegin = nullptr; in clear()
160 static CoroSaveInst *createCoroSave(CoroBeginInst *CoroBegin, in createCoroSave() argument
165 cast<CoroSaveInst>(CallInst::Create(Fn, CoroBegin, "", SuspendInst)); in createCoroSave()
230 if (CoroBegin) in buildFrom()
236 CoroBegin = CB; in buildFrom()
262 if (!CoroBegin) { in buildFrom()
287 auto Id = CoroBegin->getId(); in buildFrom()
307 createCoroSave(CoroBegin, Suspend); in buildFrom()
422 CF->replaceAllUsesWith(CoroBegin); in buildFrom()
H A DCoroSplit.cpp1389 auto *CoroBegin = Shape.CoroBegin; in handleNoSuspendCoroutine() local
1390 auto *CoroId = CoroBegin->getId(); in handleNoSuspendCoroutine()
1403 CoroBegin->replaceAllUsesWith(VFrame); in handleNoSuspendCoroutine()
1405 CoroBegin->replaceAllUsesWith(CoroBegin->getMem()); in handleNoSuspendCoroutine()
1413 CoroBegin->replaceAllUsesWith(UndefValue::get(CoroBegin->getType())); in handleNoSuspendCoroutine()
1417 CoroBegin->eraseFromParent(); in handleNoSuspendCoroutine()
1511 if (SubFn->getFrame() != CoroBegin) in simplifySuspendPoint()
1685 Shape.CoroBegin->replaceAllUsesWith(FramePtr); in splitAsyncCoroutine()
1797 Shape.CoroBegin->replaceAllUsesWith(RawFramePtr); in splitRetconCoroutine()
1911 if (!Shape.CoroBegin) in splitCoroutine()
[all …]
H A DCoroFrame.cpp1418 const CoroBeginInst &CoroBegin; member
1465 if (!DT.dominates(&CoroBegin, &I)) in handleMayWrite()
1471 if (DT.dominates(&CoroBegin, U)) in usedAfterCoroBegin()
1480 if (DT.dominates(&CoroBegin, &I) || !usedAfterCoroBegin(I)) in handleAlias()
1521 auto *CB = Shape.CoroBegin; in createFramePtr()
1552 auto *CB = Shape.CoroBegin; in insertSpills()
2406 if (Inst->getParent() != CoroBegin->getParent() || in sinkSpillUsesAfterCoroBegin()
2407 Dom.dominates(CoroBegin, Inst)) in sinkSpillUsesAfterCoroBegin()
2418 if (Dom.dominates(CoroBegin, Inst)) in sinkSpillUsesAfterCoroBegin()
2432 Instruction *InsertPt = CoroBegin->getNextNode(); in sinkSpillUsesAfterCoroBegin()
[all …]
/llvm-project-15.0.7/clang/lib/CodeGen/
H A DCGCoroutine.cpp73 llvm::CallInst *CoroBegin = nullptr; member
530 auto *CoroBegin = Builder.CreateCall( in EmitCoroutineBody() local
532 CurCoro.Data->CoroBegin = CoroBegin; in EmitCoroutineBody()
671 if (CurCoro.Data && CurCoro.Data->CoroBegin) { in EmitCoroutineIntrinsic()
672 return RValue::get(CurCoro.Data->CoroBegin); in EmitCoroutineIntrinsic()
715 CurCoro.Data->CoroBegin = Call; in EmitCoroutineIntrinsic()
/llvm-project-15.0.7/llvm/test/Transforms/Coroutines/
H A Dcoro-spill-defs-before-corobegin.ll1 ; Verifies that phi and invoke definitions before CoroBegin are spilled properly.