Test all <build attribute, value> pairs.
[oota-llvm.git] / test / tools / llvm-readobj / ARM / attribute-3.s
1 @ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
2 @ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
3 @ RUN:   | llvm-readobj -arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
4 .eabi_attribute  Tag_CPU_arch, 3
5 @CHECK:   .eabi_attribute 6, 3
6 @CHECK-OBJ: Tag: 6
7 @CHECK-OBJ-NEXT: Value: 3
8 @CHECK-OBJ-NEXT: TagName: CPU_arch
9 @CHECK-OBJ-NEXT: Description: ARM v5T
10
11 .eabi_attribute  Tag_FP_arch, 3
12 @CHECK:   .eabi_attribute 10, 3
13 @CHECK-OBJ: Tag: 10
14 @CHECK-OBJ-NEXT: Value: 3
15 @CHECK-OBJ-NEXT: TagName: FP_arch
16 @CHECK-OBJ-NEXT: Description: VFPv3
17
18 .eabi_attribute  Tag_Advanced_SIMD_arch, 3
19 @CHECK:   .eabi_attribute 12, 3
20 @CHECK-OBJ: Tag: 12
21 @CHECK-OBJ-NEXT: Value: 3
22 @CHECK-OBJ-NEXT: TagName: Advanced_SIMD_arch
23 @CHECK-OBJ-NEXT: Description: ARMv8-a NEON
24
25 .eabi_attribute  Tag_PCS_config, 3
26 @CHECK:   .eabi_attribute 13, 3
27 @CHECK-OBJ: Tag: 13
28 @CHECK-OBJ-NEXT: Value: 3
29 @CHECK-OBJ-NEXT: TagName: PCS_config
30 @CHECK-OBJ-NEXT: Description: Linux DSO
31
32 .eabi_attribute  Tag_ABI_PCS_R9_use, 3
33 @CHECK:   .eabi_attribute 14, 3
34 @CHECK-OBJ: Tag: 14
35 @CHECK-OBJ-NEXT: Value: 3
36 @CHECK-OBJ-NEXT: TagName: ABI_PCS_R9_use
37 @CHECK-OBJ-NEXT: Description: Unused
38
39 .eabi_attribute  Tag_ABI_PCS_RW_data, 3
40 @CHECK:   .eabi_attribute 15, 3
41 @CHECK-OBJ: Tag: 15
42 @CHECK-OBJ-NEXT: Value: 3
43 @CHECK-OBJ-NEXT: TagName: ABI_PCS_RW_data
44 @CHECK-OBJ-NEXT: Description: Not Permitted
45
46 .eabi_attribute  Tag_ABI_FP_number_model, 3
47 @CHECK:   .eabi_attribute 23, 3
48 @CHECK-OBJ: Tag: 23
49 @CHECK-OBJ-NEXT: Value: 3
50 @CHECK-OBJ-NEXT: TagName: ABI_FP_number_model
51 @CHECK-OBJ-NEXT: Description: IEEE-754
52
53 .eabi_attribute  Tag_ABI_align_needed, 3
54 @CHECK:   .eabi_attribute 24, 3
55 @CHECK-OBJ: Tag: 24
56 @CHECK-OBJ-NEXT: Value: 3
57 @CHECK-OBJ-NEXT: TagName: ABI_align_needed
58 @CHECK-OBJ-NEXT: Description: Reserved
59
60 .eabi_attribute  Tag_ABI_align_preserved, 3
61 @CHECK:   .eabi_attribute 25, 3
62 @CHECK-OBJ: Tag: 25
63 @CHECK-OBJ-NEXT: Value: 3
64 @CHECK-OBJ-NEXT: TagName: ABI_align_preserved
65 @CHECK-OBJ-NEXT: Description: Reserved
66
67 .eabi_attribute  Tag_ABI_enum_size, 3
68 @CHECK:   .eabi_attribute 26, 3
69 @CHECK-OBJ: Tag: 26
70 @CHECK-OBJ-NEXT: Value: 3
71 @CHECK-OBJ-NEXT: TagName: ABI_enum_size
72 @CHECK-OBJ-NEXT: Description: External Int32
73
74 .eabi_attribute  Tag_ABI_HardFP_use, 3
75 @CHECK:   .eabi_attribute 27, 3
76 @CHECK-OBJ: Tag: 27
77 @CHECK-OBJ-NEXT: Value: 3
78 @CHECK-OBJ-NEXT: TagName: ABI_HardFP_use
79 @CHECK-OBJ-NEXT: Description: Tag_FP_arch (deprecated)
80
81 .eabi_attribute  Tag_ABI_VFP_args, 3
82 @CHECK:   .eabi_attribute 28, 3
83 @CHECK-OBJ: Tag: 28
84 @CHECK-OBJ-NEXT: Value: 3
85 @CHECK-OBJ-NEXT: TagName: ABI_VFP_args
86 @CHECK-OBJ-NEXT: Description: Not Permitted
87
88 .eabi_attribute  Tag_ABI_optimization_goals, 3
89 @CHECK:   .eabi_attribute 30, 3
90 @CHECK-OBJ: Tag: 30
91 @CHECK-OBJ-NEXT: Value: 3
92 @CHECK-OBJ-NEXT: TagName: ABI_optimization_goals
93 @CHECK-OBJ-NEXT: Description: Size
94
95 .eabi_attribute  Tag_ABI_FP_optimization_goals, 3
96 @CHECK:   .eabi_attribute 31, 3
97 @CHECK-OBJ: Tag: 31
98 @CHECK-OBJ-NEXT: Value: 3
99 @CHECK-OBJ-NEXT: TagName: ABI_FP_optimization_goals
100 @CHECK-OBJ-NEXT: Description: Size
101
102 .eabi_attribute  Tag_Virtualization_use, 3
103 @CHECK:   .eabi_attribute 68, 3
104 @CHECK-OBJ: Tag: 68
105 @CHECK-OBJ-NEXT: Value: 3
106 @CHECK-OBJ-NEXT: TagName: Virtualization_use
107 @CHECK-OBJ-NEXT: Description: TrustZone + Virtualization Extensions
108