This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r144825 - in /trunk/gcc: ChangeLog config/i386/...
- From: jakub at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Thu, 12 Mar 2009 20:45:44 -0000
- Subject: r144825 - in /trunk/gcc: ChangeLog config/i386/...
Author: jakub
Date: Thu Mar 12 20:45:39 2009
New Revision: 144825
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=144825
Log:
PR target/39431
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): New
predicate.
* config/i386/sync.md (sync_compare_and_swap<mode>,
sync_compare_and_swap_cc<mode>): For DImode with -m32 -fpic check
if operands[1] is cmpxchg8b_pic_memory_operand, if not force address
into a register.
(sync_double_compare_and_swapdi_pic,
sync_double_compare_and_swap_ccdi_pic): Require operand 1 to be
cmpxchg8b_pic_memory_operand instead of just memory_operand.
* gcc.target/i386/pr39431.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/i386/pr39431.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/predicates.md
trunk/gcc/config/i386/sync.md
trunk/gcc/testsuite/ChangeLog