[llvm] r213586 - Add some tests for NVPTX lowering of cmpxchg

Eli Bendersky eliben at google.com
Mon Jul 21 15:54:44 PDT 2014


Author: eliben
Date: Mon Jul 21 17:54:44 2014
New Revision: 213586

URL: http://llvm.org/viewvc/llvm-project?rev=213586&view=rev
Log:
Add some tests for NVPTX lowering of cmpxchg

Modified:
    llvm/trunk/test/CodeGen/NVPTX/atomics.ll

Modified: llvm/trunk/test/CodeGen/NVPTX/atomics.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/atomics.ll?rev=213586&r1=213585&r2=213586&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/NVPTX/atomics.ll (original)
+++ llvm/trunk/test/CodeGen/NVPTX/atomics.ll Mon Jul 21 17:54:44 2014
@@ -166,3 +166,17 @@ define float @atomic_add_f32_addrspace3(
   %ret = call float @llvm.nvvm.atomic.load.add.f32.p3f32(float addrspace(3)* %addr, float %val)
   ret float %ret
 }
+
+; CHECK-LABEL: atomic_cmpxchg_i32
+define i32 @atomic_cmpxchg_i32(i32* %addr, i32 %cmp, i32 %new) {
+; CHECK: atom.cas.b32
+  %pairold = cmpxchg i32* %addr, i32 %cmp, i32 %new seq_cst seq_cst
+  ret i32 %new
+}
+
+; CHECK-LABEL: atomic_cmpxchg_i64
+define i64 @atomic_cmpxchg_i64(i64* %addr, i64 %cmp, i64 %new) {
+; CHECK: atom.cas.b64
+  %pairold = cmpxchg i64* %addr, i64 %cmp, i64 %new seq_cst seq_cst
+  ret i64 %new
+}





More information about the llvm-commits mailing list