R600/SI: Add global atomicrmw max/umax
[oota-llvm.git] / lib / Target / R600 / SIInstructions.td
index bc1f8392763dec7e6d8e9ef299e8da823b1c5085..4cc1a54f483322d01e9cea26d506267109f521a6 100644 (file)
@@ -906,8 +906,12 @@ defm BUFFER_ATOMIC_SUB : MUBUF_Atomic <
 //def BUFFER_ATOMIC_RSUB : MUBUF_ <0x00000034, "BUFFER_ATOMIC_RSUB", []>;
 //def BUFFER_ATOMIC_SMIN : MUBUF_ <0x00000035, "BUFFER_ATOMIC_SMIN", []>;
 //def BUFFER_ATOMIC_UMIN : MUBUF_ <0x00000036, "BUFFER_ATOMIC_UMIN", []>;
-//def BUFFER_ATOMIC_SMAX : MUBUF_ <0x00000037, "BUFFER_ATOMIC_SMAX", []>;
-//def BUFFER_ATOMIC_UMAX : MUBUF_ <0x00000038, "BUFFER_ATOMIC_UMAX", []>;
+defm BUFFER_ATOMIC_SMAX : MUBUF_Atomic <
+  0x00000037, "BUFFER_ATOMIC_SMAX", VReg_32, i32, atomic_max_global
+>;
+defm BUFFER_ATOMIC_UMAX : MUBUF_Atomic <
+  0x00000038, "BUFFER_ATOMIC_UMAX", VReg_32, i32, atomic_umax_global
+>;
 defm BUFFER_ATOMIC_AND : MUBUF_Atomic <
   0x00000039, "BUFFER_ATOMIC_AND", VReg_32, i32, atomic_and_global
 >;