Home | History | Annotate | Download | only in ARM
      1 # RUN: not llvm-mc -disassemble %s -triple=thumbv7em 2>&1 | FileCheck --check-prefix=CHECK %s
      2 # RUN: not llvm-mc -disassemble %s -triple=thumbv7m 2>&1 | FileCheck --check-prefix=CHECK --check-prefix=CHECK-V7M %s
      3 
      4 #------------------------------------------------------------------------------
      5 # Undefined encodings for mrs
      6 #------------------------------------------------------------------------------
      7 
      8 # invalid SYSm
      9 # CHECK: warning: invalid instruction encoding
     10 # CHECK-NEXT: [0xef 0xf3 0x80 0x80]
     11 [0xef 0xf3 0x80 0x80]
     12 
     13 #------------------------------------------------------------------------------
     14 # Undefined encodings for msr
     15 #------------------------------------------------------------------------------
     16 
     17 # invalid mask = '00'
     18 # CHECK: warning: potentially undefined instruction encoding
     19 # CHECK-NEXT: [0x80 0xf3 0x00 0x80]
     20 [0x80 0xf3 0x00 0x80]
     21 
     22 # invalid mask = '11' with SYSm not in {0..3}
     23 # CHECK: warning: potentially undefined instruction encoding
     24 # CHECK-NEXT: [0x80 0xf3 0x05 0x8c]
     25 [0x80 0xf3 0x05 0x8c]
     26 
     27 # invalid mask = '01' (ThumbV7M does not have the DSP extension)
     28 # CHECK-V7M: warning: potentially undefined instruction encoding
     29 # CHECK-V7M-NEXT: [0x80 0xf3 0x00 0x84]
     30 [0x80 0xf3 0x00 0x84]
     31 
     32 # invalid SYSm
     33 # CHECK: warning: invalid instruction encoding
     34 # CHECK-NEXT: [0x80 0xf3 0x80 0x88]
     35 [0x80 0xf3 0x80 0x88]
     36