1 // This tests that ARM attributes are properly encoded.
3 // RUN: llvm-mc < %s -triple=arm-linux-gnueabi -filetype=obj -o - \
4 // RUN: | llvm-readobj -s -sd | FileCheck %s
12 // Tag_arch_profile (=7)
13 .eabi_attribute 7, 'A'
15 // Tag_ARM_ISA_use (=8)
18 // Tag_THUMB_ISA_use (=9)
24 // Tag_Advanced_SIMD_arch (=12)
27 // Tag_ABI_FP_denormal (=20)
30 // Tag_ABI_FP_exceptions (=21)
33 // Tag_ABI_FP_number_model (=23)
36 // Tag_ABI_align_needed (=24)
39 // Tag_ABI_align_preserved (=25)
42 // Tag_ABI_HardFP_use (=27)
45 // Tag_ABI_VFP_args (=28)
48 // Tag_FP_HP_extension (=36)
51 // Tag_MPextension_use (=42)
57 // Tag_Virtualization_use (=68)
60 // Check that values > 128 are encoded properly
61 .eabi_attribute 110, 160
63 // Check that tags > 128 are encoded properly
64 .eabi_attribute 129, "1"
65 .eabi_attribute 250, 1
68 // CHECK: Name: .ARM.attributes
69 // CHECK-NEXT: Type: SHT_ARM_ATTRIBUTES
70 // CHECK-NEXT: Flags [ (0x0)
72 // CHECK-NEXT: Address: 0x0
73 // CHECK-NEXT: Offset: 0x34
74 // CHECK-NEXT: Size: 71
75 // CHECK-NEXT: Link: 0
76 // CHECK-NEXT: Info: 0
77 // CHECK-NEXT: AddressAlignment: 1
78 // CHECK-NEXT: EntrySize: 0
79 // CHECK-NEXT: SectionData (
80 // CHECK-NEXT: 0000: 41460000 00616561 62690001 3C000000
81 // CHECK-NEXT: 0010: 05434F52 5445582D 41380006 0A074108
82 // CHECK-NEXT: 0020: 0109020A 030C0214 01150117 01180119
83 // CHECK-NEXT: 0030: 011B001C 0124012A 012C0244 036EA001
84 // CHECK-NEXT: 0040: 81013100 FA0101