[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. From-SVN: r249295
This commit is contained in:
parent
aaf8008ce7
commit
1138961024
8 changed files with 17 additions and 22 deletions
|
@ -1,3 +1,15 @@
|
|||
2017-06-16 Richard Earnshaw <rearnsha@arm.com>
|
||||
|
||||
* 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.
|
||||
|
||||
2017-06-16 Richard Earnshaw <rearnsha@arm.com>
|
||||
|
||||
* config/arm/elf.h (MULTILIB_DEFAULTS): Delete.
|
||||
|
|
|
@ -520,7 +520,7 @@ arm_canon_arch_option (int argc, const char **argv)
|
|||
gcc_assert (cpu || arch);
|
||||
|
||||
if (!fpu)
|
||||
fpu = FPUTYPE_DEFAULT;
|
||||
fpu = FPUTYPE_AUTO;
|
||||
|
||||
if (!abi)
|
||||
{
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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) \
|
||||
|
|
|
@ -153,7 +153,3 @@ do \
|
|||
(void) sysarch (0, &s); \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
#undef FPUTYPE_DEFAULT
|
||||
#define FPUTYPE_DEFAULT "vfp"
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue