1 ; Check that MachO ARM CPU Subtypes are respected
3 ; RUN: llc -mtriple=armv4t-apple-darwin -filetype=obj -o - < %s \
4 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V4T
6 ; RUN: llc -mtriple=armv5-apple-darwin -filetype=obj -o - < %s \
7 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V5
8 ; RUN: llc -mtriple=armv5e-apple-darwin -filetype=obj -o - < %s \
9 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V5
10 ; RUN: llc -mtriple=armv5t-apple-darwin -filetype=obj -o - < %s \
11 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V5
12 ; RUN: llc -mtriple=armv5te-apple-darwin -filetype=obj -o - < %s \
13 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V5
14 ; RUN: llc -mtriple=armv5tej-apple-darwin -filetype=obj -o - < %s \
15 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V5
17 ; RUN: llc -mtriple=armv6-apple-darwin -filetype=obj -o - < %s \
18 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6
19 ; RUN: llc -mtriple=armv6k-apple-darwin -filetype=obj -o - < %s \
20 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6
21 ; RUN: llc -mtriple=thumbv6-apple-darwin -filetype=obj -o - < %s \
22 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6
23 ; RUN: llc -mtriple=thumbv6k-apple-darwin -filetype=obj -o - < %s \
24 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6
26 ; RUN: llc -mtriple=armv6m-apple-darwin -filetype=obj -o - < %s \
27 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6M
28 ; RUN: llc -mtriple=thumbv6m-apple-darwin -filetype=obj -o - < %s \
29 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V6M
31 ; RUN: llc -mtriple=armv7-apple-darwin -filetype=obj -o - < %s \
32 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7
33 ; RUN: llc -mtriple=thumbv7-apple-darwin -filetype=obj -o - < %s \
34 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7
36 ; RUN: llc -mtriple=thumbv7em-apple-darwin -mcpu=cortex-m4 -filetype=obj -o - < %s \
37 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7EM
38 ; RUN: llc -mtriple=thumbv7em-apple-darwin -mcpu=cortex-m7 -filetype=obj -o - < %s \
39 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7EM
41 ; RUN: llc -mtriple=armv7k-apple-darwin -filetype=obj -o - < %s \
42 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7K
43 ; RUN: llc -mtriple=thumbv7k-apple-darwin -filetype=obj -o - < %s \
44 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7K
46 ; RUN: llc -mtriple=thumbv7m-apple-darwin -mcpu=sc300 -filetype=obj -o - < %s \
47 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7M
48 ; RUN: llc -mtriple=thumbv7m-apple-darwin -mcpu=cortex-m3 -filetype=obj -o - < %s \
49 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7M
51 ; RUN: llc -mtriple=armv7s-apple-darwin -filetype=obj -o - < %s \
52 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7S
53 ; RUN: llc -mtriple=thumbv7s-apple-darwin -filetype=obj -o - < %s \
54 ; RUN: | llvm-readobj --file-headers | FileCheck %s --check-prefix=CHECK-V7S
56 define void @_test() {
60 ; CHECK-V4T: CpuSubType: CPU_SUBTYPE_ARM_V4T (0x5)
61 ; CHECK-V5: CpuSubType: CPU_SUBTYPE_ARM_V5 (0x7)
62 ; CHECK-V6: CpuSubType: CPU_SUBTYPE_ARM_V6 (0x6)
63 ; CHECK-V6M: CpuSubType: CPU_SUBTYPE_ARM_V6M (0xE)
64 ; CHECK-V7: CpuSubType: CPU_SUBTYPE_ARM_V7 (0x9)
65 ; CHECK-V7EM: CpuSubType: CPU_SUBTYPE_ARM_V7EM (0x10)
66 ; CHECK-V7K: CpuSubType: CPU_SUBTYPE_ARM_V7K (0xC)
67 ; CHECK-V7M: CpuSubType: CPU_SUBTYPE_ARM_V7M (0xF)
68 ; CHECK-V7S: CpuSubType: CPU_SUBTYPE_ARM_V7S (0xB)