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