brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.9 KiB · 9a38b04 Raw
73 lines · plain
1// REQUIRES:arm2// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-vfp-arg-base.s -o %tbase.o3// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-vfp-arg-vfp.s -o %tvfp.o4// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-vfp-arg-toolchain.s -o %ttoolchain.o5// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-vfp-arg-compat.s -o %tcompat.o6// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o7 8// The default for this file is 0 (Base AAPCS)9// RUN: ld.lld %t.o -o %tdefault10// RUN: llvm-readobj --file-headers %tdefault | FileCheck -check-prefix=CHECK-BASE %s11 12// Expect explicit Base AAPCS.13// RUN: ld.lld %t.o %tbase.o -o %tbase14// RUN: llvm-readobj --file-headers %tbase | FileCheck -check-prefix=CHECK-BASE %s15 16// Expect explicit Base AAPCS when linking Base and Compatible.17// RUN: ld.lld %t.o %tbase.o %tcompat.o -o %tbasecompat18// RUN: llvm-readobj --file-headers %tbasecompat | FileCheck -check-prefix=CHECK-BASE %s19 20// CHECK-BASE:   Flags [ (0x5000200)21// CHECK-BASE-NEXT:     0x20022// CHECK-BASE-NEXT:     0x100000023// CHECK-BASE-NEXT:     0x400000024// CHECK-BASE-NEXT:   ]25 26// Expect Hard float VFP AAPCS27// RUN: ld.lld %t.o %tvfp.o -o %tvfp28// RUN: llvm-readobj --file-headers %tvfp | FileCheck -check-prefix=CHECK-VFP %s29 30// Expect Hard float VFP AAPCS when linking VFP and Compatible31// RUN: ld.lld %t.o %tvfp.o %tcompat.o -o %tvfpcompat32// RUN: llvm-readobj --file-headers %tvfpcompat | FileCheck -check-prefix=CHECK-VFP %s33 34// CHECK-VFP:   Flags [ (0x5000400)35// CHECK-VFP-NEXT:     0x40036// CHECK-VFP-NEXT:     0x100000037// CHECK-VFP-NEXT:     0x400000038// CHECK-VFP-NEXT:   ]39 40// Expect Toolchain specifc to not use either Base or VFP AAPCS41// RUN: ld.lld %t.o %ttoolchain.o -o %ttoolchain42// RUN: llvm-readobj --file-headers %ttoolchain | FileCheck -check-prefix=CHECK-TOOLCHAIN %s43 44// Expect Toolchain and Compatible to have same affect as Toolchain.45// RUN: ld.lld %t.o %ttoolchain.o %tcompat.o -o %ttoolchaincompat46// RUN: llvm-readobj --file-headers %ttoolchaincompat | FileCheck -check-prefix=CHECK-TOOLCHAIN %s47 48// CHECK-TOOLCHAIN:   Flags [ (0x5000000)49// CHECK-TOOLCHAIN-NEXT:     0x100000050// CHECK-TOOLCHAIN-NEXT:     0x400000051// CHECK-TOOLCHAIN-NEXT:   ]52 53        .arch armv7-a54        .eabi_attribute 20, 155        .eabi_attribute 21, 156        .eabi_attribute 23, 357        .eabi_attribute 24, 158        .eabi_attribute 25, 159        .eabi_attribute 26, 260        .eabi_attribute 30, 661        .eabi_attribute 34, 162        .eabi_attribute 18, 463        // We do not specify Tag_ABI_VFP_args (.eabi_attribute 28) in this file.64        // When omitted the value of the tag defaults to 0, however if there65        // are other files with explicit Tag_ABI_VFP_args we use that in66        // preference.67 68 69        .syntax unified70        .globl _start71        .type _start, %function72_start:  bx lr73