reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1190 assert(Shape.ABI == coro::ABI::Retcon || 1191 Shape.ABI == coro::ABI::RetconOnce); 1201 auto *Id = cast<AnyCoroIdRetconInst>(Shape.CoroBegin->getId()); 1203 if (Shape.RetconLowering.IsFrameInlineInStorage) { 1210 auto Size = DL.getTypeAllocSize(Shape.FrameTy); 1214 RawFramePtr = Shape.emitAlloc(Builder, Builder.getInt64(Size), nullptr); 1216 Builder.CreateBitCast(RawFramePtr, Shape.CoroBegin->getType()); 1227 TrackingVH<Instruction> Handle(Shape.FramePtr); 1228 Shape.CoroBegin->replaceAllUsesWith(RawFramePtr); 1229 Shape.FramePtr = Handle.getValPtr(); 1240 Clones.reserve(Shape.CoroSuspends.size()); 1241 for (size_t i = 0, e = Shape.CoroSuspends.size(); i != e; ++i) { 1242 auto Suspend = cast<CoroSuspendRetconInst>(Shape.CoroSuspends[i]); 1246 createCloneDeclaration(F, Shape, ".resume." + Twine(i), NextF); 1260 Shape.RetconLowering.ReturnBlock = ReturnBB; 1269 Shape.CoroSuspends.size())); 1272 for (auto ResultTy : Shape.getRetconResultTypes()) 1274 Shape.CoroSuspends.size())); 1309 assert(Clones.size() == Shape.CoroSuspends.size()); 1310 for (size_t i = 0, e = Shape.CoroSuspends.size(); i != e; ++i) { 1311 auto Suspend = Shape.CoroSuspends[i]; 1314 CoroCloner(F, "resume." + Twine(i), Shape, Clone, Suspend).create();