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. Thanks, David