Lines Matching defs:spill
53 static cl::opt<bool> DisableHoisting("disable-spill-hoist", cl::Hidden,
54 cl::desc("Disable inline spill hoisting"));
71 // Variables that are valid during spill(), but used by multiple methods.
77 // All registers to spill to StackSlot, including the main register.
91 // True when all reaching defs were reloads: No spill is necessary.
100 // The preferred register to spill.
156 void spill(LiveRangeEdit &);
204 // When spilling a virtual register, we also spill any snippets it is connected
210 // spill slots which can be important in tight loops.
235 // %Reg = COPY %snip / SPILL %snip, fi#
294 DEBUG(dbgs() << "\talso spill snippet " << SnipLI << '\n');
309 // the value has already been spilled, or we may want to hoist the spill from a
320 OS << "spill " << PrintReg(SVI.SpillReg) << ':'
380 // Should this value be propagated as a preferred spill candidate? We don't
381 // propagate values of registers that are about to spill.
409 // Propagate best spill value.
415 // Hoist the spill as far as possible in SpillMBB. This can ease
422 // Hoisting the spill of s to immediately after the def removes the
426 // spill x
669 /// a spill at a better location.
710 DEBUG(dbgs() << "\tno spill needed: " << SVI);
714 // We are going to spill SVI.SpillVNI immediately after its def, so clear out
728 // Insert spill without kill flag immediately after def.
755 // Regs to spill are taken care of.
787 DEBUG(dbgs() << "Redundant spill " << Idx << '\t' << *MI);
977 DEBUG(dbgs() << RegsToSpill.size() << " registers to spill after remat.\n");
1129 /// insertSpill - Insert a spill of NewLI.reg after MI.
1143 /// spillAroundUses - insert spill code around each use of Reg.
1154 // Modify DBG_VALUE now that the value is in a spill slot.
1159 DEBUG(dbgs() << "Modifying debug info due to spill:" << "\t" << *MI);
1196 // Hoist the spill of a sib-reg copy.
1243 // This instruction defines a dead value. We don't need to spill it,
1254 /// spillAll - Spill all registers remaining after rematerialization.
1273 // Spill around uses of all RegsToSpill.
1299 void InlineSpiller::spill(LiveRangeEdit &edit) {
1303 && "Trying to spill a stack slot.");
1314 "Attempting to spill already spilled value.");
1315 assert(DeadDefs.empty() && "Previous spill didn't remove dead defs");