Re: [RFC] Further LRA subreg handling issues

2017-01-26 Thread Eric Botcazou
> This part suggests to me that LRA should never be reloading the > paradoxical subreg meaning the whole SLOW_UNALIGNED_ACCESS checking code in > simplify_operand_subreg could be removed unconditionally. Why? For a little-endian target which is neither strict-alignment nor WORD_REGISTER_OPERATIO

RE: [RFC] Further LRA subreg handling issues

2017-01-26 Thread Matthew Fortune
Eric Botcazou writes: > > However in lra-constraints.c:simplify_operand_subreg it quite happily > > performs a reload using the outer mode in this case and only drops > > down to the inner mode if the outer mode reload would be slower than > the inner. > > > > Presumably this is safe for non WORD_

Re: [RFC] Further LRA subreg handling issues

2017-01-26 Thread David Malcolm
On Thu, 2017-01-26 at 13:00 +, Matthew Fortune wrote: > Matthew Fortune writes: > ... > > Pseudo 300 is assigned to memory and then LRA produces a simple > > DImode > > load from the assigned stack slot. The only instruction to set > > pseudo > > 300 is: > > > > (insn 247 212 389 3 (set (reg:

Re: [RFC] Further LRA subreg handling issues

2017-01-26 Thread Eric Botcazou
> However in lra-constraints.c:simplify_operand_subreg it quite happily > performs a reload using the outer mode in this case and only drops down to > the inner mode if the outer mode reload would be slower than the inner. > > Presumably this is safe for non WORD_REGISTER_OPERATIONS targets as the

RE: [RFC] Further LRA subreg handling issues

2017-01-26 Thread Matthew Fortune
Matthew Fortune writes: ... > Pseudo 300 is assigned to memory and then LRA produces a simple DImode > load from the assigned stack slot. The only instruction to set pseudo > 300 is: > > (insn 247 212 389 3 (set (reg:SI 300) > (ne:SI (subreg/s/u:SI (reg/v:DI 231 [ taken ]) 0) >

RE: [RFC] Further LRA subreg handling issues

2017-01-25 Thread Matthew Fortune
Eric Botcazou writes: > > I'll run testing for at least x86_64, MIPS and another > > WORD_REGISTER_OPERATIONS target and try to get this committed in the > > next couple of days so it can get into everyone's testing well before > release. > > No issues found on SPARC. Thanks Eric. I'm still boo

Re: [RFC] Further LRA subreg handling issues

2017-01-20 Thread Eric Botcazou
> I'll run testing for at least x86_64, MIPS and another > WORD_REGISTER_OPERATIONS target and try to get this committed in the next > couple of days so it can get into everyone's testing well before release. No issues found on SPARC. -- Eric Botcazou

Re: [RFC] Further LRA subreg handling issues

2017-01-19 Thread Eric Botcazou
> I'll run testing for at least x86_64, MIPS and another > WORD_REGISTER_OPERATIONS target and try to get this committed in the next > couple of days so it can get into everyone's testing well before release. I'm going to give it a try on SPARC. -- Eric Botcazou

RE: [RFC] Further LRA subreg handling issues

2017-01-19 Thread Matthew Fortune
Vladimir Makarov writes: > On 01/16/2017 10:47 AM, Matthew Fortune wrote: > > Hi Vladimir, > > > > I'm working on PR target/78660 which is looking like a latent LRA bug. > > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78660 > > > > I believe the problem is in the same area as a bug was fixed

Re: [RFC] Further LRA subreg handling issues

2017-01-19 Thread Vladimir Makarov
On 01/16/2017 10:47 AM, Matthew Fortune wrote: Hi Vladimir, I'm working on PR target/78660 which is looking like a latent LRA bug. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78660 I believe the problem is in the same area as a bug was fixed in 2015: https://gcc.gnu.org/ml/gcc-patches/2015