Lines Matching full:spill
95 // Integer spill area is handled with "pop".
151 // Determine the sizes of each callee-save spill areas and record which frame
152 // belongs to which callee-save spill areas.
217 // For iOS, FP is R7, which has now been stored in spill area 1.
219 // into spill area 1, including the FP in R11. In either case, it is
234 // Determine starting offsets of spill areas.
385 // Move SP to start of FP callee save spill area.
541 // since it's available. This is handy for the emergency spill slot, in
727 /// Emit aligned spill instructions for NumAlignedDPRCS2Regs D-registers
729 /// pointer pointing to the d8 spill slot.
741 // Mark the D-register spill slots as properly aligned. Since MFI computes
763 // Move the stack pointer to the d8 spill slot, and align it at the same
799 // Now spill NumAlignedDPRCS2Regs registers starting from d8.
854 // The last spill instruction inserted should kill the scratch register r4.
867 assert(MI->mayStore() && "Expecting spill instruction");
873 assert(MI->mayStore() && "Expecting spill instruction");
876 assert(MI->mayStore() && "Expecting spill instruction");
907 // Materialize the address of the d8 spill slot into the scratch register r4.
990 // The code above does not insert spill code for the aligned DPRCS2 registers.
1096 // In functions that realign the stack, it can be an advantage to spill the
1105 // Naked functions don't spill callee-saved registers.
1124 // We always spill contiguous d-registers starting from d8. Count how many
1139 // Spill the first NumSpills D-registers after realigning the stack.
1149 // This tells PEI to spill the FP as if it is any other callee-save register
1168 // Spill R4 if Thumb2 function requires stack realignment - it will be used as
1169 // scratch register. Also spill R4 if Thumb2 function has varsized objects,
1178 // Spill LR if Thumb1 function uses variable length argument lists.
1182 // Spill R4 if Thumb1 epilogue has to restore SP from FP. We don't know
1184 // enough. If there anything changes it, it'll be a spill, which implies
1193 // See if we can spill vector registers to aligned stack.
1196 // Spill the BasePtr if it's used.
1200 // Don't spill FP if the frame can be eliminated. This is determined
1268 // offset, make sure a register (or a spill slot) is available for the
1274 // that case to want a spill slot (or register) as well. Similarly, if
1294 // Spill LR as well so we can fold BX_RET to the registers restore (LDM).
1310 // of GPRs, spill one extra callee save GPR so we won't have to pad between
1317 // Don't spill high register if the function is thumb1
1335 // to materialize a stack offset. If so, either spill one additional
1336 // callee-saved register or reserve a special spill slot to facilitate
1337 // register scavenging. Thumb1 needs a spill slot for stack pointer
1340 // If any non-reserved CS register isn't spilled, just spill one or two
1370 // note: Thumb1 functions spill to R12, not the stack. Reserve a slot