1*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple=thumbv7m-apple-darwin -show-encoding < %s 2> %t 2*9880d681SAndroid Build Coastguard Worker@ RUN: FileCheck < %t %s 3*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple=thumbv6m -show-encoding < %s 2> %t 4*9880d681SAndroid Build Coastguard Worker@ RUN: FileCheck < %t %s 5*9880d681SAndroid Build Coastguard Worker .syntax unified 6*9880d681SAndroid Build Coastguard Worker .globl _func 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker@ Check that the assembler rejects thumb instructions that are not valid 9*9880d681SAndroid Build Coastguard Worker@ on mclass. 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 12*9880d681SAndroid Build Coastguard Worker@ BLX (immediate) 13*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 14*9880d681SAndroid Build Coastguard Worker blx _baz 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Worker@ CHECK: error: instruction requires: !armv*m 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 19*9880d681SAndroid Build Coastguard Worker@ SETEND 20*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Worker setend be 23*9880d681SAndroid Build Coastguard Worker setend le 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Worker@ CHECK: error: invalid operand for instruction 26*9880d681SAndroid Build Coastguard Worker@ CHECK: error: invalid operand for instruction 27