"Roger Sayle" <ro...@nextmovesoftware.com> writes: > Hi Richard, > >> On Thu, Jul 09, 2020 at 09:17:46AM +0100, Richard Sandiford wrote: >>> > + res = force_reg (mode, res); >>> >>> In general, this can be dangerous performance-wise on targets where >>> subregs are free. If the move survives to the register allocators, >>> it increases the risk that the move will become a machine insn. >>> (The RA will prefer to tie the registers, but that isn't guaranteed.) > > I believe I can use exactly the same test case, but compiled on ARM, to > demonstrate that placing reused intermediate values in pseudo registers > instead of SUBREGs is potentially preferable and at least no worse > (certainly not "dangerous").
OK. Sorry for the noise then, please go ahead with the patch. Thanks, Richard