nvptx.md (atomic_compare_and_swap<mode>_1, [...]): Input values can be immediates.
authorNathan Sidwell <nathan@acm.org>
Thu, 19 Nov 2015 14:40:28 +0000 (14:40 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Thu, 19 Nov 2015 14:40:28 +0000 (14:40 +0000)
* config/nvptx/nvptx.md (atomic_compare_and_swap<mode>_1,
atomic_exchange<mode>): Input values can be immediates.

From-SVN: r230606

gcc/ChangeLog
gcc/config/nvptx/nvptx.md

index faff032528b336740a0b175537f70f40ea45b057..1cd26979066c7dc1bd6f4b5989827561deccfdc9 100644 (file)
@@ -1,3 +1,8 @@
+2015-11-19  Nathan Sidwell  <nathanacm.org>
+
+       * config/nvptx/nvptx.md (atomic_compare_and_swap<mode>_1,
+       atomic_exchange<mode>): Input values can be immediates.
+
 2015-11-19  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR lto/61313
index 7930f8dd8e6362925c25859aee0d1d957121895e..aa9f5f630895c564f17a8345b55859a6adf4deae 100644 (file)
   [(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)
           (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;")