diff --git a/gcc/ChangeLog b/gcc/ChangeLog index faff032528b..1cd26979066 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-11-19 Nathan Sidwell + + * config/nvptx/nvptx.md (atomic_compare_and_swap_1, + atomic_exchange): Input values can be immediates. + 2015-11-19 Eric Botcazou PR lto/61313 diff --git a/gcc/config/nvptx/nvptx.md b/gcc/config/nvptx/nvptx.md index 7930f8dd8e6..aa9f5f63089 100644 --- a/gcc/config/nvptx/nvptx.md +++ b/gcc/config/nvptx/nvptx.md @@ -1494,8 +1494,8 @@ [(set (match_operand:SDIM 0 "nvptx_register_operand" "=R") (unspec_volatile:SDIM [(match_operand:SDIM 1 "memory_operand" "+m") - (match_operand:SDIM 2 "nvptx_register_operand" "R") - (match_operand:SDIM 3 "nvptx_register_operand" "R") + (match_operand:SDIM 2 "nvptx_nonmemory_operand" "Ri") + (match_operand:SDIM 3 "nvptx_nonmemory_operand" "Ri") (match_operand:SI 4 "const_int_operand")] UNSPECV_CAS)) (set (match_dup 1) @@ -1510,7 +1510,7 @@ (match_operand:SI 3 "const_int_operand")] ;; model UNSPECV_XCHG)) (set (match_dup 1) - (match_operand:SDIM 2 "nvptx_register_operand" "R"))] ;; input + (match_operand:SDIM 2 "nvptx_nonmemory_operand" "Ri"))] ;; input "" "%.\\tatom%A1.exch.b%T0\\t%0, %1, %2;")