1*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple armv6-eabi -filetype asm -o /dev/null 2>&1 %s \ 2*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-ARMv6 -check-prefix CHECK-V6 3*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple armv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 4*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-ARMv7 -check-prefix CHECK-V7 5*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple armv7m-eabi -filetype asm -o /dev/null 2>&1 %s \ 6*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-ARMv7M -check-prefix CHECK-V7M 7*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple thumbv6-eabi -filetype asm -o /dev/null 2>&1 %s \ 8*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-THUMBv6 -check-prefix CHECK-V6 9*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple thumbv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 10*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-THUMBv7 -check-prefix CHECK-V7 11*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple thumbv7m-eabi -filetype asm -o /dev/null 2>&1 %s \ 12*9880d681SAndroid Build Coastguard Worker@ RUN: | FileCheck %s -check-prefix CHECK-THUMBv7M -check-prefix CHECK-V7M 13*9880d681SAndroid Build Coastguard Worker 14*9880d681SAndroid Build Coastguard Worker .syntax unified 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Worker .arch_extension idiv 17*9880d681SAndroid Build Coastguard Worker@ CHECK-V6: error: architectural extension 'idiv' is not allowed for the current base architecture 18*9880d681SAndroid Build Coastguard Worker@ CHECK-V6-NEXT: .arch_extension idiv 19*9880d681SAndroid Build Coastguard Worker@ CHECK-V6-NEXT: ^ 20*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M: error: architectural extension 'idiv' is not allowed for the current base architecture 21*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M-NEXT: .arch_extension idiv 22*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M-NEXT: ^ 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Worker .type idiv,%function 25*9880d681SAndroid Build Coastguard Workeridiv: 26*9880d681SAndroid Build Coastguard Worker udiv r0, r1, r2 27*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv6: error: instruction requires: divide in ARM 28*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv6: error: instruction requires: divide in ARM arm-mode 29*9880d681SAndroid Build Coastguard Worker sdiv r0, r1, r2 30*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv6: error: instruction requires: divide in ARM 31*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv6: error: instruction requires: divide in ARM arm-mode 32*9880d681SAndroid Build Coastguard Worker 33*9880d681SAndroid Build Coastguard Worker .arch_extension noidiv 34*9880d681SAndroid Build Coastguard Worker@ CHECK-V6: error: architectural extension 'idiv' is not allowed for the current base architecture 35*9880d681SAndroid Build Coastguard Worker@ CHECK-V6-NEXT: .arch_extension noidiv 36*9880d681SAndroid Build Coastguard Worker@ CHECK-V6-NEXT: ^ 37*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M: error: architectural extension 'idiv' is not allowed for the current base architecture 38*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M-NEXT: .arch_extension noidiv 39*9880d681SAndroid Build Coastguard Worker@ CHECK-V7M-NEXT: ^ 40*9880d681SAndroid Build Coastguard Worker 41*9880d681SAndroid Build Coastguard Worker .type noidiv,%function 42*9880d681SAndroid Build Coastguard Workernoidiv: 43*9880d681SAndroid Build Coastguard Worker udiv r0, r1, r2 44*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv6: error: instruction requires: divide in ARM 45*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv6: error: instruction requires: divide in ARM arm-mode 46*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv7: error: instruction requires: divide in ARM 47*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv7: error: instruction requires: divide in THUMB 48*9880d681SAndroid Build Coastguard Worker sdiv r0, r1, r2 49*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv6: error: instruction requires: divide in ARM 50*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv6: error: instruction requires: divide in ARM arm-mode 51*9880d681SAndroid Build Coastguard Worker@ CHECK-ARMv7: error: instruction requires: divide in ARM 52*9880d681SAndroid Build Coastguard Worker@ CHECK-THUMBv7: error: instruction requires: divide in THUMB 53*9880d681SAndroid Build Coastguard Worker 54