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