From ada65aa37709003cf557b2b3e7671e96b6c921a5 Mon Sep 17 00:00:00 2001 From: Paul Brook Date: Wed, 18 Nov 2009 15:48:59 +0000 Subject: [PATCH] 2009-11-18 Paul Brook gas/ * config/tc-arm.c (arm_fpus): Add fpv4-sp-d16. (aeabi_set_public_attributes): Correctly mark VFPv3xD. include/opcode/ * arm.h (FPU_VFP_V4_SP_D16, FPU_ARCH_VFP_V4_SP_D16): Define. --- gas/ChangeLog | 5 +++++ gas/config/tc-arm.c | 3 ++- include/opcode/ChangeLog | 4 ++++ include/opcode/arm.h | 2 ++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 15092c42e2..2af13c3266 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2009-11-18 Paul Brook + + * config/tc-arm.c (arm_fpus): Add fpv4-sp-d16. + (aeabi_set_public_attributes): Correctly mark VFPv3xD. + 2009-11-18 Alan Modra * config/tc-ppc.c (md_assemble): Report error on invalid @tls operands diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 5a7ec00eb6..7cbf6ff443 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -22102,6 +22102,7 @@ static const struct arm_option_cpu_value_table arm_fpus[] = {"neon-fp16", FPU_ARCH_NEON_FP16}, {"vfpv4", FPU_ARCH_VFP_V4}, {"vfpv4-d16", FPU_ARCH_VFP_V4D16}, + {"fpv4-sp-d16", FPU_ARCH_VFP_V4_SP_D16}, {"neon-vfpv4", FPU_ARCH_NEON_VFP_V4}, {NULL, ARM_ARCH_NONE} }; @@ -22625,7 +22626,7 @@ aeabi_set_public_attributes (void) ? 5 : 6); else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_d32)) aeabi_set_attribute_int (Tag_VFP_arch, 3); - else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v3)) + else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v3xd)) aeabi_set_attribute_int (Tag_VFP_arch, 4); else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v2)) aeabi_set_attribute_int (Tag_VFP_arch, 2); diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index b3756aee6e..51120ff8b2 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,7 @@ +2009-11-18 Paul Brook + + * arm.h (FPU_VFP_V4_SP_D16, FPU_ARCH_VFP_V4_SP_D16): Define. + 2009-11-17 Paul Brook Daniel Jacobowitz diff --git a/include/opcode/arm.h b/include/opcode/arm.h index 4c7968f12b..02b1189f31 100644 --- a/include/opcode/arm.h +++ b/include/opcode/arm.h @@ -134,6 +134,7 @@ #define FPU_VFP_V3xD (FPU_VFP_V1xD | FPU_VFP_EXT_V2 | FPU_VFP_EXT_V3xD) #define FPU_VFP_V4D16 (FPU_VFP_V3D16 | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) #define FPU_VFP_V4 (FPU_VFP_V3 | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) +#define FPU_VFP_V4_SP_D16 (FPU_VFP_V3xD | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) #define FPU_VFP_HARD (FPU_VFP_EXT_V1xD | FPU_VFP_EXT_V1 | FPU_VFP_EXT_V2 \ | FPU_VFP_EXT_V3xD | FPU_VFP_EXT_FMA | FPU_NEON_EXT_FMA \ | FPU_VFP_EXT_V3 | FPU_NEON_EXT_V1 | FPU_VFP_EXT_D32) @@ -163,6 +164,7 @@ #define FPU_ARCH_VFP_HARD ARM_FEATURE (0, FPU_VFP_HARD) #define FPU_ARCH_VFP_V4 ARM_FEATURE(0, FPU_VFP_V4) #define FPU_ARCH_VFP_V4D16 ARM_FEATURE(0, FPU_VFP_V4D16) +#define FPU_ARCH_VFP_V4_SP_D16 ARM_FEATURE(0, FPU_VFP_V4_SP_D16) #define FPU_ARCH_NEON_VFP_V4 \ ARM_FEATURE(0, FPU_VFP_V4 | FPU_NEON_EXT_V1 | FPU_NEON_EXT_FMA) -- 2.34.1