|  | @ RUN: llvm-mc -triple=thumbv7-apple-darwin -show-encoding < %s | FileCheck %s | 
|  | @ RUN: llvm-mc -triple=thumbv6-apple-darwin -mcpu=cortex-m0 -show-encoding < %s | FileCheck %s | 
|  | @ RUN: not llvm-mc -triple=thumbv6-apple-darwin -show-encoding < %s > %t 2> %t2 | 
|  | @ RUN: FileCheck %s --check-prefix=CHECK-EVIL-PRE-UAL < %t | 
|  | @ RUN: FileCheck %s --check-prefix CHECK-ERROR < %t2 | 
|  |  | 
|  | .syntax unified | 
|  |  | 
|  | nop | 
|  | yield | 
|  | wfe | 
|  | wfi | 
|  | sev | 
|  | @ CHECK: nop                            @ encoding: [0x00,0xbf] | 
|  | @ CHECK: yield                          @ encoding: [0x10,0xbf] | 
|  | @ CHECK: wfe                            @ encoding: [0x20,0xbf] | 
|  | @ CHECK: wfi                            @ encoding: [0x30,0xbf] | 
|  | @ CHECK: sev                            @ encoding: [0x40,0xbf] | 
|  |  | 
|  | @ CHECK-EVIL-PRE-UAL: mov r8, r8                     @ encoding: [0xc0,0x46] | 
|  |  | 
|  | dmb sy | 
|  | dmb | 
|  | dsb sy | 
|  | dsb | 
|  | isb sy | 
|  | isb | 
|  | @ CHECK: dmb	sy                      @ encoding: [0xbf,0xf3,0x5f,0x8f] | 
|  | @ CHECK: dmb	sy                      @ encoding: [0xbf,0xf3,0x5f,0x8f] | 
|  | @ CHECK: dsb	sy                      @ encoding: [0xbf,0xf3,0x4f,0x8f] | 
|  | @ CHECK: dsb	sy                      @ encoding: [0xbf,0xf3,0x4f,0x8f] | 
|  | @ CHECK: isb	sy                      @ encoding: [0xbf,0xf3,0x6f,0x8f] | 
|  | @ CHECK: isb	sy                      @ encoding: [0xbf,0xf3,0x6f,0x8f] | 
|  |  | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: armv6m or armv6t2 | 
|  | @ CHECK-ERROR-NEXT: yield | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: armv6m or armv6t2 | 
|  | @ CHECK-ERROR-NEXT: wfe | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: armv6m or armv6t2 | 
|  | @ CHECK-ERROR-NEXT: wfi | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: armv6m or armv6t2 | 
|  | @ CHECK-ERROR-NEXT: sev | 
|  |  | 
|  | @ CHECK-ERROR: error: | 
|  | @ CHECK-ERROR-NEXT: dmb sy | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: data-barriers | 
|  | @ CHECK-ERROR-NEXT: dmb | 
|  |  | 
|  | @ CHECK-ERROR: error: | 
|  | @ CHECK-ERROR-NEXT: dsb sy | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: data-barriers | 
|  | @ CHECK-ERROR-NEXT: dsb | 
|  |  | 
|  | @ CHECK-ERROR: error: | 
|  | @ CHECK-ERROR-NEXT: isb sy | 
|  |  | 
|  | @ CHECK-ERROR: error: instruction requires: data-barriers | 
|  | @ CHECK-ERROR-NEXT: isb |