Conservatively handle multiple MMOs in MIsNeedChainEdge
[oota-llvm.git] / test / CodeGen / Thumb / barrier.ll
index 44a3f46a1815d47d0c868997c4f6aaa3d0e8b6a5..1c27fa09884f6c2a43ec237e0d6532210f865609 100644 (file)
@@ -1,17 +1,13 @@
-; RUN: llc < %s -march=thumb -mattr=+v6  | FileCheck %s
-
-declare void @llvm.memory.barrier( i1 , i1 , i1 , i1 , i1 )
+; RUN: llc < %s -mtriple=thumbv6-apple-darwin  | FileCheck %s -check-prefix=V6
+; RUN: llc < %s -mtriple=thumbv7-apple-darwin -mattr=-db | FileCheck %s -check-prefix=V6
+; RUN: llc < %s -march=thumb -mcpu=cortex-m0   | FileCheck %s -check-prefix=V6M
 
 define void @t1() {
-; CHECK: t1:
-; CHECK: blx {{_*}}sync_synchronize
-  call void @llvm.memory.barrier( i1 false, i1 false, i1 false, i1 true, i1 true )
-  ret void
-}
+; V6-LABEL: t1:
+; V6: blx {{_*}}sync_synchronize
 
-define void @t2() {
-; CHECK: t2:
-; CHECK: blx {{_*}}sync_synchronize
-  call void @llvm.memory.barrier( i1 false, i1 false, i1 false, i1 true, i1 false )
+; V6M-LABEL: t1:
+; V6M: dmb sy
+  fence seq_cst
   ret void
 }