17ad2e8aaSOliver Stannard// RUN: llvm-mc -triple armv7a < %s -arm-add-build-attributes | FileCheck %s --check-prefix=v7A 27ad2e8aaSOliver Stannard// RUN: llvm-mc -triple armv6m < %s -arm-add-build-attributes | FileCheck %s --check-prefix=v6M 37ad2e8aaSOliver Stannard// RUN: llvm-mc -triple armv7m < %s -arm-add-build-attributes | FileCheck %s --check-prefix=v7M 47ad2e8aaSOliver Stannard// RUN: llvm-mc -triple armv7a -mcpu=cortex-a15 < %s -arm-add-build-attributes | FileCheck %s --check-prefix=Cortex-A15 5*f502b14dSLemonBoy// RUN: llvm-mc -triple armv8m.base < %s -arm-add-build-attributes | FileCheck %s --check-prefix=v8M_Baseline 6*f502b14dSLemonBoy// RUN: llvm-mc -triple armv8m.main < %s -arm-add-build-attributes | FileCheck %s --check-prefix=v8M_Mainline 77ad2e8aaSOliver Stannard 87ad2e8aaSOliver Stannard// This isn't intended to be a through check of the build attributes emitted 97ad2e8aaSOliver Stannard// for each target (that's tested elsewhere), but just to check that the 107ad2e8aaSOliver Stannard// hardware attributes are emitted by the assembler based on the selected 117ad2e8aaSOliver Stannard// target when requested. 127ad2e8aaSOliver Stannard 137ad2e8aaSOliver Stannard// v7A-NOT: .cpu 147ad2e8aaSOliver Stannard// v7A: .eabi_attribute 6, 10 @ Tag_CPU_arch 157ad2e8aaSOliver Stannard// v7A: .eabi_attribute 7, 65 @ Tag_CPU_arch_profile 167ad2e8aaSOliver Stannard// v7A: .eabi_attribute 8, 1 @ Tag_ARM_ISA_use 177ad2e8aaSOliver Stannard// v7A: .eabi_attribute 9, 2 @ Tag_THUMB_ISA_use 187ad2e8aaSOliver Stannard// v7A: .fpu neon 197ad2e8aaSOliver Stannard// v7A: .eabi_attribute 34, 1 @ Tag_CPU_unaligned_access 207ad2e8aaSOliver Stannard 217ad2e8aaSOliver Stannard// v6M-NOT: .cpu 227ad2e8aaSOliver Stannard// v6M: .eabi_attribute 6, 12 @ Tag_CPU_arch 237ad2e8aaSOliver Stannard// v6M: .eabi_attribute 7, 77 @ Tag_CPU_arch_profile 247ad2e8aaSOliver Stannard// v6M: .eabi_attribute 8, 0 @ Tag_ARM_ISA_use 257ad2e8aaSOliver Stannard// v6M: .eabi_attribute 9, 1 @ Tag_THUMB_ISA_use 261043dffbSSjoerd Meijer// v6M: .eabi_attribute 34, 0 @ Tag_CPU_unaligned_access 277ad2e8aaSOliver Stannard 287ad2e8aaSOliver Stannard// v7M-NOT: .cpu 297ad2e8aaSOliver Stannard// v7M: .eabi_attribute 6, 10 @ Tag_CPU_arch 307ad2e8aaSOliver Stannard// v7M: .eabi_attribute 7, 77 @ Tag_CPU_arch_profile 317ad2e8aaSOliver Stannard// v7M: .eabi_attribute 8, 0 @ Tag_ARM_ISA_use 327ad2e8aaSOliver Stannard// v7M: .eabi_attribute 9, 2 @ Tag_THUMB_ISA_use 337ad2e8aaSOliver Stannard// v7M: .eabi_attribute 34, 1 @ Tag_CPU_unaligned_access 347ad2e8aaSOliver Stannard 35*f502b14dSLemonBoy// v8M_Baseline-NOT: .cpu 36*f502b14dSLemonBoy// v8M_Baseline: .eabi_attribute 6, 16 @ Tag_CPU_arch 37*f502b14dSLemonBoy// v8M_Baseline: .eabi_attribute 7, 77 @ Tag_CPU_arch_profile 38*f502b14dSLemonBoy// v8M_Baseline: .eabi_attribute 8, 0 @ Tag_ARM_ISA_use 39*f502b14dSLemonBoy// v8M_Baseline: .eabi_attribute 9, 3 @ Tag_THUMB_ISA_use 40*f502b14dSLemonBoy// v8M_Baseline: .eabi_attribute 34, 0 @ Tag_CPU_unaligned_access 41*f502b14dSLemonBoy 42*f502b14dSLemonBoy// v8M_Mainline-NOT: .cpu 43*f502b14dSLemonBoy// v8M_Mainline: .eabi_attribute 6, 17 @ Tag_CPU_arch 44*f502b14dSLemonBoy// v8M_Mainline: .eabi_attribute 7, 77 @ Tag_CPU_arch_profile 45*f502b14dSLemonBoy// v8M_Mainline: .eabi_attribute 8, 0 @ Tag_ARM_ISA_use 46*f502b14dSLemonBoy// v8M_Mainline: .eabi_attribute 9, 3 @ Tag_THUMB_ISA_use 47*f502b14dSLemonBoy// v8M_Mainline: .eabi_attribute 34, 1 @ Tag_CPU_unaligned_access 48*f502b14dSLemonBoy 497ad2e8aaSOliver Stannard// Cortex-A15: .cpu cortex-a15 507ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 6, 10 @ Tag_CPU_arch 517ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 7, 65 @ Tag_CPU_arch_profile 527ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 8, 1 @ Tag_ARM_ISA_use 537ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 9, 2 @ Tag_THUMB_ISA_use 547ad2e8aaSOliver Stannard// Cortex-A15: .fpu neon-vfpv4 557ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 36, 1 @ Tag_FP_HP_extension 567ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 42, 1 @ Tag_MPextension_use 577ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 44, 2 @ Tag_DIV_use 587ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 34, 1 @ Tag_CPU_unaligned_access 597ad2e8aaSOliver Stannard// Cortex-A15: .eabi_attribute 68, 3 @ Tag_Virtualization_use 60