brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.4 KiB · 4249dac Raw
184 lines · plain
1// REQUIRES: arm2// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-attributes1.s -o %t1.o3// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t2.o4 5// RUN: ld.lld %t1.o %t2.o -o %t6// RUN: llvm-readobj --arch-specific %t | FileCheck %s7// RUN: ld.lld %t1.o %t2.o -shared -o %t28// RUN: llvm-readobj --arch-specific %t2 | FileCheck %s9// RUN: ld.lld %t1.o %t2.o -r -o %t310// RUN: llvm-readobj --arch-specific %t3 | FileCheck %s11 12// Check that we retain only 1 SHT_ARM_ATTRIBUTES section. At present we do not13// try and merge or use the contents of SHT_ARM_ATTRIBUTES sections. We just14// pass the first one through.15 .text16 .syntax unified17 .eabi_attribute        67, "2.09"      @ Tag_conformance18 .cpu    cortex-a819 .eabi_attribute 6, 10   @ Tag_CPU_arch20 .eabi_attribute 7, 65   @ Tag_CPU_arch_profile21 .eabi_attribute 8, 1    @ Tag_ARM_ISA_use22 .eabi_attribute 9, 2    @ Tag_THUMB_ISA_use23 .fpu    neon24 .eabi_attribute 15, 1   @ Tag_ABI_PCS_RW_data25 .eabi_attribute 16, 1   @ Tag_ABI_PCS_RO_data26 .eabi_attribute 17, 2   @ Tag_ABI_PCS_GOT_use27 .eabi_attribute 20, 1   @ Tag_ABI_FP_denormal28 .eabi_attribute 21, 1   @ Tag_ABI_FP_exceptions29 .eabi_attribute 23, 3   @ Tag_ABI_FP_number_model30 .eabi_attribute 34, 1   @ Tag_CPU_unaligned_access31 .eabi_attribute 24, 1   @ Tag_ABI_align_needed32 .eabi_attribute 25, 1   @ Tag_ABI_align_preserved33 .eabi_attribute 38, 1   @ Tag_ABI_FP_16bit_format34 .eabi_attribute 18, 4   @ Tag_ABI_PCS_wchar_t35 .eabi_attribute 26, 2   @ Tag_ABI_enum_size36 .eabi_attribute 14, 0   @ Tag_ABI_PCS_R9_use37 .eabi_attribute 68, 1   @ Tag_Virtualization_use38 .globl  _start39 .p2align        240 .type   _start,%function41_start:42 .globl func43 bl func44 bx lr45 46// CHECK: BuildAttributes {47// CHECK-NEXT:   FormatVersion: 0x4148// CHECK-NEXT:   Section 1 {49// CHECK-NEXT:     SectionLength: 7250// CHECK-NEXT:     Vendor: aeabi51// CHECK-NEXT:     Tag: Tag_File (0x1)52// CHECK-NEXT:     Size: 6253// CHECK-NEXT:     FileAttributes {54// CHECK-NEXT:       Attribute {55// CHECK-NEXT:         Tag: 6756// CHECK-NEXT:         TagName: conformance57// CHECK-NEXT:         Value: 2.0958// CHECK-NEXT:       }59// CHECK-NEXT:       Attribute {60// CHECK-NEXT:         Tag: 561// CHECK-NEXT:         TagName: CPU_name62// CHECK-NEXT:         Value: cortex-a863// CHECK-NEXT:       }64// CHECK-NEXT:       Attribute {65// CHECK-NEXT:         Tag: 666// CHECK-NEXT:         Value: 1067// CHECK-NEXT:         TagName: CPU_arch68// CHECK-NEXT:         Description: ARM v769// CHECK-NEXT:       }70// CHECK-NEXT:       Attribute {71// CHECK-NEXT:         Tag: 772// CHECK-NEXT:         Value: 6573// CHECK-NEXT:         TagName: CPU_arch_profile74// CHECK-NEXT:         Description: Application75// CHECK-NEXT:       }76// CHECK-NEXT:       Attribute {77// CHECK-NEXT:         Tag: 878// CHECK-NEXT:         Value: 179// CHECK-NEXT:         TagName: ARM_ISA_use80// CHECK-NEXT:         Description: Permitted81// CHECK-NEXT:       }82// CHECK-NEXT:       Attribute {83// CHECK-NEXT:         Tag: 984// CHECK-NEXT:         Value: 285// CHECK-NEXT:         TagName: THUMB_ISA_use86// CHECK-NEXT:         Description: Thumb-287// CHECK-NEXT:       }88// CHECK-NEXT:       Attribute {89// CHECK-NEXT:         Tag: 1090// CHECK-NEXT:         Value: 391// CHECK-NEXT:         TagName: FP_arch92// CHECK-NEXT:         Description: VFPv393// CHECK-NEXT:       }94// CHECK-NEXT:       Attribute {95// CHECK-NEXT:         Tag: 1296// CHECK-NEXT:         Value: 197// CHECK-NEXT:         TagName: Advanced_SIMD_arch98// CHECK-NEXT:         Description: NEONv199// CHECK-NEXT:       }100// CHECK-NEXT:       Attribute {101// CHECK-NEXT:         Tag: 14102// CHECK-NEXT:         Value: 0103// CHECK-NEXT:         TagName: ABI_PCS_R9_use104// CHECK-NEXT:         Description: v6105// CHECK-NEXT:       }106// CHECK-NEXT:       Attribute {107// CHECK-NEXT:         Tag: 15108// CHECK-NEXT:         Value: 1109// CHECK-NEXT:         TagName: ABI_PCS_RW_data110// CHECK-NEXT:         Description: PC-relative111// CHECK-NEXT:       }112// CHECK-NEXT:       Attribute {113// CHECK-NEXT:         Tag: 16114// CHECK-NEXT:         Value: 1115// CHECK-NEXT:         TagName: ABI_PCS_RO_data116// CHECK-NEXT:         Description: PC-relative117// CHECK-NEXT:       }118// CHECK-NEXT:       Attribute {119// CHECK-NEXT:         Tag: 17120// CHECK-NEXT:         Value: 2121// CHECK-NEXT:         TagName: ABI_PCS_GOT_use122// CHECK-NEXT:         Description: GOT-Indirect123// CHECK-NEXT:       }124// CHECK-NEXT:       Attribute {125// CHECK-NEXT:         Tag: 18126// CHECK-NEXT:         Value: 4127// CHECK-NEXT:         TagName: ABI_PCS_wchar_t128// CHECK-NEXT:         Description: 4-byte129// CHECK-NEXT:       }130// CHECK-NEXT:       Attribute {131// CHECK-NEXT:         Tag: 20132// CHECK-NEXT:         Value: 1133// CHECK-NEXT:         TagName: ABI_FP_denormal134// CHECK-NEXT:         Description: IEEE-754135// CHECK-NEXT:       }136// CHECK-NEXT:       Attribute {137// CHECK-NEXT:         Tag: 21138// CHECK-NEXT:         Value: 1139// CHECK-NEXT:         TagName: ABI_FP_exceptions140// CHECK-NEXT:         Description: IEEE-754141// CHECK-NEXT:       }142// CHECK-NEXT:       Attribute {143// CHECK-NEXT:         Tag: 23144// CHECK-NEXT:         Value: 3145// CHECK-NEXT:         TagName: ABI_FP_number_model146// CHECK-NEXT:         Description: IEEE-754147// CHECK-NEXT:       }148// CHECK-NEXT:       Attribute {149// CHECK-NEXT:         Tag: 24150// CHECK-NEXT:         Value: 1151// CHECK-NEXT:         TagName: ABI_align_needed152// CHECK-NEXT:         Description: 8-byte alignment153// CHECK-NEXT:       }154// CHECK-NEXT:       Attribute {155// CHECK-NEXT:         Tag: 25156// CHECK-NEXT:         Value: 1157// CHECK-NEXT:         TagName: ABI_align_preserved158// CHECK-NEXT:         Description: 8-byte data alignment159// CHECK-NEXT:       }160// CHECK-NEXT:       Attribute {161// CHECK-NEXT:         Tag: 26162// CHECK-NEXT:         Value: 2163// CHECK-NEXT:         TagName: ABI_enum_size164// CHECK-NEXT:         Description: Int32165// CHECK-NEXT:       }166// CHECK-NEXT:       Attribute {167// CHECK-NEXT:         Tag: 34168// CHECK-NEXT:         Value: 1169// CHECK-NEXT:         TagName: CPU_unaligned_access170// CHECK-NEXT:         Description: v6-style171// CHECK-NEXT:       }172// CHECK-NEXT:       Attribute {173// CHECK-NEXT:         Tag: 38174// CHECK-NEXT:         Value: 1175// CHECK-NEXT:         TagName: ABI_FP_16bit_format176// CHECK-NEXT:         Description: IEEE-754177// CHECK-NEXT:       }178// CHECK-NEXT:       Attribute {179// CHECK-NEXT:         Tag: 68180// CHECK-NEXT:         Value: 1181// CHECK-NEXT:         TagName: Virtualization_use182// CHECK-NEXT:         Description: TrustZone183// CHECK-NEXT:       }184