On Fri, Nov 22, 2013 at 09:31:18AM +0000, Paulo Matos wrote: > > From: Alan Modra [mailto:amo...@gmail.com] > > On Wed, Nov 20, 2013 at 05:06:13PM +0000, Paulo Matos wrote: > > > I am looking into how rs6000 implements load multiple code > > [snip] > > > > No pseudos are involved for the destination. See the FAIL in > > rs6000.md load_multiple. > > Right, I missed that bit: > if (... > || REGNO (operands[0]) >= 32) > FAIL; > > This will basically never match at expand time then, and will have little, if > any, use before register allocation then. Right?
Right. You'll find store_multiple used in function prologues and load_multiple in epilogues, with -Os if the target supports the string insns. movmemsi is of more interest in code elsewhere, and you'll see a comment there about the register allocator. :) -- Alan Modra Australia Development Lab, IBM