builtins.c (expand_builtin_atomic_compare_exchange): Pass old value operand as MEM...
authorUlrich Weigand <uweigand@de.ibm.com>
Wed, 8 Aug 2012 18:03:37 +0000 (18:03 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Wed, 8 Aug 2012 18:03:37 +0000 (18:03 +0000)
commit215770ada8310953eb90e2369b796263dcf5f770
tree45326924f3c22152fe766736893f863430b07a20
parent07c5a154bb3d23948235bd9481fecca779b1f62d
builtins.c (expand_builtin_atomic_compare_exchange): Pass old value operand as MEM to expand_atomic_compare_and_swap.

* builtins.c (expand_builtin_atomic_compare_exchange): Pass old
value operand as MEM to expand_atomic_compare_and_swap.

* config/s390/s390.md ("atomic_compare_and_swap<mode>"): Accept
nonimmediate_operand for old value; generate load and store if
needed.
* config/s390/s390.c (s390_expand_cs_hqi): Accept any operand
as vtarget.

From-SVN: r190236
gcc/ChangeLog
gcc/builtins.c
gcc/config/s390/s390.c
gcc/config/s390/s390.md