[PATCH] Allow the register scavenger to spill multiple registers

Hal Finkel hfinkel at anl.gov
Fri Mar 22 16:33:59 PDT 2013



----- Original Message -----
> From: "Jakob Stoklund Olesen" <stoklund at 2pi.dk>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Commit Messages and Patches for LLVM" <llvm-commits at cs.uiuc.edu>
> Sent: Friday, March 22, 2013 5:59:09 PM
> Subject: Re: [PATCH] Allow the register scavenger to spill multiple registers
> 
> 
> On Mar 22, 2013, at 3:25 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> 
> > Jakob, et al.,
> > 
> > Please review the attached patch which lets the register scavenger
> > make use of multiple spill slots in order to guarantee that it
> > will be able to provide multiple registers simultaneously. I
> > intend to use this capability in the PowerPC backend to handle
> > spills where we need two registers (one for indexing and one for
> > transfer) without keeping an extra reserved register.
> 
> Hi Hal,
> 
> This whole thing generally looks good, but there are a couple
> stylistic issues.
> 
> +    /// If none zero, the specific register is currently being
> 
> non-zero
> 
> +  void getScavengingFrameIndices(SmallVector<int, 2> &A) const {
> 
> Use a SmallVectorImpl for references to let the caller decide the
> small size.
> 
> +    SmallVector<int, 2> SFIs;

Committed r177774 with these changes, thanks!

 -Hal

> 
> /jakob
> 
> 



More information about the llvm-commits mailing list