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, 0 5@CHECK: .eabi_attribute 6, 0 6@CHECK-OBJ: Tag: 6 7@CHECK-OBJ-NEXT: Value: 0 8@CHECK-OBJ-NEXT: TagName: CPU_arch 9@CHECK-OBJ-NEXT: Description: Pre-v4 10 11.eabi_attribute Tag_CPU_arch_profile, 0 12@CHECK: .eabi_attribute 7, 0 13@CHECK-OBJ: Tag: 7 14@CHECK-OBJ-NEXT: Value: 0 15@CHECK-OBJ-NEXT: TagName: CPU_arch_profile 16@CHECK-OBJ-NEXT: Description: None 17 18.eabi_attribute Tag_ARM_ISA_use, 0 19@CHECK: .eabi_attribute 8, 0 20@CHECK-OBJ: Tag: 8 21@CHECK-OBJ-NEXT: Value: 0 22@CHECK-OBJ-NEXT: TagName: ARM_ISA_use 23@CHECK-OBJ-NEXT: Description: Not Permitted 24 25.eabi_attribute Tag_THUMB_ISA_use, 0 26@CHECK: .eabi_attribute 9, 0 27@CHECK-OBJ: Tag: 9 28@CHECK-OBJ-NEXT: Value: 0 29@CHECK-OBJ-NEXT: TagName: THUMB_ISA_use 30@CHECK-OBJ-NEXT: Description: Not Permitted 31 32.eabi_attribute Tag_FP_arch, 0 33@CHECK: .eabi_attribute 10, 0 34@CHECK-OBJ: Tag: 10 35@CHECK-OBJ-NEXT: Value: 0 36@CHECK-OBJ-NEXT: TagName: FP_arch 37@CHECK-OBJ-NEXT: Description: Not Permitted 38 39.eabi_attribute Tag_WMMX_arch, 0 40@CHECK: .eabi_attribute 11, 0 41@CHECK-OBJ: Tag: 11 42@CHECK-OBJ-NEXT: Value: 0 43@CHECK-OBJ-NEXT: TagName: WMMX_arch 44@CHECK-OBJ-NEXT: Description: Not Permitted 45 46.eabi_attribute Tag_Advanced_SIMD_arch, 0 47@CHECK: .eabi_attribute 12, 0 48@CHECK-OBJ: Tag: 12 49@CHECK-OBJ-NEXT: Value: 0 50@CHECK-OBJ-NEXT: TagName: Advanced_SIMD_arch 51@CHECK-OBJ-NEXT: Description: Not Permitted 52 53.eabi_attribute Tag_PCS_config, 0 54@CHECK: .eabi_attribute 13, 0 55@CHECK-OBJ: Tag: 13 56@CHECK-OBJ-NEXT: Value: 0 57@CHECK-OBJ-NEXT: TagName: PCS_config 58@CHECK-OBJ-NEXT: Description: None 59 60.eabi_attribute Tag_ABI_PCS_R9_use, 0 61@CHECK: .eabi_attribute 14, 0 62@CHECK-OBJ: Tag: 14 63@CHECK-OBJ-NEXT: Value: 0 64@CHECK-OBJ-NEXT: TagName: ABI_PCS_R9_use 65@CHECK-OBJ-NEXT: Description: v6 66 67.eabi_attribute Tag_ABI_PCS_RW_data, 0 68@CHECK: .eabi_attribute 15, 0 69@CHECK-OBJ: Tag: 15 70@CHECK-OBJ-NEXT: Value: 0 71@CHECK-OBJ-NEXT: TagName: ABI_PCS_RW_data 72@CHECK-OBJ-NEXT: Description: Absolute 73 74.eabi_attribute Tag_ABI_PCS_RO_data, 0 75@CHECK: .eabi_attribute 16, 0 76@CHECK-OBJ: Tag: 16 77@CHECK-OBJ-NEXT: Value: 0 78@CHECK-OBJ-NEXT: TagName: ABI_PCS_RO_data 79@CHECK-OBJ-NEXT: Description: Absolute 80 81.eabi_attribute Tag_ABI_PCS_GOT_use, 0 82@CHECK: .eabi_attribute 17, 0 83@CHECK-OBJ: Tag: 17 84@CHECK-OBJ-NEXT: Value: 0 85@CHECK-OBJ-NEXT: TagName: ABI_PCS_GOT_use 86@CHECK-OBJ-NEXT: Description: Not Permitted 87 88.eabi_attribute Tag_ABI_PCS_wchar_t, 0 89@CHECK: .eabi_attribute 18, 0 90@CHECK-OBJ: Tag: 18 91@CHECK-OBJ-NEXT: Value: 0 92@CHECK-OBJ-NEXT: TagName: ABI_PCS_wchar_t 93@CHECK-OBJ-NEXT: Description: Not Permitted 94 95.eabi_attribute Tag_ABI_FP_rounding, 0 96@CHECK: .eabi_attribute 19, 0 97@CHECK-OBJ: Tag: 19 98@CHECK-OBJ-NEXT: Value: 0 99@CHECK-OBJ-NEXT: TagName: ABI_FP_rounding 100@CHECK-OBJ-NEXT: Description: IEEE-754 101 102.eabi_attribute Tag_ABI_FP_denormal, 0 103@CHECK: .eabi_attribute 20, 0 104@CHECK-OBJ: Tag: 20 105@CHECK-OBJ-NEXT: Value: 0 106@CHECK-OBJ-NEXT: TagName: ABI_FP_denormal 107@CHECK-OBJ-NEXT: Description: Unsupported 108 109.eabi_attribute Tag_ABI_FP_exceptions, 0 110@CHECK: .eabi_attribute 21, 0 111@CHECK-OBJ: Tag: 21 112@CHECK-OBJ-NEXT: Value: 0 113@CHECK-OBJ-NEXT: TagName: ABI_FP_exceptions 114@CHECK-OBJ-NEXT: Description: Not Permitted 115 116.eabi_attribute Tag_ABI_FP_user_exceptions, 0 117@CHECK: .eabi_attribute 22, 0 118@CHECK-OBJ: Tag: 22 119@CHECK-OBJ-NEXT: Value: 0 120@CHECK-OBJ-NEXT: TagName: ABI_FP_user_exceptions 121@CHECK-OBJ-NEXT: Description: Not Permitted 122 123.eabi_attribute Tag_ABI_FP_number_model, 0 124@CHECK: .eabi_attribute 23, 0 125@CHECK-OBJ: Tag: 23 126@CHECK-OBJ-NEXT: Value: 0 127@CHECK-OBJ-NEXT: TagName: ABI_FP_number_model 128@CHECK-OBJ-NEXT: Description: Not Permitted 129 130.eabi_attribute Tag_ABI_align_needed, 0 131@CHECK: .eabi_attribute 24, 0 132@CHECK-OBJ: Tag: 24 133@CHECK-OBJ-NEXT: Value: 0 134@CHECK-OBJ-NEXT: TagName: ABI_align_needed 135@CHECK-OBJ-NEXT: Description: Not Permitted 136 137.eabi_attribute Tag_ABI_align_preserved, 0 138@CHECK: .eabi_attribute 25, 0 139@CHECK-OBJ: Tag: 25 140@CHECK-OBJ-NEXT: Value: 0 141@CHECK-OBJ-NEXT: TagName: ABI_align_preserved 142@CHECK-OBJ-NEXT: Description: Not Required 143 144.eabi_attribute Tag_ABI_enum_size, 0 145@CHECK: .eabi_attribute 26, 0 146@CHECK-OBJ: Tag: 26 147@CHECK-OBJ-NEXT: Value: 0 148@CHECK-OBJ-NEXT: TagName: ABI_enum_size 149@CHECK-OBJ-NEXT: Description: Not Permitted 150 151.eabi_attribute Tag_ABI_HardFP_use, 0 152@CHECK: .eabi_attribute 27, 0 153@CHECK-OBJ: Tag: 27 154@CHECK-OBJ-NEXT: Value: 0 155@CHECK-OBJ-NEXT: TagName: ABI_HardFP_use 156@CHECK-OBJ-NEXT: Description: Tag_FP_arch 157 158.eabi_attribute Tag_ABI_VFP_args, 0 159@CHECK: .eabi_attribute 28, 0 160@CHECK-OBJ: Tag: 28 161@CHECK-OBJ-NEXT: Value: 0 162@CHECK-OBJ-NEXT: TagName: ABI_VFP_args 163@CHECK-OBJ-NEXT: Description: AAPCS 164 165.eabi_attribute Tag_ABI_WMMX_args, 0 166@CHECK: .eabi_attribute 29, 0 167@CHECK-OBJ: Tag: 29 168@CHECK-OBJ-NEXT: Value: 0 169@CHECK-OBJ-NEXT: TagName: ABI_WMMX_args 170@CHECK-OBJ-NEXT: Description: AAPCS 171 172.eabi_attribute Tag_ABI_optimization_goals, 0 173@CHECK: .eabi_attribute 30, 0 174@CHECK-OBJ: Tag: 30 175@CHECK-OBJ-NEXT: Value: 0 176@CHECK-OBJ-NEXT: TagName: ABI_optimization_goals 177@CHECK-OBJ-NEXT: Description: None 178 179.eabi_attribute Tag_ABI_FP_optimization_goals, 0 180@CHECK: .eabi_attribute 31, 0 181@CHECK-OBJ: Tag: 31 182@CHECK-OBJ-NEXT: Value: 0 183@CHECK-OBJ-NEXT: TagName: ABI_FP_optimization_goals 184@CHECK-OBJ-NEXT: Description: None 185 186.eabi_attribute Tag_compatibility, 0, "ARM" 187@CHECK: .eabi_attribute 32, 0 188@CHECK-OBJ: Tag: 32 189@CHECK-OBJ-NEXT: Value: 0, ARM 190@CHECK-OBJ-NEXT: TagName: compatibility 191@CHECK-OBJ-NEXT: Description: No Specific Requirements 192 193.eabi_attribute Tag_CPU_unaligned_access, 0 194@CHECK: .eabi_attribute 34, 0 195@CHECK-OBJ: Tag: 34 196@CHECK-OBJ-NEXT: Value: 0 197@CHECK-OBJ-NEXT: TagName: CPU_unaligned_access 198@CHECK-OBJ-NEXT: Description: Not Permitted 199 200.eabi_attribute Tag_FP_HP_extension, 0 201@CHECK: .eabi_attribute 36, 0 202@CHECK-OBJ: Tag: 36 203@CHECK-OBJ-NEXT: Value: 0 204@CHECK-OBJ-NEXT: TagName: FP_HP_extension 205@CHECK-OBJ-NEXT: Description: If Available 206 207.eabi_attribute Tag_ABI_FP_16bit_format, 0 208@CHECK: .eabi_attribute 38, 0 209@CHECK-OBJ: Tag: 38 210@CHECK-OBJ-NEXT: Value: 0 211@CHECK-OBJ-NEXT: TagName: ABI_FP_16bit_format 212@CHECK-OBJ-NEXT: Description: Not Permitted 213 214.eabi_attribute Tag_MPextension_use, 0 215@CHECK: .eabi_attribute 42, 0 216@CHECK-OBJ: Tag: 42 217@CHECK-OBJ-NEXT: Value: 0 218@CHECK-OBJ-NEXT: TagName: MPextension_use 219@CHECK-OBJ-NEXT: Description: Not Permitted 220 221.eabi_attribute Tag_DIV_use, 0 222@CHECK: .eabi_attribute 44, 0 223@CHECK-OBJ: Tag: 44 224@CHECK-OBJ-NEXT: Value: 0 225@CHECK-OBJ-NEXT: TagName: DIV_use 226@CHECK-OBJ-NEXT: Description: If Available 227 228.eabi_attribute Tag_DSP_extension, 0 229@CHECK: .eabi_attribute 46, 0 230@CHECK-OBJ: Tag: 46 231@CHECK-OBJ-NEXT: Value: 0 232@CHECK-OBJ-NEXT: TagName: DSP_extension 233@CHECK-OBJ-NEXT: Description: Not Permitted 234 235.eabi_attribute Tag_Virtualization_use, 0 236@CHECK: .eabi_attribute 68, 0 237@CHECK-OBJ: Tag: 68 238@CHECK-OBJ-NEXT: Value: 0 239@CHECK-OBJ-NEXT: TagName: Virtualization_use 240@CHECK-OBJ-NEXT: Description: Not Permitted 241 242