On Thu, Feb 04, 2016 at 02:42:38PM +0100, Jakub Jelinek wrote:
> On Thu, Feb 04, 2016 at 08:40:22AM -0500, David Edelsohn wrote:
> > On Thu, Feb 4, 2016 at 6:33 AM, Alan Modra <amo...@gmail.com> wrote:
> > > On Wed, Feb 03, 2016 at 05:34:17PM -0500, David Edelsohn wrote:
> > >> On Wed, Feb 3, 2016 at 5:28 PM, Jakub Jelinek <ja...@redhat.com> wrote:
> > >> > Hi!
> > >> >
> > >> > rs6000_expand_atomic_compare_and_swap uses oldval directly in
> > >> > a comparison instruction, but oldval might be a CONST_INT not suitable
> > >> > for the instruction (such as in the testcase below in SImode comparison
> > >> > 0x8000 constant).  We need to force those into register if they don't
> > >> > satisfy the predicate.
> > >> >
> > >> > Bootstrapped/regtested on powerpc64{,le}-linux, ok for trunk?
> > >> >
> > >> > 2016-02-03  Jakub Jelinek  <ja...@redhat.com>
> > >> >
> > >> >         PR target/69644
> > >> >         * config/rs6000/rs6000.c 
> > >> > (rs6000_expand_atomic_compare_and_swap):
> > >> >         Force oldval into register if it does not satisfy 
> > >> > reg_or_short_operand
> > >> >         predicate.  Fix up formatting.
> > >> >
> > >> >         * gcc.dg/pr69644.c: New test.
> > >>
> > >> Okay.
> > >
> > > This needs to go on gcc-5 and gcc-4.9 branches too, where it fixes
> > > pr69146.  pr69146 and pr69644 are dups.  OK to apply to the branches?
> > 
> > Okay with me, but coordinate with Jakub.
> 
> Ok with me to, just don't have spare cycles now to bootstrap/regtest it.
> So, Alan, if you could do that, it would be greatly appreciated.

I've regression tested powerpc64le-linux gcc-5 and gcc-4.9, all langs.

-- 
Alan Modra
Australia Development Lab, IBM

Reply via email to