Home | History | Annotate | Download | only in Coroutines

Lines Matching defs:Spills

262 // We build up the list of spills for every case where a use is separated
280 // assigned. This works out fine as the users of Spills capture the info about
299 static void dump(StringRef Title, SpillInfo const &Spills) {
302 for (auto const &E : Spills) {
370 // ... spills ...
373 SpillInfo &Spills) {
397 for (auto &S : Spills) {
472 static Instruction *insertSpills(SpillInfo &Spills, coro::Shape &Shape) {
489 // all the spills.
509 for (auto const &E : Spills) {
763 SpillInfo const &Spills) {
768 for (auto const &E : Spills) {
808 static void moveSpillUsesAfterCoroBegin(Function &F, SpillInfo const &Spills,
815 for (auto const &E : Spills) {
895 SpillInfo Spills;
903 Spills.emplace_back(&I, U);
905 if (Spills.empty())
909 LLVM_DEBUG(dump("Materializations", Spills));
910 rewriteMaterializableInstructions(Builder, Spills);
911 Spills.clear();
914 // Collect the spills for arguments and other not-materializable values.
918 Spills.emplace_back(&A, U);
936 Spills.emplace_back(&I, U);
939 LLVM_DEBUG(dump("Spills", Spills));
940 moveSpillUsesAfterCoroBegin(F, Spills, Shape.CoroBegin);
941 Shape.FrameTy = buildFrameType(F, Shape, Spills);
942 Shape.FramePtr = insertSpills(Spills, Shape);