i386.c (x86_cmpxchg, x86_xadd): New.
* config/i386/i386.c (x86_cmpxchg, x86_xadd): New. (ix86_compare_emitted): New. (ix86_expand_compare): Use ix86_compare_emitted if set. (ix86_expand_setcc): Only emit REG_EQUAL if both ix86_compare_op0 and ix86_compare_op0 are set. * config/i386/i386.h (x86_cmpxchg, x86_xadd): Declare. (TARGET_CMPXCHG, TARGET_XADD): New. (ix86_compare_emitted): Declare. * config/i386/i386.md: Include sync.md (UNSPECV_CMPXCHG_1, UNSPECV_CMPXCHG_2): New. (UNSPECV_XCHG, UNSPECV_LOCK): New. * config/i386/sync.md: New file. From-SVN: r98155
Showing
gcc/config/i386/sync.md
0 → 100644
Please
register
or
sign in
to comment