summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2017-06-16 21:04:23 +0000
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2017-06-16 21:04:23 +0000
commit68b54adbd7b10c66d968d74b96fba552bd46ebb7 (patch)
treee75c28c061a8ae841a2cc08a8a8805e88668ba99 /gcc/config
parent8f72fcb76348e826f6505fabd44d687f2a86fee1 (diff)
downloadgcc-68b54adbd7b10c66d968d74b96fba552bd46ebb7.tar.gz
[arm] Make 'auto' the default FPU selection option.
Finally, we can make 'auto' the default choice for the FPU option. It's still possible to override this during configure, but we will eventually deprecate that, moving to the new cpu/architecture selection mechanism. * config/arm/arm.h (FPUTYPE_AUTO): Define. * config/arm/arm.c (arm_option_override): Use FPUTYPE_AUTO if the fpu is not specified by the user/command-line. * config/arm/bpabi.h (FPUTYPE_DEFAULT): Delete. * config/arm/netbsd-elf.h (FPUTYPE_DEFAULT): Delete. * config/arm/linux-elf.h (FPUTYPE_DEFAULT): Delete. * config/arm/vxworks.h (FPUTYPE_DEFAULT): Delete. * common/config/arm/arm-common.c (arm_canon_arch_option): Use FPUTYPE_AUTO insted of FPUTYPE_DEFAULT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249295 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/arm/arm.c9
-rw-r--r--gcc/config/arm/arm.h3
-rw-r--r--gcc/config/arm/bpabi.h4
-rw-r--r--gcc/config/arm/linux-elf.h3
-rw-r--r--gcc/config/arm/netbsd-elf.h4
-rw-r--r--gcc/config/arm/vxworks.h2
6 files changed, 4 insertions, 21 deletions
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 385792ddc4d..f3b2715185b 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -3298,17 +3298,10 @@ arm_option_override (void)
if (!global_options_set.x_arm_fpu_index)
{
- const char *target_fpu_name;
bool ok;
int fpu_index;
-#ifdef FPUTYPE_DEFAULT
- target_fpu_name = FPUTYPE_DEFAULT;
-#else
- target_fpu_name = "vfp";
-#endif
-
- ok = opt_enum_arg_to_value (OPT_mfpu_, target_fpu_name, &fpu_index,
+ ok = opt_enum_arg_to_value (OPT_mfpu_, FPUTYPE_AUTO, &fpu_index,
CL_TARGET);
gcc_assert (ok);
arm_fpu_index = (enum fpu_type) fpu_index;
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index 92361fc9c30..43d44778bdc 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -2220,6 +2220,9 @@ extern int making_const_table;
(TARGET_NEON ? (TARGET_ARM_FP & (0xff ^ 0x08)) \
: 0)
+/* Name of the automatic fpu-selection option. */
+#define FPUTYPE_AUTO "auto"
+
/* The maximum number of parallel loads or stores we support in an ldm/stm
instruction. */
#define MAX_LDM_STM_OPS 4
diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h
index f9f9a9248d4..d38863a3cd3 100644
--- a/gcc/config/arm/bpabi.h
+++ b/gcc/config/arm/bpabi.h
@@ -33,10 +33,6 @@
#undef ARM_UNWIND_INFO
#define ARM_UNWIND_INFO 1
-/* Section 4.1 of the AAPCS requires the use of VFP format. */
-#undef FPUTYPE_DEFAULT
-#define FPUTYPE_DEFAULT "vfp"
-
/* TARGET_BIG_ENDIAN_DEFAULT is set in
config.gcc for big endian configurations. */
#if TARGET_BIG_ENDIAN_DEFAULT
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 3d62367ae68..cd4fc3b347b 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -83,9 +83,6 @@
} \
while (0)
-#undef FPUTYPE_DEFAULT
-#define FPUTYPE_DEFAULT "vfp"
-
/* Call the function profiler with a given profile label. */
#undef ARM_FUNCTION_PROFILER
#define ARM_FUNCTION_PROFILER(STREAM, LABELNO) \
diff --git a/gcc/config/arm/netbsd-elf.h b/gcc/config/arm/netbsd-elf.h
index 8811af7ecca..02ff3163c6c 100644
--- a/gcc/config/arm/netbsd-elf.h
+++ b/gcc/config/arm/netbsd-elf.h
@@ -153,7 +153,3 @@ do \
(void) sysarch (0, &s); \
} \
while (0)
-
-#undef FPUTYPE_DEFAULT
-#define FPUTYPE_DEFAULT "vfp"
-
diff --git a/gcc/config/arm/vxworks.h b/gcc/config/arm/vxworks.h
index 107863bc9a2..9af37c7f4f5 100644
--- a/gcc/config/arm/vxworks.h
+++ b/gcc/config/arm/vxworks.h
@@ -92,8 +92,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* There is no default multilib. */
#undef MULTILIB_DEFAULTS
-#define FPUTYPE_DEFAULT "vfp"
-
#undef FUNCTION_PROFILER
#define FUNCTION_PROFILER VXWORKS_FUNCTION_PROFILER